Tags
Creators
Details
0.0.1
Compatibility
Changes
AutoEMC 1.12.2 Lite - Changelog 1.12.2 Lite Release Candidate Notes
Status: Beta / Release Candidate, not final stable yet.
This build is a rewrite for Minecraft Forge 1.12.2, not a direct mechanical port from the newer AutoEMC codebase. The 1.12.2 API does not support modern systems such as Brigadier commands, ForgeConfigSpec, Forge item tags, DataComponents, or Smithing Table recipes. v1.0.0-lite-initial Added
Forge 1.12.2 project structure.
Classic mcmod.info metadata support.
Old-style Forge .cfg configuration.
/autoemc rescan command using 1.12.2 CommandBase.
ProjectE custom_emc.json writer.
1.12.2 ProjectE item id format:
modid:item|meta
Crafting recipe EMC solving.
Furnace recipe EMC solving.
Flat fallback EMC for unsolved items.
OreDictionary fallback support.
AutoEMC-generated entry tracking:
config/autoemc/generated_entries.json
Dedicated debug log:
config/autoemc/autoemc-debug.log
Notes
This version was intentionally built as a lightweight test version.
Smithing, modern Forge tags, NBT/DataComponents, and Brigadier were not included because they are not 1.12.2 systems.
v1.0.0-lite-info-fixed Fixed
Replaced barebones mcmod.info with a proper 1.12.2 metadata file.
Added better mod description, credits, authorship, Minecraft version, Forge dependency, and ProjectE load-after dependency.
Rebuilt the zip to preserve the full source tree.
v1.0.0-lite-worldload-fixed Added
Automatic scan on server/world load.
WorldEvent.Load hook.
Delayed startup scan on server tick so recipes, ProjectE, and OreDictionary have time to initialize.
Added config
B:scanOnWorldLoad=true I:startupScanDelayTicks=100
Changed
Server-start event now queues the scan instead of running immediately.
Behavior
First server/world load scans automatically.
If item registry is unchanged, AutoEMC skips the scan.
/autoemc rescan still forces a manual scan.
alwaysRescan=true can force scanning every launch.
v1.0.0-lite-better-emc Added
Manual item EMC overrides.
Exact OreDictionary EMC values.
OreDictionary material baseline values.
OreDictionary form multipliers.
Blacklist support.
Tier keyword value floors.
Added config examples
S:manualValues < draconicevolution:draconic_core|0=1000000 draconicevolution:wyvern_core|0=4000000
S:oreDictionaryMaterialValues < copper=128 tin=128 silver=256 platinum=2048
S:oreDictionaryFormMultipliers < ingot=1.0 dust=1.0 ore=2.0 nugget=0.111111 block=9.0 gear=4.0
S:tierKeywordValues < creative=9000000000000000 infinity=1000000000000000 chaotic=1000000000000 draconic=1000000000 wyvern=100000000
Changed
Pricing order became:
Skip blacklisted items.
Use manual item value if configured.
Preserve existing ProjectE/manual values.
Solve crafting/furnace recipes.
Apply tier keyword floor.
Use exact OreDictionary value.
Use OreDictionary material × form multiplier.
Use old simple OreDictionary fallback.
Use rarity/stack/durability fallback.
v1.0.0-lite-release-safety Added
Stronger ProjectE value protection.
Default ProjectE namespace blacklist.
Dry-run mode.
Scan report generation.
Improved odd-name material parsing.
Added config
B:neverOverwriteProjectEValues=true B:dryRun=false B:writeReport=true I:reportLimit=500
Added default blacklist
S:blacklist < projecte:*
Changed
If ProjectE already reports EMC greater than 0, AutoEMC will not generate, lower, raise, or replace that value.
ProjectE-owned items are blocked from AutoEMC generation by default.
Improved fallback parsing for names like:
highyieldgoldore
highyieldplatore
highyieldcaluminumore
platinumoremoreore
netherite_ingot
netherite_scrap
ancient_debris
Added material aliases
plat -> platinum
caluminum -> aluminum
aluminium -> aluminum
Added better defaults
ingotNetherite=8192 scrapNetherite=2048 oreNetherite=4096 blockNetherite=73728 ancientDebris=4096 netherite=8192
Added report output
config/autoemc/autoemc-report.txt
The report includes:
Write/dry-run mode.
Changed entry count.
Recipe-solved count.
Fallback-solved count.
ProjectE-protected count.
Generated candidate values.
v1.0.0-lite-recipe-floor Added
Recipe output floor enforcement.
Added config
B:enforceRecipeOutputFloor=true I:maxRecipeFloorPasses=10
Behavior
After fallback assigns values, AutoEMC checks recipes again.
If an AutoEMC-generated recipe output is cheaper than the total EMC of its ingredients, AutoEMC raises the output value.
Example:
9 ingots = 81 EMC total block currently = 3 EMC AutoEMC raises block to at least 81 EMC
Safety rules
Does not change ProjectE-protected values.
Does not change manualValues.
Does not lower any value.
Skips self-referential recipes.
Runs multiple passes so raised components can raise downstream outputs.
Report includes:
Recipe floors raised: X
Test observation
The latest scan showed:
860 item stacks scanned.
816 usable crafting/furnace recipes loaded.
21 values solved from recipes.
148 values solved from fallback.
40 values raised by recipe-floor passes.
678 ProjectE-protected values.
169 entries written/updated.
Scan completed in 33 ms.
Current release status Ready for
Closed beta.
Public beta with warning.
Modpack testing.
User feedback on generated EMC balance.
Not yet ideal for stable release
One important cleanup behavior is still needed. Remaining release blocker
When an item becomes blacklisted or ProjectE-protected after a previous AutoEMC run, AutoEMC should remove its stale AutoEMC-generated entry from:
config/ProjectE/custom_emc.json config/autoemc/generated_entries.json
This is needed because old bad entries can remain after the safety rules are added.
Examples seen in existing generated output:
projecte:item.pe_lens_explosive|0 = 8 projecte:item.pe_randomizer|0 = 8 minecraft:barrier|0 = 8 minecraft:bedrock|0 = 8 minecraft:structure_void|0 = 8 minecraft:end_portal_frame|0 = 8 minecraft:mob_spawner|0 = 8
Recommended next version
v1.0.0-lite-stale-entry-cleanup
Required changes:
Remove AutoEMC-owned entries that now match the blacklist.
Remove AutoEMC-owned entries that ProjectE now protects.
Remove AutoEMC-owned entries for ProjectE namespace by default.
Log all removals in autoemc-report.txt.
Keep user/manual entries untouched.
Suggested public beta warning
AutoEMC 1.12.2 Lite is experimental. Back up config/ProjectE/custom_emc.json before use. This mod generates EMC values automatically from recipes, furnace recipes, OreDictionary data, and fallback rules. Some values may require pack-author tuning through the config.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:da0SqNmx:X85O3PXm"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:da0SqNmx:X85O3PXm"
}

