First Godot Quest: Puck Fantasy
Years ago, after years of being a wannabe Game Developer I released Puck Fantasy and released it on iOS and Android.
It was one of the most fun experiences I ever had writing code. It was a simple idea, but I felt it was unique and fun. I also had my wife help me design some levels, with her drawing up the puzzles of a few of the levels we had.
I intentionally set out to build something simple, with the number one goal being that it was released out on the mobile stores. To do so, I picked up a book I bought at some point in a bundle, stepped through just enough of the tutorials to get to what I wanted. After that, it was just improvisation and pushing through. Any challenge I had; just keep coding through it.
The achievement: A released game
I was able to get something released all the way to the app store, and put it out there for the world to see, out for iOS and Android. We had enough levels and they were all fun. I felt proud of what we put out.
The drag: The ugly as sin code
As a first time game developer, the code I wrote was a mish-mash mash of hacks. It worked, and the bugs were minimal. But any changes I made to it broke everything.
Look at this!
I wanted to make more levels, and I wanted to add more features. So I spent months making a level editor, and adding more obstacles to it. After about 3-4 months I was able to get a level editor built into the game, and my wife had designed at least a dozen levels.
Little preview of the level editor:
But there were lots of little bugs introduced along the way. So I never released an update.
The result: A pause
As much fun as I had, I felt some amount of shame to never releasing any updates. Any time I wanted to get back writing Godot for fun, all I could think about is the unreleased levels, so I’d stop what I was doing.
Mistakes were made, lessons were learned. But any time I came back, I felt I was writing code that was just as awful as the code before. At least this time I knew to recognize it. I was mostly using Godot at the most shallow level possible. I was getting far enough to get gameplay done, but not far enough to make it make sense within the Godot way.
Here are some of the unreleased levels:
The eventual spark: GDQuest
As a fan of GDQuest, I had followed them on twitter. When they put out a Kickstarter I signed up without thinking twice about it. Purely on instinct. Then they delivered the Kickstarter, I signed up to what they gave me…. and promptly ignored it.
I just couldn’t help but feel shame anytime I opened Godot about not finishing up the fixes for Puck Fantasy.
Finally, after suppressing my shame, I pushed myself to sit down with GDQuest, and within minutes I knew this would be the guide I needed.
The future: Learn from GDQuest, be at peace with Puck Fantasy
I want to learn Godot well. GDQuest is the way for me to do that.
Good Bye Puck Fantasy. I love you. But I need to move on.
The method: Short goals, short posts.
This post started as a grand idea. And then I didn’t type it. So I’m scaling back. Keep it simple. No flowery language. This may be the longest single post I make.
I don’t know if I’ll even review it before posting it. But let me buffer a few posts first okay. Bye.
Sharing some things I like:
- This loose blogging style of stuffedwombat: http://stuffedwomb.at/thinking 🧑🍳
- Play their game Mosa Lina! That’s also something I like.
- Truly, all about stuffedwombat == goals.
- GDQuest: https://school.gdquest.com/products/godot-4-early-access 🦸
- Literally what’s propelling me forward here. Very well structured guide and tutorial to programming, gamedev and Godot.
- Even experienced programmers would benefit from it, as it guides you through the Godot Way
- Kenney’s assets: https://kenney.nl 🦄
- Couldn’t have made my first game without it.