File Details
IllegalQuarry-0.1.220.jar
- R
- Jan 26, 2026
- 352.57 KB
- 1.1K
- Early Access
File Name
IllegalQuarry-0.1.220.jar
Supported Versions
- Early Access
Changelog - Illegal Quarry
[0.1.201] - 2026-01-26
MAJOR: Industrial Hardmode Update βοΈπ
Introduced a high-stakes mining mode that shifts the focus from guaranteed yields to extraction efficiency and waste management.
π New Features
- Hardmode System:
- Extraction Success Rates: Ores now have specific success chances (e.g., Iron 70%, Gold 50%, Mithril 5%).
- Two-Step Mining Logic: Each mining cycle first rolls for the target resource. If extraction fails, a second weighted roll is performed in the "Side-Drop" pool.
- Smart Inventory Sensing: Quarries now monitor the output container. Production automatically pauses if the inventory is full.
- Crystal Resonance: Placing vanilla crystal blocks (e.g.,
Rock_Crystal_Blue_Large) adjacent to a Tier 2 Quarry now acts as a specific filter for that crystal type. - Side-Drop Economy: Failed extractions now produce valuable "industrial waste" instead of ores.
- New Drops: Added Bone Fragments, Light Leather, Spider Webs, and 7 varieties of Crystals (Cyan, Blue, Green, Purple, Red, White, Yellow).
- Weighted RNG: Side-drops utilize a tiered rarity system to ensure balanced drops.
- Improved Break Logic: Quarries, Filters, and Speed Modifiers now properly drop themselves as items when broken by any player.
βοΈ Configuration & Balancing
- Config Versioning (v6): Implemented automated config migration and force-reset logic. Updating to v0.1.201 will trigger a one-time reset to apply new Hardmode success rates and side-drop definitions.
- Rebalanced Quarry Stats:
upgradeMultiplier: Adjusted to 1.25 for a more balanced speed progression.fuelConsumptionMultiplierPerLevel: Increased to 1.25 to make high-speed mining more expensive.
- T1 Quarry Recipe: Updated to 100x Iron, 100x Copper, 100x Gold, and 1x Cobalt Shovel.
π οΈ Commands & Technical
- Command Cleanup: Removed the obsolete
/iqcommand. - Version Tracking (WIP): Added
/iqvfor detailed version, build, and plugin info. - Automated Versioning: Integrated version and build constants into the core plugin logic for cleaner build tracking.
- Optimization: Refactored weighted item selection to support dynamic sub-pools (Ores vs. Waste).
[0.1.192] - 2026-01-26
Added
- Version Command: Added
/iqv. - Config Versioning: Added
configVersiontoillegal_quarry.json. - Improved Break Logic: Components now drop themselves.
[0.1.187] - 2026-01-26
Added
- Version Command: Added
/iqvcommand to show plugin version and build info (similar to IllegalPipe). - Automated Version Tracking: Added
VERSIONandBUILD_NUMBERconstants toQuarryPluginfor internal use and automated build updates.
Fixed
- Cleanup: Fixed a file naming conflict in command classes.
[0.1.186] - 2026-01-26
Added
- Build System: Automated version tracking in
build_mod.sh.
[0.1.185] - 2026-01-26
Fixed
- Corrected class naming in
IllegalQuarryIpvCommand.java.
[0.1.175] - 2026-01-26
Fixed
- Advanced Quarry Recipe: Fixed recipe definition for advanced quarry - now properly recognized by crafting system.
[0.1.173] - 2026-01-25
MAJOR: Pure ECS Persistence System π
BREAKING CHANGE: Migrated from CSV-based persistence to 100% game-internal ECS persistence.
New Files
QuarryDataManager.java - In-memory cache + disk I/O system for quarry persistence
- Methods:
saveQuarry(),loadQuarry(),removeQuarry(),persistToDisk(),loadFromDisk() - File:
mods/tiffy-IllegalQuarry/quarries.dat(replaces quarry.csv) - Format: Pipe-delimited NBT strings (one per line)
- Methods:
QuarryInitializer.java - ECS system for restoring persisted quarries on startup
- Waits 20 ticks for world to fully load
- Deserializes and creates ECS entities from cache
- Quarries resume mining immediately with preserved state
Modified Files
QuarryComponent.java - β Added serialization
toNBTString()- Serialize to pipe-delimited formatfromNBTString()- Deserialize from pipe-delimited format- Format:
id:Q-xxx|owner:name|pos:x,y,z|speed:3|tier:2|tick:45|fuel:1200|filters:Ore_Mithril;Ore_Gold
QuarryPlugin.java - β Removed QuarryManager, added ECS lifecycle
- Calls
QuarryDataManager.loadFromDisk()in setup() - Registers
QuarryInitializerfor automatic restoration - Calls
QuarryDataManager.persistToDisk()in shutdown() - Added debug logging in start()
- Calls
QuarryListener.java - β Complete refactor
- Removed all QuarryManager dependencies
- Added
countQuarriesByPlayer()for player limits - Added
getQuarriesNear()for adjacent quarry detection - All events now use
QuarryDataManager
QuarryMiningSystem.java - β Added persistence
- Fuel state saved every 100 ticks
- Immediate save after fuel refill
- Max fuel loss on crash: ~5 seconds
IllegalQuarryCommand.java - β Updated persistence calls
/iqand/iq clearnow queryQuarryDataManager- Shows fuel + filter count in info display
IllegalQuarryListCommand.java - β Updated persistence calls
/iqlistiteratesQuarryDataManager.getAllQuarries()- Updated storage location message
Deleted Files
- QuarryManager.java β REMOVED - Replaced by lighter QuarryDataManager
Persistence Features
- β Fuel Persistence: Fuel balance survives restart (100-tick save interval + immediate on refill)
- β Filter Persistence: Active filters restored after restart
- β Speed Persistence: Speed level maintained across restarts
- β Tick Counter Persistence: Mining progress preserved
- β Zero CSV Files: No quarry.csv - 100% game-internal storage
- β Atomic Writes: Entire cache written atomically on shutdown
- β Instant Resume: Quarries resume mining immediately on startup with previous state
- β Crash Resilience: Max 500 tick fuel loss (~25 seconds) on force kill
Migration Notes
- β οΈ Breaking Change: Existing quarry.csv data is NOT imported
- Recommendation: Fresh start - players must re-place quarries
- Rationale: Fuel/filter data not in CSV; clean slate preferred for pre-release
- Benefit: No data loss after v0.1.173 (all state now persisted)
Technical Details
- Storage:
mods/tiffy-IllegalQuarry/quarries.dat - Format: Pipe-delimited key:value pairs (human-readable)
- Thread Safety: ConcurrentHashMap-based caching (proven pattern from IllegalPipe)
- Lifecycle: Load setup() β Restore startup() β Save runtime changes β Persist shutdown()
- Performance: One-time load + periodic saves (not per-tick overhead)
Build Status
- β Build #173: SUCCESSFUL
- β Compile errors: 0
- β Warnings: 5 (BlockState deprecation - external API)
- β JAR size: 349KB
[0.1.168] - 2026-01-24
Fixed
- Critical Crash: Fixed
IllegalStateException: Store is currently processingby moving ticking logic to safe execution threads. - Console Spam: Removed leftover debug messages (
[IQ-DEBUG]). - Logic: Fixed an issue where quarries would continue consuming fuel even when "Chunk Loading" was disabled (due to server caching). They now strictly pause if no player is nearby when this setting is off.
Added
- Chunk Loading Config: Added
chunkLoadingEnabledtoillegal_quarry.json.true: Quarries keep chunks loaded and run continuously.false: Quarries automatically pause when no player is within 128 blocks.
[0.1.159] - 2026-01-24
Added
- Chat notification when a quarry is successfully removed (
[IQ] Quarry removed.). - Complete functional description in
desc.md. - Automated build version tracking.
Fixed
- Critical: Fixed
NullPointerExceptionwhen interacting with nearby workbenches by forcing chunk-anchored block states. - Critical: Fixed client crash (
UpdateRecipesatSettingUpstage) during login by batching recipe updates and implementing silent retries. - Graphics: Set correct ISO rotation for all items in the crafting menu.
- Placement: Fixed "Phantom Break" where blocks would occasionally disappear immediately after placement.
- Performance: Optimized recipe synchronization to use a single batch packet instead of multiple individual updates.
Changed
- Increased default
maxQuarriesPerPlayerfrom 3 to 10. - Refactored
RecipeManagerfor better maintainability and crash prevention.
[0.1.130] - Earlier
Added
- Initial Advanced (T2) Quarry implementation.
- Filter system (Ore, Earth, Specialized).
- Fuel consumption mechanics (Charcoal, Essences).
- Speed Modifiers.
- Configuration system for recipes and balance.

