Gravelight
· ai, projects, game, godot, claude, development
I have wanted to make a Vampire Survivors-like for a long time. You know the kind: you only walk, your weapons fire on their own, and a few hundred skeletons try to eat you for 15 minutes. So I asked Claude Code to make one, and a couple of days later I had Gravelight. It was the first of my small AI-made games; the story of how they're all made is in Making small games with AI.
Play it
▶ Gravelight — a browser game, playable on the post's page.
On a computer it's WASD or the arrow keys to move, 1–4 to pick an upgrade and Esc to pause. On a phone, turn it sideways, drag anywhere to move and tap a card to pick it. It's about 70 MB, so give it a moment to load. Your progress and unlocks are kept on this page between visits, and your best runs go on the high-score list.
Survive until dawn at 15:00, then beat the boss that shows up. Win a stage and the next one unlocks.
What's in it
- 10 heroes, each with their own starting weapon and a perk that grows with level
- 10 weapons that evolve when you pair them with the right item, and 15 items
- 3 stages with their own enemies, bosses at 5:00 and 10:00 and a final boss at dawn
- Up to 300 enemies on screen at once
- Treasure chests, gold and a shop with permanent upgrades between runs
How it was made
It started as a 2D game. After the first version I typed "hold up lets do it in 3d", and it was redone in 3D. Try doing that with three months of work behind you.
All the art, sounds and music come from Synty and Asset Store packs I bought for Unity and never used. Godot can't open Unity packages, so Claude wrote a small tool that unpacks them and converts the models, textures and sounds.
It tests itself. A bot plays whole 15-minute runs on all three stages, and other runs click through every menu and screen, fight the bosses, check the touch controls, close the window in the middle of a chest opening, and check that the save survives in the browser. One command starts all 27 of them at once, and windowed runs take screenshots of every screen for the polish rounds.
The browser version draws with a simpler renderer than the desktop one. It caught us out once: with enough skeletons on screen, the browser drew some of them pitch black. There is now a test for that too.
Hit me up if you find a bug, or if you beat the final boss.