NEON-29: Stair descent — tighter continuation probe + stronger vertical accel
Lower WALK_CONTINUATION_MAX_BELOW_FEET to 0.078 m (under ~0.104 m treads) so the next tread is not treated as forward walk support; ledge peel runs on descents and pulls down onto each step instead of gliding with weak air gravity. Raise PLAYER_VERTICAL_ACCEL_MULTIPLIER to 9× for peel, walk-air, and idle-air.pull/41/head
parent
b924707202
commit
33b6db979e
|
|
@ -75,11 +75,12 @@ const WALK_STEP_ASSIST_MAX_SURFACE_DELTA: float = 0.35
|
|||
## Down-ray length under the capsule foot disk while walking (~[member NavigationMesh.agent_max_climb]).
|
||||
const WALK_SUPPORT_PROBE_DEPTH: float = 0.32
|
||||
const WALK_SUPPORT_PROBE_MIN_UP_DOT: float = 0.42
|
||||
## Ignore ray hits farther below the feet than this (m). Prototype tread rise is ~0.104 m; without
|
||||
## this cap, a probe over a **void** still reaches the **main floor** (~0.3 m down from a gold step)
|
||||
## and reads as “forward support”, so snap + lip [code]is_on_floor()[/code] keep the capsule skating
|
||||
## at deck height until XZ arrival.
|
||||
const WALK_CONTINUATION_MAX_BELOW_FEET: float = 0.14
|
||||
## Ignore ray hits farther below the feet than this (m). Must stay **below** approach tread rise
|
||||
## (~0.104 m in [code]main.tscn[/code]): if the next tread counts as “continuation”, [method _walk_has_close_floor_probe_below]
|
||||
## stays true on stairs while [code]is_on_floor()[/code] flickers — ledge peel never runs and the capsule
|
||||
## glides horizontally with only weak airborne gravity. Still below a full gold→floor drop (~0.3 m) so
|
||||
## void probes toward the slab reject the lower hit.
|
||||
const WALK_CONTINUATION_MAX_BELOW_FEET: float = 0.078
|
||||
## If capsule feet are farther above the click’s surface Y than this, always use walk gravity + zero
|
||||
## moving snap (rays can still read “support” while [method CharacterBody3D.is_on_floor] hugs a lip).
|
||||
## ~0.42 m: **TerracePlatformB** top (~0.6 m) → floor (0) qualifies; **TerraceStepB** (~0.3 m) → floor does
|
||||
|
|
@ -87,9 +88,8 @@ const WALK_CONTINUATION_MAX_BELOW_FEET: float = 0.14
|
|||
const WALK_DEEP_DESCENT_FEET_ABOVE_GOAL: float = 0.42
|
||||
## [method get_gravity] can be ~0 with missing/odd project defaults; ledge peel + airborne walk still need a pull.
|
||||
const WALK_FALLBACK_GRAVITY_Y: float = -9.81
|
||||
## Multiplier on project gravity for walk ledge peel, walk-airborne, and idle-airborne — snappier than
|
||||
## real-world 9.81 m/s² for prototype feel; also offsets move_and_collide step coarseness at 120 Hz.
|
||||
const PLAYER_VERTICAL_ACCEL_MULTIPLIER: float = 2.45
|
||||
## Multiplier on project gravity for walk ledge peel, walk-airborne, and idle-airborne (arcade descent).
|
||||
const PLAYER_VERTICAL_ACCEL_MULTIPLIER: float = 9.0
|
||||
## CapsuleShape3D in scene: height = 1.0 (cylinder portion), radius = 0.4.
|
||||
## Total half-height from body origin to physical bottom = 0.5 + 0.4 = 0.9
|
||||
## (`CAPSULE_HALF_HEIGHT + PLAYER_CAPSULE_RADIUS`).
|
||||
|
|
|
|||
Loading…
Reference in New Issue