Every Bond film ends the same way. The job is done, the villain’s island is on fire, and he is barely dry before M is on the phone with the next one. Nobody ever asks whether he’d like a week off.
Apple said yes on September 17. Google said yes on September 30. Two stores, thirteen days apart, after the long wait I spent two posts complaining about. That was the island on fire. I had about a day of feeling finished.
Then I did what a film title has been telling me to do since 1999. I decided the world I’d shipped was not enough.

The morning after. The folder is always thicker than the last one.
Playing It as a Stranger
Here is what decided it. The game phones home, and once the stores opened I could watch the numbers come in. People were installing it. That part worked. Then they weren’t really playing it. An install, a look around, a battle or two at most, and gone. Not a crash, not a complaint. Just a shrug I could see from the server.
That is a hard thing to read about something you built, and the only honest answer to it is to go and be one of those people. So I deleted the game off my phone, every build of it, and installed it from the App Store the way anyone else would. Guest account, no name, no saved progress. Then I tried to play it as someone who had found it on a Tuesday and had never read a line of my code or a word of this blog.
It is a humbling exercise and I recommend it to anyone who has shipped anything.
The tutorial is what got me. Before your first mission the game shows you a little card: three lines of text and a thumbnail, and a NEXT button. Nine cards for mission one, five for mission two, four for mission three. I wrote them months ago, against a version of the game that no longer exists, and I had not read them since.
Because the game would not let me. The cards show once, before your first launch, and then the game remembers you have seen them. It remembered too well. Half the time it remembered across a reinstall, so for me and for most of the testers the tutorial simply never came up. The one screen every new player sees was the one screen none of us had seen in months. On the clean install, finally, it did, and they were wrong.
Not vague, wrong. One card said a soldier purchase gives you five men. It gives you two. Another said your starter helicopter carries specialists. It carries two ordinary troops and no specialists at all, because specialists are a Mark V thing you research later. A third said you could fortify a house. You can, with Mark V specialists, which a new player will not have for hours. A fourth implied that opening a menu mid-battle pauses the game. Only one menu does.
So the first thing a new player reads is a stack of small lies, written by me, about my own game. And even where the cards were right, they didn’t land. You read nine of them and still don’t know which button is the gun. I know, because I played the part and didn’t.
That was the first thing that was not enough.
Pointing at the Screen
The fix is not better cards. The fix is to stop describing the screen and start pointing at it.
The new tutorial is what I’ve been calling a tour. The real battle screen fills the display, dimmed. The parts that matter are cut out of the dim and ringed in gold. Each ring gets a short label, and a card off to the side says what the thing is and what to do with it. Where words won’t do, the step is a short muted clip looping behind the ring: this is what taking off looks like, this is what landing looks like. BACK, NEXT, a row of dots, and SKIP TOUR for the people who already know.
Mission one’s tour has thirteen steps, which sounds like a lot until you list them: the goal, flying, taking off and landing, refuelling and rearming, the gun, the missile, the bomb, the status panel, the money and lives and clock, buying units, escorting the van, supply drops, and what a life is. That is the whole game.
A second, shorter tour plays after your first win, back at the menu. You have money now, and the game has two whole screens, the Hangar and Research, that you have never seen. Four steps, once, and then never again.
A tour that points at the screen has to know what the screen looks like. I got that wrong twice on the first pass. SKIP TOUR sat directly under NEXT, exactly where a thumb reaching for NEXT lands when it overshoots, and I skipped my own tutorial twice before I noticed. It lives at the far left now, the width of the screen away. And on a Galaxy S24 in landscape, the clip pane pushed the NEXT button clean off the bottom of the very first screen a new player sees. On Android the first impression was a tutorial you could not advance.
The layout that fit on my iPhone did not fit on the Galaxy, and the one that fit the Galaxy wasted half of an iPad. Every phone has a different shape, a different notch, a different idea of where the edges are, and a tour has to land its rings on the gun button on all of them. Sheesh. What a pain. I now have a row of devices on the desk and a tour that is checked on every one of them before it goes anywhere.
The part I’m happiest about is invisible. The tours live in the backend, not in the app. The screenshots, the rings, the copy, the order of the steps, all of it lives there and the game fetches it. When I find the next wrong sentence, and I will, I fix it. Every phone has the correction within the hour. No app update, no sixteen-day review. The old cards were baked into a build. These are not.
For My Eyes Only
The second thing was not a bug. It was a line at the bottom of the first post, written before the game had even been reviewed: letting you fly against another player instead of the machine. That line went into the file every project has, the one marked For Your Eyes Only: the things I meant to build, that I had told nobody how or when, and that nobody could therefore hold me to.
It had already come out of the file, if I’m honest. I had been dabbling at it for a long time: a note here, a test there, reading up on how other games manage it, the kind of tinkering that lets you tell yourself the thing is underway. Then came the sixteen days of waiting on Google. I ran out of things to check, and I worked the living daylights out of it. That is what the last post meant by the two ships in the yard, the ones that fight each other.
Back on the stranger’s phone, past the tutorial, I beat the machine. Then I beat it again on the next difficulty. Then I did what every player of a single-player game eventually does, which is wonder who else is out there. The answer was nobody. The enemy commander, the AI you fight, is good company, but it is the only company. Every battle in the game is you against something I wrote. The sixteen days had made it a project. The stranger made it the point.
I’ll tell you only this much now. On paper it looked close to impossible. The game’s backend is a twenty-two-year-old shared PHP host that cannot hold a connection open for longer than a page load, let alone a live match between two phones. The match runs, sort of. Whether two phones can agree about who won is the next post.
That is the second thing that was not enough. It was also the one I wanted most.
What I’d Tell Past Me
I tested the gun a thousand times and the sentence describing the gun zero times. The first thing a stranger is shown was the last thing I cared about. I had a year of attention to spend and I spent all of it on the battle, on whether a missile could be shot down, on how the enemy commander loses, and I never once walked in through the front door.
Bond never makes that mistake. He walks into the room and the room already knows him. He makes a good first impression. He also makes a good drink. He is always in a tux. And I want his car.

A good first impression. I would settle for the plates.
Put the stranger’s install on the calendar, the day after launch, before you have a launch. It is the clearest you will ever see your own game.
The folder M hands over is thicker this time. I have now read the first page.
So, a question for you: what game taught you how to play without you ever noticing it was teaching you? Box below, as always.
More soon.
Raid & Rescue will return in Two Ships.