Add Almost Unified

.. use it to do our resource unification
dev
copygirl 2 years ago
parent 7d37540247
commit 887fa44697
  1. 27
      config/almostunified/duplicates.json
  2. 86
      config/almostunified/unify.json
  3. 6
      kubejs/client_scripts/hide/unification/coal_coke.js
  4. 6
      kubejs/client_scripts/hide/unification/sawdust.js
  5. 8
      kubejs/client_scripts/hide/unification/simple_unification.js
  6. 5
      kubejs/client_scripts/hide/unification/slag.js
  7. 5
      kubejs/client_scripts/hide/unification/sulfur.js
  8. 20
      kubejs/server_scripts/recipes/create/crushing_dust.js
  9. 17
      kubejs/server_scripts/recipes/malum_nuggets_from_node.js
  10. 13
      kubejs/server_scripts/unification/coal_coke.js
  11. 14
      kubejs/server_scripts/unification/plates.js
  12. 9
      kubejs/server_scripts/unification/sawdust.js
  13. 17
      kubejs/server_scripts/unification/simple_unification.js
  14. 9
      kubejs/server_scripts/unification/slag.js
  15. 5
      kubejs/server_scripts/unification/sulfur.js
  16. 19
      kubejs/startup_scripts/unification/aluminum.js
  17. 11
      kubejs/startup_scripts/unification/brass.js
  18. 12
      kubejs/startup_scripts/unification/bronze.js
  19. 12
      kubejs/startup_scripts/unification/constantan.js
  20. 19
      kubejs/startup_scripts/unification/copper.js
  21. 12
      kubejs/startup_scripts/unification/electrum.js
  22. 12
      kubejs/startup_scripts/unification/enderium.js
  23. 19
      kubejs/startup_scripts/unification/gold.js
  24. 12
      kubejs/startup_scripts/unification/invar.js
  25. 19
      kubejs/startup_scripts/unification/iron.js
  26. 19
      kubejs/startup_scripts/unification/lead.js
  27. 12
      kubejs/startup_scripts/unification/lumium.js
  28. 12
      kubejs/startup_scripts/unification/netherite.js
  29. 19
      kubejs/startup_scripts/unification/nickel.js
  30. 12
      kubejs/startup_scripts/unification/rose_gold.js
  31. 12
      kubejs/startup_scripts/unification/signalum.js
  32. 19
      kubejs/startup_scripts/unification/silver.js
  33. 12
      kubejs/startup_scripts/unification/steel.js
  34. 19
      kubejs/startup_scripts/unification/tin.js
  35. 19
      kubejs/startup_scripts/unification/uranium.js
  36. 17
      kubejs/startup_scripts/unification/zinc.js
  37. 13
      mods/almost-unified.pw.toml

@ -0,0 +1,27 @@
{
"ignoredRecipeTypes": [],
"ignoredRecipes": [],
"defaultDuplicateRules": {
"ignoredFields": [
"conditions",
"group"
],
"rules": {
"cookingtime": "HigherRule",
"energy": "HigherRule",
"experience": "HigherRule"
}
},
"overrideDuplicateRules": {
"minecraft:crafting_shaped": {
"ignoredFields": [
"pattern",
"conditions",
"key",
"group"
],
"rules": {}
}
},
"strictMode": false
}

@ -0,0 +1,86 @@
{
"modPriorities": [
"minecraft",
"kubejs",
"create",
"thermal",
"immersiveengineering",
"tconstruct",
"malum"
],
"stoneStrata": [
"stone",
"nether",
"deepslate",
"granite",
"diorite",
"andesite"
],
"tags": [
"forge:{material}",
"forge:nuggets/{material}",
"forge:dusts/{material}",
"forge:gears/{material}",
"forge:gems/{material}",
"forge:ingots/{material}",
"forge:raw_materials/{material}",
"forge:ores/{material}",
"forge:plates/{material}",
"forge:rods/{material}",
"forge:wires/{material}",
"forge:storage_blocks/{material}",
"forge:storage_blocks/raw_{material}"
],
"materials": [
"aluminum",
"cobalt",
"copper",
"gold",
"iron",
"lead",
"netherite",
"nickel",
"obsidian",
"silver",
"tin",
"uranium",
"zinc",
"brass",
"bronze",
"constantan",
"electrum",
"enderium",
"invar",
"lumium",
"rose_gold",
"signalum",
"steel",
"apatite",
"bitumen",
"charcoal",
"cinnabar",
"coal",
"coal_coke",
"diamond",
"emerald",
"lapis",
"sulfur",
"sawdust",
"slag"
],
"priorityOverrides": {
"forge:coal_coke": "immersiveengineering",
"forge:storage_blocks/coal_coke": "immersiveengineering",
"forge:ingots/steel": "immersiveengineering",
"forge:nugget/steel": "immersiveengineering",
"forge:plates/steel": "immersiveengineering"
},
"ignoredTags": [],
"ignoredRecipeTypes": [],
"ignoredRecipes": [],
"itemsHidingJeiRei": true
}

@ -1,6 +0,0 @@
// priority: 0
onEvent("jei.hide.items", event => {
event.hide("thermal:coal_coke");
event.hide("thermal:coal_coke_block");
});

@ -1,6 +0,0 @@
// priority: 0
onEvent("jei.hide.items", event => {
event.hide("immersiveengineering:dust_wood");
event.hide("immersiveengineering:sawdust");
});

@ -1,8 +0,0 @@
// priority: 0
onEvent("jei.hide.items", event => {
for (let material of Object.values(global.unification))
for (let items of Object.values(material))
for (let i = 1; i < items.length; i++)
event.hide(items[i]);
});

@ -1,5 +0,0 @@
// priority: 0
onEvent("jei.hide.items", event => {
event.hide("immersiveengineering:slag");
});

@ -1,5 +0,0 @@
// priority: 0
onEvent("jei.hide.items", event => {
event.hide("immersiveengineering:dust_sulfur");
});

@ -1,9 +1,23 @@
// priority: 0
onEvent("recipes", event => {
for (let material of Object.values(global.unification))
if (material.ingot && material.dust)
event.recipes.createCrushing(material.dust[0], material.ingot[0]);
let ingot_to_dust_materials = [
// Minecraft
"iron", "gold", "copper", "netherite",
// Immersive Engineering
"aluminum", "uranium", "steel",
// Thermal
"tin", "lead", "silver", "nickel",
"bronze", "electrum", "invar", "constantan",
"signalum", "lumium", "enderium",
// Thermal Integration
"rose_gold"
];
for (let material of ingot_to_dust_materials) {
let ingot = AlmostUnified.getPreferredItemForTag(`forge:ingots/${material}`);
let dust = AlmostUnified.getPreferredItemForTag(`forge:dusts/${material}`);
event.recipes.createCrushing(dust, ingot);
}
for (let item of [ "apatite", "cinnabar", "niter", "sulfur" ])
event.recipes.createCrushing(`thermal:${item}_dust`, `thermal:${item}`);

@ -1,18 +1,9 @@
// priority: 0
onEvent("recipes", event => {
let material_to_nugget = {
zinc: "create:zinc_nugget",
tin: "thermal:tin_nugget",
lead: "thermal:lead_nugget",
silver: "thermal:silver_nugget",
nickel: "thermal:nickel_nugget",
aluminum: "immersiveengineering:nugget_aluminum",
uranium: "immersiveengineering:nugget_uranium",
};
for (let [material, nugget] of Object.entries(material_to_nugget)) {
event.smelting(`6x ${nugget}`, `malum:${material}_node`).xp(0.25);
event.blasting(`6x ${nugget}`, `malum:${material}_node`).xp(0.25);
for (let material of [ "zinc", "tin", "lead", "silver", "nickel", "aluminum", "uranium" ]) {
let nugget = AlmostUnified.getPreferredItemForTag(`forge:nuggets/${material}`);
event.smelting(nugget.withCount(6), `malum:${material}_node`).xp(0.25);
event.blasting(nugget.withCount(6), `malum:${material}_node`).xp(0.25);
}
});

@ -1,13 +0,0 @@
// priority: 0
onEvent("recipes", event => {
event.remove({ input: "thermal:coal_coke" });
event.remove({ output: "thermal:coal_coke" });
event.remove({ input: "thermal:coal_coke_block" });
event.remove({ output: "thermal:coal_coke_block" });
});
onEvent("item.tags", event => {
event.removeAllTagsFrom("thermal:coal_coke");
event.removeAllTagsFrom("thermal:coal_coke_block");
});

@ -27,19 +27,19 @@ onEvent("recipes", event => {
"signalum", "lumium", "enderium",
];
function get(material, shape) { return global.unification[material][shape][0]; }
function plate(material) { return AlmostUnified.getPreferredItemForTag(`forge:plates/${material}`); }
for (let material of toHammer)
event.shapeless(get(material, "plate"),
[ get(material, "ingot"), { item: "immersiveengineering:hammer" } ]);
event.shapeless(plate(material),
[ `#forge:ingots/${material}`, { item: "immersiveengineering:hammer" } ]);
for (let material of toMetalPress)
event.recipes.immersiveengineeringMetalPress(get(material, "plate"),
get(material, "ingot"), "immersiveengineering:mold_plate");
event.recipes.immersiveengineeringMetalPress(plate(material),
`#forge:ingots/${material}`, "immersiveengineering:mold_plate");
for (let material of toMultiservoPress)
event.recipes.thermal.press(get(material, "plate"), get(material, "ingot"));
event.recipes.thermal.press(plate(material), `#forge:ingots/${material}`);
for (let material of toMechanicalPress)
event.recipes.createPressing(get(material, "plate"), get(material, "ingot"));
event.recipes.createPressing(plate(material), `#forge:ingots/${material}`);
});

@ -1,9 +0,0 @@
// priority: 0
onEvent("recipes", event => {
event.remove({ id: "immersiveengineering:crafting/sawdust" });
});
onEvent("item.tags", event => {
event.removeAllTagsFrom("immersiveengineering:dust_wood");
});

@ -1,17 +0,0 @@
// priority: 0
onEvent("recipes", event => {
for (let material of Object.values(global.unification))
for (let items of Object.values(material))
for (let i = 0; i < items.length; i++) {
event.replaceInput({ }, items[i], items[0], true);
event.replaceOutput({ }, items[i], items[0], true);
}
});
onEvent("item.tags", event => {
for (let material of Object.values(global.unification))
for (let items of Object.values(material))
for (let i = 1; i < items.length; i++)
event.removeAllTagsFrom(items[i]);
});

@ -1,9 +0,0 @@
// priority: 0
onEvent("item.tags", event => {
event.removeAllTagsFrom("immersiveengineering:slag");
});
onEvent("recipes", event => {
event.replaceInput({ id: "immersiveengineering:crafting/concrete2" }, "immersiveengineering:slag", "thermal:slag");
});

@ -1,5 +0,0 @@
// priority: 0
onEvent("item.tags", event => {
event.removeAllTagsFrom("immersiveengineering:dust_sulfur");
});

@ -1,19 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.aluminum = {
nugget: [ "immersiveengineering:nugget_aluminum" ],
ingot: [ "immersiveengineering:ingot_aluminum" ],
block: [ "immersiveengineering:storage_aluminum" ],
ore: [ "immersiveengineering:ore_aluminum" ],
deep_ore: [ "immersiveengineering:deepslate_ore_aluminum" ],
raw: [ "immersiveengineering:raw_aluminum" ],
raw_block: [ "immersiveengineering:raw_block_aluminum" ],
crushed: [ "create:crushed_aluminum_ore" ],
dust: [ "immersiveengineering:dust_aluminum" ],
plate: [ "immersiveengineering:plate_aluminum" ],
fluid: [ "tconstruct:molten_aluminum" ],
};

@ -1,11 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.brass = {
nugget: [ "create:brass_nugget" ],
ingot: [ "create:brass_ingot" ],
block: [ "create:brass_block" ],
plate: [ "create:brass_sheet" ],
fluid: [ "tconstruct:molten_brass" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.bronze = {
nugget: [ "thermal:bronze_nugget" ],
ingot: [ "thermal:bronze_ingot" ],
block: [ "thermal:bronze_block" ],
dust: [ "thermal:bronze_dust" ],
plate: [ "thermal:bronze_plate" ],
fluid: [ "tconstruct:molten_bronze" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.constantan = {
nugget: [ "thermal:constantan_nugget", "immersiveengineering:nugget_constantan" ],
ingot: [ "thermal:constantan_ingot", "immersiveengineering:ingot_constantan" ],
block: [ "thermal:constantan_block", "immersiveengineering:storage_constantan" ],
dust: [ "thermal:constantan_dust", "immersiveengineering:dust_constantan" ],
plate: [ "thermal:constantan_plate", "immersiveengineering:plate_constantan" ],
fluid: [ "tconstruct:molten_constantan" ],
};

@ -1,19 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.copper = {
nugget: [ "create:copper_nugget", "thermal:copper_nugget", "immersiveengineering:nugget_copper", "tconstruct:copper_nugget", "malum:copper_nugget" ],
ingot: [ "minecraft:copper_ingot" ],
block: [ "minecraft:copper_block" ],
ore: [ "minecraft:copper_ore" ],
deep_ore: [ "minecraft:deepslate_copper_ore" ],
raw: [ "minecraft:raw_copper" ],
raw_block: [ "minecraft:raw_copper_block" ],
crushed: [ "create:crushed_copper_ore" ],
dust: [ "thermal:copper_dust", "immersiveengineering:dust_copper" ],
plate: [ "create:copper_sheet", "thermal:copper_plate", "immersiveengineering:plate_copper" ],
fluid: [ "tconstruct:molten_copper" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.electrum = {
nugget: [ "thermal:electrum_nugget", "immersiveengineering:nugget_electrum" ],
ingot: [ "thermal:electrum_ingot", "immersiveengineering:ingot_electrum" ],
block: [ "thermal:electrum_block", "immersiveengineering:storage_electrum" ],
dust: [ "thermal:electrum_dust", "immersiveengineering:dust_electrum" ],
plate: [ "thermal:electrum_plate", "immersiveengineering:plate_electrum" ],
fluid: [ "tconstruct:molten_electrum" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.enderium = {
nugget: [ "thermal:enderium_nugget" ],
ingot: [ "thermal:enderium_ingot" ],
block: [ "thermal:enderium_block" ],
dust: [ "thermal:enderium_dust" ],
plate: [ "thermal:enderium_plate" ],
fluid: [ "tconstruct:molten_enderium" ],
};

@ -1,19 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.gold = {
nugget: [ "minecraft:gold_nugget" ],
ingot: [ "minecraft:gold_ingot" ],
block: [ "minecraft:gold_block" ],
ore: [ "minecraft:gold_ore" ],
deep_ore: [ "minecraft:deepslate_gold_ore" ],
raw: [ "minecraft:raw_gold" ],
raw_block: [ "minecraft:raw_gold_block" ],
crushed: [ "create:crushed_gold_ore" ],
dust: [ "thermal:gold_dust", "immersiveengineering:dust_gold" ],
plate: [ "create:golden_sheet", "thermal:gold_plate", "immersiveengineering:plate_gold" ],
fluid: [ "tconstruct:molten_gold" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.invar = {
nugget: [ "thermal:invar_nugget" ],
ingot: [ "thermal:invar_ingot" ],
block: [ "thermal:invar_block" ],
dust: [ "thermal:invar_dust" ],
plate: [ "thermal:invar_plate" ],
fluid: [ "tconstruct:molten_invar" ],
};

@ -1,19 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.iron = {
nugget: [ "minecraft:iron_nugget" ],
ingot: [ "minecraft:iron_ingot" ],
block: [ "minecraft:iron_block" ],
ore: [ "minecraft:iron_ore" ],
deep_ore: [ "minecraft:deepslate_iron_ore" ],
raw: [ "minecraft:raw_iron" ],
raw_block: [ "minecraft:raw_iron_block" ],
crushed: [ "create:crushed_iron_ore" ],
dust: [ "thermal:iron_dust", "immersiveengineering:dust_iron" ],
plate: [ "create:iron_sheet", "thermal:iron_plate", "immersiveengineering:plate_iron" ],
fluid: [ "tconstruct:molten_iron" ],
};

@ -1,19 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.lead = {
nugget: [ "thermal:lead_nugget", "immersiveengineering:nugget_lead" ],
ingot: [ "thermal:lead_ingot", "immersiveengineering:ingot_lead" ],
block: [ "thermal:lead_block", "immersiveengineering:storage_lead" ],
ore: [ "thermal:lead_ore", "immersiveengineering:ore_lead" ],
deep_ore: [ "thermal:deepslate_lead_ore", "immersiveengineering:deepslate_ore_lead" ],
raw: [ "thermal:raw_lead", "immersiveengineering:raw_lead" ],
raw_block: [ "thermal:raw_lead_block", "immersiveengineering:raw_block_lead" ],
crushed: [ "create:crushed_lead_ore" ],
dust: [ "thermal:lead_dust", "immersiveengineering:dust_lead" ],
plate: [ "thermal:lead_plate", "immersiveengineering:plate_lead" ],
fluid: [ "tconstruct:molten_lead" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.lumium = {
nugget: [ "thermal:lumium_nugget" ],
ingot: [ "thermal:lumium_ingot" ],
block: [ "thermal:lumium_block" ],
dust: [ "thermal:lumium_dust" ],
plate: [ "thermal:lumium_plate" ],
fluid: [ "tconstruct:molten_lumium" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.netherite = {
nugget: [ "thermal:netherite_nugget", "tconstruct:netherite_nugget" ],
ingot: [ "minecraft:netherite_ingot" ],
block: [ "minecraft:netherite_block" ],
dust: [ "thermal:netherite_dust" ],
plate: [ "thermal:netherite_plate" ],
fluid: [ "tconstruct:molten_netherite" ],
};

@ -1,19 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.nickel = {
nugget: [ "thermal:nickel_nugget", "immersiveengineering:nugget_nickel" ],
ingot: [ "thermal:nickel_ingot", "immersiveengineering:ingot_nickel" ],
block: [ "thermal:nickel_block", "immersiveengineering:storage_nickel" ],
ore: [ "thermal:nickel_ore", "immersiveengineering:ore_nickel" ],
deep_ore: [ "thermal:deepslate_nickel_ore", "immersiveengineering:deepslate_ore_nickel" ],
raw: [ "thermal:raw_nickel", "immersiveengineering:raw_nickel" ],
raw_block: [ "thermal:raw_nickel_block", "immersiveengineering:raw_block_nickel" ],
crushed: [ "create:crushed_nickel_ore" ],
dust: [ "thermal:nickel_dust", "immersiveengineering:dust_nickel" ],
plate: [ "thermal:nickel_plate", "immersiveengineering:plate_nickel" ],
fluid: [ "tconstruct:molten_nickel" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.rose_gold = {
nugget: [ "thermal:rose_gold_nugget", "tconstruct:rose_gold_nugget" ],
ingot: [ "thermal:rose_gold_ingot", "tconstruct:rose_gold_ingot" ],
block: [ "thermal:rose_gold_block", "tconstruct:rose_gold_block" ],
dust: [ "thermal:rose_gold_dust" ],
plate: [ "thermal:rose_gold_plate" ],
fluid: [ "tconstruct:molten_rose_gold" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.signalum = {
nugget: [ "thermal:signalum_nugget" ],
ingot: [ "thermal:signalum_ingot" ],
block: [ "thermal:signalum_block" ],
dust: [ "thermal:signalum_dust" ],
plate: [ "thermal:signalum_plate" ],
fluid: [ "tconstruct:molten_signalum" ],
};

@ -1,19 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.silver = {
nugget: [ "thermal:silver_nugget", "immersiveengineering:nugget_silver" ],
ingot: [ "thermal:silver_ingot", "immersiveengineering:ingot_silver" ],
block: [ "thermal:silver_block", "immersiveengineering:storage_silver" ],
ore: [ "thermal:silver_ore", "immersiveengineering:ore_silver" ],
deep_ore: [ "thermal:deepslate_silver_ore", "immersiveengineering:deepslate_ore_silver" ],
raw: [ "thermal:raw_silver", "immersiveengineering:raw_silver" ],
raw_block: [ "thermal:raw_silver_block", "immersiveengineering:raw_block_silver" ],
crushed: [ "create:crushed_silver_ore" ],
dust: [ "thermal:silver_dust", "immersiveengineering:dust_silver" ],
plate: [ "thermal:silver_plate", "immersiveengineering:plate_silver" ],
fluid: [ "tconstruct:molten_silver" ],
};

@ -1,12 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.steel = {
nugget: [ "immersiveengineering:nugget_steel", "thermal:steel_nugget" ],
ingot: [ "immersiveengineering:ingot_steel", "thermal:steel_ingot" ],
block: [ "immersiveengineering:storage_steel", "thermal:steel_block" ],
dust: [ "immersiveengineering:dust_steel", "thermal:steel_dust" ],
plate: [ "immersiveengineering:plate_steel", "thermal:steel_plate" ],
fluid: [ "tconstruct:molten_steel" ],
};

@ -1,19 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.tin = {
nugget: [ "thermal:tin_nugget" ],
ingot: [ "thermal:tin_ingot" ],
block: [ "thermal:tin_block" ],
ore: [ "thermal:tin_ore" ],
deep_ore: [ "thermal:deepslate_tin_ore" ],
raw: [ "thermal:raw_tin" ],
raw_block: [ "thermal:raw_tin_block" ],
crushed: [ "create:crushed_tin_ore" ],
dust: [ "thermal:tin_dust" ],
plate: [ "thermal:tin_plate" ],
fluid: [ "tconstruct:molten_tin" ],
};

@ -1,19 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.uranium = {
nugget: [ "immersiveengineering:nugget_uranium" ],
ingot: [ "immersiveengineering:ingot_uranium" ],
block: [ "immersiveengineering:storage_uranium" ],
ore: [ "immersiveengineering:ore_uranium" ],
deep_ore: [ "immersiveengineering:deepslate_ore_uranium" ],
raw: [ "immersiveengineering:raw_uranium" ],
raw_block: [ "immersiveengineering:raw_block_uranium" ],
crushed: [ "create:crushed_uranium_ore" ],
dust: [ "immersiveengineering:dust_uranium" ],
plate: [ "immersiveengineering:plate_uranium" ],
fluid: [ "tconstruct:molten_uranium" ],
};

@ -1,17 +0,0 @@
// priority: 200
global.unification = global.unification || { };
global.unification.zinc = {
nugget: [ "create:zinc_nugget" ],
ingot: [ "create:zinc_ingot" ],
block: [ "create:zinc_block" ],
ore: [ "create:zinc_ore" ],
deep_ore: [ "create:deepslate_zinc_ore" ],
raw: [ "create:raw_zinc" ],
raw_block: [ "create:raw_zinc_block" ],
crushed: [ "create:crushed_zinc_ore" ],
fluid: [ "tconstruct:molten_zinc" ],
};

@ -0,0 +1,13 @@
name = "Almost Unified"
filename = "almostunified-forge-1.18.2-0.2.0.jar"
side = "both"
[download]
url = "https://cdn.modrinth.com/data/sdaSaQEz/versions/qYNUAgzM/almostunified-forge-1.18.2-0.2.0.jar"
hash-format = "sha1"
hash = "3c3fba6bff9b4f2ee5f3de56413f4874f499e021"
[update]
[update.modrinth]
mod-id = "sdaSaQEz"
version = "qYNUAgzM"
Loading…
Cancel
Save