Page 1 of 1

Any experienced reverse engineers here? Any who also like Smuggler's Run 2?

Posted: Fri Aug 05, 2022 11:19 am
by stinkee2
Hello, I realize this might be kind of a long shot but...

I've been working on reverse engineering and reimplementing Smuggler's Run 2 for the PC for a few years now and I have made quite a lot of progress. The reason I think this is relevant to this forum is that the game engine used by Midtown Madness has very much in common with the engine used by Smuggler's Run 2. It's just a different version of the same game engine which was likely adapted some amount for each game. For example, Smuggler's Run 2 also uses the .vehCarSim files, among other things that they share.

I feel lonely on this project because I can't find any other reverse engineers with the same childhood connection to this game. My hope is that I might find someone here.

Here's a video demonstrating the progress I made as of April 2021: https://www.youtube.com/watch?v=xGO7mzRu82Q
I've made a lot of progress since then, including fixing how the roads / train tracks are rendered. ...But there's still an overwhelmingly insane amount of stuff left to figure out. The physics engine is a big one... I've got a lot of that figured out but I estimate I have only touched on about 30% of it.

All this time spent on this one game has afforded me secret knowledge from the depths of the angel game engine. I've unlocked secret debug displays and tests which are mildly interesting. I've also figured out how to patch the game in a way that forces it to load the game files from my computer instead of the game disc when running it with PCSX2.

As you might expect, this allows me to modify the game in strange and often funny ways in an effort to understand the effects of the game files. Check this out: https://www.youtube.com/watch?v=P6lplMX21sg

I haven't tried it yet, but I could probably even get it to load the vehicles from Midtown Madness 2.

My ultimate goal is to have it fully ported, not get sued by Rockstar, and add online multiplayer with up to 16 people.


Sorry for the wall of text. As I said I'm pretty lonely on this project. If you're interested in joining me, please let me know! The tools I'm using for RE are Ghidra, PCSX2, and Cheat Engine.

Re: Any experienced reverse engineers here? Any who also like Smuggler's Run 2?

Posted: Fri Aug 05, 2022 2:45 pm
by aaro4130
There have been reverse engineering efforts in the past, yes.

In recent years I've essentially recreated the game engine in C#, running atop Unity, but it natively loads the Angel Game Engine files
viewtopic.php?t=5550&start=345#p112048

There's also mm2hook for MM2, which is a C++ project that hooks into, and rewrites parts of MM2 natively
https://github.com/Fireboyd78/mm2hook

Re: Any experienced reverse engineers here? Any who also like Smuggler's Run 2?

Posted: Fri Aug 05, 2022 6:52 pm
by stinkee2
Hey that's cool! Did you make the source code public?

I've seen mm2hook, I referenced it a little bit a couple years ago for some of the class hierarchy they've found. I wish I could do something like that for PCSX2. I've already added a GDB stub to PCSX2, I wonder if I could also extend it to let me override function calls with my own without slowing performance to a halt

Re: Any experienced reverse engineers here? Any who also like Smuggler's Run 2?

Posted: Fri Aug 05, 2022 9:00 pm
by aaro4130
The source code never ended up being public , it's a bit of a mess, as you can imagine a single person rewriting a whole game+engine would get sloppy :P

If you have Discord, there's an invite link somewhere on this forum where there's an mm2hook-dev channel, and a channel for general Angel Game Engine games where you could show your stuff ;)

Re: Any experienced reverse engineers here? Any who also like Smuggler's Run 2?

Posted: Fri Aug 05, 2022 9:27 pm
by stinkee2
Yes indeed I can imagine, lol. I've been there many times... The worst part I think is that when it's just one person there's no drive to document code. If it were messy but documented then at least someone else could find their way around. In the past few years I've been trying to fight the urge to devolve into writing spaghetti code.

Thanks for the tip, that sounds like just the place I've been looking for. I'll see if I can find that link

Re: Any experienced reverse engineers here? Any who also like Smuggler's Run 2?

Posted: Sat Aug 06, 2022 12:40 am
by Jeremiahjobling
The link is also here in case you can't find it: https://discord.com/invite/hFsM2WVThW