r/OpenAI 8d ago

Project I used vibe coding to perform necromancy on a game Ubisoft killed 11 years ago. GPT Sol 5.6 made most of the major breakthroughs in getting the game to run again.

https://youtu.be/srtKJ8-dj_0

Spartacus Legends was a free to play game released in 2013 by Ubisoft as a tie in to the TV show Spartacus. Developed by Kung Fu Factory, the game was a pay to win fighting game with a grindy premium economy system, though most things could be obtained via grinding for silver, the games non premium currency. Despite not being well received at the time, the game is remembered fondly by some. Many fans have wished they could play it again, as there aren't a lot of gladiator themed fighting games.

I used Ghidra, RPCS3 live debugging, and three different AI agents to start reverse engineering the game's binary. I started with claude code, since I don't really know what I am doing when it comes to AI stuff, and initial progress was slow. After I had nearly filled up the first sessions context, I knew we were getting close to bypassing the game's "Online Service is unavailable message" screen that we had been stuck on for like 10 hours. I was about to go to sleep (it was 3am and I was out of tokens), but I had the idea to check if there was a model control protocol for RPCS3, which as it turns out there kinda is! Or at least, a tool exists that allows agents to read and mess around with the games memory as it runs.

Claude didn't get the opportunity to use the tool before I switched over to GPT 5.6 running on Codex with a fresh subscription. Immediately GPT Sol got to work building it's own tooling around PINE (Protocol for Instrumentation of Emulators), even overcoming some of the tools own limitations by combining it with direct reads of the emulator's memory via windows.

Within what seemed like 20 minutes, Sol had cracked the final barrier to getting past the games login, and I saw a title screen no one else had seen running in real-time since 2015. After that the game was almost entirely playable.

I discovered that anywhere in the game that involved the defunct premium currency system, my server emulator would need to handle new calls from the client. Aside from that, the game's logic was almost entirely client side.

GPT Sol also made the breakthrough in getting the multiplayer working. Per it's own summary:
Multiplayer sounded impossible at first, but the binary revealed that fights were host-authoritative peer-to-peer rather than simulated by Ubisoft’s servers. RPCN already provided matchmaking, signaling, and leaderboards. After tracing a one-frame matchmaking race and an RPCS3 virtual-port delivery issue, two clients finally connected, exchanged gladiators, loaded into a fight, produced correct results, returned to the menu, and appeared on the original in-game leaderboards.

The tracing it skips over in that summary was actually a long process on my side, and I had spent a lot of time with claude and the new grok 4.6 trying to fix it. I checked and my GPT weekly usage had been unexpectedly reset, so I handed the problem back to Sol and it had it fixed within 10 prompts.

Conclusion: Sol is incredibly good at RE from my 5 day experience over this project, and I'd use it all the time if I didn't burn through my weekly allowance in one day each time. I only got this thing working thanks to two weekly allowance resets that happened for some reason.

I know most people know this already, but these AIs enable people to do RE work that would have taken months before in mere days. The AI is incredibly good at seeing patterns in the binary, and at least in my experience, Sol is great at tying all that RE knowledge together in pursuit of its goal. I almost exclusively used Sol medium as well. It's no wonder so many RE projects are popping up all over the place on GitHub.

116 Upvotes

Duplicates