Skip to content

Jar Stacker v0.6.0

Choose a tag to compare

@rametrree rametrree released this 13 Sep 12:21
· 47 commits to main since this release

Highlights

Jar Stacker v0.6.0 introduces the finalized Latest Entity Wins item merge architecture, sub-100ms adaptive scanning cadence, comprehensive logical status effect virtualization for mob stacks, and exact Vanilla 1.21.1 combat and Looting attribution parity (MC-3304).

Changes

1. Item Stacking Architecture (Latest Entity Wins)

  • Latest Entity Wins: Compatible dropped items consolidate into the newest ItemEntity with zero survivor displacement (distMoved = 0.0). The physical newest entity retains its natural coordinates, velocity, on-ground state, and motion.
  • Adaptive 2/10 Scan Cadence: High-frequency scans (every 2 ticks / ~100 ms) for active/moving items ensure rapid consolidation during mining, with an ultra-lightweight 10-tick baseline for settled items.
  • Broad Configured Radius: Consolidates items within the configured radius (default: 4.0 blocks) without artificial contact-only gating.
  • Clean Vanilla Visuals: Nametags are hidden on count-1 items when showCountOnlyWhenStacked is enabled.
  • Removed Experimental Leftovers: Removed -Djarstacker.itemMergeMode system properties, setMergeMode hooks, stable-representative item branches, and obsolete client render transition mixins.

2. Mob Stacking & Logical Status Effects

  • Per-Logical-Entity Status Effects: Independent MobEffectInstance tracking (amplifier, duration, ambient flags, particle effects) across all 39 Vanilla 1.21.1 status effects.
  • Persistent Burn Counters: Fire ticks are counted down independently per member with authoritative damage ticking every 20 ticks.
  • Event-Driven Parity: INFESTED triggers native hurt callbacks; OOZING, WEAVING, and WIND_CHARGED trigger native death callbacks on logical death.
  • Zero Mass Entity Footprint: Splash and lingering potions affect all N logical members with O(1) physical entity footprint.

3. Combat Attribution & MC-3304 Parity

  • Decoupled Combat Context (CombatDeathContext): Independently evaluates killer identity, damage source, player kill attribution, and enchantment levels.
  • MC-3304 Parity: Bows, crossbows, tridents, and player-ignited TNT evaluate the player's held weapon at the moment of impact/death matching native 1.21.1 behavior.
  • Dynamic Equipment Extraction: Mobs picking up damageable weapons, armor, or tools dynamically extract as autonomous singletons to protect equipment durability.

Verification & Test Results

  • Automated Integration Test Suite: 343 / 343 tests passing (100%) on dedicated server environment.
  • Item Invariant Tests (IM1-IM29): Validated latest survivor preservation, motion preservation, adaptive scan latency, rapid mining sequences, and real-world block drop integration.
  • Client Launch Verification: Reaches title screen cleanly with zero mixin or injection errors.

Installation

  • Download jarstacker-0.6.0.jar and place it in your .minecraft/mods directory.
  • Requires Fabric Loader >= 0.19.3 and Fabric API for Minecraft 1.21.1.
  • Optional: YetAnotherConfigLib (YACL v3) and Mod Menu for the in-game configuration interface.