This also required a lot of work on how items receive damage, so they all blow up correctly - there is an entire data file (damage.dat) devoted to how things should blow up. Put it all together and it looks like this (it's set to skip opening video and not play music, but they are working fine, just disabled to make testing easier): Put in a hack so I can step onto the elevators, but it's not great.Added the game engine features needed for the remote cameras to work properly.Fixed the game engine bug so the initial valve now triggers the flame. Fixed the initial teleport so it gets the right sound and animation.Fixed things so that using inventory items works (eg, medikits), and added the right video player intrinsic so that the datalink can be used to view the mission objectives.Item selection sprite and operation now works like the original (via S and Return keys).Camera "snap" is now working, so the camera snaps to the defined points rather than following the avatar (except when I'm using the cheat mover as you can see in the video).Added palette cycling so things flash and pulse like expected.Pretty happy with the progress this week: * 16 bit protected mode disassembles into a nightmare of high/low word handling for 32-bit pointers * There's a built-in engine debugger, and I would really like to have one of the unk symbol files. * There's only so many times you can see the Asylum Sound System functions (ASSInit, etc) without wondering about whether the name was just chosen for the acronym * There's a memory manager called `YAMM`, which I presume stands for "Yet Another Memory Manager" but then there's a string that says "FART. No remorse." on quit instead of "CRUSADER: No Remorse") is implemented as a series of character checks in the code rather than an option string (to obscure it?). * The `-laurie` option (which prints "No pity. * The check for 15 megs of free disk space actually checks for 16,000,000 bytes free Some trivia I've noticed so far (many of which you can notice by just looking at strings from the exe): I don't want to get any hopes up about a complete reimplementation, but I'm finding it an interesting project and will probably keep working on it until I've got a playable game, get stuck, or I get totally sick of it all If anyone here wants to help or is just interested then let me know and I'll get into more details. I've started already (with No Remorse) and I'm making some progress, but it'll be a long journey. I'm now at the stage where I need to disassemble a game seriously to work out what the other game engine events are.
0 Comments
Leave a Reply. |