Minecraft-Console-Client/docs
BruceChen d002930a6a pathing: unify jump moves into MoveJump + IMoveExpander
Replace seven hand-written IMove classes (MoveTraverse, MoveDiagonal,
MoveAscend, MoveDiagonalAscend, MoveDiagonalDescend, MoveParkour,
MoveSidewallParkour) with a single MoveJump driven by a JumpDescriptor
(XOffset, ZOffset, YDelta, JumpFlavor). JumpFeasibility is the single
source of truth for the physics/cost rules of every jump-family move.

A* no longer iterates a flat IMove[]. The Calculate loop now drives
an IMoveExpander[] that writes into a stackalloc Span<MoveNeighbor>,
eliminating per-iteration heap traffic. JumpExpander enumerates every
jump-family descriptor dynamically; LegacyMoveExpander wraps the
remaining dynamic-landing moves (MoveDescend, MoveSprintDescend,
MoveClimb, MoveFall) so callers that still pass a custom IMove[]
keep working.

Add two O(1) short-circuits at the top of JumpExpander.Expand:
- Hoist the per-node parkour preconditions (AllowParkour + CanSprint,
  standing block climbability, feet-liquid, head clearance at y+2)
  so ~170 SprintJump + Sidewall descriptors never call JumpFeasibility
  when the node cannot take off at all.
- Precompute an 8-way "first step has no floor" table indexed by
  (sign(dx), sign(dz)) so SprintJump descriptors in a direction that
  has a walkable floor underneath are dropped without Evaluate.
- Add a conservative "any cardinal wall at y or y+1" probe that skips
  all 112 Sidewall descriptors when no wall exists adjacent to the
  takeoff.

Move tests switch to the new MoveJump.* factory methods. Behavior is
verified by the existing test suite: the 21 pre-existing baseline
failures are preserved exactly, 0 regressions introduced.

Made-with: Cursor
2026-04-19 17:03:26 +00:00
..
.vuepress fix: update translation links for help section across multiple languages 2026-04-08 22:38:37 +08:00
guide pathing: add side-wall theory, full-coverage parkour test suite, and live test fixes 2026-04-15 17:52:47 +00:00
superpowers pathing: unify jump moves into MoveJump + IMoveExpander 2026-04-19 17:03:26 +00:00
package.json Added AI Assisted development documentation. Updated Vuepress to the latest version. Added SEO and Sitemap plugins to Vuepress. 2026-03-22 14:29:02 +01:00
README.md Updated the latest version to: 26.1. Fixed Warning, Tip and info blocks not-rendering properly. Updated Physics section to be up to date. Fixed a formatting error on the Installation page. 2026-03-22 16:29:14 +01:00
yarn.lock Bump lodash from 4.17.23 to 4.18.1 in /docs 2026-04-03 18:53:12 +00:00

title home heroImage tagline actions actionText actionLink features footer
Home true /images/MCC_logo_with_edge.png Minecraft Console Client (MCC) is a lightweight open-source Minecraft Java client implemented in C#
text link type
Installation ./guide/installation.md primary
text link type
Learn More → ./guide/ secondary
title details
Chat Chat with other people on the server
title details
Automation Create bots to do automated tasks
title details
Supported Versions 1.4.6 - 26.1
Made by MCC Team with ❤️