Minecraft-Console-Client/tools/pathing_data/momentum-capabilities.json
BruceChen 418f17b4a1 pathing: add side-wall theory, full-coverage parkour test suite, and live test fixes
Theory simulator:
- Add 2D side-wall jump physics with yaw sweep for worst-case margin
- Generate sidewall theory cases (flat/ascend/descend, wall_offset 0/1)
- Add momentum-capabilities.json with band compression and max_reach
- Extend models, capabilities, canonical, and renderers for sidewall

Full-coverage parkour test suite (tools/test-parkour.py):
- Derive test matrix from momentum-capabilities.json
- Build linear/neo/ceiling courses via RCON with 7-block clear margin
- Use /goto for pathfinding, parse A* and PathMgr log output
- Stop-at-first-failure per (family, subfamily, dy, ceil, wo) group
- Hierarchical --filter (e.g. linear/flat, ceiling/headhitter/ceil2.5)
- Exclude sidewall from default matrix (identical max_reach to linear)

Pathing execution fixes:
- Align parkour contracts and timing budgets with live test results
- Fix jump-entry yaw snapping for grounded handoffs
- Template helper and sprint jump template refinements

Made-with: Cursor
2026-04-15 17:52:47 +00:00

834 lines
17 KiB
JSON

[
{
"family": "ceiling",
"subfamily": "headhitter",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 1,
"max_reach": null,
"delta_y": null,
"ceiling_height": 1.8125,
"wall_offset": null,
"notes": ""
},
{
"family": "ceiling",
"subfamily": "headhitter",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 2,
"max_mm": 12,
"max_reach": 1,
"delta_y": null,
"ceiling_height": 1.8125,
"wall_offset": null,
"notes": ""
},
{
"family": "ceiling",
"subfamily": "headhitter",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 12,
"max_reach": 1,
"delta_y": null,
"ceiling_height": 2.0,
"wall_offset": null,
"notes": ""
},
{
"family": "ceiling",
"subfamily": "headhitter",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 7,
"max_reach": 2,
"delta_y": null,
"ceiling_height": 2.5,
"wall_offset": null,
"notes": ""
},
{
"family": "ceiling",
"subfamily": "headhitter",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 8,
"max_mm": 12,
"max_reach": 3,
"delta_y": null,
"ceiling_height": 2.5,
"wall_offset": null,
"notes": ""
},
{
"family": "ceiling",
"subfamily": "headhitter",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 1,
"max_reach": 3,
"delta_y": null,
"ceiling_height": 3.0,
"wall_offset": null,
"notes": ""
},
{
"family": "ceiling",
"subfamily": "headhitter",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 2,
"max_mm": 12,
"max_reach": 4,
"delta_y": null,
"ceiling_height": 3.0,
"wall_offset": null,
"notes": ""
},
{
"family": "ceiling",
"subfamily": "headhitter",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 3,
"delta_y": null,
"ceiling_height": 4.0,
"wall_offset": null,
"notes": ""
},
{
"family": "ceiling",
"subfamily": "headhitter",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 4,
"delta_y": null,
"ceiling_height": 4.0,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "ascend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 2,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "ascend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 3,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "ascend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 1,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "ascend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 2,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 4,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 5,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 1,
"max_reach": 4,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 2,
"max_mm": 12,
"max_reach": 5,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 2,
"max_reach": 3,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 3,
"max_mm": 12,
"max_reach": 4,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 2,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 3,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "flat",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 3,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "flat",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 4,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "flat",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 1,
"max_reach": 2,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "linear",
"subfamily": "flat",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 2,
"max_mm": 12,
"max_reach": 3,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "neo",
"subfamily": "neo",
"movement_mode": "sprint",
"capability_metric": "wall_width",
"min_mm": 0,
"max_mm": 1,
"max_reach": 3,
"delta_y": null,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "neo",
"subfamily": "neo",
"movement_mode": "sprint",
"capability_metric": "wall_width",
"min_mm": 2,
"max_mm": 12,
"max_reach": 4,
"delta_y": null,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "neo",
"subfamily": "neo",
"movement_mode": "walk",
"capability_metric": "wall_width",
"min_mm": 0,
"max_mm": 0,
"max_reach": 1,
"delta_y": null,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "neo",
"subfamily": "neo",
"movement_mode": "walk",
"capability_metric": "wall_width",
"min_mm": 1,
"max_mm": 5,
"max_reach": 2,
"delta_y": null,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "neo",
"subfamily": "neo",
"movement_mode": "walk",
"capability_metric": "wall_width",
"min_mm": 6,
"max_mm": 12,
"max_reach": 3,
"delta_y": null,
"ceiling_height": null,
"wall_offset": null,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "ascend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 2,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "ascend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 3,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "ascend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 2,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "ascend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 3,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "ascend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 1,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "ascend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 2,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "ascend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 1,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "ascend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 2,
"delta_y": 1.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 4,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 5,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 4,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 5,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 1,
"max_reach": 4,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 2,
"max_mm": 12,
"max_reach": 5,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 1,
"max_reach": 4,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 2,
"max_mm": 12,
"max_reach": 5,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 2,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 2,
"max_reach": 3,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 3,
"max_mm": 12,
"max_reach": 4,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 2,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 2,
"max_reach": 3,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 3,
"max_mm": 12,
"max_reach": 4,
"delta_y": -2.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 2,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 3,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 2,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "descend",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 3,
"delta_y": -1.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "flat",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 3,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "flat",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 4,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "flat",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 0,
"max_reach": 3,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "flat",
"movement_mode": "sprint",
"capability_metric": "gap_blocks",
"min_mm": 1,
"max_mm": 12,
"max_reach": 4,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "flat",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 1,
"max_reach": 2,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "flat",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 2,
"max_mm": 12,
"max_reach": 3,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": 0,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "flat",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 0,
"max_mm": 1,
"max_reach": 2,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
},
{
"family": "sidewall",
"subfamily": "flat",
"movement_mode": "walk",
"capability_metric": "gap_blocks",
"min_mm": 2,
"max_mm": 12,
"max_reach": 3,
"delta_y": 0.0,
"ceiling_height": null,
"wall_offset": 1,
"notes": ""
}
]