Added mod files

This commit is contained in:
Jacob Vinding
2025-12-26 21:38:55 +01:00
parent 64c4d60c47
commit c4ad0f3e2e
5039 changed files with 894558 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
## Addon Compatibility Scripts for CABIN
These are for mods that are not installed by default, sections of this script will enable if the applicable mod is installed.
With how many create addons there are, it would not be feasible for me to add compat for them all by myself.
If you have a create addon that you think could fit in the general theme/tone/whathaveyou of CABIN, make a PR with it. Custom textures can also be submitted, if you wish.
```js
if (Platform.isLoaded('YourModID')) { // Mod ID goes here
ServerEvents.recipes(event => {
// Here's a machine recipe example. The code for these functions are defined in _helper.js
// Note that machine recipes will remove all default recipes for the output item
// Valid machine materials are andesite, copper, gold, brass, zinc, lead, invar, enderium, and fluix
(material)Machine(event,Item.of('minecraft:dirt', 1)) // Recipes without an additional item will be stonecutting (saw) recipes
(material)Machine(event,Item.of('minecraft:dispenser', 2), 'minecraft:bow') // Recipes with one are deployer recipes
//You can also use createMachine() to create a machine recipe using an item other then the normal machine items
//This code will create a machine crafting recipe for an enchanting table using a "diamond block" machine with a book as the second material
createMachine('minecraft:diamond_block', event, 'minecraft:enchanting_table', 'minecraft:book')
// Shapeless recipe example
event.shapeless("create:creative_crate", ["minecraft:redstone_ore", "minecraft:lapis_ore"])
// Please refer to the kubejs wiki for other recipe types
// Also note that you can easily get an item's ID with /kjs hand
// https://wiki.latvian.dev/books/kubejs/page/recipes
})
}

View File

@@ -0,0 +1,15 @@
if(Platform.isLoaded("create_connected")) {
ServerEvents.recipes(event => {
event.remove({ id: "create_connected:sequenced_assembly/control_chip" })
event.remove({ id: "create_connected:crafting/kinetics/sequenced_pulse_generator" })
event.shapeless("create_connected:sequenced_pulse_generator", ["projectred_core:platformed_plate", "create:electron_tube"])
.id("kubejs:compat/create_connected/sequenced_pulse_generator_manual_only")
event.recipes.create.deploying("create_connected:sequenced_pulse_generator", ["projectred_core:platformed_plate", "create:electron_tube"])
})
ServerEvents.tags("item", event => {
event.get("kubejs:sellable_discs")
.add("create_connected:music_disk_elevator")
.add("create_connected:music_disk_interlude")
})
}

View File

@@ -0,0 +1,16 @@
if(Platform.isLoaded("create_enchantment_industry")) {
ServerEvents.recipes(event => {
zincMachine(event, Item.of("create_enchantment_industry:disenchanter", 1), "#create:sandpaper")
zincMachine(event, Item.of("create_enchantment_industry:printer", 1), "#forge:storage_blocks/lapis")
event.remove({ id:"create_enchantment_industry:mixing/hyper_experience"})
event.recipes.create.mixing(Fluid.of("create_enchantment_industry:hyper_experience", 10), [
"#forge:dusts/enderium",
"minecraft:lapis_lazuli",
"minecraft:glow_ink_sac",
Fluid.of("create_enchantment_industry:experience", 100).toJson()
]).superheated()
event.replaceInput( {id: "create_enchantment_industry:crafting/enchanting_guide"}, "create:sturdy_sheet", "create:schedule" )
})
}

View File

@@ -0,0 +1,7 @@
if(Platform.isLoaded("create_hypertube")) {
ServerEvents.recipes(event => {
brassMachine(event, Item.of("create_hypertube:hypertube_entrance", 1), "thermal:cured_rubber")
event.replaceInput( {id: "create_hypertube:crafting/hypertube"}, "create:brass_sheet", "#forge:plates/brass" )
})
}

View File

@@ -0,0 +1,6 @@
if (Platform.isLoaded("create_power_loader")) {
ServerEvents.recipes(event => {
andesiteMachine(event,Item.of("create_power_loader:empty_andesite_chunk_loader", 1), "minecraft:ghast_tear")
brassMachine(event,Item.of("create_power_loader:empty_brass_chunk_loader", 1), "minecraft:nether_star")
})
}

View File

@@ -0,0 +1,88 @@
// Create: Crafts and Additions
if (Platform.isLoaded("createaddition")) {
ServerEvents.recipes(event => {
andesiteMachine(event, Item.of("createaddition:rolling_mill", 1), "create:shaft")
brassMachine(event, Item.of("createaddition:portable_energy_interface", 2))
brassMachine(event, Item.of("createaddition:tesla_coil", 1), "createaddition:copper_spool")
brassMachine(event, Item.of("createaddition:modular_accumulator", 1), "thermal:energy_cell_frame")
event.replaceOutput({}, "#forge:nuggets/electrum", "createaddition:electrum_nugget")
event.replaceOutput({}, "#forge:ingots/electrum", "createaddition:electrum_ingot")
event.replaceOutput({}, "#forge:plates/electrum", "createaddition:electrum_sheet")
event.replaceOutput({}, "#forge:storage_blocks/electrum", "createaddition:electrum_block")
event.replaceOutput({}, "#forge:dusts/diamond", "createaddition:diamond_grit")
// event.replaceOutput({ id: "kubejs:machines/smelter/electrum_ingot" }, "thermal:electrum_ingot", "createaddition:electrum_ingot")
// Duplicate Electrum Recipes
event.remove({ id: "createaddition:crafting/electrum_nugget" })
event.remove({ id: "createaddition:crafting/electrum"})
event.remove({ id: "createaddition:crafting/electrum_ingot"})
event.remove({ id: "createaddition:crafting/electrum_block" })
// Motor & Alternator
invarMachine(event, Item.of("createaddition:electric_motor", 1), "createaddition:tesla_coil")
enderiumMachine(event, Item.of("createaddition:alternator", 1), "createaddition:electric_motor")
// Remove capacitors
event.remove({ output: "createaddition:capacitor" })
// Redstone Relay
event.remove({ output: "createaddition:redstone_relay" })
event.shapeless("createaddition:redstone_relay", ["projectred_core:platformed_plate", "createaddition:connector"])
.id("kubejs:compat/createaddition/redstone_relay_manual_only")
event.recipes.create.deploying("createaddition:redstone_relay", ["projectred_core:platformed_plate", "createaddition:connector"])
// Remove heated basin ingot recipes
event.remove({ id: "createaddition:mixing/electrum" })
// Connectors
event.remove({ id: "createaddition:crafting/small_connector_copper" })
event.remove({ id: "createaddition:crafting/large_connector_gold" })
event.remove({ id: "createaddition:crafting/large_connector_electrum" })
event.recipes.createSequencedAssembly(
[Item.of("createaddition:connector", 4)],
"create:andesite_alloy",
[
event.recipes.create.deploying("kubejs:incomplete_connector", ["kubejs:incomplete_connector", "#forge:rods/copper"]),
event.recipes.create.deploying("kubejs:incomplete_connector", ["kubejs:incomplete_connector", "#forge:plates/iron"]),
event.recipes.create.pressing("kubejs:incomplete_connector", "kubejs:incomplete_connector")
]
).transitionalItem("kubejs:incomplete_connector").loops(1)
event.recipes.createSequencedAssembly(
[Item.of("createaddition:large_connector", 1)],
"create:andesite_alloy",
[
event.recipes.create.deploying("kubejs:incomplete_connector", ["kubejs:incomplete_connector", "#forge:rods/gold"]),
event.recipes.create.deploying("kubejs:incomplete_connector", ["kubejs:incomplete_connector", "#forge:plates/iron"]),
event.recipes.create.pressing("kubejs:incomplete_connector", "kubejs:incomplete_connector"),
event.recipes.create.deploying("kubejs:incomplete_connector", ["kubejs:incomplete_connector", "#forge:plates/iron"]),
event.recipes.create.pressing("kubejs:incomplete_connector", "kubejs:incomplete_connector")
]
).transitionalItem("kubejs:incomplete_large_connector").loops(1)
// Bioethanol & Seed Oil in the Compression Dynamo
event.recipes.thermal.compression_fuel(Fluid.of("createaddition:bioethanol", 1000)).energy(1000000)
event.recipes.thermal.compression_fuel(Fluid.of("createaddition:seed_oil", 1000)).energy(30000)
})
ServerEvents.tags("item", event => {
event.get("kubejs:cake_slices")
.add("create_central_kitchen:chocolate_cake_slice")
.add("create_central_kitchen:honey_cake_slice")
event.add("forge:storage_blocks/electrum", "createaddition:electrum_block")
event.add("tconstruct:anvil_metal", "createaddition:electrum_block")
})
ServerEvents.tags("block", event => {
event.add("minecraft:mineable/pickaxe", "createaddition:electrum_block")
event.add("minecraft:needs_iron_tool", "createaddition:electrum_block")
event.add("minecraft:beacon_base_blocks", "createaddition:electrum_block")
event.add("tconstruct:anvil_metal", "createaddition:electrum_block")
})
ServerEvents.blockLootTables(event => {
event.addSimpleBlock("createaddition:electrum_block")
})
}

View File

@@ -0,0 +1,58 @@
// Create Encased
if (Platform.isLoaded("createcasing")) {
ServerEvents.recipes(event => {
// Cleanup
event.remove({ input: "minecraft:iron_block", mod: "createcasing" }) // Removes Presses
event.remove({ input: "create:whisk", mod: "createcasing" }) // Removes Mixers
event.remove({ input: "#forge:stripped_logs", mod: "createcasing" }) // Removes Wooden Shafts
event.remove({ input: "create:brass_ingot", mod: "createcasing" }) // Removes Brass Shaft
event.remove({ input: "minecraft:glass", mod: "createcasing" }) // Removes Glass Shaft
// Mixers
let mixer = (output, casing) => {
createMachine("create:mechanical_mixer", event, output, casing)
}
mixer("createcasing:brass_mixer", "create:brass_casing")
mixer("createcasing:copper_mixer", "create:copper_casing")
mixer("createcasing:industrial_iron_mixer", "create:industrial_iron_block")
mixer("createcasing:railway_mixer", "create:railway_casing")
mixer("createcasing:creative_mixer", "createcasing:creative_casing")
// Presses
let press = (output, casing) => {
createMachine("create:mechanical_press", event, output, casing)
}
press("createcasing:brass_press", "create:brass_casing")
press("createcasing:copper_press", "create:copper_casing")
press("createcasing:industrial_iron_press", "create:industrial_iron_block")
press("createcasing:railway_press", "create:railway_casing")
press("createcasing:creative_press", "createcasing:creative_casing")
// Adjustable Chain Gearshifts
event.replaceInput(
{ input: "create:electron_tube", mod: "createcasing" },
"create:electron_tube",
"minecraft:redstone"
)
event.remove({ id: "createcasing:sequenced_assembly/chorium_ingot" })
event.recipes.createSequencedAssembly([
"createcasing:chorium_ingot",
], "create:polished_rose_quartz", [
// event.recipes.create.filling("createcasing:processing_chorium", ["createcasing:processing_chorium", Fluid.of("kubejs:matrix", 125)]),
event.custom({
type: "create:filling",
ingredients: [
{ item: "createcasing:processing_chorium" },
{ type: "fluid_stack", amount: 125, fluid: "kubejs:matrix" },
],
results: [Item.of("createcasing:processing_chorium")],
}),
event.recipes.create.deploying("createcasing:processing_chorium", ["createcasing:processing_chorium", "minecraft:popped_chorus_fruit"]),
event.recipes.create.pressing("createcasing:processing_chorium", "createcasing:processing_chorium")
]).loops(4)
.transitionalItem("createcasing:processing_chorium")
.id("kubejs:compat/createcasing/chorium_ingot")
})
}

View File

@@ -0,0 +1,118 @@
// Create Diesel Generators
if (Platform.isLoaded("createdieselgenerators")) {
ServerEvents.recipes(event => {
// Pumpjack Output
event.replaceOutput({ output: "createdieselgenerators:crude_oil" },
"createdieselgenerators:crude_oil",
"thermal:crude_oil")
// Duplicated Oils
event.remove({ id: "createdieselgenerators:mixing/biodiesel" })
event.remove({ id: "createdieselgenerators:compacting/plant_oil" })
event.remove({ id: "createdieselgenerators:distillation/crude_oil" }) // Distillation outputs can"t be changed with scripts
// Crude Distilation
event.custom({
"type": "createdieselgenerators:distillation",
"ingredients": [
{ "fluid": "thermal:crude_oil", "amount": 200 }
],
"heatRequirement": "heated",
"processingTime": 200,
"results": [
{ "fluid": "thermal:heavy_oil", "amount": 80 },
{ "fluid": "thermal:light_oil", "amount": 120 },
]
})
// Crude Extraction
copperMachine(event, Item.of("createdieselgenerators:pumpjack_hole", 1))
invarMachine(event, Item.of("createdieselgenerators:pumpjack_crank", 1), "create:zinc_block")
invarMachine(event, Item.of("createdieselgenerators:oil_scanner", 1), "ae2:charged_certus_quartz_crystal")
event.replaceInput({ id: "createdieselgenerators:crafting/pumpjack_bearing" },
"create:andesite_alloy",
"thermal:invar_ingot")
event.replaceInput({ id: "createdieselgenerators:crafting/pumpjack_head" },
"create:zinc_ingot",
"thermal:invar_ingot")
// Oil Engines
event.remove({ id: "createdieselgenerators:crafting/engine_piston" }) // This one uses a Shaft instead of an Iron Rod
event.remove({ id: "createdieselgenerators:crafting/diesel_engine" })
event.recipes.create.mechanical_crafting("createdieselgenerators:diesel_engine", [
" BLB ",
"PPSPP",
" BTB "], {
L: "createdieselgenerators:lighter",
P: "createdieselgenerators:engine_piston",
B: "create:brass_ingot",
S: "create:shaft",
T: "create:fluid_tank",
})
zincMachine(event, Item.of("createdieselgenerators:large_diesel_engine", 1), "createdieselgenerators:diesel_engine")
invarMachine(event, Item.of("createdieselgenerators:huge_diesel_engine", 1), "create:brass_block")
// Wooden Chips Patch
event.remove({ id: "createdieselgenerators:crafting/chip_wood_block" }),
event.shaped("createdieselgenerators:chip_wood_block", [
"CCC",
"CCC",
"CCC"], {
C: "createdieselgenerators:wood_chip" // Now uses 9 instead of 4 in order to prevent duping exploits
})
// Asphalt from Bucket
event.replaceInput({ id: "createdieselgenerators:crafting/asphalt_block" },
"createdieselgenerators:crude_oil_bucket",
"thermal:crude_oil_bucket")
})
CDGEvents.fuelTypes((event) => {
event.add("thermal:creosote").normalSpeed(64).normalStrength(2048).normalBurn(2)
.modularSpeed(32).modularStrength(3072).normalBurn(6)
.hugeSpeed(32).hugeStrength(3072).normalBurn(6)
.soundSpeed(3).burnerStrength(1).build();
event.add("thermal:heavy_oil").normalSpeed(64).normalStrength(2048).normalBurn(2)
.modularSpeed(96).modularStrength(6144).normalBurn(3)
.hugeSpeed(128).hugeStrength(12288).normalBurn(4)
.soundSpeed(3).burnerStrength(1).build();
event.add("thermal:light_oil").normalSpeed(64).normalStrength(3072).normalBurn(2)
.modularSpeed(128).modularStrength(6144).normalBurn(3)
.hugeSpeed(96).hugeStrength(6144).normalBurn(6)
.soundSpeed(3).burnerStrength(1).build();
event.add("thermal:refined_fuel").normalSpeed(64).normalStrength(4096).normalBurn(1)
.modularSpeed(128).modularStrength(8192).normalBurn(2)
.hugeSpeed(128).hugeStrength(16384).normalBurn(4)
.soundSpeed(3).burnerStrength(1).build();
event.add("thermal:tree_oil").normalSpeed(32).normalStrength(1024).normalBurn(1)
.modularSpeed(64).modularStrength(2048).normalBurn(2)
.hugeSpeed(64).hugeStrength(3072).normalBurn(6)
.soundSpeed(1).burnerStrength(1).build();
event.add("#forge:biofuel").normalSpeed(64).normalStrength(4096).normalBurn(3)
.modularSpeed(128).modularStrength(8192).normalBurn(6)
.hugeSpeed(128).hugeStrength(12288).normalBurn(12)
.soundSpeed(3).burnerStrength(1).build();
event.add("#forge:diesel").normalSpeed(64).normalStrength(2048).normalBurn(2)
.modularSpeed(96).modularStrength(6144).normalBurn(3)
.hugeSpeed(128).hugeStrength(12288).normalBurn(4)
.soundSpeed(3).burnerStrength(1).build();
event.add("#forge:gasoline").normalSpeed(64).normalStrength(2048).normalBurn(2)
.modularSpeed(32).modularStrength(3072).normalBurn(6)
.hugeSpeed(32).hugeStrength(3072).normalBurn(6)
.soundSpeed(3).burnerStrength(1).build();
event.add("#forge:ethanol").normalSpeed(64).normalStrength(3072).normalBurn(3)
.modularSpeed(96).modularStrength(6144).normalBurn(6)
.hugeSpeed(96).hugeStrength(6144).normalBurn(12)
.soundSpeed(2).burnerStrength(1).build();
event.add("#forge:gasoline").normalSpeed(64).normalStrength(3072).normalBurn(2)
.modularSpeed(128).modularStrength(6144).normalBurn(3)
.hugeSpeed(96).hugeStrength(6144).normalBurn(6)
.soundSpeed(3).burnerStrength(1).build();
event.add("#forge:plantoil").normalSpeed(32).normalStrength(1024).normalBurn(1)
.modularSpeed(64).modularStrength(2048).normalBurn(2)
.hugeSpeed(64).hugeStrength(3072).normalBurn(6)
.soundSpeed(1).burnerStrength(1).build();
});
}

View File

@@ -0,0 +1,52 @@
// Not loaded by default anymore.
if(Platform.isLoaded("forbidden_arcanus")) {
unregistered_axes.push("forbidden_arcanus:draco_arcanus_axe")
unregistered_axes.push("forbidden_arcanus:arcane_golden_axe")
unregistered_axes.push("forbidden_arcanus:reinforced_arcane_golden_axe")
wood_types.push("forbidden_arcanus:fungyss")
wood_types.push("forbidden_arcanus:aurum")
wood_types.push("forbidden_arcanus:edelwood")
ServerEvents.recipes(event => {
event.remove({ id: "forbidden_arcanus:edelwood_bucket" })
event.remove({ id: "forbidden_arcanus:edelwood_stick" })
event.shaped("3x forbidden_arcanus:edelwood_stick", [
"S",
"A",
"S"
], {
S: "forbidden_arcanus:edelwood_planks",
A: "minecraft:stick"
})
// Eternal stella
event.remove({ id: "forbidden_arcanus:eternal_stella" })
event.shaped("forbidden_arcanus:eternal_stella", [
"PEP",
"SDS",
"PEP"
], {
P: "forbidden_arcanus:xpetrified_orb",
E: "minecraft:emerald",
S: "forbidden_arcanus:stellarite_piece",
D: "rubber_duck:rubber_duck_item"
})
})
// Hephaestus forge recipes can only be modified using datapacks
// ServerEvents.highPriorityData(event => {
// event.addJson("forbidden_arcanus:hephaestus_forge/rituals/eternal_stella", {})
// event.addJson("kubejs:hephaestus_forge/rituals/eternal_stella", {
// "inputs": [
// { "item": "forbidden_arcanus:xpetrified_orb", "slot": 0 },
// { "item": "forbidden_arcanus:xpetrified_orb", "slot": 1 },
// { "item": "minecraft:emerald", "slot": 2 },
// { "item": "forbidden_arcanus:xpetrified_orb", "slot": 4 },
// { "item": "forbidden_arcanus:stellarite_piece", "slot": 5 }
// ],
// "hephaestus_forge_item": "rubber_duck:rubber_duck_item",
// "essences": { "aureal": 82, "blood": 1000, "souls": 1},
// "result": { "item": "forbidden_arcanus:eternal_stella", "count": 1 }
// })
// })
}

View File

@@ -0,0 +1,5 @@
if (Platform.isLoaded("integrated_stronghold")) {
ServerEvents.tags("item", event => {
event.get("kubejs:sellable_discs").add("integrated_stronghold:music_disc_sight", "integrated_stronghold:music_disc_forlorn");
})
}