
The Idea I’ve always wanted a game that made me feel like that cool hacker in all the best (worst) 90s movies. The guy who wore dark clothes and sunglasses, drank soda like it calmed his nerves, and typed furiously to save the world. There have been multiple attempts at this over the years but nothing ever stuck with me. In my head I’ve always had “the idea” but I’ve never had the time to put it to “paper” (or cpu). For the last two weeks, I set Claude to the task. The Stack Language/Framework: React AI Tools Used: Claude (and ChatGPT when I ran out of Claude Free Messages) Other Tools: good ol’ vim to deploy and do simple edits Time Spent Total: 2w (evenings, just writing prompts and deploying) AI-Assisted: 95% Manual: 5% The Prompts & Process AI can take a bit of hand-holding to get it right sometimes. The process was very “collaborative”…and I put that in quotes because I feel like the kid who just showed up but gets an A for everyone else’s work (or maybe a C in this case…I don’t know…try the game and grade it for me). But at the end of the day I can say that you cannot just say “make a game that does x,y,z” because it will literally. Make a game that does x.y,x and then ends. I was very proud of the first rendition of this game which took all of 5 minutes of my time and probably thousands of tokens from Claude…yet my 10 year old son beat it while I was in the shower. I walked out into the living room to “I beat your game, what’s next?!” Which made me realize that there’s far more to creating an engaging and living game than a few prompts. The process is detailed below. Prompt 1: Yo dawg is vibe coding time. I want you to create a web hacker game. I want the UI to be inspired by the following images (with dark/light mode options) I also want a terminal option where you can watch text scroll with updates and logs. The point of the game is simple. You are deploying automated bots to hack accounts and return credentials that you then sell for $$. You use those $$ to upgrade your computer or bots. The graphs will show your resource usage so you know what hardware and software upgrades are needed. The log should also contain hints about what’s needed. Upgrade options: cpu, gpu, ram, fans, coolants, then come up with some software packages and upgrade guides. There should be options to deploy more bots (your system can only handle so many until you upgrade) There should be an option to deploy different versions of bots (to try to utilize resources best) There should be an option to kill a bot. A bot can be destroyed if caught by security programs (this is based on software security that can be bought and upgraded and also what actions the bot is taking) Bots can be assigned actions : “cracking passwords” or “hacking bank accounts” etc. The goal of the game is just to get more money so you’re constantly upgrading to make your bots more effective. Questions? AI Used: Claude (free) Notes: Apologies about the typos and trying to be funny with colloquialisms, I get bored. The end result was exactly what I asked for which was 90% of the problem. Claude literally responded with “No questions, we got this” and ran with it. It was almost perfect, as far as execution of the prompt. But, of course, it wasn’t a good game. It was easily beatable and had no reason to continue playing. This is entirely on me but it’s worth calling out if we assume AI is actually “intelligent” and can replace human coders, it should have called out the obvious issues just as much as I should have caught them myself. Prompt 2: Ok let’s talk about this game we have built. Once the system is fully upgraded (which is still quite easy to do in a fairly short time) there’s no way to run all 36 bots without your system burning out. So there’s no point to unlocking all 36. We need to add more expensive upgrade paths and lower the bot expansion to better balance. I like that you can’t run 36 wraiths on an upgraded system, it should take some clever stacking to get a load out you like, but you should be able to run 36 of the basic bot on a fully upgraded machine. I also want to establish a leaderboard that tracks time spent before losing, how much money was made, and how many bots were spun up, what the computer load out was when failed. Any other important stats. I also want to introduce the concept of notoriety. A combination of how many times you’ve been caught, how much money you’ve spent, and how long you’ve been playing to create notoriety levels. The higher the notoriety the higher the modifier for getting caught, so this game can’t go on forever and it encourages people to try to last longer on cheaper loadouts. I would like to add a special currency for spec it al upgrades ( not sure what yet) this currency could eventually be purchased with real money but for now it would be unlocked by tying words in the terminal or solving math problems, give the game an educational element. Maybe you that’s currency to buy a second computer? It should be a knockoff bitcoin. Thoughts or plans? Any other elements you think would make a fun game? AI Used: Claude (free) Notes: Ok so let’s call out something that I’m sure we’ll see multiple times…typos. I’m doing most of this on my phone and let’s just say Apple and I don’t agree on. How autocorrect should work. But Claude seems to understand just fine. None of the typos in the above prompt caused any issues, which is more impressive than the actual game it’s built, to be honest. Anyway, this prompt led to a fair amount of back-and-forth as I asked Claude to come up with a plan instead of just burning tokens on taking a stab at the implementation. I then had to amend the plan several times. The issue here is that Claude is incredibly literal. When you say you want to add a “restart but make it harder” mechanism, it’s implied that there needs to be a “ok now this is impossible, start over” mechanism as well but Claude did not get that at all. I don’t actually blame the AI for this but it’s definitely something a human with experience would have considered. It also started to feel like, at this point, that Claude began to get hung up on details. Now after the back-and-forth mentioned we’re maybe in the 4th or 5th prompt, not very far in, but Claude had definitely started to establish some clear biases and hallucinations at this point. One of the examples of this is that I mentioned creating a leaderboard and it immediately pointed to needing a laravel backend. I told it that I would handle that later and we could use local storage but it retained the laravel-backend requirement for several prompts before I could finally squash it. The final point about this prompt was that I wanted to add a new side-currency. I specifically said that this currency should be generated by answering simple math problems. Claude, instead, decided to turn it into a coding interview and wrote up a suite of questions that were so difficult even I struggled with them. I had to clarify 3 times what level of detail I was looking for before I finally wrote the code myself, passed it to Claude, and told it “just do this”. It was unable to pivot from its original code-interview idea without explicit examples for a rewrite. Prompt 3: Ok this is wonderful. Can you add a readme that explains the mechanics of the game to someone new? It should pop up by default if you know the person has never played before. If they have then don’t force it but make sure there’s a button to open it as needed AI Used: Claude (free) Notes: This one was difficult because I didn’t want to burn tokens having it output and entirely new file for adding a simple modal. It output code snippets that I implemented myself and…well…as it goes when you start lazily trusting an AI, I only half-read its instructions and placed the code in the wrong place. It took me a few hours of trial and error to find my error and correct it. The key thing here that I want to discuss, though, is that when I initially made the mistake of placing the code in the wrong place I immediately consulted Claude with a query about what I was seeing. The issue was that the modal was resetting every 2 seconds so it could never be fully read or scrolled. Instead of verifying where I placed the modal (which, had I done it correctly, would have been outside of the game’s logic) it jumped to multiple different solutions that had zero impact. “We need to use memos! We need to use portals!” Eventually I ran out of free messages and consulted ChatGPT instead with a short snippet of the function I was using and the issue I was seeing and it walked through the same failure scenarios. Neither AI thought to ask where the modal was place and question whether I had followed the directions correctly. It trusted me completely despite the fact that I had made a very simple mistake. In the end, I actually found and corrected this mistake myself and the README worked as expected. After this I transitioned to less vibe-coding and more polishing myself. AI got me 99% of the way there, then I had to push it over the finish line. Some of the things were simple changes like modifying how consumables were balanced or changing the terminology for certain things. Other things were more involved like fixing the entire leaderboard fetch and post process. But at the end of the day, AI was able to deliver a strong product that I just needed to apply some additional love to. Where AI Nailed It First Try So this is the bread-and-butter of the situation. What can you, at home, do to replicate the successful parts of this project? First off, given the detailed prompt it nailed the first round. Absolutely nailed it. Out of the gates, in minutes, I had a working game. It wasn’t fun, it was easily beatable, but it worked. Adding core features, doing math, and performing minor refactors were all things that were handled spectacularly. It lifted a huge amount of work into something that was mere seconds. Where AI Needed Hand-Holding This is where things get foggy. The Ai started to struggle in a lot of ways later in the process. First, detail. The code is messy, it’s buggy, and it’s error-prone. The AI had no forethought for “this type of game could expand into…” and it was written in a way that it was “just what it is.” Some minor things became very tricky for the AI, sometimes because it takes terms too literally and sometimes because it doesn’t. For example, it struggled with the consumables concept because I asked for a “challenge to earn consumables and something to lower notoriety”. I meant danger, and in the follow-up-prompts I mentioned the danger-level multiple times, but the Ai got hung up on the word “challenge” and “notoriety” and created a “challenge” command that made no sense and a process that lowered notoriety by small amounts. I ended up rewriting most of that by hand into something that was more enjoyable. The other thing I noticed is that as the single-file grew, so did the usage tokens. At this point, the chat is almost unusable. I cannot ask a single question without being gated for 12+ hours. Having multiple small files would have (potentially) made the chat less intense and hopefully save some tokens. What I Actually Learned The difference between a good idea and a fun game is much wider than I originally anticipated. AI is fantastic at architecting an idea, it’s still on the human to ensure it’s a “good” idea. I also learned that allowing the AI to control the entire project works really great until you start struggling. The AI reaches a point where the context is too large, tokens are too expensive, and the concept is too detailed to handle. That’s the point where you have to transition from “deliver a new file” to “deliver code snippets and line numbers.” And even beyond that we reached a point where even simple questions burned an entire day of tokens, so features for chats might make more sense. What Happened Next I did eventually reach a point where it was far too expensive to continue to ask the AI questions, or at least to ask it to maintain this app. It could answer one-liners and offer snippets, but any effort to update the overall file was an instant token killer. At this point I had to dive into the code and familiarize myself so that I could make the rest of the changes. So there are a few things to now here. First : what was left to work on. So at this point the game was pretty fully featured but the AI had clearly misunderstood my goals with consumables. This was definitely a situation of confirmation bias where it told me I was right with the description i had provided but I was dead wrong. I had explained the consumable poorly and created a really broken system that destroyed the game. This was easy to fix, of course, but was a manual process of adjusting the consumable options. At this point, as well, I needed to resolve the external factors like the database to store the high scores in, how this could become more stable and maintained, and how much time and memory was dedicated to keeping it alive. The AI doesn’t care about any of those things so it just made “a game” but not a game that was easy to maintain. I had to modify some code to make this easier to work with. Second : What had to be fixed. The UI was a major issue. It was nice at the start but not optimized for any screen. Special care had to be put into making it accessible on any type of device. I’m not going to lie, I still used AI for most of this but a lot of it was asking potted questions at Claude until tokens were burned and then asking GPT instead with limited context. The issue of having a single massive file really burned a ton of context even with simple questions. Once the UI and edge-cases were resolved, there was the matter of transitioning this to a global scorecard and high score list. I chose to keep this to myself but it was also something that, given the situation, would have burned tokens for several days when It really only took me a few hours. Last, there are lots of bugs to fix. Situations where the data unexpectanlty goes awry and there’s almost no error handling at all. The screen will just go “black” and the app dies silently. Third : What tech debt did this create. The above is the first bit of major tech debt that was created by this. The app is not entirely maintainable in its current state and needs to be updated. Asking Claude even a simple question at this point kills him entirely so this falls completely to me to fix. There’s also the concept of any future work. I’d love to expand this to a multiplayer platform but Claude has proven that it’s reach its limit with this repository. Either the context is too large for it to handle or the tokens are too limited, but either way it cannot perform any more tasks on this repository, so all new work will be manual. Error handling: ai never even considered error handling so any crash causes a blank screen. I’ve had to add this myself through the entire app to make it stable. Icons : made with copilot The Result I built a game I’ve been dreaming of my entire life and I did it in 2 weeks with limited time. Honestly, despite the flaws, this is brilliant. Checking it out and submit a high score! https://darknetops.jacoblandry.com/
View original source — Hacker Noon ↗


