Reverse engineering the 1997 game Carmageddon (known internally as "Dethrace")

Dethrace running multiplayer on MacOS and a #raspberrypi, neither of which were supported platforms of the original game. The original code used IPX and assumed the same OS used by all clients (copying around raw `sockaddr_in` structs for example). #gamedev #reverseengineering
4
5
85
3,210
3 player networked game with two clients on OSX and one client on Windows! #reverseengineering #gamedev
3
18
111
4,451
Carmageddon running *natively* on Amiga CDTV courtesy of Arczi! Amazing work 🚀 #gamedev #reversengineering #retrogames piped.video/watch?v=3n6wuC7_…
3
27
1,639
Dethrace Labs retweeted
Testing out my #SDL2 hardware render driver with GLdc integration and SDL2 gamecontroller with @dethrace_labs Dethrace ported to the #dreamcast , need to improve the button mapping 😝
4
18
107
3,443
Dethrace Labs retweeted
Replying to @GPFTroy
This isn't 1997's Carmageddon?
2
1
1
893
Posted by user “xin” earlier today in the dethrace discord 🙌 #gamedev #reverseengineering
3
11
79
3,921
Dethrace Labs retweeted
Dethrace Vita v.1.0 by @Rinnegatamante can now be downloaded from VitaDB or VitaDB Downloader! More info is available here: rinnegatamante.eu/vitadb/#/i…
8
28
185
21,025
Link4Electronics in discord is testing dethrace on a PowerMac G5 (ppc64 architecture). Little endian works fine, big endian not so much. Lots of instructions to pick apart to find where the code diverges, but I know we’ll make it work in the end 🙂 #reverseengineering #gamedev
3
10
51
1,752
Dethrace Labs retweeted
another test @dethrace_labs port using my #dreamcast #SDL2 lib port, had to use the flycast 32mb mod to get it to run, so need to do a lot more debugging :)
9
13
80
3,362
Dethrace Labs retweeted
Carmageddon: Meld Pack running on Nintendo 3DS #Carmageddon #カーマゲドン
5
7
35
1,531
Super cool. Dethrace running on WarpOS thanks to github.com/BSzili #gamedev
3
12
97
8,038
Dethrace v0.8.0 release is here! 23 fixes/features including a native MacOS bundle, CD music, software renderering, and limited support for network play. Includes work from 3 first-time contributors ❤️. Thank you all! github.com/dethrace-labs/det… #gamedev #reversengineering
7
25
110
17,603
Not intentional, but at some point I broke the pre-lit calculation in the software renderer and gave the Eagle a bit of a Sin City vibe. I wish I could remember what the bug was so I could recreate it. Looks cool! #reversengineering #gamedev
1
2
41
1,101
The software renderer on Windows. how it started: how its going: #reverseengineering #gamedev
1
10
121
3,228
Checkpoint! The software renderer got "finished" enough to render all the triangle types needed for Carmageddon. We can now replace the homemade OpenGL renderer with full software mode and enable Carmageddon to run on an even wider set of devices! :) #reverseengineering #gamedev
7
54
408
16,106
I was debugging _something_ here. Its all a bit of a haze of x86/x87 assembly now when I try and think back to where my mind was at...! Being able to switch on and off the different triangle rendering functions is pretty helpful #gamedev #reverseengineering
1
5
28
1,063
Pulling the updated BRender code back into dethrace and its now looking much closer to the original game. Road textures missing because they are 256x256 instead of 64x64 and, you guessed it, have a different code path that I haven't implemented yet #gamedev #reverseengineering
3
7
54
1,416
(1/4) Evolution of perspective-correct triangle rendering. Screwie's wheels are marked as perspective-correct, but #BRender cheats when it can depending on the viewing angle and renders with linear texture mapping when possible for performance. #gamedev #reverseengineering
1
3
20
894
(3/4) Closer - we're drawing the correctly sized and rotated triangles now, just without any texturing #gamedev
1
1
10
566
(4/4) Perspective textured triangles! If you look really closely you can just about see when BRender switches between the linear cheat path and the proper perspective, but you'd never notice in game. #reversengineering #gamedev
2
21
529