Kevin Vance - Sometime last week, I got to wondering how TD2192 worked. Since I…

Entries | Archive | Friends | Friends' Friends | User Info

11:23 pm

Sunday, February 18th, 2007
Previous Entry Share Next Entry
Sometime last week, I got to wondering how TD2192 worked. Since I needed to get my mind off of a certain depressing mid-February holiday anyway, I got lost in hexdumps, the DOSBox debugger, and IDA. It's too bad you can't actually solve all of life's problems by disassembling them. Anyway, here's what I learned.

Most of the files are easy. They're all uncompressed image data and VGA palettes. There were a few commands in the dialogue files to decode, and some baffling mission files that I didn't understand until yesterday.

Unfortunately for anyone with SCUMMVM aspirations, a lot of the behavior is hardcoded in the executables. If you want to reimplement it, the storyline control logic is very easy to decipher from a disassembly. Here's what episode 2, mission 1 looks like. There is more logic for when vehicles spawn, what happens when they die, etc., but I haven't found it yet. The gameplay loop is pretty big.

All of the in-mission dialogue (i.e. not the storyline dialogue), image captions, etc. are also hardcoded into the executables.

For anyone who's interested, here is a directory full of my notes.
Link )Reply )