this site contains flashing imagery
please click here to disable the flashing effects
or anywhere else to hide this message
Just thought I'd share a couple of thoughts about something I find quite interesting as I started mulling it over in my head this afternoon.
The second aspect to the gameplay of SUPER MEGA BEST CAT ADVENTURES (yes, all-caps is necessary ;) ) is that as well as battling wave after wave of enemies, you are also challenged with navigating a randomly generated maze.
I've implemented the random mazes with a simple depth-first algorithm, like this example from Wikipedia:
Depth-first maze algorithm example. [video]
This algorithm creates quite interesting mazes - but carries the risk that there can be very long 'corridors' and if you take a wrong turn there might be a lot of backtracking required.
Other types of maze algorithms include Prim's algorithm - which produces mazes with much shorter corridors. This means that there are more 'dead ends' within the maze grid - but also means that if you take a path in the wrong direction then you won't have to do so much backtracking.
Prim's algorithm example. [video]
As you can read about on the Wikipedia article, you can tweak the generation routines to create different looking mazes, something I'd definitely like to come back to at some point. Other ideas I've had around this include granting the player the ability to destroy maze walls so that they could cut corners if they wanted - I'm really keen on extending the challenge of the exploration phase of the game to make it more interactive. I think it could add really interesting layers of gameplay, adding a strategic challenge to time-attack modes or the like. The cool kids call it speedrunning nowadays. I love speedrunning - transforming games into either tests of perfect execution of complicated strategies is such an interesting evolution of metagame and I would be so proud if people wanted to speedrun SMBCA.
If you are interested, you can read more about these maze algorithms here (P.S. it is totally super interesting): link