diff --git a/Docs/Vault/07_Sessions/2026/2026-07-09_B4d_Tail_Collision_Grounding.md b/Docs/Vault/07_Sessions/2026/2026-07-09_B4d_Tail_Collision_Grounding.md index f7023fd74..30ff31432 100644 --- a/Docs/Vault/07_Sessions/2026/2026-07-09_B4d_Tail_Collision_Grounding.md +++ b/Docs/Vault/07_Sessions/2026/2026-07-09_B4d_Tail_Collision_Grounding.md @@ -130,6 +130,20 @@ climbable/hilly in a way that lets the player phase through. Commit after verifi parity 323, enemy smoke in the dense room (embedded-in-crater enemy depenetrated + re-engaged across ~12 u; 4 others converged through ~40 obstacles), 466/466 EditMode, console clean. +## Part E — field report: player climbs sloped colliders and floats (fixed `c58a17b8a`) + +Operator playtest: "player height gets messed with going on hilly things; the shadow keeps getting visually +farther after going on top." Mechanism: the top-down CC has **zero gravity + SnapToGround off**, and the CC +sequence runs step-handling + slope velocity-projection — walking into a SLOPED collider (the new convex rock +hulls are ramps; boxes are safe) deflects the capsule UP, and the gained Y persists forever → floating +character, receding blob shadow. **Fix = a planar Y-lock inside `CharacterProcessor.PhysicsUpdate`:** capture +the pre-update Y, restore it + zero `RelativeVelocity.y` after the CC sequence. The character update can never +change the movement plane; spawn/teleport writes (outside the update) stay honored. Deterministic + idempotent +→ rollback-safe, identical server + predicted client. **Invariant for the vault: on this project the player's +plane is Y=1 (GridOrigin capsule-center plane) and ONLY spawn/teleport code may set Y — collider shapes can be +arbitrarily sloped now.** Verified live (guardian): player shoved into a cover-hull sloped edge decollided +~1 u horizontally with Y bit-exact 1.0000 across 4.5 s; 466/466; console clean. + ## Next-session intent Phase 1.5 continues: lighting/atmosphere pass → art-look decision gate (pixel filter ON/OFF side-by-sides).