Writing a startup simulator has been on my mind for years. I see it as the logical follow-up to the startup equity calculator, which got quite popular and helped thousands of new entrepreneurs. How could I continue educating the new founders and help them not repeat the same mistakes we all made, and also get them a feel for what starting a startup is going to be like, for real.

My first inspiration was the Ph.D simulator, which I thought gave a good idea of what life during a Ph.D is like. So the first attempt at a startup simulator was similar: as a founder, you only had a handful of actions at your disposal: write some code, or talk to customers. Unlike the Ph.D simulator where every turn took a month, for the startup simulator I figured a week was the right amount of time: a Ph.D takes years to accomplish, whereas a startup is defined within months of its inception, so weekly actions seemed right.

First version of the startup simulator: a status panel with week, cash, product progress, customers, team size, equity, skills and fundraising score, above a grid of available actions such as Build Product, Find Co-founder and Prepare Pitch Deck.

Since the player could only pick basic actions at each turn, I tried to design a complex modeling of the interactions between talking to customers (market fit is improving), vs. developing the product. On one hand, if you build too early, you are probably building the wrong thing and you’ll likely throw most of your code away. But if you don’t make progress on some prototype to launch and put in the hands of users, you’ll never reach true product market fit. My equations got more and more complex, taking into account the founder’s skills, exponential decay... The next challenge I faced was dealing with the co-founder: should they have their own actions? Yes. But it makes the game harder to play, because now the player has to decide each week what they work on, and also decide what the co-founder is working on. It was getting unmanageable.

And mostly it wasn’t fun to play. You click build/build/build a bunch of time, then click on pitch, and see some numbers slowly go up. Time for a re-think.

My next insight was that in my experience, startups are a race where the founder is overwhelmed with many possible directions, and a limited time to try to focus on only what’s essential. You are being bombarded by things to do, and can’t get to all of them. That’s where a lot of the stress is coming from. Could I replicate that in a game?

To get that feeling of stress, I came up with the idea that at each turn (week), the player is presented with up to 6 possible actions, but can only pick 2. So all the time, you have all these things coming at you. In terms of UI, those actions became cards you could play, so the game looks a lot like a board game. It reminded me of the board game “Roll Camera” with its funny cards and situations. Which also meant instead of a generic “build” action, I now had to come up with real story lines and dialogue (yes, AI was a great help for writing hundreds of card content). It made a huge difference in how the game plays, and keeps it realistic, interesting and possibly funny.

Card game version of the simulator: a hand of six story cards from the co-founder Alex and from yourself, with one card open showing a dialogue and three possible responses, and a slot to pick a second card.

Playing with the card system worked really well, it’s a game mechanics that everyone knows from playing board games. But something was missing: context. After you played a bunch of cards that influenced your co-founder for instance, it’s hard to keep track of what happened to the story. I added a journal log, but it was not very practical.

What other presentation mechanism could help make the story more sticky? I first thought of an email metaphor, where the player manages and receives all of their information over one inbox. Then I figured I might as well go all the way and be modern and realistic: everything these days is done over chat messages. So I changed the cards into real iMessage threads, and each action is a possible reply to one of the players. That presented some challenges for actions that were not directly tied to a character, but it worked really well to have a chat history and see how the relationship with your co-founder is evolving: it’s right there in the texts.

That move to a chat-based story-first game made the actual simulation engine less important. The story was first, and it was becoming impractical to adapt all the dialogues based on what the simulation model would say is the progress with product market fit, development of features, etc. Most of the simulation engine had to go, just keeping the key elements.

I played the game and it was pretty good, but it was missing one more thing. The 25 weeks or so are a long stretch. That’s when another insight came from the most unlikely of places: I had read Jordan Mechner’s The Making of Karateka and its follow-up The Making of Prince of Persia, and it had taught me a lot about story-telling and how to incorporate cinematic concepts into a computer game.

That’s how the launch scene was born: the day you launch is a very special day that most founders will remember for a long time. The rhythm of the game changes from weekly actions, to a frantic sprint in one day, with a lot of realistic twists, all happening over text. I finally had a simulator that worked for both the grind of a startup, and the highs like launching. I still love the launch scene, I think it’s the most satisfying part of the game. Of course, based on my experience with co-founder equity negotiations, I had to add an equity negotiation scene. It naturally shows up early in the game, so the player can get a feel for the game early on.

Is this game AI slop? On one hand, the code was 99.9% written by AI. On the other hand, the git repo has hundreds of commits spread over months of work. For that particular project (it’s not like the code needs to go in production and be maintained for years), I knew what I wanted, I was the curator, and I just used AI to implement my vision. With a lot of feedback. And more feedback. I didn’t have the front-end skills to do anywhere close to the job AI did. So for me personally, AI in this case let me build something I had wanted to build for a long time, but was too hard for me. I kept the project direction, its soul, so all “artistic” decisions are mine. How it works under the hood? I don’t really care that much, as long as it does what I envisioned. Ira Glass famously said:

“All of us who do creative work, we get into it because we have good taste. But there is this gap. For the first couple years you make stuff, it’s just not that good”.

I feel AI is helping people with good taste build what they dream of faster than before.

I hope you like it.

Play the Startup Simulator

(Feedback and pull requests welcome, repo is at https://github.com/alain94040/startup_simulator)