Conquering Flappy Bird


The creator of the current smash-hit game "Flappy Bird" is either a certified genius or an authentic wacko. In either case, this game ignores every rule of good design: plopping you into your own personal crazily-addictive fire-y hell of casual gaming. All you can do is suppress your rage, grit your teeth, and try yet again to beat your standing high-score of "6". But when the rage becomes too much, you're forced to go to the dark side... and cheat.

To do so, you need to hook up your device to something can read the filesystem. Something like iExplorer or DiskAid for iDevices. Inside, you'll find a file... Apps/Flappy Bird/Documents/score.dat containing a single line of 8 characters:

0e00 0000 4f00 0000

What is this mysterious code? I'll tell you! There are two values stored here: your high-score, and the number of times you've played the game. Both of them use 8 characters to represent 32-bit signed integers.

The first 8 characters (0e00 0000 above) holds your score, in hexadecimal, stored in little endian order (so you read it in groups of two, from right to left: 00 00 00 0e). And 0xe in hexadecimal is 14. Which just happens to be my current high-score in the game. Interesting...

The second bunch of 8 characters (4f00 0000 above) is the number of times you've played this abomination of a game. 0x4f in decimal is 79 - and it increases by 1 every time you play. So 79 times I've bashed my head against the wall to get my massive high-score of 14.

Cheatin'!

Now that we know how to read the values, we can quite easily change them! The number of times you play isn't displayed anywhere, so who cares about the last 8 characters (though the same method applies)... instead we'll concentrate on upping our high-score juuuust a tad:

ffff ff7f 4f00 00

We've just modified our score from 0e to 7fffffff. Why that particular value? That's 2147483647 - which happens to be the eighth Mersenne prime - but also the largest 32-bit signed integer you can get. Any more than this, and the score goes crazy negative and shows funny characters on the screen. Copy that file back over top of scores.dat and restart the game...

Sure, it doesn't make playing the game any easier - but it might help reduce your frustration levels ever-so-slightly. Or, you know, greatly increase the frustration of your co-worker who is still stuck on 6 when you're on 104.

If you were even more evil than the creator of this game, that is.