I am developing a bit of a puzzle game, but I am trying to figure out whether to implement mechanics which would allow the player to get "stuck" and restart the level in order to finish. I was wondering if anyone had any rules of thumb on this?
To give a bit of context, the game is a puzzle game where the level is manipulated and reconfigured such that the player can get to the exit. There are certain obstacles, such as moveable blocks, deadly blocks, etc. The player would perform a combination of moves which would alter the placement of the obstacles such that the player can get to the end.
I am thinking about whether to add an obstacle similar to a "one way door", where the player can go through, but can not go back. What this game mechianic implies is that at a certain point, the player must have configured the obstacles/level in such a way that she can get to the exit after going through a (or multiple) "one way door". With this mechanic, a player could be at a point where they would have to "restart" the level in order to retry if they don't do things in the right order before going through the "one way door". I'm not sure I like this. Many great games with puzzle elements don't have a "suicide" mechanic, so the level designers had to take great care to not allow a configuration to arrise such that the player could get stuck (I don't consider exiting to menu to restart level or resetting the game to be a mechanic, it is a work around to get around poor level design in most circumstances). But, I'm wondering if there are cases where this is acceptable? I have seen some well-designed games with this mechanic (Little Big Planet for instance), but I still don't feel right about it.
So, there are three possibilities:
1) Player is allowed to get "stuck", forcing them to either a) "suicide" themselves if that is a feature of the game (with or without a cost), or b) reset the level using a work around, such as "exit to main menu, restart level" or something similar.
2) Levels are designed such that a player can NOT get stuck, thus allowing them to solve the level from any configuration at any point in time in the level.
3) Hybrid of 1&2: Players can NOT get stuck during completion of main goal of the level, but there is some auxilery goal (such as a bonus item, or something) which the player could lose the ability to achieve at some point in the level if they haven't done things in a proper order. This could add some replayability to the level (i.e. the player beats the level, then replays the level over and over to try to figure out how to get the auxilery goal).
So I guess my question is, are there any common design patterns about the above possiblities, when or when it is not acceptible to use each? I personally like posibility 3.