Decoded from SKIDMARKS_CD32:
- Computer drivers: the path of nodes laid 2 game units apart along
the middle of the road, with side points 1 unit in from each wall.
Drivers aim four nodes past where they'll be in four frames, or cut
to the other side two nodes on at 70% throttle when running wide.
Replaces the pure-pursuit AI; laps are quicker on every track.
- Collisions: six points on the player's car (corners and sides, from
.set words 6 and 7, now known to be half-length and half-width) are
tested against the other car's box. Hits push the cars apart with a
strength that grows with their speed difference, and spin the car.
As in the original, only human players' cars collide; cars at
different heights don't.
- Towing: the hitch is at the car's back, the caravan sits 0.656 units
behind it, and past 90 degrees both car and caravan bend back.
The reconstructed collision weight (`mass`) is gone; old asset files
with it still load.
Decoded from SKIDMARKS_CD32's machine code:
- Car physics: the per-frame engine/grip/steering update, gravity and
jumps, the hill effect on the throttle, and body tilt. Replaces the
reconstructed handling model.
- The meaning of every .set value (separate drag, grip and power for
human and computer drivers; steering, gravity, tow hitch), and the
six handling presets, offered by a new Handling menu option.
- Walls: the road edges are quadratic B-splines through the gates'
ends. They match the painted road edges.
- The real projection, which lifts points by their height; the height
map is indexed by world cells, not screen pixels.
- Tracks have one more gate than the stored count: the last gate was
being dropped on every track.
Computer drivers now follow the road between the walls and steer like
the original's. Vehicle assets store the values as `handling`; older
files still load. Docs describe the decoded logic.
- LHA -lh5/-lh6/-lh7 decoding with CRC checks (disk 1 is mostly lh5)
- Real track palettes and set names, read from each track file's header
- Camaro, plus the caravan as a towable trailer (Caravans option)
- Drivers' names, menu pictures and the original .set values per car
- Original sound effects (IFF 8SVX) through a new sample mixer: engine
pitched with revs, tyre screech, crashes, backfire, horn, start beeps
- The original tune (OctaMED MMD1) through a new player; loudness tracks
OpenMPT's render through the whole song. Music option in the menu
- Title picture (IFF ILBM) at the top of the menu
- skids unpack and skids music commands
- Gate crossings now judged on each car's whole movement per frame,
including collision knocks; stalled computer cars are put back on the
line after 8 seconds
The executable's game logic (handling, AI) is still not decoded.
assets/ now holds every track as a 16-colour indexed PNG (its palette is
the track palette) plus a text file of lap gates and height map, and
every vehicle as a PNG sprite sheet plus a text file with its name and
handling (moved out of the code). The build embeds assets/ instead of
unpacking the ADFs, so the disks are no longer needed to build either.
skids extract converts original disks to assets and checks each file
reads back identically; benchmark results from the assets match the
disks exactly. Assets win over disk data with the same name, and
--data assets picks up edits without a rebuild. assets/README.md
describes how to edit everything.