Better Desert Temples datapack fails to load on 1.20.1 (Forge)
scottdraper8 opened this issue · 4 comments
Description
When running Repurposed_Structures-Better_Desert_Temples_v8.zip on Minecraft Forge 1.20.1, the server fails to load due to invalid datapack JSON and missing template pool references.
Errors
From latest.log:
Caused by: java.lang.RuntimeException: Not a json array: {"processors":[ ... ]}
Also:
Errors in element minecraft:worldgen/template_pool:
Unbound values: [betterdeserttemples:hall_room_wipeout_no_left_wall]
Root Cause
- Processor list format is invalid: Datapack uses an object with
"processors": [...]instead of a raw JSON array.
Impact
- Server cannot finish datapack loading.
- Registry bootstrap aborts with
Failed to load datapacks, can't proceed with server load.
Suggested Fix
- Update
worldgen/processor_list/*.jsonfiles to be arrays:instead of:[ { "processor_type": "minecraft:rule", "rules": [ ... ] } ]{ "processors": [ { "processor_type": ... } ] }
Environment
- Minecraft: 1.20.1 (Forge 47.4.0)
- Datapack: Repurposed_Structures-Better_Desert_Temples_v8.zip
What the heck is this format? You didn’t feed this to ai and thought it was right with the suggested fix?? (And said cause and fix is actually very very wrong and nonsensical which is why I suspect AI was used here)
Let’s back up for a moment. V8 of the datapack is correct for your Minecraft version. However, do you have both Repurposed Structures on and Yung’s Better Desert Temple on? The datapack will not work if yung’s mod is not on as it relies on several parts of the other mod
- Not trying to make you upset, not sure why I got the unprofessional response.
- Yes I have both mods installed
- I updated the JSONs myself based on the error messages I was getting in the server.
- The modified datapack worked for me. I uploaded it to gofile: https://gofile.io/d/fOclTH
My apolgies for assuming AI. The post heavily fragmented, hyper formatted, with no log file, plus an incorrect assertion on the cause all were ringing alarm bells in my head of AI regurgitation (which i despise as AI lies to people constantly in modded Minecraft)
Anyway, the datapack does not need any editing as shown below when using Repurposed Structures, Yung's Better Desert Temple, and the Datapack on as shown below
In fact, I suspect by editing the datapack, you actually have it broken in some way. If I could have the full latest.log file, it would likely be more clear. For the Errors in element minecraft:worldgen/template_pool: Unbound values: [betterdeserttemples:hall_room_wipeout_no_left_wall], this template pool does in fact exist in Yung's Better Desert Temple mod.
So if the server did not actually have Yung's Better Desert Temple mod running, this error would occur when loading the datapack. By removing the reference, the datapack's structure are now missing pieces which is bad.
for the Caused by: java.lang.RuntimeException: Not a json array: {"processors":[ ... ]}, I would need to see the full latest.log file but if the processor is referencing a processor from Yung's Better Desert Temple mod and that mod isn't on, this error would occur. It doesn't actually mean the json format is wrong. That part is minecraft's error reporting being obtuse. Rather its that the processor list was failed to be deserialized due to a processor or something was not registered (like yungs mod not on) which causes the parser to choke and spit out that error. Changing the json format yourself likely also broken this processor list so it no longer runs at all.
The reasons above is why I strongly suspect YungsBetterDesertTemples-1.20-Forge-3.0.3.jar is not actually on or running on your server if the datapack is producing these errors