Fix cargo jump eligibility and add optional ledgedash delay #41
No reviewers
Labels
No labels
area/contracts
area/documentation
area/observability
area/testing
good-first-slice
priority
p0
priority
p1
priority
p2
priority
p3
risk/legal
risk/security
status
blocked
type
epic
type
feature
type
spike
type
task
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LiveMindIO/libmelee!41
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/environment-cargo-jump"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Validation
No deployment or report closure for these pending fixes is claimed.
One packet-prediction regression. Full diff reviewed; 466 tests pass.
@ -2012,0 +2016,4 @@# CargoWait, CargoWalk, and CargoTurn check ftCo_8009BB1C in IASA.# Cargo knee bend, air, and landing states do not offer a new ground jump.# https://github.com/doldecomp/melee/blob/8bf51fe3e94c42fd51bf55e78a59744b7b8fbfc3/src/melee/ft/chara/ftCommon/ftCo_CargoJump.cif player.on_ground and player.character is Character.DK and player.action in _DK_GROUND_CARGO_JUMP_ACTIONS:[P3] This new eligibility also reaches
calculate_packet_intent: a fresh X/Y packet from grounded DK cargo states 351–355 now predictsAction.KNEE_BEND(24), although the engine enters CargoKneebend (356). All five states reproduce; the base returnedNone. Callers receive incorrect expected-action metadata. Make_packet_intent's grounded-jump branch character/state-aware for cargo (or returnNonethere) and cover this public prediction path.Review comment #4991: Fixed in
a1840aee25. Reused is_carrying_enemy() to return None for cargo jump predictions instead of common KNEE_BEND; jump eligibility/gates unchanged. Public packet regression failed all 30 cargo cases before the fix. Tests: 302 focused and fullpython test.py469 pass; diff check passes. Ruff passes excluding inherited I001/RUF005/UP033.