Merge branch 'dev' into feature/create-6

This commit is contained in:
Pyritie 2025-06-12 13:34:02 +01:00
commit c6e090fe50
27 changed files with 435 additions and 167 deletions

View file

@ -388,12 +388,12 @@ jobs:
fi
echo "✔️ All artifacts found"
- name: 🚫 Сlose label "Done"
uses: Xikaro/close-issues-based-on-label@master
env:
LABEL: "Status: Done"
COMMENT: In ${{ needs.info.outputs.project_version }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# - name: 🚫 Сlose label "Done"
# uses: Xikaro/close-issues-based-on-label@master
# env:
# LABEL: "Status: Done"
# COMMENT: In ${{ needs.info.outputs.project_version }}
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: 📄 Format diff
id: format_diff

View file

@ -3,7 +3,12 @@
### New features
- Added back the vanilla stonecutter @Pyritie
- Added our own recipes for crafting GregTech facades - 3 cast iron plates for 8 facades, or 3 titanium plates for 32 facades (#1145) @BlueBoat29
- Added create conductor recipes (#1144) @JeanRdSz
- Added lunch boxes! They keep your food cool and you can even eat right out of them! @Thomasx0
### Changes
- Added cinnabar to piglin bartering and changed the deep cave enderman loot table to raw gold instead of coal @Pyritie
- Nerfed extraction of latex from logs to encourage tree taps instead @Pyritie
- Adjusted temperature tolerance of latex trees, check the field guide for specifics @Pyritie
### Bug fixes
- Fixed trowel being consumed on use (#1143) @Redeix
- Fixed glass dust dupe with unfinished lamps (#1134) @Pyritie
@ -11,6 +16,8 @@
- Fixed assembler recipe conflicts with certain wrought iron create items (#1142) @TomPlop & @Pyritie
- Quest fixes (#1119, #1142) @TomPlop
- Fixed recipe conflicts with scaffolding and paintings, and wine glasses and jars (#1141) @JeanRdSz
- Fixed piglin disguise loot table giving the wrong item (#1151) @Redeix
- Fixed create encased large cogwheel drops (#1148) @Taskeren
## [0.9.10] - 05.06.2025
### New features

View file

@ -117,7 +117,7 @@
description: ["{quests.low_voltage.lv_amp_explanation.desc}"]
id: "7B0FF43022F6C2EC"
optional: true
shape: "rsquare"
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.lv_amp_explanation.subtitle}"
tasks: [{
@ -673,7 +673,8 @@
]
icon: "gtceu:fluid_cell"
id: "292938760AB9A12B"
shape: "square"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.universal_cell.subtitle}"
tasks: [{
@ -691,6 +692,7 @@
icon: "gtceu:rotor_casting_mold"
id: "115C4226F6473F0C"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.mold_rotor.subtitle}"
tasks: [
@ -1112,6 +1114,7 @@
icon: "gtceu:lv_rock_crusher"
id: "1F2359106FC95603"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.lv_rock_crusher.subtitle}"
tasks: [{
@ -1139,6 +1142,7 @@
icon: "gtceu:lv_charger_4x"
id: "2DB259568F347C0E"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.lv_turbo_charge.subtitle}"
tasks: [{
@ -1166,6 +1170,7 @@
icon: "gtceu:lv_fisher"
id: "3B26CA44EA955B07"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.lv_fisher.subtitle}"
tasks: [{
@ -1409,6 +1414,7 @@
icon: "tfg:lv_aqueous_accumulator"
id: "47E6F8AC20D51814"
optional: true
shape: "heart"
subtitle: "{quests.low_voltage.lv_aqueous_accumulator.subtitle}"
tasks: [{
id: "685FCAE71ECE04BC"

View file

@ -1228,6 +1228,7 @@
dependency_requirement: "one_completed"
description: ["{quests.tfg_tips.refrigerator.desc}"]
id: "58EC77A796979E68"
shape: "gear"
size: 2.0d
subtitle: "{quests.tfg_tips.refrigerator.subtitle}"
tasks: [{
@ -1236,8 +1237,8 @@
type: "item"
}]
title: "{quests.tfg_tips.refrigerator.title}"
x: 9.0d
y: -17.0d
x: 5.5d
y: -18.0d
}
{
dependencies: ["2EFB241490502DB3"]
@ -1398,8 +1399,7 @@
dependency_requirement: "one_completed"
description: ["{quests.tfg_tips.cellar.desc}"]
id: "3D1FF501DE2E56FE"
shape: "gear"
size: 4.0d
size: 1.5d
subtitle: "{quests.tfg_tips.cellar.subtitle}"
tasks: [
{
@ -1422,8 +1422,8 @@
}
]
title: "{quests.tfg_tips.cellar.title}"
x: 3.5d
y: -17.0d
x: 3.0d
y: -16.0d
}
{
dependencies: ["3D1FF501DE2E56FE"]
@ -1443,8 +1443,8 @@
type: "item"
}]
title: "{quests.tfg_tips.cellar_blocks.title}"
x: 3.5d
y: -20.0d
x: 3.0d
y: -17.5d
}
{
dependencies: ["2EFB241490502DB3"]
@ -1611,7 +1611,7 @@
}]
title: "{quests.tfg_tips.passive_preservation.title}"
x: 6.5d
y: -15.5d
y: -16.0d
}
{
dependencies: ["4047EE998BC4CD03"]
@ -3637,8 +3637,8 @@
type: "item"
}]
title: "{quests.tfg_tips.vessel_preservation.title}"
x: 6.5d
y: -16.5d
x: 8.0d
y: -16.0d
}
{
dependencies: ["173F6FA60A5B280B"]
@ -5314,6 +5314,68 @@
x: 4.75d
y: -12.5d
}
{
dependencies: ["13F7066858E923FF"]
description: ["{quests.tfg_tips.lunchbox.desc}"]
icon: {
Count: 1
id: "tfclunchbox:lunchbox"
tag: {
SelectedSlot: 0
}
}
id: "6C18E8F79A841620"
shape: "gear"
size: 2.0d
subtitle: "{quests.tfg_tips.lunchbox.subtitle}"
tasks: [
{
id: "33971FCF02C81741"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
"ftbfiltersystem:filter": "or(item(tfclunchbox:lunchbox)item(tfclunchbox:cooling_lunchbox))"
}
}
title: "{quests.tfg_tips.lunchbox.task}"
type: "item"
}
{
id: "5439AF9F5493A3D1"
item: {
Count: 1
id: "tfclunchbox:universal_capsule"
tag: {
Damage: 0
Durability: 10
display: {
Name: "{\"translate\":\"item.tfclunchbox.universal_capsule.filled\"}"
}
}
}
match_nbt: false
optional_task: true
type: "item"
}
{
id: "134E8B8345E6DEE2"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
"ftbfiltersystem:filter": "ftbfiltersystem:item_tag(tfclunchbox:ice)"
}
}
optional_task: true
title: "Any #tfclunchbox:ice"
type: "item"
}
]
title: "{quests.tfg_tips.lunchbox.title}"
x: 7.5d
y: -18.0d
}
]
subtitle: ["{quests.tfg_tips.subtitle}"]
title: "{quests.tfg_tips}"

View file

@ -47,7 +47,7 @@
"title": "Hevea",
"item": "afc:wood/log/hevea,afc:wood/wood/hevea,afc:wood/leaves/hevea,afc:wood/sapling/hevea",
"link_recipe": false,
"text": "$(bold)Climate Data$()$(br)$(thing)Minimum Temperature$(): 17.1°C$(br)$(thing)Maximum Temperature$(): 26.2°C$(br)$(thing)Minimum Rainfall$(): 390$(br)$(thing)Maximum Rainfall$(): 500$(br2)$(bold)Tapping Data$()$(br)$(thing)Min Temp for Production$(): 22°C$(br)$(thing)Max Temp for Production$(): N/A$(br)$(thing)Spring Exclusive$(): No$(br)$(thing)Flow Rate$(): 3mb"
"text": "$(bold)Climate Data$()$(br)$(thing)Minimum Temperature$(): 17.1°C$(br)$(thing)Maximum Temperature$(): 26.2°C$(br)$(thing)Minimum Rainfall$(): 390$(br)$(thing)Maximum Rainfall$(): 500$(br2)$(bold)Tapping Data$()$(br)$(thing)Min Temp for Production$(): 8°C$(br)$(thing)Max Temp for Production$(): N/A$(br)$(thing)Spring Exclusive$(): No$(br)$(thing)Flow Rate$(): 2mb"
},
{
"type": "patchouli:image",
@ -61,7 +61,7 @@
"title": "Rubber Fig",
"item": "afc:wood/log/rubber_fig,afc:wood/wood/rubber_fig,afc:wood/leaves/rubber_fig,afc:wood/sapling/rubber_fig",
"link_recipe": false,
"text": "$(bold)Climate Data$()$(br)$(thing)Minimum Temperature$(): 9.8°C$(br)$(thing)Maximum Temperature$(): 20.7°C$(br)$(thing)Minimum Rainfall$(): 290$(br)$(thing)Maximum Rainfall$(): 400$(br2)$(bold)Tapping Data$()$(br)$(thing)Min Temp for Production$(): 12°C$(br)$(thing)Max Temp for Production$(): N/A$(br)$(thing)Spring Exclusive$(): No$(br)$(thing)Flow Rate$(): 2mb"
"text": "$(bold)Climate Data$()$(br)$(thing)Minimum Temperature$(): 9.8°C$(br)$(thing)Maximum Temperature$(): 20.7°C$(br)$(thing)Minimum Rainfall$(): 290$(br)$(thing)Maximum Rainfall$(): 400$(br2)$(bold)Tapping Data$()$(br)$(thing)Min Temp for Production$(): 4°C$(br)$(thing)Max Temp for Production$(): N/A$(br)$(thing)Spring Exclusive$(): No$(br)$(thing)Flow Rate$(): 1mb"
},
{
"type": "patchouli:image",
@ -75,7 +75,7 @@
"title": "Kapok",
"item": "tfc:wood/log/kapok,tfc:wood/wood/kapok,tfc:wood/leaves/kapok,tfc:wood/sapling/kapok",
"link_recipe": false,
"text": "$(bold)Climate Data$()$(br)$(thing)Minimum Temperature$(): 17.1°C$(br)$(thing)Maximum Temperature$(): 38°C$(br)$(thing)Minimum Rainfall$(): 320$(br)$(thing)Maximum Rainfall$(): 500$(br2)$(bold)Tapping Data$()$(br)$(thing)Min Temp for Production$(): 1°C$(br)$(thing)Max Temp for Production$(): N/A$(br)$(thing)Spring Exclusive$(): No$(br)$(thing)Flow Rate$(): 1mb"
"text": "$(bold)Climate Data$()$(br)$(thing)Minimum Temperature$(): 17.1°C$(br)$(thing)Maximum Temperature$(): 38°C$(br)$(thing)Minimum Rainfall$(): 320$(br)$(thing)Maximum Rainfall$(): 500$(br2)$(bold)Tapping Data$()$(br)$(thing)Min Temp for Production$(): 12°C$(br)$(thing)Max Temp for Production$(): N/A$(br)$(thing)Spring Exclusive$(): No$(br)$(thing)Flow Rate$(): 3mb"
},
{
"type": "patchouli:image",

View file

@ -18,11 +18,11 @@
{
"type": "patchouli:text",
"title": "Trade Results",
"text": "$(li)1 Copper Ingot$(li)1 Tin Ingot$(li)1 Silver Ingot$(li)1 Bronze Ingot$(li)1 Bismuth Bronze Ingot$(li)1 Cast Iron Ingot$(li)1 Zinc Ingot$(li)1 Brass Ingot$(li)1 Bismuth Ingot$(li)1 Nickel Ingot$(li)4-6 Sulfur Powder"
"text": "$(li)1 Copper Ingot$(li)1 Tin Ingot$(li)1 Silver Ingot$(li)1 Bronze Ingot$(li)1 Bismuth Bronze Ingot$(li)1 Cast Iron Ingot$(li)1 Zinc Ingot$(li)1 Brass Ingot$(li)1 Bismuth Ingot$(li)1 Nickel Ingot$(li)1 Cinnabar Gem"
},
{
"type": "patchouli:text",
"text": "$(li)1-2 Leather$(li)6-12 String$(li)6-12 Nether Quartz$(li)12-18 Mangrove Lumber$(li)6-8 Mangrove Logs$(li)4-6 Cooked Venison$(li)4-6 Ghost Peppers$(li)4-6 Gunpowder$(li)4-8 Charcoal$(li)6-12 Arrows$(li)6-12 Flux$(li)8-12 Blackstone Bricks$(li)8-12 Deepslate Bricks$(li)8-16 Sticks"
"text": "$(li)4-6 Sulfur Powder$(li)1-2 Leather$(li)6-12 String$(li)6-12 Nether Quartz$(li)12-18 Mangrove Lumber$(li)6-8 Mangrove Logs$(li)4-6 Cooked Venison$(li)4-6 Ghost Peppers$(li)4-6 Gunpowder$(li)4-8 Charcoal$(li)6-12 Arrows$(li)6-12 Flux$(li)8-12 Blackstone Bricks$(li)8-12 Deepslate Bricks$(li)8-16 Sticks"
},
{
"type": "patchouli:text",

View file

@ -2411,5 +2411,9 @@
"quests.tfg_tips.piglin_disguise.desc": "Do you feel like you don't belong?\n Do the &4Piglin&r attack you at your school because of your appearance?\n Try wearing a &aPiglin Disguise&r to ward off unwanted attention and blend right in.",
"quests.tfg_tips.trowel.title": "Trowel",
"quests.tfg_tips.trowel.subtitle": "Inspired by Quark!",
"quests.tfg_tips.trowel.desc": "A &4Trowel&r is a tool for builders that can &brandomly place blocks&r located in the hotbar. Trowels can also use bricks and other useable items to randomize tiles for &5RNR Roads&r."
"quests.tfg_tips.trowel.desc": "A &4Trowel&r is a tool for builders that can &brandomly place blocks&r located in the hotbar. Trowels can also use bricks and other useable items to randomize tiles for &5RNR Roads&r.",
"quests.tfg_tips.lunchbox.title": "Lunch Box",
"quests.tfg_tips.lunchbox.subtitle": "A refrigerator in your pocket!",
"quests.tfg_tips.lunchbox.desc": "Lunch boxes have 9 slots for food, keeping it cold and longer lasting.\nThe Cooling Lunchbox has a stronger effect than the regular one, but needs to be provided with ice or capsules that will thaw over time.",
"quests.tfg_tips.lunchbox.task": "Any Lunch Box"
}

View file

@ -31,7 +31,7 @@
"function": "minecraft:set_count"
}
],
"name": "gtceu:raw_coal"
"name": "tfc:ore/normal_native_gold"
},
{
"type": "minecraft:item",

View file

@ -115,6 +115,11 @@
"name": "gtceu:nickel_ingot",
"weight": 100
},
{
"type": "minecraft:item",
"name": "gtceu:cinnabar_gem",
"weight": 100
},
{
"type": "minecraft:item",
"name": "minecraft:leather",

View file

@ -7,7 +7,7 @@
"entries": [
{
"type": "minecraft:item",
"name": "tfg:piglin_disguise_block"
"name": "tfg:piglin_disguise"
}
],
"conditions": [
@ -17,4 +17,4 @@
]
}
]
}
}

View file

@ -86,39 +86,36 @@ const registerAFCRecipes = (event) => {
.id('tfg:heating/tree_tap')
//Custom rubber and hevea tappings
//Hevea is the most efficient but requires the warmest temperatures
//Rubber fig requires average temperatures and its mildly efficient
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/hevea"))
.resultFluid(Fluid.of("tfg:latex", 3))
.minTemp(22)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/hevea")
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/ancient_hevea"))
.resultFluid(Fluid.of("tfg:latex", 3))
.minTemp(22)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/ancient_hevea")
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/rubber_fig"))
.resultFluid(Fluid.of("tfg:latex", 2))
.minTemp(12)
.resultFluid(Fluid.of("tfg:latex", 1))
.minTemp(4)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/rubber_fig")
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/ancient_rubber_fig"))
.resultFluid(Fluid.of("tfg:latex", 2))
.minTemp(12)
.resultFluid(Fluid.of("tfg:latex", 1))
.minTemp(4)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/ancient_rubber_fig")
//Kapok Grandfathered, least efficient but works as long as the temperature is not freezing
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/hevea"))
.resultFluid(Fluid.of("tfg:latex", 2))
.minTemp(8)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/hevea")
event.recipes.afc.tree_tapping(TFC.blockIngredient("afc:wood/log/ancient_hevea"))
.resultFluid(Fluid.of("tfg:latex", 2))
.minTemp(8)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/latex/ancient_hevea")
event.recipes.afc.tree_tapping(TFC.blockIngredient("tfc:wood/log/kapok"))
.resultFluid(Fluid.of("tfg:latex", 1))
.minTemp(1)
.resultFluid(Fluid.of("tfg:latex", 3))
.minTemp(12)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/kapok_latex")
event.recipes.afc.tree_tapping(TFC.blockIngredient("tfc:wood/log/ancient_kapok"))
.resultFluid(Fluid.of("tfg:latex", 1))
.minTemp(1)
.resultFluid(Fluid.of("tfg:latex", 3))
.minTemp(12)
.requiresNaturalLog(true)
.id("tfg:tree_tapping/ancient_kapok_latex")

View file

@ -186,18 +186,19 @@ function registerGreateRecipes(event) {
event.shaped('greate:steel_millstone', [
'FBF',
'DCE',
'AAA'
'AGA'
], {
A: '#forge:smooth_stone',
B: 'gtceu:treated_wood_slab',
C: '#forge:small_gears/wrought_iron',
C: '#forge:small_gears/steel',
D: '#forge:tools/hammers',
E: '#forge:tools/wrenches',
F: '#forge:dusts/diamond'
F: '#forge:dusts/diamond',
G: 'greate:steel_shaft'
}).id('greate:shaped/steel_millstone')
event.recipes.gtceu.assembler('greate:steel_millstone')
.itemInputs('3x #forge:smooth_stone', 'gtceu:treated_wood_slab', '#forge:small_gears/wrought_iron', '2x #forge:dusts/diamond')
.itemInputs('2x #forge:smooth_stone', 'gtceu:treated_wood_slab', '#forge:small_gears/steel', '2x #forge:dusts/diamond', 'greate:steel_shaft')
.itemOutputs('greate:steel_millstone')
.duration(200)
.EUt(GTValues.VA[GTValues.ULV])

View file

@ -103,19 +103,20 @@ function registerGreateRecyclingRecipes(event) {
event.recipes.gtceu.macerator('greate:steel_millstone')
.itemInputs('greate:steel_millstone')
.itemOutputs(
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Steel, 3),
ChemicalHelper.get(TagPrefix.dust, GTMaterials.WroughtIron, 1),
ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Steel, 10),
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Stone, 2),
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Diamond, 2),
ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.TreatedWood, 2))
.duration(GTMaterials.Steel.getMass() * 4)
.duration(GTMaterials.Stone.getMass() * 4)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace('greate:steel_millstone')
.itemInputs('greate:steel_millstone')
.itemOutputs(
ChemicalHelper.get(TagPrefix.ingot, GTMaterials.Steel, 3),
ChemicalHelper.get(TagPrefix.ingot, GTMaterials.WroughtIron, 1))
.duration(GTMaterials.Steel.getMass() * 4)
ChemicalHelper.get(TagPrefix.nugget, GTMaterials.Steel, 10),
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Diamond, 2))
.duration(GTMaterials.Stone.getMass() * 4)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])

View file

@ -722,7 +722,7 @@ function registerGTCEuMachineRecipes(event) {
event.recipes.gtceu.assembly_line('ultimate_battery')
.itemInputs('16x #forge:double_plates/darmstadtium',
'4x #gtceu:circuits/uhv',
'16x #gtceu:batteries/uv',
'16x gtceu:energy_cluster',
'4x gtceu:uv_field_generator',
'64x gtceu:uhpic_wafer',
'64x gtceu:uhpic_wafer',

View file

@ -221,7 +221,7 @@ function registerGTCEUMetalRecipes(event) {
.outputFluids(Fluid.of(material.getFluid(), 288))
.duration(material.getMass())
.category(GTRecipeCategories.EXTRACTOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
.EUt(material.hasProperty(PropertyKey.BLAST) ? GTValues.VA[GTValues.MV] : GTValues.VA[GTValues.ULV])
}
if (material.hasProperty(PropertyKey.DUST)) {
@ -843,7 +843,6 @@ function registerGTCEUMetalRecipes(event) {
.itemOutputs(barsStack)
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
.circuit(1)
}
forEachMaterial(material => {

View file

@ -644,4 +644,11 @@ function removeGTCEURecipes(event) {
event.remove({ id: 'gtceu:smelting/sticky_resin_from_slime' })
event.remove({ id: 'gtceu:wiremill/string_from_polycaprolactam' })
event.remove({ id: 'gtceu:chemical_bath/black_steel_cool_down' })
event.remove({ id: 'gtceu:chemical_bath/black_steel_cool_down_distilled_water' })
event.remove({ id: 'gtceu:chemical_bath/red_steel_cool_down' })
event.remove({ id: 'gtceu:chemical_bath/red_steel_cool_down_distilled_water' })
event.remove({ id: 'gtceu:chemical_bath/blue_steel_cool_down' })
event.remove({ id: 'gtceu:chemical_bath/blue_steel_cool_down_distilled_water' })
}

View file

@ -118,4 +118,7 @@ const registerGTCEUFluidTags = (event) => {
event.add('c:hidden_from_recipe_viewers', /gtceu.*potion.*/)
event.add('c:hidden_from_recipe_viewers', 'gtceu:molten_black_steel')
event.add('c:hidden_from_recipe_viewers', 'gtceu:molten_red_steel')
event.add('c:hidden_from_recipe_viewers', 'gtceu:molten_blue_steel')
}

View file

@ -126,8 +126,10 @@ TFCEvents.data(event => {
registerTFCDataForChalk(event);
registerTFCDataForGTCEU(event)
registerTFCDataForImmersiveAircraft(event);
registerTFCDataForSophisticatedBackpacks(event)
registerTFCDataForTFC(event)
registerTFCDataForTFCBetterBF(event)
registerTFCDataForTFCLunchbox(event)
registerTFCDataForWaterFlasks(event)
registerTFCDataForFirmalife(event)
})
@ -207,6 +209,7 @@ ServerEvents.recipes(event => {
registerTfceaRecipes(event)
registerTFCRecipes(event)
registerTFCBetterBFRecipes(event)
registerTFCLunchBoxRecipes(event)
registerTFGRecipes(event)
registerTFCGroomingStationRecipes(event)
registerTFCTextileRecipes(event)

View file

@ -4,7 +4,7 @@ const registerRailWaysRecipes = (event) => {
// Удаление рецептов мода railways
event.remove({ mod: 'railways' });
registerRailwaysLocometalRecipes(event)
// Семафор
@ -48,81 +48,81 @@ const registerRailWaysRecipes = (event) => {
.EUt(28)
//#region Couplers and Buffers
event.recipes.gtceu.assembler(`tfg:railways/screwlink_coupler`)
.itemInputs(`minecraft:tripwire_hook`, `#forge:plates/steel`, '#forge:screws/steel')
.circuit(1)
.itemOutputs(`railways:screwlink_coupler`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/screwlink_coupler`)
.itemInputs(`minecraft:tripwire_hook`, `#forge:plates/steel`, '#forge:screws/steel')
.circuit(1)
.itemOutputs(`railways:screwlink_coupler`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/copycat_headstock_screwlink_coupler`)
.itemInputs(`railways:screwlink_coupler`, `create:copycat_panel`)
.circuit(1)
.itemOutputs(`railways:copycat_headstock_screwlink_coupler`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/copycat_headstock_screwlink_coupler`)
.itemInputs(`railways:screwlink_coupler`, `create:copycat_panel`)
.circuit(1)
.itemOutputs(`railways:copycat_headstock_screwlink_coupler`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/buffer`)
.itemInputs(`6x #forge:rods/long/steel`, `2x railways:small_buffer`)
.circuit(1)
.itemOutputs(`railways:buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/buffer`)
.itemInputs(`6x #forge:rods/long/steel`, `2x railways:small_buffer`)
.circuit(1)
.itemOutputs(`railways:buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/small_buffer`)
.itemInputs(`railways:screwlink_coupler`, `#forge:ingots/steel`)
.circuit(1)
.itemOutputs(`railways:small_buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/small_buffer`)
.itemInputs(`railways:screwlink_coupler`, `#forge:ingots/steel`)
.circuit(1)
.itemOutputs(`railways:small_buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/big_buffer`)
.itemInputs(`railways:small_buffer`, `#forge:ingots/steel`)
.circuit(1)
.itemOutputs(`railways:big_buffer`)
.duration(200)
.EUt(28)
event.recipes.gtceu.assembler(`tfg:railways/big_buffer`)
.itemInputs(`railways:small_buffer`, `#forge:ingots/steel`)
.circuit(1)
.itemOutputs(`railways:big_buffer`)
.duration(200)
.EUt(28)
//#endregion
//#region conductor
event.recipes.gtceu.assembler(`tfg:railways/conductor_cap`)
.itemInputs('#gtceu:circuits/lv','#gtceu:electric_motors','2x #forge:string','#tfc:high_quality_cloth')
.itemInputs('#gtceu:circuits/lv', '#gtceu:electric_motors', '2x #forge:string', '#tfc:high_quality_cloth')
.circuit(15)
.itemOutputs('railways:white_conductor_cap')
.duration(80)
.inputFluids(Fluid.of('gtceu:glue', 200))
.EUt(16)
event.recipes.tfc.barrel_sealed(1000)
.inputs('#tfg:colored_caps', Fluid.of(`tfc:lye`, 288))
.outputItem(`railways:white_conductor_cap`)
.id(`railways:barrel/cap_decolor`)
event.recipes.gtceu.chemical_bath(`tfg:cap_decolor_bath`)
.itemInputs('#tfg:colored_caps')
.inputFluids(Fluid.of('gtceu:chlorine', 20))
.itemOutputs('railways:white_conductor_cap')
.duration(80)
.EUt(4)
.category(GTRecipeCategories.CHEM_DYES)
global.MINECRAFT_DYE_NAMES.forEach(dye => {
event.recipes.gtceu.chemical_bath(`railways/${dye}_conductor_cap`)
.itemInputs('railways:white_conductor_cap')
.inputFluids(Fluid.of(`tfc:${dye}_dye`, 288))
.itemOutputs(`railways:${dye}_conductor_cap`)
.duration(200)
.EUt(4)
.category(GTRecipeCategories.CHEM_DYES)
event.recipes.gtceu.chemical_bath(`railways/${dye}_conductor_cap`)
.itemInputs('railways:white_conductor_cap')
.inputFluids(Fluid.of(`tfc:${dye}_dye`, 288))
.itemOutputs(`railways:${dye}_conductor_cap`)
.duration(200)
.EUt(4)
.category(GTRecipeCategories.CHEM_DYES)
if (dye != "white") {
event.recipes.tfc.barrel_sealed(1000)
event.recipes.tfc.barrel_sealed(1000)
.inputs(`railways:white_conductor_cap`, Fluid.of(`tfc:${dye}_dye`, 288))
.outputItem(`railways:${dye}_conductor_cap`)
.id(`railways:barrel/dyeing/${dye}_conductor_cap`)
event.recipes.gtceu.chemical_bath(`tfg:cap_decolor_bath`)
.itemInputs('#tfg:colored_caps')
.inputFluids(Fluid.of('gtceu:chlorine',20))
.itemOutputs('railways:white_conductor_cap')
.duration(80)
.EUt(4)
.category(GTRecipeCategories.CHEM_DYES)
}
})
//#endregion
// Переключатель пути поезда из андезита

View file

@ -0,0 +1,11 @@
// priority: 0
function registerTFCDataForSophisticatedBackpacks(event) {
event.itemSize('sophisticatedbackpacks:backpack', 'very_large', 'very_heavy', 'backpack_size')
event.itemSize('sophisticatedbackpacks:iron_backpack', 'very_large', 'very_heavy', 'iron_backpack_size')
event.itemSize('sophisticatedbackpacks:gold_backpack', 'very_large', 'very_heavy', 'gold_backpack_size')
event.itemSize('sophisticatedbackpacks:diamond_backpack', 'very_large', 'very_heavy', 'diamond_backpack_size')
event.itemSize('sophisticatedbackpacks:netherite_backpack', 'very_large', 'very_heavy', 'netherite_backpack_size')
}

View file

@ -186,11 +186,6 @@ const registerTFCKnappingTypes = (event) => {
//#region registerTFCItemSize
const registerTFCItemSize = (event) => {
event.itemSize('sophisticatedbackpacks:backpack', 'very_large', 'very_heavy', 'backpack_size')
event.itemSize('sophisticatedbackpacks:iron_backpack', 'very_large', 'very_heavy', 'iron_backpack_size')
event.itemSize('sophisticatedbackpacks:gold_backpack', 'very_large', 'very_heavy', 'gold_backpack_size')
event.itemSize('sophisticatedbackpacks:diamond_backpack', 'very_large', 'very_heavy', 'diamond_backpack_size')
event.itemSize('sophisticatedbackpacks:netherite_backpack', 'very_large', 'very_heavy', 'netherite_backpack_size')
global.MINECRAFT_DYE_NAMES.forEach (color => {
event.itemSize(`tfg:decorative_vase/${color}`, 'normal', 'medium', `decorative_vase/${color}`)

View file

@ -0,0 +1,8 @@
// priority: 0
function registerTFCDataForTFCLunchbox(event) {
event.itemSize('tfclunchbox:lunchbox', 'large', 'heavy', 'lunchbox_size')
event.itemSize('tfclunchbox:cooling_lunchbox', 'large', 'heavy', 'cooling_lunchbox_size')
}

View file

@ -0,0 +1,59 @@
// priority: 0
function registerTFCLunchBoxRecipes(event) {
event.shaped('tfclunchbox:lunchbox', [
' CE',
'ABA',
'DAD'
], {
A: '#forge:plates/sterling_silver',
B: '#forge:chests/wooden',
C: '#forge:bolts/brass',
D: '#forge:screws/wrought_iron',
E: '#forge:tools/hammers'
}).id('tfclunchbox:lunchbox')
event.shaped('tfclunchbox:cooling_lunchbox', [
' CE',
'ABA',
'DAD'
], {
A: '#forge:plates/red_steel',
B: '#forge:chests/wooden',
C: '#forge:bolts/brass',
D: '#forge:screws/steel',
E: '#forge:tools/hammers'
}).id('tfclunchbox:cooling_lunchbox')
event.shaped('tfclunchbox:cooling_lunchbox', [
' C ',
'ABA'
], {
A: '#forge:plates/red_steel',
B: 'tfclunchbox:lunchbox',
C: '#forge:tools/hammers'
}).id('tfclunchbox:upgrade_to_cooling_lunchbox')
event.remove({ id: 'tfclunchbox:universal_capsule' })
event.remove({ id: 'tfclunchbox:fill_capsule_with_ice' })
event.recipes.gtceu.assembler('tfclunchbox:universal_capsule')
.itemInputs('1x #forge:foils/red_steel', '1x #forge:rings/sterling_silver')
.itemOutputs('tfclunchbox:universal_capsule')
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.canner('tfclunchbox:fill_capsule_with_ice')
.itemInputs('tfclunchbox:universal_capsule')
.inputFluids(Fluid.of('gtceu:ice', 45 * 144))
.itemOutputs(Item.of('tfclunchbox:universal_capsule', '{Durability:500}').withName(Text.translate('item.tfclunchbox.universal_capsule.filled')))
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.canner('tfclunchbox:fill_capsule_with_ice_solid')
.itemInputs('tfclunchbox:universal_capsule', '5x minecraft:packed_ice')
.itemOutputs(Item.of('tfclunchbox:universal_capsule', '{Durability:500}').withName(Text.translate('item.tfclunchbox.universal_capsule.filled')))
.duration(100)
.EUt(GTValues.VA[GTValues.LV])
}

View file

@ -253,6 +253,13 @@ function registerTFGMiscellaneousRecipes(event) {
.duration(20)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.fluid_solidifier('tfg:ice')
.inputFluids(Fluid.of('minecraft:water', 144))
.notConsumable('gtceu:block_casting_mold')
.itemOutputs('minecraft:ice')
.duration(200)
.EUt(GTValues.VA[GTValues.LV])
event.shapeless('4x firmalife:ice_shavings', ['#forge:dusts/ice', '#forge:tools/hammers'])
// Cooling water

View file

@ -575,21 +575,21 @@ function registerVintageImprovementsRecipes(event) {
event.custom({
type: 'vintageimprovements:vacuumizing',
ingredients: [{ tag: 'tfg:latex_logs' }],
results: [{ fluid: 'tfg:latex', amount: 250 }],
results: [{ fluid: 'tfg:latex', amount: 100 }],
processingTime: 600
}).id('tfg:vi/vacuumizing/latex_from_rubber_logs')
event.custom({
type: 'vintageimprovements:vacuumizing',
ingredients: [{ tag: 'tfg:rubber_saplings' }],
results: [{ fluid: 'tfg:latex', amount: 100 }],
results: [{ fluid: 'tfg:latex', amount: 25 }],
processingTime: 300
}).id('tfg:vi/vacuumizing/latex_from_rubber_sapling')
event.custom({
type: 'vintageimprovements:vacuumizing',
ingredients: [{ tag: 'tfg:rubber_leaves' }],
results: [{ fluid: 'tfg:latex', amount: 50 }],
results: [{ fluid: 'tfg:latex', amount: 10 }],
processingTime: 150
}).id('tfg:vi/vacuumizing/latex_from_rubber_leaves')

View file

@ -37,7 +37,8 @@ const registerGTCEuMaterialModification = (event) => {
GENERATE_FRAME,
GENERATE_PLATE,
GENERATE_DENSE,
GENERATE_RING
GENERATE_RING,
GENERATE_FOIL
} = $MATERIAL_FLAGS
var metalTooling = [
@ -194,7 +195,7 @@ const registerGTCEuMaterialModification = (event) => {
GTMaterials.Nickel.addFlags(GENERATE_ROD, GENERATE_LONG_ROD);
GTMaterials.BlackSteel.addFlags(GENERATE_LONG_ROD, GENERATE_BOLT_SCREW);
GTMaterials.BlueSteel.addFlags(GENERATE_LONG_ROD, GENERATE_BOLT_SCREW);
GTMaterials.RedSteel.addFlags(GENERATE_LONG_ROD, GENERATE_BOLT_SCREW);
GTMaterials.RedSteel.addFlags(GENERATE_LONG_ROD, GENERATE_BOLT_SCREW, GENERATE_FOIL);
GTMaterials.WroughtIron.addFlags(GENERATE_ROTOR, GENERATE_SPRING, GENERATE_SMALL_GEAR);
GTMaterials.Copper.addFlags(GENERATE_BOLT_SCREW);
@ -255,6 +256,11 @@ const registerGTCEuMaterialModification = (event) => {
GTMaterials.Galena.setProperty(PropertyKey.HAZARD, new $HAZARD_PROPERTY($HAZARD_PROPERTY.HazardTrigger.INHALATION, GTMedicalConditions.WEAK_POISON, 1, false));
GTMaterials.Chromite.setProperty(PropertyKey.HAZARD, new $HAZARD_PROPERTY($HAZARD_PROPERTY.HazardTrigger.SKIN_CONTACT, GTMedicalConditions.IRRITANT, 1, false));
// Make these the lowest tier of EBF instead
GTMaterials.BlackSteel.getProperty(PropertyKey.BLAST).setBlastTemperature(1000)
GTMaterials.RedSteel.getProperty(PropertyKey.BLAST).setBlastTemperature(1000)
GTMaterials.BlueSteel.getProperty(PropertyKey.BLAST).setBlastTemperature(1000)
// Color Adjustments
GTMaterials.BismuthBronze.setMaterialARGB(0x5A966E)
GTMaterials.BismuthBronze.setMaterialSecondaryARGB(0x203E2A)

View file

@ -229,7 +229,7 @@
"files": [
{
"type": "curseforge",
"file_name": "AdvancedPeripherals-1.20.1-0.7.43r.jar",
"file_name": "AdvancedPeripherals-1.20.1-0.7.44r.jar",
"mc_versions": [
"1.20.1"
],
@ -238,18 +238,18 @@
"forge"
],
"release_type": "release",
"url": "https://edge.forgecdn.net/files/6577/898/AdvancedPeripherals-1.20.1-0.7.43r.jar",
"id": "6577898",
"url": "https://edge.forgecdn.net/files/6623/216/AdvancedPeripherals-1.20.1-0.7.44r.jar",
"id": "6623216",
"parent_id": "431725",
"hashes": {
"sha1": "a6f544738d3c0bb38712dededf12d0e80bd357c7",
"md5": "3b54478098221219b35146ceac7c6133"
"sha1": "7dd9807debcc9eb475bc67a5156bca19a7b46578",
"md5": "8731f8e8503a6e7a5f9f87d59b96d13e"
},
"required_dependencies": [
"282001"
],
"size": 885577,
"date_published": "2025-05-26T17:39:08.747Z"
"size": 885693,
"date_published": "2025-06-06T22:01:06.353Z"
}
]
},
@ -389,7 +389,7 @@
"files": [
{
"type": "curseforge",
"file_name": "appliedenergistics2-forge-15.4.4.jar",
"file_name": "appliedenergistics2-forge-15.4.5.jar",
"mc_versions": [
"1.20.1"
],
@ -397,18 +397,18 @@
"forge"
],
"release_type": "release",
"url": "https://edge.forgecdn.net/files/6605/410/appliedenergistics2-forge-15.4.4.jar",
"id": "6605410",
"url": "https://edge.forgecdn.net/files/6629/570/appliedenergistics2-forge-15.4.5.jar",
"id": "6629570",
"parent_id": "223794",
"hashes": {
"sha1": "8660d742d2f8d8b7bdadae76e84144587811e9d2",
"md5": "74cc19c79dd5dbfa3e511597c7fc0592"
"sha1": "7ee55608d1625ec1fb22d60bd73aa31fe80cc896",
"md5": "92d85cc2573550525f9b9a647f9f8459"
},
"required_dependencies": [
"1173950"
],
"size": 8413070,
"date_published": "2025-06-01T14:46:39.523Z"
"size": 8413069,
"date_published": "2025-06-08T13:24:02.623Z"
}
]
},
@ -467,7 +467,7 @@
"files": [
{
"type": "curseforge",
"file_name": "afc-1.0.17-1.20.1.jar",
"file_name": "afc-1.0.18-1.20.1.jar",
"mc_versions": [
"1.20.1"
],
@ -476,18 +476,18 @@
"forge"
],
"release_type": "release",
"url": "https://edge.forgecdn.net/files/6549/467/afc-1.0.17-1.20.1.jar",
"id": "6549467",
"url": "https://edge.forgecdn.net/files/6635/351/afc-1.0.18-1.20.1.jar",
"id": "6635351",
"parent_id": "877545",
"hashes": {
"sha1": "abd0379e85da6bce0e47341a5f51909cc57e1744",
"md5": "701563a64374eb0825c54e063fdd407d"
"sha1": "c2cfffcce7ff7c1c978326a674389fcbdfb61fd4",
"md5": "cb8183be65ca88c20b111e9ae9083dd7"
},
"required_dependencies": [
"302973"
],
"size": 5105665,
"date_published": "2025-05-20T04:37:38.210Z"
"size": 5117468,
"date_published": "2025-06-10T03:09:58.637Z"
}
]
},
@ -722,6 +722,45 @@
}
]
},
{
"pakku_id": "oKnJXlzNyfYcMTcv",
"type": "MOD",
"slug": {
"curseforge": "baguettelib"
},
"name": {
"curseforge": "BaguetteLib"
},
"id": {
"curseforge": "1264423"
},
"files": [
{
"type": "curseforge",
"file_name": "baguettelib-1.20.1-Forge-1.0.0.jar",
"mc_versions": [
"1.20.2",
"1.20.3",
"1.20.1",
"1.20.4"
],
"loaders": [
"forge"
],
"release_type": "release",
"url": "https://edge.forgecdn.net/files/6523/425/baguettelib-1.20.1-Forge-1.0.0.jar",
"id": "6523425",
"parent_id": "1264423",
"hashes": {
"sha1": "bb17d8ed796efce38eb8fcc72ec477f3373e6c9f",
"md5": "f27a8d6a333579d93a9881100d559b56"
},
"required_dependencies": [],
"size": 26550,
"date_published": "2025-05-12T19:47:40.637Z"
}
]
},
{
"pakku_id": "eIMAkTQ4QJiCSZSg",
"type": "MOD",
@ -1822,7 +1861,7 @@
"files": [
{
"type": "curseforge",
"file_name": "corpse-forge-1.20.1-1.0.20.jar",
"file_name": "corpse-forge-1.20.1-1.0.21.jar",
"mc_versions": [
"1.20.1"
],
@ -1830,21 +1869,24 @@
"forge"
],
"release_type": "release",
"url": "https://edge.forgecdn.net/files/6121/243/corpse-forge-1.20.1-1.0.20.jar",
"id": "6121243",
"url": "https://edge.forgecdn.net/files/6624/394/corpse-forge-1.20.1-1.0.21.jar",
"id": "6624394",
"parent_id": "316582",
"hashes": {
"sha1": "fc5cd03dd52f24467c879b44296ddc70b85398f4",
"md5": "143d3e76139de3b9186849f494a41af6"
"sha1": "fb68fba706e0a41f1e46492e0d54fde4945b8a05",
"md5": "346a9e592558c1fde772b39c10be4cdf"
},
"required_dependencies": [],
"size": 244994,
"date_published": "2025-01-24T21:52:45.963Z"
"size": 245618,
"date_published": "2025-06-07T07:02:24.647Z"
}
]
},
{
"pakku_id": "v5lo2gHNUaKnn445",
"pakku_links": [
"oKnJXlzNyfYcMTcv"
],
"type": "MOD",
"slug": {
"curseforge": "corpse-x-curios-api-compat"
@ -1858,28 +1900,31 @@
"files": [
{
"type": "curseforge",
"file_name": "corpsecurioscompat-1.18.x-1.20.x-Forge-2.2.2.jar",
"file_name": "corpsecurioscompat-1.20.x-Forge-3.0.2.jar",
"mc_versions": [
"1.20.2",
"1.20.3",
"1.20.1",
"1.20",
"1.20.4"
],
"loaders": [
"forge"
],
"release_type": "release",
"url": "https://edge.forgecdn.net/files/6327/919/corpsecurioscompat-1.18.x-1.20.x-Forge-2.2.2.jar",
"id": "6327919",
"url": "https://edge.forgecdn.net/files/6616/671/corpsecurioscompat-1.20.x-Forge-3.0.2.jar",
"id": "6616671",
"parent_id": "1138130",
"hashes": {
"sha1": "1e00db91b74287eb63f389c6c8cb5a70df41f8e0",
"md5": "82d54c35a60a963f292dc3f3fd3b3af2"
"sha1": "946d6cc5055eac39900ff252cd2eb72caf95e4ac",
"md5": "f760be75a5b1c4c22c9327e72cd08a2c"
},
"required_dependencies": [],
"size": 9117,
"date_published": "2025-03-21T09:35:57.857Z"
"required_dependencies": [
"309927",
"1264423",
"316582"
],
"size": 12495,
"date_published": "2025-06-05T08:45:11.493Z"
}
]
},
@ -4514,7 +4559,7 @@
"files": [
{
"type": "curseforge",
"file_name": "guideme-20.1.7.jar",
"file_name": "guideme-20.1.8.jar",
"mc_versions": [
"1.20.1"
],
@ -4522,16 +4567,16 @@
"forge"
],
"release_type": "release",
"url": "https://edge.forgecdn.net/files/6489/464/guideme-20.1.7.jar",
"id": "6489464",
"url": "https://edge.forgecdn.net/files/6634/593/guideme-20.1.8.jar",
"id": "6634593",
"parent_id": "1173950",
"hashes": {
"sha1": "fc039093c479b3632b1ab60ea503e79b76b686f9",
"md5": "01ca90ca84ab2f886e4c5a2101934d00"
"sha1": "cc5e96b09949c5f1ad5d6aa5c45695f760715e95",
"md5": "38d8791dc9114d9cf6bcd5f2af1402e7"
},
"required_dependencies": [],
"size": 9401162,
"date_published": "2025-05-03T00:27:09.520Z"
"size": 9401167,
"date_published": "2025-06-09T21:54:55.087Z"
}
]
},
@ -7890,6 +7935,48 @@
}
]
},
{
"pakku_id": "B9nXYwWrLGp1WG43",
"pakku_links": [
"fMkiGcRPRv1DdRC1"
],
"type": "MOD",
"slug": {
"curseforge": "tfc-lunch-box"
},
"name": {
"curseforge": "TFC Lunch Box"
},
"id": {
"curseforge": "1283445"
},
"files": [
{
"type": "curseforge",
"file_name": "tfclunchbox-1.20.1-1.0.0.10.jar",
"mc_versions": [
"1.20.1"
],
"loaders": [
"neoforge",
"forge"
],
"release_type": "beta",
"url": "https://edge.forgecdn.net/files/6633/524/tfclunchbox-1.20.1-1.0.0.10.jar",
"id": "6633524",
"parent_id": "1283445",
"hashes": {
"sha1": "0b3dd4ed090848d136fc15586f5fb8212f1f19b0",
"md5": "c8835a37c829f86448b87601ac58cf9b"
},
"required_dependencies": [
"302973"
],
"size": 93079,
"date_published": "2025-06-09T15:46:48.850Z"
}
]
},
{
"pakku_id": "O9o4v50wMwsyPZeQ",
"pakku_links": [