File Details
emcessentials-refabricated-1.0.1.jar
- R
- Jun 7, 2026
- 67.12 KB
- 1
- 1.20.1
- Fabric
File Name
emcessentials-reabricated-1.0.1.jar
Supported Versions
- 1.20.1
Curse Maven Snippet
Changelog — v1.0.0 → v1.0.1
v1.0.0 — Initial Release
Added — Mod Framework
- Fabric 1.20.1 mod project with Fabric Loom 1.15.2, Gradle 9.2.1, JDK 21
- fabric.mod.json with id emcessentials, depends on itemalchemy >=1.3.1
- emcessentials.accesswidener for future access widening
Added — Items
- Alchemical Matter — blue gem, uncommon rarity, mid-tier crafting component
- Omnium Matter — purple gem, rare rarity, high-tier component
- Alchemical Catalyst — orange orb, common rarity, base material
- Compressed Philosopher's Stone — green orb, epic rarity, single-use
- All items registered via ModItems using vanilla Fabric Registry.register()
- Item models: item/generated with 16×16 PNG textures
- English lang translations for all items
Added — Blocks (initial)
- EMC Stabilizer — obsidian-tier blast-resistant decorative block
- Alchemical Ore — diamond-level ore, drops 3–7 XP, needs iron pick
- Deepslate Alchemical Ore — deepslate variant of alchemical ore
- Power Flower — single decorative block, iron-tier, luminance 7
- Miniature Sun — glowstone-tier full-brightness block, luminance 15
- All blocks registered via ModBlocks with associated BlockItem
- Block models: cube_bottom_top (EMC Stabilizer, Power Flower), cube_all (ores, Miniature Sun)
- Blockstates: single-variant JSONs for all 5 blocks
- Loot tables: all blocks drop themselves on break (survives explosion)
- Mining tags: added to mineable/pickaxe, ores and stabilizer to needs_iron_tool
- Block textures: 16×16 PNGs for all block faces (generated via Python)
Added — EMC HUD Display
- Client-side HUD overlay rendering player's EMC in top-left corner
- Smart positioning: below Sodium Extra FPS (line 1) and coordinates (line 2) — no overlap
- Human-readable formatting: 1,234 / 1.2M / 3.5B / 7.8T
- Server-to-client sync via custom Fabric network packet (emc_sync / emc_request)
- Client requests EMC every 20 ticks (1 second)
- Server reads player EMC from Item Alchemy's EMCUtil.PLAYER.getEMC() via reflection
- EMCEssentialsClient client initializer registered in fabric.mod.json
Added — EMC Commands
- /emce help — lists all commands
- /emce get <item> — looks up EMC value via EMCUtil.ITEM.getEMC() reflection
- /emce set <item> <value> — saves custom EMC override to config
- /emce remove <item> — removes a custom override
- /emce reload — reloads emcessentials.properties from disk
- /emce list — lists all custom EMC entries
- /emce stats — counts total items and custom entries
- Registered via CommandRegistrationCallback.EVENT
Added — EMC Config
- config/emcessentials.properties for custom EMC values
- Default config with vanilla reference values (coal: 128, diamond: 8192, netherite: 49152, etc.)
- Load/save with Properties file format
- Auto-creates default config on first launch
- Full CRUD: get/set/remove custom values in memory + persist to disk
Added — EMC Auto-Registration
- Auto-applies custom EMC values from config at startup via EMCUtil.ITEM.setEMC() reflection
- Graceful fallback: logs warning if Item Alchemy not installed
- Validation: checks item IDs exist in registry before applying
- Error-tolerant: skips invalid entries, reports counts
Added — Asset Pipeline
- 28KB placeholder mod icon (128×128 green diamond gradient)
- en_us.json with translations for all items, blocks, commands, and container names
- Full directory structure: models/item, models/block, blockstates, textures/item, textures/block, data/minecraft/tags/blocks
v1.0.1
Added — EMC Bridge Terminal
- New block emcessentials:emc_bridge_terminal with green-tinted Importer/Exporter texture
- 18-slot inventory (2×9) visible to Tom's Simple Storage, hoppers, and pipes
- Auto-converts inserted items to EMC using EMCUtil.ITEM.getEMC()
- Pushes converted EMC into adjacent Item Alchemy storage via EMCStorageUtil
- Block entity ticks every 5 ticks to process input and replenish output
- NBT-persistent inventory
- Right-click opens a generic 2-row container GUI
Added — Power Flower Block Entities (all 6 tiers)
- Ticking block entities that generate EMC each tick:
- MK1: 4 EMC/tick, MK2: 12, MK3: 48, MK4: 192, MK5: 768, MK6: 3072
- 1B EMC internal buffer per flower
- Auto-pushes stored EMC to adjacent EMC Batteries/Cables every 5 ticks via EMCStorageUtil.getNearEMCStorages() and addEMC()
- NBT-persistent stored EMC and tier fields
- Block entity ticker registered through PowerFlowerBlock.getTicker()
- Custom PowerFlowerBlock class extending Block + BlockEntityProvider
Added — Miniature Sun Block Entity
- Ticking block entity scans loaded chunks within 5-block radius every 10 ticks
- Detects Item Alchemy's EMCCollectorTile via class name reflection
- Applies 10× boost by injecting extra EMC via addEMC() on each tick
- Also boosts PowerFlowerBlockEntity output by 10× directly
- Uses chunk-based iteration (WorldChunk.getBlockEntities()) for reliable neighbor scanning
Added — Block Entity Registration
- ModBlockEntities class with registry for POWER_FLOWER, MINIATURE_SUN, EMC_BRIDGE_TERMINAL
- Cached-type singleton pattern (setType()) to avoid circular initialization between block and block entity registration
- FabricBlockEntityTypeBuilder with multi-block support (6 power flower variants share one type)
Added — Block Assets (10 new)
- Blockstate JSONs: emc_bridge_terminal, power_flower_mk2 through mk6
- Block models: emc_bridge_terminal (cube_bottom_top), power_flower_mk2–mk6
- Item models: all 7 new blocks inherit block parent
- Textures: emc_bridge_terminal_side.png, emc_bridge_terminal_top.png (16×16 green-tinted)
- Loot tables: all new blocks drop themselves
- Mining tag: emc_bridge_terminal added to mineable/pickaxe
Added — Lang Entries
- block.emcessentials.emc_bridge_terminal, container.emcessentials.emc_bridge_terminal
- block.emcessentials.power_flower_mk2 through power_flower_mk6
Changed
- Version bumped from 1.0.0 to 1.0.1 in gradle.properties
- Output jar renamed from emcessentials-reabricated-1.0.0.jar to emcessentials-reabricated-1.0.1.jar
- README.md rewritten with full v1.0.1 feature list
Fixed
- HUD compile errors in 1.20.1 Yarn mappings:
- Replaced client.getDebugHud().shouldShowDebugHud() with client.options.debugEnabled
- Removed access to private reducedDebugInfo field in GameOptions
- Command registration — changed method reference to lambda to match Fabric API's 3-parameter CommandRegistrationCallback signature
- Block entity type registration — switched from static field reference in constructor to cached-type pattern (setType()) to resolve class-loading order issues
- Chunk scanning — replaced non-existent World.getBlockEntities(Box) with chunk iteration via WorldChunk.getBlockEntities() using reflection for mapping compatibility
- Build chain — upgraded to Fabric Loom 1.15.2, Gradle 9.2.1, JDK 21 to match Item Alchemy 1.3.1's build version