Files
TeslaRel410/restoration/source410/BT
CydandClaude Fable 5 ed04ba2d4e BT410 5.3.98: the ground snap -- the mech walks the arena's actual terrain, and there is no gravity
The probe half of the master performance's ground model (binary
@4aa630-4aa6cc, via BT411's raw-asm decode), placed after Simulate's position
integration:

  place the collision volume; drop a probe from the volume's authored bottom
  (origin.y + collisionTemplate->minY); ask the zone's box tree what surface
  lies under it (BoundingBoxTreeNode::FindBoundingBoxUnder); and if the query
  hits (h > 1e-4), put the origin ON that surface exactly --
  origin.y -= (h - lift).

The design is worth stating because it is not the obvious one: THERE IS NO
GRAVITY ANYWHERE IN THE MECH.  Placement is absolute each frame.  Walking
up-slope rides the lift window (an implicit step allowance), walking off a
roof drops instantly, and a probe MISS holds Y -- so a falling-through-the-
world runaway is structurally impossible rather than merely guarded against.

The engine side needed NOTHING reconstructed: Mover's own ctor already
builds collisionTemplate/collisionVolume from the model's BoxedSolidStream
resource and the zone tree was live all along.  One include (boxsolid.hpp --
mover.hpp only forward-declares BoxedSolid, so the extents were an
incomplete type).

LIVE, arena run, no fault -- the y track tells the story by itself:

    y = 20 -> 11.747 -> 10 -> 10 -> 0 -> 19.4049 -> 0

Spawn deck, down a ramp (caught mid-slope), an intermediate level, the arena
floor, up onto a structure, and off it.  Every previous run had y pinned at
its spawn constant for the whole mission.

Deferred with the collision increment: frame rejection on blocking hits, the
crushable-icon sentinel, the crash clip (SetLegAnimation 0x20) on hard
impacts, and the gyro crunch feed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-03 13:41:39 -05:00
..