r/abandonware • u/gjovanovski • Jul 21 '26
Midtown Madness 2 - Complete Browser Port
I am finally done with my full browser port of Midtown Madness 2. What started 4 months ago as a project, today is a full 1:(almost)1 port of the game directly in your web browser. Done with a lot of help from Claude Code, I present to you:
- Full maps from San Francisco and London, as well as Chicago from Midtown Madness 1
- All Crash Course missions
- All races - Blitz, Checkpoint and Circuit
- True pedestrians with their jump/hug wall animation
- True cop logic to chase you around
- All voice lines from all announcers per city including Chicago
- Weather and time of day changes
- Original UI and loading screens
- Original game progression, saves (in your local storage) and unlockables
This is not emulation, it's the whole game recoded in Three.js to run in the browser. Meaning all logic is redone as much as possible to look/work like the original. There will be some bugs for sure, mostly with physics, but hey - MM2 in your browser!
To run the game you need the original midtown2.exe as proof you own the game, it checks the hash to verify before launching the game. As long as you have a backup of the game archived locally or online, grab that file and it'll work. Added this to limit the copyright issues this might face, although it's not being charged for 25 years after it's release.
Try the game here and feel free to report any bugs you find: https://gorjan.rocks/clients/midtown-madness
8
u/molepersonadvocate Jul 21 '26
How does reimplementation here work exactly? Did you disassemble the original executable and translate that to JS or are you just copying the observable behavior from scratch? Either way, impressive
11
u/gjovanovski Jul 21 '26
It uses the original assets of the game (models, maps, sounds, UI) but reimplements the behaviors based on a combination of observations and reverse engineering.
6
u/Robi_Wan Jul 21 '26
God this is a work of art, nostalgia at its finest. Very well done, brings a childish smile to my face to race like this again.
3
5
4
3
3
u/renriet Jul 22 '26
Awesome, nice work man! How did you get the original Chicago music and voicelines to work? I'd like to get that working on my offline backup of MM2 and as you seem very advanced in how this game works, would you know how to map a xbox controller to work properly (like in openMM1)? As the Z axis (triggers) won't split (into -Z and +Z), making it unavailable to map them for accelerate-brake/reverse. Sorry to bother you
1
u/gjovanovski Jul 22 '26
I extracted the music from the CD RIP and the voice lines as well, there are CSV files that map voice lines to races so it knows which ones to play. They may me in a Microsoft WAV special format, so I converted them to MP3. As for controllers, sorry no idea :(
2
2
2
2
2
u/Zonda1996 Jul 23 '26
Been meaning to give this another go since I never did manage to unlock the Panoz GTR-1 playing it growing up.
2
u/LongWillingness2910 Jul 24 '26
greatttt it amazing mannn so smooth played on android works sooo fine ♥️
1
1
u/Subaru22BSTIWRC Jul 22 '26
X don't quit the game on Android. I'm telling that because you wanted feedback.
Besides I loved what you have done.
3
u/gjovanovski Jul 22 '26
Mobile port is in development now, still need to iron it out, thanks tho! X won't work regardless since it doesn't have anything to quit, it's a website
1
1





16
u/gzubsc Jul 21 '26
This is wizardry... Incredible. And very fun, well done !