With convex and concave prisms at a reasonable state of completion, I started experimenting with creating new levels. The number of levels was starting to get unwieldy for keeping track of in an array.
Even worse, my Obsidian file containing screenshots and notes about each level had grown horribly out of date.
So Patrick Traynor’s talk on level design was very timely. What a difference it makes to be able to learn from others so easily.
Here’s the talk:
System-Centric Puzzle Design in Patrick’s Parabox https://www.youtube.com/watch?v=HAvS-RwkjdA
“The purpose of the system is not to make cool puzzles. The purpose of the puzzles is to showcase the cool system.”
I love that and I totally relate to it. The way the prisms modify light is really cool and I enjoy figuring out interesting chunks about how they behave and how to communicate / teach those behaviours.
But another part of Patrick’s talk was more immediately applicable to me. Here’s a screenshot of a level editing tool he used in the game, Patrick’s Parabox.
He made a visual tool where he could quickly and easily see the levels and reorder them to make sure players had a nice flow as he introduced a new mechanic, reinforced what they learned, and then presented more challenging aspects of that mechanic.
So cool!
I’ve now used Godot’s @tool tag to make a LevelSelector class where I can see screenshots of each level and drag them around to organize them. For now this is a tool for me but I might tie it into the puzzle ordering the player sees and maybe a puzzle selection UI.
I’ll definitely need some sort of puzzle selection screen if I’m going to have optional puzzles and alternate routes.
I gotta remember, though. I’m making a small game here. I don’t need to invest as much into these tools as Patrick did since he was making a full release game with over 300 puzzles (and 600 discarded puzzles)!