Blame - Your Minecraft Problem Solver
The Blame mod becomes an essential diagnostic tool when you encounter unexplained world generation crashes or command errors without detailed information. When this mod is activated, the system begins collecting extended data and recording full stack traces to the latest.log file located in the logs folder above the mods directory. This significantly simplifies problem identification and analysis. It's important to note that Blame functions only in singleplayer or on servers, but not for clients connecting to a server.
Diagnostic Tool Capabilities
-
Records stack traces for commands that ended with errors (typically modified commands leave no traces in logs when they crash)
-
Detects and logs all damaged commands when starting a world (identifies commands where .executes() is called outside .then() since they don't work correctly)
-
Provides additional information about features or structures causing crashes during world generation
-
Logs all ConfiguredFeatures, ConfiguredStructures, and ConfiguredCarvers that weren't registered (unregistered mod elements can disrupt other mods and prevent content from appearing)
-
Determines if DynamicRegistry is loaded by another mod too early (this leads to world generation issues like "Unknown Biome ID" errors)
-
Precisely identifies damaged world generation JSON files from any mods or datapacks, displaying their contents
-
Records missing loot tables when attempting to generate them - check logs if chests turn out empty
-
Outputs the name of the structure causing a crash if the spacing value is set to 0 or separation is greater than or equal to spacing (either condition causes game crash)
-
Exactly identifies which structure caused a crash in custom/flat ChunkGenerator due to absence in FlatGenerationSettings.STRUCTURES
-
Simplifies handling of recipe and loot table errors for easier log sharing and problem analysis
-
Fixes MC-190122 bug, ensuring accurate count of loaded recipes in logs to simplify debugging
-
Reports in logs if a Jigsaw structure attempts to access a non-existent template pool, indicating incomplete structure generation
-
Records attempts by mods or datapacks to access non-existent NBT files to simplify debugging
-
Identifies the specific block and its NBT that caused structure processor crash during generation
For Developers: Using Blame in Fabric/Quilt Environment
Add the following Maven repository to your build.gradle file, where Gradle will look for Blame's jar file:
repositories {
maven {
url "https://nexus.resourcefulbees.com/repository/maven-public/"
}
}
Now add the following line to the dependencies block. Replace 1.16.5-3.0.1-fabric. Current versions can be checked on the Modrinth page.
dependencies {
...
modImplementation "com.telepathicgrunt:Blame-Forge:5.0.0+1.18.2"
}
Launch the game - Blame should be working! You'll know by the message in the IDE console and latest.log file:
[18:25:48] [main/ERROR] (Blame) Blame 1.18.2-5.0.0-forge initialized