diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c04f7c74..3b405d9bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,14 @@ # Changelog ## [Unreleased] ### Changes +- Add shapeless p2p recipes (#2234) @SpicyNoodle5 +- Added assembler, smelting and heating recipes for firmalife ovens (#2220) @SpicyNoodle5 +- Raised burning fluid threshold from 370K to 1300K @Redeix +- Added partial unification to the gtceu wax material @Redeix ### Bug fixes - Fixed brown gravy recipe @Redeix +- Fixed instant mac recipe requiring less cardboard than it gives back @Redeix +- Fixed Ad Astra moon cheese nutrition values being inconsistent @Redeix ### Translation updates ## [0.11.8] - 19-11-2025 diff --git a/kubejs/server_scripts/ad_astra/data.js b/kubejs/server_scripts/ad_astra/data.js index 2ed5e30c5..ac8b03a0b 100644 --- a/kubejs/server_scripts/ad_astra/data.js +++ b/kubejs/server_scripts/ad_astra/data.js @@ -13,10 +13,10 @@ function registerTFCDataForAdAstra(event) { event.itemSize('ad_astra:launch_pad', 'very_large', 'very_heavy') event.foodItem('ad_astra:cheese', food => { - food.hunger(4) - food.saturation(12) - food.dairy(5) - food.decayModifier(10) + food.hunger(3) + food.saturation(3) + food.dairy(1.2) + food.decayModifier(0.9) }) global.AD_ASTRA_WOOD.forEach(wood => { diff --git a/kubejs/server_scripts/gregtech/recipes.removes.js b/kubejs/server_scripts/gregtech/recipes.removes.js index 807c26883..c84170b41 100644 --- a/kubejs/server_scripts/gregtech/recipes.removes.js +++ b/kubejs/server_scripts/gregtech/recipes.removes.js @@ -659,6 +659,8 @@ function removeGTCEURecipes(event) { event.remove({ id: 'gtceu:assembler/assemble_purpur_into_stair' }) event.remove({ id: 'gtceu:assembler/stonecutter' }) + event.remove({ id: 'gtceu:centrifuge/decomposition_centrifuging__blaze' }) + event.remove({ id: 'gtceu:chemical_reactor/ghast_tear_separation' }) event.remove({ id: 'gtceu:assembler/assemble_brick_into_stair' }) diff --git a/kubejs/server_scripts/gregtech/tags.js b/kubejs/server_scripts/gregtech/tags.js index 41fc339d0..092e04a86 100644 --- a/kubejs/server_scripts/gregtech/tags.js +++ b/kubejs/server_scripts/gregtech/tags.js @@ -57,6 +57,8 @@ function registerGTCEUItemTags(event) { // @ts-expect-error According to KJS docs adding tags to tags is supported. event.add("gtceu:molds", "#gtceu:casting_molds", "#gtceu:extruder_molds", "gtceu:empty_mold"); + + event.add('forge:wax', 'gtceu:wax_dust'); } /** @param {TagEvent.Block} event */ diff --git a/kubejs/server_scripts/tfc/tags.js b/kubejs/server_scripts/tfc/tags.js index ec4deede5..c2b68f7d8 100644 --- a/kubejs/server_scripts/tfc/tags.js +++ b/kubejs/server_scripts/tfc/tags.js @@ -18,51 +18,70 @@ function registerTFCItemTags(event) { } }); - event.add("tfc:usable_on_tool_rack", "#forge:tools/mining_hammers"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/spades"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/wrenches"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/files"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/crowbars"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/screwdrivers"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/wire_cutters"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/butchery_knives"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/plungers"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/mortars"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/mallets"); - - event.add("tfc:usable_on_tool_rack", "#forge:tools/chainsaws"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/buzzsaws"); - event.add("tfc:usable_on_tool_rack", "#forge:tools/drills"); - - event.add("tfc:usable_on_tool_rack", "#forge:tools/fishing_nets"); - - event.add("tfc:usable_on_tool_rack", "#tfc:buckets"); - - event.add("tfc:usable_on_tool_rack", "buildinggadgets2:gadget_building"); - event.add("tfc:usable_on_tool_rack", "buildinggadgets2:gadget_exchanging"); - event.add("tfc:usable_on_tool_rack", "buildinggadgets2:gadget_copy_paste"); - event.add("tfc:usable_on_tool_rack", "buildinggadgets2:gadget_cut_paste"); - event.add("tfc:usable_on_tool_rack", "buildinggadgets2:gadget_destruction"); - event.add("tfc:usable_on_tool_rack", "create:super_glue"); - event.add("tfc:usable_on_tool_rack", "exposure:camera"); - event.add("tfc:usable_on_tool_rack", "measurements:tape_measure"); - event.add("tfc:usable_on_tool_rack", "#chalk:chalks"); - event.add("tfc:usable_on_tool_rack", "chalk:chalk_box"); - event.add("tfc:usable_on_tool_rack", "computercraft:pocket_computer_normal"); - event.add("tfc:usable_on_tool_rack", "computercraft:pocket_computer_advanced"); - event.add("tfc:usable_on_tool_rack", "grapplemod:grapplinghook"); - event.add("tfc:usable_on_tool_rack", "grapplemod:launcheritem"); - event.add("tfc:usable_on_tool_rack", "ae2:color_applicator"); - event.add("tfc:usable_on_tool_rack", "ae2:matter_cannon"); - event.add("tfc:usable_on_tool_rack", "ae2:network_tool"); - event.add("tfc:usable_on_tool_rack", "ae2:wireless_terminal"); - event.add("tfc:usable_on_tool_rack", "ae2:wireless_crafting_terminal"); - event.add("tfc:usable_on_tool_rack", "waterflasks:leather_flask"); - event.add("tfc:usable_on_tool_rack", "waterflasks:iron_flask"); - event.add("tfc:usable_on_tool_rack", "waterflasks:red_steel_flask"); - event.add("tfc:usable_on_tool_rack", "tfc:wool_cloth"); - event.add("tfc:usable_on_tool_rack", "firmalife:mixing_bowl"); - event.add("tfc:usable_on_tool_rack", "#gtceu:molds"); + /** + * @type {string[]} - Item IDs and tags usable on tfc tool racks. + */ + const usableOnToolRack = [ + "#forge:tools/mining_hammers", + "#forge:tools/spades", + "#forge:tools/wrenches", + "#forge:tools/files", + "#forge:tools/crowbars", + "#forge:tools/screwdrivers", + "#forge:tools/wire_cutters", + "#forge:tools/butchery_knives", + "#forge:tools/plungers", + "#forge:tools/mortars", + "#forge:tools/mallets", + "#forge:tools/chainsaws", + "#forge:tools/buzzsaws", + "#forge:tools/drills", + "#forge:tools/fishing_nets", + "#tfc:buckets", + "buildinggadgets2:gadget_building", + "buildinggadgets2:gadget_exchanging", + "buildinggadgets2:gadget_copy_paste", + "buildinggadgets2:gadget_cut_paste", + "buildinggadgets2:gadget_destruction", + "create:super_glue", + "exposure:camera", + "measurements:tape_measure", + "#chalk:chalks", + "chalk:chalk_box", + "computercraft:pocket_computer_normal", + "computercraft:pocket_computer_advanced", + "grapplemod:grapplinghook", + "grapplemod:launcheritem", + "ae2:color_applicator", + "ae2:matter_cannon", + "ae2:network_tool", + "ae2:wireless_terminal", + "ae2:wireless_crafting_terminal", + "waterflasks:leather_flask", + "waterflasks:iron_flask", + "waterflasks:red_steel_flask", + "tfc:wool_cloth", + "firmalife:mixing_bowl", + "#gtceu:molds", + "#gtceu:molds", + "create:wrench", + "framedblocks:framed_screwdriver", + "framedblocks:framed_wrench", + "framedblocks:framed_hammer", + "framedblocks:framed_key", + "mcw_tfc_aio:roofing_hammer", + "tfclunchbox:lunchbox", + "tfclunchbox:cooling_lunchbox", + "tfclunchbox:electric_lunchbox", + "primitive_creatures:yhgi", + "primitive_creatures:reh", + "species:harpoon", + "species:crankbow", + "tfg:trowel" + ]; + usableOnToolRack.forEach((entry) => { + event.add("tfc:usable_on_tool_rack", entry); + }); // Ингредиенты для закваски event.add("tfg:ferments_to_rennet", "tfc:food/soybean"); @@ -611,7 +630,7 @@ function registerTFCFluidTags(event) { event.add("tfc:usable_in_red_steel_bucket", idStr); } // Burns ya. - if (temp >= 370) { + if (temp >= 1300) { event.add("tfchotornot:hot_whitelist", idStr); } // Blue steel: can do heat, can't do cryo. diff --git a/kubejs/server_scripts/tfg/recipes.food.js b/kubejs/server_scripts/tfg/recipes.food.js index aa9e42dbb..483029be9 100644 --- a/kubejs/server_scripts/tfg/recipes.food.js +++ b/kubejs/server_scripts/tfg/recipes.food.js @@ -1618,7 +1618,7 @@ function registerTFGFoodRecipes(event) { // Instant Mac processorRecipe('raw_instant_mac', 20 * 10, GTValues.VA[GTValues.LV], { - itemInputs: ['firmalife:food/raw_egg_noodles', '#tfg:foods/cheeses', 'create:cardboard'], + itemInputs: ['firmalife:food/raw_egg_noodles', '#tfg:foods/cheeses', '2x create:cardboard'], itemOutputs: ['2x tfg:food/raw_instant_mac'], fluidInputs: ['gtceu:polyethylene 100'], itemOutputProvider: TFC.isp.of('2x tfg:food/raw_instant_mac').copyFood() diff --git a/kubejs/server_scripts/tfg/recipes.miscellaneous.js b/kubejs/server_scripts/tfg/recipes.miscellaneous.js index 2d3ec7645..23a1d2bef 100644 --- a/kubejs/server_scripts/tfg/recipes.miscellaneous.js +++ b/kubejs/server_scripts/tfg/recipes.miscellaneous.js @@ -759,7 +759,7 @@ function registerTFGMiscellaneousRecipes(event) { A: 'tfg:soaked_hardwood_strip', B: ChemicalHelper.get(TagPrefix.bolt, GTMaterials.SterlingSilver, 1), C: 'tfc:glue', - D: ChemicalHelper.get(TagPrefix.rodLong, GTMaterials.TreatedWood, 1), + D: ChemicalHelper.get(TagPrefix.rodLong, GTMaterials.TreatedWood, 1) }).id('tfg:shaped/harvest_basket_from_wood') event.recipes.gtceu.assembler('tfg:assembler/harvest_basket_from_wood') @@ -781,7 +781,7 @@ function registerTFGMiscellaneousRecipes(event) { A: 'tfc:soaked_papyrus_strip', B: ChemicalHelper.get(TagPrefix.bolt, GTMaterials.SterlingSilver, 1), C: 'tfc:glue', - D: ChemicalHelper.get(TagPrefix.rodLong, GTMaterials.TreatedWood, 1), + D: ChemicalHelper.get(TagPrefix.rodLong, GTMaterials.TreatedWood, 1) }).id('tfg:shaped/harvest_basket_from_papyrus') event.recipes.gtceu.assembler('tfg:assembler/harvest_basket_from_papyrus') @@ -877,7 +877,7 @@ function registerTFGMiscellaneousRecipes(event) { 'AAA', 'AAA' ], { - A: 'tfg:aes_insulation_sheet', + A: 'tfg:aes_insulation_sheet' }).id('tfg:shaped/aes_insulation_roll') event.recipes.gtceu.assembler('tfg:aes_insulation_sheet') @@ -1553,5 +1553,36 @@ function registerTFGMiscellaneousRecipes(event) { .EUt(GTValues.VA[GTValues.LV]) }); TFGHelpers.registerMaterialInfo('tfg:rnr_plow', {'cobalt_brass': 5, 'invar': 2, 'steel': 2, 'wrought_iron': 2, 'rubber': 1, 'treated_wood': 1}); + + //#endregion + //#region Wax Unification + + // Recipe Removals + event.remove({id: 'gtceu:extractor/extract_honeycomb_block'}); + event.remove({id: 'gtceu:extractor/extract_honeycomb'}); + event.remove({id: 'gtceu:extractor/extract_wax_dust'}); + + // Extractor Recipe + event.recipes.gtceu.extractor('tfg:wax_melting') + .itemInputs(Ingredient.of('#forge:wax')) + .outputFluids(Fluid.of('gtceu:wax', 144)) + .duration(20*5) + .EUt(GTValues.VA[GTValues.LV]) + .category(GTRecipeCategories.EXTRACTOR_RECYCLING); + + event.recipes.gtceu.extractor('tfg:tiny_wax_dust_melting') + .itemInputs(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Wax, 1)) + .outputFluids(Fluid.of('gtceu:wax', 16)) + .duration(10) + .EUt(GTValues.VA[GTValues.LV]) + .category(GTRecipeCategories.EXTRACTOR_RECYCLING); + + event.recipes.gtceu.extractor('tfg:small_wax_dust_melting') + .itemInputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.Wax, 1)) + .outputFluids(Fluid.of('gtceu:wax', 36)) + .duration(20) + .EUt(GTValues.VA[GTValues.LV]) + .category(GTRecipeCategories.EXTRACTOR_RECYCLING); + //#endregion } diff --git a/kubejs/server_scripts/tfg/tags.js b/kubejs/server_scripts/tfg/tags.js index 9d8564b5b..b3ca69a4c 100644 --- a/kubejs/server_scripts/tfg/tags.js +++ b/kubejs/server_scripts/tfg/tags.js @@ -90,7 +90,6 @@ const registerTFGItemTags = (event) => { event.add('minecraft:piglin_loved', 'tfg:piglin_disguise') event.add('forge:tools/trowels', 'tfg:trowel') - event.add('tfc:usable_on_tool_rack', 'tfg:trowel') event.add('tfg:harvester', 'tfg:harvest_basket') event.add('tfg:harvester', 'tfg:aluminium_harvest_basket') diff --git a/kubejs/startup_scripts/gtceu/constants.js b/kubejs/startup_scripts/gtceu/constants.js index 85c03441a..4666d23a6 100644 --- a/kubejs/startup_scripts/gtceu/constants.js +++ b/kubejs/startup_scripts/gtceu/constants.js @@ -156,11 +156,6 @@ global.GTCEU_DISABLED_ITEMS = /** @type {const} */ ([ "gtceu:titanium_leggings", "gtceu:titanium_boots", - // Huh - "gtceu:wax_dust", - "gtceu:small_wax_dust", - "gtceu:tiny_wax_dust", - // Sculk "gtceu:tiny_echo_shard_dust", "gtceu:small_echo_shard_dust",