Analyzing Frontier Model Progress with My Favourite Game: Prince of Persia
28 points by msephton 22 hours ago | 23 comments

criemen 3 hours ago
A German magazine (c't) ran a Asteroids programming contest in 2008 - create a client with access to the emulator output of the game that provides keyboard inputs to control the game.

The highest scoring submission that won the contest had a high score of around 137k. Last week, I had GPT-6 Astra, Sol and Luna implement and hill-climb on this task, as I wanted to see how big the difference in smartness is. Luna implemented something, but never exceeded ca. 20k points, with a large variance. Sol got something in the area of the humans implementation.

Astra, which finished fastest, had a highscore of around 1.7Mm when the game seemed to fairly reliably crash. On the way, it disassembled parts of the ROM to extract information about the game.

I didn't do a ton work to document and measure the specifics, but it was very impressive.

reply
looperhacks 3 hours ago
If I remember correctly, back then all "good" entries in the contest solved the game by syncing with the RNG and could basically predict where and how new asteroids would spawn. The difference between entries was planning ahead movement and residence against control issues due to the contest setup (like inputs getting delayed). I wonder how Astra managed so much better, I thought the problem was already solved
reply
criemen 2 hours ago
Thanks! I went back, and had a look at both the contest rules and the highest scoring submission again. Turns out I benchmarked against infinite games, whereas the contest measured a 5min time limit. So, Astra solved a different problem.

Comparing strategies, though, Astra does something pretty different from the highest scoring submission. It doesn't predict the RNG, instead it reacts to the visuals on-screen, planning ahead by estimating velocity of all objects on screen. Unlike the winning solution, it actively flies the ship, whereas the winning solution basically only rotates and teleports. So Astra behaves more like a regular "perfect" player would, rather than one that breaks the PRNG.

reply
suddenlybananas 7 minutes ago
It is a bit frustrating that you reported it as being so much better than human made solutions despite not checking even the most basic conditions.
reply
criemen 3 minutes ago
My apologies, and it's too late to edit the parent now.

To be fair, though, I mainly ran this experiment to distinguish models, not to see if they were better than humans or not, so for that purpose it didn't really matter if the basic conditions were the same or not.

reply
NitpickLawyer 41 minutes ago
> On the way, it disassembled parts of the ROM

You should check the logs, there's probably a bunch of retro gaming forums that got hacked behind the scenes :D

reply
Kuyawa 3 hours ago
I am going to try to build the original Prince of Persia using Swift as it is the best language for building a macOS game. Being a classic 2D cinematic platformer, Apple's native frameworks provide exactly what I need without the overhead of a massive cross-platform engine, and I love simplicity

So here goes my weekend, flag this and get a life

reply
andsoitis 2 hours ago
Share it when you're done! Even if it isn't complete complete.
reply
rhipitr 3 hours ago
Off tangent but the latest prince of Persia game is really fun
reply
pawelduda 3 hours ago
I played The Lost Crown and it's top tier, I assume you're talking about The Rogue?
reply
Kuyawa 3 hours ago
The Lost Crown? https://www.youtube.com/watch?v=n4vaxKwZ5rQ

That looks really amazing

reply
dayvid 2 hours ago
It's one of the best recent metroidvanias. It deserves a lot more attention. I was surprised by how good it was.
reply
7734128 2 hours ago
However, it's Ubisoft and therefore tainted.
reply
dofm 2 hours ago
It looks like one of those spam shooty game ads you get between Youtube Shorts.

Prince of Persia is a piece of contemplative, subtle, beautifully, artistically minimal motion puzzle art. God knows what that is.

reply
hapless 36 minutes ago
when the author mentioned playing prince of persia on a pc-xt, i assumed this was some kind of ai-generated nonsense

but no

they actually did port the game to the lowest-end hardware available in 1989. you could actually play prince of persia on an 8088 with a cga card!

reply
brandonmenc 11 minutes ago
Just about every PC game in 1989 ran on an XT with CGA.
reply
smokel 3 hours ago
The prompts provided are atrocious. It's amazing that the LLMs actually built something useful.

> My first prompt was simple: "in this original code there 6502 assembly code for prince of persia, use the save level files and try to do it in c# console."

Do what in the what now in the console?

reply
gcanyon 3 hours ago
"now char coming but movement everything wrong ... prince is not in floor"

I'm assuming a language barrier on the part of the author. I wonder if the models would do better being prompted in the author's main language.

reply
cavemandaveman 2 hours ago
Or having another model proofread the prompts and write clearer instructions
reply
daemonologist 2 hours ago
Yeah, I'm thinking the nigh-unreadable AI-speak we get these days makes a lot more sense if this is what they're training on. Or maybe the author has translated the prompts from another language?
reply
InsideOutSanta 2 hours ago
It's so confusing how the actual article is in English, but the prompts are just gibberish. But LLMs are pretty good at deciphering gibberish; I often put our CEO's absolutely atrocious E-Mails into ChatGPT and tell it to explain wtf he wants from me.

Also, I feel like the LLMs would have done better if they had started from scratch each time, rather than being burdened by the output from the previous attempt.

reply
koala_man 2 hours ago
Unsurprisingly it was buggy without the obligatory "Make no mistakes."
reply
dofm 2 hours ago
Just one thing you could do is not drag Prince of Persia into this.

Please.

reply
Kuyawa 3 hours ago
[flagged]
reply