Posted by s-macke 3 days ago
Someone later went on to do just that and responded in the Accursed farms forum, Ross mentioned that in his July 2015 follow up video[2]. In the video he showed some map screen shots from the forum, including a surprisingly intricate map that was apparently only used for the the spinning car menu screen. IIRC the reverse engineering project was not quite complete at the time, since the README doesn't mention any of this, I assume this project is unrelated?
That said, it would be amazing to eventually get the extracted maps integrated into noclip.website[3].
[1] https://accursedfarms.com/index.php?af-posts/537/test-drive-...
[2] https://accursedfarms.com/index.php?af-posts/522/follow-up-e...
The map mentioned there can be found as “Unknown Map” in the dropdown. However, I haven’t yet connected that map to the menu screen. It might be called “Tom’s Test Track,” because that string appears in the disassembly.
Integration into noclip might be easy, because I also have the geometry as a standalone .obj file.
There's an entire category of rom hacks devoted to this - replacing just the sprite data.
You should also take a look at 3dSen. It’s an emulator that works with original NES ROMs but transforms the graphics into 3D voxels.
I wrote a decoder for the CPS file format they use for sprites and it worked file for all images except one. It rendered half the image properly and then scrambled the rest. I could see that the sprite information was there but there was some offset problem. I had claude dig into it in detail along and gave it the ScummVM source for reference. I also gave it Ghidra so that it could debug the actual EOB.EXE file but nothing we tried got it to render properly. Even SSI's own code which got from a modding wiki failed to render this image. My final conclusion was that it was a half done asset that somehow found its way into the asset archive and is never used in the game but that's a flaky conclusion given that its name is referenced in the EXE.
I've been having a lot of fun upscaling the sprites used for the cutscenes and remixing the music using AI. It's a game I played a lot as a kid so being able to tinker with it at a low level is a nice distraction.
It's purely a "fun" side project without deadlines or anything so I get to do what I want with it without any hassles about "being productive".
But it gets even wilder, as now creating a Game Boy Advance emulator became a benchmark, https://gbaeval.com/.
https://www.gabrielgambetta.com/remakes.html
is wild!
I love the idea. I used Claude Code / Sonnet 4.6 to get back to compile an old DOS game I wrote back around 1991 and for which I had lost the tooling (compiler / linker / notes / build files). It was on my todo list since years, decades even, but I never got to it. With a LLM it was easy: I didn't let the LLM do everything, I used it to find what needed fixing (like two macros I had used with names that were now clashing with "modern" compilers methods names etc.).
> I hacked together the art using my terrible Gimp skills and some Public Domain and Creative Commons assets from OpenGameArt
IMO AI models are better at generating pictures than at writing code, in that pictures do tolerate sloppy approximations. While code doesn't tolerate slop that much.
Why not use AI for the assets?
So does code. You can have poorly written code that runs slow but gets the job done because modern machines are powerful enough to make up the difference. (cough the majority of electron apps cough).
You’re definitely going to get dinged more for AI art. People can’t see the code, but they can see the art - that’s their first experience with the game unless the code is so bad that it literally causes visible bugs.
I work heavily in the generative space and while standalone AI art has come a long way, maintaining visual consistency in sprite assets across an entire game still needs a ton of hand holding particularly if you require animated sprite assets without them looking "uncanny valley".
On the other hand most maps have loops and I would regularly get lost, unable to finish it...
I just completed recreating one of my childhood favourites, Thrust. Opus 4.7 almost one-shot the game (was perfect in 30 mins based on just the wikipedia entry describing the game), and then I spent 3 full nights trying to build perfect algorithmic AI to auto play it. (It thoroughly failed, sticking to a sub-par algo that was ok, but not nearly as good as possible).
My next stop is reimplementing Mercenary. First open world game I played. On a 8b commodore Plus/4.