Posted January 02, 2016
The idea is this: In the puzzle game, include some random events. This could be handled like in an RPG (critical hits and misses, for example) or in a board game (roll the dice to see how far you can move on your turn) or in any other manner.
But here's the catch: in any given stage, the Random Number Generator always generates the same sequence of numbers. Perhaps there is even a way to view the sequence in some way. (For example, imagine a card game where you are allowed to look at, but not change, the cards that can be drawn.) This means that part of the strategy becomes manipulating the RNG so that you get good results when you really need them.
There are a couple interactions with other features that are worth noting:
1. If you save in the middle of the level, the RNG state is saved, so reloading won't let you get a different result.
2. If there is an Undo feature, and you undo a move that has a random result, the RNG state will be rolled back so you don't get a different result if you try again. (Yes, this can be used to peek at what the next random number will be. This is intentional.)
Edit: Added a missing word. Oops!
But here's the catch: in any given stage, the Random Number Generator always generates the same sequence of numbers. Perhaps there is even a way to view the sequence in some way. (For example, imagine a card game where you are allowed to look at, but not change, the cards that can be drawn.) This means that part of the strategy becomes manipulating the RNG so that you get good results when you really need them.
There are a couple interactions with other features that are worth noting:
1. If you save in the middle of the level, the RNG state is saved, so reloading won't let you get a different result.
2. If there is an Undo feature, and you undo a move that has a random result, the RNG state will be rolled back so you don't get a different result if you try again. (Yes, this can be used to peek at what the next random number will be. This is intentional.)
Edit: Added a missing word. Oops!
Post edited January 02, 2016 by dtgreene