Minecraft-Console-Client/MinecraftClient
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
..
ChatBots Add TUI support for /map 2026-04-05 17:41:32 +08:00
CommandHandler Modernize data carriers to records and add primary constructors 2026-03-24 01:31:17 +00:00
Commands pathing: tighten linear parkour execution 2026-04-18 06:14:45 +00:00
config Optimized World.cs 2026-03-25 23:57:02 +01:00
Crypto Fix warnings 2026-04-06 20:36:12 +08:00
Inventory Enhance container handling for Minecraft protocol updates 2026-03-28 02:17:47 +08:00
Logger refactor: convert == null / != null to is null / is not null in 31 files 2026-03-24 00:42:59 +00:00
Mapping Merge remote-tracking branch 'origin/master' into feat/optimization 2026-04-03 15:44:59 +02:00
Mcp Bugfixes to the Looking and Movement. Added General prompt engineer. 2026-04-03 19:54:26 +02:00
Pathing pathing: unify jump moves into MoveJump + IMoveExpander 2026-04-19 17:03:26 +00:00
Physics pathing: tighten linear parkour execution 2026-04-18 06:14:45 +00:00
Properties Fix all warnings & Trim (#2226) 2022-10-02 18:31:08 +08:00
Protocol fix: correct scoreboard packet parsing for UpdateScore and ScoreboardObjective 2026-04-09 17:15:55 +08:00
Proxy Tooltip support & Bug fix 2022-12-11 13:00:19 +08:00
Resources pathing: tighten linear parkour execution 2026-04-18 06:14:45 +00:00
Scripting feat: complete Phase 4 McClient integration for A* pathfinding 2026-04-12 18:43:32 +00:00
TabList Added a /tab command 2026-04-04 16:17:49 +02:00
Tui fix: update GitHub link in MccBannerPanelBuilder 2026-04-06 20:36:12 +08:00
WinAPI Fix warnings 2026-04-06 20:36:12 +08:00
Achievement.cs Implement unified achievements feature: data model, protocol handling, state management, ChatBot API, and /achievement command 2026-03-29 20:22:31 +00:00
AutoTimeout.cs Fix all warnings & Trim (#2226) 2022-10-02 18:31:08 +08:00
ClassicConsoleBackend.cs refactor: simplify color handling in ClassicConsoleBackend 2026-04-08 02:05:26 +08:00
ColorHelper.cs refactor: simplify color handling in ClassicConsoleBackend 2026-04-08 02:05:26 +08:00
Command.cs Bug fix 2022-12-11 16:30:45 +08:00
ConsoleIO.cs Refactor ConsoleIO and Program settings handling 2026-03-29 00:54:34 +08:00
ExtensionMethods.cs Better translation 2022-10-17 20:00:33 +08:00
FileMonitor.cs refactor: convert == null / != null to is null / is not null in 31 files 2026-03-24 00:42:59 +00:00
IConsoleBackend.cs TUI for MCC (#2976) 2026-03-26 02:08:18 +08:00
INIFile.cs [skip ci] Normalize all line endings 2023-09-15 14:44:11 +08:00
Json.cs Fixed a JSON exception 2026-03-26 19:16:48 +01:00
LegacyAchievementCatalog.cs Fix legacy achievements and add test harness 2026-03-30 17:25:08 +02:00
McClient.cs pathing: tighten linear parkour execution 2026-04-18 06:14:45 +00:00
MinecraftClient.csproj chore: update ModelContextProtocol package version to 1.2.0 and adjust Consolonia and Sentry package versions 2026-04-12 18:46:57 +08:00
Program.cs refactor: simplify color handling in ClassicConsoleBackend 2026-04-08 02:05:26 +08:00
RecipeBookRecipeEntry.cs fix: support 1.21.11 recipe book display ids 2026-03-29 18:45:14 +00:00
Settings.cs feat: enhance game language support in settings 2026-04-07 02:03:02 +08:00
TaskWithDelay.cs Fix all warnings & Trim (#2226) 2022-10-02 18:31:08 +08:00
TaskWithResult.cs Modernize null-check patterns: use 'is null' and 'is not null' 2026-03-24 00:28:02 +00:00
UpgradeHelper.cs Modernize null-check patterns: use 'is null' and 'is not null' 2026-03-24 00:28:02 +00:00