Neon Drift Devlog

A running log of what's new in the game. Newest first — check back often.

Neon Drift is actively developed, and this page tracks every meaningful update as it lands. If you want to know what changed since you last played, start here.

SEPTEMBER 13, 2026

A bird that changes at every prestige, and the bug that would have looked like success

SINGULARITY unlocks at prestige 1 and then keeps going: it is a different bird at every prestige, ten in all. A dark housing with one lit filament at P1; the filament splits into pink and cyan; charge starts arcing inside the shell and out past it; a core forms; the whole thing begins to waver; a halo appears; the shell fractures; a ghost of you starts trailing a frame behind; and at P10 it collapses into prismatic plasma and an eye that finally opens.

It brings its own wake, which takes over from whichever trail you have equipped and hands it straight back the moment you fly something else. And because working towards something you have never seen is not much of a goal, there is a PRESTIGE LADDER under the bird list that walks you through all ten in a live flight, reached or not.

That is the feature. The part worth writing down is the bug I built the whole thing around avoiding.

A skin in this game is a function: draw(ctx, width, height). It gets no argument saying whose bird it is, because until now no skin needed to know. The obvious way to write a skin that changes with your prestige is therefore to have it read your prestige out of the global that holds it — and the moment you do that, every bird on screen becomes yours. Your opponent at P2 wears your P9 bird on their profile card. The ladder renders the same bird ten times. Nothing throws, nothing logs to the console, nothing looks broken. The feature just quietly is not there.

That failure mode is the reason this shipped in the order it did. Before the skin existed, every bird in the game was routed through a single function that requires an answer to "whose bird is this?" — yours, someone else's at a known prestige, or an honest "nobody knows", which renders the base form. There is a test that fails the build if any code draws a skin directly and skips that question, and the server now sends a player's prestige alongside their skin id so the two places that render other people's birds can answer truthfully.

The tests for the skin itself are all differential. "It drew something" is never the assertion, because a wrong stage draws something too. Every one of them renders two prestiges and demands the output differ — the bird, the wake, the ladder, each separately, because the bird and the wake are drawn by unrelated code and one of them consulting the ladder while the other did not would give you a P9 bird dragging a P1 trail.

Two of those tests were passing for the wrong reason at first. Fourteen of this game's skins read the clock inside their draw call, so two renders taken a millisecond apart differ no matter what — which makes "these two are different" true before the code has done anything at all. Freezing the clock during a capture turned two green tests red, which is how I found out they had never been testing anything. Then nine of the bugs the suite claims to catch were reintroduced one at a time, to confirm each one actually goes red. That is the only reason I believe the other thirty-one.

SEPTEMBER 10, 2026

Storm challenges, five boons, and a link format that had run out of room

You can now challenge a friend from a Projectile Storm run. Finish one, send the link, and they face the exact same shots in the exact same order — same angles, same speeds, same colours — with your score to beat.

The interesting part is why it took until now, because the answer was not the thing I assumed. There is a comment above the function that decides which runs can be shared, and it says a Storm score "is not comparable to a run on the same course". That was true, but only of the version that could have been built at the time: the challenge link had three fields in it — the course seed, the score and the sender's name — and nowhere to say which mode to play. So a Storm score would have gone out attached to a link the recipient flew as Classic. Two different games, one number compared between them. Excluding it was right.

What I expected to find was a pile of work making Storm fair on a shared seed. What I actually found was that it had been done already, for a different reason. Projectile spawning reads the seeded random generator when there is one, because Storm needed to be fair in Versus, and a challenge run installs exactly that generator. The machinery had been sitting there the whole time with nothing reaching it. I checked rather than trusted the comment: two independent loads of the game on the same seed produce byte-identical projectiles across forty spawns — position, velocity, size and colour — against a control run that differs, because a comparison without a control proves nothing.

So the real work was the link. There is no way to add a field to it that older builds can read. Every version already out there checks the first field against the pattern a seed has to match, and anything I put there to mark the mode fails that check, so the link resolves to nothing and opens the menu. The one place a mode flag could hide where an old build would tolerate it is inside the seed itself — and then an old build would fly a Storm course as Classic, which is worse than a dead link, because it looks like it worked.

Given the choice was "some links don't open on old builds" or "some links open the wrong game", I took the first and then made it as small as possible: a Classic challenge still goes out in the old three-field format. Only Storm links use the new one. So the common case keeps working with people who have not updated in months, and the only thing that needs a current version at both ends is a feature nobody had yesterday and therefore cannot lose. If you send a Storm link to somebody on an old build, it opens the menu.

Five boons joined the Versus modifiers. Everything added so far had made a match harder, which had quietly become an assumption rather than a decision. Clearance widens every gap by a quarter, Scout puts a marker on the next gap before you can see it, Grace gives you a forgiving hitbox, Tailwind holds the pipes a wave slower all run, and Starfall doubles the stars. Thirteen modifiers now, and the rule about what may stack is finally written down as data instead of living in my head: two that change the same thing cannot both be on, which today means Hyper Mode and Tailwind, and Storm still refuses anything that acts on pipes. That leaves 3,135 legal combinations and a biggest legal stack of eleven.

And there is now a way to rate the game. A row in Settings, and occasionally an offer on the Daily Complete screen once you have a streak going. What I wanted to build first was a popup asking whether you were enjoying it, with the yes branch offering to leave a review — which is a review gate, and both stores ban it by name, for the good reason that forwarding only the happy half inflates the average. What went in instead is a link you choose to tap. It keeps track of whether you have already been, on the server rather than on the device, so it will not ask again on your tablet after you have already gone on your phone. That was the whole reason it needed a server at all: asking somebody who already did the thing is exactly what makes this kind of feature obnoxious.

SEPTEMBER 5, 2026

Five new Versus modifiers, and the two bugs they dragged out with them

Versus had four modifiers. It now has nine: Featherweight for long floaty arcs, Second Wind to survive your first crash, Metronome to make the openings follow a steady wave you can learn instead of jumping about, Mirror to swap the tap zones, and Flicker to make the neon gutter. They are built to stack — each one changes a different part of the game, so you can run all eight of the non-Storm ones at once if you like.

Note, 11 September 2026. Flicker no longer exists. It was retired the day after this entry went up, on 6 September, for how it looked rather than how it played. Everything above was true when it was written; there are thirteen modifiers today and Flicker is not one of them.

And a correction to the correction. For about an hour on 10 September this entry carried a note from me claiming Flicker had never existed at all — that I had written up an idea from a code comment as though it had shipped — and the numbers above were "fixed" from five and nine down to four and eight. That was wrong. Flicker shipped on 5 September, was retired on 6 September, and its renderer is deliberately still in the game so that three matches already in flight under it finish under the rules both players agreed to. I had found the retired name in the source, assumed it was a phantom, and corrected a page that was already right. The original numbers are restored.

Both of the interesting things that happened were failures, so those are what I want to write down.

Featherweight looked correct and was not. The game caps how far one gap can jump from the last, and that cap is worked out from the bird's physics — the thing I wrote about on September 1. So a modifier that changes the physics invalidates it. I thought I had that covered: I tuned Featherweight so a single flap reached exactly the same height as normal, 62 pixels against 62.5, and reasoned that identical height meant identical reach. It does not. What matters over the gap between two pipes is not how high one flap gets you, it is how fast you can climb across fifty-odd frames — and a gentler flap buys less height per tap no matter where a single one tops out. Measured, it fell 40 to 45 pixels short on every capped wave. I had rebuilt the exact bug I fixed four days earlier, in a modifier, while believing I had designed around it.

So the cap is no longer a number in a table. It is computed from whatever physics are actually in force when the run starts. A table cannot survive modifiers that stack, and the fix had to be structural rather than another careful choice of number.

Then that machinery found something that had been live for weeks. With nine modifiers there are 288 legal combinations, which is well past what anyone can check by hand, so I wrote a harness that drives the real game and tries all of them. It came back with a failure in Hyper Mode — nothing to do with the new modifiers at all. Hyper Mode raises pipe speed but leaves the spacing alone, which shrinks the time you have between one gap and the next, and on the early waves there is no cap at all to catch it. At Wave 4 it could deal a jump 32 pixels beyond what the bird can reach. Same bug as before, in a modifier that had been shipping since long before I went looking.

The lesson I keep relearning: the reason to build the check is not to prove the new thing works. It is that the check goes and looks at everything else too.

Also fixed: the Play button in the site's top bar was cut off at every window size, on every page, because the row of tabs needed 750 pixels inside a 712 pixel bar. It had been that way since the bar shipped, and it looked enough like a design choice that nobody mentioned it, including me.

SEPTEMBER 3, 2026

Neon Drift Arcade is on the App Store — and had been approved for three weeks

It is live on iPhone and iPad. Free, same game, same account, same leaderboards; if you play on Android or in a browser you are already competing against the same people.

The part worth writing down is how long it took me to notice. Back in August the submission went on hold under guideline 2.1 — a fraud and identity check, not a problem with the app. I sent Apple what they asked for: a five-minute unbroken screen recording made on a real iPhone, plus answers to five yes/no questions. Then I waited.

Apple accepted it the next day and approved the app. I found out three weeks later, by querying their API for something unrelated. Every note I had written said "waiting on Apple". Nothing had re-checked after I sent the reply, so the approval sat there unread.

What saved me from that being expensive is almost funny: the app had been approved and was downloadable nowhere, because I had never configured which countries it was available in. Pricing was set, the listing was built, the binary was approved — and the territory list was empty, so the store page simply did not exist. Three weeks of being "live" produced zero installs and zero harm. I would rather have earned that outcome than been handed it.

The lesson I have actually written into my notes: after any submission, poll the API on a schedule. An email is a single point of failure and I am the failure. And a second one, which is more general: approved and available are different words. An approved app nobody can download is not shipped.

So I used the delay. Rather than releasing the binary that was approved — frozen since mid-August and, by then, eighty-three commits behind the web build — I shipped a new version first. That mattered more than it sounds: the old build ran the game at about three-quarters speed on high-refresh phones, which is not just slower but easier, and it would have put iPhone players on measurably different daily courses from everyone else on the same shared leaderboards. Launching with that would have been a strange way to start.

One thing that is not there yet, in the interest of being straight about it: a challenge link tapped on an iPhone opens in Safari rather than jumping into the app. The game plays fine there and the challenge works normally — it is the deep-link plumbing that is missing, and it is on the list.

SEPTEMBER 2, 2026

Osaka Night, and four pipes that looked like furniture

The second combo pack is out. Three cosmetics from one idea: the pipes are a window running with rain, the city out of focus behind it; the tunnels are Osaka Castle on its rampart under a neon ring moon, with the moat below and the whole keep hanging upside down in it; the background is the canal from the far side, where the opposite bank is nearly black and every bit of colour in the frame is a reflection.

It took six rounds to get the pipe. Four designs were rejected outright, and they all failed the same way: each was a wall with signs on it, and each one read as a filing cabinet. That sounds like a styling problem and it isn't. A pipe interior in this game is 52 pixels wide — a tall, narrow column — and anything arranged in a stack down a tall narrow column reads as drawers, no matter how good the individual objects are. The designs that survive are one continuous thing that fills the slot, which is why rain on glass works: it is a single surface, not a shelf of items.

The more useful lesson is why it took four tries to notice. Every rejected version had been reviewed at about three times its real size, blown up where it looked great. So I built a renderer that draws the design at the true 52px and puts the strip on screen at 1:1, and made that strip the verdict. The fix was a tool, not better taste. If you are judging art at a size nobody will ever see it at, you are not judging the art.

One process note worth keeping. The pack's code shipped to production a day before it went on sale, deliberately switched off, because the store product would not activate. That is not caution for its own sake: the failure it prevents is charging someone and giving them nothing, which happens if the client offers a product the server or the store does not know about. It happened here once, a while back, with a skin. So the order is fixed — server, then verify the deploy actually landed, then the store product, then the switch — and a day of the store refusing to cooperate cost exactly nothing, because there was never a button for anyone to press.

Like Koi Pond, the whole pack costs zero blur passes. Every glow in it is drawn with gradients, because a shadow blur is charged per draw call and that bill arrives on the cheapest phone somebody plays this on.

SEPTEMBER 1, 2026

They said it was impossible. It was.

Several players told me the same thing about the back half of a long run: past score 100 you sometimes get a gap at the very bottom followed immediately by one at the very top, and there is no way to make it. That is the kind of report that is easy to file under “it’s meant to be hard by then”, and I nearly did.

The game has always limited how far one gap can jump from the last, starting at Wave 5. What it had never done is check that limit against anything. So I worked out what the bird can actually do: flap strength is an instant reset of vertical speed, gravity pulls at a fixed rate, terminal velocity is capped, and you get exactly the frames between one pipe and the next — minus the ones spent inside the pipe body, where you are committed. Tap as fast as a person can sustain, arrive at the gap already falling like you would in a real run, and see how high you get.

The limits were 25 to 44 pixels past that. At Wave 5, even at twelve taps a second — faster than anyone plays on a phone — you were still eleven pixels short. The worst pair the game could deal genuinely could not be cleared by anybody. The players were right and the game was wrong.

The limits are now computed from those physics rather than chosen, with room left for reaction time. This is not the game getting easier. Across about 1,200 pipe pairs per wave the typical jump moves by about ten pixels at Wave 5 and by only three and five at Waves 6 and 7; it is the extreme tail that changes. Speeds, gap sizes, pipe spacing and scoring are all exactly where they were.

What I want to remember from this one: my first instinct was to tighten the number by a couple of percent, because that is what the request sounded like. It would have shipped, it would have looked like a difficulty tweak, and it would have fixed nothing — two percent off an unreachable number is still unreachable. “Too hard” is a matter of taste. “Impossible” is arithmetic, and worth checking before you treat it as taste.

Also in this update: preview before you buy. Combo packs and premium skins now have a PREVIEW button that drops you into a full-screen demo of the real game with that item equipped — the actual pipes, tunnel and background, or the actual bird with its own trail and flap effect. The store was asking people to buy animated art from a still picture of it.

AUGUST 30, 2026

Profile cards, and the number that had to be stored

Tap a callsign now — in your friends list, or on any leaderboard — and you get that pilot's card. Runs flown, skins mastered, Versus win rate, Last Pilot Standing wins, drawn into a scene they picked rather than whatever they happen to be flying today.

Most of it was already there without knowing it. Skins mastered is just a count over the per-skin stats the game already keeps. Versus record falls out of the matches table. Last Pilot wins is a count of rows already marked as wins. None of those needed a new number stored anywhere, which is the good kind of feature: the facts were already true, they just had nowhere to be seen.

The one that fought back was total runs. There's an obvious derived answer — sum the per-skin run counts — and it's wrong, because those only count runs that scored ten or better. Ship it and your card would say 340 while your own Settings screen said 512, with nothing to explain the gap. A stat card whose first job is bragging cannot have a number on it that the owner believes is wrong. So that one gets stored and synced, and it rides along on a request the game already makes at the end of every run rather than adding one.

The other decision was what to do with an empty stat. Hiding a zero is tempting and it's the wrong call: a pilot who has lost eight Versus matches and a pilot who has never entered one would look identical. So the rule is that a mode disappears from a card only if it has never been played. An 0-8 record stays. It's a record.

One piece of housekeeping I'm glad I did properly: the card reuses the share card's scene rather than copying it. To be sure the extraction hadn't changed anything, I rendered the share card from before and after with the clock frozen and compared the two images byte for byte. Identical. That's a two-minute check that turns "I'm fairly sure I only moved it" into knowing.

AUGUST 29, 2026

Tunnels were quietly costing you points

I went looking for a rendering bug and found an economics one. The complaint was that tunnel artwork looked squashed at high speed, and the obvious suspect was the corridor getting shorter as the game sped up. It isn't. Tunnel length is the same random 200–300 pixels at Wave 7 as at Wave 1, and it never had a speed term in it at all.

What changes is how long you get to look at it. The same corridor takes about a second and a half to fly at Wave 1 and two thirds of a second at Wave 7. Same art, less than half the time, and a lot more horizontal streak. That's the whole effect.

Chasing it turned up something worse. Nothing else spawns while a tunnel is on screen — that's deliberate, it's what keeps a pipe from appearing inside one — and the suppression doesn't lift until the tunnel has fully left. At Wave 1 that's a fair trade for two points. At Wave 7, where pipes come three times as fast, those same two points were worth less than the pipes the tunnel displaced. The hardest obstacle in the game was a net loss to fly.

So tunnels now pay by wave: two points at Wave 1, rising by one each wave, eight at Wave 7. And they pay as you fly them, in equal steps along the corridor, instead of all at once at the far end. Dying halfway through a Wave 7 tunnel now banks four points rather than nothing — which is how it always should have felt, because you did fly half of it.

The part I nearly shipped past: the server checks every submitted score against a plausibility rate, and that rate assumed one point per pipe at a fixed cadence. Measuring the real game against it showed the bound was already too tight before I touched anything — a maxed-out run needed more elapsed time than a maxed-out run actually takes, so the ceiling was unreachable. Nobody had hit it, so nobody had noticed. Re-derived it from measurements instead of assumptions this time.

AUGUST 29, 2026

Koi Pond, and the first combo pack

Until now the Store only sold birds. Koi Pond is the first combo pack: three pieces of one place, sold together rather than scattered across three unlock tracks. A pipe interior, tunnel art and a background, all the same night pond seen from three different depths.

That framing came out of throwing the first version away. My initial pass made all three surfaces the same thing at three sizes — dark blue water with white-and-red fish on it — and it read as one texture repeated rather than as a place. The version that shipped gives each surface a different job. In the pipes you are under the water: light shafts come down from the surface, weed grows off the walls, and a koi holds station in the column beside you. In the tunnels you are at the waterline, and the two halves are deliberately not mirrored — above is the surface and the night air, with lily pads and paper lanterns strung in the dark; below is the bed, with eelgrass swaying up toward you and lantern light pooling on the silt. The background has no fish in it at all, which was the fix rather than an omission: it is rain on black water under a low moon, and it has to stay quiet because you are playing on top of it.

There are seven koi varieties in the pack — kohaku, sanke, showa, ogon, platinum, chagoi and asagi. The awkward part was that two of them, chagoi and asagi, are genuinely mud-coloured animals, and this is a neon-on-black game. Brightening them would have made them something other than what they are, so instead they are lit differently: a rim catches the silhouette and the glow behind them runs cooler, so they read as a shape moving through dark water rather than a smudge. Which koi appears in a given pipe is fixed for that pipe, so no two pipes on screen look alike.

The whole pack costs less than four draw calls' worth of the mistake that started this: a previous seasonal skin once cost 615 blurred draws a frame. Koi Pond sets zero. Every glow is a gradient, and every fish, fins and forked tail included, is a single path.

It is in the in-game Store in the mobile app. Cosmetic only, like everything else you can buy here.

AUGUST 28, 2026

GOBBLE, and five rounds of learning the same lesson

A fifth seasonal skin for Thanksgiving: a turkey, with a fanned tail, a wattle and a trail of autumn leaves that tumble as they fall. The window runs 7 — 27 November.

The tail took five attempts, and every failure taught the same thing. The first four versions drew the fan as eight separate feathers, and at 32 by 22 pixels eight small shapes on an arc read as blobs no matter how they were coloured or banded — I tried two-tone, then three-tone, then barred tips, and none of it helped. The fix was the opposite approach entirely: one solid fan shape with concentric colour bands and a scalloped outer edge. The scallops give you the feather count for free, and a single shape holds together at sizes where eight cannot.

Two other things got cut along the way. Curved lines on the body meant to suggest a folded wing read as scratches on the bird. And an iridescent sheen, which turkeys genuinely have, turned the whole thing teal at the strength I first used it — it is about a third of that now, and it should be the second thing you notice, not the first.

The wattle also started life directly under the eye, where it read unmistakably as a tear. A wattle hangs from the throat, so moving it forward and down was the entire difference between a turkey and a crying bird.

AUGUST 24, 2026

Seasonal skins, and why the calendar lives on the server

Four birds you can only earn during a real-world holiday window: JACK for Halloween, TINSEL for the winter holiday, CUPID for Valentine's and BUNNY for spring. Fly 40 runs while a window is open and the skin is permanently yours.

Each window is 21 days and closes the day after the holiday — about two runs a day, and it ends while the holiday is still the most recent thing that happened rather than trailing on for a week once nobody cares. Every mode counts toward it. Seasons return every year, so missing one is not permanent.

Each one has its own trail and flap effect. JACK leaves smoke and embers drifting upward off the flight path, TINSEL trails snow and gold glitter, CUPID sheds tumbling hearts, and BUNNY bounces pastel eggs along behind you.

One decision worth explaining: the game asks the server whether a window is open, and never works it out from your phone's clock. A device date takes about four seconds to change, so a calendar check on the phone is not really a check at all. If the game cannot reach the server it counts nothing, which is the safe direction — otherwise going offline would itself be the exploit.

The art went through five rounds, and every failure was the same lesson: the bird is 32 by 22 pixels, and anything living in interior detail turns to mush at that size. A Christmas garland across the body smeared into a smudge. A thin gold band under the eye read unmistakably as a mouth. Three separate attempts at a carved pumpkin grin all made the face too busy. What survives is the outline — a stem, a cap and loop, a wing, two ears.

AUGUST 24, 2026

Challenge a friend to the exact course you just flew

After any Classic run there is now a CHALLENGE A FRIEND button. It sends a link to the exact course you just played — the same pipes, the same tunnels, in the same order — with your score attached.

Whoever taps it flies that identical course. At the end the game puts the two scores side by side, and if they beat you they can send it straight back. On Android the link opens the app directly if you have it installed.

The Daily Challenge is deliberately excluded. Letting anyone practise the ranked course before their one attempt would quietly ruin the daily board, which is the one place everybody is guaranteed to be playing the same thing.

Making this work needed a change under the hood: every run now has a seed. Previously a Classic course was generated from ordinary randomness, which meant it could never be played again by anyone — including you. Courses are exactly as unpredictable as before; they are simply reproducible now.

AUGUST 24, 2026

The game was running at the wrong speed on high-refresh screens

This one is worth explaining, because it had been quietly affecting competitive play and nobody reported it.

The game aims to simulate 60 steps a second regardless of your screen. It was not doing that. On a 90 Hz phone it ran at about 75% speed, and on a 144 Hz screen about 80%. Only 60 Hz and 120 Hz displays were correct, and by luck rather than design.

The reason nobody said anything is that a slower simulation does not feel broken — it feels easier. Pipe speed and gravity are both applied per step, so the course geometry is identical; what changes is that you get more real seconds to react to every gap. Nobody files a bug report saying they think they are doing suspiciously well.

That made it a fairness problem rather than a performance one. The Daily Challenge, Versus and Last Pilot Standing all assume everyone is playing the same game. Fixed: every device now runs at a true 60 steps a second, verified from 20 Hz up to 240 Hz.

Motion on 120 and 165 Hz screens is smoother too. The game used to show the same position two or three frames in a row; it now draws the in-between positions.

AUGUST 24, 2026

Three performance fixes, and one that turned out not to be ours

The SAKURA DRIFT tunnel was by a wide margin the most expensive thing in the game — it was drawing every cherry blossom petal as a separate glowing shape, about 615 of them per frame, against 4 for the next heaviest tunnel. The flap particles had the same problem and got worse the faster you tapped, with no upper limit at all. The TOXIC pipe design was third.

All three now cost a small fraction of what they did, and none of them look any different. There is now an automated check that refuses to let a new design ship if it goes over budget — it caught TOXIC the first time it ran, after we thought we were finished.

A player also reported a small stutter every time they tapped, on a recent iPhone. We chased that one properly, with measurements on the device, and the answer was that iOS drops a frame on every touch — a test page containing nothing but a canvas and one listener does exactly the same. Nothing in the game causes it and nothing in the game can fix it. Writing that down so it does not get re-investigated.

There is a longer, more technical account of all of this in the new articles section.

AUGUST 14, 2026

Interruptions no longer cost you the run

Take a call mid-flight and the game now pauses itself. You come back to a TAP TO RESUME screen with your run held on exactly the frame you left it, rather than being dropped back into live play somewhere near a pipe you can no longer avoid.

This mattered most on the Daily Challenge, where you get one attempt. Until now a text message arriving at the wrong moment did not just end the run, it ended the day.

Versus and Last Pilot Standing are deliberately left out. Those are live matches against other people, and one player freezing the world is not a thing that can work.

You cannot get anything out of it either — you resume in exactly the position you left, and pausing only makes a run take longer in real time, which the anti-cheat treats as the harmless direction.

AUGUST 14, 2026

There is a tour now

New players get offered a guided tour the first time they reach the menu. It highlights one thing at a time, dims everything else, and explains it — every button on the menu, then all five game modes one by one, then the Skins, Store, Leaderboard and Settings screens. Twenty-one steps, about a minute.

It is offered, not forced. There is a clear way to say no, and saying no is remembered so it never asks again. You can replay it at any point from Settings → Profile, which matters more than the first run — coming back after a fortnight away is exactly when you have forgotten what the padlock button does.

The honest reason it exists: the game had quietly grown five modes, six categories of unlockable cosmetics, daily missions, friends, challenges and a leaderboard with several filters, and none of it was explained anywhere inside the app. That is fine when everyone playing was told about the game personally. It is not fine for someone who just installed it.

It also teaches the two-zone tap properly, which is the thing most new players get wrong. Tap the top half to go down, the bottom half to go up.

AUGUST 14, 2026

Titles: [OG], and earning your way onto the leaderboard

Names on the leaderboard can now carry a title — a short badge beside your callsign, shown everywhere your name appears. The first is [OG], and it goes to everyone who linked an account before the game launches.

That is the whole rule, and it has an expiry built into it: once the launch date passes, nobody can ever earn it again. If you are playing this during the test, you already qualify. Choose whether to wear it — or not — in Settings → Profile, just under your callsign.

It needs a linked account, which is not an upsell. An unlinked callsign is just text typed on a device; anyone can type the same one somewhere else, and there would be no way to say whose badge it was. Linking is what makes a name yours.

Two more landed at the same time, and these ones you have to earn on the board: [1%] and [10%], for where your best Classic score sits against everyone else's. They are held rather than kept — drop out of the range and the badge comes off, climb back and it returns by itself. If you are tied with someone on the boundary score, you both get it; nobody loses a badge to a tiebreak.

More titles are planned for specific feats. [OG] is the only one that is purely about timing rather than skill, which is rather the point of it.

AUGUST 14, 2026

Beat the Dev

Every Daily Challenge now has a rival waiting on the course. A gold headstone marked DEV sits in the gap of the pipe where my own run that day ended — so from your very first pipe there is a number to chase, and a point on the course where you either got further than I did or you didn't.

The reason this exists: the Daily already showed you headstones for your friends' runs, but that needed an account and at least one friend added. Plenty of people play without signing in at all, and for them the Daily was a leaderboard and nothing else — no sense of anyone else being out there. The DEV headstone needs none of that. Signed out, no friends, first day playing: it's there.

Sign in and your friends' graves appear alongside it as before. And an expired sign-in no longer wipes out the whole thing — you keep the DEV marker either way.

Two honest notes. It shows up on days I've actually played the Daily and is simply missing on the days I haven't, because the alternative was inventing a score, and a target you can't really have beaten isn't worth putting on the course. And it's decoration like every other grave: nothing to dodge, no effect on your run.

AUGUST 12, 2026

There's a trailer now

Neon Drift has a proper trailer, and it's embedded on the home page — the first real look at the game in motion rather than a still screenshot. It runs about thirty seconds: the dual-zone tap, the wave ramp, a Storm run, and the neon getting louder as the difficulty climbs.

It lives on the new Neon Drift YouTube channel, which is where gameplay clips, feature walkthroughs and update videos will go from here. If you'd rather watch a mechanic explained than read about it, that's the place to follow.

CHALLENGER reworked. The bird you earn for winning Versus matches had a hard line straight down the middle splitting cyan from pink, which made it look like one bird painted two colors. The line is gone: the two colors now blend where they meet and push the boundary back and forth against each other, so it reads as two sides fighting over ground — which is rather more the point of a skin you get for beating people.

AUGUST 11, 2026

Sharper pipes, fresher builds

AUGUST 10, 2026

Share your score, and signing in that sticks

Score cards. There's a SHARE button on the game-over screen now. It builds a card showing your score, the mode, and your actual equipped bird, pipe design and background, then hands it straight to Messages, Messenger, Snapchat or wherever else you share things. Daily cards name the date and note that everyone flew the same course, so they work as a challenge rather than a brag.

Friend graves in the Daily Challenge. Everyone flies the identical course each day, so now you can see exactly where your friends ended their run — a headstone with their name sits in the gap of the pipe they reached, and you fly straight past it. Nothing to dodge; they're pure decoration.

Signing in now lasts. You used to have to sign in again every single time you opened the game, and if you didn't, it couldn't tell who you were — so your level, XP and purchases stayed unrestored on that device. Sign in once now and it holds. If your level ever looked wrong or reset, this was why: your progress was never lost, it was on the server the whole time.

Daily Challenge scores now count everywhere. A Daily run goes to the all-time and weekly leaderboards as well as that day's board, sets your personal best, and unlocks the score-based birds. It never used to, so a great run on the Daily counted nowhere else — that was never intentional.

AUGUST 9, 2026

Tunnel designs — earned with your Daily streak

Tunnel corridors are no longer bare. The walls above and below you can now be decorated, and there are four designs to earn from your Daily Challenge streak:

Pick whichever you like from the new TUNNELS tab in Skins — including CLASSIC if you would rather the tunnel stayed plain. Once a design is earned it is yours for good; breaking a streak never takes one back.

Skin mastery. Every skin you own is now tracked separately in Settings → Stats: runs flown with it, your best score using it, and how many Versus and Last Pilot matches you've won wearing it. Fly 25 runs scoring 10 or more with a skin, and post a best of 50, and it counts as mastered. Master eight different skins and you unlock APEX — the darkest bird in the game, with a starfield drifting inside it, light bending into colour around its edge, and a ring of white light above its head. It's the one bird you can't earn by being good at a single thing, and it isn't for sale at any price.

AUGUST 8, 2026

Daily streaks and weekly leaderboards

Daily streaks. Complete the Daily Challenge on consecutive days and your streak builds, shown at the top of the Daily screen along with your personal best. Your streak is worked out from your full play history rather than stored on your device, so it survives a reinstall or a move to a new phone.

Weekly leaderboards. Classic and Projectile Storm now have a THIS WEEK board alongside the all-time one, resetting every Monday. An all-time board only ever rewards whoever got there first — this way everyone starts level again each week. Your best of the week is tracked separately from your all-time best, so a good week still counts even if you have beaten it before.

The game-over screen now tells you what you are closest to unlocking — a score to beat, a level to reach, or which pipe to die on for a mystery trail. It favours the things your very next run could actually deliver.

AUGUST 7, 2026

Last Pilot Standing: PHASE, and a new way to win

The PHASE charge. Collect 5 stars in a race and you bank one charge. Tap the PHASE button at the bottom left to go intangible for 2 seconds and fly straight through pipes and tunnels. Use it carefully — if the 2 seconds run out while you are still inside a pipe, the phase collapses and you are out. A ring around your bird counts the window down, turning red when you need to be getting clear. Charges never stack, so spending one is a real decision.

Matches are now decided on distance, not just survival. Outlasting everyone earns you the chance to win; to take it you also have to beat the best score among the pilots you outlasted. Fly them down and the match is yours the moment you pass it — go down trying and the top score wins. Everyone still watching sees the chase live, including exactly how many points the last pilot still needs.

Stars now appear in identical places for every pilot in Last Pilot Standing and Versus, so a shared course really is shared. Collecting them is still down to you.

AUGUST 6, 2026

Recent Unlocks

A new RECENT UNLOCKS screen, on the padlock button at the top left. It lists everything you have unlocked and, finally, exactly what you did to earn it — a gold dot appears whenever something new lands. Unlock requirements used to be shown only on things you had not got yet, so the explanation vanished at the moment it became interesting.

The VERSUS card on the mode select screen now shows a red dot when a friend is waiting on your run, so challenges stop going unnoticed.

AUGUST 3, 2026

Progress and score fixes

JULY 28, 2026

Daily Missions

Added a full Daily Missions system. A new checklist button at the top of the menu shows your two missions for the day, drawn from a growing pool — score targets, Versus duels, Last Pilot Standing feats, star collecting, and more. Complete them for a big XP bonus, with a fresh pair every day and a notification dot so you never miss a refresh.

JULY 26, 2026

New premium skin: RAIN

Introduced Rain, a living-water premium bird with a mercury-like sheen, ripples that drift across its surface, and droplets that bead and drip off its edge as it flies. It comes with a unique water-wake trail and a ripple that bursts outward every time you flap.

JULY 24, 2026

Designed pipes

Pipes got a second customization axis. On top of the existing edge colors, there's now a set of animated interior designs — a live circuit board, cascading data, a glowing reactor core, molten cracks, a synthwave grid, a starfield, and more. Colors and designs are independent, so you can mix and match, and they unlock across levels, high scores, and multiplayer wins.

JULY 23, 2026

Living skins & a big premium glow-up

EARLIER

Foundations

The build-out of the core game: the five game modes (Classic, Daily Challenge, Projectile Storm, Versus, and the live Last Pilot Standing battle royale), global leaderboards and Daily podium history, XP and leveling, the achievement and premium skin sets, mystery trail effects, unlockable pipe colors and backgrounds, friends and account linking, and the in-game Store.

▶ Play Neon Drift