SEPTEMBER 29, 2026
ANDROID AT 60
On many Android phones the game was held at exactly 30 frames a second. The cause was not the game.

The Spore Hollow, one of the busiest scenes in the game, now drawn at 60 frames a second on Android.
THE PROBLEM
Before the Android app went to Google Play, testing on a recent phone with a 120Hz screen showed something strange. The game itself took about ten milliseconds to draw a frame, which is fast enough for well over 60 frames a second, and yet every launch of the app held at exactly 30. Not 29, not 45: exactly half. A number that round usually means something is waiting for something else.
THE CAUSE
The culprit turned out to be the advertising library. A few seconds after launch, the library starts up, and from that moment every two dimensional drawing surface the page had already created lost its fast path on the graphics chip. The score, the hearts and every small picture drawn on top of the game were suddenly being copied back from the graphics chip to the processor every frame, and that copy cost just enough to miss every other frame.
Surfaces created after the library had started were fine. That one detail is what made the problem so hard to see: the game was never slow, only the pieces of it that happened to exist at the wrong moment.
THE FIX
The fix is to wait and then start over. The game now draws its interface on a surface that is never placed on the page, and the moment the advertising library reports that it has started, the game throws away every cached picture and makes a fresh surface for the interface. On the same phone, launched four times in a row, the game held 30 frames a second on all four launches before the change and 60 on all four after it.
WHY IT MATTERS
Kai's Greedy Loop is a game about reading a road that comes at you fast. At 30 frames a second, a wall moves twice as far between pictures, and the moment you have to see it and react is half as long. A smooth frame rate is not decoration in a game like this; it is the difference between a fair death and an unfair one.
READ NEXT