Use the original handling, walls and projection from the executable
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.
This commit is contained in:
@@ -1,11 +1,14 @@
|
||||
# Skids track TRACK1-1. Lines starting with # are comments.
|
||||
#
|
||||
# The picture is track.png: 1024x512, 16 colours. Its palette is the
|
||||
# track's palette. Colours 8-15 are road (full grip), 0-7 are scenery.
|
||||
# track's palette. Colours 8-15 are road, 0-7 are scenery (dusty).
|
||||
#
|
||||
# gate x1 y1 x2 y2: lap gates in race order, in world units. Gate 0 is
|
||||
# the start/finish line; the grid forms up behind it. World to picture:
|
||||
# picture x = wx - wy + 512, picture y = (wx + wy) * 31/64 - 252
|
||||
# the start/finish line; the grid forms up behind it. The gates' ends
|
||||
# also shape the walls: each edge of the road is a smooth curve
|
||||
# through the matching ends of the gates. World to picture, for a
|
||||
# point at height z (pixels):
|
||||
# picture x = wx - wy + 512, picture y = (wx + wy) / 2 - 156 - z
|
||||
gate 103.28125 584.9375 265.3125 631.09375
|
||||
gate 135.53125 439.90625 280.96875 551
|
||||
gate 271.90625 440.125 343.78125 550.96875
|
||||
@@ -26,6 +29,7 @@ gate 602.125 632.875 489.125 633.375
|
||||
gate 600.6875 768.8125 488.4375 696.3125
|
||||
gate 599.25 904.75 487.75 759.25
|
||||
gate 456.75 935 408.5 776.75
|
||||
gate 276.5 753.46875 329.40625 696.40625
|
||||
|
||||
# Name of the set of tracks this one belongs to, shown in the menu.
|
||||
set Racing In The Name Of
|
||||
@@ -34,8 +38,8 @@ set Racing In The Name Of
|
||||
start 458 107
|
||||
flags 1
|
||||
|
||||
# height: 64 rows of 64 values, ground height x 256. Each value covers
|
||||
# 16x8 pixels of the picture.
|
||||
# height: 64 rows (world y) of 64 values (world x), ground height in
|
||||
# pixels x 64. Each value covers 16 x 16 world units.
|
||||
height
|
||||
6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400
|
||||
6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400 6400
|
||||
|
||||
Reference in New Issue
Block a user