kubejs: reimport, update quests

This commit is contained in:
2025-02-02 16:42:02 +01:00
parent ce569348bc
commit 5593866a0f
54 changed files with 2468 additions and 333 deletions

140
kubejs/server_scripts/mods/ae2.js Executable file
View File

@ -0,0 +1,140 @@
ServerEvents.recipes(event => {
event.replaceInput(
{type: 'ae2:inscriber'},
'minecraft:gold_ingot',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput(
{type: 'ae2:inscriber'},
'minecraft:diamond',
'#kubejs:grist/intelligent/basic'
);
event.recipes.ars_nouveau.imbuement(
'ae2:charged_certus_quartz_crystal',
'ae2:fluix_crystal',
400,
[]
);
event.replaceInput(
{type: 'ae2:item_transformation'},
'minecraft:quartz',
'#forge:dusts/quartz'
);
event.replaceInput(
{mod: 'ae2'},
'minecraft:quartz',
'#forge:dusts/quartz'
);
event.shapeless('ae2:fluix_dust', ['ae2:fluix_crystal', '#alltheores:ore_hammers']);
event.shapeless('ae2:sky_dust', ['ae2:sky_stone_block', '#alltheores:ore_hammers']);
event.shapeless('ae2:certus_quartz_dust', ['#forge:gems/certus_quartz', '#alltheores:ore_hammers']);
event.custom({
type: "thermal:pulverizer",
ingredients: [
{ tag: 'forge:gems/certus_quartz' }
],
result: [
{ item: 'ae2:certus_quartz_dust' },
],
});
event.custom({
type: "thermal:pulverizer",
ingredients: [
{ item: 'ae2:fluix_crystal' }
],
result: [
{ item: 'ae2:fluix_dust' },
],
});
event.custom({
type: "thermal:pulverizer",
ingredients: [
{ item: 'ae2:sky_stone_block' }
],
result: [
{ item: 'ae2:sky_dust' },
],
});
event.custom({
type: "thermal:press",
ingredients: [
{ tag: 'kubejs:grist/intelligent/basic'},
{ item: "ae2:logic_processor_press" }
],
result: [{item: 'ae2:printed_logic_processor'}]
});
event.custom({
type: "thermal:press",
ingredients: [
{ tag: 'kubejs:grist/intelligent/basic'},
{ item: "ae2:engineering_processor_press" }
],
result: [{item: 'ae2:printed_engineering_processor'}]
});
event.custom({
type: "thermal:press",
ingredients: [
{ item: 'ae2:certus_quartz_crystal'},
{ item: "ae2:calculation_processor_press" }
],
result: [{item: 'ae2:printed_calculation_processor'}]
});
event.custom({
type: "thermal:press",
ingredients: [
{ tag: 'forge:silicon'},
{ item: "ae2:silicon_press" }
],
result: [{item: 'ae2:printed_silicon'}]
});
event.replaceInput(
{id: 'ae2:network/parts/panels_semi_dark_monitor'},
'minecraft:glowstone_dust',
'#forge:dusts/copper'
);
event.replaceInput(
{id: 'ae2:network/parts/panels_semi_dark_monitor'},
'ae2:quartz_glass',
'#forge:glass/colorless'
);
event.replaceInput(
{id: 'ae2:tools/matter_cannon'},
'minecraft:iron_ingot',
'#kubejs:grist/build/improved'
);
event.recipes.thermal.smelter('4x ae2:quartz_glass', ["4x ae2:certus_quartz_dust", '4x #forge:glass', '#kubejs:grist/energetic/basic']);
event.replaceInput(
{id: 'ae2:misc/fluixpearl'},
'#forge:ender_pearls',
'#kubejs:grist/intelligent/improved'
);
event.replaceInput(
{id: "ae2:network/crafting/cpu_crafting_unit"},
"ae2:logic_processor",
'kubejs:deep_intelligent_processor'
);
event.replaceInput(
{id: "ae2:network/crafting/cpu_crafting_unit"},
"ae2:calculation_processor",
"kubejs:intelligent_processor"
);
event.replaceInput(
{mod: 'ae2things'},
'minecraft:netherite_ingot',
'#kubejs:grist/intelligent/radiant'
);
});

View File

@ -0,0 +1,67 @@
ServerEvents.recipes(event => {
event.replaceInput(
{id: 'ars_nouveau:enchanting_apparatus'},
'minecraft:diamond',
'#kubejs:grist/intelligent/improved'
);
event.shaped('ars_nouveau:imbuement_chamber', [
'ABA',
'ACA',
'ABA'
], {
'A': 'ars_nouveau:archwood_planks',
'B': 'minecraft:gold_ingot',
'C': '#kubejs:grist/intelligent/basic'
});
event.replaceInput(
{mod: 'ars_nouveau'},
'minecraft:lapis_lazuli',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput(
{mod: 'ars_nouveau'},
'minecraft:redstone_block',
'#kubejs:grist/energetic/basic'
);
event.shaped('ars_nouveau:novice_spell_book', [
' A ',
'ABA',
' A '
], {
'A': '#kubejs:grist/intelligent/basic',
'B': 'minecraft:book'
});
event.shaped('ars_nouveau:dominion_wand', [
' AC',
' BA',
'B ',
], {
'A': 'ars_nouveau:source_gem',
'B': 'minecraft:stick',
'C': '#kubejs:grist/intelligent/basic'
});
event.recipes.ars_nouveau.imbuement(
'kubejs:grist_intelligent_basic_block',
'2x ars_nouveau:source_gem_block',
800,
['minecraft:gold_block', 'kubejs:insightful_blend', 'minecraft:lapis_block']
);
event.replaceInput(
{output: 'ars_nouveau:arcane_pedestal'},
'ars_nouveau:source_gem',
'kubejs:grist_intelligent_basic'
);
event.replaceInput(
{output: 'ars_nouveau:sourcestone'},
'ars_nouveau:source_gem',
'minecraft:lapis_lazuli'
);
});

View File

@ -0,0 +1,5 @@
ServerEvents.recipes(event => {
event.replaceInput({output: 'bakery:yeast'}, 'minecraft:water_bucket', '#forge:water_bottles');
event.replaceInput({output: 'bakery:yeast'}, 'minecraft:brown_mushroom', '#forge:mushrooms');
event.replaceInput({output: 'bakery:yeast'}, 'minecraft:sugar', '#caupona:sugar');
});

View File

@ -0,0 +1,13 @@
ServerEvents.recipes(event => {
event.replaceInput(
{mod: 'botanypots'},
'minecraft:flower_pot',
'#kubejs:grist/agricultural/basic'
);
event.replaceInput(
{mod: 'botanypots'},
'minecraft:hopper',
'#forge:hoppers'
)
})

View File

@ -0,0 +1,3 @@
ServerEvents.recipes(event => {
});

View File

@ -0,0 +1,23 @@
ServerEvents.recipes(event => {
// Gate building gadgets behind late-game build grist
event.replaceInput(
{mod: 'buildinggadgets2'},
'minecraft:redstone',
'#kubejs:grist/energetic/basic'
)
event.replaceInput(
{mod: 'buildinggadgets2'},
'minecraft:lapis_lazuli',
'#kubejs:grist/build/basic'
)
event.replaceInput(
{mod: 'buildinggadgets2'},
'minecraft:emerald',
'#kubejs:grist/build/improved'
)
event.replaceInput(
{mod: 'buildinggadgets2'},
'minecraft:diamond',
'#kubejs:grist/build/radiant'
)
})

View File

@ -0,0 +1,3 @@
ServerEvents.recipes(event => {
event.recipes.thermal.pulverizer("4x caupona:lateres", ['minecraft:brick']);
});

View File

@ -0,0 +1,7 @@
ServerEvents.recipes(event => {
event.replaceInput(
{id: 'cookingforblockheads:crafting_book'},
'minecraft:diamond',
'#kubejs:grist/agricultural/basic'
);
});

View File

@ -0,0 +1,40 @@
ServerEvents.recipes(event => {
event.recipes.thermal.pulverizer("3x croptopia:flour", ['minecraft:wheat']);
event.shapeless('2x croptopia:flour', ['minecraft:wheat', '#alltheores:ore_hammers']);
let jamFruits = ['apricot', 'blackberry', 'blueberry', 'cherry', 'elderberry', 'grape', 'peach', 'raspberry', 'straberry'];
jamFruits.forEach(fruit => {
event.replaceInput({output: `croptopia:${fruit}_jam`}, 'minecraft:glass_bottle', 'thermal:jar');
});
event.custom({
type: "thermal:press",
ingredients: [
{ tag: 'forge:peanuts', count: 3},
{ item: "croptopia:food_press" }
],
result: ["croptopia:peanut_butter"]
});
let saplingTag = Ingredient.of("#forge:saplings");
saplingTag.getStacks().toArray().forEach(sapling => {
let saplingID = sapling.getId().split(':');
let fruitOutput = saplingID[1].split('_')[0];
let outputTag = Ingredient.of(`#forge:crops/${fruitOutput}`).getStacks().toArray()[0].getId();
console.log("Insolating " + outputTag + " from " + sapling);
event.recipes.thermal.insolator(outputTag, sapling).water(400);
// forge:crops/pear
});
event.recipes.thermal.bottler('croptopia:steamed_rice', [Fluid.of("minecraft:water", 50), '#forge:grain/rice']);
event.recipes.thermal.bottler('croptopia:dough', [Fluid.of("minecraft:water", 50), '#forge:flour']);
let _ = ['pizza', 'supreme_pizza', 'cheese_pizza', 'pineapple_pepperoni_pizza', 'anchovy_pizza'].forEach(pizza => {
event.replaceInput(
{output: `croptopia:${pizza}`},
'#forge:tomatoes',
'#forge:tomato_sauces'
);
});
});

View File

@ -0,0 +1,74 @@
ServerEvents.recipes(event => {
global.replaceInputs(
event,
{mod: 'darkutils'}, [
['#darkutils:plate_base', 'darkutils:blank_plate'],
['#minecraft:fence_gates', 'darkutils:blank_plate'],
['#forge:stone', '#kubejs:grist/intelligent/basic']
]);
event.custom(
{
"type": "industrialforegoing:dissolution_chamber",
"input": [
{
"tag": "kubejs:grist/agricultural/basic"
},
{
"tag": "darkutils:plate_base"
},
{
"tag": "darkutils:plate_base"
},
{
"tag": "kubejs:grist/agricultural/basic"
}
],
"inputFluid": "{Amount:600,FluidName:\"industrialforegoing:pink_slime\"}",
"output": {
"count": 3,
"item": "darkutils:blank_plate"
},
"processingTime": 300
}
);
event.replaceInput(
{id: 'darkutils:crafting/vector_plate'},
'minecraft:slime_ball',
'#kubejs:grist/agricultural/basic'
);
event.replaceInput(
{id: 'darkutils:crafting/vector_plate'},
'minecraft:sugar',
'#kubejs:grist/build/basic'
);
event.shaped('darkutils:damage_plate_player', [
' A ',
'BCB',
'DDD'
], {
'A': '#kubejs:grist/intelligent/improved',
'B': '#kubejs:grist/build/basic',
'C': '#kubejs:grist/agricultural/improved',
'D': 'darkutils:damage_plate'
});
event.shaped('darkutils:damage_plate', [
' ',
'ABA',
'CCC'
], {
'A': '#kubejs:grist/intelligent/basic',
'B': '#kubejs:grist/agricultural/improved',
'C': 'darkutils:blank_plate'
});
event.replaceInput(
{id: 'darkutils:crafting/filter_player'},
'minecraft:golden_pickaxe',
'#kubejs:grist/intelligent/improved'
);
});

View File

@ -0,0 +1,3 @@
ServerEvents.recipes(event => {
event.shapeless('3x doggytalents:bandaid', ['scalinghealth:bandages']);
});

View File

@ -0,0 +1,46 @@
ServerEvents.recipes(event => {
// Economy setup
let coinPress = Ingredient.of("thermal:press_coin_die")
let unpackingPress = Ingredient.of("thermal:press_unpacking_die")
let makeCoinPressConversion = (fromType, toType, qty) => {
event.custom({
type: "thermal:press",
ingredients: [
{ item: fromType, count: qty },
{ item: "thermal:press_coin_die" }
],
result: [Item.of(toType).toJson()]
});
event.custom({
type: "thermal:press",
ingredients: [
{ item: toType },
{ item: "thermal:press_unpacking_die" }
],
result: [Item.of(fromType).withCount(qty).toJson()]
});
};
makeCoinPressConversion("minecraft:cobblestone", "dotcoinmod:copper_coin", 9)
makeCoinPressConversion("dotcoinmod:copper_coin", "dotcoinmod:iron_coin", 10)
makeCoinPressConversion("dotcoinmod:iron_coin", "dotcoinmod:gold_coin", 10)
makeCoinPressConversion("dotcoinmod:gold_coin", "dotcoinmod:platinum_coin", 10)
})
/*LootJS.modifiers((event) => {
event.enableLogging();
event.removeGlobalModifier("@dotcoinmod");
event.addBlockLootModifier("minecraft:stone").pool((p) => {
p.addLoot("dotcoinmod:copper_coin");
p.applyOreBonus("minecraft:fortune");
}).randomChance(0.3).anyBiome("forge:is_mountain");
});*/
LootJS.modifiers((event) => {
event.addBlockLootModifier("minecraft:stone")
.randomChance(0.05)
.applyOreBonus("minecraft:fortune")
.addLoot("kubejs:grist_essence");
});

View File

@ -0,0 +1,12 @@
ServerEvents.recipes(event => {
global.replaceInputs(
event,
{mod: 'easy_villagers'}, [
['minecraft:iron_ingot', '#kubejs:grist/intelligent/improved'],
['minecraft:redstone', '#kubejs:grist/agricultural/improved'],
['minecraft:dirt', '#kubejs:grist/agricultural/radiant'],
['minecraft:mossy_cobblestone', '#kubejs:grist/intelligent/radiant'],
['minecraft:stone', '#kubejs:grist/build/radiant'],
['minecraft:netherite', '#kubejs:grist/intelligent/radiant']
]);
})

View File

@ -0,0 +1,7 @@
ServerEvents.recipes(event => {
event.replaceInput(
{'mod': 'elevatorid'},
'minecraft:ender_pearl',
'#forge:ender_pearls'
)
});

View File

@ -0,0 +1,9 @@
ServerEvents.recipes(event => {
global.replaceInputs(
event,
{mod: 'experienceobelisk'}, [
['minecraft:emerald', '#kubejs:grist/intelligent/basic'],
['minecraft:quartz', '#kubejs:grist/agricultural/basic'],
['minecraft:soul_sand', '#kubejs:grist/intelligent/basic']
]);
})

View File

@ -0,0 +1,6 @@
ServerEvents.recipes(event => {
event.shapeless('2x croptopia:dough', ['#forge:flour', '#forge:water_bottles']);
event.remove({id: 'thermal:compat/farmersdelight/insolator_farmersdelight_rice'});
event.remove({id: 'botanypots:farmersdelight/crop/rice'});
event.remove({id: 'farmersdelight:cooking/steamed_rice'});
});

View File

@ -0,0 +1,94 @@
ServerEvents.recipes(event => {
event.replaceInput(
{mod: 'herbalbrews'},
'minecraft:water_bucket',
'#forge:water_bottles'
);
let b = ['yerba_mate', 'rooibos'].forEach(herb => {
event.custom({
type: "botanypots:crop",
seed: {
item: `herbalbrews:wild_${herb}_plant`
},
categories: ["dirt", "farmland"],
growthTicks: 1200,
display: {
type: "botanypots:aging",
block: `herbalbrews:wild_${herb}_plant`
},
drops: [
{
chance: 1.0,
output: { item: `herbalbrews:${herb}_leaf`},
minRolls: 1,
maxRolls: 2
},
{
chance: 0.2,
output: { item: `herbalbrews:wild_${herb}_plant`}
}
]
});
});
event.custom({
type: "botanypots:crop",
seed: {
item: `herbalbrews:wild_coffee_plant`
},
categories: ["dirt", "farmland"],
growthTicks: 1200,
display: {
type: "botanypots:aging",
block: `herbalbrews:wild_coffee_plant`
},
drops: [
{
chance: 1.0,
output: { item: `herbalbrews:coffee_beans`},
minRolls: 1,
maxRolls: 2
},
{
chance: 0.2,
output: { item: `herbalbrews:wild_coffee_plant`}
}
]
});
event.custom({
type: "botanypots:crop",
seed: {
item: `vinery:dark_cherry_sapling`
},
categories: ["dirt"],
growthTicks: 1200,
display: {
type: "botanypots:aging",
block: `vinery:dark_cherry_sapling`
},
drops: [
{
chance: 1.0,
output: { item: `vinery:cherry`},
minRolls: 1,
maxRolls: 2
},
{
chance: 0.2,
output: { item: `vinery:dark_cherry_log`},
minRolls: 1,
maxRolls: 2
},
{
chance: 0.2,
output: { item: `vinery:dark_cherry_sapling`}
},
{
chance: 0.04,
output: { item: `vinery:rotten_cherry`}
}
]
});
});

View File

@ -0,0 +1,50 @@
ServerEvents.recipes(event => {
// Gate HNN behind third tier of farming grist and first tier of energetic
//event.remove({output: 'hostilenetworks:blank_data_model'})
//event.shaped
// Gate most of HNN behind first tier energetic grist
event.replaceInput(
{mod: 'hostilenetworks'},
'minecraft:redstone',
'#kubejs:grist/energetic/basic'
)
event.replaceInput(
{mod: 'hostilenetworks'},
'minecraft:iron_ingot',
'#kubejs:grist/energetic/basic'
)
event.replaceInput(
{mod: 'hostilenetworks'},
'minecraft:gold_ingot',
'#kubejs:grist/energetic/basic'
)
// The loot fabricator needs more energy, and gate it behind mid-game farming
event.replaceInput(
{mod: 'hostilenetworks'},
'minecraft:comparator',
'#kubejs:grist/energetic/improved'
)
event.replaceInput(
{mod: 'hostilenetworks'},
'minecraft:obsidian',
'#kubejs:grist/agricultural/improved'
)
// This replaces the smooth stone for a data model with a tier gate
event.replaceInput(
{mod: 'hostilenetworks'},
'minecraft:smooth_stone',
'#kubejs:grist/agricultural/radiant'
)
// Finally, target HNN matrixes with basic farming grist
event.replaceInput(
{mod: 'hostilenetworks'},
'minecraft:clay_ball',
'#kubejs:grist/agricultural/basic'
)
});

View File

@ -0,0 +1,75 @@
ServerEvents.recipes(event => {
event.replaceInput(
{id: 'immersive_aircraft:steel_boiler'},
'minecraft:iron_ingot',
global.ingotItem('steel')
);
event.replaceInput(
{id: 'immersive_aircraft:steel_boiler'},
'minecraft:blast_furnace',
'allthecompressed:aluminum_block_1x'
);
event.shaped(
'immersive_aircraft:airship', [
'AAA',
'ABA',
'CCD'
], {
'A': 'immersive_aircraft:sail',
'B': 'immersive_aircraft:gyrodyne',
'C': 'immersive_aircraft:hull',
'D': 'immersive_aircraft:engine'
});
event.replaceInput(
{output: 'immersive_aircraft:biplane'},
'immersive_aircraft:engine',
'immersive_aircraft:airship'
);
// Aircraft are slightly cheaper, aluminium is very abundant
event.replaceInput(
{mod: 'immersive_aircraft'},
'minecraft:iron_ingot',
global.ingotItem('aluminum')
);
event.replaceInput(
{mod: 'immersive_aircraft'},
'minecraft:cobblestone',
'#forge:cobblestone'
);
event.replaceInput(
{mod: 'immersive_aircraft'},
'minecraft:furnace',
'#kubejs:grist/energetic/basic'
);
// We actually have rubber, lets use it :D
event.replaceInput(
{output: 'immersive_aircraft:improved_landing_gear'},
'minecraft:coal',
'#forge:rubber'
);
event.shaped(
'immersive_aircraft:industrial_gears', [
' A',
' B ',
'C '
], {
'A': global.gearItem('brass'),
'B': global.nuggetItem('aluminum'),
'C': global.gearItem('steel')
}
);
event.replaceInput(
{output: 'immersive_aircraft:enhanced_propeller'},
'minecraft:copper_ingot',
global.ingotItem('invar')
);
})

View File

@ -0,0 +1,111 @@
ServerEvents.recipes(event => {
event.replaceInput(
{output: 'industrialforegoing:machine_frame_pity'},
'minecraft:redstone_block',
'#kubejs:grist/agricultural/basic'
);
event.replaceInput(
{output: 'industrialforegoing:machine_frame_simple'},
'minecraft:nether_brick',
'#kubejs:grist/agricultural/improved'
);
event.replaceInput(
{output: 'industrialforegoing:machine_frame_advanced'},
'minecraft:netherite_scrap',
'#kubejs:grist/agricultural/radiant'
);
event.replaceInput(
{id: 'industrialforegoing:plant_gatherer'},
'industrialforegoing:machine_frame_pity',
'industrialforegoing:machine_frame_simple'
);
event.replaceInput(
{id: 'industrialforegoing:animal_rancher'},
'industrialforegoing:machine_frame_pity',
'industrialforegoing:machine_frame_simple'
);
event.replaceInput(
{id: 'industrialforegoing:animal_feeder'},
'industrialforegoing:machine_frame_pity',
'industrialforegoing:machine_frame_simple'
);
event.replaceInput(
{id: 'industrialforegoing:common_black_hole_unit'},
'#forge:gears/iron',
'#kubejs:grist/intelligent/basic'
);
global.replaceInputs(
event,
{mod: 'industrialforegoing'}, [
['#forge:gears/iron', global.gearItem('invar')],
['#forge:gears/gold', global.gearItem('steel')],
['#forge:gears/diamond', global.gearItem('signalum')],
['minecraft:ender_eye', '#kubejs:grist/intelligent/improved'],
['minecraft:gold_ingot', global.ingotItem('steel')],
['industrialforegoing:plastic', '#forge:rubber'],
['minecraft:diamond_pickaxe', '#kubejs:grist/build/radiant']
]);
let v = [['common', 'pity'], ['pity', 'simple'], ['simple', 'advanced'], ['advanced','supreme']].forEach(tierPair => {
event.replaceInput(
{id: `industrialforegoing:${tierPair[1]}_black_hole_unit`},
'minecraft:ender_pearl',
`industrialforegoing:${tierPair[0]}_black_hole_unit`
);
event.replaceInput(
{id: `industrialforegoing:${tierPair[1]}_black_hole_tank`},
'minecraft:ender_pearl',
`industrialforegoing:${tierPair[0]}_black_hole_tank`
);
});
event.replaceInput(
{id: 'industrialforegoing:fluid_extractor'},
'minecraft:light_weighted_pressure_plate',
'#kubejs:grist/agricultural/basic'
);
event.replaceInput(
{id: 'industrialforegoing:block_placer'},
'minecraft:redstone',
'#kubejs:grist/build/basic'
);
event.replaceInput(
{id: 'industrialforegoing:block_breaker'},
'minecraft:redstone',
'#kubejs:grist/build/basic'
);
event.replaceInput(
{id: 'industrialforegoing:fluid_collector'},
'minecraft:redstone',
'#kubejs:grist/build/basic'
);
event.replaceInput(
{id: 'industrialforegoing:fluid_placer'},
'minecraft:redstone',
'#kubejs:grist/build/basic'
);
event.replaceInput(
{id: 'industrialforegoing:mob_crusher'},
'minecraft:iron_sword',
'#kubejs:grist/agricultural/improved'
);
event.replaceInput(
{id: 'industrialforegoing:conveyor'},
'minecraft:redstone',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput(
{id: 'industrialforegoing:latex_processing_unit'},
'minecraft:redstone_block',
'#kubejs:grist/agricultural/basic'
);
});

View File

@ -0,0 +1,13 @@
ServerEvents.recipes(event => {
event.replaceInput({id: 'ironfurnaces:augments/augment_factory'},
'minecraft:redstone',
'#kubejs:grist/energetic/improved'
);
event.replaceInput({id: 'ironfurnaces:augments/augment_factory'},
'minecraft:piston',
'#kubejs:grist/energetic/basic'
);
event.recipes.shapeless('ironfurnaces:augment_generator', ['minecraft:redstone', global.ingotItem('copper'), 'kubejs:grist_primordeal_basic_block']);
//event.recipes.powah.energizing(['2x #kubejs:grist/energetic/improved', 'ironfurnaces:augment_factory'], 'ironfurnaces:augment_generator', 12000);
});

View File

@ -0,0 +1,9 @@
ServerEvents.recipes(event => {
event.replaceInput(
{id: 'laserio:logic_chip_raw'},
'minecraft:gold_nugget',
'#kubejs:grist/intelligent/improved'
);
event.recipes.thermal.smelter('2x laserio:logic_chip', ['2x #kubejs:grist/intelligent/improved', '1x minecraft:quartz_block', '1x kubejs:grist/energetic/basic']);
});

View File

@ -0,0 +1,12 @@
ServerEvents.recipes(event => {
event.shaped('miapi:modular_work_bench', [
' C ',
'ADA',
'ABA'
], {
'A': global.ingotItem('silver'),
'C': 'minecraft:crafting_table',
'B': '#minecraft:anvil',
'D': '#kubejs:grist/build/basic'
});
});

View File

@ -0,0 +1,7 @@
ServerEvents.recipes(event => {
event.replaceInput(
{'id': 'modularrouters:blank_module'},
'minecraft:gold_nugget',
'#kubejs:grist/intelligent/improved'
);
});

View File

@ -0,0 +1,51 @@
ServerEvents.recipes(event => {
// Gate wireless ender power behind improved intelligent grist
event.recipes.powah.energizing(['#forge:ender_pearls', 'powah:dielectric_casing', '#kubejs:grist/energetic/radiant', '#kubejs:grist/intelligent/improved'], 'powah:ender_core', 50000)
event.shaped('powah:aerial_pearl', [
'ABA',
'BCB',
'ABA'
], {
'A': 'powah:dielectric_paste',
'B': '#chipped:iron_bars',
'C': '#kubejs:grist/intelligent/improved'
})
// Dielectric casings are used in nearly every powah recipe, so lets require energetic grist
event.shaped('powah:dielectric_casing', [
'ABA',
'CDC',
'ABA'
], {
'A': global.ingotItem('iron'),
'B': 'powah:dielectric_rod_horizontal',
'C': 'powah:dielectric_rod',
'D': global.ingotItem('copper')
});
event.replaceInput(
{id: 'powah:crafting/capacitor_basic'},
'minecraft:redstone_block',
'#kubejs:grist/energetic/basic'
);
event.shapeless('powah:capacitor_basic', [
'3x powah:capacitor_basic_tiny',
'2x powah:dielectric_paste'
]);
event.shapeless('powah:capacitor_basic_tiny', [
'3x #kubejs:grist/energetic/basic',
'thermal:rf_coil'
]);
event.recipes.powah.energizing(['minecraft:diamond', '#kubejs:grist/energetic/improved'], 'powah:crystal_niotic', 180000);
event.recipes.powah.energizing(['minecraft:emerald', '2x #kubejs:grist/energetic/improved'], 'powah:crystal_spirited', 1000000);
event.shapeless('6x powah:dielectric_paste', [
'kubejs:grist_primordeal_basic',
'kubejs:grist_energetic_basic',
'minecraft:redstone',
'minecraft:clay_ball',
'#alltheores:ore_hammers'
]);
});

View File

@ -0,0 +1,10 @@
ServerEvents.recipes(event => {
event.recipes.thermal.pulverizer('powder_power:powder_redstone', ['#forge:dusts/redstone']);
event.recipes.thermal.pulverizer('powder_power:powder_lapis', ['#forge:dusts/lapis']);
event.recipes.thermal.pulverizer('powder_power:powder_copper', ['#forge:dusts/copper']);
event.recipes.thermal.pulverizer('powder_power:powder_end_pearl', ['#forge:dusts/ender_pearl']);
event.recipes.thermal.pulverizer('powder_power:powder_prismarine', ['#forge:dusts/prismarine']);
event.recipes.thermal.pulverizer('powder_power:powder_obsidian', ['#forge:obsidian']);
event.recipes.thermal.pulverizer('powder_power:powder_nether_quartz', ['#forge:dusts/quartz']);
event.recipes.thermal.pulverizer('powder_power:powder_ghast_tear', ['minecraft:ghast_tear']);
});

View File

@ -0,0 +1,94 @@
ServerEvents.recipes(event => {
event.replaceInput(
{id: 'prettypipes:pipe'},
'minecraft:redstone',
'#kubejs:grist/intelligent/basic'
)
event.shaped('prettypipes:blank_module', [
' A ',
'CBC',
' A '
], {
'A': '#kubejs:grist/intelligent/basic',
'C': global.nuggetItem('copper'),
'B': 'prettypipes:pipe'
});
event.replaceInput(
{id: 'prettypipes:pressurizer'},
'minecraft:restone_block',
'#kubejs:grist/intelligent/improved'
);
event.replaceInput(
{output: 'prettypipes:low_retrieval_module'},
'minecraft:ender_pearl',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput(
{id: 'prettypipes:item_terminal'},
'minecraft:ender_pearl',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput(
{id: 'prettypipes:item_terminal'},
'minecraft:diamond',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput(
{id: 'prettypipes:item_terminal'},
'minecraft:diamond',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput(
{id: 'prettypipes:item_terminal'},
'prettypipes:high_retrieval_module',
'#kubejs:grist/intelligent/improved'
);
event.replaceInput(
{id: 'prettypipes:item_terminal'},
'prettypipes:high_extraction_module',
'#kubejs:grist/intelligent/improved'
);
event.replaceInput(
{id: 'prettypipes:item_terminal'},
'minecraft:iron_block',
'#kubejs:grist/build/basic'
);
event.replaceInput(
{id: 'prettypipes:high_extraction_module'},
'minecraft:diamond',
'#kubejs:grist/intelligent/improved'
);
event.replaceInput(
{id: 'prettypipes:medium_crafting_module'},
'minecraft:gold_ingot',
'#kubejs:grist/build/basic'
);
event.replaceInput(
{mod: 'prettypipes'},
'minecraft:iron_ingot',
'#kubejs:grist/build/basic'
);
event.replaceInput(
{mod: 'prettypipes'},
'minecraft:gold_ingot',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput(
{id: 'prettypipes:pressurizer'},
'minecraft:redstone_block',
'#kubejs:grist/intelligent/improved'
);
})

View File

@ -0,0 +1,101 @@
ServerEvents.recipes(event => {
// Refined storage is gated behind basic tier
event.replaceInput(
{id: 'refinedstorage:raw_advanced_processor'},
'minecraft:glowstone_dust',
'#kubejs:grist/intelligent/improved'
)
event.replaceInput(
{mod: 'refinedstorage'},
'minecraft:diamond',
'#kubejs:grist/intelligent/basic'
)
event.replaceInput(
{id: 'refinedstorage:cable'},
'minecraft:redstone',
'#kubejs:grist/energetic/basic'
)
// Everything wireless is behind intelligent procs
event.replaceInput(
{mod: 'refinedstorage'},
'#forge:ender_pearls',
'kubejs:intelligent_processor'
)
event.replaceInput(
{id: 'refinedstorage:construction_core'},
'minecraft:glowstone_dust',
'#kubejs:grist/build/basic'
)
event.replaceInput(
{id: 'refinedstorage:destruction_core'},
'minecraft:quartz',
'#kubejs:grist/intelligent/basic'
)
event.replaceInput(
{id: 'refinedstorage:raw_improved_processor'},
'minecraft:glowstone',
'#kubejs:grist/intelligent/basic'
)
// smelt quartz dust for sillicon
event.smelting("refinedstorage:silicon", "thermal:quartz_dust");
// Custom malloc gating of autocrafting
event.shaped('kubejs:raw_intelligent_processor', [
'AB',
'CD'
], {
'A': "refinedstorage:processor_binding",
'B': '#kubejs:grist/intelligent/radiant',
'C': "refinedstorage:silicon",
'D': global.ingotItem('steel')
});
event.shaped('kubejs:raw_deep_intelligent_processor', [
'AB',
'CD'
], {
'A': "kubejs:raw_intelligent_processor",
'B': '#kubejs:grist/intelligent/radiant',
'C': "refinedstorage:silicon",
'D': '#kubejs:grist/energetic/improved'
});
event.smelting('kubejs:intelligent_processor', 'kubejs:raw_intelligent_processor');
event.smelting('kubejs:deep_intelligent_processor', 'kubejs:raw_deep_intelligent_processor');
event.replaceInput(
{id: "refinedstorage:crafter"},
"refinedstorage:construction_core",
'kubejs:deep_intelligent_processor'
)
event.replaceInput(
{id: "refinedstorage:crafter"},
"refinedstorage:destruction_core",
"refinedstorage:basic_processor"
);
event.replaceInput(
{id: 'refinedstorage:disk_drive'},
'#handcrafted:chests',
'#kubejs:grist/intelligent/improved'
);
event.replaceInput(
{id: 'refinedstorage:1k_disk_part'},
'minecraft:redstone',
'#kubejs:grist/intelligent/improved'
);
event.recipes.thermal.smelter('2x refinedstorage:improved_processor', ["minecraft:gold_ingot", 'refinedstorage:silicon', '#kubejs:grist/intelligent/basic']);
event.recipes.thermal.smelter('2x refinedstorage:basic_processor', ["minecraft:iron_ingot", 'refinedstorage:silicon', '#kubejs:grist/intelligent/basic']);
event.recipes.thermal.smelter('2x refinedstorage:advanced_processor', ["minecraft:redstone", 'refinedstorage:silicon', '#kubejs:grist/intelligent/basic']);
event.recipes.thermal.smelter('2x refinedstorage:improved_processor', ["minecraft:gold_ingot", 'thermal:quartz_dust', '#kubejs:grist/intelligent/basic']);
event.recipes.thermal.smelter('2x refinedstorage:basic_processor', ["minecraft:iron_ingot", 'thermal:quartz_dust', '#kubejs:grist/intelligent/basic']);
event.recipes.thermal.smelter('2x refinedstorage:advanced_processor', ["minecraft:redstone", 'thermal:quartz_dust', '#kubejs:grist/intelligent/basic']);
});

View File

@ -0,0 +1,30 @@
ServerEvents.recipes(event => {
event.replaceInput(
{mod: 'sophisticatedbackpacks'},
'minecraft:redstone',
'#kubejs:grist/intelligent/basic'
)
event.replaceInput(
{mod: 'sophisticatedbackpacks'},
'minecraft:sticky_piston',
'#kubejs:grist/intelligent/basic'
)
event.replaceInput(
{id: 'sophisticatedbackpacks:upgrade_base'},
'minecraft:iron_ingot',
'#kubejs:grist/build/basic'
)
event.replaceInput(
{id: 'sophisticatedstorage:controller'},
'minecraft:comparator',
'#kubejs:grist/intelligent/basic'
);
event.shapeless('sophisticatedstorage:storage_link', [
'sophisticatedstorage:controller',
'2x #kubejs:grist/intelligent/basic'
]);
})

View File

@ -0,0 +1,17 @@
ServerEvents.recipes(event => {
event.recipes.ars_nouveau.imbuement(
'minecraft:lectern',
'summoningrituals:altar',
35000,
[
'kubejs:intelligent_catalyst',
'kubejs:intelligent_catalyst',
'kubejs:intelligent_catalyst',
'kubejs:intelligent_catalyst',
'kubejs:intelligent_catalyst',
'kubejs:intelligent_catalyst',
'kubejs:intelligent_catalyst',
'kubejs:intelligent_catalyst',
]
);
});

View File

@ -0,0 +1,13 @@
ServerEvents.recipes(event => {
// Rewrite tempad to use powah crystals and intelligent grist
event.replaceInput(
{mod: 'tempad'},
'minecraft:beacon',
'#kubejs:grist/intelligent/improved'
)
event.replaceInput(
{mod: 'tempad'},
'minecraft:redstone_lamp',
'#kubejs:grist/energetic/improved'
)
})

View File

@ -0,0 +1,137 @@
ServerEvents.recipes(event => {
// Sawdust for energy, of course.
event.recipes.thermal.stirling_fuel('thermal:sawdust').energy(500)
/*event.recipes.botanypots.fertilizer(
"thermal:phytogrow", // fertilizer item
30,
40
);*/
// Shortcut for crafting fluxducts, which you will certainly need tons of
event.recipes.thermal.smelter('6x thermal:fluxduct', ['3x minecraft:redstone', global.nuggetItem('lead', 2)]);
// Use energetic grist as generator fuel
event.recipes.thermal.stirling_fuel('kubejs:grist_energetic_basic').energy(8000)
event.recipes.thermal.stirling_fuel('kubejs:grist_energetic_improved').energy(12000)
event.recipes.thermal.stirling_fuel('kubejs:grist_energetic_radiant').energy(20000)
// Agricultural grist in the insolator
event.recipes.thermal.insolator_catalyst('kubejs:grist_agricultural_basic').primaryMod(1.5).secondaryMod(2.0).energyMod(0.5).useChance(0.4);
event.recipes.thermal.insolator_catalyst('kubejs:grist_agricultural_improved').primaryMod(2.0).secondaryMod(4.0).energyMod(0.3).useChance(0.25);
event.recipes.thermal.insolator_catalyst('kubejs:grist_agricultural_radiant').primaryMod(3.0).secondaryMod(6.0).energyMod(1.1).useChance(0.1);
// Build grist in smelters/pulverizers for ore processing
event.recipes.thermal.smelter_catalyst('kubejs:grist_build_basic').primaryMod(2.5).secondaryMod(2.0).energyMod(0.5).useChance(0.4);
event.recipes.thermal.pulverizer_catalyst('kubejs:grist_build_basic').primaryMod(2.5).secondaryMod(2.0).energyMod(0.9).useChance(0.4);
event.recipes.thermal.smelter_catalyst('kubejs:grist_build_improved').primaryMod(4.0).secondaryMod(4.0).energyMod(0.3).useChance(0.25);
event.recipes.thermal.pulverizer_catalyst('kubejs:grist_build_improved').primaryMod(4.0).secondaryMod(4.0).energyMod(0.8).useChance(0.25);
event.recipes.thermal.smelter_catalyst('kubejs:grist_build_radiant').primaryMod(5.0).secondaryMod(6.0).energyMod(0.8).useChance(0.1);
event.recipes.thermal.pulverizer_catalyst('kubejs:grist_build_radiant').primaryMod(5.0).secondaryMod(6.0).energyMod(1.1).useChance(0.1);
// Steel is used mostly for early solar, it shouldn't be so hard to make
event.recipes.thermal.smelter('4x thermal:steel_ingot', ["minecraft:charcoal", global.ingotItem('iron', 4)]);
event.recipes.thermal.smelter('4x thermal:steel_ingot', ["minecraft:charcoal", '4x #forge:dusts/iron']);
event.recipes.thermal.smelter('thermal:steel_ingot', ["#minecraft:logs_that_burn", global.ingotItem('iron')]);
event.recipes.thermal.smelter('thermal:steel_ingot', ["#minecraft:logs_that_burn", '#forge:dusts/iron']);
event.recipes.thermal.smelter('thermal:steel_block', ['thermal:charcoal_block', global.ingotItem('iron', 9)]);
event.recipes.thermal.smelter('thermal:steel_block', ['thermal:charcoal_block', '9x #forge:dusts/iron']);
// The flux tools can be very easily OP after upgrades and enchants, make them mid-game
event.replaceInput(
{output: 'thermal:flux_dril'},
'thermal:rf_coil',
'#kubejs:grist/energetic/improved'
)
event.replaceInput(
{output: 'thermal:flux_dril'},
'minecraft:iron_ingot',
'#kubejs:grist/build/improved'
)
event.replaceInput(
{output: 'thermal:drill_head'},
'minecraft:copper_ingot',
'#kubejs:grist/build/basic'
)
event.replaceInput(
{output: 'thermal:saw_blade'},
'minecraft:copper_ingot',
'#kubejs:grist/build/basic'
)
// For any thermal machines, you need basic energetic grist
event.replaceInput(
{output: 'thermal:rf_coil'},
'minecraft:gold_ingot',
'#kubejs:grist/energetic/basic'
);
event.replaceInput(
{output: 'thermal:rf_coil'},
'minecraft:redstone',
global.nuggetItem('gold')
);
event.recipes.thermal.smelter(
'4x thermal:cured_rubber',
['#forge:dusts/sulfur', '2x industrialforegoing:dryrubber'],
3200
);
// Encourage machine crafting of gears by making manual crafting more expensive
event.replaceInput(
{mod: 'thermal'},
'minecraft:iron_nugget',
'#kubejs:grist/build/basic'
)
event.replaceInput(
{mod: 'alltheores'},
'minecraft:iron_nugget',
'#kubejs:grist/build/basic'
)
// Require agricultural progression for insolator
event.replaceInput(
{id: 'thermal:machine_insolator'},
'minecraft:dirt',
'#kubejs:grist/agricultural/improved'
)
event.replaceInput(
{id: 'thermal:augments/area_radius_augment'},
'thermal:redstone_servo',
'#kubejs:grist/build/improved'
);
event.replaceInput(
{id: 'thermal:item_buffer'},
'minecraft:quartz',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput(
{id: 'thermal:redstone_servo'},
'minecraft:iron_ingot',
'#kubejs:grist/agricultural/basic'
);
event.replaceInput(
{id: 'thermal:fluid_cell'},
'thermal:redstone_servo',
'#kubejs:grist/build/basic'
);
event.shapeless('minecraft:gravel', ['#forge:cobblestone', '#alltheores:ore_hammers']);
event.shapeless('minecraft:sand', ['3x #forge:gravel', '#alltheores:ore_hammers']);
event.replaceInput(
{id: 'thermal:device_fisher'},
'forge:gears/copper',
'#kubejs:grist/agricultural/basic'
);
});

View File

@ -0,0 +1,16 @@
ServerEvents.recipes(event => {
let makeJuice = (juice, fluid, fruit, seeds) => {
event.recipes.thermal.bottler(`vinery:${juice}`, [Fluid.of(`doaddonfluids:${fluid}`, 250), 'vinery:wine_bottle']);
event.recipes.thermal.centrifuge([Fluid.of(`doaddonfluids:${fluid}`, 250), 'vinery:wine_bottle'], `vinery:${juice}`);
event.recipes.thermal.centrifuge([Fluid.of(`doaddonfluids:${fluid}`, 250), `3x vinery:${seeds}`], `3x vinery:${fruit}`);
};
let _color = ['red', 'white'].forEach(color => {
makeJuice(`${color}_grapejuice`, `${color}_grapejuice`, `${color}_grape`, `${color}_grape_seeds`);
let _v = ['jungle', 'savanna', 'taiga'].forEach(variety => {
makeJuice(`${color}_${variety}_grapejuice`, `${variety}_${color}_grapejuice`, `${variety}_grapes_${color}`, `${variety}_grape_seeds_${color}`);
})
});
let _nv = ['crimson', 'warped'].forEach(variety => {
makeJuice(`${variety}_grapejuice`, `${variety}_grape`, `${variety}_grape_seeds`);
});
});

View File

@ -0,0 +1,21 @@
ServerEvents.recipes(event => {
event.replaceInput(
{id: 'waystones:warp_dust'},
'minecraft:ender_pearl',
'#kubejs:grist/intelligent/basic'
)
event.replaceInput(
{id: 'waystones:warp_stone'},
'minecraft:emerald',
'#kubejs:grist/intelligent/improved'
)
event.replaceInput(
{id: 'waystones:sharestone'},
'waystones:warp_stone',
'#kubejs:grist/intelligent/improved'
)
event.recipes.thermal.smelter('4x waystones:warp_dust', ['#kubejs:grist/intelligent/basic', '2x minecraft:amethyst_shard']);
});