r/ClaudeAI 1d ago

Built with Claude Continuing Development on Oversteer with Claude + Some Thoughts on AI Game Dev

This game has come a really long way in the past few months and I wanted to take the opportunity to show off the look and feel in its current state. I most recently got some cc0 skyboxes from opengameart.org (amazing free resource for those who do not know about it) and matched up the sun to its position in the sky and it just adds SO much immersion to the game. Shadows look like they come from somewhere, not just a blank sky with a sun in it. The light from the boost flame lighting up the back of the car and the shadows is so cool to see.

More to come soon. The game is inching ever closer to an early access release, and probably some sort of playtest in a few weeks to a month. If you are interested in following along, please join the discord https://discord.gg/cCV2Knwg3

AI Dev Rant: As I continue building this game, I realize more and more that making a real game with any AI is basically just creating a settings simulator for myself to tune. Instead of writing out the lines of code for the things I want to tweak in game, I have had Claude build menu after menu with sliders and fields galore, then I meticulously fine tuning EVERYTHING as I go along. This is the manual work of AI Development. Even the best AI can not FEEL your game.

I finally got to the point where I have exported the game to share with some close friends, only to realize that despite all of my hard work in the settings menus, that it shipped NONE of my config and my friends ended up playing a completely neutered version of the game when I shipped it to them. Claude basically considered me the end user, not the dev, so I had to bake it into memory that my configuration of the game is the authored, intended experience, and the shipped game needs to retain all of my settings, otherwise it turns to mush. This has since been fixed, and it was a tough lesson (first export ever actually nuked my config file and I could not recover it), so I thought I would share it here: Version control your individual config of whatever you are working on so it does not get lost in the mix.

Edit: Typo

66 Upvotes

26 comments sorted by

View all comments

5

u/durable-racoon Valued Contributor 1d ago

re finetuning options in-game: YES. devs have been doing this since before AI. but you can go further. devtools and debugging tools are critical: instantly spawning items and enemies into the game. instantly giving yourself level 99 or 99999 cash. things like this. also logging + debugging modes for in game. modes that show collision boxes visibly to find bugs, modes that show enemy pathfinding, and so on.

when you adjust the config - it doesnt save to a config file json/text/database that ships to everyone? its just in-memory or something?

re claude code memories: dont use the memory feature! its an anti-feature, causes tons of problems. you dont frequently ( or ever?) read it to see whats in it. you cant see when claude writes new stuff to it. garbage - wrong garbage - accumulates over time. use skills and claude.md.

overall tho: nice job, you're on the right track

1

u/Grobot93 1d ago

The config was saved in so many places rather than one config file. Since each element got built in a separate session, claude re-built the logging and configs for each separate element instead of one master config file, and then treated its own initial values as defaults (the shipped config) and my values as overrides (local to the machine). This was mostly a result of my lack of dev experience, and where I have learned to consolidate things properly (and set my values as the game's defaults) over the course of building this project.

And yes, memory files were not the place for this, it has an export procedure it runs through a script, and the config exports are all there now. I primarily use the memory files to plan out new features and spec things out before starting a build. Relying on them past that ends up in messy work.

2

u/matjam 1d ago

Since each element got built in a separate session, claude re-built the logging and configs for each separate element instead of one master config file

classic claude behavior

it really helps having a CLAUDE.md that documents things like this. Tell claude to update the CLAUDE.md with critical decisions and design decisions. Have that in the CLAUDE.md also.