There is a simple principle that I discovered in the classic industrial design text "The Design of Everyday Things" about the conversation any designer has with the user (or in our case, the player). This conversation happens through the piece of design being used and is called the "affordance". Quoted from Wikipedia:
"An affordance is often taken as a relation between an object or an environment and an organism, that affords the opportunity for that organism to perform an action. For example, a knob affords twisting, and perhaps pushing, while a cord affords pulling. As a relation, an affordance exhibits the possibility of some action, and is not a property of either an organism or its environment alone."
I'm not sure my knob affords twisting, but anyway, in relating to video games, affordance is the conversation every game has with the player. Lets look at spiny from Super Mario as an example...
In Mario the player quickly learns the main verbs that the chubby plumber can perform (i.e. jumping and running), from initial experimentation with the controls. When looking at spiny for the first time, the spikes placed on the enemy turtle's back informs the player that the base strategy of jumping onto an enemy's head to squash them won't work for this opponent.
This elegant principle is very powerful but rarely actually consciously discussed by development teams when making games (in my experience). I think this is partly due to the fact that making games from well established genres come with certain assumptions about how the player's avatar, opponents and environment will behave. Also (dare I say it?) I think there is a certain amount of reluctance to admit that a piece of art actually has more of a role to play than just to look nice.
Problem arise when certain misconceptions about the rules of the game communicated through the affordance of the enemy characters and environmental layout go on to build a model of the system image that is incorrect:
The player's understanding of how the game's rules function can only be built from playing the game (yes, the player could build a better model by reading the instruction manual, but who actually reads instruction manuals any more) so games have to be careful about what they are saying to the player at all times and not supply misinformation that could cause frustration.
The additional difficulty with this design principle that is unique to game design is that games are supposed to be a challenge. To quote Bernard Suits, playing a game is:
"To engage in activity directed towards bringing about a specific state of affairs, using only means permitted by rules, where the rules prohibit more efficient in favour of less efficient means."
'Less efficient means' is the important part of that quote in the context of this conversation. The easiest way to win at golf would be to carry the ball and place it in the little hole using our hands, not to walk 500 yards in the opposite direction and attempt to get it in only using long metal sticks. We instinctively understand that if winning at the game is trivial then it becomes boring. So, as designers, we deliberately put rules in place to make achieving the goal of the game more difficult using these 'less efficient means'.
But I think that designers can get 'trying to communicate the rules of the game clearly' and 'creating an interesting challenge for the player to overcome' mixed up and start to obscure how the game's rules work in order to create challenge, which I think is a mistake. (Lets be clear, I mean rules and not information. Hiding information about the game's state is a completely valid design technique, with hidden playing cards in a poker game and a strategy game's 'fog of war' being two great examples of this).
I will always maintain that the player having a misunderstanding about how the internal rules work will always result in a less satisfying experience. I would be happy to be proved wrong on this point, though...
Remember, you are always in conversation with your player, so just be careful out what you say....