File Details
MinersAdvantage 2.11.0+26.1.2-neoforge
- R
- Jun 1, 2026
- 656.52 KB
- 10
- 26.1.2
- NeoForge
File Name
MinersAdvantage_2.11.0+26.1.2-neoforge-2.11.0.jar
Supported Versions
- 26.1.2
Curse Maven Snippet
2.11.0
- Bump mod version to
2.11.0for the first code/content change day commit. - Move bundled branding images into
assets/minersadvantage/and point Fabric/NeoForge mod metadata icon fields to the sharedicon.pngpath. - Fix NeoForge config screen feature sub-screens not opening by removing reflective Cloth Config footer-button injection that prevented feature screens from rendering.
- Add NeoForge outline preview renderer using
ExtractBlockOutlineRenderStateEventandaddCustomRenderer, with reflective camera coordinate extraction for cross-version compatibility. - Fix NeoForge shapes (shaft, vent, excavation, veination, lumbination) being triggered on block click rather than block break by moving all carve-agent creation into a block-break listener.
- Fix NeoForge shaft vs. vent routing so the block face hit at break time correctly determines vent (top/bottom face) vs. shaft (side face), using per-player remembered break-face state.
- Fix NeoForge event bus rejection of abstract
Eventlistener by introducing version-specificNeoForgeBreakEventsbridge classes with typedBlockEvent.BreakEvent(1.21.11) andBreakBlockEvent(26.1.2) handlers. - Harden reflective key category identifier resolution with constructor, named-factory, and fallback-category strategies for cross-version robustness.
- Harden reflective network payload identifier construction with multi-strategy constructor/factory fallback chain for cross-version robustness.
- Fix Fabric outline preview compatibility on 26.1.2 by supporting both
LevelRenderEvents(poseStack) and legacyWorldRenderEvents(matrices) hook paths via a reflective context bridge. - Add
scripts/run-gradle-java25.ps1and route VS Code debug tasks through the wrapper so local Gradle runs consistently resolve with Java 25. - Align VS Code Gradle import and debug-task JVM selection to use the workspace Java 25 setting, preventing local Java 21 plugin-resolution failures.
- Update TECHNICAL notes with Java 25 debug-task behavior and local environment override guidance.
2.10.0
- Fix CI Gradle startup failure on Linux runners by removing the hardcoded local
org.gradle.java.homepath and relying on runner-providedJAVA_HOME. - Track Stonecutter node
versions/*/gradle.propertiesfiles in git so CI receives requiredmodstitch.platformvalues for all Fabric/NeoForge nodes. - Apply workspace-wide comment updates across Java sources and tests, and fix malformed comment syntax regressions in NeoForge/Fabric generation paths to restore full compile-matrix gate success.
- Complete full-workspace optimization pass with shared helper extraction across client input, excavation and shaft shape placement, config-screen readonly entries, and test fixture setup; include structural cleanup and duplicate reduction across main/test/versioned source roots.
- Add client-configurable preview outline foreground and see-through colors, persist them in
client-config.toml, and expose both settings in the client config UI using alpha color fields. - Implement dual-pass shape outline rendering matching LiteMiner: translucent NO_DEPTH_TEST pass (occluded bounds visible through blocks) plus opaque depth-tested foreground pass using
mc.renderBuffers().bufferSource()directly with Stonecutter-gated mc1/mc26 pipeline API paths. - Bump mod version to
2.10.0, update daily bump metadata, and advanceNext Versiontracking to2.11.0. - Fix Fabric outline preview startup/runtime compatibility by replacing fragile
LevelRenderermixin targeting with a version-tolerant Fabric render event bridge. - Refine shape preview outline rendering by combining selected blocks into a merged voxel outline and drawing line passes against the combined shape.
- Correct Excavation 3x3 targeting to use a strict one-layer plane oriented by the clicked face axis.
- Add focused 3x3 orientation regression coverage for north/top/side face geometry expectations.
- Expand shape parity test assertions to lock 3x3 face-axis offset membership and single-layer depth behavior.
- Reorient remaining Excavation shapes to use hit-face driven depth with rotated tangent axes for north/south, top/bottom, and east/west interactions.
- Migrate Excavation and Ventilation config models, runtime paths, and TOML keys from radius-based fields to explicit
width/height/depthdimensions. - Rename Shaftanation config dimensions to
width/height/depthfor naming consistency and align defaults and UI bindings with the new field names. - Correct default Excavation dimensions to
3x3x3. - Update mining/config parity tests to validate the migrated
width/height/depthsignatures and defaults. - Adjust Shaftanation shaft-floor anchoring to use the
playerFeetY + height - 1threshold so high-origin tunnels preserve intended floor alignment. - Fix Shaftanation floor anchoring to allow origins below player feet to tunnel below foot level while still anchoring origins inside the shaft-height window.
- Add Ventilation held-key outline preview for vertical-face targeting and include the origin block in the vent-height preview count.
- Show selected Excavation/Shaft shape names on the HUD when shapes are cycled and when the corresponding mode keybind becomes active.
- Add a new default Excavation
Shapelessshape using connected 18-neighbor flood-fill ordering. - Add focused Shapeless helper and registry parity test coverage for default selection and traversal invariants.
- Refresh README and TECHNICAL notes for shapeless default behavior and shape-system parity guidance.
2.9.0
- Scaffold a new common Shape API package with registerable shape definitions, context contracts, processor interfaces, and registry helpers.
- Extend client and server player-state sync models with selected Excavation and Shaftanation shape indexes.
- Add initial root-level Shape API addon guide and cross-link it from README and TECHNICAL documentation.
- Publish the standalone
SHAPE_API.mdaddon-authoring reference with quickstart and troubleshooting guidance. - Add built-in Excavation and Shaftanation shape processor implementations and bootstrap registration at core startup.
- Wire Excavation and Shaftanation runtime agent dispatch to consume per-player selected shape indexes during execution.
- Fix NeoForge left-click Excavation shape-face propagation so all compile matrix nodes build cleanly.
- Add focused shape registry/bootstrap parity tests covering built-in counts, index wrapping, and idempotent initialization.
- Add client keybind actions for Excavation/Shaftanation shape cycling and sync selected shape index changes to the server.
- Add held-key client shape preview rendering and align NeoForge hold/sync behavior with Fabric shape-selection input flow.
- Replace held-key shape preview particles with true block-outline rendering through client highlight hooks.
- Add mouse-wheel shape switching while Excavation/Shaftanation hold mode is active, with immediate state sync to the server.
- Fix Fabric client startup crash from
LevelRenderermixin descriptor drift by moving outline preview hook registration to a version-tolerant Fabric render event bridge. - Align shape preview visuals by combining selected blocks into a merged voxel outline before drawing line passes.
- Centralize shared shape dimension math for runtime and preview context building and add focused regression tests for that parity path.
- Update keybinding parity tests to cover the new shape-cycling default bindings.
- Refresh README and TECHNICAL documentation with shape-cycling and held-key preview parity notes.
- Add a Technical manual in-game verification checklist for shape cycling, preview parity, and runtime execution checks.
- Bump mod version to
2.9.0, addNext Versionstate tracking, and advance the daily bump metadata. - Harden git hook version-bump enforcement to require a real version increase when advancing the daily bump date.
- Require version bumps to match expected
Next Versionand force stateNext Versionto advance past the bumped version. - Reorder pre-commit validators to run in this sequence: version-bump, optimization, docs, compile-matrix, changelog.
- Relax README section validation by no longer requiring
## Supported Cropsand## Compatibilityheadings.
2.8.0
- Remove excavation single-layer mode, including keybind/state/sync wiring, and always use configured vertical radius.
- Remove Single Layer Excavation references from CurseForge documentation.
- Make veination respect the shared
blocks_per_ticklimit instead of using a hardcoded per-agent cap. - Make
ABORT_WORKERSclear active and queued agents immediately, not just worker-runtime state. - Respect
gather_dropswhen relocating veination item drops so disabling drop gathering keeps items at their original block positions. - Make excavation veination fan-out trigger from connected exposed ore discovery instead of requiring the broken origin-matching block itself to be ore.
- Consolidate veination fan-out logic into a shared agent helper and wire shaft/vent flows through the common path.
- Make post-excavation auto-illumination target the carved excavation gap instead of a player-centered area.
- Share connected-neighbor traversal helpers so excavation, lumbination, and veination all use the same 3x3 connectivity rule.
- Fix excavation to keep single-layer mode tied only to the single-layer toggle and trigger auto-illumination after completion for any exit reason.
- Bump mod version to
2.8.0and advance the tracked daily bump date. - Center
ILLUMINATION_AREAexecution on the player's position instead of the targeted block while keeping area mode floor-placement behavior. - Centralize synced default construction through
MAConfig_DefaultssoSyncedClientConfig.defaults()no longer hard-codes per-feature values. - Canonicalize
MAConfig_Defaultsfeature field names and expand missing entries (cultivation, excavation, pathanation, lumbination, shaftanation, substitution, ventilation). - Align illumination synced defaults to
MAConfig_Defaultsvalues, includinglowestLightLevel = 1and radius defaults(8, 4). - Fix shaft wall auto-illumination to check shaft-floor light levels instead of wall-target light levels.
- Fix shaft wall auto-illumination left/right placement so wall modes follow the shaft-facing direction correctly.
- Add focused regression coverage for shaft wall torch geometry and floor-light sampling.
2.7.0
- Bump mod version to
2.7.0and advance the tracked daily bump date. - Fix Cropination harvest execution to use vanilla block-break flow before replanting mature crops.
- Keep Cropination scan expansion active from immature crop targets while harvesting only mature crop states.
- Allow Cropination to run without nearby water for water-independent crops such as nether wart while keeping water-required crops gated.
- Remove Cultivation block-limit cutoff so hydrated patch processing no longer stops at a fixed block ceiling.
- Improve Cultivation floating-plant cleanup by combining replaceable-above break handling with delayed follow-up block updates.
- Rename Lumbination
use_shears_on_leavesmode touse_canopy_toolacross runtime, config storage, and UI labels. - Allow excavation, shaftanation, and ventilation agents to fan out into veination when
common.mine_veinsis enabled and ore eligibility checks pass. - Remove veination queue caps so connected ore discovery and processing are no longer limited by a fixed block ceiling.
- Capture the triggering tool stack for agent-driven veination fan-out so substitution-driven hand changes do not suppress ore chaining.
- Fix
AgentManagertick-time concurrent modification by deferring agent additions during iteration and flushing queued agents after the tick pass. - Cap veination distance settings to a maximum of 12 and treat deepslate/stone ore variants as a shared ore family during vein discovery.
- Fix Pathanation to start from the clicked origin, follow player-facing horizontal direction, and only trigger/place on
BlockTags.DIRTblocks. - Prevent Pathanation and Cultivation from processing under blocked headspace by sharing an
Agenthelper that requires air-or-replaceable blocks above the target. - Rework ventilation ladder/torch placement sequencing to carve first, place in reverse order, respect per-tick budgets, include origin ladders, and emit reliable placement sounds.
2.6.0
- Remove excavation, shaftanation, and ventilation trigger block/tool restrictions so activation can start from arbitrary targets and held items.
- Rework Lumbination into a logs-first then leaves-second harvest flow to stop interleaved trunk/canopy breaking.
- Replace leaf flood-fill traversal with a bounded canopy candidate pass derived from trunk bounds to reduce neighboring-tree bleed.
- Remove Lumbination's common block-limit cutoff so large trees do not stop mid-harvest and leave floating canopies.
- Add
ignore_player_placed_leavesLumbination config wiring across defaults, TOML storage, policy sanitization, sync defaults, and config UI. - Restore Lumbination log/leaf parity guards: require a valid origin leaf, restrict fallback log matching to origin log type, and enforce origin leaf block matching.
- Improve Lumbination sapling replanting to use detected trunk base targets, support all-or-nothing 2x2 planting, and delay planting until full tree harvest completion.
- Change Lumbination sapling consumption order to inventory-first with shears-mode inventory-only consumption.
- Fix captivation recent-drop detection to keep player-thrown items exempt for the full 160-tick cooldown window.
- Restore captivation XP orb attraction so the magnet path now targets experience orbs again instead of item entities only.
- Stop captivation from immediately re-pulling freshly dropped player items by honoring recent-drop ownership and pickup-delay signals.
- Ignore newly dropped nearby items in captivation until drop ownership or pickup-delay windows have expired.
- Restrict agent ticking to the active world dimension so cross-dimension agents do not progress on the wrong server tick.
- Keep agent queues dimension-scoped so server ticks do not advance agents from unloaded or different worlds.
- Route manual illumination placement through the clicked face, add a dedicated placement agent, and require a solid supporting face before consuming torches.
- Tighten shaft auto-illumination to respect the configured light threshold, wait for carve light updates, and reject invalid torch supports.
- Make manual illumination place torches at the clicked face target instead of offsetting blindly above the selected block.
- Share torch survival validation between illumination and shaft agents so invalid supports do not consume inventory.
- Complete runtime config-option parity wiring across Fabric and NeoForge event routes, including right/left click dispatch and server tick orchestration gates.
- Make substitution switch tools on the initiating click instead of the following tick.
- Stop manual torch placement from auto-triggering illumination placement bursts.
- Require the shaft/vent hold state before right-click stone ventilation can start.
- Restore the Fabric illumination keybind by sending an explicit client illumination action packet.
- Apply excavation single-layer mode by collapsing the vertical radius only while that hold is active.
- Route shaft/vent pickaxe block-break activation by hit face so horizontal faces start shafts and vertical faces start vents.
- Rewrite ShaftanationAgent to dig horizontally in the player's facing direction instead of downward, with correct cross-section axis based on direction.
- Rewrite ShaftanationAgent to dig horizontally in the player's facing direction instead of downward, with correct cross-section axis based on direction.
- Rewrite VentilationAgent to dig a 1Ă—1 vertical column (up or down) from the triggered face, with per-block ladder placement that draws from player inventory.
- Fix shaft floor height sitting one block too high by shifting the cross-section base down one block so the floor aligns with the player's foot level.
- Fix shaft auto-illumination placing floor torches in mid-air for wall-placement modes by using WALL_TORCH blocks with correct facing instead of freestanding torches.
- Fix shaft generation to anchor floor height to the player's feet and include the initial x/z layer when carving.
- Restore shaft auto-illumination to carve first, then place torches from furthest to nearest using current block light checks.
- Enforce synchronized common-feature behavior for veination, captivation, substitution, cultivation, illumination, pathanation, shaftanation, ventilation, excavation, and lumbination agents.
- Add veination ore allowlist runtime checks and substitution ATTACK context support with entity-type-aware rule targeting.
- Improve cropination replant/seed behavior and lumbination leaves/shears/durability/replant handling for closer legacy behavior alignment.
- Update TECHNICAL documentation with the 2026-05-25 runtime parity sweep and cross-node compatibility caveat notes.
- Clarify NeoForge 26.1.2 left-click routing notes in TECHNICAL parity caveat guidance.
- Rework the Features tab into dedicated per-feature launcher rows with live status coloring, per-feature reset confirmation, and stable save/back behavior.
- Migrate configuration to split
MAClientRootConfigandMAServerRootConfigroots with TOML-backed persistence for client/server state. - Simplify player sync transport and policy flow to server-authoritative gameplay configuration with typed root snapshots.
- Replace legacy config category wrappers with unified root-based UI bindings and remote-multiplayer authority lock messaging.
- Add focused split-root coverage for TOML storage, sync core state, packet flow, and policy authority behavior.
- Refresh README and TECHNICAL documentation for split-root config categories and multiplayer authority semantics.
- Remove remaining legacy config compatibility paths (
MAConfigfacade, JSON cleanup branch, andSyncType.ClientConfigsync handling). - Migrate config UI dependency and screen implementation to Cloth Config for FMC parity.
- Add workspace VS Code Java configuration sync setting for consistent local project import behavior.
- Change default light level to
0for auto illumination
2.5.0
- Rework Veination discovery/runtime wiring to support AFTER-break origins, optional origin-state hints, and connected-vein queueing through a shared runtime service.
- Add optional reflective Fabric Collective dig-speed callback registration so missing Collective dependencies do not break startup.
- Align Veination defaults to harvest-without-sneak across synced defaults, legacy constructors, and policy/config plumbing.
- Persist legacy global config to
config/minersadvantage-client-config.jsonand load it for UI bootstrap, login sync seeding, and player state sync updates. - Reduce Fabric player-state sync spam by sending activation-state updates only when tracked toggle state changes.
- Add Veination config parity tests for legacy constructor defaults and modifier clamping.
- Refresh VS Code launch/task definitions for the full Fabric/NeoForge debug matrix and simplified Java environment handling.
- Align workspace validation, hook setup, and documentation rules with stricter parity checks.
- Trigger substitution on block-attack start instead of post-break so tool selection applies before mining completes.
- Restrict substitution candidate selection to hotbar slots and switch held tool by selected slot change rather than stack swapping.
- Add start-trigger de-duplication and activity tracking to avoid repeated queueing while mining or interacting continuously.
- Improve switch-back timing so restore waits for break-target activity to end instead of reverting mid-action.
2.4.0
- Rework substitution selection to autoswitch-style candidate ordering with multi-level ratings and deterministic tie-breaks.
- Add action-aware substitution rule tables for BREAK/INTERACT with per-rule target and tool priorities.
- Add boolean expression support (
AND/OR/NOT) for target/tool rule matching and enforce per-rule enchant constraints (silk, fortune, mending). - Wire substitution runtime with active-hand context and synchronized rule propagation across policy/default/category config paths.
- Expand README and TECHNICAL with substitution rule expression syntax and practical rule authoring examples.
2.3.0
- Phase 3 parity rewrite is complete across all four nodes with documentation and verification signoff.
- Add a full documentation standards guide and enforce README/TECHNICAL coverage checks in pre-commit.
- Add tracked daily version-bump enforcement so
mod_versionchanges are blocked more than once per day without an explicit override.
Milestone Completion:
- ✅ M1: Traceability audit complete - Baseline matrix created
- ✅ M2: Bootstrap complete - Both loaders initialize MinersAdvantageCore
- ✅ M3: Keybindings & Client Input complete - Fabric and NeoForge client input wired across all four nodes
- ✅ M4: Networking transport layer complete - component toggle, abort workers, player sync, feature dispatch, and SupremeVantage packet transport wired across Fabric and NeoForge
- ✅ M5: Server events & dispatch complete - login/logout, level unload, entity load/join handling, and NeoForge tool-modification hook wired
- ✅ M6: Config UI complete - shared Cloth Config screen implemented, Fabric ModMenu factory wired, NeoForge config screen extension point registered
- ✅ M7: Assets/Localization migration complete - migrated
en_us.jsonandru_ru.jsoninto modern resources and added rewrite keybinding/localization keys - ✅ M8: Documentation signoff complete - traceability matrix refreshed to current milestone status
- ✅ M9: Verification/regression gate complete -
chiseledBuildand targeted NeoForge test gates pass
2.2.0
- Add final strict traceability audit matrix mapping all appendix anchors (A-E) to modern implementation references.
- Add cross-feature policy enforcement coverage for common shared flags in PolicyCoreService tests.
- Mark parity rewrite phases and documentation signoff as complete after Milestone 6 validation.
- Add runtime cropination harvest action evaluation with maturity, replant, and durability cadence decisions.
- Add hydration-aware cultivation planning and lumbination trunk/leaf/sapling execution plans.
- Add captivation runtime decision gating for GUI restrictions and radius checks.
- Add focused runtime tests for farming, harvest, and captivation parity slices.
- Add illumination manual-placement decisions, torch depletion reporting, and richer utility runtime coverage.
- Add substitution combat/mining policy decisions with primary-tool switch-back behavior.
- Add typed synced-config payloads and server override enforcement for all modern feature configs, including Cultivation.
- Expand config records to carry legacy parity fields for block lists, policy toggles, torch placement, and override-aware settings.
- Add legacy-parity keybinding metadata and client input toggle handling for feature enablement, excavation modes, illumination actions, and abort flow.
- Preserve SupremeVantage as a hidden code-driven reward path with modern packet and service coverage.
2.1.0
- Reset repository into modernization workspace with legacy archive in releases/original.
- Replace legacy build with Stonecutter and Modstitch Kotlin DSL foundation.
- Add four-node version matrix scaffold for Fabric and NeoForge.
- Introduce descriptor-driven component lifecycle and shared service modules.
- Add initial deterministic unit tests for processing, geometry, substitution, illumination, policy, drop handling, and bootstrap registration.
- Add CI and release workflows for all Stonecutter nodes.