mods: add energymeter, rebalance intelligent grist based mods, fix bug with build grist progression, rebalance other basic grist lines

This commit is contained in:
2025-07-10 23:31:06 +02:00
parent 136a166983
commit fd5d608139
12 changed files with 120 additions and 27 deletions

View File

@ -83,15 +83,32 @@ ServerEvents.recipes(event => {
reinforced grist nuggets come from grist blend in a centrifugal separator
grist blend comes from basic + improved primordeal block + sulfur in induction smelter
*/
event.recipes.thermal.crystallizer(
'kubejs:grist_build_improved_block',
['4x minecraft:clay', '#kubejs:grist/build/improved', Fluid.of('kubejs:grist_primordeal_improved_fluid', 4500)]
);
event.recipes.thermal.crystallizer(
'kubejs:grist_build_improved_block',
['32x kubejs:reinforced_grist_ingot', Fluid.of('kubejs:grist_primordeal_improved_fluid', 4000)]
// Improved grist starts by smelting together build grist, primordeal improved grist, and sulfur to create reinforced grist blend
event.recipes.thermal.smelter(
'kubejs:reinforced_grist_blend',
['32x #kubejs:grist/build/basic', '8x kubejs:grist_primordeal_improved_block', '2x #forge:dusts/sulfur']
);
// The grist blend is then centrifuged to extract nuggets
/*event.recipes.thermal.centrifuge([
'kubejs:reinforced_grist_nugget',
Fluid.of('kubejs:grist_build_basic_fluid', 125)
], 'kubejs:reinforced_grist_blend');*/
event.custom({
type: 'thermal:centrifuge',
ingredients: [
{ item: 'kubejs:reinforced_grist_blend', count: 3 }
],
results: [
{ fluid: 'kubejs:grist_build_basic_fluid', amount: 225 },
{ item: 'kubejs:grist_essence', chance: 0.2 },
{ item: 'kubejs:reinforced_grist_nugget' },
]
});
// 9 nuggets combine only in a press to create a reinforced grist ingot
event.custom({
type: "thermal:press",
ingredients: [
@ -101,6 +118,18 @@ ServerEvents.recipes(event => {
result: [{item: 'kubejs:reinforced_grist_ingot'}]
});
// Finally, you crystallize a pile of ingots with improved primordeal fluid.
event.recipes.thermal.crystallizer(
'2x kubejs:grist_build_improved_block',
['32x kubejs:reinforced_grist_ingot', Fluid.of('kubejs:grist_primordeal_improved_fluid', 8000)]
);
// After that, you simply re-crystalize it along with a little bit of clay
event.recipes.thermal.crystallizer(
'kubejs:grist_build_improved_block',
['4x minecraft:clay', '#kubejs:grist/build/improved', Fluid.of('kubejs:grist_primordeal_improved_fluid', 4500)]
);
/*event.custom({
type: "thermal:centrifuge",
ingredients: [
@ -108,15 +137,6 @@ ServerEvents.recipes(event => {
],
result: [{item: 'kubejs:build_grist_basic'}, {item: 'kubejs:reinforced_grist_nugget', chance: 0.3}]
});*/
event.recipes.thermal.centrifuge([
'8x kubejs:build_grist_basic',
Item.of('kubejs:reinforced_grist_nugget').withChance(0.3)
], 'kubejs:reinforced_grist_blend');
event.recipes.thermal.smelter(
'kubejs:reinforced_grist_blend',
['32x #kubejs:grist/build/basic', '3x kubejs:grist_primordeal_improved_block', '2x #forge:dusts/sulfur']
);
/*
improved -> radiant: process ores with power generation, new machines, and tool enchants into smelting up grist alloys -> near creative mode world shaping tools, crafting any block

View File

@ -62,7 +62,7 @@ ServerEvents.recipes(event => {
);
event.recipes.powah.energizing([
'#forge:glass',
'thermal:phytogrow',
'thermal:phytogro',
'#forge:dusts/redstone',
'thermal:rf_coil',
global.nuggetItem('steel'),
@ -82,7 +82,7 @@ ServerEvents.recipes(event => {
'kubejs:activated_grist_capacitor',
'kubejs:infused_grist_capacitor',
3000,
[]
['kubejs:intelligent_catalyst', 'kubejs:intelligent_catalyst', 'kubejs:intelligent_catalyst']
);
event.recipes.thermal.bottler(
Item.of('kubejs:unstable_grist_capacitor'),

View File

@ -69,12 +69,21 @@ ServerEvents.recipes(event => {
'#alltheores:ore_hammers'
]);
// After you have finished your first grist, you simply duplicate it with a bunch of Source
event.recipes.ars_nouveau.imbuement(
'kubejs:grist_primordeal_basic_block',
'kubejs:grist_intelligent_basic_block',
900,
['kubejs:grist_intelligent_basic']
);
// Adding a catalyst makes it run more efficiently
event.recipes.ars_nouveau.imbuement(
'kubejs:grist_primordeal_basic_block',
'2x kubejs:grist_intelligent_basic_block',
700,
['kubejs:grist_intelligent_basic', 'kubejs:intelligent_catalyst']
);
/*event.custom({
type: "thermal:press",

View File

@ -43,9 +43,12 @@ ServerEvents.recipes(event => {
let id = grist.id();
let fluidID = grist.fluid().id();
let blockID = grist.block().id();
event.recipes.thermal.crucible(Fluid.of(fluidID, 1000), blockID);
event.recipes.thermal.crucible(Fluid.of(fluidID, 250), id);
event.recipes.thermal.chiller(id, Fluid.of(fluidID, 250));
event.recipes.thermal.chiller(blockID, Fluid.of(fluidID, 1000));
event.recipes.createMixing(Fluid.of(fluidID, 250), id).heated();
event.recipes.createMixing(Fluid.of(fluidID, 1000), blockID).heated();
// convert between block and normal item
event.shapeless(blockID, [`9x ${id}`]);
@ -78,6 +81,7 @@ ServerEvents.recipes(event => {
// Progression along primordeals and universals
let _ = [{from: 'basic', to: 'improved'}, {from: 'improved', to: 'radiant'}].forEach(upgrade => {
// TODO: Implement sideways conversion from universal grist to each of the elementals
// Primordeal progression requires one from each element of the lower tier
event.shaped(`kubejs:grist_primordeal_${upgrade.to}`, [
'A B',

View File

@ -77,6 +77,8 @@ ServerEvents.recipes(event => {
// 1 nugget == 60mb cognitium
event.recipes.createMixing(Fluid.of('experienceobelisk:cognitium', 60), 'create:experience_nugget').heated();
event.recipes.createMixing(Fluid.of('experienceobelisk:cognitium', 60 * 9), 'create:experience_block').heated();
event.recipes.thermal.centrifuge([Fluid.of('experienceobelisk:cognitum', 60)], 'create:experience_nugget');
event.recipes.thermal.centrifuge([Fluid.of('experienceobelisk:cognitum', 60 * 9)], 'create:experience_block');
// Precision mechanisms should require intelligent grist
event.recipes.createSequencedAssembly([

View File

@ -0,0 +1,15 @@
ServerEvents.recipes(event => {
event.replaceInput({mod: 'energymeter'},
'minecraft:comparator',
'#kubejs:grist/energetic/basic'
);
event.replaceInput({mod: 'energymeter'},
'minecraft:redstone',
'#kubejs:grist/intelligent/basic'
);
event.replaceInput({mod: 'energymeter'},
'minecraft:iron_ingot',
global.ingotItem('copper')
);
});

View File

@ -91,4 +91,10 @@ ServerEvents.recipes(event => {
'minecraft:redstone_block',
'#kubejs:grist/intelligent/improved'
);
event.replaceInput(
{mod: 'prettypipes'},
'minecraft:sugar',
'#kubejs:grist/energetic/basic'
);
})

View File

@ -141,6 +141,12 @@ ServerEvents.recipes(event => {
event.remove({input: 'thermal:earth_charge'});
event.recipes.create.mixing('16x thermal:phytogro', [
'#forge:sand',
'2x thermal:apatite_dust',
'thermal:niter_dust'
]);
// Pulverizer is gated behind brass, which requires create
/*event.replaceInput(
{id: 'thermal:machine_pulverizer'},

View File

@ -11,6 +11,15 @@ ServerEvents.recipes(event => {
'minecraft:gold_ingot',
'#kubejs:grist/build/basic'
);
event.replaceInput({mod: 'torchmaster'},
'#minecraft:logs',
'#kubejs:grist/agricultural/basic/block'
);
event.replaceInput({mod: 'torchmaster'},
'minecraft:gold_block',
'#kubejs:grist/build/basic/block'
);
event.replaceInput({mod: 'torchmaster'},
'minecraft:glowstone',