

Start with the core gameplay loop. Look for the fun. Look for what you can take out, not add.
Play-testing something like this with pencil and paper first might be a good idea. Once you work out why it always plays the same way, then you can look for how to perturb the gameplay.


Eh? You might suggest it’s another reason why persistent (aka immutable) data-structures have merit; but this is raw pointers.