The story
Why I made a game with no sound, with AI
Why someone who had never programmed made an idle game and an iPhone app almost entirely with AI, and what I learned doing it.
I had never written a program before Crystal Cavern. I made it with the help of AI. This page is about why I made the game, how I built it with AI, and what turned out to be hard. The design details are in the making-of.
Three things I wanted
Before I started, I had three things in mind.
- A game built on universal design. Something you can play the same way whether or not you can hear, and whether your eyesight is sharp or not
- Something anyone, of any age, can pick up easily. You should be able to work it out just by touching it, without reading instructions
- To see how far I could get with no programming experience, using AI for everything. I wanted to find out what I could make on my own
Leaving out sound and letting you enlarge the text both followed naturally from these three.
No sound, but not because I had struggled
I am deaf. To be honest, though, I have never felt strongly that I missed something in a game because I could not hear it. It simply was not something I thought much about.
Making a game myself was different. Adding sound effects I could not hear, and imagining they probably sounded fine, did not sit right with me. It felt more natural to leave sound out from the start and make the game feel responsive to the eye alone.
Having no sound turned out to have a benefit I only noticed afterwards. You can play on a train or in the middle of the night without bothering anyone. And it is exactly the same game whether you can hear or not.
"Anyone" did not mean anyone in particular
I said I wanted a game for all ages, but I was not picturing a particular person while I made it. So I used one test instead: would someone who knows nothing about this game get lost the first time they touch it?
- You only tap. Press the crystal in the middle and you are playing
- Nothing rushes you. No time limits, no failing, no game over. Close it and the crystals keep building up
- You can stop at any time. Press Pause and nothing grows at all
- You choose what reads well. Four text sizes and five colour schemes. How to choose is in Text size and colours
Without AI, I would not have made it
This much is certain: without AI I would not have made this game. Learning to program from scratch was not realistic for me.
In practice, it went like this:
- Tell the AI, in Japanese, "I want the game to do this" or "please change this part"
- The AI writes the code
- Run it on my own Windows PC and iPhone to check it
- If something is wrong, take a screenshot, show it to the AI and have it fixed
I do not own a Mac or an iPad. Making an iPhone app normally needs a Mac, but by using an online service that builds the app for you, I got all the way to the App Store with only Windows and an iPhone.
What surprised me most was how much could be made almost entirely by AI. Not 100%. What to make, whether to use sound, which option to pick, when to release: I decided all of those. But the code itself was nearly all written by AI.
The hardest part was fixing bugs
The hardest part was fixing bugs. AI writes code quickly, but what it writes is not always right the first time.
A few examples:
- A number that should have read "300,000,000,000" showed as "300,000,000". The code that tidied numbers up was also removing zeros from the end of whole numbers
- The pop-up effects suddenly stopped appearing. The cause was a single missing symbol in the code. Nothing looked broken on screen, so it took a while to notice
- After the app came out, a player in China left a review: once their crystals reached 42 digits, the number filled several lines and pushed the buttons out of easy reach. I changed very large numbers to a short form and released the fix in the next version
What made it hard is that even when the AI says "fixed", you do not know it is fixed until you run it yourself. Sometimes the visible symptom and the real cause are far apart. So I made a habit of checking every fix on my own devices, and of asking the AI to double-check anything I was unsure about.
Looking back
AI was not magic that does everything for you. But even without knowing how to program, if you can put clearly into words what you want, and check the result with your own eyes, you can get a game made and onto the App Store.
I hope this is useful to anyone who would like to make something but does not know how to program. You can play the game from the home page.