I Want to Make a Puzzle Game: Not a Guide
There are some uttterly masterful puzzle games out there. I want to make one maybe, but I suck at them. Distinctly not a guide.
I want to make a puzzle game.
This is not a guide.
Why
Aliensrock and Patricia Taxxon.
Aliensrock is good at puzzle games, and his videos showed me how deep and interesting puzzle games can be.[1]
My inspiration came to a head when I watched Aliensrock’s video on The Electrifying Incident. The Electrifying Incident is a mini-sequel to A Monster’s Expedition, which is logically a masterpiece because it got someone who is good at puzzle games to play it for dozens of hours.
Here, listen to the unused-in-the-game-but-used-in-the-video soundtrack while you read:
The video was good,[4]
I’m just fucking sick of plain boxes, man. To me, they represent the most soulless lack of creativity imaginable. Why play puzzle games for creativity, curiosity, or mystery when you could instead roleplay as a warehouse worker? Boxes are fine if they’re purely supplemental to the actual mechanics of the game, like in so many great puzzle games I’ve played, but trying to squeeze depth out of the box itself is infuriating. We already know how boxes work, they suck.
If you’re making a puzzle game, try this thought experiment for fun: remove boxes from your game altogether. What happens to the game then? Does it still work? Can the box be replaced with something more interesting, like a cylinder, functional sphere, or anything that behaves uniquely? What new consequences could possibly arise from this change? Challenge yourself to literally think outside the box.
…
But man, it sucks that lately, so many good puzzle designers have been caught up in pretending that there’s still “novelties” to be found with the box, when it’s all just mental reskins of concepts already fleshed out in existing games.
It made me realize that there’s so much to explore in this space, and that I could possibly make something that people want to play.
I then spent about three and a half hours writing a Sokoban solver in Guile.[6]
I can play Sokoban in the terminal now. What a revolution!
Now What
This blog post will be updated eventually, success or failure.
Maybe I’ll make something great, maybe not. Either way, it’s going to take time and practice, so I’d like to have some kind of record to reflect on.
Update 1
I made a proof-of-concept Sokoban player with 3d graphics and undo in Godot, which thanks in part to my aforementioned sokoban implementation experience, only took about 90 minutes. Bodes well, but as I said in a chat message:
i’m glad that that was as straightforward i hoped
because EPIC SAD PLOT TWIST the hard part is making compelling, unique, and deep mechanics along with dozens of well-designed levels
Still good, though.
My main takeaway is that using a game engine[7]UndoRedo
!
I’m a Godot fan.
And I even use GDScript because I’m such a stand-up, pragmatic guy!
End of update, I suppose.
Update 2
The Sokoban proof-of-concept is complete! It’s got over 150 levels. I didn’t make a single one, though, I just plugged in the aforementioned Microban 1 by David W. Skinner.
I’m slowly synthesizing stuff, but ideation is unpredictable.
I don’t know.
I don’t expect
Then again,
This whole puzzle game thing is kinda complicated, huh?
Update complete.
Update 3
The game has mechanics now!
Like, it’s not sokoban.
Here, just watch this video:[8]
Everything is very much in flux, but things are going places![9]Ma Aliensrock, no boxes! ↩︎lvel
that moves when time does.
But you, the player, can move and push to your heart’s content, only advancing time when you press a button.
This is a lot of freedom, which is kinda contrary to the positioning-centric gameplay I vaguely had in mind, but I think this can be interesting.
With good level design.
Oh gosh.
Update 4
Great update!
Instead of writing levels in text, which is fun but clunky and limited, I am now editing them as scenes directly in Godot.
I’m just snapping to the grid, which works well enough for my purposes.[11]
But all of that is irrelevant!
Because I enjoyed playing the game!
Here’s the story: I made a tiny change to make balls reflect off walls.[12]
Amazing level design is critical.
But hey, I feel now that with a few hundred hours of work, this could be decent.
I couldn’t say that before today.[14]
Update 5
First, video:
So, the game looks good! Like, visually. I am especially proud of the sun moving with time. Like a sundial!
The arrows help convey the subtle-bordering-on-bizarre mechanics, which I’m happy with. You can see some updates mid-step in slowmo. Slowmo is sick, but it makes things real challenging—interactions have to hold up under close scrutiny or they’ll just be confusing. It helped me discover that a ball colliding from the left is different from colliding from the right. It’s consistent (I sort the pieces before stepping) but bad and confusing.
For that reason, am going to, one, plan out the mechanics so that they are less dumb while still being interesting, and second, I’m taking a break for a little over a week.
I’ve really been enjoying working on the game, but it’s a big distraction (and I hurt my hand a bit).
I’m looking forward to returning with renewed energy and passion to make things consistent before I start on the big work: level design! I’m thinking of making a graph of concepts—quirks of the mechanics—and their dependencies, and making levels that explore them.