TFX, Inferno, Wargasm, Typhoon, …
Post Reply
Data Genius
Posts: 432

Post by mikew »

Here's my copy of TFX which I got from Amazon or Ebay around 2010 when I was collecting physical copies of old flight sims.
Full of 1990s goodness. :)
tfx_cdversion.png (4.09 MiB) Viewed 303 times
I've had a downloaded floppy version of the game for a decasde or so, but this CD version is slightly different with fancier cut scenes.
The did.dat file for the CD version has 3488 files, of which I have the names for 2282. The floppy version has a similar number of files but the dat file is around 10.2MB as opposed to 11.2MB, so I assume different levels of compression.

While we mostly know how the terrain goes together. I'm more interested in the way the game 'flows' right now.
Events seem to be orchestrated by parser files with a .par extension, which can call other parsers.
The game is started by giving a .par file as an argument to 'start.exe', where the default is tfx.par.
While tfx.par is a fairly daunting 50kB file, one of the first things it does is call 'cdintro.par'
So. if I use the command 'start cdintro.par', I just get the opening sequence then exits to DOS.
This file is somewhat less daunting as I can see the .256 animation filenames and the text that is displayed at the end of the sequence.
cdintro.PNG (40.42 KiB) Viewed 303 times
There are a bunch of these smaller .par files, so I'll maybe start taking them apart as time and enthusiasm allows...
Data Genius
Posts: 432

Post by mikew »

Not much of an update, but a few of reflections on TFX.

1. It runs really well with an extracted dataset
2. As there are multiple regions, it's less likely to have hard coded data than EF2000 and TAW, so maybe easier to mod.
3. This game is 30 years old, and the 'good guys' and 'bad guys' aren't necessarily the same as they were then.

The parser files are still much of an enigma, and I'm still at the 'staring at hex' stage, but some progress has been made.
I can cut 'cdintro.par' down so that it just starts the music and plays an animation. Then I can make most bytes zero without changing the behaviour.
The following causes the animation didt0.256 to play a 1/16th speed then exits to DOS. The music plays at normal speed until the animation ends.
tfx_tespar.PNG (18.68 KiB) Viewed 289 times
Judging by what I see in the hex editor, I think that there's a lot of assembler is involved with this system, both with the tool that created them and the game itself. Some areas of the scripts have incomplete strings that look like they contain whatever was in memory at the time and will either not be used at all or overwritten by the game.
Post Reply