Repository navigation
UnionClef v0.95.54 (MC 1.21.11)
Installation
- Install Fabric Loader for the Minecraft version listed in the release title
- Drop the release JAR into your
.minecraft/mods/folder - Launch Minecraft
No separate mods install needed — everything is bundled into the main UnionClef JAR. If you see a separate tungsten-**.jar, do not install it next to UnionClef: UnionClef already contains it.
Modules
UnionClef bundles two systems, each with its own command prefix:
| Module | Prefix | What it does |
|---|---|---|
| Tungsten | ; |
Movement — physics-simulated pathfinding, block-space search, bridging, mining |
| AltoClef | @ |
High-level bot tasks (get items, kill mobs, survive) |
Quick start commands
;goto <x> <y> <z> — tungsten: walk/jump to coordinates
;followPlayer <nick> — tungsten: follow a player
;stop — tungsten: stop current action
;settings debugTime true — tungsten: enable profiling output
@goto <x> <y> <z> — altoclef: smart goto (avoids mobs, eats, etc.)
0.95.54 — placement ownership, task handoffs and replay landings
Casting deaths and the original full59 stall remain open. Completed tests below
have separate denominators; passing the retained portal course is not universal safety.
The bucket portal could leave a walking route running while it tried to place its upper
cobblestone mould. The bot kept jumping against the wall and the placement never finished.
The builder now releases its navigator waypoint walk when it takes control to place or
pillar, and when its queue is cleared. A follow walk that replaced that route is retained.
Task replacement now respects a protected child through every wrapper. Previously a
plain parent could bypass a child's airborne or inventory-cursor guard. A child retained
by its guard keeps ticking until it can yield; explicit user stop and chain interruption
remain unconditional. The task-list read API snapshots on the client thread, fixing an
observer null dereference during a portal replay. Optional bounded movement tracing
records task changes and the movement drivers without changing movement decisions.
Physics plans can outlive the state they were calculated from. A recorded gap failure
started with stale horizontal velocity and missed the destination's lip. Before replaying
a fresh grounded trajectory, the executor now simulates its inputs from the actual body,
including mouse quantization. If a planned landing is missed, it releases the approach
and notifies the caller so it can replan. It cancels only while the body still has real
collision support; water, ladders, airborne motion and owned aim are excluded. The
1.21.11 player simulation also matches vanilla's horizontal vector velocity deadzone,
which previously erased a small strafe component while the other axis was moving.
Validation
- Same-client interleaved
portal_lava_lake: cleanup disabled 5/6, enabled 6/6;
all runs valid at 28.0-29.8 FPS. The unfinished control repeated jumps for 420 seconds.
Enabled cleanup ran 24-35 times per run; disabled cleanup stayed at zero.
These are observed completions on this course, not a claim about all terrain or speed. - Navigation: flat, staircase, descent, digging, two-block wall and bridging, 18/18.
- Live queue cancellation: builder route stopped 3/3; replacement follow route retained 3/3.
- Flat pursuit 3/3; mixed placement 3/3, with all four world cells verified each time.
- Clean Tungsten and Minecraft 1.21.11 build passed; remapped bytecode and deployed jar verified.
- Final release rebuild: all 2209 classes, including nested dependencies, are byte-identical
to the candidate used for the current 42 navigation, 27 mixed and six portal tests. - Actual Task source and remapped-jar lifecycle contracts: 9/9 each. Actual crafting,
pickup and lava-escape courses: 21/21; resource-cursor vetoes observed through wrappers.
Explicit user stop issued on a fresh airborne veto: 3/3, runner inactive and chain empty. - Refreshed navigation tail: water 3/3, gaps 3/4 with one fatal fall at 29.5 FPS;
the last two repeats were not run. Task runner was inactive throughout. This historical
failure is retained; it predates the live-landing check and vector deadzone repair. - Detached retained-input check: an old green trajectory is accepted; an old fatal
landing is rejected at tick 24. The updated physics model reproduces recorded actual
positions and velocities with maximum errors 2.79e-8 and 6.53e-8 respectively. - Balanced-order six-pair gap audit: refusal off 6/6, on 6/6, all valid at 29.3-30 FPS,
zero deaths/falls/freezes. Enabled repeat 2 refuses one plan, replans and arrives;
the other arm never refuses. The vector repair is in both arms. This proves actual
refusal and continuation, without establishing a speed or mortality-rate delta. - Adjacent navigation: flat, stairs, descent, steep descent, water, ladders, slime,
digging, two-block walls and bridging, 30/30 valid PASS at 29-30 FPS. All42 gap
and adjacent clips reviewed at two-second cadence; all traces continuous/error-free,
Task runner inactive, independent cleanup errors empty. The first27 active-Task/dodge
campaign stopped after seven passes and one arrow failure;19 cases were not run.
Readback found Peaceful difficulty, which disables the defense chain before arrows:
1170 calls but zero searches/driving. The arrow course now normalizes Normal,
verifies client preconditions and requires actual searches/driving. The original
two-death failure remains retained; different difficulty settings do not establish
a Java defense improvement. - Corrected mixed active-Task campaign:27/27 valid PASS at29-30FPS, all27 clips
reviewed, per-case evidence verified and independent cleanup passed. Six protected
crafts exercise descendant vetoes; flat and ledge arrow courses each3/3 with
zero damage/deaths, actual searches/driving, and zero ledge lava/fall polls.
This campaign uses the same frozen live-landing jar as the42-case navigation audit. - Current-binary portal checkpoint replays: 6/6 valid completions with zero deaths
or new lava entries, 29.4-29.7 FPS, portal lit in 112.1-121.9 seconds. Each attempt
restored the same entry and verified its inventory and the loaded candidate hash.
All six full clips reviewed; all movement traces continuous/error-free with a final
drain, observer exits zero, independent cleanup errors empty.
The portal course now requires a lit portal within 420 seconds and zero deaths. Casting
only the first obsidian block, or finishing after respawn, no longer passes the course.
How to test
At a lava lake, carry water and an empty bucket, an iron pickaxe, flint and steel, and
cobblestone. Run @test portalbucket. It should cast and light the frame without a diamond
pickaxe. The upper mould should finish rather than repeatedly jumping against its wall.
python deploy/runner/run_suite.py craft --only portal_lava_lake --repeat 6 --record
python deploy/runner/run_suite.py nav --only nav_flat,nav_staircase,nav_descend,nav_break,nav_wall2,nav_bridge --repeat 3 --record
python deploy/runner/run_suite.py nav --only nav_gaps,nav_steep,nav_water,nav_ladder,nav_slime --repeat 6 --record
python deploy/runner/run_suite.py pvp --only chase_flat --repeat 3 --record
python deploy/runner/diag_build.py
python deploy/runner/task_force_contract.py
python deploy/runner/task_force_contract.py --jar versions/1.21.11/build/libs/unionclef-1.21.11-0.95.54.jar
For the task guard, craft with a full inventory and an item on the cursor; the protected
child should finish returning the item before its wrapper replaces it. @stop must still
cancel immediately. Over py4j, getTaskInterruptionStats() exposes cumulative vetoes;
setMovementTrace(true) starts bounded capture, getMovementTrace(sequence) drains
rows, and setMovementTrace(false) disables recording. Tracing ships off.
For replay landings, run ;goto X Y Z across a jump that needs physics. A refused
stale plan should be followed by a new approach and actual arrival. execState()
reports liveLanding=checks/unsafe/refused and liveLandingMaxNs. The checks and
unsafe observations are counted with replayChecksLiveLandings either on or off;
the flag gates refusal only and ships on. It does not gate the vanilla vector repair.
Still open
- Four common-entry replays completed 2/2 per cleanup arm, but survival was only 1/2 in each.
Keep-inventory and immediate respawn hid both lava deaths in the earlier completion-only judge.
Survival was scored from complete retained timelines; the new death gate applies to subsequent
runs. Safe casting remains under investigation. - The persistent lava-pickup stall in full59 has not been reproduced by restarting its tasks.
This release does not claim to fix it. - A 2x2 fill through the build queue can still place only one of four cells. The mixed-column
check above exercises different geometry. - Portal behaviour on rough generated terrain remains under investigation.
- Night shelter can stay in water without selecting a usable site. A retained checkpoint
preserves the entry. Native checks confirm five nearby safe sites outside the search's
horizontal and vertical bounds; site selection and actual approach remain under investigation. - Gap tests above cover a rebuilt arena, not every generated-world jump or a complete
playthrough. The portal checkpoint has fixed course geometry, not rough generated terrain.
Full Changelog: v0.95.53...v0.95.54