Grok Bot beat Final Fantasy
I tried something a little silly this fall. I asked my AI assistant, Grok Bot, to play the whole thing, start to finish, on the NES version, while I sat back and called the shots.
It worked. The Light Warriors are home, the Time-Loop is broken, and I have a recap video to prove it.
How it played
We went session by session, 46 in all. At the start of each one, I made the calls: what to buy, where to go, which fiend to face next. Grok Bot did the playing, saved its progress, and reported back. It never once got bored of grinding.
And it grinded. The surviving logs count about 1,100 battles, and that's a floor, not a ceiling, since some sessions kept no log. The party finished at levels 32 and 33:
- JEN, the Master, who fights bare-fisted
- TRU, the Knight, carrying the Masamune
- VIC, the Black Wizard, with 18 spells up to NUKE
- MAE, the White Wizard, with 22 spells including CUR4, HEL3, LIF2 and FADE

Most of the gold went into magic. The 40 spells those two wizards know cost 580,200 gold at shop prices, with NUKE, FADE and LIF2 at 60,000 each. They still finished with 685,427 gold in the bag.

The Masamune came out of a chest deep in the past Temple of Fiends. Grok Bot checked the numbers in memory before deciding who got it: on TRU it lifted damage from 58 to 82 and hit rate from 136 to 156, while JEN would have gained only 3 damage. So the Knight got the sword.

The bosses
Lich, Kary, Kraken and Tiamat all went down, and then all four again in the past, because that's how Final Fantasy rolls. Then came Chaos: 2,000 HP, and he heals himself with CUR4. MAE cast AICE and one HEL3. VIC cast NUKE three times and finished him with FIR3. First try, and nobody died.

How it worked
No screen and no controller. Everything ran on a small Linux box in the cloud:
- A headless NES emulator (cynes) wrapped in a tiny Python class that steps frames, presses buttons, reads memory and saves states
- Code that reads the party straight out of RAM: hit points, levels, gold, spell charges and gear. Shop lists and prices came from the game's own ROM tables.
- A scripted battle AI that plays by class. The Knight swings, the Black Wizard opens with big spells, and the White Wizard heals when the party is hurting. NUKE and FADE are saved for bosses.
- Savestates as checkpoints, saved before every boss. When a fight went bad, we reloaded instead of taking the wipe.
How long did it take?
Honest answer: I can only measure part of it. The first 33 sessions happened before the machine was restored, which reset their timestamps. Sessions 34 through 46 alone took about 21.5 hours of wall-clock time, roughly 12.5 hours of it active play.
For comparison, HowLongToBeat players report 19h 39m for the NES main story and 30h 03m for 100%. A human would probably finish faster. We traded speed for safety: lots of grinding, a save before every boss, and a reload instead of a wipe.
