k4zmu2a / SpaceCadetPinball

Decompilation of 3D Pinball for Windows – Space Cadet
MIT License
3.45k stars 212 forks source link

Full Tilt! Shareware Demo DAT? #22

Closed tomrow closed 3 years ago

tomrow commented 3 years ago

While looking for where the game puts its configuration settings on disk, I happened to stumble on an Internet Archive page for what looks like a shareware demo for Full Tilt! Pinball, with a unique DAT file. The game seems to resemble both the Windows XP pack-in table with the red CINEMATRONICS and MAXIS text, as well as the retail game with the more detailed marquee. image The EXE appears as DEMO.EXE and it comes with a DEMO.DAT file with these checksums:

SHA256          38FC895A2EE6482DF54303CCDC881EE7B104E39F41277E314E9E4A442821EC4C       D:\Pinball\CADET\demo\fulltilt\fulltilt\demo.exe
SHA256          D38C882B0B32EBFE06EFD21DF3A507B03ED8AF197551DD25A3C2D65FDFF6D898       D:\Pinball\CADET\demo\fulltilt\fulltilt\demo.dat

I tried to run SpaceCadetPinball using this dat renamed to pinball.dat and this message was returned: image

It can be found on the Internet Archive under the ID Fulltilt.

k4zmu2a commented 3 years ago

Technically, that is a FT cadet demo, so you should have renamed it cadet.dat. But that would not work anyway, due to differences in file format and hardcoded lookups.

There are no plans to support data from anything but release versions of FT cadet and 3DPB. Some builds might work, but only if they use release .dat format and lookups.

Decompilation is hard, harder still without symbols. I see no reason to spend the effort on misc. builds.

IntriguingTiles commented 2 years ago

@k4zmu2a I hacked the code up a little bit and got it to boot as PINBALL.DAT. The format looks like a mix of 3DPB and FT. Seems to work although the flippers behave very strangely. Could this be looked at again? It would be nice to have a version of the game that can be legally redistributed.

The patch.

k4zmu2a commented 2 years ago

I am not going to do that, because: • I don’t want to introduce more data to BL hacks on top of existing 3DPB vs FT. • I don’t want to id this special .dat file by hash or heuristic. • I do not plan to distribute any kind of original data.

To get the flippers working, you need FT mode, try something like this: demo-support-patch.zip

k4zmu2a commented 2 years ago

I thought about this topic some more and found that my initial analysis was not entirely correct. It is possible to support multiple demo versions under the same demo.dat id. Not much demo specific hacks are needed. So far: resolution, music, TKickout z. Someone else might benefit from bundling demo files, even if I don’t do it myself. I am not sure what kind of license demo has, TILTREAD.TXT does not mention it.

So far, I found two demo versions, both with distinct data files: .006 and .020 RC2. There might be more out there, in need of more hacks.

I am not going to limit the features with demo data, I think it is counterproductive.