I made a video game. I have not published, but I’m currently looking for playtesters. In fact, I’m trying to get playtesters right here and now, please let me know if you’re interested!
It’s a small puzzle strategy game titled “Moon Garden Optimizer”. I’m sure say more about the specifics of the game design at a later time. Today I’m sharing my development process up to this point.

A screenshot of my game
Cursed with Inspiration
So, back in January, I had a bit of inspiration. I was thinking about the games I enjoy, and imagining how I might distill part of the experience. And I opened my note-taking app (same one I use for blogging), and wrote up some rules. It’s a deckbuilder of sorts, so I came up with 50+ ideas for cards. I “prototyped” the game in an Excel spreadsheet.
Then I identified some weaknesses in the concept, redesigned its base rules, and made even more cards. Then I decided that the game needed a theme (since it was originally just an abstract set of rules), so I came up with the moon garden theme and redesigned the rules yet again.
It was pretty obvious that it would have to be a video game, and equally obvious that I would never make it. Video game development is a dream for many people, but it’s not my dream. I really enjoy games criticism, especially the kind of criticism that is aware of the game dev perspective. As a result, I knew on a deep level that video game development is fundamentally a bad idea. Don’t do it!
The thing to keep in mind is that what we call “indie” games cost millions of dollars to make. If you’re just starting out as a hobbyist, your entry point is one or two tiers down from indie–a tier that you may have never played yourself. It can take months or years to develop a game that you yourself may never have given a chance. And the market is extremely oversaturated. Forget commercial viability, it’s a lot of work to find enough players that it’s even emotionally viable.
But I did eventually give it a shot. I found an excuse to try the thing I wanted to try. The excuse was: AI. These days AI coding assistance is a big thing, and while I am cautiously skeptical about it, it’s professionally important that I at least familiarize myself with the tool. AI is of dubious value in my day-to-day because my work is very specialized and I already know what I’m doing. AI would be more helpful when learning something new, such as game development. (To be clear, I was using chatbots as a supplement to Google searches. I found it to be of marginal value, although not useless.)
Getting Started with Godot
Here’s some generic advice about getting started with game development. First, pick a game engine. Then, create your first game based entirely on a tutorial.
The three popular indie game engines these days are GameMaker, Unity, and Godot. I went with Godot because its scripting language is similar to Python (which I use professionally). The Godot documentation has a tutorial game called “Dodge the Creeps“, so that’s what I did first. Then, because I knew my game would be turn-based in a grid, I made Tic-Tac-Toe. Then I made Sokoban. (I did not complete either of those games, I was just getting a taste.)
Finally, I started making the game I wanted to make. I set up movement, set up the rules, and programmed a few basic cards. Before I knew it, it was already playable, although it looked like shit, and lacked essential features. So I wrote up a giant list of 30+ things to add, and told myself I would work steadily to check off one item per week. I did not follow that schedule at all.
There was one item on my to do list that ended up taking a lot of time: creating cards. Not because it was difficult to code, but because I needed to playtest and balance the things. This was a very gratifying experience because the game was actually fun to playtest. So fun, in fact, that I wanted to spend more time playtesting instead of building it.
Game devs sometimes talk about prototypes being boring to play, and the challenge of “finding the fun” in a game. I felt lucky, because I had already found the fun. That was a huge motivation boost.
Video games are art (derogatory)
Around this point in time, here’s what the game looked like.

Moon Garden Optimizer prototype
Almost all the art was made of placeholders. There were three sources of placeholders. First, there are simple geometric objects, like rectangles and such. Second, there are free assets (from the Sproutlands pack). Third, there are quick doodles–the images with opaque white backgrounds were drawn by my brother.
Placeholder art serves an important purpose. You don’t want to spend a lot of time on art before the game has settled a bit, lest you waste time on art that won’t be used. And to get the game settled, you probably want to play it. Playing it requires art. Placeholder art should be simple and functional, rather than good.
These days, devs have another option for placeholder art: AI image generators. People complain about AI art being low effort, but for prototype art, that’s precisely what you want! It’s a viable option, although ironically I think AI art isn’t low effort enough. IMHO it’s easier to just search for free assets.
Eventually I started replacing the placeholders with my own art. I chose a pixel art style, because I felt it would be most manageable. I purchased some pixel art software, learned some pixel art basics, and got drawing.
And drawing, and drawing. Even for a game of small scope, I still needed about hundred assets. I’m not an illustration artist! I didn’t get into game dev because I wanted to make illustrations! After all the arguments about whether video games are art, I now feel in a very visceral way, that video games are actually way too much art for their own good. This is easily a showstopper for most game concepts. But in the end, this too was satisfying.
For devs trying to get address the art problem, one option, if you have the budget for it, is to purchase art. The problem is that commissioned art is really expensive. If you purchase an asset library, it will be cheaper, but won’t have exactly what you want. And if you mix art from different sources, it may look inconsistent. (AI art is also an option, but lots of players don’t like that and it may also look inconsistent.)
I ended up paying for a single piece of art: a pixel Earth. That was half this game’s budget, it felt so extravagant.
Preparing for Sharing
Once a lot of the art was in place, that’s when it started to feel like I was polishing the game rather than building it.
My brother was surprised by how good it looked and said I should put it on Steam. Aaah, I’m not sure about that! It costs $100 to put on Steam, compared to its current budget of $20. I’m not sure I’m even selling this for money, and if I did I am unlikely to make a profit.
But I decided I ought to get other people to playtest it. I looked at the list of remaining features, and identified all the items that were essential for a playtest. Menus, game modes, reasonable controls, I needed those. I made a stacked line graph, which wasn’t strictly necessary but I really really wanted it. And then the game very badly needed a tutorial, so I made that too.
So now it’s available for playtesters. Uh, where do I find playtesters?
The story has caught up to today, and I don’t know what’s next for the game.
What’s next for me, is slowing down a bit. No rush! I have other responsibilities, other hobbies. I would also like to play games, not just make them. I played Wanderstop, a narrative game about a warrior settling down in a tea shop. It felt like a very pointed metaphor for a burnt out game dev taking it easy. Moon Garden Optimizer took about ~100 hours of work so far, and it’s good to take a break.
You might want to look at itch.io, which is a place for people to put games they create. You can set the games up as free, free with optional donation, or for pay. I do not have any idea what their requirements for being a creator/author are.
I play a lot of games from itch.io, but you do have to be aware that the quality and content varies widely. What you are showing here looks more polished than many games on the site. A few games start on itch.io and then end up on Steam. And, as you would expect from a largely unregulated independent site for small developers there are games catering to every niche and fetish in the human experience. Your offering may be lost in the dozens of submissions which show up every week.
I’d like to volunteer as a playtester.
Creating new things requires a lot of stamina, good work! I’m curious whether this experience was somewhat similar to finishing your Ph.D.?
I usually never start on my projects because I’m waiting for a clear vision of the result that never develops. I’m much better at tweaking/debugging existing things.
@flex,
My game is currently unlisted on itch.io. That’s the default publishing location.
@Jürgen Rühle,
I can’t say the PhD comparison leapt to mind. PhD work was more of a requirement, and I didn’t have full control over its direction. This was more of a passion project. I’d compare it more to an origami design project.
I’ll mail you a link.
holler at me and i’ll send it to my resident gamer
What’s it like using AI for the coding? Is it useful for things where you have a bunch of cases which are basically the same code but with small differences like variable names/constants? Or for when the code is pretty much a standard boilerplate thing but you’re not exactly familiar with how to do it? Or can it actually come up with something that involves *thinking”? (meaning, you tell it generally how you want it to be, but not in exact technical language, and the AI kind of has to come up with those details on its own)
What I’ve heard from coworkers is, Deepseek is usually pretty good about writing code, but sometimes it’s wrong, so you have to check it. I haven’t used it for that though.
@Perfect Number
I didn’t use it for that. I think a better solution to that is multiple cursors. ETA: I guess that’s not quite the same, but multiple cursors are very useful for editing repeated code.
There’s a little bit of that. Although actually a lot of what it was useful for wasn’t even code. I’d ask it general questions like, how do I do this? Or I’d describe a bug and have it suggest potential causes. I’d ask it where to find something in the interface. Sometimes I just asked it for the advantages and disadvantages of a design decision.
With Google you can search the name of a function or node and learn what it does. But if you know what you want to do, it’s hard to find the function or node that does it. So the chatbot fills that gap.
It does make mistakes often, especially when it gets into the weeds. It might suggest fictional functions, or it would just go around in circles because it just doesn’t know the answer. It would very consistently take Godot 3 to be the default, even though I repeatedly told it I was using Godot 4.
I tried Deepseek initially, but found it annoying to use. Deepseek likes to write a structured essay for everything, including stuff I never asked for. I found myself reluctant to ask small questions because it would not give small answers.
I’d playtest as well. This looks really neat.