This commit is contained in:
Gustavo 2025-08-09 09:56:56 +10:00
commit 49b02972b4
6 changed files with 96 additions and 17 deletions

View file

@ -2,14 +2,19 @@
## [Unreleased]
### Changes
- FTBQuests has been changed back to linear mode, hopefully to prevent future cases where the quests get stuck on something. Please send us feedback! (#1568) @TomPlop
- Added fanfare effects to the railgun launcher multiblock. (#1557) @Redeix
- Added some chalk stick knapping recipes (#1562) @3ncanis
- The Vitrified Ender Pearl recipe now only accepts normal ender pearls (#1567) @TomPlop
### Bug fixes
- Fixed a broken model for the aqueous accumulator. (#1557) @Redeix
- Fixed broken recipes for the aqueous accumulator. @Pyritie
- Fixed log spam on the moon @Pyritie
- Fixed recipe collision with maize flour and cured maize @Pyritie
- Fixed Large Solar Array generating twice as much energy as expected with the "active" configuration @TomPlop
- Fixed Electric Greenhouse log recipes so they're back to only needing half an amp of LV @TomPlop
- Fixed Large Solar Array generating twice as much energy as expected with the "active" configuration (#1563) @TomPlop
- Fixed Electric Greenhouse log recipes so they're back to only needing half an amp of LV (#1564) @TomPlop
- Fixed missing quern recipes for softwood/hardwood pulp (#1561) @Pyritie
- Fixed duplicate red alloy mixing recipe (#1565) @Pyritie
## [0.10.7] - 07-08-2025
- Fixed an issue with mod dependencies

View file

@ -109,6 +109,10 @@ const registerAdAstraItemTags = (event) => {
event.add('tfc:compost_greens', 'ad_astra:aeronos_cap')
event.add('tfc:compost_greens', 'ad_astra:strophar_cap')
// these are log tags
event.remove('ad_astra:aeronos_caps', 'ad_astra:aeronos_cap')
event.remove('ad_astra:strophar_caps', 'ad_astra:strophar_cap')
global.AD_ASTRA_WOOD.forEach(wood => {

View file

@ -6,7 +6,68 @@
*/
const registerChalkRecipes = (evt) => {
evt.remove({ output: "#chalk:chalks" })
evt.replaceInput({ id: "chalk:chalk_box" }, "minecraft:slime_ball", "tfc:glue")
evt.shaped('chalk:chalk_box', [
'ABA',
' A '
], {
A: 'paper',
B: ['tfc:glue']
}).id('chalk:chalk_box')
// only 1/4 durability remaining
evt.recipes.tfc.knapping(
Item.of('chalk:white_chalk', '{Damage:48}'),
'tfc:rock',
[
' X ',
' X ',
' X ',
' X ',
' X '
]
).ingredient('tfc:rock/loose/chalk')
.id('tfg:knapping/chalk')
evt.recipes.tfc.knapping(
Item.of('chalk:light_gray_chalk', '{Damage:48}'),
'tfc:rock',
[
' X ',
' X ',
' X ',
' X ',
' X '
]
).ingredient('tfc:rock/loose/limestone')
.id('tfg:knapping/limestone_chalk')
evt.recipes.tfc.knapping(
Item.of('chalk:brown_chalk', '{Damage:48}'),
'tfc:rock',
[
' X ',
' X ',
' X ',
' X ',
' X '
]
).ingredient('tfg:loose/dripstone')
.id('tfg:knapping/travertine_chalk')
evt.recipes.tfc.knapping(
Item.of('chalk:orange_chalk', '{Damage:48}'),
'tfc:rock',
[
' X ',
' X ',
' X ',
' X ',
' X '
]
).ingredient('tfc:rock/loose/claystone')
.id('tfg:knapping/claystone_chalk')
//Mix dusts for chalk sticks with clay to make an unfired chalk stick. Greggy or Create lets you use tiny dusts if needed
evt.recipes.firmalife.mixing_bowl()
@ -14,7 +75,14 @@ const registerChalkRecipes = (evt) => {
.outputItem("tfg:unfired_chalk")
.id(`chalk:mixing_bowl/unfired_chalk_stick_from_dust`)
global.MINECRAFT_DYE_NAMES.forEach(dyeName => {
evt.recipes.tfc.barrel_sealed(1000)
.inputItem('chalk:white_chalk')
.inputFluid(Fluid.of(`tfc:${dyeName}_dye`, 25))
.outputItem(`chalk:${dyeName}_chalk`)
.id(`chalk:barrel/dye/${dyeName}_chalk`)
//gt mixer works as is
evt.recipes.gtceu.chemical_bath(`chalk:gt_mixer/${dyeName}_chalk_from_dust`)
.itemInputs(["minecraft:clay_ball", `#chalk:dusts_for_chalks`])
@ -35,7 +103,7 @@ const registerChalkRecipes = (evt) => {
//Unfired chalk sticks need to be placed in a barrel full of dye to colorize. Then heated until cured.
evt.recipes.tfc.barrel_sealed(20 * 50)
evt.recipes.tfc.barrel_instant()
.inputs(`tfg:unfired_chalk`, TFC.fluidStackIngredient(`tfc:${dyeName}_dye`, 36))
.outputItem(`tfg:wet_${dyeName}_chalk`)
.id(`chalk:barrel/dye/wet_${dyeName}_chalk`);

View file

@ -8,4 +8,5 @@ const registerChalkItemTags = (evt) => {
evt.add(`chalk:dusts_for_chalks`, `tfg:chalk_dust`)
evt.add(`chalk:dusts_for_chalks`, `tfg:limestone_dust`)
evt.add(`chalk:dusts_for_chalks`, `tfg:dripstone_dust`)
evt.add(`chalk:dusts_for_chalks`, `tfg:claystone_dust`)
}

View file

@ -62,8 +62,7 @@ function registerGTCEuTFCMetalsRecipes(event) {
// red alloy, because crucible always makes 4+1=5
event.remove({ id: 'gtceu:alloy_blast_smelter/red_alloy' })
event.recipes.gtceu.alloy_blast_smelter('tfg:red_alloy_mixer')
event.recipes.gtceu.alloy_blast_smelter('red_alloy')
.itemInputs('1x gtceu:copper_dust', '4x minecraft:redstone')
.outputFluids(Fluid.of('gtceu:red_alloy', 720))
.circuit(5)
@ -71,43 +70,39 @@ function registerGTCEuTFCMetalsRecipes(event) {
.EUt(GTValues.VA[GTValues.LV])
event.remove({ id: 'gtceu:mixer/red_alloy' })
event.recipes.gtceu.mixer('tfg:red_alloy_mixer')
// incorrect on purpose to prevent a greate duplicate recipe (the id becomes mixer/mixer/red_alloy)
event.recipes.gtceu.mixer('gtceu:mixer/red_alloy')
.itemInputs('1x gtceu:copper_dust', '4x minecraft:redstone')
.itemOutputs('5x gtceu:red_alloy_dust')
.circuit(2)
.duration(100)
.EUt(7)
event.remove({ id: 'gtceu:centrifuge/red_alloy_separation' })
event.recipes.gtceu.centrifuge('tfg:red_alloy_separation')
event.recipes.gtceu.centrifuge('red_alloy_separation')
.itemInputs('5x gtceu:red_alloy_dust')
.itemOutputs('1x gtceu:copper_dust', '4x minecraft:redstone')
.duration(900)
.EUt(30)
event.remove({ id: 'gtceu:alloy_smelter/copper_dust_and_redstone_dust_into_red_alloy' })
event.recipes.gtceu.alloy_smelter('tfg:copper_dust_and_redstone_dust_into_red_alloy')
event.recipes.gtceu.alloy_smelter('copper_dust_and_redstone_dust_into_red_alloy')
.itemInputs('1x gtceu:copper_dust', '4x minecraft:redstone')
.itemOutputs('5x gtceu:red_alloy_ingot')
.duration(50)
.EUt(16)
event.remove({ id: 'gtceu:alloy_smelter/annealed_copper_dust_and_redstone_dust_into_red_alloy' })
event.recipes.gtceu.alloy_smelter('tfg:annealed_copper_dust_and_redstone_dust_into_red_alloy')
event.recipes.gtceu.alloy_smelter('annealed_copper_dust_and_redstone_dust_into_red_alloy')
.itemInputs('1x gtceu:annealed_copper_dust', '4x minecraft:redstone')
.itemOutputs('5x gtceu:red_alloy_ingot')
.duration(50)
.EUt(16)
event.remove({ id: 'gtceu:alloy_smelter/copper_ingot_and_redstone_dust_into_red_alloy' })
event.recipes.gtceu.alloy_smelter('tfg:copper_ingot_and_redstone_dust_into_red_alloy')
event.recipes.gtceu.alloy_smelter('copper_ingot_and_redstone_dust_into_red_alloy')
.itemInputs('1x minecraft:copper_ingot', '4x minecraft:redstone')
.itemOutputs('5x gtceu:red_alloy_ingot')
.duration(50)
.EUt(16)
event.remove({ id: 'gtceu:alloy_smelter/annealed_copper_ingot_and_redstone_dust_into_red_alloy' })
event.recipes.gtceu.alloy_smelter('tfg:annealed_copper_ingot_and_redstone_dust_into_red_alloy')
event.recipes.gtceu.alloy_smelter('annealed_copper_ingot_and_redstone_dust_into_red_alloy')
.itemInputs('1x gtceu:annealed_copper_ingot', '4x minecraft:redstone')
.itemOutputs('5x gtceu:red_alloy_ingot')
.duration(50)

View file

@ -60,6 +60,9 @@ function registerTFGPapermakingRecipes(event) {
.duration(70)
.EUt(2)
event.recipes.tfc.quern('4x gtceu:wood_dust', '#tfg:softwood')
.id('tfg:quern/softwood_dust')
//Create identical macerator recipe for hardwood
event.recipes.gtceu.macerator('macerate_hardwood')
.itemInputs('#tfg:hardwood')
@ -68,6 +71,9 @@ function registerTFGPapermakingRecipes(event) {
.duration(70)
.EUt(2)
event.recipes.tfc.quern('4x gtceu:hardwood_dust', '#tfg:hardwood')
.id('tfg:quern/hardwood_dust')
//Replace any recipe that outputs wood dust to use hardwood dust if it's ID string contains the name of one of the hardwood types.
//This absolutely fuckin sucks but it works
event.forEachRecipe({ output: 'gtceu:wood_dust' }, r => {