Many games use puzzles, game play that can be solved using deductive reasoning, in order to add variation to the game. Often puzzles are used to unlock doors to other game areas or open containers that contain equipment needed by the player.
When creating puzzles, the game designer must make sure that the goal is easily understood and that it is very obvious what the goal of the puzzle is and how the user can proceed. One way to ensure this is to make it easy to get started with the puzzle and give the player feedback on their progress.
It is also very important that the player feels that the puzzle is solvable, using multiple puzzles making the first one easy and then gradually increasing the difficulty in subsequent puzzles is a useful technique. Having said that it is important that we allow the player to give up if they no longer want to work on the puzzle.
Finally, if all else fails it is useful to tell the player the answer to the puzzle. Knowing the answer will help the player with subsequent puzzles and reduce the level of frustration with the puzzle and subsequently the enjoyment of the game.
Refer to the Puzzle Solving game design pattern.