init
This commit is contained in:
commit
d8d0e9d536
2567 changed files with 167778 additions and 0 deletions
|
|
@ -0,0 +1,141 @@
|
|||
/**
|
||||
* Compat for the computercraft addon Advanced Peripherals
|
||||
*/
|
||||
|
||||
const modid = "advancedperipherals"
|
||||
|
||||
if (Platform.isLoaded(modid) && Platform.isLoaded("computercraft")) {
|
||||
console.log("Advanced peripherals found, loading compat scripts...")
|
||||
ServerEvents.recipes(event => {
|
||||
const replaceRecipe = (output, shape, dictionary) => {
|
||||
const id = `${modid}:${output}`
|
||||
event.remove({ id: id })
|
||||
event.shaped(id, shape, dictionary)
|
||||
}
|
||||
|
||||
replaceRecipe("peripheral_casing", [
|
||||
"CMC",
|
||||
"SLS",
|
||||
"CMC"
|
||||
], {
|
||||
C: "computercraft:cable",
|
||||
M: "computercraft:wired_modem",
|
||||
S: "#gtceu:circuits/mv",
|
||||
L: "gtceu:mv_machine_hull"
|
||||
})
|
||||
|
||||
replaceRecipe("chat_box", [
|
||||
"BEB",
|
||||
"PCP",
|
||||
"ASA"
|
||||
], {
|
||||
B: "minecraft:book",
|
||||
E: "gtceu:mv_emitter",
|
||||
P: "minecraft:ender_pearl",
|
||||
C: `${modid}:peripheral_casing`,
|
||||
A: "minecraft:paper",
|
||||
S: "gtceu:mv_sensor"
|
||||
})
|
||||
|
||||
replaceRecipe("energy_detector", [
|
||||
"C C",
|
||||
"TPT",
|
||||
"C C"
|
||||
], {
|
||||
C: "gtceu:copper_single_cable",
|
||||
T: "gtceu:mv_transformer_1a",
|
||||
P: `${modid}:peripheral_casing`
|
||||
})
|
||||
|
||||
event.remove({ id: `${modid}:environment_detector` })
|
||||
const envDetectorRecipe = (plate) => {
|
||||
event.shaped(`${modid}:environment_detector`, [
|
||||
"PSP",
|
||||
"SCS",
|
||||
"DSD"
|
||||
], {
|
||||
P: plate,
|
||||
S: "gtceu:lv_sensor",
|
||||
C: `${modid}:peripheral_casing`,
|
||||
D: "minecraft:dirt"
|
||||
})
|
||||
}
|
||||
envDetectorRecipe("gtceu:nether_quartz_plate")
|
||||
envDetectorRecipe("gtceu:certus_quartz_plate")
|
||||
envDetectorRecipe("gtceu:quartzite_plate")
|
||||
|
||||
replaceRecipe("player_detector", [
|
||||
"OSO",
|
||||
"PCP",
|
||||
"MSM"
|
||||
], {
|
||||
O: "minecraft:observer",
|
||||
S: "gtceu:mv_sensor",
|
||||
P: "minecraft:ender_pearl",
|
||||
C: `${modid}:peripheral_casing`,
|
||||
M: "minecraft:smooth_stone"
|
||||
})
|
||||
|
||||
replaceRecipe("inventory_manager", [
|
||||
"WEW",
|
||||
"RPR",
|
||||
"FCF"
|
||||
], {
|
||||
W: "ae2:wireless_receiver",
|
||||
E: "minecraft:ender_pearl",
|
||||
R: "gtceu:hv_robot_arm",
|
||||
P: `${modid}:peripheral_casing`,
|
||||
F: "gtceu:hv_field_generator",
|
||||
C: "minecraft:chest"
|
||||
})
|
||||
|
||||
replaceRecipe("block_reader", [
|
||||
"PSP",
|
||||
"ECM",
|
||||
"PSP"
|
||||
], {
|
||||
P: "gtceu:steel_plate",
|
||||
S: "gtceu:steel_screw",
|
||||
E: "gtceu:mv_emitter",
|
||||
C: `${modid}:peripheral_casing`,
|
||||
M: "gtceu:mv_sensor"
|
||||
})
|
||||
|
||||
replaceRecipe("nbt_storage", [
|
||||
"PMP",
|
||||
"SRS",
|
||||
"PCP"
|
||||
], {
|
||||
P: "gtceu:steel_plate",
|
||||
M: "computercraft:wired_modem",
|
||||
S: "#gtceu:circuits/mv",
|
||||
R: `${modid}:peripheral_casing`,
|
||||
C: "minecraft:chest"
|
||||
})
|
||||
|
||||
replaceRecipe("geo_scanner", [
|
||||
"SPS",
|
||||
"CRC",
|
||||
"SDS"
|
||||
], {
|
||||
S: "gtceu:steel_screw",
|
||||
P: "gtceu:prospector.lv",
|
||||
C: "#gtceu:circuits/mv",
|
||||
R: `${modid}:peripheral_casing`,
|
||||
D: "minecraft:diamond"
|
||||
})
|
||||
|
||||
replaceRecipe("me_bridge", [
|
||||
"GIG",
|
||||
"SCS",
|
||||
"GTG"
|
||||
], {
|
||||
G: "ae2:fluix_glass_cable",
|
||||
I: "ae2:interface",
|
||||
S: "#gtceu:circuits/mv",
|
||||
C: `${modid}:peripheral_casing`,
|
||||
T: "ae2:pattern_provider"
|
||||
})
|
||||
})
|
||||
console.log("Advacned peripherals compat scripts successfully loaded!")
|
||||
} else { console.log("Advanced peripherals not found, skipping compat scripts. ") }
|
||||
416
kubejs/server_scripts/mods/optionalCompats/architects_palette.js
Normal file
416
kubejs/server_scripts/mods/optionalCompats/architects_palette.js
Normal file
|
|
@ -0,0 +1,416 @@
|
|||
/**
|
||||
*
|
||||
* Compatibility Script for Architect's Palette
|
||||
* Mainly removes Warping, but also adds various other recipes to GT machines.
|
||||
*
|
||||
*/
|
||||
|
||||
if (Platform.isLoaded("architects_palette")) {
|
||||
console.log("Architect's Palette found, loading compat script...")
|
||||
|
||||
LootJS.modifiers((event) => {
|
||||
event.addEntityLootModifier("minecraft:wither_skeleton").replaceLoot("architects_palette:withered_bone", "minecraft:bone", true);
|
||||
});
|
||||
|
||||
ServerEvents.recipes(event => {
|
||||
// Recipe Removal
|
||||
event.remove([
|
||||
{ id: "architects_palette:algal_blend" },
|
||||
{ id: "architects_palette:algal_blend" },
|
||||
{ id: "architects_palette:plating_block" },
|
||||
{ id: "architects_palette:tread_plating" },
|
||||
{ id: "architects_palette:nether_brass_blend" },
|
||||
{ id: "architects_palette:oracle_jelly" },
|
||||
{ id: "architects_palette:wardstone_blend" },
|
||||
{ id: "architects_palette:cerebral_plate" },
|
||||
{ id: "architects_palette:sunmetal_blend" },
|
||||
{ id: "architects_palette:hazard_sign" },
|
||||
{ id: "architects_palette:entwine_rod" },
|
||||
{ id: "architects_palette:withered_bone" },
|
||||
])
|
||||
|
||||
// For some reason the smelting recipe wouldn't go away so I went with the more direct approach.
|
||||
event.remove({ output: "architects_palette:wardstone_brick" })
|
||||
|
||||
event.remove({ type: "architects_palette:warping" })
|
||||
|
||||
event.replaceInput(
|
||||
{ input: "architects_palette:withered_bone" },
|
||||
"architects_palette:withered_bone",
|
||||
"kubejs:wither_bone"
|
||||
)
|
||||
|
||||
// Mixer Recipes
|
||||
event.recipes.gtceu.mixer("algal_blend")
|
||||
.itemInputs("minecraft:clay_ball","minecraft:kelp")
|
||||
.itemOutputs("4x architects_palette:algal_blend")
|
||||
.duration(40)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.mixer("4x_algal_blend")
|
||||
.itemInputs("minecraft:clay","2x minecraft:kelp")
|
||||
.itemOutputs("16x architects_palette:algal_blend")
|
||||
.duration(40)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.mixer("myonite")
|
||||
.itemInputs("4x minecraft:stone","#forge:mushrooms")
|
||||
.itemOutputs("8x architects_palette:myonite")
|
||||
.duration(40)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.mixer("olivestone_bricks")
|
||||
.itemInputs("8x minecraft:stone_bricks")
|
||||
.inputFluids("gtceu:green_dye 72")
|
||||
.itemOutputs("8x architects_palette:olivestone_bricks")
|
||||
.duration(40)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.mixer("sunmetal_blend")
|
||||
.itemInputs("minecraft:soul_sand", "gtceu:tiny_gold_dust")
|
||||
.itemOutputs("4x architects_palette:sunmetal_blend")
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
event.recipes.gtceu.mixer("sunmetal_blend_9x")
|
||||
.itemInputs("9x minecraft:soul_sand", "gtceu:gold_dust")
|
||||
.itemOutputs("36x architects_palette:sunmetal_blend")
|
||||
.duration(100)
|
||||
.EUt(8)
|
||||
|
||||
event.recipes.gtceu.mixer("nether_brass_blend")
|
||||
.itemInputs("minecraft:soul_sand", "gtceu:copper_dust", "gtceu:tiny_iron_dust")
|
||||
.itemOutputs("4x architects_palette:nether_brass_blend")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.mixer("nether_brass_blend_9x")
|
||||
.itemInputs("9x minecraft:soul_sand", "9x gtceu:copper_dust", "gtceu:iron_dust")
|
||||
.itemOutputs("36x architects_palette:nether_brass_blend")
|
||||
.duration(100)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.mixer("oracle_jelly")
|
||||
.itemInputs("minecraft:chorus_fruit", "minecraft:sugar")
|
||||
.itemOutputs("4x architects_palette:oracle_jelly")
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
event.recipes.gtceu.mixer("oracle_bricks")
|
||||
.itemInputs("8x architects_palette:oracle_bricks")
|
||||
.inputFluids("gtceu:black_dye 72")
|
||||
.itemOutputs("8x architects_palette:dark_oracle_bricks")
|
||||
.duration(40)
|
||||
.EUt(7)
|
||||
|
||||
// Alloy Smelter Recipes
|
||||
event.recipes.gtceu.alloy_smelter("wardstone_brick")
|
||||
.itemInputs("minecraft:soul_sand", "minecraft:gold_nugget")
|
||||
.itemOutputs("4x architects_palette:sunmetal_brick")
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
event.recipes.gtceu.alloy_smelter("sunmetal_brick")
|
||||
.itemInputs("minecraft:lapis_lazuli", "minecraft:nether_wart")
|
||||
.itemOutputs("4x architects_palette:wardstone_brick")
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
event.recipes.gtceu.alloy_smelter("cerebral_plate")
|
||||
.itemInputs("minecraft:tuff", "#minecraft:coals")
|
||||
.itemOutputs("4x architects_palette:cerebral_plate")
|
||||
.duration(20)
|
||||
.EUt(8)
|
||||
|
||||
// Compressor Recipes
|
||||
event.recipes.gtceu.compressor("agal_bricks")
|
||||
.itemInputs("4x architects_palette:algal_brick")
|
||||
.itemOutputs("architects_palette:algal_bricks")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("cerebral_block")
|
||||
.itemInputs("4x architects_palette:cerebral_plate")
|
||||
.itemOutputs("8x architects_palette:cerebral_block")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("oracle_block")
|
||||
.itemInputs("4x architects_palette:oracle_jelly")
|
||||
.itemOutputs("8x architects_palette:oracle_block")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("rotten_flesh_block")
|
||||
.itemInputs("9x minecraft:rotten_flesh")
|
||||
.itemOutputs("architects_palette:rotten_flesh_block")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("unobtanium_block")
|
||||
.itemInputs("4x architects_palette:unobtanium")
|
||||
.itemOutputs("architects_palette:unobtanium_block")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("sunmetal_block")
|
||||
.itemInputs("4x architects_palette:sunmetal_brick")
|
||||
.itemOutputs("4x architects_palette:sunmetal_block")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("nether_brass_block")
|
||||
.itemInputs("4x architects_palette:nether_brass_ingot")
|
||||
.itemOutputs("4x architects_palette:nether_brass_block")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("withered_bone_block")
|
||||
.itemInputs("3x kubejs:wither_bone")
|
||||
.itemOutputs("architects_palette:withered_bone_block")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("cod_log")
|
||||
.itemInputs("4x minecraft:cod")
|
||||
.itemOutputs("6x architects_palette:cod_log")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("salmon_log")
|
||||
.itemInputs("4x minecraft:salmon")
|
||||
.itemOutputs("6x architects_palette:salmon_log")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.compressor("scute_block")
|
||||
.itemInputs("4x minecraft:scute")
|
||||
.itemOutputs("12x architects_palette:scute_block")
|
||||
.duration(100)
|
||||
.EUt(2)
|
||||
|
||||
// The One Lathe Recipe
|
||||
event.recipes.gtceu.lathe("entwine_rod")
|
||||
.itemInputs("minecraft:ender_pearl")
|
||||
.itemOutputs("4x architects_palette:entwine_rod")
|
||||
.duration(112)
|
||||
.EUt(16)
|
||||
|
||||
// Forge Hammer Recipes
|
||||
event.recipes.gtceu.forge_hammer("unobtanium")
|
||||
.itemInputs("architects_palette:unobtanium_block")
|
||||
.itemOutputs("5x architects_palette:unobtanium")
|
||||
.duration(60)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.forge_hammer("withered_bone")
|
||||
.itemInputs("architects_palette:withered_bone_block")
|
||||
.itemOutputs("3x kubejs:wither_bone")
|
||||
.duration(60)
|
||||
.EUt(7)
|
||||
|
||||
// Assembler Recipes
|
||||
event.recipes.gtceu.assembler("abyssaline")
|
||||
.itemInputs("2x minecraft:obsidian", "2x minecraft:prismarine_shard")
|
||||
.itemOutputs("12x architects_palette:abyssaline")
|
||||
.duration(100)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.assembler("plating_block")
|
||||
.circuit(24)
|
||||
.itemInputs("4x minecraft:iron_nugget", "gtceu:iron_plate")
|
||||
.itemOutputs("8x architects_palette:plating_block")
|
||||
.duration(40)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.assembler("tread_plate")
|
||||
.circuit(23)
|
||||
.itemInputs("4x minecraft:iron_nugget", "architects_palette:plating_block")
|
||||
.itemOutputs("8x architects_palette:tread_plate")
|
||||
.duration(40)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.assembler("bread_block")
|
||||
.circuit(1)
|
||||
.itemInputs("minecraft:hay_block")
|
||||
.itemOutputs("3x architects_palette:bread_block")
|
||||
.duration(40)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.assembler("spool")
|
||||
.circuit(2)
|
||||
.itemInputs("minecraft:stick", "minecraft:white_wool")
|
||||
.itemOutputs("2x architects_palette:spool")
|
||||
.duration(40)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.assembler("coarse_snow")
|
||||
.itemInputs("minecraft:gravel", "minecraft:snow_block")
|
||||
.itemOutputs("4x architects_palette:coarse_snow")
|
||||
.duration(40)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.assembler("molten_nether_bricks")
|
||||
.itemInputs("minecraft:nether_bricks", "minecraft:magma_block")
|
||||
.itemOutputs("4x architects_palette:molten_nether_bricks")
|
||||
.duration(40)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.assembler("sunstone")
|
||||
.itemInputs("minecraft:basalt", "architects_palette:sunmetal_blend")
|
||||
.itemOutputs("4x architects_palette:sunstone")
|
||||
.duration(40)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.assembler("hazard_sign")
|
||||
.circuit(23)
|
||||
.itemInputs("minecraft:iron_nugget", "gtceu:iron_plate")
|
||||
.itemOutputs("4x architects_palette:hazard_sign")
|
||||
.duration(40)
|
||||
.EUt(32)
|
||||
|
||||
// Atomic Reconstructor Recipes
|
||||
event.recipes.gtceu.atomic_reconstruction("unobtanium")
|
||||
.itemInputs("minecraft:netherite_ingot")
|
||||
.itemOutputs("architects_palette:unobtanium")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("twisted_sapling")
|
||||
.itemInputs("#minecraft:saplings")
|
||||
.itemOutputs("architects_palette:twisted_sapling")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("warpstone")
|
||||
.itemInputs("minecraft:clay")
|
||||
.itemOutputs("architects_palette:warpstone")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("hadaline")
|
||||
.itemInputs("architects_palette:abyssaline")
|
||||
.itemOutputs("architects_palette:hadaline")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("moonstone")
|
||||
.itemInputs("architects_palette:sunstone")
|
||||
.itemOutputs("architects_palette:moonstone")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("sunstone")
|
||||
.itemInputs("architects_palette:moonstone")
|
||||
.itemOutputs("architects_palette:sunstone")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("onyx")
|
||||
.itemInputs("minecraft:granite")
|
||||
.itemOutputs("architects_palette:onyx")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("nebulite")
|
||||
.itemInputs("minecraft:diorite")
|
||||
.itemOutputs("architects_palette:nebulite")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("craterstone")
|
||||
.itemInputs("minecraft:cobblestone")
|
||||
.itemOutputs("architects_palette:craterstone")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("esoterrack")
|
||||
.itemInputs("minecraft:andesite")
|
||||
.itemOutputs("architects_palette:esoterrack")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("moonshale")
|
||||
.itemInputs("minecraft:stone")
|
||||
.itemOutputs("architects_palette:moonshale")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("hadaline_lamp")
|
||||
.itemInputs("architects_palette:abyssaline_lamp")
|
||||
.itemOutputs("architects_palette:hadaline_lamp")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("entrails")
|
||||
.itemInputs("architects_palette:rotten_flesh_block")
|
||||
.itemOutputs("architects_palette:entrails")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("initial_monazite_rod")
|
||||
.itemInputs("gtceu:monazite_gem")
|
||||
.itemOutputs("architects_palette:monazite_rod")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("monazite_rod")
|
||||
.itemInputs("architects_palette:heliodor_rod")
|
||||
.itemOutputs("architects_palette:monazite_rod")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("ekanite_rod")
|
||||
.itemInputs("architects_palette:monazite_rod")
|
||||
.itemOutputs("architects_palette:ekanite_rod")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.atomic_reconstruction("heliodor_rod")
|
||||
.itemInputs("architects_palette:ekanite_rod")
|
||||
.itemOutputs("architects_palette:heliodor_rod")
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
|
||||
// Twisted Wood Recipes
|
||||
event.recipes.gtceu.greenhouse("twisted_sapling")
|
||||
.circuit(1)
|
||||
.notConsumable(InputItem.of(Item.of("architects_palette:twisted_sapling")))
|
||||
.inputFluids("minecraft:water 24000")
|
||||
.itemOutputs("64x architects_palette:twisted_log", "4x architects_palette:twisted_sapling")
|
||||
.duration(1280)
|
||||
.EUt(80)
|
||||
event.recipes.gtceu.greenhouse("twisted_sapling_boosted")
|
||||
.circuit(2)
|
||||
.notConsumable(InputItem.of(Item.of("architects_palette:twisted_sapling")))
|
||||
.itemInputs("1x gtceu:fertilizer")
|
||||
.inputFluids("minecraft:water 16000")
|
||||
.itemOutputs("64x architects_palette:twisted_log", "64x architects_palette:twisted_log", "4x architects_palette:twisted_sapling")
|
||||
.duration(640)
|
||||
.EUt(80)
|
||||
|
||||
event.recipes.gtceu.cutter("water_twisted_planks")
|
||||
.itemInputs("#architects_palette:twisted_logs")
|
||||
.inputFluids("minecraft:water 4")
|
||||
.itemOutputs("6x architects_palette:twisted_planks", "2x gtceu:wood_dust")
|
||||
.duration(400)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.cutter("water_distilled_twisted_planks")
|
||||
.itemInputs("#architects_palette:twisted_logs")
|
||||
.inputFluids("gtceu:distilled_water 3")
|
||||
.itemOutputs("6x architects_palette:twisted_planks", "2x gtceu:wood_dust")
|
||||
.duration(300)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.cutter("lubricant_twisted_planks")
|
||||
.itemInputs("#architects_palette:twisted_logs")
|
||||
.inputFluids("gtceu:lubricant 1")
|
||||
.itemOutputs("6x architects_palette:twisted_planks", "2x gtceu:wood_dust")
|
||||
.duration(200)
|
||||
.EUt(7)
|
||||
|
||||
})
|
||||
|
||||
console.log("Architect's Palette Loaded!")
|
||||
}
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
/**
|
||||
* Optional compat script for Compact Machines
|
||||
*
|
||||
* Modeled after Nomifactory CEu's script for the same.
|
||||
* Gated to HV, with more unlocked at IV.
|
||||
*
|
||||
* Replaces or modifies the recipe for every item in the mod.
|
||||
*/
|
||||
if (Platform.isLoaded("compactmachines")) {
|
||||
console.log("Compact Machines found, loading compat scripts...")
|
||||
ServerEvents.recipes(event => {
|
||||
|
||||
// Recipe modification for Personal Shrinking Device
|
||||
event.replaceInput({ id: "compactmachines:personal_shrinking_device" }, "#forge:glass_panes", "gtceu:computer_monitor_cover")
|
||||
|
||||
// Compact Machine Wall recipes. HV recipe + more efficient EV recipe
|
||||
event.remove({ output: "compactmachines:wall" })
|
||||
event.recipes.gtceu.assembler("compactmachines:wall")
|
||||
.itemInputs("9x gtceu:blue_steel_plate", "1x gtceu:ultimet_frame", "1x gtceu:mv_sensor")
|
||||
.itemOutputs("4x compactmachines:wall")
|
||||
.duration(40)
|
||||
.EUt(GTValues.VHA[GTValues.HV])
|
||||
event.recipes.gtceu.assembler("compactmachines:wall_alt")
|
||||
.itemInputs("9x gtceu:maraging_steel_300_plate", "2x gtceu:ultimet_frame", "1x gtceu:hv_sensor")
|
||||
.itemOutputs("16x compactmachines:wall")
|
||||
.duration(40)
|
||||
.EUt(GTValues.VHA[GTValues.IV])
|
||||
|
||||
// Recipes for all tiers of Compact Machine
|
||||
const machineSizes = [
|
||||
{ size: "tiny", material: "#forge:storage_blocks/copper" },
|
||||
{ size: "small", material: "#forge:storage_blocks/iron" },
|
||||
{ size: "normal", material: "#forge:storage_blocks/gold" },
|
||||
{ size: "large", material: "minecraft:obsidian" },
|
||||
{ size: "giant", material: "#forge:storage_blocks/diamond" },
|
||||
{ size: "maximum", material: "#forge:storage_blocks/netherite" },
|
||||
]
|
||||
|
||||
machineSizes.forEach((value, index) => {
|
||||
event.recipes.gtceu.assembler(`compactmachines:machine_${value.size}`)
|
||||
.itemInputs(Item.of("compactmachines:wall", 4 * (index + 1)), (index > 2 ? "gtceu:tungsten_frame" : "gtceu:dark_steel_frame"), value.material, `2x gtceu:${GTValues.VN[index + 1].toLowerCase()}_field_generator`, (index > 2 ? Item.of("gtceu:quantum_eye", 2 ** (index - 2)) : Item.of("minecraft:ender_eye", 2 ** index)))
|
||||
.inputFluids(`gtceu:styrene_butadiene_rubber ${144 * (index + 1)}`)
|
||||
.itemOutputs(`compactmachines:machine_${value.size}`)
|
||||
.duration(200)
|
||||
.EUt(GTValues.VA[index + 1])
|
||||
})
|
||||
|
||||
// Recipes for tunnels
|
||||
const tunnelTypes = [
|
||||
{ type: "item", hatch: "gtceu:hv_item_passthrough_hatch", nbt: '{definition:{id:"compactmachines:item"}}' },
|
||||
{ type: "fluid", hatch: "gtceu:hv_fluid_passthrough_hatch", nbt: '{definition:{id:"compactmachines:fluid"}}' },
|
||||
{ type: "energy", hatch: "gtceu:hv_diode", nbt: '{definition:{id:"compactmachines:energy"}}' },
|
||||
// {type: "redstone", hatch: "enderio:redstone_conduit", nbt: '{definition:{id:"compactmachines:redstone"}}'} // Redstone tunnel NYI :(
|
||||
]
|
||||
|
||||
tunnelTypes.forEach(value => {
|
||||
event.remove({ id: `compactmachines:tunnels/${value.type}` })
|
||||
event.recipes.gtceu.assembler(`compactmachines:tunnel_${value.type}`)
|
||||
.itemInputs("2x compactmachines:wall", value.hatch, "gtceu:quantum_eye")
|
||||
.itemOutputs(Item.of("compactmachines:tunnel", 2, value.nbt))
|
||||
.duration(100)
|
||||
.EUt(GTValues.VHA[GTValues.HV])
|
||||
})
|
||||
|
||||
})
|
||||
console.log("Compact Machines compat scripts successfully loaded!")
|
||||
} else { console.log("Compact Machines not found, skipping its compat scripts.") }
|
||||
201
kubejs/server_scripts/mods/optionalCompats/computercraft.js
Normal file
201
kubejs/server_scripts/mods/optionalCompats/computercraft.js
Normal file
|
|
@ -0,0 +1,201 @@
|
|||
/**
|
||||
* Compat for the computercraft mod
|
||||
*/
|
||||
if (Platform.isLoaded("computercraft")) {
|
||||
console.log("Computercraft Tweaked found, loading compat scripts...")
|
||||
ServerEvents.recipes(event => {
|
||||
|
||||
// Nomral Computer
|
||||
event.remove({ id: "computercraft:computer_normal" })
|
||||
event.shaped("computercraft:computer_normal", [
|
||||
"SSS",
|
||||
"SNS",
|
||||
"SCS"
|
||||
], {
|
||||
S: "gtceu:steel_plate",
|
||||
C: "gtceu:computer_monitor_cover",
|
||||
N: "#gtceu:circuits/hv",
|
||||
})
|
||||
|
||||
// Advanced Computer
|
||||
event.remove({ id: "computercraft:computer_advanced" })
|
||||
event.remove({ id: "computercraft:computer_advanced_upgrade" })
|
||||
event.shaped("computercraft:computer_advanced", [
|
||||
"SSS",
|
||||
"SNS",
|
||||
"SCS"
|
||||
], {
|
||||
S: "gtceu:electrum_plate",
|
||||
C: "computercraft:computer_normal",
|
||||
N: "#gtceu:circuits/ev",
|
||||
})
|
||||
|
||||
// Turtle
|
||||
event.remove({ id: "computercraft:turtle_normal" })
|
||||
event.shaped("computercraft:turtle_normal", [
|
||||
" ",
|
||||
"RCA",
|
||||
" E "
|
||||
], {
|
||||
R: "gtceu:stainless_steel_crate",
|
||||
A: "gtceu:hv_robot_arm",
|
||||
C: "computercraft:computer_normal",
|
||||
E: "gtceu:hv_conveyor_module",
|
||||
})
|
||||
|
||||
// Advanced Turtle
|
||||
event.remove({ id: "computercraft:turtle_advanced" })
|
||||
event.remove({ id: "computercraft:turtle_advanced_upgrade" })
|
||||
event.shaped("computercraft:turtle_advanced", [
|
||||
" ",
|
||||
"RCA",
|
||||
" E "
|
||||
], {
|
||||
R: "gtceu:titanium_crate",
|
||||
A: "gtceu:ev_robot_arm",
|
||||
C: "computercraft:computer_advanced",
|
||||
E: "gtceu:ev_conveyor_module",
|
||||
})
|
||||
|
||||
// Ender Modem
|
||||
event.remove({ id: "computercraft:wireless_modem_advanced" })
|
||||
event.shaped("computercraft:wireless_modem_advanced", [
|
||||
" E ",
|
||||
"BSB",
|
||||
"PPP"
|
||||
], {
|
||||
B: "gtceu:electrum_bolt",
|
||||
P: "gtceu:electrum_plate",
|
||||
S: "gtceu:hv_sensor",
|
||||
E: "gtceu:hv_emitter",
|
||||
})
|
||||
|
||||
// Wireless Modem
|
||||
event.remove({ id: "computercraft:wireless_modem_normal" })
|
||||
event.shaped("computercraft:wireless_modem_normal", [
|
||||
" E ",
|
||||
"BSB",
|
||||
"PPP"
|
||||
], {
|
||||
B: "gtceu:steel_bolt",
|
||||
P: "gtceu:steel_plate",
|
||||
S: "gtceu:mv_sensor",
|
||||
E: "gtceu:mv_emitter",
|
||||
})
|
||||
|
||||
// Speaker
|
||||
event.remove({ id: "computercraft:speaker" })
|
||||
event.shaped("computercraft:speaker", [
|
||||
"PWP",
|
||||
"PNP",
|
||||
"PCP"
|
||||
], {
|
||||
W: "gtceu:copper_single_wire",
|
||||
N: "minecraft:note_block",
|
||||
P: "gtceu:steel_plate",
|
||||
C: "gtceu:carbon_fiber_mesh",
|
||||
})
|
||||
|
||||
// Monitor
|
||||
event.remove({ id: "computercraft:monitor_normal" })
|
||||
event.shaped("computercraft:monitor_normal", [
|
||||
"PHP",
|
||||
"PCP",
|
||||
"PPP"
|
||||
], {
|
||||
P: "gtceu:steel_plate",
|
||||
C: "gtceu:computer_monitor_cover",
|
||||
H: "gtceu:mv_machine_hull",
|
||||
})
|
||||
|
||||
// Advanced Monitor
|
||||
event.remove({ id: "computercraft:monitor_advanced" })
|
||||
event.shaped("computercraft:monitor_advanced", [
|
||||
"PHP",
|
||||
"PCP",
|
||||
"PPP"
|
||||
], {
|
||||
P: "gtceu:electrum_plate",
|
||||
C: "gtceu:computer_monitor_cover",
|
||||
H: "gtceu:hv_machine_hull",
|
||||
})
|
||||
|
||||
// Pocket Computer
|
||||
event.remove({ id: "computercraft:pocket_computer_normal" })
|
||||
event.shaped("computercraft:pocket_computer_normal", [
|
||||
" ",
|
||||
" C ",
|
||||
" T "
|
||||
], {
|
||||
T: "gtceu:terminal",
|
||||
C: "computercraft:computer_normal",
|
||||
|
||||
})
|
||||
|
||||
// Advanced Pocket Computer
|
||||
event.remove({ id: "computercraft:pocket_computer_advanced" })
|
||||
event.remove({ id: "computercraft:pocket_computer_advanced_upgrade" })
|
||||
event.shaped("computercraft:pocket_computer_advanced", [
|
||||
" ",
|
||||
" C ",
|
||||
" T "
|
||||
], {
|
||||
T: "gtceu:terminal",
|
||||
C: "computercraft:computer_advanced",
|
||||
|
||||
})
|
||||
|
||||
// Printer
|
||||
event.remove({ id: "computercraft:printer" })
|
||||
event.shaped("computercraft:printer", [
|
||||
"PHP",
|
||||
"PIM",
|
||||
"PCC"
|
||||
], {
|
||||
P: "gtceu:steel_plate",
|
||||
H: "gtceu:mv_machine_hull",
|
||||
I: "gtceu:mv_electric_piston",
|
||||
C: "gtceu:mv_conveyor_module",
|
||||
M: "gtceu:mv_electric_motor",
|
||||
|
||||
})
|
||||
|
||||
// Wired Modem
|
||||
event.remove({ id: "computercraft:wired_modem" })
|
||||
event.shaped("computercraft:wired_modem", [
|
||||
"PPP",
|
||||
"ECC",
|
||||
"PPP"
|
||||
], {
|
||||
P: "gtceu:steel_plate",
|
||||
E: "gtceu:mv_emitter",
|
||||
C: "computercraft:cable",
|
||||
|
||||
})
|
||||
|
||||
// Netowrking Cable
|
||||
event.remove({ id: "computercraft:cable" })
|
||||
event.recipes.gtceu.assembler("computercraft_cable")
|
||||
.itemInputs("3x gtceu:steel_foil", "6x gtceu:fine_copper_wire")
|
||||
.inputFluids("gtceu:polyethylene 144")
|
||||
.itemOutputs("6x computercraft:cable")
|
||||
.duration(100)
|
||||
.EUt(7)
|
||||
|
||||
|
||||
// Disk Drive
|
||||
event.remove({ id: "computercraft:disk_drive" })
|
||||
event.shaped("computercraft:disk_drive", [
|
||||
"PHP",
|
||||
"PBP",
|
||||
"PBP"
|
||||
], {
|
||||
P: "gtceu:steel_plate",
|
||||
H: "gtceu:mv_machine_hull",
|
||||
B: "gtceu:lv_input_bus",
|
||||
|
||||
|
||||
})
|
||||
})
|
||||
console.log("Computercraft Tweaked compat scripts successfully loaded!")
|
||||
} else { console.log("Computercraft Tweaked not found, skipping its compat scripts.") }
|
||||
290
kubejs/server_scripts/mods/optionalCompats/create.js
Normal file
290
kubejs/server_scripts/mods/optionalCompats/create.js
Normal file
|
|
@ -0,0 +1,290 @@
|
|||
/**
|
||||
* Compat for the create mod
|
||||
*/
|
||||
if (Platform.isLoaded("create")) {
|
||||
console.log("Create found, loading compat scripts...")
|
||||
ServerEvents.recipes(event => {
|
||||
|
||||
// Removes any machines related to processing, the point of this compat is fun not functionality,
|
||||
|
||||
|
||||
/* Removes recipes for machines that were not removed, deployers and mechanical crafters are fun!
|
||||
Most recipe categories that are removed machines are hidden in
|
||||
kubejs/assets/emi/recipe/filters/hidecategories.json as opposed to removing the actual recipes */
|
||||
event.remove({ type: "create:deploying" })
|
||||
event.remove({ type: "create:milling" })
|
||||
event.remove({ type: "create:crushing" })
|
||||
event.remove({ id: "create:crafting/kinetics/millstone" })
|
||||
// event.remove({id: 'create:mechanical_crafting/crushing_wheel'}) //mechanical roller uses this for now
|
||||
event.remove({ id: "create:crafting/kinetics/mechanical_mixer" })
|
||||
event.remove({ id: "create:crafting/kinetics/mechanical_press" })
|
||||
// Remove the hand crank since it's easy to abuse contraptions using it
|
||||
event.remove({ id: "create:crafting/kinetics/hand_crank" })
|
||||
|
||||
// w h a t ?
|
||||
event.remove({ id: "gtceu:shaped/lv_kinetic_mixer" })
|
||||
event.remove({ id: "gtceu:shaped/mv_kinetic_mixer" })
|
||||
event.remove({ id: "gtceu:shaped/hv_kinetic_mixer" })
|
||||
event.remove({ id: "gtceu:shaped/ev_kinetic_mixer" })
|
||||
|
||||
// belts made with rubber
|
||||
let kelpRecipes = [
|
||||
"create:crafting/kinetics/belt_connector",
|
||||
"create:crafting/logistics/andesite_funnel",
|
||||
"create:crafting/logistics/brass_funnel",
|
||||
"create:crafting/logistics/andesite_tunnel",
|
||||
"create:crafting/logistics/brass_tunnel"
|
||||
]
|
||||
kelpRecipes.forEach(id => { event.replaceInput({ id: id }, "minecraft:dried_kelp", "gtceu:rubber_plate") })
|
||||
event.replaceInput({ id: "create:crafting/kinetics/spout" }, "minecraft:dried_kelp", "gtceu:rubber_ring")
|
||||
|
||||
// Adds some create recipes to gt machines
|
||||
event.recipes.gtceu.mixer("kubejs:andesite_alloy_from_iron")
|
||||
.itemInputs("#forge:nuggets/iron", "minecraft:andesite")
|
||||
.itemOutputs("create:andesite_alloy")
|
||||
.duration(100)
|
||||
.EUt(7)
|
||||
event.recipes.gtceu.mixer("kubejs:andesite_alloy_from_zinc")
|
||||
.itemInputs("#forge:nuggets/zinc", "minecraft:andesite")
|
||||
.itemOutputs("create:andesite_alloy")
|
||||
.duration(100)
|
||||
.EUt(7)
|
||||
|
||||
// Pressing and compacting recipes
|
||||
event.recipes.gtceu.forge_hammer("kubejs:dirt_path")
|
||||
.itemInputs(["minecraft:dirt", "minecraft:grass"])
|
||||
.itemOutputs("minecraft:dirt_path")
|
||||
.duration(10)
|
||||
.EUt(2)
|
||||
|
||||
event.recipes.gtceu.fluid_solidifier("kubejs:bar_of_chocolate")
|
||||
.inputFluids(Fluid.of("create:chocolate", 250))
|
||||
.notConsumable("gtceu:ingot_casting_mold")
|
||||
.itemOutputs("create:bar_of_chocolate")
|
||||
.duration(20)
|
||||
.EUt(7)
|
||||
|
||||
let honeyFluid = new JSONObject()
|
||||
honeyFluid.add("amount", 1000)
|
||||
honeyFluid.add("value", { tag: "forge:honey" })
|
||||
event.recipes.gtceu.fluid_solidifier("kubejs:honey_block")
|
||||
.inputFluids(FluidIngredientJS.of(honeyFluid))
|
||||
.notConsumable("gtceu:block_casting_mold")
|
||||
.itemOutputs("minecraft:honey_block")
|
||||
.duration(5)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.mixer("kubejs:blaze_cake_base")
|
||||
.itemInputs("minecraft:egg", "minecraft:sugar", "create:cinder_flour")
|
||||
.itemOutputs("create:blaze_cake_base")
|
||||
.duration(200)
|
||||
.EUt(7)
|
||||
|
||||
let milkFluid = new JSONObject()
|
||||
milkFluid.add("amount", 250)
|
||||
milkFluid.add("value", { tag: "forge:milk" })
|
||||
|
||||
event.recipes.gtceu.mixer("kubejs:liquid_chocolate")
|
||||
.itemInputs("minecraft:sugar", "minecraft:cocoa_beans")
|
||||
.inputFluids(FluidIngredientJS.of(milkFluid))
|
||||
.outputFluids(Fluid.of("create:chocolate", 250))
|
||||
.duration(200)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.mixer("kubejs:tea")
|
||||
.itemInputs("#minecraft:leaves")
|
||||
.inputFluids(Fluid.of("minecraft:water", 250), FluidIngredientJS.of(milkFluid))
|
||||
.outputFluids(Fluid.of("create:tea", 500))
|
||||
.duration(200)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.extractor("kubejs:extract_bar_of_chocolate")
|
||||
.itemInputs("create:bar_of_chocolate")
|
||||
.outputFluids(Fluid.of("create:chocolate", 250))
|
||||
.duration(10)
|
||||
.EUt(4)
|
||||
|
||||
event.recipes.gtceu.extractor("kubejs:extract_honey_block")
|
||||
.itemInputs("minecraft:honey_block")
|
||||
.outputFluids(Fluid.of("create:honey", 1000))
|
||||
.duration(10)
|
||||
.EUt(4)
|
||||
|
||||
// Sequenced assembly but awesome
|
||||
event.recipes.gtceu.assembler("kubejs:precision_mechanism")
|
||||
.itemInputs("#forge:plates/gold", "5x create:cogwheel", "5x create:large_cogwheel", "5x minecraft:iron_nugget")
|
||||
.itemOutputs("create:precision_mechanism")
|
||||
.duration(300)
|
||||
.EUt(30)
|
||||
.circuit(5)
|
||||
// That was actually awesome
|
||||
|
||||
// adding mechanical crafter stuff
|
||||
event.recipes.gtceu.assembler("kubejs:extendo_grip")
|
||||
.itemInputs("create:precision_mechanism", "create:brass_hand", "6x minecraft:stick", "#forge:ingots/brass")
|
||||
.itemOutputs("create:extendo_grip")
|
||||
.duration(600)
|
||||
.EUt(120)
|
||||
event.recipes.gtceu.assembler("kubejs:potato_cannon")
|
||||
.itemInputs("create:precision_mechanism", "create:andesite_alloy", "3x create:fluid_pipe", "2x #forge:ingots/copper")
|
||||
.itemOutputs("create:potato_cannon")
|
||||
.duration(600)
|
||||
.EUt(120)
|
||||
event.recipes.gtceu.assembler("kubejs:wand_of_symmetry")
|
||||
.itemInputs("create:precision_mechanism", "minecraft:obsidian", "3x minecraft:glass", "#forge:ingots/brass", "minecraft:ender_pearl")
|
||||
.itemOutputs("create:wand_of_symmetry")
|
||||
.duration(600)
|
||||
.EUt(120)
|
||||
|
||||
event.recipes.gtceu.autoclave("kubejs:rose_quartz")
|
||||
.itemInputs("minecraft:quartz")
|
||||
.itemOutputs("create:rose_quartz")
|
||||
.inputFluids("gtceu:redstone 1152")
|
||||
.duration(200)
|
||||
.EUt(16)
|
||||
.circuit(6)
|
||||
event.recipes.gtceu.sifter("kubejs:polished_rose_quartz")
|
||||
.itemInputs("create:rose_quartz")
|
||||
.itemOutputs("create:polished_rose_quartz")
|
||||
.duration(200)
|
||||
.EUt(16)
|
||||
|
||||
// deploying recipes
|
||||
let assembleCasing = function (input, casingName, logInput, casingModId) {
|
||||
logInput = (logInput) ? logInput : "#minecraft:logs"
|
||||
casingModId = (casingModId) ? casingModId : "create"
|
||||
// recipes can use unstripped logs since gt has no way to strip wood
|
||||
return event.recipes.gtceu.assembler(`kubejs:${casingName}`)
|
||||
.itemInputs(input, logInput)
|
||||
.itemOutputs(`${casingModId}:${casingName}`)
|
||||
.duration(100)
|
||||
.EUt(16)
|
||||
}
|
||||
assembleCasing("create:andesite_alloy", "andesite_casing")
|
||||
assembleCasing("#forge:ingots/brass", "brass_casing")
|
||||
assembleCasing("minecraft:copper_ingot", "copper_casing")
|
||||
assembleCasing("#forge:plates/obsidian", "railway_casing", "create:brass_casing")
|
||||
|
||||
|
||||
// Tracks
|
||||
if (!Platform.isLoaded("railways")) {
|
||||
// Only do this block if Steam and Rails is not loaded. Else, let the Steam and Rails KJS file handle the track recipes.
|
||||
event.remove({ output: "create:track" })
|
||||
event.shaped("create:track", [
|
||||
" ",
|
||||
"IHI",
|
||||
"SSS"
|
||||
], {
|
||||
H: "#forge:tools/hammers",
|
||||
I: "minecraft:iron_nugget",
|
||||
S: "#create:sleepers"
|
||||
})
|
||||
event.recipes.gtceu.assembler("kubejs:createtracks")
|
||||
.itemInputs("3x #create:sleepers", "2x minecraft:iron_nugget")
|
||||
.itemOutputs("2x create:track")
|
||||
.duration(5)
|
||||
.EUt(16)
|
||||
} else { console.log("Steam and Rails is present, letting its compat script handle the track recipes.") }
|
||||
|
||||
// stone variant rock crusher recipes
|
||||
let rockCrushing = function (modName, itemName, EUt) {
|
||||
return event.recipes.gtceu.rock_breaker(`kubejs:${itemName}`)
|
||||
.notConsumable(`${modName}:${itemName}`)
|
||||
.itemOutputs(`${modName}:${itemName}`)
|
||||
.addDataString("fluidA", "minecraft:lava")
|
||||
.addDataString("fluidB", "minecraft:water")
|
||||
.duration(16)
|
||||
.EUt(EUt)
|
||||
.addCondition(RockBreakerCondition.INSTANCE)
|
||||
}
|
||||
rockCrushing("minecraft", "dripstone_block", 60)
|
||||
rockCrushing("minecraft", "tuff", 60)
|
||||
rockCrushing("minecraft", "calcite", 60)
|
||||
rockCrushing("create", "asurine", 60)
|
||||
rockCrushing("create", "crimsite", 60)
|
||||
rockCrushing("create", "limestone", 60)
|
||||
rockCrushing("create", "ochrum", 60)
|
||||
rockCrushing("create", "scoria", 480)
|
||||
rockCrushing("create", "scorchia", 480)
|
||||
rockCrushing("create", "veridium", 60)
|
||||
// stone variant reconstruction recipes
|
||||
let owStone = [["minecraft", "stone"], ["create", "asurine"], ["create", "crimsite"], ["create", "limestone"], ["create", "ochrum"], ["create", "veridium"], ["minecraft", "stone"]]
|
||||
let neStone = [["minecraft", "blackstone"], ["create", "scoria"], ["create", "scorchia"], ["minecraft", "blackstone"]]
|
||||
for (let i = 0; i < owStone.length - 1; ++i) {
|
||||
event.recipes.gtceu.atomic_reconstruction(`kubejs:stone_reconstruction/${owStone[i][1]}`)
|
||||
.itemInputs(`${owStone[i][0]}:${owStone[i][1]}`)
|
||||
.itemOutputs(`${owStone[i + 1][0]}:${owStone[i + 1][1]}`)
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
}
|
||||
for (let i = 0; i < neStone.length - 1; ++i) {
|
||||
event.recipes.gtceu.atomic_reconstruction(`kubejs:stone_reconstruction/${neStone[i][1]}`)
|
||||
.itemInputs(`${neStone[i][0]}:${neStone[i][1]}`)
|
||||
.itemOutputs(`${neStone[i + 1][0]}:${neStone[i + 1][1]}`)
|
||||
.duration(20)
|
||||
.EUt(32)
|
||||
}
|
||||
// remove unused recipe types
|
||||
event.remove({ type: "create:pressing" })
|
||||
event.remove({ type: "create:compacting" })
|
||||
event.remove({ type: "create:milling" })
|
||||
event.remove({ type: "create:crushing" })
|
||||
event.remove({ type: "create:mixing" })
|
||||
// Deploying recipes are fine
|
||||
// Remove sawing recipes. Mechanical saws can still be used for stonecutting and in world tree cutting
|
||||
event.remove({ type: "create:cutting" })
|
||||
|
||||
|
||||
// Packager and Logistics
|
||||
event.shaped("create:packager", [
|
||||
"S S",
|
||||
"SCS",
|
||||
"SLS"
|
||||
], {
|
||||
L: "#gtceu:circuits/lv",
|
||||
C: "create:cardboard_block",
|
||||
S: "gtceu:steel_plate"
|
||||
}).id("create:crafting/logistics/packager")
|
||||
|
||||
event.shaped("create:stock_ticker", [
|
||||
" G ",
|
||||
" C ",
|
||||
" L "
|
||||
], {
|
||||
L: "#gtceu:circuits/mv",
|
||||
C: "create:stock_link",
|
||||
G: "#forge:glass"
|
||||
}).id("create:crafting/logistics/stock_ticker")
|
||||
|
||||
event.shapeless("2x create:factory_gauge ", ["create:stock_link", "create:precision_mechanism", "#gtceu:circuits/hv"]).id("create:crafting/logistics/factory_gauge")
|
||||
|
||||
// Pulp
|
||||
event.shaped("2x create:pulp", [
|
||||
" ",
|
||||
"RRR",
|
||||
" H "
|
||||
], {
|
||||
H: "#forge:tools/mortars",
|
||||
R: "gtceu:plant_ball"
|
||||
})
|
||||
|
||||
event.recipes.gtceu.mixer("kubejs:pulp_wood")
|
||||
.itemInputs("gtceu:wood_dust")
|
||||
.inputFluids("minecraft:water 100")
|
||||
.itemOutputs("create:pulp")
|
||||
.duration(100)
|
||||
.EUt(16)
|
||||
.circuit(1)
|
||||
|
||||
event.recipes.gtceu.compressor("kubejs:pulp_plant")
|
||||
.itemInputs("gtceu:plant_ball")
|
||||
.itemOutputs("create:pulp")
|
||||
.duration(20)
|
||||
.EUt(2)
|
||||
|
||||
event.smelting("create:cardboard", "create:pulp")
|
||||
|
||||
|
||||
})
|
||||
console.log("Create compat scripts successfully loaded!")
|
||||
} else { console.log("Create was not found, skipping its compat scripts.") }
|
||||
|
|
@ -0,0 +1,270 @@
|
|||
/**
|
||||
* Recipe compat for the funni railways mod
|
||||
*/
|
||||
|
||||
if (Platform.isLoaded("railways")) {
|
||||
console.log("Create: Steam and Rails found, loading compat script...")
|
||||
ServerEvents.tags("item", event => {
|
||||
// normal rails
|
||||
event.add("kubejs:create_tracks", "create:track");
|
||||
event.add("kubejs:create_tracks", "railways:track_oak");
|
||||
event.add("kubejs:create_tracks", "railways:track_birch");
|
||||
event.add("kubejs:create_tracks", "railways:track_acacia");
|
||||
event.add("kubejs:create_tracks", "railways:track_dark_oak");
|
||||
event.add("kubejs:create_tracks", "railways:track_jungle");
|
||||
event.add("kubejs:create_tracks", "railways:track_spruce");
|
||||
event.add("kubejs:create_tracks", "railways:track_mangrove");
|
||||
event.add("kubejs:create_tracks", "railways:track_warped");
|
||||
event.add("kubejs:create_tracks", "railways:track_crimson");
|
||||
event.add("kubejs:create_tracks", "railways:track_blackstone");
|
||||
event.add("kubejs:create_tracks", "railways:track_ender");
|
||||
event.add("kubejs:create_tracks", "railways:track_tieless");
|
||||
event.add("kubejs:create_tracks", "railways:track_phantom");
|
||||
event.add("kubejs:create_tracks", "railways:track_cherry");
|
||||
event.add("kubejs:create_tracks", "railways:track_bamboo");
|
||||
event.add("kubejs:create_tracks", "railways:track_stripped_bamboo");
|
||||
event.add("kubejs:create_tracks", "railways:track_monorail");
|
||||
// wide rails
|
||||
event.add("kubejs:create_tracks", "railways:track_create_andesite_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_acacia_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_birch_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_dark_oak_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_jungle_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_oak_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_spruce_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_mangrove_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_warped_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_crimson_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_blackstone_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_ender_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_tieless_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_cherry_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_bamboo_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_stripped_bamboo_wide");
|
||||
// narrow rails
|
||||
event.add("kubejs:create_tracks", "railways:track_create_andesite_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_acacia_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_birch_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_dark_oak_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_jungle_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_oak_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_spruce_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_mangrove_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_warped_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_crimson_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_blackstone_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_ender_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_tieless_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_cherry_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_bamboo_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_stripped_bamboo_narrow");
|
||||
|
||||
if (Platform.isLoaded("biomesoplenty")) { // fuck it, we BoP
|
||||
// normal rails
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_dead");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_fir");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_hellbark");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_jacaranda");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_magic");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_mahogany");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_palm");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_redwood");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_umbran");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_willow");
|
||||
// wide rails
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_dead_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_fir_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_hellbark_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_jacaranda_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_magic_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_mahogany_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_palm_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_redwood_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_umbran_wide");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_willow_wide");
|
||||
// narrow rails
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_dead_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_fir_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_hellbark_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_jacaranda_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_magic_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_mahogany_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_palm_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_redwood_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_umbran_narrow");
|
||||
event.add("kubejs:create_tracks", "railways:track_biomesoplenty_willow_narrow");
|
||||
}
|
||||
})
|
||||
ServerEvents.recipes(event => {
|
||||
|
||||
event.remove({ output: "#kubejs:create_tracks" }) // KILL 'EM ALL! - demoman tf2
|
||||
|
||||
/**
|
||||
* Creates a shaped crafting recipe and a Gregtech Assembler recipe, both to make normal-gauge tracks.
|
||||
* @param {string} sleeperItem A ResourceLocation of the item representing the sleeper/tie of the track. Will typically be a slab.
|
||||
* @param {string} outputItem A ResourceLocation of the normal-gauge track item to be output by the recipes.
|
||||
* @param {string} railItem A ResourceLocation of the item used as the rails themselves. Typically an iron or gold nugget, to stay in line with base Create.
|
||||
* @param {int} outputCount How many normal-gauge track items that will be outputted by the recipes. Is multiplied by two for the assembler recipe, to incentivise automation.
|
||||
*/
|
||||
let normalTrackRecipes = function (sleeperItem, outputItem, railItem, outputCount) {
|
||||
event.shaped(`${outputCount}x ${outputItem}`, [
|
||||
" ",
|
||||
"IHI",
|
||||
"SSS"
|
||||
], {
|
||||
H: "#forge:tools/hammers",
|
||||
I: `${railItem}`,
|
||||
S: `${sleeperItem}`
|
||||
});
|
||||
event.recipes.gtceu.assembler(`kubejs:${outputItem.replace(/^.*:/, "")}`)
|
||||
.itemInputs(
|
||||
`3x ${sleeperItem}`,
|
||||
`2x ${railItem}`
|
||||
)
|
||||
.itemOutputs(`${outputCount * 2}x ${outputItem}`)
|
||||
.duration(5)
|
||||
.EUt(16); // Low Voltage
|
||||
};
|
||||
|
||||
/**
|
||||
* Creates a shaped crafting recipe and a Gregtech Assembler recipe, both to make wide-gauge tracks.
|
||||
* @param {string} inputTrackItem A ResourceLocation of the track item used in the recipe, to be 'widened'.
|
||||
* @param {string} sleeperItem A ResourceLocation of the item representing the sleeper/tie of the track. Will typically be a slab.
|
||||
* @param {string} outputItem A ResourceLocation of the wide-gauge track item to be output by the recipes.
|
||||
* @param {int} outputCount How many wide-gauge track items that will be outputted by the recipes. Is multiplied by two for the assembler recipe, to incentivise automation.
|
||||
*/
|
||||
let wideTrackRecipes = function (inputTrackItem, sleeperItem, outputItem, outputCount) {
|
||||
event.shaped(`${outputCount}x ${outputItem}`, [
|
||||
" ",
|
||||
" H ",
|
||||
"STS"
|
||||
], {
|
||||
H: "#forge:tools/hammers",
|
||||
S: `${sleeperItem}`,
|
||||
T: `${inputTrackItem}`
|
||||
});
|
||||
event.recipes.gtceu.assembler(`kubejs:${outputItem.replace(/^.*:/, "")}`)
|
||||
.itemInputs(
|
||||
`2x ${sleeperItem}`,
|
||||
`1x ${inputTrackItem}`
|
||||
)
|
||||
.itemOutputs(`${outputCount * 2}x ${outputItem}`)
|
||||
.duration(5)
|
||||
.EUt(16); // Low Voltage
|
||||
};
|
||||
|
||||
/**
|
||||
* Creates a shaped crafting recipe and a Gregtech Cutter recipe, both to make narrow-gauge tracks.
|
||||
* @param {string} inputTrackItem A ResourceLocation of the track item used in the recipe, to be narrowed.
|
||||
* @param {string} outputItem A ResourceLocation of the narrow-gauge track item to be output by the recipes.
|
||||
* @param {string} sleeperOutputItem A ResourceLocation of the item representing the sleeper/tie of the track, to be (sometimes) recovered from the Gregtech Cutter recipe. Will typically be a slab.
|
||||
* @param {int} outputCount How many narrow-gauge track items that will be outputted by the recipes. Is multiplied by two for the assembler recipe, to incentivise automation.
|
||||
*/
|
||||
let narrowTrackRecipes = function (inputTrackItem, outputItem, sleeperOutputItem, outputCount) {
|
||||
event.shaped(`${outputCount}x ${outputItem}`, [
|
||||
" ",
|
||||
" H ",
|
||||
" T "
|
||||
], {
|
||||
H: "#forge:tools/saws",
|
||||
T: `${inputTrackItem}`,
|
||||
});
|
||||
event.recipes.gtceu.cutter(`kubejs:${outputItem.replace(/^.*:/, "")}`)
|
||||
.itemInputs(`${inputTrackItem}`)
|
||||
.itemOutputs(`${outputCount}x ${outputItem}`)
|
||||
.chancedOutput(`${sleeperOutputItem}`, 3000, 500) // 30% chance initially, increases by 5% for each voltage tier
|
||||
.duration(5)
|
||||
.EUt(16); // Low Voltage
|
||||
};
|
||||
|
||||
// Normal-gauge tracks
|
||||
normalTrackRecipes("#create:sleepers", "create:track", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:acacia_slab", "railways:track_acacia", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:birch_slab", "railways:track_birch", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:dark_oak_slab", "railways:track_dark_oak", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:jungle_slab", "railways:track_jungle", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:oak_slab", "railways:track_oak", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:spruce_slab", "railways:track_spruce", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:mangrove_slab", "railways:track_mangrove", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:warped_slab", "railways:track_warped", "minecraft:gold_nugget", 1);
|
||||
normalTrackRecipes("minecraft:crimson_slab", "railways:track_crimson", "minecraft:gold_nugget", 1);
|
||||
normalTrackRecipes("minecraft:blackstone_slab", "railways:track_blackstone", "minecraft:gold_nugget", 1);
|
||||
normalTrackRecipes("minecraft:end_stone_brick_slab", "railways:track_ender", "gtceu:enderium_nugget" /* just for shits and giggles */, 1);
|
||||
normalTrackRecipes("minecraft:glass_pane", "railways:track_tieless", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:phantom_membrane", "railways:track_phantom", "minecraft:iron_ingot", 16);
|
||||
normalTrackRecipes("minecraft:cherry_slab", "railways:track_cherry", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:bamboo", "railways:track_bamboo", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("minecraft:bamboo_slab", "railways:track_stripped_bamboo", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("create:metal_bracket", "railways:track_monorail", "#forge:plates/iron", 6)
|
||||
// Wide-gauge tracks
|
||||
wideTrackRecipes("create:track", "#create:sleepers", "railways:track_create_andesite_wide", 1);
|
||||
wideTrackRecipes("railways:track_acacia", "minecraft:acacia_slab", "railways:track_acacia_wide", 1);
|
||||
wideTrackRecipes("railways:track_birch", "minecraft:birch_slab", "railways:track_birch_wide", 1);
|
||||
wideTrackRecipes("railways:track_dark_oak", "minecraft:dark_oak_slab", "railways:track_dark_oak_wide", 1);
|
||||
wideTrackRecipes("railways:track_jungle", "minecraft:jungle_slab", "railways:track_jungle_wide", 1);
|
||||
wideTrackRecipes("railways:track_oak", "minecraft:oak_slab", "railways:track_oak_wide", 1);
|
||||
wideTrackRecipes("railways:track_spruce", "minecraft:spruce_slab", "railways:track_spruce_wide", 1);
|
||||
wideTrackRecipes("railways:track_mangrove", "minecraft:mangrove_slab", "railways:track_mangrove_wide", 1);
|
||||
wideTrackRecipes("railways:track_warped", "minecraft:warped_slab", "railways:track_warped_wide", 1);
|
||||
wideTrackRecipes("railways:track_crimson", "minecraft:crimson_slab", "railways:track_crimson_wide", 1);
|
||||
wideTrackRecipes("railways:track_blackstone", "minecraft:blackstone_slab", "railways:track_blackstone_wide", 1);
|
||||
wideTrackRecipes("railways:track_ender", "minecraft:end_stone_brick_slab", "railways:track_ender_wide", 1);
|
||||
wideTrackRecipes("railways:track_tieless", "minecraft:glass_pane", "railways:track_tieless_wide", 1);
|
||||
wideTrackRecipes("railways:track_cherry", "minecraft:cherry_slab", "railways:track_cherry_wide", 1);
|
||||
wideTrackRecipes("railways:track_bamboo", "minecraft:bamboo", "railways:track_bamboo_wide", 1);
|
||||
wideTrackRecipes("railways:track_stripped_bamboo", "minecraft:bamboo_slab", "railways:track_stripped_bamboo_wide", 1);
|
||||
// Narrow-gauge tracks
|
||||
narrowTrackRecipes("create:track", "railways:track_create_andesite_narrow", "minecraft:stone_slab", 1);
|
||||
narrowTrackRecipes("railways:track_acacia", "railways:track_acacia_narrow", "minecraft:acacia_slab", 1);
|
||||
narrowTrackRecipes("railways:track_birch", "railways:track_birch_narrow", "minecraft:birch_slab", 1);
|
||||
narrowTrackRecipes("railways:track_dark_oak", "railways:track_dark_oak_narrow", "minecraft:dark_oak_slab", 1);
|
||||
narrowTrackRecipes("railways:track_jungle", "railways:track_jungle_narrow", "minecraft:jungle_slab", 1);
|
||||
narrowTrackRecipes("railways:track_oak", "railways:track_oak_narrow", "minecraft:oak_slab", 1);
|
||||
narrowTrackRecipes("railways:track_spruce", "railways:track_spruce_narrow", "minecraft:spruce_slab", 1);
|
||||
narrowTrackRecipes("railways:track_mangrove", "railways:track_mangrove_narrow", "minecraft:mangrove_slab", 1);
|
||||
narrowTrackRecipes("railways:track_warped", "railways:track_warped_narrow", "minecraft:warped_slab", 1);
|
||||
narrowTrackRecipes("railways:track_crimson", "railways:track_crimson_narrow", "minecraft:crimson_slab", 1);
|
||||
narrowTrackRecipes("railways:track_blackstone", "railways:track_blackstone_narrow", "minecraft:blackstone_slab", 1);
|
||||
narrowTrackRecipes("railways:track_ender", "railways:track_ender_narrow", "minecraft:end_stone_brick_slab", 1);
|
||||
narrowTrackRecipes("railways:track_tieless", "railways:track_tieless_narrow", "minecraft:glass_pane", 1);
|
||||
narrowTrackRecipes("railways:track_cherry", "railways:track_cherry_narrow", "minecraft:cherry_slab", 1);
|
||||
narrowTrackRecipes("railways:track_bamboo", "railways:track_bamboo_narrow", "minecraft:bamboo", 1);
|
||||
narrowTrackRecipes("railways:track_stripped_bamboo", "railways:track_stripped_bamboo_narrow", "minecraft:bamboo_slab", 1);
|
||||
if (Platform.isLoaded("biomesoplenty")) { // fuck it, we BoP again
|
||||
// Normal-gauge tracks
|
||||
normalTrackRecipes("biomesoplenty:dead_slab", "railways:track_biomesoplenty_dead", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("biomesoplenty:fir_slab", "railways:track_biomesoplenty_fir", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("biomesoplenty:hellbark_slab", "railways:track_biomesoplenty_hellbark", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("biomesoplenty:jacaranda_slab", "railways:track_biomesoplenty_jacaranda", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("biomesoplenty:magic_slab", "railways:track_biomesoplenty_magic", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("biomesoplenty:mahogany_slab", "railways:track_biomesoplenty_mahogany", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("biomesoplenty:palm_slab", "railways:track_biomesoplenty_palm", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("biomesoplenty:redwood_slab", "railways:track_biomesoplenty_redwood", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("biomesoplenty:umbran_slab", "railways:track_biomesoplenty_umbran", "minecraft:iron_nugget", 1);
|
||||
normalTrackRecipes("biomesoplenty:willow_slab", "railways:track_biomesoplenty_willow", "minecraft:iron_nugget", 1);
|
||||
// Wide-gauge tracks
|
||||
wideTrackRecipes("railways:track_biomesoplenty_dead", "biomesoplenty:dead_slab", "railways:track_biomesoplenty_dead_wide", 1);
|
||||
wideTrackRecipes("railways:track_biomesoplenty_fir", "biomesoplenty:fir_slab", "railways:track_biomesoplenty_fir_wide", 1);
|
||||
wideTrackRecipes("railways:track_biomesoplenty_hellbark", "biomesoplenty:hellbark_slab", "railways:track_biomesoplenty_hellbark_wide", 1);
|
||||
wideTrackRecipes("railways:track_biomesoplenty_jacaranda", "biomesoplenty:jacaranda_slab", "railways:track_biomesoplenty_jacaranda_wide", 1);
|
||||
wideTrackRecipes("railways:track_biomesoplenty_magic", "biomesoplenty:magic_slab", "railways:track_biomesoplenty_magic_wide", 1);
|
||||
wideTrackRecipes("railways:track_biomesoplenty_mahogany", "biomesoplenty:mahogany_slab", "railways:track_biomesoplenty_mahogany_wide", 1);
|
||||
wideTrackRecipes("railways:track_biomesoplenty_palm", "biomesoplenty:palm_slab", "railways:track_biomesoplenty_palm_wide", 1);
|
||||
wideTrackRecipes("railways:track_biomesoplenty_redwood", "biomesoplenty:redwood_slab", "railways:track_biomesoplenty_redwood_wide", 1);
|
||||
wideTrackRecipes("railways:track_biomesoplenty_umbran", "biomesoplenty:umbran_slab", "railways:track_biomesoplenty_umbran_wide", 1);
|
||||
wideTrackRecipes("railways:track_biomesoplenty_willow", "biomesoplenty:willow_slab", "railways:track_biomesoplenty_willow_wide", 1);
|
||||
// Narrow-gauge tracks
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_dead", "railways:track_biomesoplenty_dead_narrow", "biomesoplenty:dead_slab", 1);
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_fir", "railways:track_biomesoplenty_fir_narrow", "biomesoplenty:fir_slab", 1);
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_hellbark", "railways:track_biomesoplenty_hellbark_narrow", "biomesoplenty:hellbark_slab", 1);
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_jacaranda", "railways:track_biomesoplenty_jacaranda_narrow", "biomesoplenty:jacaranda_slab", 1);
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_magic", "railways:track_biomesoplenty_magic_narrow", "biomesoplenty:magic_slab", 1);
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_mahogany", "railways:track_biomesoplenty_mahogany_narrow", "biomesoplenty:mahogany_slab", 1);
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_palm", "railways:track_biomesoplenty_palm_narrow", "biomesoplenty:palm_slab", 1);
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_redwood", "railways:track_biomesoplenty_redwood_narrow", "biomesoplenty:redwood_slab", 1);
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_umbran", "railways:track_biomesoplenty_umbran_narrow", "biomesoplenty:umbran_slab", 1);
|
||||
narrowTrackRecipes("railways:track_biomesoplenty_willow", "railways:track_biomesoplenty_willow_narrow", "biomesoplenty:willow_slab", 1);
|
||||
}
|
||||
});
|
||||
console.log("Create: Steam and Rails compat script successfully loaded!")
|
||||
} else { console.log("Create: Steam and Rails was not found, skipping its compat scripts.") }
|
||||
368
kubejs/server_scripts/mods/optionalCompats/createdeco.js
Normal file
368
kubejs/server_scripts/mods/optionalCompats/createdeco.js
Normal file
|
|
@ -0,0 +1,368 @@
|
|||
/**
|
||||
* Compat for the createdeco mod
|
||||
*/
|
||||
if (Platform.isLoaded("createdeco")) {
|
||||
console.log("createdeco found and scripts loaded")
|
||||
ServerEvents.recipes(event => {
|
||||
function sheets(output, sheetsInput) {
|
||||
event.shaped(`createdeco:${output}`, [
|
||||
"H",
|
||||
"I",
|
||||
"I"
|
||||
], {
|
||||
H: "#forge:tools/hammers",
|
||||
I: sheetsInput
|
||||
})
|
||||
|
||||
event.recipes.gtceu.forge_hammer(`${output}_sheet`)
|
||||
.itemInputs(`3x ${sheetsInput}`)
|
||||
.itemOutputs(`2x createdeco:${output}`)
|
||||
.duration(56)
|
||||
.EUt(16)
|
||||
|
||||
event.recipes.gtceu.bender(`${output}_sheet`)
|
||||
.itemInputs(sheetsInput)
|
||||
.itemOutputs(`createdeco:${output}`)
|
||||
.circuit(1)
|
||||
.duration(56)
|
||||
.EUt(24)
|
||||
|
||||
event.recipes.gtceu.extruder(`${output}_sheet`)
|
||||
.itemInputs(sheetsInput)
|
||||
.notConsumable("gtceu:plate_extruder_mold")
|
||||
.itemOutputs(`createdeco:${output}`)
|
||||
.duration(56)
|
||||
.EUt(56)
|
||||
}
|
||||
|
||||
sheets("industrial_iron_sheet", "createdeco:industrial_iron_ingot")
|
||||
sheets("andesite_sheet", "create:andesite_alloy")
|
||||
|
||||
event.recipes.gtceu.cutter("industrial_iron_sheet")
|
||||
.itemInputs("create:industrial_iron_block")
|
||||
.itemOutputs("9x createdeco:industrial_iron_sheet")
|
||||
.duration(448)
|
||||
.EUt(30)
|
||||
|
||||
event.recipes.gtceu.cutter("andesite_sheet")
|
||||
.itemInputs("create:andesite_alloy_block")
|
||||
.itemOutputs("9x createdeco:andesite_sheet")
|
||||
.duration(448)
|
||||
.EUt(30)
|
||||
|
||||
function decor(sheet, ingot, bars, decorOutput, block) {
|
||||
// Windows
|
||||
event.remove({ output: `createdeco:${decorOutput}_window` })
|
||||
event.shaped(`2x createdeco:${decorOutput}_window`, [
|
||||
" I ",
|
||||
"IGI"
|
||||
], {
|
||||
I: ingot,
|
||||
G: "minecraft:glass"
|
||||
})
|
||||
// Overlay
|
||||
event.remove({ output: `createdeco:${decorOutput}_bars_overlay` })
|
||||
event.shaped(`8x createdeco:${decorOutput}_bars_overlay`, [
|
||||
" H ",
|
||||
"SSS",
|
||||
"SSS"
|
||||
], {
|
||||
S: sheet,
|
||||
H: "#forge:tools/hammers"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:${decorOutput}_bars_overlay`)
|
||||
.itemInputs(`3x ${sheet}`)
|
||||
.itemOutputs(`4x createdeco:${decorOutput}_bars_overlay`)
|
||||
.circuit(3)
|
||||
.duration(300)
|
||||
.EUt(4)
|
||||
// Mesh
|
||||
event.remove({ output: `createdeco:${decorOutput}_mesh_fence` })
|
||||
event.shaped(`8x createdeco:${decorOutput}_mesh_fence`, [
|
||||
" H ",
|
||||
"SsS",
|
||||
"SsS"
|
||||
], {
|
||||
S: sheet,
|
||||
s: "#forge:string",
|
||||
H: "#forge:tools/hammers"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:${decorOutput}_mesh_fence`)
|
||||
.itemInputs(`2x ${sheet}`)
|
||||
.itemInputs("#forge:string")
|
||||
.itemOutputs(`4x createdeco:${decorOutput}_mesh_fence`)
|
||||
.circuit(32)
|
||||
.duration(300)
|
||||
.EUt(4)
|
||||
// Catwalk
|
||||
event.remove({ output: `createdeco:${decorOutput}_catwalk` })
|
||||
event.shaped(`4x createdeco:${decorOutput}_catwalk`, [
|
||||
"sSH",
|
||||
"SBS",
|
||||
"DSs"
|
||||
], {
|
||||
B: bars,
|
||||
S: sheet,
|
||||
s: "#forge:screws/iron",
|
||||
H: "#forge:tools/hammers",
|
||||
D: "#forge:tools/screwdrivers"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:${decorOutput}_catwalk`)
|
||||
.itemInputs(`4x ${sheet}`)
|
||||
.itemInputs(bars)
|
||||
.itemOutputs(`4x createdeco:${decorOutput}_catwalk`)
|
||||
.circuit(31)
|
||||
.duration(300)
|
||||
.EUt(4)
|
||||
// Catwalk Stairs
|
||||
event.remove({ output: `createdeco:${decorOutput}_catwalk_stairs` })
|
||||
event.shaped(`2x createdeco:${decorOutput}_catwalk_stairs`, [
|
||||
" H",
|
||||
"DCs",
|
||||
"sBC"
|
||||
], {
|
||||
B: bars,
|
||||
C: `createdeco:${decorOutput}_catwalk`,
|
||||
s: "#forge:screws/iron",
|
||||
H: "#forge:tools/hammers",
|
||||
D: "#forge:tools/screwdrivers"
|
||||
})
|
||||
event.recipes.gtceu.bender(`createdeco:${decorOutput}_catwalk_stairs`)
|
||||
.itemInputs(`createdeco:${decorOutput}_catwalk`)
|
||||
.itemOutputs(`createdeco:${decorOutput}_catwalk_stairs`)
|
||||
.circuit(1)
|
||||
.duration(240)
|
||||
.EUt(24)
|
||||
// Catwalk Railing
|
||||
event.remove({ output: `createdeco:${decorOutput}_catwalk_railing` })
|
||||
event.shaped(`4x createdeco:${decorOutput}_catwalk_railing`, [
|
||||
"sDs",
|
||||
"SSS",
|
||||
"BHB"
|
||||
], {
|
||||
B: bars,
|
||||
S: sheet,
|
||||
s: "#forge:screws/iron",
|
||||
H: "#forge:tools/hammers",
|
||||
D: "#forge:tools/screwdrivers"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:${decorOutput}_catwalk_railing`)
|
||||
.itemInputs(`2x ${bars}`)
|
||||
.itemInputs(`2x ${sheet}`)
|
||||
.itemOutputs(`4x createdeco:${decorOutput}_catwalk_railing`)
|
||||
.circuit(30)
|
||||
.duration(300)
|
||||
.EUt(4)
|
||||
// Support Wedges
|
||||
event.remove({ output: `createdeco:${decorOutput}_support_wedge` })
|
||||
event.shaped(`3x createdeco:${decorOutput}_support_wedge`, [
|
||||
"SS",
|
||||
"HS"
|
||||
], {
|
||||
S: sheet,
|
||||
H: "#forge:tools/hammers"
|
||||
})
|
||||
event.recipes.gtceu.bender(`createdeco:${decorOutput}_support_wedge`)
|
||||
.itemInputs(sheet)
|
||||
.itemOutputs(`createdeco:${decorOutput}_support_wedge`)
|
||||
.circuit(32)
|
||||
.duration(240)
|
||||
.EUt(24)
|
||||
// Train Hull
|
||||
event.remove({ output: `createdeco:${decorOutput}_hull` })
|
||||
event.shaped(`createdeco:${decorOutput}_hull`, [
|
||||
"HS ",
|
||||
"SbS",
|
||||
" SF"
|
||||
], {
|
||||
b: block,
|
||||
S: sheet,
|
||||
H: "#forge:tools/hammers",
|
||||
F: "#forge:tools/files"
|
||||
})
|
||||
// Support
|
||||
event.remove({ output: `createdeco:${decorOutput}_support` })
|
||||
event.shaped(`4x createdeco:${decorOutput}_support`, [
|
||||
"IBI",
|
||||
"BHB",
|
||||
"IBI"
|
||||
], {
|
||||
I: ingot,
|
||||
B: bars,
|
||||
H: "#forge:tools/hammers"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:${decorOutput}_support`)
|
||||
.itemInputs(bars)
|
||||
.itemInputs(ingot)
|
||||
.itemOutputs(`2x createdeco:${decorOutput}_support`)
|
||||
.circuit(32)
|
||||
.duration(300)
|
||||
.EUt(4)
|
||||
// Lamps
|
||||
event.remove({ output: `createdeco:yellow_${decorOutput}_lamp` })
|
||||
event.remove({ output: `createdeco:red_${decorOutput}_lamp` })
|
||||
event.remove({ output: `createdeco:green_${decorOutput}_lamp` })
|
||||
event.remove({ output: `createdeco:blue_${decorOutput}_lamp` })
|
||||
event.shaped(`createdeco:yellow_${decorOutput}_lamp`, [
|
||||
" I ",
|
||||
"WLD",
|
||||
"sSs"
|
||||
], {
|
||||
I: ingot,
|
||||
S: sheet,
|
||||
s: "#forge:screws/iron",
|
||||
W: "#forge:tools/wrenches",
|
||||
D: "#forge:tools/screwdrivers",
|
||||
L: "minecraft:torch"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:yellow_${decorOutput}_lamp`)
|
||||
.itemInputs(`2x ${ingot}`)
|
||||
.itemInputs("minecraft:torch")
|
||||
.itemOutputs(`createdeco:yellow_${decorOutput}_lamp`)
|
||||
.duration(300)
|
||||
.EUt(7)
|
||||
event.shaped(`createdeco:red_${decorOutput}_lamp`, [
|
||||
" I ",
|
||||
"WLD",
|
||||
"sSs"
|
||||
], {
|
||||
I: ingot,
|
||||
S: sheet,
|
||||
s: "#forge:screws/iron",
|
||||
W: "#forge:tools/wrenches",
|
||||
D: "#forge:tools/screwdrivers",
|
||||
L: "minecraft:redstone_torch"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:red_${decorOutput}_lamp`)
|
||||
.itemInputs(`2x ${ingot}`)
|
||||
.itemInputs("minecraft:redstone_torch")
|
||||
.itemOutputs(`createdeco:red_${decorOutput}_lamp`)
|
||||
.duration(300)
|
||||
.EUt(7)
|
||||
event.shaped(`createdeco:green_${decorOutput}_lamp`, [
|
||||
" I ",
|
||||
"WLD",
|
||||
"sSs"
|
||||
], {
|
||||
I: ingot,
|
||||
S: sheet,
|
||||
s: "#forge:screws/iron",
|
||||
W: "#forge:tools/wrenches",
|
||||
D: "#forge:tools/screwdrivers",
|
||||
L: "minecraft:glow_berries"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:green_${decorOutput}_lamp`)
|
||||
.itemInputs(`2x ${ingot}`)
|
||||
.itemInputs("minecraft:glow_berries")
|
||||
.itemOutputs(`createdeco:green_${decorOutput}_lamp`)
|
||||
.duration(300)
|
||||
.EUt(7)
|
||||
event.shaped(`createdeco:blue_${decorOutput}_lamp`, [
|
||||
" I ",
|
||||
"WLD",
|
||||
"sSs"
|
||||
], {
|
||||
I: ingot,
|
||||
S: sheet,
|
||||
s: "#forge:screws/iron",
|
||||
W: "#forge:tools/wrenches",
|
||||
D: "#forge:tools/screwdrivers",
|
||||
L: "minecraft:soul_torch"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:blue_${decorOutput}_lamp`)
|
||||
.itemInputs(`2x ${ingot}`)
|
||||
.itemInputs("minecraft:soul_torch")
|
||||
.itemOutputs(`createdeco:blue_${decorOutput}_lamp`)
|
||||
.duration(300)
|
||||
.EUt(7)
|
||||
// Sheetmetal
|
||||
event.remove({ output: `createdeco:${decorOutput}_sheet_metal` })
|
||||
event.shaped(`4x createdeco:${decorOutput}_sheet_metal`, [
|
||||
" S ",
|
||||
"SHS",
|
||||
" S "
|
||||
], {
|
||||
S: sheet,
|
||||
H: "#forge:tools/hammers",
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:${decorOutput}_sheet_metal`)
|
||||
.itemInputs(sheet)
|
||||
.itemOutputs(`createdeco:${decorOutput}_sheet_metal`)
|
||||
.circuit(1)
|
||||
.duration(100)
|
||||
.EUt(4)
|
||||
}
|
||||
|
||||
decor("createdeco:andesite_sheet", "create:andesite_alloy", "createdeco:andesite_bars", "andesite", "#forge:storage_blocks/andesite_alloy")
|
||||
decor("#forge:plates/copper", "#forge:ingots/copper", "createdeco:copper_bars", "copper", "#forge:storage_blocks/copper")
|
||||
decor("#forge:plates/iron", "#forge:ingots/iron", "minecraft:iron_bars", "iron", "#forge:storage_blocks/iron")
|
||||
decor("createdeco:industrial_iron_sheet", "createdeco:industrial_iron_ingot", "createdeco:industrial_iron_bars", "industrial_iron", "create:industrial_iron_block")
|
||||
decor("#forge:plates/brass", "#forge:ingots/brass", "createdeco:brass_bars", "brass", "#forge:storage_blocks/brass")
|
||||
decor("#forge:plates/zinc", "#forge:ingots/zinc", "createdeco:zinc_bars", "zinc", "#forge:storage_blocks/zinc")
|
||||
|
||||
function ironlessDecor(sheet, ingot, decorOutput) {
|
||||
// Bars
|
||||
event.remove({ output: `createdeco:${decorOutput}_bars` })
|
||||
event.shaped(`8x createdeco:${decorOutput}_bars`, [
|
||||
" H ",
|
||||
"SSS",
|
||||
"SSS"
|
||||
], {
|
||||
S: ingot,
|
||||
H: "#forge:tools/hammers"
|
||||
})
|
||||
event.recipes.gtceu.assembler(`createdeco:${decorOutput}_bars`)
|
||||
.itemInputs(`3x ${ingot}`)
|
||||
.itemOutputs(`4x createdeco:${decorOutput}_bars`)
|
||||
.circuit(3)
|
||||
.duration(300)
|
||||
.EUt(4)
|
||||
// Trap Doors
|
||||
event.recipes.gtceu.assembler(`createdeco:${decorOutput}_trapdoor`)
|
||||
.itemInputs(`4x ${sheet}`)
|
||||
.itemOutputs(`createdeco:${decorOutput}_trapdoor`)
|
||||
.circuit(4)
|
||||
.duration(100)
|
||||
.EUt(16)
|
||||
// Doors
|
||||
event.recipes.gtceu.assembler(`createdeco:${decorOutput}_door`)
|
||||
.itemInputs(`6x ${sheet}`)
|
||||
.itemOutputs(`createdeco:${decorOutput}_door`)
|
||||
.circuit(4)
|
||||
.duration(100)
|
||||
.EUt(16)
|
||||
}
|
||||
|
||||
ironlessDecor("createdeco:andesite_sheet", "create:andesite_alloy", "andesite")
|
||||
ironlessDecor("#forge:plates/copper", "#forge:ingots/copper", "copper")
|
||||
ironlessDecor("createdeco:industrial_iron_sheet", "createdeco:industrial_iron_ingot", "industrial_iron")
|
||||
ironlessDecor("#forge:plates/brass", "#forge:ingots/brass", "brass")
|
||||
ironlessDecor("#forge:plates/zinc", "#forge:ingots/zinc", "zinc")
|
||||
|
||||
function bricks(forEach) {
|
||||
event.recipes.gtceu.assembler(`createdeco:mossy_${forEach}_bricks`)
|
||||
.itemInputs(`createdeco:${forEach}_bricks`)
|
||||
.itemInputs("minecraft:vine")
|
||||
.itemOutputs(`createdeco:mossy_${forEach}_bricks`)
|
||||
.duration(40)
|
||||
.EUt(1)
|
||||
}
|
||||
|
||||
// Vanilla Mossy Bricks
|
||||
event.recipes.gtceu.assembler("createdeco:mossy_red_bricks")
|
||||
.itemInputs("minecraft:bricks")
|
||||
.itemInputs("minecraft:vine")
|
||||
.itemOutputs("createdeco:mossy_red_bricks")
|
||||
.duration(40)
|
||||
.EUt(1)
|
||||
|
||||
bricks("pearl")
|
||||
bricks("dean")
|
||||
bricks("blue")
|
||||
bricks("dusk")
|
||||
bricks("umber")
|
||||
bricks("scarlet")
|
||||
bricks("verdant")
|
||||
|
||||
})
|
||||
}
|
||||
85
kubejs/server_scripts/mods/optionalCompats/fluxnetworks.js
Normal file
85
kubejs/server_scripts/mods/optionalCompats/fluxnetworks.js
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
/**
|
||||
* Compat for the fluxnetworks mod
|
||||
*/
|
||||
if (Platform.isLoaded("fluxnetworks")) {
|
||||
console.log("Flux Networks found, loading compat scripts...");
|
||||
|
||||
ServerEvents.recipes(event => {
|
||||
event.replaceInput({ id: "fluxnetworks:fluxconfigurator" }, "minecraft:obsidian", "enderio:infinity_rod");
|
||||
|
||||
// Flux Dust
|
||||
event.recipes.gtceu.chemical_bath("fluxnetworks:flux_dust")
|
||||
.itemInputs("1x gtceu:obsidian_dust")
|
||||
.inputFluids("gtceu:redstone 144")
|
||||
.itemOutputs("fluxnetworks:flux_dust")
|
||||
.duration(40)
|
||||
.EUt(16)
|
||||
|
||||
// Flux Block
|
||||
event.shaped("fluxnetworks:flux_block", [
|
||||
"FFF",
|
||||
"FFF",
|
||||
"FFF"
|
||||
], {
|
||||
F: "fluxnetworks:flux_dust"
|
||||
}).id("fluxnetworks:fluxblock")
|
||||
|
||||
event.shapeless("9x fluxnetworks:flux_dust", ["fluxnetworks:flux_block"]).id("fluxnetworks:fluxdust")
|
||||
|
||||
// Flux Core
|
||||
event.remove({ id: "fluxnetworks:fluxcore" })
|
||||
event.recipes.gtceu.assembler("fluxnetworks:fluxcore")
|
||||
.itemOutputs("2x fluxnetworks:flux_core")
|
||||
.itemInputs("1x minecraft:ender_eye", "4x enderio:reinforced_obsidian_block", "4x fluxnetworks:flux_dust", "1x gtceu:luv_sensor", "1x gtceu:luv_emitter", "4x laserio:energy_overclocker_card_tier_8")
|
||||
.EUt(GTValues.VA[GTValues.LuV])
|
||||
.duration(200)
|
||||
|
||||
// Flux Controller
|
||||
event.shaped("fluxnetworks:flux_controller", [
|
||||
"PCP",
|
||||
"RWR",
|
||||
"PBP"
|
||||
], {
|
||||
P: "gtceu:enriched_naquadah_plate",
|
||||
C: "fluxnetworks:flux_core",
|
||||
R: "gtceu:enriched_naquadah_rod",
|
||||
W: "wirelesschargers:advanced_wireless_player_charger",
|
||||
B: "fluxnetworks:flux_block"
|
||||
}).id("fluxnetworks:fluxcontroller")
|
||||
|
||||
// Flux Plug & Point
|
||||
event.shapeless("fluxnetworks:flux_plug", ["fluxnetworks:flux_core", "fluxnetworks:flux_block"]).id("fluxnetworks:fluxplug");
|
||||
event.shapeless("fluxnetworks:flux_point", ["fluxnetworks:flux_core", "minecraft:redstone_block"]).id("fluxnetworks:fluxpoint");
|
||||
|
||||
// Flux Storages
|
||||
event.shaped("fluxnetworks:basic_flux_storage", [
|
||||
"RBR",
|
||||
"GCG",
|
||||
"RBR"
|
||||
], {
|
||||
R: "gtceu:enriched_naquadah_rod",
|
||||
G: "#forge:glass_panes",
|
||||
C: "enderio:advanced_capacitor_bank",
|
||||
B: "fluxnetworks:flux_block"
|
||||
}).id("fluxnetworks:basicfluxstorage")
|
||||
event.shaped("fluxnetworks:herculean_flux_storage", [
|
||||
"SSS",
|
||||
"GCG",
|
||||
"SSS"
|
||||
], {
|
||||
S: "fluxnetworks:basic_flux_storage",
|
||||
G: "#forge:glass_panes",
|
||||
C: "gtceu:zero_point_module",
|
||||
}).id("fluxnetworks:herculeanfluxstorage")
|
||||
event.shaped("fluxnetworks:gargantuan_flux_storage", [
|
||||
"SSS",
|
||||
"GCG",
|
||||
"SSS"
|
||||
], {
|
||||
S: "fluxnetworks:herculean_flux_storage",
|
||||
G: "#forge:glass_panes",
|
||||
C: "gtceu:max_battery",
|
||||
}).id("fluxnetworks:gargantuanfluxstorage")
|
||||
|
||||
})
|
||||
}
|
||||
59
kubejs/server_scripts/mods/optionalCompats/modularrouters.js
Normal file
59
kubejs/server_scripts/mods/optionalCompats/modularrouters.js
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
/**
|
||||
* Optional compat script for Modular Routers
|
||||
*
|
||||
* Midly gated behind LV circuits & alloys. Upgrades gated behind LV cutter.
|
||||
* Energy tx gated behind LV Autoclave & MV alloy wires.
|
||||
*/
|
||||
if (Platform.isLoaded("modularrouters")) {
|
||||
console.log("Modular Routers found, loading server compat scripts...")
|
||||
ServerEvents.recipes(event => {
|
||||
let replaceMultiple = function (which, arrRepl) {
|
||||
arrRepl.forEach(
|
||||
([from, to]) => event.replaceInput(which, from, to)
|
||||
)
|
||||
}
|
||||
|
||||
event.remove({ output: "modularrouters:modular_router" })
|
||||
event.shaped("4x modularrouters:modular_router", [
|
||||
"PBP",
|
||||
"BCB",
|
||||
"PBP"
|
||||
], {
|
||||
P: "gtceu:dark_steel_plate",
|
||||
C: "#gtceu:circuits/lv",
|
||||
B: "enderio:dark_steel_bars"
|
||||
})
|
||||
|
||||
event.replaceInput(/modularrouters:(sender|puller)_module_2(_x4)?/, "minecraft:ender_pearl", "enderio:pulsating_crystal")
|
||||
|
||||
replaceMultiple("modularrouters:energy_output_module", [
|
||||
["minecraft:gold_ingot", "gtceu:vibrant_alloy_single_wire"],
|
||||
["#forge:storage_blocks/redstone", "kubejs:resonating_crystal"]
|
||||
])
|
||||
|
||||
replaceMultiple("modularrouters:energy_upgrade", [
|
||||
["minecraft:gold_ingot", "gtceu:conductive_alloy_double_wire"],
|
||||
["#forge:storage_blocks/redstone", "kubejs:resonating_crystal"]
|
||||
])
|
||||
|
||||
replaceMultiple("modularrouters:speed_upgrade", [
|
||||
["minecraft:gold_ingot", "thermal:redstone_servo"],
|
||||
["minecraft:gold_nugget", "gtceu:electrum_plate"]
|
||||
])
|
||||
|
||||
replaceMultiple("modularrouters:blank_module", [
|
||||
["minecraft:redstone", "#gtceu:circuits/ulv"],
|
||||
["minecraft:gold_nugget", "gtceu:electrum_nugget"]
|
||||
])
|
||||
|
||||
replaceMultiple("modularrouters:blank_upgrade", [
|
||||
["minecraft:lapis_lazuli", "gtceu:lapis_plate"],
|
||||
["minecraft:gold_nugget", "gtceu:electrum_nugget"]
|
||||
])
|
||||
|
||||
replaceMultiple(/modularrouters:range_(up|down)_augment/, [
|
||||
["#forge:rods/wooden", "gtceu:electrum_rod"],
|
||||
["minecraft:quartz", "minecraft:ender_pearl"]
|
||||
])
|
||||
})
|
||||
}
|
||||
|
|
@ -0,0 +1,171 @@
|
|||
/**
|
||||
* Optional compat script for Project Red: Transmission.
|
||||
* Requires both the core and addon to be loaded to take effect.
|
||||
*/
|
||||
if (Platform.isLoaded("projectred_transmission")) {
|
||||
console.log("Project Red: Transmission found, loading server compat scripts...")
|
||||
ServerEvents.recipes(event => {
|
||||
/* Remove uncessary recipes */
|
||||
event.remove([
|
||||
{ id: "projectred_core:red_iron_comp" },
|
||||
{ id: "projectred_core:red_ingot" },
|
||||
{ id: "projectred_core:electrotine_iron_comp" },
|
||||
{ id: "projectred_core:electrotine_ingot" },
|
||||
{ id: "projectred_core:sand_coal_comp" },
|
||||
{ id: "projectred_core:boule" },
|
||||
{ id: "projectred_core:silicon" },
|
||||
{ id: "projectred_core:draw_plate" },
|
||||
{ id: "projectred_core:screwdriver" },
|
||||
{ id: "projectred_core:copper_coil" },
|
||||
{ id: "projectred_core:iron_coil" },
|
||||
{ id: "projectred_core:gold_coil" },
|
||||
{ id: "projectred_core:motor" },
|
||||
{ id: "projectred_core:woven_cloth" },
|
||||
{ id: "projectred_core:sail" },
|
||||
{ id: "projectred_core:electrotine_silicon_comp" },
|
||||
{ id: "projectred_core:electrotine_silicon" },
|
||||
{ id: "projectred_core:electrotine_generator" }
|
||||
])
|
||||
|
||||
/* Remove Transmission power cable recipes */
|
||||
event.remove({ id: "projectred_transmission:low_load_power_wire" })
|
||||
event.remove({ id: "projectred_transmission:low_load_framed_power_wire" })
|
||||
|
||||
/* Circuit plates using GT cutter and saw */
|
||||
event.remove({ id: "projectred_core:plate" })
|
||||
event.shaped("2x projectred_core:plate", [
|
||||
" S ",
|
||||
" B ",
|
||||
" "
|
||||
], {
|
||||
S: "#forge:tools/saws",
|
||||
B: "minecraft:smooth_stone"
|
||||
})
|
||||
|
||||
event.recipes.gtceu.cutter("projectred_circuit")
|
||||
.itemInputs("minecraft:smooth_stone_slab")
|
||||
.inputFluids(Fluid.of("minecraft:water", 40))
|
||||
.itemOutputs("4x projectred_core:plate")
|
||||
.duration(100)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.cutter("projectred_circuit_distilled")
|
||||
.itemInputs("minecraft:smooth_stone_slab")
|
||||
.inputFluids(Fluid.of("gtceu:distilled_water", 30))
|
||||
.itemOutputs("4x projectred_core:plate")
|
||||
.duration(100)
|
||||
.EUt(32)
|
||||
|
||||
event.recipes.gtceu.cutter("projectred_circuit_lubricant")
|
||||
.itemInputs("minecraft:smooth_stone_slab")
|
||||
.inputFluids(Fluid.of("gtceu:lubricant", 10))
|
||||
.itemOutputs("4x projectred_core:plate")
|
||||
.duration(100)
|
||||
.EUt(32)
|
||||
|
||||
/* Red Alloy Wire */
|
||||
event.remove({ id: "projectred_transmission:red_alloy_wire" })
|
||||
event.shaped("12x projectred_transmission:red_alloy_wire", [
|
||||
" R ",
|
||||
" R ",
|
||||
" R "
|
||||
], {
|
||||
R: "gtceu:red_alloy_single_wire"
|
||||
})
|
||||
|
||||
/* Insulated Red Alloy Wire */
|
||||
const dyeColors = [
|
||||
"white", "black", "purple", "red", "orange", "green", "lime",
|
||||
"blue", "light_blue", "pink", "cyan", "magenta", "yellow", "gray", "light_gray", "brown"
|
||||
];
|
||||
dyeColors.forEach(color => {
|
||||
event.remove({ id: `projectred_transmission:${color}_insulated_wire` });
|
||||
});
|
||||
|
||||
event.shaped("projectred_transmission:black_insulated_wire", [
|
||||
"WR ",
|
||||
" "
|
||||
], {
|
||||
W: "projectred_transmission:red_alloy_wire",
|
||||
R: "#forge:rubber_plates"
|
||||
})
|
||||
|
||||
/* Bundled Wire using moar rubba' mate as a second unsulation mimicking multi-core cable instead of String */
|
||||
event.remove({ id: "projectred_transmission:neutral_bundled_wire" })
|
||||
event.shaped("projectred_transmission:neutral_bundled_wire", [
|
||||
"SWS",
|
||||
"WWW",
|
||||
"SWS"
|
||||
], {
|
||||
W: "#projectred_transmission:insulated_wire",
|
||||
S: "#forge:rubber_plates"
|
||||
})
|
||||
|
||||
/* Insulated Wire & Bundled Wire using Assembly Machine */
|
||||
event.recipes.gtceu.assembler("projectred_black_insulated_wire_rubber")
|
||||
.itemInputs("1x projectred_transmission:red_alloy_wire")
|
||||
.inputFluids(Fluid.of("gtceu:rubber", 144))
|
||||
.itemOutputs("1x projectred_transmission:black_insulated_wire")
|
||||
.duration(50)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.assembler("projectred_black_insulated_wire_styrene_rubber")
|
||||
.itemInputs("1x projectred_transmission:red_alloy_wire")
|
||||
.inputFluids(Fluid.of("gtceu:styrene_butadiene_rubber", 36))
|
||||
.itemOutputs("1x projectred_transmission:black_insulated_wire")
|
||||
.duration(50)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.assembler("projectred_black_insulated_wire_silicone_rubber")
|
||||
.itemInputs("1x projectred_transmission:red_alloy_wire")
|
||||
.inputFluids(Fluid.of("gtceu:silicone_rubber", 72))
|
||||
.itemOutputs("1x projectred_transmission:black_insulated_wire")
|
||||
.duration(50)
|
||||
.EUt(7)
|
||||
|
||||
event.recipes.gtceu.assembler("projectred_bundled_wire_rubber")
|
||||
.itemInputs("5x projectred_transmission:red_alloy_wire")
|
||||
.inputFluids(Fluid.of("gtceu:rubber", 432))
|
||||
.itemOutputs("1x projectred_transmission:neutral_bundled_wire")
|
||||
.duration(50)
|
||||
.EUt(7)
|
||||
.circuit(9)
|
||||
|
||||
event.recipes.gtceu.assembler("projectred_bundled_wire_styrene_rubber")
|
||||
.itemInputs("5x projectred_transmission:red_alloy_wire")
|
||||
.inputFluids(Fluid.of("gtceu:styrene_butadiene_rubber", 144))
|
||||
.itemOutputs("1x projectred_transmission:neutral_bundled_wire")
|
||||
.duration(50)
|
||||
.EUt(7)
|
||||
.circuit(9)
|
||||
|
||||
event.recipes.gtceu.assembler("projectred_bundled_wire_silicone_rubber")
|
||||
.itemInputs("5x projectred_transmission:red_alloy_wire")
|
||||
.inputFluids(Fluid.of("gtceu:silicone_rubber", 288))
|
||||
.itemOutputs("1x projectred_transmission:neutral_bundled_wire")
|
||||
.duration(50)
|
||||
.EUt(7)
|
||||
.circuit(9)
|
||||
|
||||
/* Silicon compounds using GT silicon wafers */
|
||||
event.remove({ id: "projectred_core:red_silicon_comp" })
|
||||
event.shaped("projectred_core:red_silicon_comp", [
|
||||
"SSS",
|
||||
"SCS",
|
||||
"SSS"
|
||||
], {
|
||||
C: "gtceu:silicon_wafer",
|
||||
S: "minecraft:redstone"
|
||||
})
|
||||
|
||||
event.remove({ id: "projectred_core:glow_silicon_comp" })
|
||||
event.shaped("projectred_core:glow_silicon_comp", [
|
||||
"SSS",
|
||||
"SCS",
|
||||
"SSS"
|
||||
], {
|
||||
C: "gtceu:silicon_wafer",
|
||||
S: "minecraft:glowstone_dust"
|
||||
})
|
||||
})
|
||||
}
|
||||
35
kubejs/server_scripts/mods/optionalCompats/tempad.js
Normal file
35
kubejs/server_scripts/mods/optionalCompats/tempad.js
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
/**
|
||||
* Compat for the tempad mod
|
||||
*/
|
||||
if (Platform.isLoaded("tempad")) {
|
||||
console.log("Tempad found, loading compat scripts...")
|
||||
LootJS.modifiers((event) => {
|
||||
event.addLootTableModifier("minecraft:chests/simple_dungeon")
|
||||
.randomChance(0.02)
|
||||
.addLoot("tempad:tempad");
|
||||
})
|
||||
ServerEvents.tags("item", event => {
|
||||
event.add("tempad:tempad_fuel", "kubejs:moni_penny")
|
||||
})
|
||||
ServerEvents.recipes(event => {
|
||||
event.shaped("tempad:tempad", [
|
||||
"PFP",
|
||||
"CNC",
|
||||
"PSP"
|
||||
], {
|
||||
P: "gtceu:electrum_plate",
|
||||
C: "#gtceu:circuits/mv",
|
||||
F: "gtceu:mv_field_generator",
|
||||
S: "gtceu:mv_sensor",
|
||||
N: "waystones:warp_stone"
|
||||
}).id("tempad:tempad")
|
||||
|
||||
event.recipes.gtceu.assembler("tempad:he_who_remains_tempad")
|
||||
.itemInputs("tempad:tempad", "gtceu:lapotron_crystal", "4x #gtceu:circuits/ev", "16x kubejs:quantum_flux", "8x gtceu:tungsten_carbide_plate", "2x gtceu:signalum_plate")
|
||||
.inputFluids(Fluid.of("gtceu:mana", 1000))
|
||||
.itemOutputs("tempad:he_who_remains_tempad")
|
||||
.duration(100)
|
||||
.EUt(512)
|
||||
})
|
||||
console.log("Tempad compat scripts successfully loaded!")
|
||||
} else { console.log("Tempad was not found, skipping its compat scripts.") }
|
||||
150
kubejs/server_scripts/mods/optionalCompats/xnet.js
Normal file
150
kubejs/server_scripts/mods/optionalCompats/xnet.js
Normal file
|
|
@ -0,0 +1,150 @@
|
|||
/*
|
||||
Gating synopsis:
|
||||
Regular XNet stuff: Late LV
|
||||
Advanced connectors: MV
|
||||
Routing: HV
|
||||
Wireless Routing: EV
|
||||
Antenna Dish: IV
|
||||
*/
|
||||
if (Platform.isLoaded("xnet")) {
|
||||
console.log("XNet found, loading compat scripts...")
|
||||
ServerEvents.recipes(event => {
|
||||
// Remove all recipes from RFToolsBase and XNet
|
||||
event.remove({ mod: "rftoolsbase" })
|
||||
event.remove({ mod: "xnet" })
|
||||
|
||||
// Add back in RFTools' information screen for the funsies
|
||||
event.shapeless("rftoolsbase:information_screen", ["gtceu:computer_monitor_cover"]);
|
||||
event.shapeless("gtceu:computer_monitor_cover", ["rftoolsbase:information_screen"]);
|
||||
|
||||
// Add back in RFTools' Filter Module because of its functionality with XNet
|
||||
event.shaped("rftoolsbase:filter_module", [
|
||||
" P ",
|
||||
"RHR",
|
||||
" I "
|
||||
], {
|
||||
P: "#forge:paper",
|
||||
R: "#forge:dusts/redstone",
|
||||
H: "minecraft:hopper",
|
||||
I: "#forge:plates/steel"
|
||||
})
|
||||
|
||||
// Basic Cables
|
||||
let colors = ["red", "green", "blue", "yellow"];
|
||||
colors.forEach((color) => {
|
||||
event.recipes.gtceu.assembler(`xnet:netcable_${color}`)
|
||||
.itemOutputs(`16x xnet:netcable_${color}`)
|
||||
.itemInputs(["2x gtceu:fine_red_alloy_wire", "gtceu:fine_gold_wire", "gtceu:pulsating_alloy_single_wire", `#forge:dyes/${color}`, "2x gtceu:carbon_fiber_mesh"])
|
||||
.EUt(GTValues.VHA[GTValues.LV])
|
||||
.duration(100)
|
||||
event.recipes.gtceu.assembler(`xnet:connector_${color}`)
|
||||
.itemOutputs(`2x xnet:connector_${color}`)
|
||||
.itemInputs([`xnet:netcable_${color}`, "ae2:formation_core", "ae2:annihilation_core", "2x #forge:plates/steel"])
|
||||
.inputFluids(Fluid.of("gtceu:soldering_alloy", 72))
|
||||
.EUt(GTValues.VHA[GTValues.LV])
|
||||
.duration(120)
|
||||
event.shapeless(`xnet:netcable_${color}`, [`#forge:dyes/${color}`, "8x #xnet:cables"])
|
||||
})
|
||||
|
||||
// Advanced connectors
|
||||
let advanced_connector_types = ["red", "green", "blue", "yellow", "routing"];
|
||||
advanced_connector_types.forEach((type) => {
|
||||
event.recipes.gtceu.assembler(`xnet:advanced_connector_${type}`)
|
||||
.itemOutputs(`xnet:advanced_connector_${type}`)
|
||||
.itemInputs([`xnet:connector_${type}`, "gtceu:diamond_plate", "gtceu:enori_gear"])
|
||||
.inputFluids(Fluid.of("thermal:ender", 250))
|
||||
.EUt(GTValues.VA[GTValues.MV])
|
||||
.duration(120)
|
||||
})
|
||||
event.recipes.gtceu.assembler("xnet:connector_upgrade")
|
||||
.itemOutputs("xnet:connector_upgrade")
|
||||
.itemInputs(["#forge:paper", "gtceu:diamond_plate", "gtceu:enori_gear"])
|
||||
.inputFluids(Fluid.of("thermal:ender", 250))
|
||||
.EUt(GTValues.VA[GTValues.MV])
|
||||
.duration(140)
|
||||
|
||||
// Routing
|
||||
event.recipes.gtceu.assembler("xnet:netcable_routing")
|
||||
.itemOutputs("16x xnet:netcable_routing")
|
||||
.itemInputs(["2x gtceu:fine_red_alloy_wire", "gtceu:fine_gold_wire", "gtceu:fine_borosilicate_glass_wire", "gtceu:pulsating_alloy_single_wire", "2x gtceu:carbon_fiber_mesh"])
|
||||
.EUt(GTValues.VHA[GTValues.HV])
|
||||
.duration(100)
|
||||
event.recipes.gtceu.assembler("xnet:connector_routing")
|
||||
.itemOutputs("2x xnet:connector_routing")
|
||||
.itemInputs(["xnet:netcable_routing", "ae2:formation_core", "ae2:annihilation_core", "2x #forge:plates/stainless_steel"])
|
||||
.inputFluids(Fluid.of("gtceu:soldering_alloy", 72))
|
||||
.EUt(GTValues.VHA[GTValues.HV])
|
||||
.duration(120)
|
||||
|
||||
event.shaped("xnet:controller", [
|
||||
"LML",
|
||||
"CHC",
|
||||
"PSP"
|
||||
], {
|
||||
L: "#gtceu:circuits/ulv",
|
||||
M: "#gtceu:circuits/lv",
|
||||
C: "#xnet:cables",
|
||||
H: "gtceu:lv_machine_hull",
|
||||
P: "#forge:plates/steel",
|
||||
S: "gtceu:tin_single_cable"
|
||||
})
|
||||
|
||||
event.shaped("16x xnet:facade", [
|
||||
"PSP",
|
||||
"SGS",
|
||||
"PSP"
|
||||
], {
|
||||
P: "#forge:paper",
|
||||
S: "#forge:plates/steel",
|
||||
G: "#forge:glass"
|
||||
})
|
||||
|
||||
event.shaped("xnet:router", [
|
||||
"LML",
|
||||
"CHC",
|
||||
"PSP"
|
||||
], {
|
||||
L: "#gtceu:circuits/mv",
|
||||
M: "#gtceu:circuits/hv",
|
||||
C: "xnet:netcable_routing",
|
||||
H: "gtceu:hv_machine_hull",
|
||||
P: "#forge:plates/ender_pearl",
|
||||
S: "gtceu:gold_single_cable"
|
||||
})
|
||||
|
||||
event.shaped("xnet:wireless_router", [
|
||||
"LML",
|
||||
"CHC",
|
||||
"PSP"
|
||||
], {
|
||||
L: "#gtceu:circuits/hv",
|
||||
M: "#gtceu:circuits/ev",
|
||||
C: "xnet:netcable_routing",
|
||||
H: "gtceu:hv_machine_hull",
|
||||
P: "#forge:plates/ender_pearl",
|
||||
S: "gtceu:platinum_single_cable"
|
||||
})
|
||||
|
||||
// Wireless Routing Antennas
|
||||
event.recipes.gtceu.assembler("xnet:antenna")
|
||||
.itemOutputs("xnet:antenna")
|
||||
.itemInputs(["3x #forge:rods/iron", "2x minecraft:iron_bars", "gtceu:ev_emitter", "3x gtceu:fine_annealed_copper_wire"])
|
||||
.EUt(GTValues.VA[GTValues.EV])
|
||||
.duration(140)
|
||||
event.recipes.gtceu.assembler("xnet:antenna_base")
|
||||
.itemOutputs("xnet:antenna_base")
|
||||
.itemInputs(["1x #forge:rods/iron", "2x #forge:plates/iron", "gtceu:ev_emitter", "2x gtceu:fine_annealed_copper_wire"])
|
||||
.EUt(GTValues.VHA[GTValues.EV])
|
||||
.duration(100)
|
||||
event.recipes.gtceu.assembler("xnet:antenna_dish")
|
||||
.itemOutputs("xnet:antenna_dish")
|
||||
.itemInputs(["1x #forge:rods/iron", "gtceu:iv_sensor", "gtceu:iv_emitter", "2x #forge:plates/tungsten_steel", "2x gtceu:fine_annealed_copper_wire"])
|
||||
.EUt(GTValues.VA[GTValues.IV])
|
||||
.duration(240)
|
||||
|
||||
// Redstone Proxies
|
||||
event.shapeless("2x xnet:redstone_proxy", ["gtceu:lv_machine_hull", "kubejs:resonating_crystal", "2x #forge:dusts/redstone", "#xnet:cables"])
|
||||
event.shapeless("xnet:redstone_proxy_upd", ["xnet:redstone_proxy"])
|
||||
event.shapeless("xnet:redstone_proxy", ["xnet:redstone_proxy_upd"])
|
||||
})
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue