All the Mods 9 - ATM9

All the Mods 9 - ATM9

9M Downloads

[0.2.10] Mekansium Ore Slurries for AlltheModium ores are not functioning

rekcon opened this issue ยท 8 comments

commented

Mek processing for AlltheModium ores is not functioning, resulting in missing recipes for the below fluids. I have copied some log snippets below.

allthemodium:dirty_allthemodium
allthemodium:dirty_vibranium
allthemodium:dirty_unobtainium

allthemodium:clean_allthemodium
allthemodium:clean_vibranium
allthemodium:clean_unobtainium
Logs

minecraft_atm9_mine_logs.txt

[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/unobtainium/crystal/from_slurry[mekanism:crystallizing]: {"type":"mekanism:crystallizing","chemicalType":"slurry","input":{"amount":200,"slurry":"allthemodium:clean_unobtainium"},"output":{"item":"allthemodium:unobtainium_crystal"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:clean_unobtainium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/allthemodium/slurry/from_raw_ore[mekanism:dissolution]: {"type":"mekanism:dissolution","itemInput":{"amount":3,"ingredient":{"tag":"forge:raw_materials/allthemodium"}},"gasInput":{"amount":1,"gas":"mekanism:sulfuric_acid"},"output":{"slurry":"allthemodium:dirty_allthemodium","amount":2000,"chemicalType":"slurry"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_allthemodium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/vibranium/crystal/from_slurry[mekanism:crystallizing]: {"type":"mekanism:crystallizing","chemicalType":"slurry","input":{"amount":200,"slurry":"allthemodium:clean_vibranium"},"output":{"item":"allthemodium:vibranium_crystal"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:clean_vibranium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/vibranium/slurry/clean[mekanism:washing]: {"type":"mekanism:washing","fluidInput":{"amount":5,"tag":"minecraft:water"},"slurryInput":{"amount":1,"slurry":"allthemodium:dirty_vibranium"},"output":{"slurry":"allthemodium:clean_vibranium","amount":1},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_vibranium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/unobtainium/slurry/dirty/from_raw_block[mekanism:dissolution]: {"type":"mekanism:dissolution","gasInput":{"amount":2,"gas":"mekanism:sulfuric_acid"},"itemInput":{"ingredient":{"tag":"forge:storage_blocks/raw_unobtainium"}},"output":{"amount":6000,"chemicalType":"slurry","slurry":"allthemodium:dirty_unobtainium"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_unobtainium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/unobtainium/slurry/clean[mekanism:washing]: {"type":"mekanism:washing","fluidInput":{"amount":5,"tag":"minecraft:water"},"slurryInput":{"amount":1,"slurry":"allthemodium:dirty_unobtainium"},"output":{"slurry":"allthemodium:clean_unobtainium","amount":1},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_unobtainium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/vibranium/slurry/dirty/from_raw_block[mekanism:dissolution]: {"type":"mekanism:dissolution","gasInput":{"amount":2,"gas":"mekanism:sulfuric_acid"},"itemInput":{"ingredient":{"tag":"forge:storage_blocks/raw_vibranium"}},"output":{"amount":6000,"chemicalType":"slurry","slurry":"allthemodium:dirty_vibranium"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_vibranium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/vibranium/slurry/from_raw_ore[mekanism:dissolution]: {"type":"mekanism:dissolution","itemInput":{"amount":3,"ingredient":{"tag":"forge:raw_materials/vibranium"}},"gasInput":{"amount":1,"gas":"mekanism:sulfuric_acid"},"output":{"slurry":"allthemodium:dirty_vibranium","amount":2000,"chemicalType":"slurry"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_vibranium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/allthemodium/crystal/from_slurry[mekanism:crystallizing]: {"type":"mekanism:crystallizing","chemicalType":"slurry","input":{"amount":200,"slurry":"allthemodium:clean_allthemodium"},"output":{"item":"allthemodium:allthemodium_crystal"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:clean_allthemodium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/vibranium/slurry/dirty[mekanism:dissolution]: {"type":"mekanism:dissolution","itemInput":{"ingredient":{"tag":"forge:ores/vibranium"}},"gasInput":{"amount":1,"gas":"mekanism:sulfuric_acid"},"output":{"slurry":"allthemodium:dirty_vibranium","amount":1000,"chemicalType":"slurry"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_vibranium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/unobtainium/slurry/from_raw_ore[mekanism:dissolution]: {"type":"mekanism:dissolution","itemInput":{"amount":3,"ingredient":{"tag":"forge:raw_materials/unobtainium"}},"gasInput":{"amount":1,"gas":"mekanism:sulfuric_acid"},"output":{"slurry":"allthemodium:dirty_unobtainium","amount":2000,"chemicalType":"slurry"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_unobtainium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/allthemodium/slurry/dirty[mekanism:dissolution]: {"type":"mekanism:dissolution","itemInput":{"ingredient":{"tag":"forge:ores/allthemodium"}},"gasInput":{"amount":1,"gas":"mekanism:sulfuric_acid"},"output":{"slurry":"allthemodium:dirty_allthemodium","amount":1000,"chemicalType":"slurry"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_allthemodium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/allthemodium/slurry/dirty/from_raw_block[mekanism:dissolution]: {"type":"mekanism:dissolution","gasInput":{"amount":2,"gas":"mekanism:sulfuric_acid"},"itemInput":{"ingredient":{"tag":"forge:storage_blocks/raw_allthemodium"}},"output":{"amount":6000,"chemicalType":"slurry","slurry":"allthemodium:dirty_allthemodium"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_allthemodium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/unobtainium/slurry/dirty[mekanism:dissolution]: {"type":"mekanism:dissolution","itemInput":{"ingredient":{"tag":"forge:ores/unobtainium"}},"gasInput":{"amount":1,"gas":"mekanism:sulfuric_acid"},"output":{"slurry":"allthemodium:dirty_unobtainium","amount":1000,"chemicalType":"slurry"},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_unobtainium'
[16:00:06] [KubeJS Recipe Event Worker 0/WARN] [KubeJS Server/]: Error parsing recipe allthemodium:mek_processing/allthemodium/slurry/clean[mekanism:washing]: {"type":"mekanism:washing","fluidInput":{"amount":5,"tag":"minecraft:water"},"slurryInput":{"amount":1,"slurry":"allthemodium:dirty_allthemodium"},"output":{"slurry":"allthemodium:clean_allthemodium","amount":1},"conditions":[{"type":"forge:mod_loaded","modid":"mekanism"}]}: com.google.gson.JsonSyntaxException: Invalid slurry type 'allthemodium:dirty_allthemodium'
commented

Possibly due to this Mekanism change which renamed ChemicalBuilder.color to ChemicalBuilder.tint, which SlurryBuilder inherts:
mekanism/Mekanism@5583b59

This change appears to impact an api ATM uses. These are the new examples given by Mekanism after the change:
https://github.com/mekanism/Mekanism/blob/5583b59e52e82e0bcd719fc624d9bb0687432214/src/datagen/generated/mekanism/data/mekanism/scripts/mekanism/custom_chemicals.zs#L20-L21

Here are the impacted lines in ATM:

event.createCustom(`clean_${entry.material}`, () => $Slurry($SlurryBuilder.clean().ore(`forge:ores/${entry.material}`).color(Color.of(entry.color).getRgbJS())))
event.createCustom(`dirty_${entry.material}`, () => $Slurry($SlurryBuilder.dirty().ore(`forge:ores/${entry.material}`).color(Color.of(entry.color).getRgbJS())))

commented

Seems like this tint change is not the primary issue for allthemodium ores. crimson_iron and azure_silver are commented out in ATM9 perhaps as a quick way to workaround the tint issue. However, I haven't found anywhere in the ATM9 code where the allthemodium:dirty_allthemodium object can be created.

I believe allthemodium:dirty_allthemodium is defined as a recipe from AllTheModium, however if the slurries were meant to be registered in Mekanism with Kubejs, I think they would register as kubejs:dirty_allthemodium using the start script. Maybe there is another place they are registered I am just not seeing.

commented

There was a Mekansim change new in ATM9 that might help with registering slurries in exact namespace using JSON. That might be able to register in the correct namespace to make the existing AllTheModium recipes work.
mekanism/Mekanism@3970740

I am unsure of the format of the registration JSONs. I have been looking for examples with no luck.

commented

I have been able to fix this by installing mod JsonThings-1.20.1-0.9.1 and creating an appropriate thingpack. I am not sure this is how you guys will want to fix it, I am putting together a pull request now to document the json format.

commented

Logs from server start using changes in PR 699

Logs

minecraft_atm9_mine_logs_fix.txt

commented

the actual errors are in AllTheModium, and AllTheOres, Vortex is aware and will be fixing them at some stage

commented

FWIW, I have confirmed the mod and json/thingpack mentioned in PR 699 creates the missing slurry registrations and completes the existing recipe chain for tripling.

The dirty and clean slurries appear in JEI and function in the appropriate machines.
image

The crafting chain utilizes the recipes in AllTheModium as currently written to triple AllTheModium ore.
ore -> dirty slurry -> clean slurry -> crystal -> shard -> clump -> dirty dust -> dust -> ingot