Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
Redeix 2025-04-19 21:57:30 -05:00
commit bdff8f5da5
64 changed files with 3671 additions and 2172 deletions

13
.github/README.md vendored
View file

@ -30,9 +30,12 @@
---
## Survival Modpack As It Should Be
## Survival Modpack as it Should've Been
**TerraFirmaGreg-Modern** is a Forge modpack that redefines Minecraft survival by introducing realistic challenges alongside advanced technological mechanics. The heart of the modpack is formed by two standout mods:
**TerraFirmaGreg-Modern** is a Forge modpack that redefines Minecraft survival by introducing realistic challenges alongside advanced technological mechanics.
In this modpack, you will be put to the task of taking control of untouched wilderness and turning it to an industrial wonderland.
Start from humble beginning picking up rocks, and end while traversing interstellar space (coming soon)!
The heart of the modpack is formed by two standout mods:
- **[TerraFirmaCraft]** - Renowned for its immersive survival mechanics and a unique, challenging approach.
- **[GregTech Modern]** - A pinnacle of technical mods that brings deep, complex machinery and automation into the mix.
@ -41,9 +44,10 @@ In addition to these core mods, TerraFirmaGreg-Modern includes several other com
- **[Applied Energistics]** Cutting-edge storage and automation systems.
- **[Create]** Innovative machinery and kinetic contraptions.
- **[Gregicality Rocketry]** Enhances GregTech with advanced rockets and space exploration features.
Many of these mods come with extra add-ons that further diversify your experience, and the modpack also integrates quests to help you navigate its complex world.
Several hand-picked TFC and Create addons to provide even more depth.
Many other small mods tie everything together, and the modpack also integrates quests to help you navigate its complex world.
---
@ -60,4 +64,3 @@ Interested in contributing? For detailed setup instructions, coding standards, a
[GregTech Modern]: https://www.curseforge.com/minecraft/mc-mods/gregtechceu-modern
[Applied Energistics]: https://www.curseforge.com/minecraft/mc-mods/ae2
[Create]: https://www.curseforge.com/minecraft/mc-mods/create
[Gregicality Rocketry]: https://www.curseforge.com/minecraft/mc-mods/gcyr

View file

@ -1,65 +1,47 @@
{
"disableVanillaPortals": {
"desc:": "Disables vanilla portals, default:false",
"disableVanillaPortals": true
},
"teleportCooldown": {
"desc:": "Sets a delay before you can teleport again, default:15 seconds",
"teleportCooldown": 15
},
"instantTeleport": {
"desc:": "Instantly teleports instead of notifying the user over time,(Note this causes some lag, due to loading chunks directly) default:false",
"instantTeleport": false
},
"teleportedRidden": {
"desc:": "Teleport ridden entities too, default:true",
"teleportedRidden": true
},
"teleportLeashed": {
"desc:": "Teleport leashed entities too, default:true",
"teleportLeashed": true
},
"debuglogging": {
"desc:": "Enable debug logging, default:false",
"debuglogging": false
},
"dimensionconnections": [
{
"from": "minecraft:overworld",
"to": "minecraft:the_nether",
"teleporttype": {
"teleporttype": "AIR",
"teleport_to_y": 125
},
"belowy": -58,
"slowfallticks": 1200
},
{
"from": "minecraft:the_nether",
"to": "minecraft:the_nether",
"teleporttype": {
"teleporttype": "CAVE",
"teleport_to_y": 4
},
"belowy": 0
},
{
"from": "minecraft:the_nether",
"to": "minecraft:overworld",
"teleporttype": {
"teleporttype": "CAVE",
"teleport_to_y": -58
},
"abovey": 118
},
{
"from": "minecraft:overworld",
"to": "minecraft:overworld",
"teleporttype": {
"teleporttype": "AIR",
"teleport_to_y": 360
},
"abovey": 364
}
]
"disableVanillaPortals": {
"desc:": "Disables vanilla portals, default:false",
"disableVanillaPortals": true
},
"teleportCooldown": {
"desc:": "Sets a delay before you can teleport again, default:15 seconds",
"teleportCooldown": 15
},
"instantTeleport": {
"desc:": "Instantly teleports instead of notifying the user over time,(Note this causes some lag, due to loading chunks directly) default:false",
"instantTeleport": false
},
"teleportedRidden": {
"desc:": "Teleport ridden entities too, default:true",
"teleportedRidden": true
},
"teleportLeashed": {
"desc:": "Teleport leashed entities too, default:true",
"teleportLeashed": true
},
"debuglogging": {
"desc:": "Enable debug logging, default:false",
"debuglogging": false
},
"dimensionconnections": [
{
"from": "minecraft:overworld",
"to": "minecraft:the_nether",
"teleporttype": {
"teleporttype": "AIR",
"teleport_to_y": 125
},
"belowy": -58,
"slowfallticks": 1200
},
{
"from": "minecraft:the_nether",
"to": "minecraft:overworld",
"teleporttype": {
"teleporttype": "CAVE",
"teleport_to_y": -58
},
"abovey": 118
}
]
}

View file

@ -21,8 +21,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_fluid_regulator.title}"
x: 3.0d
y: 0.5d
x: 5.5d
y: -2.0d
}
{
dependencies: ["38993B4697B0E16C"]
@ -41,8 +41,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_robot_arm.title}"
x: 3.0d
y: -2.0d
x: 5.5d
y: -4.0d
}
{
dependencies: ["7EED0084BA59FED1"]
@ -57,8 +57,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_conveyor.title}"
x: 1.5d
y: -0.75d
x: 4.5d
y: -3.0d
}
{
dependencies: ["7EED0084BA59FED1"]
@ -73,8 +73,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_pump.title}"
x: 1.5d
y: 0.5d
x: 4.5d
y: -2.0d
}
{
dependencies: ["7EED0084BA59FED1"]
@ -89,14 +89,11 @@
type: "item"
}]
title: "{quests.low_voltage.lv_piston.title}"
x: 1.5d
y: -2.0d
x: 4.5d
y: -4.0d
}
{
dependencies: [
"7EED0084BA59FED1"
"648BCF486E16CCB2"
]
dependencies: ["22510C5F2386B453"]
description: [
"{quests.low_voltage.lv_steam_turbine.desc.1}"
"{@pagebreak}"
@ -112,15 +109,16 @@
type: "item"
}]
title: "{quests.low_voltage.lv_steam_turbine.title}"
x: 0.0d
y: 1.5d
x: 5.5d
y: 4.5d
}
{
dependencies: ["6431381FBE07D6EF"]
description: ["{quests.low_voltage.lv_amp_explanation.desc}"]
id: "7B0FF43022F6C2EC"
optional: true
shape: "rsquare"
size: 0.66d
size: 1.0d
subtitle: "{quests.low_voltage.lv_amp_explanation.subtitle}"
tasks: [{
count: 4L
@ -129,16 +127,16 @@
type: "item"
}]
title: "{quests.low_voltage.lv_amp_explanation.title}"
x: 4.5d
y: 3.5d
x: 5.5d
y: 2.5d
}
{
dependencies: ["45B71324028F6E68"]
description: ["{quests.low_voltage.aluminium_ingot.desc}"]
hide_dependency_lines: false
id: "7567E885B7166603"
shape: "gear"
size: 4.0d
shape: "octagon"
size: 1.5d
subtitle: "{quests.low_voltage.aluminium_ingot.subtitle}"
tasks: [{
id: "161B5813936E5E42"
@ -147,13 +145,19 @@
}]
title: "{quests.low_voltage.aluminium_ingot.title}"
x: -9.0d
y: 11.5d
y: 9.75d
}
{
dependencies: [
"49896161B31DB7B4"
"5B891BA4897FD73C"
"1912758422EEB006"
]
dependency_requirement: "one_completed"
description: ["{quests.low_voltage.lv_battery_preparation.desc}"]
hide_dependency_lines: true
icon: "gtceu:battery_alloy_ingot"
id: "6D9D54FAB21EC086"
shape: "rsquare"
size: 1.0d
subtitle: "{quests.low_voltage.lv_battery_preparation.subtitle}"
tasks: [
@ -170,8 +174,8 @@
}
]
title: "{quests.low_voltage.lv_battery_preparation.title}"
x: 7.5d
y: 2.5d
x: 5.5d
y: -0.5d
}
{
description: [
@ -198,8 +202,8 @@
type: "item"
}]
title: "GregTech Storage"
x: -4.5d
y: -4.0d
x: 6.5d
y: -0.5d
}
{
dependencies: [
@ -225,8 +229,8 @@
type: "checkmark"
}]
title: "{quests.low_voltage.cover_behaviour.title}"
x: 3.0d
y: -0.75d
x: 5.5d
y: -3.0d
}
{
dependencies: [
@ -251,64 +255,88 @@
type: "checkmark"
}]
title: "{quests.low_voltage.machine_auto_output_behaviour.title}"
x: -4.5d
y: 0.5d
x: -4.0d
y: 1.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: [
"{quests.low_voltage.lv_wiremill.desc.1}"
"{@pagebreak}"
"{quests.low_voltage.lv_wiremill.desc.2}"
]
id: "32EA7E81885C8E87"
optional: true
size: 1.0d
subtitle: "{quests.low_voltage.lv_wiremill.subtitle}"
tasks: [{
id: "2B5BF6F3ED693B9E"
item: "gtceu:lv_wiremill"
id: "24287B2E01AF3841"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
display: {
Name: "{\"text\":\"Wiremill LV\"}"
}
"ftbfiltersystem:filter": "or(item(gtceu:lv_wiremill)item(vintageimprovements:spring_coiling_machine))"
}
}
title: "{quests.low_voltage.lv_wiremill.task}"
type: "item"
}]
title: "{quests.low_voltage.lv_wiremill.title}"
x: -3.5d
y: -0.5d
x: -3.0d
y: 0.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: ["{quests.low_voltage.lv_bender.desc}"]
id: "10ECB471A77F5136"
optional: true
size: 1.0d
subtitle: "{quests.low_voltage.lv_bender.subtitle}"
tasks: [{
id: "3AC3A8728EE60E4C"
item: "gtceu:lv_bender"
id: "362A01D38AC915B7"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
display: {
Name: "{\"text\":\"Bender LV\"}"
}
"ftbfiltersystem:filter": "or(item(gtceu:lv_bender)item(createaddition:rolling_mill))"
}
}
title: "{quests.low_voltage.lv_bender.task}"
type: "item"
}]
title: "{quests.low_voltage.lv_bender.title}"
x: -3.5d
y: 1.5d
x: -3.0d
y: 2.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: [
"{quests.low_voltage.lv_lathe.desc.1}"
"{@pagebreak}"
"{quests.low_voltage.lv_lathe.desc.2}"
]
id: "07E7678095258EDB"
optional: true
size: 1.0d
subtitle: "{quests.low_voltage.lv_lathe.subtitle}"
tasks: [{
id: "6781D0241D0564A5"
item: "gtceu:lv_lathe"
id: "66E007873E6F2471"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
"ftbfiltersystem:filter": "or(item(vintageimprovements:lathe)item(gtceu:lv_lathe))"
}
}
title: "{quests.low_voltage.lv_lathe.task}"
type: "item"
}]
title: "{quests.low_voltage.lv_lathe.title}"
x: -3.5d
y: 0.5d
x: -3.0d
y: 1.5d
}
{
dependencies: ["22510C5F2386B453"]
@ -322,8 +350,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_polariser.title}"
x: 2.0d
y: -4.0d
x: 3.0d
y: 1.5d
}
{
dependencies: ["6E186F9C57155BFA"]
@ -335,6 +363,7 @@
"{quests.low_voltage.lbb.desc.3}"
]
id: "33263404ED38C6D2"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.lbb.subtitle}"
@ -344,8 +373,8 @@
type: "item"
}]
title: "{quests.low_voltage.lbb.title}"
x: -1.0d
y: 1.5d
x: 7.0d
y: 4.5d
}
{
dependencies: ["1E9BE8D3F8A602DC"]
@ -375,6 +404,7 @@
"{quests.low_voltage.lv_chemical_bath.desc.2}"
]
id: "330BDB559A7BAB35"
optional: true
size: 1.0d
subtitle: "{quests.low_voltage.lv_chemical_bath.subtitle}"
tasks: [{
@ -383,8 +413,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_chemical_bath.title}"
x: 7.5d
y: 4.5d
x: 5.5d
y: 8.0d
}
{
dependencies: ["64E1E87B8AF72968"]
@ -410,11 +440,11 @@
type: "checkmark"
}]
title: "{quests.low_voltage.programmed_circuits.title}"
x: -5.5d
y: 0.5d
x: -5.0d
y: 1.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: ["{quests.low_voltage.lv_canner.desc}"]
id: "37307A46E70011D3"
size: 1.0d
@ -425,8 +455,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_canner.title}"
x: 4.5d
y: 2.5d
x: 3.0d
y: 0.5d
}
{
dependencies: [
@ -454,8 +484,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_battery.title}"
x: 6.0d
y: 2.5d
x: 5.5d
y: 0.5d
}
{
dependencies: ["3E6DC423FE4A99F7"]
@ -484,8 +514,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_battery_buffer_4x.title}"
x: 6.0d
y: 3.5d
x: 5.5d
y: 1.5d
}
{
dependencies: ["1646BF9194100E57"]
@ -508,7 +538,7 @@
y: 6.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: ["{quests.low_voltage.other_machines.desc}"]
icon: "gtceu:crushed_sulfur_ore"
id: "701BCADAE5CF6CA5"
@ -521,8 +551,8 @@
type: "checkmark"
}]
title: "{quests.low_voltage.other_machines.title}"
x: 6.0d
y: 4.5d
x: 5.5d
y: 7.0d
}
{
description: ["{quests.low_voltage.lv_age_progression.desc}"]
@ -538,7 +568,7 @@
}]
title: "{quests.low_voltage.lv_age_progression.title}"
x: 0.0d
y: 4.5d
y: -3.0d
}
{
dependencies: [
@ -572,8 +602,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_ore_prospector.title}"
x: 6.0d
y: 1.0d
x: 6.5d
y: 0.5d
}
{
dependencies: ["5B2696206205CB2E"]
@ -599,7 +629,7 @@
y: 6.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: ["{quests.low_voltage.lv_gas_collector.desc}"]
id: "15928F50AE80A5CF"
shape: "rsquare"
@ -615,7 +645,7 @@
y: 6.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: [
"{quests.low_voltage.lv_chemical_reactor.desc.1}"
"{@pagebreak}"
@ -659,8 +689,8 @@
type: "item"
}]
title: "{quests.low_voltage.universal_cell.title}"
x: -4.5d
y: 1.5d
x: -4.0d
y: 2.5d
}
{
dependencies: ["581CDF545E1EA1FD"]
@ -688,10 +718,7 @@
y: 4.5d
}
{
dependencies: [
"5B891BA4897FD73C"
"49896161B31DB7B4"
]
dependencies: ["5B891BA4897FD73C"]
dependency_requirement: "one_completed"
description: ["{quests.low_voltage.soldering_alloy.desc}"]
icon: "gtceu:soldering_alloy_ingot"
@ -715,10 +742,11 @@
"{@pagebreak}"
"{quests.low_voltage.lv_electroliser.desc.2}"
"{@pagebreak}"
"{quests.low_voltage.lv_electroliser.desc.3"
"{quests.low_voltage.lv_electroliser.desc.3}"
]
hide_dependent_lines: true
id: "32B08E6F414A00C0"
optional: true
size: 1.0d
subtitle: "{quests.low_voltage.lv_electroliser.subtitle}"
tasks: [{
@ -727,33 +755,42 @@
type: "item"
}]
title: "{quests.low_voltage.lv_electroliser.title}"
x: 6.0d
y: 6.0d
x: 6.5d
y: 7.0d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: ["{quests.low_voltage.lv_cutter.desc}"]
id: "3A8D7FC6F316C38C"
optional: true
size: 1.0d
subtitle: "{quests.low_voltage.lv_cutter.subtitle}"
tasks: [{
id: "662DB818821C4EAE"
item: "gtceu:lv_cutter"
id: "5C48A838AB442329"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
display: {
Name: "{\"text\":\"LV Cutter\"}"
}
"ftbfiltersystem:filter": "or(item(gtceu:lv_cutter)item(greate:steel_mechanical_saw))"
}
}
title: "{quests.low_voltage.lv_cutter.task}"
type: "item"
}]
title: "{quests.low_voltage.lv_cutter.title}"
x: -3.5d
y: -1.5d
x: -3.0d
y: -0.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: [
"{quests.low_voltage.lv_centrifuge.desc.1}"
"{@pagebreak}"
"{quests.low_voltage.lv_centrifuge.desc.2}"
"{@pagebreak}"
"{quests.low_voltage.lv_centrifuge.desc.3"
"{quests.low_voltage.lv_centrifuge.desc.3}"
]
id: "5263F866638D875C"
shape: "octagon"
@ -772,6 +809,7 @@
dependencies: ["37307A46E70011D3"]
description: ["{quests.low_voltage.lv_sprayer.desc}"]
id: "5AD9884E7BFB2510"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.lv_sprayer.subtitle}"
@ -782,11 +820,11 @@
type: "item"
}]
title: "{quests.low_voltage.lv_sprayer.title}"
x: 4.5d
y: 1.0d
x: 4.25d
y: -0.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: [
"{quests.low_voltage.lv_assembler.desc.1}"
"{@pagebreak}"
@ -806,7 +844,7 @@
y: 7.0d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: [
"{quests.low_voltage.lv_extractor.desc.1}"
"{@pagebreak}"
@ -866,17 +904,14 @@
y: 11.0d
}
{
dependencies: [
"15928F50AE80A5CF"
"32B08E6F414A00C0"
]
dependencies: ["15928F50AE80A5CF"]
dependency_requirement: "one_completed"
description: [
"{quests.low_voltage.lv_oxygen.desc.1}"
"{@pagebreak}"
"{quests.low_voltage.lv_oxygen.desc.2}"
"{@pagebreak}"
"{quests.low_voltage.lv_oxygen.desc.3"
"{quests.low_voltage.lv_oxygen.desc.3}"
]
icon: "gtceu:oxygen_bucket"
id: "1A77CA35F054F988"
@ -921,10 +956,7 @@
y: 9.0d
}
{
dependencies: [
"5B891BA4897FD73C"
"49896161B31DB7B4"
]
dependencies: ["5B891BA4897FD73C"]
dependency_requirement: "one_completed"
description: ["{quests.low_voltage.gallium_arsenide.desc}"]
id: "4073577B7EF9B593"
@ -1010,7 +1042,7 @@
}]
title: "{quests.low_voltage.aluminium_dust.title}"
x: -9.0d
y: 8.625d
y: 8.0d
}
{
dependencies: ["1E9BE8D3F8A602DC"]
@ -1088,7 +1120,6 @@
icon: "gtceu:lv_rock_crusher"
id: "1F2359106FC95603"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.lv_rock_crusher.subtitle}"
tasks: [{
@ -1107,8 +1138,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_rock_crusher.title}"
x: -2.0d
y: -6.0d
x: 3.0d
y: 3.5d
}
{
dependencies: ["22510C5F2386B453"]
@ -1116,7 +1147,6 @@
icon: "gtceu:lv_charger_4x"
id: "2DB259568F347C0E"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.lv_turbo_charge.subtitle}"
tasks: [{
@ -1135,8 +1165,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_turbo_charge.title}"
x: 2.0d
y: -6.0d
x: 3.0d
y: 2.5d
}
{
dependencies: ["22510C5F2386B453"]
@ -1144,7 +1174,6 @@
icon: "gtceu:lv_fisher"
id: "3B26CA44EA955B07"
optional: true
shape: "heart"
size: 1.0d
subtitle: "{quests.low_voltage.lv_fisher.subtitle}"
tasks: [{
@ -1163,8 +1192,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_fisher.title}"
x: 0.0d
y: -6.0d
x: 3.0d
y: -0.5d
}
{
dependencies: ["7CCC1BDDE0C67F16"]
@ -1180,11 +1209,11 @@
type: "item"
}]
title: "Tape for Crate"
x: -3.0d
y: -4.0d
x: 7.5d
y: -0.5d
}
{
dependencies: ["648BCF486E16CCB2"]
dependencies: ["22510C5F2386B453"]
description: ["{quests.low_voltage.lv_mixer.desc}"]
id: "5B891BA4897FD73C"
optional: true
@ -1192,23 +1221,34 @@
size: 2.0d
subtitle: "{quests.low_voltage.lv_mixer.subtitle}"
tasks: [{
id: "27715DF608CBAE08"
item: "gtceu:lv_mixer"
id: "337A6B670842F80A"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
display: {
Name: "{\"text\":\"LV Mixer\"}"
}
"ftbfiltersystem:filter": "or(item(greate:steel_mechanical_mixer)item(gtceu:lv_mixer))"
}
}
title: "{quests.low_voltage.lv_mixer.task}"
type: "item"
}]
title: "{quests.low_voltage.lv_mixer.title}"
x: 4.0d
x: 2.0d
y: 7.0d
}
{
dependencies: ["12565AB92A2BF976"]
description: [
"{quests.low_voltage.lv_machine_hull.desc.1}"
"{@pagebreak}"
"{quests.low_voltage.lv_machine_hull.desc.2}"
]
id: "22510C5F2386B453"
shape: "octagon"
size: 1.5d
shape: "gear"
size: 2.0d
subtitle: "{quests.low_voltage.lv_machine_hull.subtitle}"
tasks: [{
id: "499CACFF0350B3CA"
@ -1217,7 +1257,7 @@
}]
title: "{quests.low_voltage.lv_machine_hull.title}"
x: 0.0d
y: -4.0d
y: 4.5d
}
{
dependencies: ["15928F50AE80A5CF"]
@ -1241,10 +1281,7 @@
y: 9.0d
}
{
dependencies: [
"22510C5F2386B453"
"6903C72A254A7B08"
]
dependencies: ["648BCF486E16CCB2"]
description: ["{quests.low_voltage.lv_motor.desc}"]
icon: "gtceu:lv_electric_motor"
id: "7EED0084BA59FED1"
@ -1258,8 +1295,8 @@
type: "item"
}]
title: "{quests.low_voltage.lv_motor.title}"
x: 0.0d
y: -0.75d
x: 3.0d
y: -3.0d
}
{
dependencies: ["581CDF545E1EA1FD"]
@ -1287,6 +1324,7 @@
{
dependencies: ["3E6DC423FE4A99F7"]
id: "4B4F052F00435AFE"
optional: true
shape: "heart"
tasks: [{
id: "00E6EDB1E4C1482F"
@ -1297,7 +1335,81 @@
}
type: "item"
}]
x: 7.0d
x: 6.5d
y: 1.5d
}
{
dependencies: ["22510C5F2386B453"]
description: [
"{quests.steam_age.alternator.desc.1}"
"{@pagebreak}"
"{quests.steam_age.alternator.desc.2}"
""
"{image:tfg:textures/quests/alternator_multiblock.png width:100 height:100 align:center}"
]
id: "2DC24661CAD557B0"
optional: true
subtitle: "{quests.steam_age.alternator.subtitle}"
tasks: [
{
id: "5367AD306EAB07E2"
item: "createaddition:alternator"
type: "item"
}
{
id: "040F5FC6058411EE"
item: {
Count: 1
id: "ftbfiltersystem:smart_filter"
tag: {
display: {
Name: "{\"text\":\"LV Converter\"}"
}
"ftbfiltersystem:filter": "or(item(gtceu:lv_1a_energy_converter)item(gtceu:lv_4a_energy_converter)item(gtceu:lv_8a_energy_converter)item(gtceu:lv_16a_energy_converter))"
}
}
title: ""
type: "item"
}
]
title: "{quests.steam_age.alternator.title}"
x: 5.5d
y: 5.5d
}
{
dependencies: ["7567E885B7166603"]
description: [
"{quests.low_voltage.mv_hull.desc1}"
"{@pagebreak}"
"{quests.low_voltage.mv_hull.desc2}"
]
id: "71A3D034BBA13CF0"
shape: "gear"
size: 4.0d
subtitle: "{quests.low_voltage.mv_hull.subtitle}"
tasks: [{
id: "371A182195BD9277"
item: "gtceu:mv_machine_hull"
type: "item"
}]
title: "{quests.low_voltage.mv_hull.title}"
x: -9.0d
y: 14.0d
}
{
dependencies: ["648BCF486E16CCB2"]
description: ["{quests.low_voltage.lv_machine_casing.desc}"]
id: "12565AB92A2BF976"
shape: "octagon"
size: 2.0d
subtitle: "{quests.low_voltage.lv_machine_casing.subtitle}"
tasks: [{
id: "7459A24E5EBE148D"
item: "gtceu:lv_machine_casing"
type: "item"
}]
title: "{quests.low_voltage.lv_machine_casing.title}"
x: 0.0d
y: 1.0d
}
]

View file

@ -26,20 +26,6 @@
x: -13.5d
y: 7.5d
}
{
id: "00B33DFF6076A2C0"
linked_quest: "7EED0084BA59FED1"
x: -13.5d
y: 5.5d
}
{
id: "044ADF2296BC1A8F"
linked_quest: "6E186F9C57155BFA"
shape: "square"
size: 1.5d
x: -13.5d
y: 3.5d
}
{
id: "1F1E7097C015BE33"
linked_quest: "48A8E3210B2BAE1C"
@ -1020,54 +1006,6 @@
x: -22.5d
y: 12.0d
}
{
dependencies: [
"183D47F04CAEBFA7"
"3D8174C64DDC268B"
]
description: [
"{quests.steam_age.alternator.desc.1}"
"{@pagebreak}"
"{quests.steam_age.alternator.desc.2}"
"{image:tfg:textures/quests/alternator_multiblock.png width:100 height:100 align:center}"
]
id: "0E57FC7FBFF1CFEB"
optional: true
shape: "square"
size: 1.5d
subtitle: "{quests.steam_age.alternator.subtitle}"
tasks: [
{
id: "2A48D5B33BB7C9FE"
item: "createaddition:alternator"
type: "item"
}
{
id: "0115F13A8C4E6872"
item: "gtceu:lv_4a_energy_converter"
optional_task: true
type: "item"
}
]
title: "{quests.steam_age.alternator.title}"
x: -10.0d
y: 3.5d
}
{
dependencies: ["3D8174C64DDC268B"]
description: ["{quests.steam_age.what_next.desc}"]
icon: "gtceu:lv_machine_hull"
id: "0DAE3D612E70F462"
shape: "diamond"
subtitle: "{quests.steam_age.what_next.subtitle}"
tasks: [{
id: "759B03FB27B79731"
type: "checkmark"
}]
title: "{quests.steam_age.what_next.title}"
x: -7.0d
y: 6.0d
}
{
dependencies: ["51CBF7378FFAD514"]
description: [

View file

@ -302,8 +302,8 @@
hand_crank = 2.0
steam_engine = 32.0
creative_motor = 16384.0
large_water_wheel = 16.0
water_wheel = 4.0
large_water_wheel = 32.0
water_wheel = 8.0
windmill_bearing = 32.0
#.

View file

@ -6,13 +6,13 @@
creatureRPMRange = 16
#How much stress small creatures can produce for the horse crank.
#Range: > 1
smallCreatureStressRange = 4
smallCreatureStressRange = 8
#How much stress medium creatures can produce for the horse crank.
#Range: > 1
mediumCreatureStressRange = 6
mediumCreatureStressRange = 12
#How much stress large creatures can produce for the horse crank.
#Range: > 1
largeCreatureStressRange = 8
largeCreatureStressRange = 16
#Path Category
[paths]

View file

@ -78,7 +78,7 @@ fanSpeedMultiplier = 0.75
andesite_alloy_gearbox = 0.0
andesite_alloy_mechanical_press = 1.0
andesite_alloy_mechanical_mixer = 0.5
andesite_alloy_millstone = 0.25
andesite_alloy_millstone = 0.5
andesite_alloy_mechanical_saw = 0.5
andesite_alloy_mechanical_pump = 0.5
@ -97,7 +97,7 @@ fanSpeedMultiplier = 0.75
steel_gearbox = 0.0
steel_mechanical_press = 2.0
steel_mechanical_mixer = 1.0
steel_millstone = 0.5
steel_millstone = 1.0
steel_mechanical_saw = 1.0
steel_mechanical_pump = 1.0
@ -116,7 +116,7 @@ fanSpeedMultiplier = 0.75
aluminium_gearbox = 0.0
aluminium_mechanical_press = 3.0
aluminium_mechanical_mixer = 1.5
aluminium_millstone = 1.0
aluminium_millstone = 1.5
aluminium_mechanical_saw = 1.5
aluminium_mechanical_pump = 1.5
@ -135,7 +135,7 @@ fanSpeedMultiplier = 0.75
stainless_steel_gearbox = 0.0
stainless_steel_mechanical_press = 4.0
stainless_steel_mechanical_mixer = 2.0
stainless_steel_millstone = 1.5
stainless_steel_millstone = 2.0
stainless_steel_mechanical_saw = 2.0
stainless_steel_mechanical_pump = 2.0
@ -154,7 +154,7 @@ fanSpeedMultiplier = 0.75
titanium_gearbox = 0.0
titanium_mechanical_press = 5.0
titanium_mechanical_mixer = 2.5
titanium_millstone = 2.0
titanium_millstone = 2.5
titanium_mechanical_saw = 2.5
titanium_mechanical_pump = 2.5
@ -173,7 +173,7 @@ fanSpeedMultiplier = 0.75
tungsten_steel_gearbox = 0.0
tungsten_steel_mechanical_press = 6.0
tungsten_steel_mechanical_mixer = 3.0
tungsten_steel_millstone = 2.5
tungsten_steel_millstone = 3.0
tungsten_steel_mechanical_saw = 3.0
tungsten_steel_mechanical_pump = 3.0
@ -192,7 +192,7 @@ fanSpeedMultiplier = 0.75
rhodium_plated_palladium_gearbox = 0.0
rhodium_plated_palladium_mechanical_press = 7.0
rhodium_plated_palladium_mechanical_mixer = 3.5
rhodium_plated_palladium_millstone = 3.0
rhodium_plated_palladium_millstone = 3.5
rhodium_plated_palladium_mechanical_saw = 3.5
rhodium_plated_palladium_mechanical_pump = 3.5
@ -211,7 +211,7 @@ fanSpeedMultiplier = 0.75
naquadah_alloy_gearbox = 0.0
naquadah_alloy_mechanical_press = 8.0
naquadah_alloy_mechanical_mixer = 4.0
naquadah_alloy_millstone = 4.5
naquadah_alloy_millstone = 4.0
naquadah_alloy_mechanical_saw = 4.0
naquadah_alloy_mechanical_pump = 4.0
@ -230,7 +230,7 @@ fanSpeedMultiplier = 0.75
darmstadtium_gearbox = 0.0
darmstadtium_mechanical_press = 9.0
darmstadtium_mechanical_mixer = 4.5
darmstadtium_millstone = 5.0
darmstadtium_millstone = 4.5
darmstadtium_mechanical_saw = 4.5
darmstadtium_mechanical_pump = 4.5
@ -249,7 +249,7 @@ fanSpeedMultiplier = 0.75
neutronium_gearbox = 0.0
neutronium_mechanical_press = 10.0
neutronium_mechanical_mixer = 5.0
neutronium_millstone = 5.5
neutronium_millstone = 5.0
neutronium_mechanical_saw = 5.0
neutronium_mechanical_pump = 5.0
@ -284,7 +284,7 @@ fanSpeedMultiplier = 0.75
#.
#Configure the max stress a kinetic block of this tier can support.
#Range: > -2147483648
andesiteMaxCapacity = 16
andesiteMaxCapacity = 32
#.
#Settings related to steel tier machines

View file

@ -2,8 +2,11 @@ Files located at "assets/x/lang" (where x is the modid youre looking to translat
This means that any changes done to the files in "assets/x/lang" WILL BE OVERWRITTEN the next time the tool is ran!
If you wish to properly write localization for an already supported/translated mod:
1. Go to "minecraft/tools/LanguageMerger/LanguageFiles"
1. Go to the [Tools-Modern] repo
2. Go to the folder of your mod of choice.
3. Open the Localization folder for your language, these are the actual locales supported by the mod (ie: en_us)
* If youre looking to add a new language, create a new folder with your chosen locale
4. Edit, or add a new JSON file with your language values.
4. Edit, or add a new JSON file with your language values.
<!-- Links: -->
[Tools-Modern]: https://github.com/TerraFirmaGreg-Team/Tools-Modern

View file

@ -66,6 +66,9 @@
{
"category": "greate:automatic_packing"
},
{
"category": "greate:packing"
},
{
"id": "/emi:/crafting/repairing/[^*]+/"
},

View file

@ -5,6 +5,10 @@
"block.gtceu.ender_dome": "Enderarium",
"block.gtceu.greenhouse": "Greenhouse",
"block.gtceu.steam_bloomery": "Steam Bloomery",
"block.gtceu.black_bronze_crate": "Black Bronze Crate",
"block.gtceu.black_bronze_drum": "Black Bronze Drum",
"block.gtceu.bismuth_bronze_crate": "Bismuth Bronze Crate",
"block.gtceu.bismuth_bronze_drum": "Bismuth Bronze Drum",
"gtceu.nether_dome": "Netherarium",
"gtceu.ender_dome": "Enderarium",
"gtceu.greenhouse": "Electric Greenhouse",

Binary file not shown.

After

Width:  |  Height:  |  Size: 463 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 402 B

View file

@ -0,0 +1,244 @@
{
"__comment__": "This file was automatically created by mcresources",
"name": "Support Beams & Collapses",
"category": "tfc:mechanics",
"icon": "tfc:wood/support/oak",
"pages": [
{
"type": "patchouli:text",
"text": "In TerraFirmaCraft, raw rock is unstable and susceptible to $(thing)Collapsing$(). Many rock blocks, including $(thing)Raw Rock$(), $(thing)Ores$(), $(thing)Smooth$() and $(thing)Spikes$() can all rain down on your head under the right circumstances.$(br2)$(thing)Support Beams$() can be used to prevent collapses from occurring.",
"title": "Support Beams"
},
{
"type": "patchouli:text",
"text": "Collapses can occur whenever a player $(thing)mines any Raw Rock$() that is near to $(thing)Unsupported Raw Rock$(). Once a collapse has started, however, even previously $(thing)Supported$() rock can start to collapse.$(br2)The rock on the roof of caves is $(thing)Naturally Supported$(). Any raw rock with a non-collapsible solid block beneath it, is also $(thing)Supported$(). Alternatively, $(thing)Support Beams$() can support a wide area at once."
},
{
"type": "patchouli:text",
"text": "When graded $(l:the_world/ores_and_minerals)Ore$() (ore that can be poor, normal, or rich) collapses, it degrades in quality. Rich ore will become normal, normal will become poor, and poor will turn to cobblestone. Mineral ores will turn into cobblestone right away."
},
{
"type": "patchouli:text",
"text": "Dirt, grass, clay, gravel, cobblestone, and sand are also affected by gravity. However, unlike vanilla gravity blocks, these blocks fall down slopes, and cannot be stacked more than one high without supporting blocks around. $(l:mechanics/sluices)Ore Deposits$() also landslide, but do not degrade in quality."
},
{
"type": "patchouli:crafting",
"recipe": "tfc:crafting/wood/oak_support",
"title": "Support Beams",
"text": "To get started, $(thing)Support Beams$() can be crafted with a $(thing)Saw$() and any type of $(thing)Logs$().$(br2)Placing a $(thing)Support Beam$() on top of a block places a column up to three tall. These must have a solid block beneath them to stay upright."
},
{
"type": "tfc:multimultiblock",
"text": "$(thing)Horizontal$() beams can be placed between to connect two $(thing)Vertical$() beams that are within five blocks, as in the above diagram.",
"multiblocks": [
{
"pattern": [
[
" ",
"CRD",
" "
],
[
" ",
"V W",
" "
],
[
" ",
"V W",
" "
],
[
"GGG",
"G0G",
"GGG"
],
[
" ",
" ",
" "
]
],
"mapping": {
"R": "air",
"C": "air",
"D": "air",
"V": "air",
"W": "air",
"0": "tfc:rock/raw/andesite",
"G": "tfc:rock/raw/andesite"
}
},
{
"pattern": [
[
" ",
"CRD",
" "
],
[
" ",
"V W",
" "
],
[
" ",
"V W",
" "
],
[
"GGG",
"G0G",
"GGG"
],
[
" ",
" ",
" "
]
],
"mapping": {
"R": "air",
"C": "tfc:wood/vertical_support/oak",
"D": "air",
"V": "tfc:wood/vertical_support/oak",
"W": "air",
"0": "tfc:rock/raw/andesite",
"G": "tfc:rock/raw/andesite"
}
},
{
"pattern": [
[
" ",
"CRD",
" "
],
[
" ",
"V W",
" "
],
[
" ",
"V W",
" "
],
[
"GGG",
"G0G",
"GGG"
],
[
" ",
" ",
" "
]
],
"mapping": {
"R": "air",
"C": "tfc:wood/vertical_support/oak",
"D": "tfc:wood/vertical_support/oak",
"V": "tfc:wood/vertical_support/oak",
"W": "tfc:wood/vertical_support/oak",
"0": "tfc:rock/raw/andesite",
"G": "tfc:rock/raw/andesite"
}
},
{
"pattern": [
[
" ",
"CRD",
" "
],
[
" ",
"V W",
" "
],
[
" ",
"V W",
" "
],
[
"GGG",
"G0G",
"GGG"
],
[
" ",
" ",
" "
]
],
"mapping": {
"R": "tfc:wood/horizontal_support/oak[north=true,south=true]",
"C": "tfc:wood/vertical_support/oak[south=true]",
"D": "tfc:wood/vertical_support/oak[north=true]",
"V": "tfc:wood/vertical_support/oak",
"W": "tfc:wood/vertical_support/oak",
"0": "tfc:rock/raw/andesite",
"G": "tfc:rock/raw/andesite"
}
},
{
"pattern": [
[
" ",
"CRD",
" "
],
[
" ",
"V W",
" "
],
[
" ",
"V W",
" "
],
[
"GGG",
"G0G",
"GGG"
],
[
" ",
" ",
" "
]
],
"mapping": {
"R": "tfc:wood/horizontal_support/oak[north=true,south=true]",
"C": "tfc:wood/vertical_support/oak[south=true]",
"D": "tfc:wood/vertical_support/oak[north=true]",
"V": "tfc:wood/vertical_support/oak",
"W": "tfc:wood/vertical_support/oak",
"0": "tfc:rock/raw/andesite",
"G": "tfc:rock/raw/andesite"
}
}
]
},
{
"type": "patchouli:text",
"text": "Only $(thing)Horizontal Support Beams$() cause nearby blocks to be $(thing)Supported$(). Any block within a $(bold)9 x 5 x 9$() area centered on a horizontal support beam is considered $(thing)Supported$().$(br2)In addition to being supported by support beams, rock can be supported simply by the virtue of having a solid block below it, such as more rock. However, it is important to note that $(thing)Non Solid Blocks$() such as $(thing)Stairs$() and $(thing)Slabs$(), along with $(thing)Smooth Stone$(), do $(bold)not$() count as supporting."
},
{
"type": "patchouli:text",
"text": "In addition to $(thing)Wooden Support Beams$() $(bold)TFG$() also adds higher tiers of support beams. Including $(thing)Stone Support Beams$(), $(thing)Concrete Support Beams$(), and $(thing)Steel Support Beams$(). With the highest tier of supports holding an area of $(bold)33 x 13 x 33$() blocks centered on the horizontal support beam!"
},
{
"type": "patchouli:text",
"text": "Finally, it is important to know that $(l:mechanics/chisel)Chiseling$() has the potential to cause collapses, just as easily as mining does, when it is done on any $(thing)Raw Rock$() that has potential to cause a nearby collapse.$(br2)$(br2)Remember kids: practice safe mining!",
"title": "Chiseling"
}
],
"read_by_default": true,
"extra_recipe_mappings": {
"tag:tfc:support_beams": 0
}
}

View file

@ -66,4 +66,4 @@
"text": "Відсоток: 20%$(br)Джерело: Літію$(br)Формула: Li"
}
]
}
}

View file

@ -75,4 +75,4 @@
"text": "Це лише попередження: не робіть $(item)Екструдер$(). Єдине, що він може робити, - це виготовляти інструменти та тонкі гумові листи (що може робити також бендер). Всі хороші рецепти екструдерів закриті для $(thing)MV$() і далі."
}
]
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 B

View file

@ -60,13 +60,6 @@
"block.tfg.decorative_vase.generated.orange": "Orange Loot Vase",
"block.tfg.decorative_vase.generated.red": "Red Loot Vase",
"block.tfg.decorative_vase.generated.brown": "Brown Loot Vase",
"block.tfg.rock.hardened_deepslate": "Hardened Migmatite",
"block.tfg.rock.hardened_blackstone": "Hardened Pyroxenite",
"block.tfg.rock.hardened_dripstone": "Hardened Travertine",
"block.tfg.spike.deepslate_spike": "Migmatite Spike",
"block.tfg.spike.blackstone_spike": "Pyroxenite Spike",
"block.tfg.spike.dripstone_spike": "Travertine Spike",
"block.tfg.light_concrete_support": "Light Concrete Support",
"block.tfg.light_concrete_support_horizontal": "Light Concrete Horizontal Support",
"block.tfg.dark_concrete_support": "Dark Concrete Support",
@ -125,10 +118,14 @@
"block.tfg.migmatite_support": "Migmatite Support",
"block.tfg.travertine_support_horizontal": "Travertine Horizontal Support",
"block.tfg.travertine_support": "Travertine Support",
"block.tfg.loose.deepslate": "Loose Migmatite",
"block.tfg.loose.dripstone": "Loose Travertine",
"block.tfg.rock.hardened_deepslate": "Hardened Migmatite",
"block.tfg.rock.hardened_blackstone": "Hardened Pyroxenite",
"block.tfg.rock.hardened_dripstone": "Hardened Travertine",
"block.tfg.spike.deepslate_spike": "Migmatite Spike",
"block.tfg.spike.blackstone_spike": "Pyroxenite Spike",
"block.tfg.spike.dripstone_spike": "Travertine Spike",
"block.tfg.loose.deepslate": "Loose Migmatite Rock",
"block.tfg.loose.dripstone": "Loose Travertine Rock",
"item.tfg.antipoison_pill": "Antipoison Pill",
"item.tfg.haste_pill": "Haste Pill",
"item.tfg.night_vision_pill": "Night Vision Pill",
@ -154,6 +151,8 @@
"item.tfg.luck_salvo": "Luck Salvo",
"item.tfg.resistance_salvo": "Resistance Salvo",
"item.tfg.paraffin_wax": "Paraffin Wax",
"item.tfg.flint_arrow_head": "Flint Arrow Head",
"item.tfg.fletching": "Fletching",
"item.tfg.conifer_rosin": "Conifer Rosin",
"item.tfg.hardwood_strip": "Hardwood Strip",
"item.tfg.soaked_hardwood_strip": "Soaked Hardwood Strip",
@ -204,6 +203,7 @@
"material.gtceu.hardwood": "Hardwood",
"tfg.disabled_portal": "Portal magic seems to be blocked by an unknown force, try reaching another dimension by going down or up",
"item.treetap.tap": "Deprecated Item, Craft to Upgrade",
"tfc.jei.flint_knapping": "Flint Knapping",
"item.gtceu.zinc_ingot": "Deprecated Item, Craft to Upgrade",
"item.gtceu.brass_ingot": "Deprecated Item, Craft to Upgrade",
"item.gtceu.vanadium_ingot": "Deprecated Item, Craft to Upgrade",
@ -484,6 +484,9 @@
"quests.low_voltage.lv_machine_hull.subtitle": "It's time to get into electricity",
"quests.low_voltage.lv_machine_hull.desc.1": "That's it you are getting real close to your &6first LV Machine&r and the begining of the electric age. Crafting this hull will cost you quite a lot of &4Red Steel&r but you will get &6new ways&r to improve your production.\n\nThis is the Gregtech approach: &6the further you progress, the better the new recipes become&r.\n\nTry to make at least 3 or 4 casings to begin.",
"quests.low_voltage.lv_machine_hull.desc.2": "For some players reaching a new tier is making the &6circuit&r, for others it's the &6machine hull&r and for me it's the &6energy hatch&r. At the end of the day you do you.",
"quests.low_voltage.lv_machine_casing.title": "LV Machine Casing for Create?",
"quests.low_voltage.lv_machine_casing.subtitle": "An infinite amount of possibilities",
"quests.low_voltage.lv_machine_casing.desc": "Usually now would be time to go full Gregtech but &5TFG&r offers you the possibility to use &6Create&r machines to basically do the job of some usual &6Gregtech&r machines.\n\nWe introduced them &6last chapter&r, just know that in this chapter if there is an alternative to a Gregtech machine, you will have the choice within the quest.",
"quests.low_voltage.lv_motor.title": "The First of Many Motors",
"quests.low_voltage.lv_motor.subtitle": "Low Voltage beckons...",
"quests.low_voltage.lv_motor.desc": "Remember that &2JEI is your friend&r if recipes are getting overwhelming.\n\nGetting back on topic, set yourself up for &7LV&r by crafting six &aLV Electric Motors&r! This may seem like a lot, but that's the bare minimum required to get to the good stuff in &7LV&r.",
@ -497,7 +500,7 @@
"quests.low_voltage.lv_steam_turbine.desc.2": "If you're using a single &3Steam Turbine&r, you only need &a1x Tin Cables&r. On the other hand, if you upgrade to &32 Steam Turbines&r, you should use &a2x Tin Cables&r - else they may end up &cburning&r.\n\nThis is because of the &9Amperage&r mechanic... but that will be explained later so you can enjoy playing. Don't worry!",
"quests.low_voltage.lbb.title": "Large Bronze Boiler",
"quests.low_voltage.lbb.subtitle": "Boom, boom, boom, boom",
"quests.low_voltage.lbb.desc.1": "&oThe &3Large Boiler&r is an &6optional&r big-boy variant of the Small Boilers. It runs off solid or liquid fuel.\n\nIf you want Steam-based power production, this will be your first port-of-call. Other power options are listed in the &bMV&r chapter.\n\n&cImportant:&r This Boiler &lCAN&r also &cexplode&r similarly to the regular Boilers! Usually, the explosion can be rather devastating...",
"quests.low_voltage.lbb.desc.1": "Be wary this one explodes if running when you load your world, waiting for a fix from GTm devs/n&oThe &3Large Boiler&r is an &6optional&r big-boy variant of the Small Boilers. It runs off solid or liquid fuel.\n\nIf you want Steam-based power production, this will be your first port-of-call. Other power options are listed in the &bMV&r chapter.\n\n&cImportant:&r This Boiler &lCAN&r also &cexplode&r similarly to the regular Boilers! Usually, the explosion can be rather devastating...",
"quests.low_voltage.lbb.desc.2": "&cWater supply is &lcrucial&r&r. Dedicate a system only for it.\n\nOnce fully heated up, the &3LBB&r produces 800 Steam per tick, which is &d400EU/t&r after conversion, or 12.5 Basic Steam Turbines. Such (relatively!) immense power comes at the cost of &la lot&r of burnable fuel. In TerraFirmaGreg we advise &8Creosote&r or &cLava&r. You can use Create to bring that if needed...",
"quests.low_voltage.lbb.desc.3": "&5With this in consideration&r, the GUI lets you &9throttle&r the Boiler down to 25% power for 200 Steam per tick. That's &d100EU/t&r, or slightly above 3 Basic Steam Turbines.\n\n&9Note:&r An in-depth tutorial about Multiblocks is given after you get the &3Electric Blast Furnace&r. We recommend you aim for that first.",
"quests.low_voltage.lv_polariser.title": "Basic Polariser",
@ -520,13 +523,16 @@
"quests.low_voltage.lv_wiremill.subtitle": "No more painful wires!",
"quests.low_voltage.lv_wiremill.desc.1": "You could make any other &7LV&r Machine, but it would be easiest to start with the most useful one. We know, we know... you wanna make some of the crazier stuff first, but trust us, this is the best starting point.\n\nThe Wiremill lets you make &6two Wires from one Ingot&r. That should be three times cheaper than what you were doing up until now!\n\nTo the right of this Quest, you'll find some important machines which will grant you cheaper intermediates.",
"quests.low_voltage.lv_wiremill.desc.2": "&9Note:&r Recipes inside &3LV Machines&r go up to a maximum usage of &a32 EU/t (LV)&r. Anything higher than that and you will need a &bMV&r (or better) Machine. Needless to say, we aren't quite there yet.\n\nYou will need a &dProgrammed Circuit&r for certain recipes. We're sure you don't want to spend a precious Circuit to craft one, so &6read the dedicated quest for important details&r.\n\nWith this machine safely crafted - welcome to the age of all things electric!",
"quests.low_voltage.lv_wiremill.task": "Any of these",
"quests.low_voltage.lv_bender.title": "Basic Bender",
"quests.low_voltage.lv_bender.subtitle": "The Bender bends!",
"quests.low_voltage.lv_bender.desc": "Arguably the second best &7LV&r machine to craft, but we're down if you want to argue otherwise.\n\nThis unlocks the ability to convert one &6Ingot into one Plate&r, which is a better ratio than the Forge Hammer.",
"quests.low_voltage.lv_bender.task": "Any of these",
"quests.low_voltage.lv_lathe.title": "Basic Lathe",
"quests.low_voltage.lv_lathe.subtitle": "Get rid of your archaic tech",
"quests.low_voltage.lv_lathe.desc.1": "The Lathe is an important machine to help shape metals. Thanks to it, you can turn &6one Ingot into two Rods&r, and &6one Bolt into one screw&r. That's twice the efficiency on those recipes as opposed to crafting by hand.",
"quests.low_voltage.lv_lathe.desc.2": "&l&3Lore:&r&o The GregTech 5 Lathe produces one Rod and 2 small piles of Dust per Ingot. We also have a setting for this in GTCEu, but it's turned off by default.\n\n&oThe GT6 Lathe acts like GT5's, but Bolts lathe into one Screw and 1/72 of a pile of Dust. Disgusting!",
"quests.low_voltage.lv_lathe.task": "Any of these",
"quests.low_voltage.universal_cell.title": "Better bucket",
"quests.low_voltage.universal_cell.subtitle": "You can see inside not like these drums...",
"quests.low_voltage.universal_cell.desc.1": "Cells are an alternative form of Fluid storage. All Cell types with the same type and amount of Fluid inside them &6stack&r. They can be automatically filled with a &3Canning Machine&r.\n\nCells hold &done bucket&r of Fluid.",
@ -603,6 +609,7 @@
"quests.low_voltage.lv_mixer.title": "Basic Mixer",
"quests.low_voltage.lv_mixer.subtitle": "Mixer is for mixing",
"quests.low_voltage.lv_mixer.desc": "Using the mixer will &6significantly speed up&r the process of making colored steel, especially for &4red steel&r. Even if you don't think you need it now, you'll find it &6essential&r later on.",
"quests.low_voltage.lv_mixer.task": "From Create or Gregtech",
"quests.low_voltage.soldering_alloy.title": "Soldering Alloy",
"quests.low_voltage.soldering_alloy.subtitle": "I got soul but I'm not a solder",
"quests.low_voltage.soldering_alloy.desc": "&aSoldering Alloy&r is used solely as a &9Fluid&r, and in most cases is &dinterchangeable&r in circuit recipes as a cheaper alternative to Tin&r.\n\nThe choice is yours. Save more materials? Make Soldering Alloy. Spend less time crafting materials? Tin is the way to go.",
@ -639,6 +646,7 @@
"quests.low_voltage.lv_cutter.title": "Basic Cutter",
"quests.low_voltage.lv_cutter.subtitle": "The Cutter... cuts...",
"quests.low_voltage.lv_cutter.desc": "For now, you should use &9Water&r for its recipes instead of trying to acquire Lubricant.\n\nThe &3Cutting Machine&r additionally unlocks converting &6Rods into four Bolts&r.\n\nThis machine is the only way to obtain &dGem Plates&r, which are needed to craft Filters, and by extension, the &3Gas Collector&r.",
"quests.low_voltage.lv_cutter.task": "Any cutter",
"quests.low_voltage.lv_gas_collector.title": "Basic Gas Collector",
"quests.low_voltage.lv_gas_collector.subtitle": "Don't stand to close to it you could finish within the machine",
"quests.low_voltage.lv_gas_collector.desc": "The Gas Collector collects Air that can then be centrifuged into &aOxygen&r and &aNitrogen&r.\n\n&l&3Lore:&r&o GregTech 5 players remember when they had to use a Compressor with IC2 cells to get Compressed Air... here, cell chemistry is no more.",
@ -694,6 +702,10 @@
"quests.low_voltage.aluminium_ingot.title": "Your first Aluminium Ingot",
"quests.low_voltage.aluminium_ingot.subtitle": "We're basically in MV now, right?",
"quests.low_voltage.aluminium_ingot.desc": "Well... can you show us an &bMV&r Circuit as well?\n\n&aAluminium&r is the main ingredient for &bMV&r machinery. Get ready to need a lot of it.\n\nThe process of smelting Aluminium can be cut down by about a third with &9Nitrogen&r, which is obtained by centrifuging &9Air&r from a &3Gas Collector&r.\n\n&6You will still need MV Circuits in order to make MV machines!&r",
"quests.low_voltage.mv_hull.title": "Your third machine hull",
"quests.low_voltage.mv_hull.subtitle": "This is going quite well, only 7 to go!",
"quests.low_voltage.mv_hull.desc1": "Good job, you now have your &bMV Machine Hull&r, your first &bMV Circuit&r and your first &6Circuit Assembler&r.\n\nThis is the gist of &6Gregtech&r, every tier you are going to need to do new &6machines&r using new &6materials&r and &6chemicals&r. You are going to have so &5much fun&r, we are kinda jealous.",
"quests.low_voltage.mv_hull.desc2": "Before going further into &bMV&r remember that in &6TFG&r you can use &6Create&r to reinforce your infrastruce if you don't want to use too much of Gregtech.",
"quests.metal_age": "Metallurgy Age",
"quests.metal_age.subtitle": "Your First Technological Advancements.",
"quests.metal_age.weld_bronze_ingots.title": "Welding Bronze",
@ -759,73 +771,73 @@
"quests.metal_age.graphite.task": "Any form of Graphite",
"quests.metal_age.fire_clay.title": "Fire Clay",
"quests.metal_age.fire_clay.subtitle": "At last",
"quests.metal_age.fire_clay.desc": "Heat up Kaolin Clay to get Kaolinite Powder, you can use a Firepit or your Forge with vessels to mass-heat the Kaolin Clay.\n\nFor the Graphite, simply pass it thru a Quern or a Millstone to get Graphite Powder\n\nFinally, combine 4 Graphite Powder, 4 Kaolinite and a piece of Clay to create Fire Clay.",
"quests.metal_age.fire_clay.desc": "Heat up Kaolin Clay to get Kaolinite Powder. You can use a Forge to heat them individually, but cooking big batches inside small vessels in a Pit Kiln may be faster.\n\nFor the Graphite, process the ore as normal, then crush the Graphite Dust again to get Graphite Powder.\n\nFinally, combine 4 Graphite Powder, 4 Kaolinite Powder, and 1 Clay to create Fire Clay.",
"quests.metal_age.fire_clay_products.title": "Fire Clay products",
"quests.metal_age.fire_clay_products.subtitle": "Extremely Heat Resistant Clay",
"quests.metal_age.fire_clay_products.desc": "Just like regular Clay, Fire Clay can be Knapped to create unfired pieces of Clay, Notably Fire Clay can be used to create the Crucible and Fire Clay Bricks, which are required for the Blast Furnace.\n\nYou'll also unlock the Fire Ingot, which has a 90% chance to not be destroyed when you get the Ingot out of the Mold.\n\nYou'll also be able to create a Mold Table and Casting Channels, which lets you cast multiple molds at once.",
"quests.metal_age.fire_clay_products.desc": "Just like regular Clay, Fire Clay can be Knapped to create things that you'll then need to fire. Most importantly, Fire Clay is used to create the Crucible and Fire Clay Bricks, both of which are required for the Blast Furnace.\n\nYou'll also be able to create a Mold Table and Casting Channels, which lets you cast your metal from the crucible into multiple molds at once.\n\nLastly, there's Fire Ingot Molds, which only have a 1% chance of breaking instead of regular clay's 10%.",
"quests.metal_age.crucible.title": "Crucible",
"quests.metal_age.crucible.subtitle": "Melt metals, like a pro.",
"quests.metal_age.crucible.desc": "The Crucible is an advanced block that can be placed on top of a Forge, Crucibles being heated by a Forge heat up considerably faster, they have 9 inventory slots and can hold up to 4 buckets of Molten Metal. Crucibles can also be emptied out utilizing Casting Channels, They are required for the Blast Furnace to work.",
"quests.metal_age.crucible.subtitle": "Melt metals like a pro",
"quests.metal_age.crucible.desc": "The Crucible is placed on top of a Forge. It comes with 9 inventory slots and has a capacity for 4000mB of fluid, including an interface to check your alloying ratios. They also retain their contents when broken. They can also collect Pig Iron when placed below a Blast Furnace.\n\nKeep in mind that the crucible WILL try to alloy everything inside it - it does not keep metals separate like a TC Smeltery - so it's a good idea to keep it clean when you aren't using it.",
"quests.metal_age.fire_bricks.title": "Fire Bricks",
"quests.metal_age.fire_bricks.subtitle": "For the Blast Furnace",
"quests.metal_age.fire_bricks.desc": "Fire Bricks are used in the construction of the Blast Furnace, you need at the very least 4 Bricks to make the furnace.\n\nThe Bricks will require insulation to make sure the process of making steel is effective, you can either place 3 Wrought Iron Sheets around the Fire Bricks, or use Blast Furnace Insulation",
"quests.metal_age.fully_stacked_blast_furnace.title": "Fully Stacked Blast Furnace",
"quests.metal_age.fully_stacked_blast_furnace.subtitle": "The completed Blast Furnace",
"quests.metal_age.fully_stacked_blast_furnace.desc": "The completed Blast Furnace can melt and create a lot of Steel. You should seek to complete it as you'll need a lot of steel for the future.\n\nIt is worth mentioning that in the future, you'll be able to produce both Brick Dust and Clay Dust, mixing these dusts together can be used as a cheap method of creating more Fire Bricks.",
"quests.metal_age.fully_stacked_blast_furnace.desc": "A full size Blast Furnace is able to melt and process large amounts of iron at once. It's a good idea to make it bigger when you can, because you'll need a lot of steel for the future.\n\nAfter you've got your first Steel Millstone, you'll be able to create more Fire Bricks more cheaply.",
"quests.metal_age.blast_furnace_fuel.title": "Fuel for the Blast Furnace",
"quests.metal_age.blast_furnace_fuel.subtitle": "Hope you followed the tips in the previous quests...",
"quests.metal_age.blast_furance_fuel.desc": "Regular Charcoal is not hot enough to be able to create Steel, you will need either Coke or Anthracite.\n\nCoke can be created inside a Coke Oven by utilizing Coal instead of Logs, it produces considerably more Creosote as well.\n\nAnthracite is a type of fuel found in the Beneath.",
"quests.metal_age.blast_furance_fuel.desc": "Regular Charcoal is not hot enough to be able to create Steel. You will need either Coke or Anthracite.\n\nCoke can be created by putting Coal into a Coke Oven, while Anthracite can be used as-is after being dug up from the Beneath.",
"quests.metal_age.blast_furnace.title": "Blast Furnace",
"quests.metal_age.blast_furnace.subtitle": "I'm Blastin",
"quests.metal_age.blast_furnace.desc": "The BlastFurnace is a Multiblock form TerraFirmaCraft that allows you to create Steel. Placing a combination of Iron, Flux and Charcoal inside the Blast Furnace produces Pig Iron, which can be worked into Steel.\n\nTo get the Blast Furnace to properly melt down the ingredients, you'll require a Bellows to feed the Blast Furnace with Air, for the Blast Furnace to even accept the Air you'll require a Tuyere.\n\nThe Field Guide contains an entry on how the Blast Furnace works.",
"quests.metal_age.blast_furnace.subtitle": "Then I started Blastin'",
"quests.metal_age.blast_furnace.desc": "The Blast Furnace is a multiblock structure that allows you to create Pig Iron. Placing a combination of Iron, Flux and fuel (see the adjacent quest) inside the Blast Furnace produces Pig Iron, which can be worked into Steel.\n\nIn order for the Blast Furnace to reach its required high temperatures, it will need its own Bellows, used to force air through a Tuyere which you place inside the blast furnace.\n\nThe Field Guide contains an entry on how the Blast Furnace works and how to build one.",
"quests.metal_age.weld_steel_ingots.title": "Welding Steel",
"quests.metal_age.weld_steel_ingots.subtitle": "Again?",
"quests.metal_age.weld_steel_ingots.desc": "You should know the drill by this point, Create 14 Steel Ingots, then Weld them to get 7 Double Steel Ingots.\n\nThis will be the last quest where we'll ask you to do this, since every single other Anvil requires the same setup.",
"quests.metal_age.weld_steel_ingots.desc": "You know the drill by this point. Create 14 Steel Ingots, then weld them to get 7 Double Steel Ingots. We'll stop reminding you about this now.\n\nDid you know that the Helve Hammer can also process your pig iron into steel?",
"quests.metal_age.steel_anvil.title": "T4 Anvil: Steel",
"quests.metal_age.steel_anvil.subtitle": "Encased Fans, Crushing Wheels, Mechanical Pumps and More",
"quests.metal_age.steel_anvil.desc": "With the Steel Anvil you'll be able to work Steel Ingots into different items.\n\nUnlocking access to the Steel Anvil enables new quests in the Industrial Age, related to new processing machinery, and the Mechanical Pump.\n\nThe next anvil will unlock the very beginnings of GregTech's Steam Machinery.",
"quests.metal_age.steel_anvil.subtitle": "A huge leap from wrought iron",
"quests.metal_age.steel_anvil.desc": "With the Steel Anvil, you'll be able to work Steel Ingots into different forms.\n\nSteel tools and equipment have a significant boost over their bronze and wrought iron counterparts, so they're worth making if your existing ones are about to break. You'll be needing to create a lot of alloys soon, so some new mining equipment would be a wise investment.",
"quests.metal_age.steel_goodies.title": "Steel level Mechanical Power",
"quests.metal_age.steel_goodies.subtitle": "Blow, Crush and Pipe",
"quests.metal_age.steel_goodies.subtitle": "Blow, Crush, and Pipe",
"quests.metal_age.steel_goodies.desc": "Steel unlocks a new Greate tier, with increased maximum stress capacity! You can now also make things like the Encased Fan, which can automate ore washing, and the Mechanical Pump, which gives you much more access to fluid logistics.\n\nThe Mechanical Pump is especially useful, as with some smarts, you can easily automate the Blast Furnace.",
"quests.metal_age.weak_steel.title": "Weak Steel Ingredients",
"quests.metal_age.weak_steel.subtitle": "Hope you like Alloying",
"quests.metal_age.weak_steel.desc": "Weak Steel is one part of the necesary metals to create Black Steel, it's made by utilizing 2 parts Steel, 1 part Nickel and 1 part Black Bronze.\n\nYou can check the liquid weak steel's recipe for more precise alloying percentage rates.",
"quests.metal_age.weak_steel.subtitle": "Hope you like math",
"quests.metal_age.weak_steel.desc": "Weak Steel is one part of the necessary metals to create Black Steel. You can alloy it with 2 parts Steel, 1 part Nickel and 1 part Black Bronze.\n\nYou can check the liquid weak steel's recipe for more precise alloying percentage rates.",
"quests.metal_age.highcarb_black_steel.title": "Black Steel Ingredients",
"quests.metal_age.highcarb_black_steel.subtitle": "Conservation of Matter does not apply",
"quests.metal_age.highcarb_black_steel.desc": "The last two anvils are made out of complex Alloys that will require a lot of metal to be created. Black Steel first starts as High Carbon Black Steel, which is made by welding Weak Steel and Pig Iron. It the needs to be worked on the Anvil to turn it into Black Steel",
"quests.metal_age.highcarb_black_steel.subtitle": "Conservation of matter does not apply",
"quests.metal_age.highcarb_black_steel.desc": "The final two anvils are made out of complex alloys that will require a lot of metal to be created. Weak Steel and Pig Iron can be welded to create High Carbon Black Steel, which can then be worked on an anvil into Black Steel.",
"quests.metal_age.black_steel_anvil.title": "T5 Anvil: Black Steel",
"quests.metal_age.black_steel_anvil.subtitle": "Steam is at your Grasp",
"quests.metal_age.black_steel_anvil.desc": "With the Black Steel Anvil you'll be able to work Black Steel Ingots into different items.\n\nUnlocking access to the Black Steel Anvil enables new quests in the Industrial Age, related to Steam Power. From both the Steam Engine and the High Pressure Steam Boilers.\n\nOnly one more tier to go.",
"quests.metal_age.black_steel_anvil.subtitle": "Steam power is within your grasp",
"quests.metal_age.black_steel_anvil.desc": "With the Black Steel Anvil you'll now be able to work Black Steel Ingots into different items.\n\nYou've also now opened up a massive new section in the Early Automation chapter related to Steam Power!\n\nFrom here, you can either dive straight into industrialization or finish up the last tier of anvils if you'd like. You can't avoid colored steel forever, though!",
"quests.metal_age.black_steel_goodies.title": "Black Steel level Mechanical Power",
"quests.metal_age.black_steel_goodies.subtitle": "The Industrial Revolution and its consequences",
"quests.metal_age.black_steel_goodies.desc": "With Black Steel comes Steam Power! With GregTech's Boilers, you'll be able to produce Steam, and with it, power Steam Machinery and work your way to proper machines and your first electronics.",
"quests.metal_age.black_steel_goodies.desc": "With Black Steel comes Steam Power! Start with small steam boilers and work your way up to a powerful steam engine, fuelling new machines to craft your first electronics.",
"quests.metal_age.red_blu.title": "Red and Blue Steel",
"quests.metal_age.red_blu.subtitle": "Some of the oldest modded Minecraft fantasy steels",
"quests.metal_age.red_blu.desc": "The final tier of Anvil, T6, is made by utilizing Red or Blue steel, both are complex alloys of Steel and multiple different metals.\n\nRed and Blue steel are known for their exceptional durability, heat resistance, and overall power. The following anvil creation can be made by either using Blue or Red Steel.",
"quests.metal_age.red_blu.desc": "The final tier of anvil can be made out of either Red or Blue Steel. Both are complex alloys of Steel and multiple different metals.\n\nBlue Steel is prized for its exceptional heat resistance and tool speed, while Red Steel boasts huge amounts of strength and durability.",
"quests.metal_age.weak_red_steel.title": "Weak Red Steel Ingredients",
"quests.metal_age.weak_red_steel.subtitle": "This is getting a little ridiculous",
"quests.metal_age.weak_red_steel.desc": "Weak Red Steel is one part of the necesary metals to create Red Steel, it's made by utilizing 4 parts Black Steel, 2 parts Steel, 1 part Brass and 1 part Rose Gold.\n\nYou can check the liquid weak red steel's recipe for more precise alloying percentage rates.",
"quests.metal_age.weak_red_steel.desc": "Like before, Weak Red Steel is the first step of Red Steel's creation. Its alloy is made from 4 parts Black Steel, 2 parts Steel, 1 part Brass, and 1 part Rose Gold.\n\nYou can check the liquid Weak Red Steel's recipe for more precise alloying percentage rates.",
"quests.metal_age.weak_blu_steel.title": "Weak Blue Steel Ingredients",
"quests.metal_age.weak_blu_steel.subtitle": "This is getting out of hand.",
"quests.metal_age.weak_blu_steel.desc": "Weak Blue Steel is one part of necesary metals to create Blue Steel, it's made by utilizing 4 parts Black Steel, 2 parts Steel, 1 part Bismuth Bronze and 1 part Sterling Silver.\n\bYou can check the liquid weak blue steel's recipe for more precise alloying percentage rates.",
"quests.metal_age.weak_blu_steel.desc": "Like before, Weak Blue Steel is the first step of Blue Steel's creation. Its alloy is made from 4 parts Black Steel, 2 parts Steel, 1 part Bismuth Bronze, and 1 part Sterling Silver.\n\bYou can check the liquid Weak Blue Steel's recipe for more precise alloying percentage rates.",
"quests.metal_age.highcarb_red_steel.title": "Red Steel Ingredients",
"quests.metal_age.highcarb_red_steel.subtitle": "If you think about it the fact that one half of the ingot disappears would mean there's a lot of energy being released, probably higher than the Tsar Bomba... oh well it's just a modpack.",
"quests.metal_age.highcarb_red_steel.subtitle": "Could deleting matter like this power a nuclear bomb?",
"quests.metal_age.highcarb_red_steel.desc": "Red Steel first starts as High Carbon Red Steel, which is made by welding Weak Red Steel and Black Steel. It needs to be worked on the Anvil to turn it into Red Steel",
"quests.metal_age.highcarb_blu_steel.title": "Blue Steel Ingredients",
"quests.metal_age.highcarb_blu_steel.subtitle": "Lavoisier is rolling in his grave",
"quests.metal_age.highcarb_blu_steel.desc": "Blue Steel first starts as High Carbon Blue Steel, whcih is made by welding Weak Blue Steel and Black Steel. It needs to be worked on the Anvil to turn it into Blue Steel",
"quests.metal_age.redblu_anvil.title": "T6 Anvil: Red or Blue Steel",
"quests.metal_age.redblu_anvil.subtitle": "It's over",
"quests.metal_age.redblu_anvil.desc": "The final tier of Anvil, with the Tier 6 Anvil you'll be able to work both Red and Blue Steel Ingots into different items.\n\nThis marks the End of the regular TerraFirmaCraft progression, now it's time to finish the Industrial Age and create your very first Low Voltage circuitry.",
"quests.metal_age.redblu_anvil.desc": "The final tier of Anvil! With the Tier 6 Anvil you'll be able to work both Red and Blue Steel Ingots into different items.\n\nThis marks the end of TerraFirmaCraft's progression. Now it's time to finish the Industrial Age and create your very first Low Voltage circuitry.",
"quests.metal_age.red_steel_flask.title": "Red Steel Flask",
"quests.metal_age.red_steel_flask.subtitle": "This got nothing on the Iron Flask",
"quests.metal_age.red_steel_flask.desc": "The Red Steel Flask is the best Flask in the game, it may hold the same amount of liquid as an Iron Flask, but the Red Steel Flask never breaks.",
"quests.metal_age.red_steel_flask.desc": "The Red Steel Flask is the best Flask available. It may hold the same amount of liquid as an Iron Flask, but the Red Steel Flask never breaks.",
"quests.metal_age.redblu_buckets.title": "Bucket Components",
"quests.metal_age.redblu_buckets.subtitle": "Not quite the bucket",
"quests.metal_age.redblu_buckets.desc": "The ending of the regular progression of the Metallurgy Age is creating a Bucket. The Bucket can be used to hold lava and other hot liquids without having it melt in your hands.",
"quests.metal_age.this_is_a_bucket.title": "This, is a Bucket.",
"quests.metal_age.redblu_buckets.subtitle": "Bucket Fusion Reactor",
"quests.metal_age.redblu_buckets.desc": "The final task in the Metallurgy Age is creating a Bucket. Unlike the wooden bucket and other fluid containers you've been using until now, the Bucket can be used to carry Lava and move around source blocks of other fluids.",
"quests.metal_age.this_is_a_bucket.title": "This... is a Bucket.",
"quests.metal_age.this_is_a_bucket.subtitle": "Dear God...",
"quests.metal_age.this_is_a_bucket.desc": "Congratulations on crafting the Bucket. The Metallurgy Age is officially over.\n\nGo and start working on those Low Voltage components.",
"quests.metal_age.this_is_a_bucket.desc": "Congratulations on crafting the Bucket. The Metallurgy Age is officially over.\n\nGo and start working on those Low Voltage components!",
"quests.steam_age": "Early Automation",
"quests.steam_age.subtitle": "From Primitive Machines to Steam Power",
"quests.steam_age.basic_greate.title": "Basics of Greate",
@ -833,7 +845,7 @@
"quests.steam_age.basic_greate.desc": "Greate is a fusion of &3Create&r and &3GregTech&r that has different tiered versions of Create's machines. It also introduces stress limits on Shafts and Cogwheels, so you'll have to plan more about how you power your machinery!\n\nGenerally speaking, you'll want smaller setups with their own individual power sources, instead of doing the usual Create thing of having a blob of water wheels connected into a single Shaft into your base.",
"quests.steam_age.create_tools.title": "Tools of the Trade",
"quests.steam_age.create_tools.subtitle": "These may be useful",
"quests.steam_age.create_tools.desc": "A wrench will let you quickly pick up Create blocks by Sneak + Right-Clicking on them, though an axe or pickaxe will still work too. The goggles will let you see much more detailed information about your machines, such as how much stress they're producing or consuming.\n\nBoth of these are optional for now, but will prove to be very useful, and you'll definitely want them later.",
"quests.steam_age.create_tools.desc": "A wrench will let you quickly pick up Create blocks by Sneak + Right-Clicking on them, though an axe or pickaxe will still work too. The goggles will let you see much more detailed information about your machines, such as how much stress they're producing or consuming.\n\nBoth of these are optional for now, but will prove to be very useful, and you'll definitely want them later.\n\nCheck the TFG Tips chapter for help on glassblowing. Did you know that breaking cobblestone with a hammer will turn it into gravel, and breaking that again will turn it into sand...?",
"quests.steam_age.basic_millstone.title": "Automatic Ore Processing",
"quests.steam_age.basic_millstone.subtitle": "No more querning",
"quests.steam_age.basic_millstone.desc": "The &3Millstone&r is an automatic version of the Quern. You can throw whatever you'd like into the top, and then right-click to take your crushed items back out. It's pretty slow if you connect it directly to your Horse Crank, but you can use gear ratios to increase its speed.\n\nYou will only receive the output in the first slot. The other slots are part of a GregTech mechanic that won't be relevant until much later (&6HV&r).",
@ -997,27 +1009,27 @@
"quests.steam_age.resistors.subtitle": "The more... resistant... component for circuits",
"quests.steam_age.resistors.desc": "Resistors are components that will be used to make your first Circuit.\n\nIt wouldn't be unwise to prioritise the recipes that use &aFine Wires&r, as they'll save you more materials in the long run.\n\nWires may be expensive right now, but they'll get a lot cheaper if you make the &3Coiling Machine&r down below or the &3Wiremill&r in &7LV&r.",
"quests.steam_age.coiling_machine.title": "Coiling Machine",
"quests.steam_age.coiling_machine.subtitle": "ULV Wiremill",
"quests.steam_age.coiling_machine.subtitle": "An LV Wiremill strapped to half of the LV Bender!",
"quests.steam_age.coiling_machine.desc": "The &3Coiling Machine&r is similar to a LV Wiremill, though it lacks the option to directly output different wire sizes. Still, this is a very worthwhile invesment to make your wires significantly cheaper.\n\nThis machine can also make cheaper springs, too!",
"quests.steam_age.curving_press.title": "Curving Press",
"quests.steam_age.curving_press.subtitle": "ULV Extruder",
"quests.steam_age.curving_press.subtitle": "Just as niche as the LV Extruder",
"quests.steam_age.curving_press.desc": "The &3Curving Press&r can do all the same recipes as an LV Extruder. Unfortunately, neither can do very much, as the extruder is only useful once you get to MV. Still, if you find yourself wanting to craft a lot of tool heads in bulk, this machine can do it for you.",
"quests.steam_age.vibrating_table.title": "Vibrating Table",
"quests.steam_age.vibrating_table.subtitle": "ULV Sifter",
"quests.steam_age.vibrating_table.subtitle": "Identical to the LV Sifter",
"quests.steam_age.vibrating_table.desc": "The &3Vibrating Table&r can process gem ores (including coal) in a different way, yielding much more output than anything else you have access to right now. As a bonus, it can also process any gravel ore deposits you may still have. No more sluicing!",
"quests.steam_age.lathe.title": "Lathe",
"quests.steam_age.lathe.subtitle": "ULV... Lathe",
"quests.steam_age.lathe.subtitle": "You're not gonna believe which LV machine this is the same as",
"quests.steam_age.lathe.desc": "The &3Lathe&r can automatically turn a single ingot into two rods, and single bolts into screws. If you're making a lot of those, and you will be, this machine will be a good investment.",
"quests.steam_age.steel_saw.title": "Steel Mechanical Saw",
"quests.steam_age.steel_saw.subtitle": "ULV Cutter",
"quests.steam_age.steel_saw.desc": "It's an upgrade to your Basic Mechanical Saw that can also process some metal recipes, like turning rods into four bolts, and cutting blocks into plates. These recipes will all require a fluid to work, but you only have access to water at the moment.",
"quests.steam_age.steel_saw.subtitle": "A stonecutter and LV Cutter in one!",
"quests.steam_age.steel_saw.desc": "It's an upgrade to your Basic Mechanical Saw that can also process some metal recipes, like turning rods into four bolts, and cutting blocks into plates. These recipes will all require a fluid to work, but you can just use water for now.",
"quests.steam_age.rolling_mill.title": "Rolling Mill",
"quests.steam_age.rolling_mill.subtitle": "ULV Bender",
"quests.steam_age.rolling_mill.desc.1": "Of all the ULV machines you could make, the &3Rolling Mill&r is one of the best, for the simple reason that it makes single plates out of single ingots. It can also make thin sheets cheaper than by hand, as a bonus!",
"quests.steam_age.rolling_mill.subtitle": "The other half of the LV Bender",
"quests.steam_age.rolling_mill.desc.1": "Of all the steam age machines you could make, the &3Rolling Mill&r is one of the best, for the simple reason that it makes single plates out of single ingots. It can also make thin sheets cheaper than by hand, as a bonus!",
"quests.steam_age.rolling_mill.desc.2": "&l&3Lore:&r &oThis machine existed in older versions of TFG, but it made rods instead of plates, and your best plate-making option before the LV bender had a 20% chance of failure!&r",
"quests.steam_age.steel_mixer.title": "Steel Mechanical Mixer",
"quests.steam_age.steel_mixer.subtitle": "ULV Mixer",
"quests.steam_age.steel_mixer.desc": "The &3Steel Mechanical Mixer&r is the other best ULV machine you can make -- it can mix together your colored steel dusts at a much more efficient rate than the Crucible! It can do a large number of other recipes too, including some that involve gases... don't think about it too much.\n\nYou can use either a Charcoal Forge or a Blaze Burner for the recipes that require heating, and a Mechanical Arm can automatically refuel either.",
"quests.steam_age.steel_mixer.subtitle": "An earlier LV Mixer",
"quests.steam_age.steel_mixer.desc": "The &3Steel Mechanical Mixer&r is the other best steam age machine you can make -- it can mix together your colored steel dusts at a much more efficient rate than the Crucible! It can do a large number of other recipes too, including some that involve gases... don't think about it too much.\n\nYou can use either a Charcoal Forge or a Blaze Burner for the recipes that require heating, and a Mechanical Arm can automatically refuel either.",
"quests.steam_age.potin.title": "Potin Seller...",
"quests.steam_age.potin.subtitle": "...I'm going into battle, and I need only your finest Potin.",
"quests.steam_age.potin.desc.1": "&dPotin Fluid Pipes&r have a &avery high throughput&r for the material tier and cost. You may want to look into making some of these to aid with fluid logistics.\n\nTo get &dPotin&r, you should start by crafting its &eDust&r form.\n\nThis quest calls for either the small or normal pipe. Get either size to complete it.",
@ -1034,7 +1046,7 @@
"quests.steam_age.lv_circuit.desc": "The recipe for these may look intimidating at first, but if you've spent an appropriate amount of time in the Steam Age, everything should be easily automatable. You'll be making a lot of these for a while, but your next few electic machines will help make them even cheaper until you get your hands on a Circuit Assembler late into LV.",
"quests.steam_age.what_next.title": "What Next?",
"quests.steam_age.what_next.subtitle": "Y'know, besides \"more GregTech\"",
"quests.steam_age.what_next.desc": "If you rushed straight here, we suggest machines like the LV Bender, Wiremill, or Mixer first.\nOtherwise, if you made the ULV machines below, we suggest the Assembler, Arc Furnace, Chemical Reactor, or Polarizer.",
"quests.steam_age.what_next.desc": "If you rushed straight here, we suggest machines like the LV Bender, Wiremill, or Mixer first.\nOtherwise, if you made the kinetic machines below, we suggest the Assembler, Arc Furnace, Chemical Reactor, or Polarizer.",
"quests.steam_age.alternator.title": "Alternators",
"quests.steam_age.alternator.subtitle": "Turning stress into power",
"quests.steam_age.alternator.desc.1": "If you've got a big steam age set up, you probably don't want to immediately scrap it all just to go back to some boilers and LV Steam Turbines. Instead, the &3Alternator&r will convert the SU from your steam engines into electricity. Each steam engine + alternator should give you 1A of LV! Unfortunately, alternators convert stress into a different electricity system than the one GregTech uses, so you'll need an Energy Converter to turn it into usable LV energy.",
@ -1231,114 +1243,117 @@
"quests.metal_age.copper_anvil.subtitle": "It's all been building up to this!",
"quests.metal_age.copper_anvil.desc": "Congratulations! You've officially finished the Stone Age and entered the Metallurgy Age! With your Copper Anvil, the next step is to climb up the Anvil Tiers, and each time you unlock a new Tier, new tools and possibilities will be available to make your life progressively easier. Now go and become a master smith!",
"quests.tfg": "TerraFirmaGreg - Modern",
"quests.tfg.subtitle": "Welcome to TerraFirmaGreg - Modern!",
"quests.tfg.welcome.title": "Welcome to TerraFirmaGreg - Modern!",
"quests.tfg.subtitle": "Welcome to TerraFirmaGreg!",
"quests.tfg.welcome.title": "Welcome to TerraFirmaGreg!",
"quests.tfg.welcome.subtitle": "Survival Modpack As It Should've Been",
"quests.tfg.welcome.desc": "Thank you for playing TerraFirmaGreg Modern!\n\nIn TerraFirmaGreg - Modern, you will be put to the test to take control of a world hostile to unprepared life, and bring it to an Industrial Wonderland. Start from humble beginning picking up rocks, and end traversing interstellar space!",
"quests.tfg.welcome.desc": "Thank you for starting TerraFirmaGreg Modern!\n\nIn this modpack, you will be put to the task of taking control of untouched wilderness and turning it to an industrial wonderland. Start from humble beginning picking up rocks, and end while traversing interstellar space!",
"quests.tfg.create_team.title": "How to create a team?",
"quests.tfg.create_team.subtitle": "Do you play with friends? Surprising...",
"quests.tfg.create_team.desc": "You can create a team to complete quests together. To do this, open your inventory, then in the upper left corner select the button where 3 colorful people are drawn, then an interface will open in which you can create a team, use the §aCreate a team§r button, then give it a name and possibly some other parameters, after successful creating a team, you can invite other players to it using the plus button in the green circle in the upper right corner, in the future your quests will be synchronized and any team member will be able to complete them. Good luck!",
"quests.tfg.create_team.subtitle": "Do you play with friends?",
"quests.tfg.create_team.desc": "You can create a team to complete quests together. To do this, open your inventory, then in the upper left corner select the button where 3 colorful people are drawn, then an interface will open in which you can create a team. Click the §aCreate a team§r button, then give it a name and possibly some other parameters, and after successfully creating a team, you can invite other players to it using the plus button in the green circle in the upper right corner. From this point onwards, your quests will be synchronized and any team member will be able to complete them. Good luck!",
"quests.tfg.capture_territory.title": "How to capture territory?",
"quests.tfg.capture_territory.subtitle": "Or how to load chunks in your territory",
"quests.tfg.capture_territory.desc": "You can private the chunks you want if you play on a server, for example. How to do it? Use the button to open the mini-map, then select the chunks that you want to capture, then by clicking on the right mouse button, select §aCapture territory§r from the list, it seems to be the third item from the bottom, voila, you have captured the territory. Attention: your teammates will be able to break blocks in your region, which is logical.",
"quests.tfg.capture_territory.subtitle": "And how to load chunks in your territory",
"quests.tfg.capture_territory.desc": "If you play on a server, you might want to claim your territory so other players can't interfere. Use the Open Map key (default \"M\") to open the map, then right-click the chunk you want to claim, and select Claim Chunk. There is a limit to this, so you can't claim everything. You can right-click on a chunk again to Forceload (aka \"chunk load\") it. Claiming chunks will include your whole team, if you're using one.",
"quests.tfg.field_guide.title": "Important information about quests!",
"quests.tfg.field_guide.subtitle": "I need to read more?",
"quests.tfg.field_guide.desc": "The quests are still in development, more descriptions and more will be added in the future. You can partially use the TFC book to find the information you need. &cFull quests in each branch with translation will appear in update 1.0.0, since now the developers have very little time.&r\n\nRemember that both JEI and the Field Guide are your friends, and you should verify the information in the field guide alongside the quests.\n\nIf you ever loose your Field Guide, you can always access it in your inventory.",
"quests.tfg.field_guide.desc": "The quests are still in development, and we're always working on improving them! A lot of information about specific mechanics are also in your Field Guide, accessible via the Book tab in your inventory.\n\nRemember that both JEI and the Field Guide are your friends, as not everything will be explained through quests.",
"quests.tfg.quest_shapes.title": "Information about Quest Shapes.",
"quests.tfg.quest_shapes.subtitle": "Turns out shapes help understand these quests.",
"quests.tfg.quest_shapes.desc": "In TerraFirmaGreg most of the custom quests follow a strict set of rules regarding how they look, predominantly their shapes and sizes.\n\n&lGears&r: Gear shaped quests are the biggest in each quest category, they represent the Start and End of questlines. You can consider these as major end goals.\n&lHearts&r: Heart shaped quests are &ooptional&r, they're not necesary for progression and mostly serve for completionist type players. Some optional quests may be a bit silly...\n&lOctagons:&r Octagons are important marks on certain quests, they represent milestones.\n&lSizes:&r The bigger the size of the icon, the more important it is in the overall progression.",
"quests.tfg.quest_shapes.desc": "&lGears&r: Gear shaped quests are the biggest in each quest category, they represent the Start and End of questlines. You can consider these as major end goals.\n\n&lHearts&r: Heart shaped quests are &ooptional&r, they're not necesary for progression and mostly serve for completionist type players. Some optional quests may be a bit silly...\n\n&lOctagons:&r Octagons are important marks on certain quests, they represent milestones.",
"quests.tfg_tips": "TerraFirmaGreg Tips",
"quests.tfg_tips.subtitle": "Tips and Tricks to make your life slightly easier.",
"quests.tfg_tips.begining.title": "Tips and Tricks be here!",
"quests.tfg_tips.begining.subtitle": "Dear god thats a lot of branches...",
"quests.tfg_tips.begining.desc": "This questline looks into giving you a lot, &o(and i do mean a lot)&r of tips to make your survival situation a bit easier.\n\nEach teeth of this Gear represents a major mod in TerraFirmaGreg, with tips on how to use the mod and get the most out of it. ALL the quests here are not necesary for progression, although some &omay&r be locked behind main questline tasks.",
"quests.tfg_tips.begining.desc": "This quest chapter gives you a lot, &o(and we do mean a lot)&r of tips on how to survive and thrive.\n\nEach branch of this quest tree represents a major mod in TerraFirmaGreg, with tips on how to use the mod and get the most out of it. None of the quests here are necesary for progression, although some &omay&r be locked behind main questline tasks.",
"quests.tfg_tips.portable_storage.title": "Portable Storage Solutions",
"quests.tfg_tips.portable_storage.subtitle": "Turns out your inventory is quite small.",
"quests.tfg_tips.portable_storage.desc": "In TerraFirmaGreg you may end up exploring a &olot&r of land. During your exploration you're bound to end up picking up a lot of junk. This quest branch looks into making inventory management on the go easier.",
"quests.tfg_tips.portable_storage.desc": "In your travels, you may end up exploring a &olot&r, and you're bound to end up picking up a lot of junk. This quest branch provides several options for expanding your on-the-go inventory.",
"quests.tfg_tips.toolbelt.title": "Toolbelt and Pouches",
"quests.tfg_tips.toolbelt.subtitle": "Those tools sure take a lot of space, lets fix that.",
"quests.tfg_tips.toolbelt.desc": "With a Toolbelt, you'll be able to easily manage multiple tools in a single inventory slot, simply swap them around and store them in your toolbelt when necesary! By default it contains 2 slots, but more can be added by crafting &oBelt Pouches&r.\n\nYou're going to need to know how to work Leather and some intermediary metalworking knowledge to craft these items. Check the dependencies!",
"quests.tfg_tips.toolbelt.subtitle": "Those tools sure take up a lot of space, lets fix that!",
"quests.tfg_tips.toolbelt.desc": "With a Toolbelt, you'll be able to easily manage multiple tools without taking up an inventory slot! This handy item can go into a special toolbelt slot in your Curios menu, and you can insert and retrieve tools with a keybind. It starts with only two slots, but more can be added by crafting &oBelt Pouches&r.\n\nDue to a bug with this mod, it's not possible to upgrade your pouch if it's been dyed or has tools inside.",
"quests.tfg_tips.maxed_out_toolbelt.title": "ALL THE TOOLS",
"quests.tfg_tips.maxed_out_toolbelt.subtitle": "That belt must be very heavy at this point...",
"quests.tfg_tips.maxed_out_toolbelt.desc": "A toolbelt can hold 7 extra pouches, thats 7 extra tools in one belt!",
"quests.tfg_tips.maxed_out_toolbelt.desc": "A toolbelt can hold 7 extra pouches, thats 9 tools in one belt!",
"quests.tfg_tips.maxed_out_toolbelt.task": "Obtain a maxed out toolbelt.",
"quests.tfg_tips.vessels.title": "Large and Small Vessels",
"quests.tfg_tips.vessels.subtitle": "Clay can be quite useful.",
"quests.tfg_tips.vessels.desc": "With some Clay, Wood and Time you can create Vessels, Small vessels have 4 inventory slots while Large Vessels have 9! The Vessel not only lets you store items, but its a great way to melt basic metals to create alloys.",
"quests.tfg_tips.vessels.desc": "With some Clay, Fire, and Time you can create Vessels. Small vessels have 4 inventory slots while Large Vessels have 9! The Small Vessel is not just for item storage, but is also necessary for melting basic metals. The Large Vessel is heavier to carry, but is great for preserving food.",
"quests.tfg_tips.portable_cells.title": "Portable Item and Fluid Cells",
"quests.tfg_tips.portable_cells.subtitle": "Isn't this too advanced for this?",
"quests.tfg_tips.portable_cells.desc": "With Applied Energistics 2, you can create Portable Item and Fluid Cells, which allows you to store large amounts of items as pure raw data. Sadly, Applied Energistics 2 is locked behind High Voltage, so it might be a while until you can create these.",
"quests.tfg_tips.portable_cells.subtitle": "Isn't this too advanced?",
"quests.tfg_tips.portable_cells.desc": "With Applied Energistics 2, you can create Portable Item and Fluid Cells, which allow you to store large amounts of items and fluids as pure raw data. Sadly, Applied Energistics 2 is locked behind High Voltage, so it might be a while until you can create these.",
"quests.tfg_tips.256m_portable_cells.title": "MEGA Portable Item and Fluid Cells",
"quests.tfg_tips.256m_portable_cells.subtitle": "When Kilobytes isnt enough.",
"quests.tfg_tips.256m_portable_cells.desc": "With MEGA Cells, you can create well, Mega Cells! These cells have LUDICROUS amounts of data storage and as such can be used to store INSANE amounts of items.\n\nFun Fact! A single 256M Portable Item Cell can store up to &lOne Billion&r of a single item type! That's enough to fill over 58 thousand chests!",
"quests.tfg_tips.256m_portable_cells.subtitle": "When Kilobytes aren't enough",
"quests.tfg_tips.256m_portable_cells.desc": "With MEGA Cells, you can create cells with LUDICROUS amounts of data storage!\n\nFun Fact! A single 256M Portable Item Cell can store up to &lOne Billion&r of a single item type! That's enough to fill over 58 thousand chests!",
"quests.tfg_tips.backpack_materials.title": "Materials for a Backpack",
"quests.tfg_tips.backpack_materials.subtitle": "Maps not included",
"quests.tfg_tips.backpack_materials.desc": "A Sophisticated Backpack, as the name suggests, its a backpack that can be used to store items. Not only can it store items, but it can also store items that are &ltoo big&r for regular chests... Don't ask how that works.\n\nAlso, Sophisticated Backpacks can be upgraded to both increase their capacity and add extra functionalities to them!",
"quests.tfg_tips.backpack_materials.subtitle": "Sleeping bag not included",
"quests.tfg_tips.backpack_materials.desc": "A Sophisticated Backpack is the primary way to expand your portable inventory size. The first one will double your normal inventory, and further upgrades increase it even more! It also comes with a wide variety of upgrades to add even more functionality, and different parts of it can be dyed different colors!",
"quests.tfg_tips.first_backpack.title": "Your First Backpack",
"quests.tfg_tips.first_backpack.subtitle": "No, the map won't magically appear.",
"quests.tfg_tips.first_backpack.desc": "This is your First Sophisticated Backpack. It has a total of 27 inventory slots and 1 slot of a regular backpack upgrade. Check the two branches after this to learn about inventory upgrades and backpack upgrades.",
"quests.tfg_tips.first_backpack.desc": "This is your first Sophisticated Backpack. It has a total of 27 inventory slots and can hold one upgrade. Check the two branches after this to learn about inventory and backpack upgrades.",
"quests.tfg_tips.red_steel_backpack.title": "Red Steel Backpack",
"quests.tfg_tips.red_steel_backpack.subtitle": "No, Blue Steel Backpacks don't exist, sorry!",
"quests.tfg_tips.red_steel_backpack.desc": "A Red Steel Backpack is your first proper backpack inventory upgrade, It has a total slot count of 54 and contains 2 slots for regular backpack upgrades such as Crafting or Void upgrades.",
"quests.tfg_tips.red_steel_backpack.subtitle": "Cooler than a Blue Steel Backpack",
"quests.tfg_tips.red_steel_backpack.desc": "A Red Steel Backpack is your first proper backpack inventory upgrade. It has a total slot count of 54 and can hold two upgrades.",
"quests.tfg_tips.aluminium_backpack.title": "Aluminium Steel Backpack",
"quests.tfg_tips.aluminium_backpack.subtitle": "Is it Aluminum or Aluminium?",
"quests.tfg_tips.aluminium_backpack.desc": "An Aluminium Backpack is your second proper backpack inventory upgrade, It has a total slot count of 81 and contains 3 slots for regular backpack upgrades such as Crafting or Void upgrades.",
"quests.tfg_tips.aluminium_backpack.desc": "An Aluminium Backpack is your second proper backpack inventory upgrade. It has a total slot count of 81 and can hold three upgrades.",
"quests.tfg_tips.titanium_backpack.title": "Titanium Backpack",
"quests.tfg_tips.titanium_backpack.subtitle": "Almost titanic.",
"quests.tfg_tips.titanium_backpack.desc": "A Titanium Backpack is your third proper backpack inventory upgrade, It has a total slot count of 108 and contains 5 slots for regular backpack upgrades such as Crafting or Void upgrades.",
"quests.tfg_tips.titanium_backpack.desc": "A Titanium Backpack is your third proper backpack inventory upgrade. It has a total slot count of 108 and can hold five upgrades.",
"quests.tfg_tips.tungstensteel_backpack.title": "Tungstensteel Backpack",
"quests.tfg_tips.tungstensteel_backpack.subtitle": "The ultimate backpack.",
"quests.tfg_tips.tungstensteel_backpack.desc": "The Tungstensteel Backpack is the final backpack inventory upgrade, It has a total slot count of 120 and contains 7 slots for regular backpack upgrades such as Crafting or Void upgrades.",
"quests.tfg_tips.tungstensteel_backpack.desc": "The Tungstensteel Backpack is the final backpack inventory upgrade. It has a whopping slot count of 120 and can hold seven upgrades!",
"quests.tfg_tips.backpack_upgrades.title": "Backpack Upgrades",
"quests.tfg_tips.backpack_upgrades.subtitle": "When Inventory Slots just don't cut it.",
"quests.tfg_tips.backpack_upgrades.desc": "Backpack Upgrades can be installed in your Sophisticated Backpacks, giving your backpack new abilities and utilities.\n\nYou'll need a Blast Furnace to be able to craft these upgrade bases.",
"quests.tfg_tips.backpack_upgrades.subtitle": "More than just a backpack",
"quests.tfg_tips.backpack_upgrades.desc": "Backpack Upgrades can be installed in your Sophisticated Backpacks, giving your backpack new abilities and utilities.\n\nYou'll need access to Steel to be able to craft these upgrade bases.",
"quests.tfg_tips.crafting_upgrade.title": "Crafting Upgrade",
"quests.tfg_tips.crafting_upgrade.subtitle": "A Workbench on the go!",
"quests.tfg_tips.crafting_upgrade.desc": "The Crafting Upgrade lets you carry a WorkBench in your backpack wherever you go, its pretty much mandatory.",
"quests.tfg_tips.crafting_upgrade.desc": "The Crafting Upgrade lets you carry a Workbench in your backpack wherever you go. You'll wonder how you lived without it!",
"quests.tfg_tips.advanced_upgrades.title": "Advanced Upgrades",
"quests.tfg_tips.advanced_upgrades.subtitle": "When the regular just doesn't cut it.",
"quests.tfg_tips.advanced_upgrades.desc": "Certain upgrades for your backpack can be upgraded to advanced upgrades. Advanced upgrades contain more utilities overall and improve the functionality of the original version. Try crafting a Filter and Advnaced Filter upgrade to complete this quest.",
"quests.tfg_tips.advanced_upgrades.subtitle": "Upgrades but yellow",
"quests.tfg_tips.advanced_upgrades.desc": "Certain upgrades for your backpack can be upgraded to advanced upgrades. Advanced upgrades have more functionality than their base versions, such as allowing extra filter types or being more configurable. Try crafting a Filter and Advanaced Filter upgrade to complete this quest.",
"quests.tfg_tips.all_backpack_upgrades.title": "ALL THE UPGRADES",
"quests.tfg_tips.all_backpack_upgrades.subtitle": "You can't even fit all of these in a single backpack tho...",
"quests.tfg_tips.all_backpack_upgrades.subtitle": "You can't even fit all of these in a single backpack...",
"quests.tfg_tips.all_backpack_upgrades.desc": "These are all the backpack upgrades Sophisticated Backpacks have to offer. Can you craft them all?",
"quests.tfg_tips.gt.title": "GregTech",
"quests.tfg_tips.gt.subtitle": "One third of the modpack's name, after all.",
"quests.tfg_tips.gt.desc": "GregTech can be quite intimidating, this quest branch should help you out.",
"quests.tfg_tips.terrafirmacraft.title": "TerraFirmaCraft",
"quests.tfg_tips.terrafirmacraft.subtitle": "Its two thirds of the modpack's name after all.",
"quests.tfg_tips.terrafirmacraft.desc": "TerraFirmaCraft is one of the main mods for TerraFirmaGreg. This branch mostly helps out in letting you know about specific &lAdd-Ons&r the modpack has. Such as Aged Alcohol and Canes.",
"quests.tfg_tips.terrafirmacraft.title": "TerraFirmaCraft Addons",
"quests.tfg_tips.terrafirmacraft.subtitle": "The other two thirds of the modpack's name",
"quests.tfg_tips.terrafirmacraft.desc": "TerraFirmaCraft is one of the main mods for TerraFirmaGreg. This branch mostly focuses on some of its survival features and other &lAdd-Ons&r the modpack has, such as Aged Alcohol and Canes.",
"quests.tfg_tips.cane.title": "Walking Canes",
"quests.tfg_tips.cane.subtitle": "You can even whack people with it!",
"quests.tfg_tips.cane.desc": "A Walking Cane allows you to completely overcome any walk-thru block's slow down effects, such as snow and leaf litters. As long as you're holding one in one of your hands that is.",
"quests.tfg_tips.cane.subtitle": "You can even whack people with them!",
"quests.tfg_tips.cane.desc": "A Walking Cane allows you to completely ignore any block that slows your movement, such as snow and leaf litter, as long as you're carrying it in your main or off-hand.",
"quests.tfg_tips.cane.task": "Any Cane",
"quests.tfg_tips.glassblowing.title": "Glassblowing",
"quests.tfg_tips.glassblowing.subtitle": "Realistic Glaswsworking!",
"quests.tfg_tips.glassblowing.desc": "In TerraFirmaCraft, to work with Glass items you need to create a Glassblowing station.\n\nThe Glassblowing station will require some sort of Blowpipe, and a small platform made out of Kaolin Clay to pour the molten glass. You'll need this station to be able to achieve Low Voltage, So it's a good idea to start working on this as soon as possible.\n\nTip: A BlowPipe can be used as a Tong to avoid burning yourself when picking up hot items, handy!",
"quests.tfg_tips.glassblowing.task.1": "At least 9x Kaolin Clay Blocks.",
"quests.tfg_tips.glassblowing.desc": "In TerraFirmaCraft, to create any sort of glass pane or block, you'll need to create a Glassblowing station.\n\nGlassblowing will require some sort of Blowpipe, and a small platform made out of glassblowing blocks to pour the molten glass. Check out the field guide for more information on the shape of the platform and what blocks are valid to use. You'll have access to glassblowing as soon as you can shape Brass!",
"quests.tfg_tips.glassblowing.task.1": "Any glassblowing blocks.",
"quests.tfg_tips.glassblowing_tools.title": "Glassblowing Tools",
"quests.tfg_tips.glassblowing_tools.subtitle": "Tools for the Trade.",
"quests.tfg_tips.glassblowing_tools.desc": "To work with glass you'll need different tools for each task.\n\n&lPaddle&r: Performs flatten, Mainly used for creating Glass Panes and Lamp Glasses.\n&lGem Saw&r: A saw utilizing precious gems which can cut thru the glass. Not only is this used in recipes, but you can use it to break glass blocks and you'll get the block back instead of shattering the block!\n&lJacks&r: Used to pinch glasses, mostly used for containers such as glass bottles.\n&lWool Cloth&r: Used for rolling glass, used for lenses and jars.",
"quests.tfg_tips.glassblowing_tools.subtitle": "Tools of the Trade",
"quests.tfg_tips.glassblowing_tools.desc": "To work with glass, you'll need different tools for each task.\n\n&lPaddle&r: Performs flatten, Mainly used for creating Glass Panes and Lamp Glasses.\n&lGem Saw&r: A saw that can safely cut glass without breaking it. This isn't just used in recipes, but can be used to pick up glass and gem buds in-world as well!\n&lJacks&r: Used to pinch glass, mostly used for containers such as glass bottles.\n&lWool Cloth&r: Used for rolling glass, used for lenses and jars.",
"quests.tfg_tips.glass_blocks.title": "Glass Blocks",
"quests.tfg_tips.glass_blocks.subtitle": "Get yourself some windows.",
"quests.tfg_tips.glass_blocks.desc": "You may have noticed that depending with what type of sand you use to create the glass batch, your glasses will have different colors. Check out the Field Guide's section on Glassblowing to learn different ways to make specific colors. In the future you'll be able to use liquids such as Chlorine to bleach any kind of glass into regular glass.\n\nTip: If you're looking to make a lot of glass dust, try using glass panes and then macerating them, with a big enough Kaolin Clay platform you'll end up getting far more glass dust than what you'd obtain via just macerating a single block.",
"quests.tfg_tips.glass_blocks.desc": "Depending on the type of sand you use to create the glass batch, your glass will have different colors. Check out the Field Guide's section on Glassblowing to learn different ways to make specific colors. Later on, you'll be able to use chemicals to dye glass more easily.\n\nTip: If you're looking to make a lot of Glass Blocks and have access to an Alloy Smelter, it's more efficient to make glass panes and then macerate them, since one batch can make up to 16 at a time!",
"quests.tfg_tips.lamps.title": "Lamps",
"quests.tfg_tips.lamps.subtitle": "These are pretty.",
"quests.tfg_tips.lamps.desc": "Just like in regular Minecraft, Lamps can be hung down from the ceiling or placed on top of a block and give out a moderate amount of light. Lamps consume different kinds of fluid to keep themselves lit, some fuels last indefinetly but require particularly sturdy lamps.",
"quests.tfg_tips.lamps.desc": "Just like in regular Minecraft, Lamps can be hung down from the ceiling or placed on top of a block and give out light. Lamps consume different kinds of fuels to keep themselves lit. Some fuels can last indefinitely, but require particularly sturdy lamps.",
"quests.tfg_tips.creosote.title": "Lamp Fuel: Creosote",
"quests.tfg_tips.creosote.subtitle": "If you have a bunch of it laying around...",
"quests.tfg_tips.creosote.desc": "Creosote from GregTech can be utilized as a lamp fuel, a full lamp of the stuff lasts for 1 month and 2 days.",
"quests.tfg_tips.creosote.subtitle": "If you have a bunch of it lying around...",
"quests.tfg_tips.creosote.desc": "Creosote can be used as a lamp fuel, but a full lamp of the stuff only lasts for 10 days.",
"quests.tfg_tips.creosote.task": "A Bucket of Creosote",
"quests.tfg_tips.tallow.title": "Lamp Fuel: Tallow",
"quests.tfg_tips.tallow.subtitle": "Animal Fat",
"quests.tfg_tips.tallow.desc": "Tallow can be utilized as lamp fuel, a full lamp of the stuff lasts for 2 months and 2 days.",
"quests.tfg_tips.tallow.desc": "Tallow can be used as lamp fuel. A full lamp of it will last 18 days.",
"quests.tfg_tips.tallow.task": "A Bucket of Tallow",
"quests.tfg_tips.olive_oil.title": "Lamp Fuel: Olive Oil",
"quests.tfg_tips.olive_oil.subtitle": "Lilbito'liveoil",
"quests.tfg_tips.olive_oil.desc": "Olive Oil can be utilized as lamp fuel, while a bit expensive and tedious to craft, a full lamp of the stuff lasts for 10 months and 3 days.",
"quests.tfg_tips.olive_oil.desc": "Olive Oil can be used as lamp fuel, and while it's more difficult to craft than the others, a full lamp of it lasts for 83 days!",
"quests.tfg_tips.olive_oil.task": "A Bucket of Olive Oil",
"quests.tfg_tips.lava_lamp.title": "Lamp Fuel: Lava?",
"quests.tfg_tips.lava_lamp.subtitle": "Not as mesmerizing as the real deal",
"quests.tfg_tips.lava_lamp.desc": "With a very heat resistant metal such as Blue Steel, you can create a Blue Steel Lamp. The Blue Steel Lamp can be filled with Lava, giving you an indefinite source of light.\n\nCareful handling a filled lava lamp, its very hot.",
"quests.tfg_tips.lava_lamp.desc": "With the very heat resistant metal known as Blue Steel, you can create a Blue Steel Lamp. The Blue Steel Lamp can be filled with Lava, giving you an indefinite source of light.\n\nCareful handling a filled lava lamp, it's very hot.",
"quests.tfg_tips.glowstone_lamp.title": "Lamp Fuel: Glowstone",
"quests.tfg_tips.glowstone_lamp.subtitle": "The best lamp fuel",
"quests.tfg_tips.glowstone_lamp.desc": "You'll need access to electricity in order to liquefy glowstone, but if you like the look of the lamps, you can use Liquid Glowstone to fuel them indefinitely. This can be used in any of the lamp types, and isn't hot either!",
"quests.tfg_tips.charcoal_pile.title": "Charcoal Pile",
"quests.tfg_tips.charcoal_pile.subtitle": "You're going to need this",
"quests.tfg_tips.charcoal_pile.desc.1": "Charcoal Piles are a multiblock structure that can be built in the early game to generate large quantities of Charcoal. You're going to need &oa lot&r of Charcoal if you want to succeed in TerraFirmaGreg, as it's key for working with metals, creating Wrought Iron and creating Steel.\n\nBegin by digging down a pit.",

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 618 B

View file

@ -1,25 +0,0 @@
{
"type": "minecraft:entity",
"pools": [
{
"name": "loot_pool",
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "gtceu:raw_graphite",
"functions": [
{
"function": "minecraft:set_count",
"count": {
"type": "minecraft:uniform",
"min": 2,
"max": 6
}
}
]
}
]
}
]
}

View file

@ -1,25 +0,0 @@
{
"type": "minecraft:entity",
"pools": [
{
"name": "loot_pool",
"rolls": 1,
"entries": [
{
"type": "minecraft:item",
"name": "tfc:kaolin_clay",
"functions": [
{
"function": "minecraft:set_count",
"count": {
"type": "minecraft:uniform",
"min": 2,
"max": 6
}
}
]
}
]
}
]
}

View file

@ -21,8 +21,8 @@
"xz_radius": {
"type": "minecraft:uniform",
"value": {
"max_inclusive": 4,
"min_inclusive": 2
"max_inclusive": 5,
"min_inclusive": 3
}
}
}

View file

@ -17,12 +17,12 @@
"feature": "tfg:nether/terrain/clay_patch_kaolin_vegetation",
"placement": []
},
"vertical_range": 2,
"vertical_range": 3,
"xz_radius": {
"type": "minecraft:uniform",
"value": {
"max_inclusive": 5,
"min_inclusive": 3
"max_inclusive": 6,
"min_inclusive": 4
}
}
}

View file

@ -2,6 +2,8 @@
const registerAdvancedPeripheralsRecipes = (event) => {
registerAdvancedPeripheralsRecyclingRecipes(event);
event.remove({ mod: 'advancedperipherals' });
//Chat Box

View file

@ -73,6 +73,13 @@ const registerAFCRecipes = (event) => {
.bonus(false)
.id('afc:anvil/tree_tap')
event.recipes.gtceu.assembler('afc:tree_tap')
.itemInputs('#forge:ingots/copper')
.circuit(3)
.itemOutputs('afc:tree_tap')
.duration(50)
.EUt(7)
// TreeTap Heating
event.recipes.tfc.heating('afc:tree_tap', 1080)
.resultFluid(Fluid.of('gtceu:copper', 144))

View file

@ -1,6 +1,8 @@
// priority: 0
const registerCccBridgeRecipes = (event) => {
registerCccBridgeRecyclingRecipes(event);
event.remove({not: [
{ id: 'cccbridge:to_target_block' },

View file

@ -2,6 +2,8 @@
const registerComputerCraftRecipes = (event) => {
registerComputerCraftRecyclingRecipes(event);
// Удаление рецептов мода
event.remove({ not: [
{ id: 'computercraft:printed_pages' },

View file

@ -679,7 +679,7 @@ const registerCreateRecipes = (event) => {
B: '#forge:foils/rubber',
C: '#forge:tools/wrenches',
D: '#forge:tools/knives',
E: 'create:electron_tubes'
E: 'create:electron_tube'
}).id('tfg:create/shaped/brass_funnel')
event.shaped('2x create:brass_funnel', [
@ -691,7 +691,7 @@ const registerCreateRecipes = (event) => {
B: '#forge:leather',
C: '#forge:tools/wrenches',
D: '#forge:tools/knives',
E: 'create:electron_tubes'
E: 'create:electron_tube'
}).id('tfg:create/shaped/brass_funnel_leather')
// Тунель из железа
@ -1609,7 +1609,7 @@ const registerCreateRecipes = (event) => {
A: 'create:andesite_casing',
B: '#minecraft:plates/wrought_iron',
C: 'tfc:glue',
D: '#tfg:cogwheels',
D: '#tfg:small_cogwheels',
E: '#forge:tools/wrenches'
}).id('tfg:create/shaped/mechanical_bearing')

View file

@ -47,6 +47,7 @@ const registerFirmaLifeRecipes = (event) => {
event.remove({ id: 'firmalife:heating/metal/chromium_block_stairs' })
// - Stainless Steel
event.remove({ id: 'firmalife:alloy/stainless_steel' })
// Ingot
event.remove({ id: 'firmalife:casting/stainless_steel_ingot' })
@ -67,10 +68,10 @@ const registerFirmaLifeRecipes = (event) => {
// Rod
event.remove({ id: 'firmalife:anvil/stainless_steel_rod' })
event.remove({ id: 'firmalife:heating/metal/stainless_steel_rod' })
event.remove({ id: 'firmalife:heating/stainless_steel_rod' })
// Jar lid
event.remove({ id: 'firmalife:heating/metal/stainless_steel_jar_lid' })
event.remove({ id: 'firmalife:heating/stainless_steel_jar_lid' })
// Plated Blocks
event.remove({ id: 'firmalife:crafting/crafting/metal/block/stainless_steel' })
@ -111,13 +112,32 @@ const registerFirmaLifeRecipes = (event) => {
}).id('firmalife:crafting/vat')
// Jar Lid
event.recipes.gtceu.assembler(`tfg:firmalife/jar_lid`)
.itemInputs('#forge:ingots/tin')
.circuit(7)
.itemOutputs('16x tfc:jar_lid')
event.recipes.gtceu.fluid_solidifier(`tfg:firmalife/jar_lid`)
.inputFluids(Fluid.of('gtceu:tin', 9))
.notConsumable('gtceu:cylinder_casting_mold')
.itemOutputs('tfc:jar_lid')
.duration(50)
.EUt(7)
event.recipes.gtceu.extractor('tfc:jar_lid_extraction')
.itemInputs('tfc:jar_lid')
.outputFluids(Fluid.of('gtceu:tin', 9))
.duration(50)
.EUt(2)
event.recipes.gtceu.fluid_solidifier(`firmalife:firmalife/stainless_steel_jar_lid`)
.inputFluids(Fluid.of('gtceu:stainless_steel', 9))
.notConsumable('gtceu:cylinder_casting_mold')
.itemOutputs('firmalife:stainless_steel_jar_lid')
.duration(50)
.EUt(7)
event.recipes.gtceu.extractor('firmalife:stainless_steel_jar_extraction')
.itemInputs('firmalife:stainless_steel_jar_lid')
.outputFluids(Fluid.of('gtceu:stainless_steel', 9))
.duration(50)
.EUt(2)
// Pineapple Fiber
event.recipes.gtceu.assembler(`tfg:firmalife/pineapple_fiber`)
.itemInputs('firmalife:food/pineapple')
@ -774,6 +794,8 @@ const registerFirmaLifeRecipes = (event) => {
// #endregion
// #region Smashed food
event.recipes.gtceu.forge_hammer('firmalife:soybean_paste')
.itemInputs('firmalife:food/dehydrated_soybeans')
.itemOutputs('firmalife:food/soybean_paste')
@ -791,4 +813,13 @@ const registerFirmaLifeRecipes = (event) => {
.itemOutputs('firmalife:food/smashed_white_grapes')
.duration(20)
.EUt(7)
// #endregion
// #region Drying mat alternatives
event.shaped('firmalife:drying_mat', ['AAA'], { A: 'tfc:plant/leafy_kelp' }).id('tfg:shaped/drying_mat_leafy_kelp')
event.shaped('firmalife:drying_mat', ['AAA'], { A: 'tfc:plant/winged_kelp' }).id('tfg:shaped/drying_mat_winged_kelp')
// #endregion
}

View file

@ -252,31 +252,33 @@ function registerGreateRecipes(event) {
F: '#forge:tools/wrenches'
}).id('greate:shaped/aluminium_mechanical_saw')
event.shaped('greate:stainless_steel_mechanical_saw', [
'ABA',
'CDC',
'FE '
], {
A: '#gtceu:circuits/hv',
B: 'gtceu:red_steel_buzz_saw_blade',
C: 'gtceu:hv_electric_motor',
D: 'gtceu:hv_machine_casing',
E: 'greate:stainless_steel_shaft',
F: '#forge:tools/wrenches'
}).id('greate:shaped/stainless_steel_mechanical_saw')
// Removed while we wait for a fix so recipes don't work without being in a Cleanroom - Important for Wafer
// event.shaped('greate:stainless_steel_mechanical_saw', [
// 'ABA',
// 'CDC',
// 'FE '
// ], {
// A: '#gtceu:circuits/hv',
// B: 'gtceu:red_steel_buzz_saw_blade',
// C: 'gtceu:hv_electric_motor',
// D: 'gtceu:hv_machine_casing',
// E: 'greate:stainless_steel_shaft',
// F: '#forge:tools/wrenches'
// }).id('greate:shaped/stainless_steel_mechanical_saw')
event.shaped('greate:titanium_mechanical_saw', [
'ABA',
'CDC',
'FE '
], {
A: '#gtceu:circuits/ev',
B: 'gtceu:ultimet_buzz_saw_blade',
C: 'gtceu:ev_electric_motor',
D: 'gtceu:ev_machine_casing',
E: 'greate:titanium_shaft',
F: '#forge:tools/wrenches'
}).id('greate:shaped/titanium_mechanical_saw')
// event.shaped('greate:titanium_mechanical_saw', [
// 'ABA',
// 'CDC',
// 'FE '
//], {
// A: '#gtceu:circuits/ev',
// B: 'gtceu:ultimet_buzz_saw_blade',
// C: 'gtceu:ev_electric_motor',
// D: 'gtceu:ev_machine_casing',
// E: 'greate:titanium_shaft',
// F: '#forge:tools/wrenches'
//}).id('greate:shaped/titanium_mechanical_saw')
// #endregion
@ -408,4 +410,4 @@ function registerGreateRecipes(event) {
})
// #endregion
}
}

View file

@ -15,9 +15,13 @@ function removeGreateRecipes(event) {
event.remove({ id: 'greate:shapeless/large_stainless_steel_cogwheel_from_little' })
event.remove({ id: 'greate:shapeless/large_titanium_cogwheel_from_little' })
// Until we got a fix from Greate for recipes in a cleanroom
event.remove({ id: 'greate:shaped/stainless_steel_mechanical_saw' })
event.remove({ id: 'greate:shaped/titanium_mechanical_saw' })
event.remove({ id: 'greate:splashing/dough' })
event.remove({ mod: 'greate', type: 'create:deploying' });
event.remove({ mod: 'greate', type: 'create:sequenced_assembly' });
event.remove({ mod: 'greate', type: 'gtceu:assembler' });
}
}

View file

@ -7,6 +7,9 @@
const registerGTCEURecipes = (event) => {
registerGTCEUMetalRecipes(event)
registerGTCEURecyclingRecipes(event)
registerGTCEuTFCMetalsRecipes(event)
registerGTCEuMachineRecipes(event)
removeGTCEURecipes(event)
@ -360,416 +363,6 @@ const registerGTCEURecipes = (event) => {
//#endregion
//#region Выход: Filter Casing
event.shaped('gtceu:filter_casing', [
'AAA',
'BBB',
'CDE'
], {
A: '#tfg:metal_bars',
B: 'gtceu:item_filter',
C: 'gtceu:mv_electric_motor',
D: 'gtceu:steel_frame',
E: '#forge:rotors/steel'
}).id('gtceu:shaped/filter_casing')
//#endregion
//#region Выход: Assembly Line Grating
event.shaped('2x gtceu:assembly_line_grating', [
'ABA',
'ACA',
'ADA'
], {
A: '#tfg:metal_bars',
B: '#forge:rotors/steel',
C: 'gtceu:steel_frame',
D: 'gtceu:mv_electric_motor'
}).id('gtceu:shaped/casing_grate_casing')
//#endregion
//#region Gas Collectors
event.shaped('gtceu:lv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:lv_electric_pump',
D: '#gtceu:circuits/lv',
E: 'gtceu:lv_machine_hull'
}).id('gtceu:shaped/lv_gas_collector')
event.shaped('gtceu:mv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:mv_electric_pump',
D: '#gtceu:circuits/mv',
E: 'gtceu:mv_machine_hull'
}).id('gtceu:shaped/mv_gas_collector')
event.shaped('gtceu:hv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:hv_electric_pump',
D: '#gtceu:circuits/hv',
E: 'gtceu:hv_machine_hull'
}).id('gtceu:shaped/hv_gas_collector')
event.shaped('gtceu:ev_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:ev_electric_pump',
D: '#gtceu:circuits/ev',
E: 'gtceu:ev_machine_hull'
}).id('gtceu:shaped/ev_gas_collector')
event.shaped('gtceu:iv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:iv_electric_pump',
D: '#gtceu:circuits/iv',
E: 'gtceu:iv_machine_hull'
}).id('gtceu:shaped/iv_gas_collector')
event.shaped('gtceu:luv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:luv_electric_pump',
D: '#gtceu:circuits/luv',
E: 'gtceu:luv_machine_hull'
}).id('gtceu:shaped/luv_gas_collector')
event.shaped('gtceu:zpm_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:zpm_electric_pump',
D: '#gtceu:circuits/zpm',
E: 'gtceu:zpm_machine_hull'
}).id('gtceu:shaped/zpm_gas_collector')
event.shaped('gtceu:uv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:uv_electric_pump',
D: '#gtceu:circuits/uv',
E: 'gtceu:uv_machine_hull'
}).id('gtceu:shaped/uv_gas_collector')
//#endregion
//#region Forge Hammers
event.shaped('gtceu:lv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:tin_single_cable',
B: 'gtceu:lv_electric_piston',
C: '#gtceu:circuits/lv',
D: 'gtceu:lv_machine_hull',
E: 'tfc:metal/anvil/steel',
}).id('gtceu:shaped/lv_forge_hammer')
event.shaped('gtceu:mv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:copper_single_cable',
B: 'gtceu:mv_electric_piston',
C: '#gtceu:circuits/mv',
D: 'gtceu:mv_machine_hull',
E: 'tfc:metal/anvil/steel',
}).id('gtceu:shaped/mv_forge_hammer')
event.shaped('gtceu:hv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:gold_single_cable',
B: 'gtceu:hv_electric_piston',
C: '#gtceu:circuits/hv',
D: 'gtceu:hv_machine_hull',
E: 'tfc:metal/anvil/steel',
}).id('gtceu:shaped/hv_forge_hammer')
event.shaped('gtceu:ev_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:aluminium_single_cable',
B: 'gtceu:ev_electric_piston',
C: '#gtceu:circuits/ev',
D: 'gtceu:ev_machine_hull',
E: 'tfc:metal/anvil/black_steel',
}).id('gtceu:shaped/ev_forge_hammer')
event.shaped('gtceu:iv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:platinum_single_cable',
B: 'gtceu:iv_electric_piston',
C: '#gtceu:circuits/iv',
D: 'gtceu:iv_machine_hull',
E: 'tfc:metal/anvil/black_steel',
}).id('gtceu:shaped/iv_forge_hammer')
event.shaped('gtceu:luv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:niobium_titanium_single_cable',
B: 'gtceu:luv_electric_piston',
C: '#gtceu:circuits/luv',
D: 'gtceu:luv_machine_hull',
E: 'tfc:metal/anvil/black_steel',
}).id('gtceu:shaped/luv_forge_hammer')
event.shaped('gtceu:zpm_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:vanadium_gallium_single_cable',
B: 'gtceu:zpm_electric_piston',
C: '#gtceu:circuits/zpm',
D: 'gtceu:zpm_machine_hull',
E: '#tfc:red_or_blue_anvil',
}).id('gtceu:shaped/zpm_forge_hammer')
event.shaped('gtceu:uv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:yttrium_barium_cuprate_single_cable',
B: 'gtceu:uv_electric_piston',
C: '#gtceu:circuits/uv',
D: 'gtceu:uv_machine_hull',
E: '#tfc:red_or_blue_anvil',
}).id('gtceu:shaped/uv_forge_hammer')
//#endregion
//#region CokeOven
// Coke Oven
event.shaped('gtceu:coke_oven', [
'ABA',
'BCB',
'ABA'
], {
A: 'gtceu:coke_oven_bricks',
B: '#forge:plates/wrought_iron',
C: '#forge:tools/wrenches'
}).id('gtceu:shaped/coke_oven')
// Coke Oven Hatch
event.recipes.tfc.no_remainder_shaped_crafting(
event.shaped('gtceu:coke_oven_hatch', [
'AB'
], {
A: 'gtceu:coke_oven_bricks',
B: '#tfc:barrels'
})
).id('gtceu:shaped/coke_oven_hatch')
//#endregion
// High Pressure Steam Miner
event.replaceInput({ id: 'gtceu:shaped/steam_miner_steel' },
'gtceu:lp_steam_miner', 'gtceu:steel_brick_casing')
//#region Выход: Стальные машины
// HP Steam Boilers
event.shaped('gtceu:hp_steam_solid_boiler', [
'AEA',
'ADA',
'BCB'
], {
A: '#forge:plates/steel',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: 'gtceu:steel_brick_casing',
D: 'tfc:crucible',
E: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_boiler_coal_steel')
event.shaped('gtceu:hp_steam_liquid_boiler', [
'AEA',
'ADA',
'BCB'
], {
A: '#forge:plates/steel',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: 'gtceu:steel_brick_casing',
D: '#forge:glass',
E: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_boiler_lava_steel')
event.shaped('gtceu:hp_steam_solar_boiler', [
'AAA',
'BCB',
'EDE'
], {
A: '#forge:glass_panes',
B: '#forge:double_plates/silver',
C: '#forge:rods/black_steel',
D: 'gtceu:steel_brick_casing',
E: 'gtceu:tin_alloy_small_fluid_pipe',
}).id('gtceu:shaped/steam_boiler_solar_steel')
// Экстрактор
event.shaped('gtceu:hp_steam_extractor', [
'BEB',
'CAC',
'DFD'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
E: '#forge:glass_panes',
F: '#forge:rings/black_steel'
}).id('gtceu:shaped/steam_extractor_steel')
// Дробитель
event.shaped('gtceu:hp_steam_macerator', [
'BFB',
'CAC',
'DED'
], {
A: 'gtceu:steel_brick_casing',
B: '#forge:small_gears/wrought_iron',
C: '#forge:plates/steel',
D: '#forge:rods/black_steel',
E: 'gtceu:tin_alloy_small_fluid_pipe',
F: '#forge:raw_materials/diamond'
}).id('gtceu:shaped/steam_macerator_steel')
// Компрессор
event.shaped('gtceu:hp_steam_compressor', [
'BCB',
'EAE',
'DFD'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
E: 'minecraft:piston',
F: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_compressor_steel')
// Молот
event.shaped('gtceu:hp_steam_forge_hammer', [
'DFD',
'BEB',
'CAC'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
E: '#forge:ingots/black_steel',
F: 'minecraft:piston'
}).id('gtceu:shaped/steam_hammer_steel')
// Печь
event.shaped('gtceu:hp_steam_furnace', [
'BCB',
'DAD',
'FFF'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
F: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_furnace_steel')
// Сплавщик
event.shaped('gtceu:hp_steam_alloy_smelter', [
'FCF',
'DAD',
'CBC'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
F: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_alloy_smelter_steel')
// Блоко-ломатель
event.shaped('gtceu:hp_steam_rock_crusher', [
'ECE',
'BAB',
'DDD'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:drill_heads',
D: '#forge:rods/wrought_iron',
E: '#forge:screws/wrought_iron'
}).id('gtceu:shaped/steam_rock_breaker_steel')
// Miner
event.shaped('gtceu:hp_steam_miner', [
'EFE',
'BAB',
'DCD'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:drill_heads',
D: '#forge:rods/steel',
E: '#forge:plates/wrought_iron',
F: '#gtceu:circuits/ulv'
}).id('gtceu:shaped/steam_miner_steel')
//#endregion
//#region Стеклодувка
// Glass Tube
@ -824,18 +417,6 @@ const registerGTCEURecipes = (event) => {
C: 'tfc:glue'
}).id('gtceu:shaped/gear_wood')
// Контроллер теплицы
event.shaped('gtceu:greenhouse', [
'ABA',
'CDC',
'BCB'
], {
A: '#gtceu:circuits/mv',
B: 'gtceu:copper_single_cable',
C: '#gtceu:circuits/mv',
D: 'gtceu:solid_machine_casing'
}).id('tfg:shaped/greenhouse')
// Compressed Coke Clay
event.shaped('gtceu:compressed_coke_clay', [
'AAA',
@ -933,444 +514,6 @@ const registerGTCEURecipes = (event) => {
//#endregion
//#region passthrough hatches
event.recipes.shaped('gtceu:lv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:lv_conveyor_module',
B: 'gtceu:small_wrought_iron_gear',
C: 'gtceu:lv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_lv')
event.recipes.shaped('gtceu:mv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:mv_conveyor_module',
B: 'gtceu:small_bronze_gear',
C: 'gtceu:mv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_mv')
event.recipes.shaped('gtceu:ev_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:ev_conveyor_module',
B: 'gtceu:small_titanium_gear',
C: 'gtceu:ev_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_ev')
event.recipes.shaped('gtceu:iv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:iv_conveyor_module',
B: 'gtceu:small_tungsten_steel_gear',
C: 'gtceu:iv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_iv')
event.recipes.shaped('gtceu:luv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:luv_conveyor_module',
B: 'gtceu:small_hsss_gear',
C: 'gtceu:luv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_luv')
event.recipes.shaped('gtceu:zpm_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:zpm_conveyor_module',
B: 'gtceu:small_osmiridium_gear',
C: 'gtceu:zpm_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_zpm')
event.recipes.shaped('gtceu:uv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:uv_conveyor_module',
B: 'gtceu:small_naquadah_alloy_gear',
C: 'gtceu:uv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_uv')
event.recipes.shaped('gtceu:lv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:lv_electric_pump',
B: 'gtceu:bronze_small_fluid_pipe',
C: 'gtceu:lv_machine_hull',
D: '#forge:glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_lv')
event.recipes.shaped('gtceu:mv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:mv_electric_pump',
B: 'gtceu:steel_small_fluid_pipe',
C: 'gtceu:mv_machine_hull',
D: '#forge:glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_mv')
event.remove('gtceu:shaped/passthrough_hatch_fluid')
event.recipes.shaped('gtceu:hv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:hv_electric_pump',
B: 'gtceu:stainless_steel_small_fluid_pipe',
C: 'gtceu:hv_machine_hull',
D: 'gtceu:tempered_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_hv')
event.recipes.shaped('gtceu:ev_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:ev_electric_pump',
B: 'gtceu:titanium_small_fluid_pipe',
C: 'gtceu:ev_machine_hull',
D: 'gtceu:tempered_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_ev')
event.recipes.shaped('gtceu:iv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:iv_electric_pump',
B: 'gtceu:tungsten_steel_small_fluid_pipe',
C: 'gtceu:iv_machine_hull',
D: 'gtceu:laminated_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_iv')
event.recipes.shaped('gtceu:luv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:luv_electric_pump',
B: 'gtceu:niobium_titanium_small_fluid_pipe',
C: 'gtceu:luv_machine_hull',
D: 'gtceu:laminated_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_luv')
event.recipes.shaped('gtceu:zpm_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:zpm_electric_pump',
B: 'gtceu:polybenzimidazole_small_fluid_pipe',
C: 'gtceu:zpm_machine_hull',
D: 'gtceu:fusion_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_zpm')
event.recipes.shaped('gtceu:uv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:uv_electric_pump',
B: 'gtceu:naquadah_small_fluid_pipe',
C: 'gtceu:uv_machine_hull',
D: 'gtceu:fusion_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_uv')
//#endregion
//#region Long Distance Pipelines
event.remove({ id: 'gtceu:assembler/long_distance_item_pipe' })
event.recipes.gtceu.assembler('long_distance_item_pipe')
.itemInputs(
'1x gtceu:tin_large_item_pipe',
'4x #forge:plates/steel')
.inputFluids(Fluid.of('gtceu:soldering_alloy', 144 / 4))
.itemOutputs('32x gtceu:long_distance_item_pipeline')
.circuit(2)
.duration(300)
.EUt(24)
event.remove({ id: 'gtceu:assembler/long_distance_fluid_pipe' })
event.recipes.gtceu.assembler('long_distance_fluid_pipe')
.itemInputs(
'1x gtceu:bronze_large_fluid_pipe',
'4x #forge:plates/steel')
.inputFluids(Fluid.of('gtceu:soldering_alloy', 144 / 4))
.itemOutputs('32x gtceu:long_distance_fluid_pipeline')
.circuit(2)
.duration(300)
.EUt(24)
//#endregion
//#region LV hull
event.replaceInput('gtceu:shaped/lv_machine_hull', '#forge:plates/wrought_iron', '#forge:plates/red_steel')
//#endregion
//#region make colored steel a bit easier to compensate
event.recipes.gtceu.arc_furnace('tfg:black_steel_dust_to_ingot')
.itemInputs('gtceu:black_steel_dust')
.itemOutputs('tfc:metal/ingot/black_steel')
.inputFluids(Fluid.of('gtceu:oxygen', 72))
.duration(500)
.EUt(24)
event.recipes.gtceu.arc_furnace('tfg:red_steel_dust_to_ingot')
.itemInputs('gtceu:red_steel_dust')
.itemOutputs('tfc:metal/ingot/red_steel')
.inputFluids(Fluid.of('gtceu:oxygen', 72))
.duration(700)
.EUt(32)
event.recipes.gtceu.arc_furnace('tfg:blue_steel_dust_to_ingot')
.itemInputs('gtceu:blue_steel_dust')
.itemOutputs('tfc:metal/ingot/blue_steel')
.inputFluids(Fluid.of('gtceu:oxygen', 72))
.duration(700)
.EUt(32)
//#endregion
//#region add regular furnace recipes for other tfc alloys
event.remove({ id: 'gtceu:electric_blast_furnace/blast_bismuth_bronze' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_bismuth_bronze_gas' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_black_bronze' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_black_bronze_gas' })
event.remove({ id: 'gtceu:vacuum_freezer/cool_hot_black_bronze_ingot' })
event.remove({ id: 'gtceu:vacuum_freezer/black_bronze' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_sterling_silver' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_sterling_silver_gas' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_rose_gold' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_rose_gold_gas' })
event.smelting('gtceu:bismuth_bronze_ingot', 'gtceu:bismuth_bronze_dust')
event.smelting('gtceu:black_bronze_ingot', 'gtceu:black_bronze_dust')
event.smelting('gtceu:sterling_silver_ingot', 'gtceu:sterling_silver_dust')
event.smelting('gtceu:rose_gold_ingot', 'gtceu:rose_gold_dust')
//#endregion
// Add circuit to assembler recipe for redstone lamp.
// Avoids conflict with AE2 smart cables.
event.remove({ id: 'gtceu:assembler/redstone_lamp' })
event.recipes.gtceu.assembler('redstone_lamp')
.itemInputs('4x #forge:dusts/redstone', '4x #forge:dusts/glowstone')
.itemOutputs('1x minecraft:redstone_lamp')
.circuit(1)
.duration(100)
.EUt(1)
// Clear NBT on tanks with shapeless crafts.
const TANK_NAMES = [
"lv_super",
"mv_super",
"hv_super",
"ev_super",
"iv_quantum",
"luv_quantum",
"zpm_quantum",
"uv_quantum",
"uhv_quantum",
]
TANK_NAMES.forEach(prefix => {
// Craft super tanks to remove their NBT data.
event.shapeless(`gtceu:${prefix}_tank`, [`gtceu:${prefix}_tank`])
// Craft super chests to remove their NBT data.
event.shapeless(`gtceu:${prefix}_chest`, [`gtceu:${prefix}_chest`])
})
// red alloy, because crucible always makes 4+1=5
event.remove({ id: 'gtceu:mixer/red_alloy' })
event.recipes.gtceu.mixer('tfg:red_alloy_mixer')
.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')
.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')
.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')
.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')
.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')
.itemInputs('1x gtceu:annealed_copper_ingot', '4x minecraft:redstone')
.itemOutputs('5x gtceu:red_alloy_ingot')
.duration(50)
.EUt(16)
// steam machines
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_forge_hammer' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_forge_hammer')
.itemInputs('1x gtceu:hp_steam_forge_hammer')
.itemOutputs('8x gtceu:wrought_iron_ingot', '3x gtceu:steel_ingot', '2x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_forge_hammer' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_forge_hammer')
.itemInputs('1x gtceu:hp_steam_forge_hammer')
.itemOutputs('8x gtceu:iron_dust', '3x gtceu:steel_dust', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_extractor' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_extractor')
.itemInputs('1x gtceu:hp_steam_extractor')
.itemOutputs('7x gtceu:wrought_iron_ingot', '2x gtceu:steel_ingot', '3x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_extractor' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_extractor')
.itemInputs('1x gtceu:hp_steam_extractor')
.itemOutputs('7x gtceu:iron_dust', '2x gtceu:steel_dust', '3x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_macerator' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_macerator')
.itemInputs('1x gtceu:hp_steam_macerator')
.itemOutputs('8x gtceu:wrought_iron_ingot', '3x gtceu:steel_ingot', '2x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_macerator' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_macerator')
.itemInputs('1x gtceu:hp_steam_macerator')
.itemOutputs('8x gtceu:iron_dust', '3x gtceu:steel_dust', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_compressor' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_compressor')
.itemInputs('1x gtceu:hp_steam_compressor')
.itemOutputs('7x gtceu:wrought_iron_ingot', '1x gtceu:steel_ingot', '5x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_compressor' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_compressor')
.itemInputs('1x gtceu:hp_steam_compressor')
.itemOutputs('7x gtceu:iron_dust', '1x gtceu:steel_dust', '5x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_furnace' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_furnace')
.itemInputs('1x gtceu:hp_steam_furnace')
.itemOutputs('7x gtceu:wrought_iron_ingot', '2x gtceu:steel_ingot', '4x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_furnace' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_furnace')
.itemInputs('1x gtceu:hp_steam_furnace')
.itemOutputs('7x gtceu:iron_dust', '2x gtceu:steel_dust', '4x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_alloy_smelter' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_alloy_smelter')
.itemInputs('1x gtceu:hp_steam_alloy_smelter')
.itemOutputs('11x gtceu:wrought_iron_ingot', '1x gtceu:steel_ingot', '1x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_alloy_smelter' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_alloy_smelter')
.itemInputs('1x gtceu:hp_steam_alloy_smelter')
.itemOutputs('11x gtceu:iron_dust', '1x gtceu:steel_dust', '1x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_rock_crusher' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_rock_crusher')
.itemInputs('1x gtceu:hp_steam_rock_crusher')
.itemOutputs('10x gtceu:wrought_iron_ingot', '1x gtceu:steel_ingot', '2x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_rock_crusher' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_rock_crusher')
.itemInputs('1x gtceu:hp_steam_rock_crusher')
.itemOutputs('10x gtceu:iron_dust', '1x gtceu:steel_dust', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
//#endregion
//#region Quantum mainframe stack fix.
//
// Quantum Mainframes need 48x annealed copper wire but
@ -1829,16 +972,7 @@ const registerGTCEURecipes = (event) => {
})
//#endregion
event.shaped('4x minecraft:ladder', [
'A A',
'AAA',
'A A'
], {
A: '#forge:rods/wooden'
}).id('gtceu:shaped/ladder')
// TODO: Greate again...
event.shapeless('gtceu:red_alloy_single_cable', ['gtceu:red_alloy_single_wire', '#forge:plates/rubber'])
.id('tfg:shapeless/red_alloy_single_cable')

View file

@ -0,0 +1,694 @@
// priority: 0
function registerGTCEuMachineRecipes(event) {
//#region Выход: Filter Casing
event.shaped('gtceu:filter_casing', [
'AAA',
'BBB',
'CDE'
], {
A: '#tfg:metal_bars',
B: 'gtceu:item_filter',
C: 'gtceu:mv_electric_motor',
D: 'gtceu:steel_frame',
E: '#forge:rotors/steel'
}).id('gtceu:shaped/filter_casing')
//#endregion
//#region Выход: Assembly Line Grating
event.shaped('2x gtceu:assembly_line_grating', [
'ABA',
'ACA',
'ADA'
], {
A: '#tfg:metal_bars',
B: '#forge:rotors/steel',
C: 'gtceu:steel_frame',
D: 'gtceu:mv_electric_motor'
}).id('gtceu:shaped/casing_grate_casing')
//#endregion
//#region Gas Collectors
event.shaped('gtceu:lv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:lv_electric_pump',
D: '#gtceu:circuits/lv',
E: 'gtceu:lv_machine_hull'
}).id('gtceu:shaped/lv_gas_collector')
event.shaped('gtceu:mv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:mv_electric_pump',
D: '#gtceu:circuits/mv',
E: 'gtceu:mv_machine_hull'
}).id('gtceu:shaped/mv_gas_collector')
event.shaped('gtceu:hv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:hv_electric_pump',
D: '#gtceu:circuits/hv',
E: 'gtceu:hv_machine_hull'
}).id('gtceu:shaped/hv_gas_collector')
event.shaped('gtceu:ev_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:ev_electric_pump',
D: '#gtceu:circuits/ev',
E: 'gtceu:ev_machine_hull'
}).id('gtceu:shaped/ev_gas_collector')
event.shaped('gtceu:iv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:iv_electric_pump',
D: '#gtceu:circuits/iv',
E: 'gtceu:iv_machine_hull'
}).id('gtceu:shaped/iv_gas_collector')
event.shaped('gtceu:luv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:luv_electric_pump',
D: '#gtceu:circuits/luv',
E: 'gtceu:luv_machine_hull'
}).id('gtceu:shaped/luv_gas_collector')
event.shaped('gtceu:zpm_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:zpm_electric_pump',
D: '#gtceu:circuits/zpm',
E: 'gtceu:zpm_machine_hull'
}).id('gtceu:shaped/zpm_gas_collector')
event.shaped('gtceu:uv_gas_collector', [
'ABA',
'CEC',
'ADA'
], {
A: '#tfg:metal_bars',
B: 'gtceu:fluid_filter',
C: 'gtceu:uv_electric_pump',
D: '#gtceu:circuits/uv',
E: 'gtceu:uv_machine_hull'
}).id('gtceu:shaped/uv_gas_collector')
//#endregion
//#region Forge Hammers
event.shaped('gtceu:lv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:tin_single_cable',
B: 'gtceu:lv_electric_piston',
C: '#gtceu:circuits/lv',
D: 'gtceu:lv_machine_hull',
E: 'tfc:metal/anvil/steel',
}).id('gtceu:shaped/lv_forge_hammer')
event.shaped('gtceu:mv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:copper_single_cable',
B: 'gtceu:mv_electric_piston',
C: '#gtceu:circuits/mv',
D: 'gtceu:mv_machine_hull',
E: 'tfc:metal/anvil/steel',
}).id('gtceu:shaped/mv_forge_hammer')
event.shaped('gtceu:hv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:gold_single_cable',
B: 'gtceu:hv_electric_piston',
C: '#gtceu:circuits/hv',
D: 'gtceu:hv_machine_hull',
E: 'tfc:metal/anvil/steel',
}).id('gtceu:shaped/hv_forge_hammer')
event.shaped('gtceu:ev_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:aluminium_single_cable',
B: 'gtceu:ev_electric_piston',
C: '#gtceu:circuits/ev',
D: 'gtceu:ev_machine_hull',
E: 'tfc:metal/anvil/black_steel',
}).id('gtceu:shaped/ev_forge_hammer')
event.shaped('gtceu:iv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:platinum_single_cable',
B: 'gtceu:iv_electric_piston',
C: '#gtceu:circuits/iv',
D: 'gtceu:iv_machine_hull',
E: 'tfc:metal/anvil/black_steel',
}).id('gtceu:shaped/iv_forge_hammer')
event.shaped('gtceu:luv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:niobium_titanium_single_cable',
B: 'gtceu:luv_electric_piston',
C: '#gtceu:circuits/luv',
D: 'gtceu:luv_machine_hull',
E: 'tfc:metal/anvil/black_steel',
}).id('gtceu:shaped/luv_forge_hammer')
event.shaped('gtceu:zpm_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:vanadium_gallium_single_cable',
B: 'gtceu:zpm_electric_piston',
C: '#gtceu:circuits/zpm',
D: 'gtceu:zpm_machine_hull',
E: '#tfc:red_or_blue_anvil',
}).id('gtceu:shaped/zpm_forge_hammer')
event.shaped('gtceu:uv_forge_hammer', [
'ABA',
'CDC',
'AEA'
], {
A: 'gtceu:yttrium_barium_cuprate_single_cable',
B: 'gtceu:uv_electric_piston',
C: '#gtceu:circuits/uv',
D: 'gtceu:uv_machine_hull',
E: '#tfc:red_or_blue_anvil',
}).id('gtceu:shaped/uv_forge_hammer')
//#endregion
//#region CokeOven
// Coke Oven
event.shaped('gtceu:coke_oven', [
'ABA',
'BCB',
'ABA'
], {
A: 'gtceu:coke_oven_bricks',
B: '#forge:plates/wrought_iron',
C: '#forge:tools/wrenches'
}).id('gtceu:shaped/coke_oven')
// Coke Oven Hatch
event.recipes.tfc.no_remainder_shaped_crafting(
event.shaped('gtceu:coke_oven_hatch', [
'AB'
], {
A: 'gtceu:coke_oven_bricks',
B: '#tfc:barrels'
})
).id('gtceu:shaped/coke_oven_hatch')
//#endregion
// High Pressure Steam Miner
event.replaceInput({ id: 'gtceu:shaped/steam_miner_steel' },
'gtceu:lp_steam_miner', 'gtceu:steel_brick_casing')
//#region Выход: Стальные машины
// HP Steam Boilers
event.shaped('gtceu:hp_steam_solid_boiler', [
'AEA',
'ADA',
'BCB'
], {
A: '#forge:plates/steel',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: 'gtceu:steel_brick_casing',
D: 'tfc:crucible',
E: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_boiler_coal_steel')
event.shaped('gtceu:hp_steam_liquid_boiler', [
'AEA',
'ADA',
'BCB'
], {
A: '#forge:plates/steel',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: 'gtceu:steel_brick_casing',
D: '#forge:glass',
E: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_boiler_lava_steel')
event.shaped('gtceu:hp_steam_solar_boiler', [
'AAA',
'BCB',
'EDE'
], {
A: '#forge:glass_panes',
B: '#forge:double_plates/silver',
C: '#forge:rods/black_steel',
D: 'gtceu:steel_brick_casing',
E: 'gtceu:tin_alloy_small_fluid_pipe',
}).id('gtceu:shaped/steam_boiler_solar_steel')
// Экстрактор
event.shaped('gtceu:hp_steam_extractor', [
'BEB',
'CAC',
'DFD'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
E: '#forge:glass_panes',
F: '#forge:rings/black_steel'
}).id('gtceu:shaped/steam_extractor_steel')
// Дробитель
event.shaped('gtceu:hp_steam_macerator', [
'BFB',
'CAC',
'DED'
], {
A: 'gtceu:steel_brick_casing',
B: '#forge:small_gears/wrought_iron',
C: '#forge:plates/steel',
D: '#forge:rods/black_steel',
E: 'gtceu:tin_alloy_small_fluid_pipe',
F: '#forge:raw_materials/diamond'
}).id('gtceu:shaped/steam_macerator_steel')
// Компрессор
event.shaped('gtceu:hp_steam_compressor', [
'BCB',
'EAE',
'DFD'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
E: 'minecraft:piston',
F: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_compressor_steel')
// Молот
event.shaped('gtceu:hp_steam_forge_hammer', [
'DFD',
'BEB',
'CAC'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
E: '#forge:ingots/black_steel',
F: 'minecraft:piston'
}).id('gtceu:shaped/steam_hammer_steel')
// Печь
event.shaped('gtceu:hp_steam_furnace', [
'BCB',
'DAD',
'FFF'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
F: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_furnace_steel')
// Сплавщик
event.shaped('gtceu:hp_steam_alloy_smelter', [
'FCF',
'DAD',
'CBC'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:plates/steel',
D: '#forge:plates/wrought_iron',
F: '#forge:rods/black_steel'
}).id('gtceu:shaped/steam_alloy_smelter_steel')
// Блоко-ломатель
event.shaped('gtceu:hp_steam_rock_crusher', [
'ECE',
'BAB',
'DDD'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:drill_heads',
D: '#forge:rods/wrought_iron',
E: '#forge:screws/wrought_iron'
}).id('gtceu:shaped/steam_rock_breaker_steel')
// Miner
event.shaped('gtceu:hp_steam_miner', [
'EFE',
'BAB',
'DCD'
], {
A: 'gtceu:steel_brick_casing',
B: 'gtceu:tin_alloy_small_fluid_pipe',
C: '#forge:drill_heads',
D: '#forge:rods/steel',
E: '#forge:plates/wrought_iron',
F: '#gtceu:circuits/ulv'
}).id('gtceu:shaped/steam_miner_steel')
//#endregion
//#region passthrough hatches
event.recipes.shaped('gtceu:lv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:lv_conveyor_module',
B: 'gtceu:small_wrought_iron_gear',
C: 'gtceu:lv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_lv')
event.recipes.shaped('gtceu:mv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:mv_conveyor_module',
B: 'gtceu:small_bronze_gear',
C: 'gtceu:mv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_mv')
event.recipes.shaped('gtceu:ev_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:ev_conveyor_module',
B: 'gtceu:small_titanium_gear',
C: 'gtceu:ev_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_ev')
event.recipes.shaped('gtceu:iv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:iv_conveyor_module',
B: 'gtceu:small_tungsten_steel_gear',
C: 'gtceu:iv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_iv')
event.recipes.shaped('gtceu:luv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:luv_conveyor_module',
B: 'gtceu:small_hsss_gear',
C: 'gtceu:luv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_luv')
event.recipes.shaped('gtceu:zpm_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:zpm_conveyor_module',
B: 'gtceu:small_osmiridium_gear',
C: 'gtceu:zpm_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_zpm')
event.recipes.shaped('gtceu:uv_item_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:uv_conveyor_module',
B: 'gtceu:small_naquadah_alloy_gear',
C: 'gtceu:uv_machine_hull',
D: '#tfg:default_chests'
}).id('gtceu:shaped/passthrough_hatch_item_uv')
event.recipes.shaped('gtceu:lv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:lv_electric_pump',
B: 'gtceu:bronze_small_fluid_pipe',
C: 'gtceu:lv_machine_hull',
D: '#forge:glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_lv')
event.recipes.shaped('gtceu:mv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:mv_electric_pump',
B: 'gtceu:steel_small_fluid_pipe',
C: 'gtceu:mv_machine_hull',
D: '#forge:glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_mv')
event.remove('gtceu:shaped/passthrough_hatch_fluid')
event.recipes.shaped('gtceu:hv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:hv_electric_pump',
B: 'gtceu:stainless_steel_small_fluid_pipe',
C: 'gtceu:hv_machine_hull',
D: 'gtceu:tempered_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_hv')
event.recipes.shaped('gtceu:ev_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:ev_electric_pump',
B: 'gtceu:titanium_small_fluid_pipe',
C: 'gtceu:ev_machine_hull',
D: 'gtceu:tempered_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_ev')
event.recipes.shaped('gtceu:iv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:iv_electric_pump',
B: 'gtceu:tungsten_steel_small_fluid_pipe',
C: 'gtceu:iv_machine_hull',
D: 'gtceu:laminated_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_iv')
event.recipes.shaped('gtceu:luv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:luv_electric_pump',
B: 'gtceu:niobium_titanium_small_fluid_pipe',
C: 'gtceu:luv_machine_hull',
D: 'gtceu:laminated_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_luv')
event.recipes.shaped('gtceu:zpm_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:zpm_electric_pump',
B: 'gtceu:polybenzimidazole_small_fluid_pipe',
C: 'gtceu:zpm_machine_hull',
D: 'gtceu:fusion_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_zpm')
event.recipes.shaped('gtceu:uv_fluid_passthrough_hatch', [
' A ',
'BCB',
' D '
], {
A: 'gtceu:uv_electric_pump',
B: 'gtceu:naquadah_small_fluid_pipe',
C: 'gtceu:uv_machine_hull',
D: 'gtceu:fusion_glass'
}).id('gtceu:shaped/passthrough_hatch_fluid_uv')
//#endregion
//#region Long Distance Pipelines
event.remove({ id: 'gtceu:assembler/long_distance_item_pipe' })
event.recipes.gtceu.assembler('long_distance_item_pipe')
.itemInputs(
'1x gtceu:tin_large_item_pipe',
'4x #forge:plates/steel')
.inputFluids(Fluid.of('gtceu:soldering_alloy', 144 / 4))
.itemOutputs('32x gtceu:long_distance_item_pipeline')
.circuit(2)
.duration(300)
.EUt(24)
event.remove({ id: 'gtceu:assembler/long_distance_fluid_pipe' })
event.recipes.gtceu.assembler('long_distance_fluid_pipe')
.itemInputs(
'1x gtceu:bronze_large_fluid_pipe',
'4x #forge:plates/steel')
.inputFluids(Fluid.of('gtceu:soldering_alloy', 144 / 4))
.itemOutputs('32x gtceu:long_distance_fluid_pipeline')
.circuit(2)
.duration(300)
.EUt(24)
//#endregion
// Контроллер теплицы
event.shaped('gtceu:greenhouse', [
'ABA',
'CDC',
'BCB'
], {
A: '#gtceu:circuits/mv',
B: 'gtceu:copper_single_cable',
C: '#gtceu:circuits/mv',
D: 'gtceu:solid_machine_casing'
}).id('tfg:shaped/greenhouse')
// Drums
const DRUMS_AND_CRATES = [
'bismuth_bronze',
'black_bronze'
]
DRUMS_AND_CRATES.forEach(material => {
event.shapeless(`gtceu:${material}_drum`, [`gtceu:${material}_drum`]).id(`tfg:shapeless/drum_nbt_${material}`)
event.shaped(`gtceu:${material}_drum`, [
' A ',
'BCB',
'BCB'
], {
A: '#forge:tools/hammers',
B: `#forge:plates/${material}`,
C: `#forge:rods/long/${material}`
}).id(`tfg:shaped/${material}_drum`)
event.shaped(`gtceu:${material}_crate`, [
'CBC',
'BAB',
'CBC'
], {
A: '#forge:tools/hammers',
B: `#forge:plates/${material}`,
C: `#forge:rods/long/${material}`
}).id(`tfg:shaped/${material}_crate`)
event.recipes.gtceu.assembler(`gtceu:${material}_drum`)
.itemInputs(`4x #forge:plates/${material}`, `2x #forge:rods/long/${material}`)
.itemOutputs(`gtceu:${material}_drum`)
.duration(200)
.EUt(16)
.circuit(2)
event.recipes.gtceu.assembler(`gtceu:${material}_crate`)
.itemInputs(`4x #forge:plates/${material}`, `4x #forge:rods/long/${material}`)
.itemOutputs(`gtceu:${material}_crate`)
.duration(200)
.EUt(16)
.circuit(1)
event.recipes.gtceu.macerator(`gtceu:${material}_drum`)
.itemInputs(`gtceu:${material}_drum`)
.itemOutputs(`6x #forge:dusts/${material}`)
.duration(456)
.EUt(2)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.recipes.gtceu.macerator(`gtceu:${material}_crate`)
.itemInputs(`gtceu:${material}_crate`)
.itemOutputs(`8x #forge:dusts/${material}`)
.duration(608)
.EUt(2)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.recipes.gtceu.arc_furnace(`gtceu:${material}_drum`)
.itemInputs(`gtceu:${material}_drum`)
.itemOutputs(`6x #forge:ingots/${material}`)
.duration(456)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.recipes.gtceu.arc_furnace(`gtceu:${material}_crate`)
.itemInputs(`gtceu:${material}_crate`)
.itemOutputs(`8x #forge:ingots/${material}`)
.duration(608)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
})
}

View file

@ -9,16 +9,10 @@ function registerGTCEUMetalRecipes(event) {
const toolHeadItem = ChemicalHelper.get(headTagPrefix, material, 1)
if (toolHeadItem.isEmpty()) return
if (material.hasFlag(TFGMaterialFlags.HAS_TFC_TOOL)) {
event.shapeless(toolItem, [
'#forge:rods/wooden',
toolHeadItem
]).id(`gtceu:shaped/${toolType.name}_${material.getName()}`)
}
else {
event.recipes.tfc.advanced_shapeless_crafting(TFC.itemStackProvider.of(toolItem).copyForgingBonus(), ['#forge:rods/wooden', toolHeadItem])
.id(`gtceu:shaped/${toolType.name}_${material.getName()}`)
}
event.recipes.tfc.advanced_shapeless_crafting(
TFC.itemStackProvider.of(toolItem).copyForgingBonus().copyHeat(),
[toolHeadItem, '#forge:rods/wooden'], toolHeadItem)
.id(`gtceu:shaped/${toolType.name}_${material.getName()}`)
processToolHead(headTagPrefix, extruderMold, cirucitMeta, material)
}
@ -281,11 +275,17 @@ function registerGTCEUMetalRecipes(event) {
const processPoorRawOre = (tagPrefix, material) => {
const poorOreItem = ChemicalHelper.get(tagPrefix, material, 2)
const crushedOreItem = ChemicalHelper.get(TagPrefix.crushed, material, 1)
const crushedOreItem = ChemicalHelper.get(TagPrefix.crushed, material, Math.max(material.getProperty(PropertyKey.ORE).getOreMultiplier() / 2.0, 1))
if (poorOreItem != null && crushedOreItem != null) {
event.recipes.tfc.quern(crushedOreItem, poorOreItem)
.id(`tfg:quern/${material.getName()}_crushed_ore_from_poor_raw_ore`)
// TODO: Remove when Greate fixes its chanced output bug
event.shapeless(crushedOreItem, [poorOreItem, '#forge:tools/hammers'])
.id(`tfg:greate_workaround_crushed_${material.getName()}`)
}
}

View file

@ -0,0 +1,122 @@
// priority: 0
function registerGTCEURecyclingRecipes(event) {
// Tantalum Capacitor
event.recipes.gtceu.macerator('gtceu:macerator/recycling/tantulum_capacitor')
.itemInputs('gtceu:tantalum_capacitor')
.itemOutputs(
ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Tantalum, 1),
ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Polyethylene, 1)
)
.duration(GTMaterials.Tantalum.getMass() * 1)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace('gtceu:arc_furnace/recycling/tantulum_capacitor')
.itemInputs('gtceu:tantalum_capacitor')
.itemOutputs(
ChemicalHelper.get(TagPrefix.nugget, GTMaterials.Tantalum, 1),
ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Ash, 1)
)
.duration(GTMaterials.Tantalum.getMass() * 1)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
// Capacitor
event.recipes.gtceu.macerator('gtceu:macerator/recycling/capacitor')
.itemInputs('gtceu:capacitor')
.itemOutputs(
ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Polyethylene, 1)
)
.duration(GTMaterials.Polyethylene.getMass() * 1)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace('gtceu:arc_furnace/recycling/capacitor')
.itemInputs('gtceu:capacitor')
.itemOutputs(
ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Ash, 1)
)
.duration(GTMaterials.Ash.getMass() * 1)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
// Empty Tier I Capacitor
event.recipes.gtceu.macerator('gtceu:macerator/recycling/empty_tier_i_battery')
.itemInputs('gtceu:empty_tier_i_battery')
.itemOutputs(
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Ultimet, 6)
)
.duration(GTMaterials.Ultimet.getMass() * 6)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace('gtceu:arc_furnace/recycling/empty_tier_i_battery')
.itemInputs('gtceu:empty_tier_i_battery')
.itemOutputs(
ChemicalHelper.get(TagPrefix.ingot, GTMaterials.Ultimet, 6)
)
.duration(GTMaterials.Ultimet.getMass() * 6)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.extractor('gtceu:extractor/recycling/empty_tier_i_battery')
.itemInputs('gtceu:empty_tier_i_battery')
.outputFluids(Fluid.of('gtceu:ultimet', 864))
.duration(GTMaterials.Ultimet.getMass() * 6)
.category(GTRecipeCategories.EXTRACTOR_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
// Empty Tier II Capacitor
event.recipes.gtceu.macerator('gtceu:macerator/recycling/empty_tier_ii_battery')
.itemInputs('gtceu:empty_tier_ii_battery')
.itemOutputs(
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Ruridit, 6)
)
.duration(GTMaterials.Ruridit.getMass() * 6)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace('gtceu:arc_furnace/recycling/empty_tier_ii_battery')
.itemInputs('gtceu:empty_tier_ii_battery')
.itemOutputs(
ChemicalHelper.get(TagPrefix.ingot, GTMaterials.Ruridit, 6)
)
.duration(GTMaterials.Ruridit.getMass() * 6)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.extractor('gtceu:extractor/recycling/empty_tier_ii_battery')
.itemInputs('gtceu:empty_tier_ii_battery')
.outputFluids(Fluid.of('gtceu:ruridit', 864))
.duration(GTMaterials.Ruridit.getMass() * 6)
.category(GTRecipeCategories.EXTRACTOR_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
// Empty Tier III Capacitor
event.recipes.gtceu.macerator('gtceu:macerator/recycling/empty_tier_iii_battery')
.itemInputs('gtceu:empty_tier_iii_battery')
.itemOutputs(
ChemicalHelper.get(TagPrefix.dust, GTMaterials.Neutronium, 6)
)
.duration(GTMaterials.Neutronium.getMass() * 6)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace('gtceu:arc_furnace/recycling/empty_tier_iii_battery')
.itemInputs('gtceu:empty_tier_iii_battery')
.itemOutputs(
ChemicalHelper.get(TagPrefix.ingot, GTMaterials.Neutronium, 6)
)
.duration(GTMaterials.Neutronium.getMass() * 6)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.extractor('gtceu:extractor/recycling/empty_tier_iii_battery')
.itemInputs('gtceu:empty_tier_iii_battery')
.outputFluids(Fluid.of('gtceu:neutronium', 864))
.duration(GTMaterials.Neutronium.getMass() * 6)
.category(GTRecipeCategories.EXTRACTOR_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
}

View file

@ -0,0 +1,310 @@
// priority: 0
function registerGTCEuTFCMetalsRecipes(event)
{
//#region LV hull
event.replaceInput('gtceu:shaped/lv_machine_hull', '#forge:plates/wrought_iron', '#forge:plates/red_steel')
//#endregion
//#region make colored steel a bit easier to compensate
event.recipes.gtceu.arc_furnace('tfg:black_steel_dust_to_ingot')
.itemInputs('gtceu:black_steel_dust')
.itemOutputs('tfc:metal/ingot/black_steel')
.inputFluids(Fluid.of('gtceu:oxygen', 72))
.duration(500)
.EUt(24)
event.recipes.gtceu.arc_furnace('tfg:red_steel_dust_to_ingot')
.itemInputs('gtceu:red_steel_dust')
.itemOutputs('tfc:metal/ingot/red_steel')
.inputFluids(Fluid.of('gtceu:oxygen', 72))
.duration(700)
.EUt(32)
event.recipes.gtceu.arc_furnace('tfg:blue_steel_dust_to_ingot')
.itemInputs('gtceu:blue_steel_dust')
.itemOutputs('tfc:metal/ingot/blue_steel')
.inputFluids(Fluid.of('gtceu:oxygen', 72))
.duration(700)
.EUt(32)
//#endregion
//#region add regular furnace recipes for other tfc alloys
event.remove({ id: 'gtceu:electric_blast_furnace/blast_bismuth_bronze' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_bismuth_bronze_gas' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_black_bronze' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_black_bronze_gas' })
event.remove({ id: 'gtceu:vacuum_freezer/cool_hot_black_bronze_ingot' })
event.remove({ id: 'gtceu:vacuum_freezer/black_bronze' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_sterling_silver' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_sterling_silver_gas' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_rose_gold' })
event.remove({ id: 'gtceu:electric_blast_furnace/blast_rose_gold_gas' })
event.smelting('gtceu:bismuth_bronze_ingot', 'gtceu:bismuth_bronze_dust')
event.smelting('gtceu:black_bronze_ingot', 'gtceu:black_bronze_dust')
event.smelting('gtceu:sterling_silver_ingot', 'gtceu:sterling_silver_dust')
event.smelting('gtceu:rose_gold_ingot', 'gtceu:rose_gold_dust')
//#endregion
// Add circuit to assembler recipe for redstone lamp.
// Avoids conflict with AE2 smart cables.
event.remove({ id: 'gtceu:assembler/redstone_lamp' })
event.recipes.gtceu.assembler('redstone_lamp')
.itemInputs('4x #forge:dusts/redstone', '4x #forge:dusts/glowstone')
.itemOutputs('1x minecraft:redstone_lamp')
.circuit(1)
.duration(100)
.EUt(1)
// Clear NBT on tanks with shapeless crafts.
const TANK_NAMES = [
"lv_super",
"mv_super",
"hv_super",
"ev_super",
"iv_quantum",
"luv_quantum",
"zpm_quantum",
"uv_quantum",
"uhv_quantum",
]
TANK_NAMES.forEach(prefix => {
// Craft super tanks to remove their NBT data.
event.shapeless(`gtceu:${prefix}_tank`, [`gtceu:${prefix}_tank`])
// Craft super chests to remove their NBT data.
event.shapeless(`gtceu:${prefix}_chest`, [`gtceu:${prefix}_chest`])
})
// red alloy, because crucible always makes 4+1=5
event.remove({ id: 'gtceu:mixer/red_alloy' })
event.recipes.gtceu.mixer('tfg:red_alloy_mixer')
.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')
.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')
.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')
.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')
.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')
.itemInputs('1x gtceu:annealed_copper_ingot', '4x minecraft:redstone')
.itemOutputs('5x gtceu:red_alloy_ingot')
.duration(50)
.EUt(16)
// steam machines
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_forge_hammer' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_forge_hammer')
.itemInputs('1x gtceu:hp_steam_forge_hammer')
.itemOutputs('7x gtceu:wrought_iron_ingot', '2x gtceu:steel_ingot', '2x gtceu:tin_alloy_ingot', '1x #forge:ingots/black_steel')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_forge_hammer' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_forge_hammer')
.itemInputs('1x gtceu:hp_steam_forge_hammer')
.itemOutputs('7x gtceu:wrought_iron_dust', '2x gtceu:steel_dust', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust', '1x #forge:dusts/black_steel')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_extractor' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_extractor')
.itemInputs('1x gtceu:hp_steam_extractor')
.itemOutputs('7x gtceu:wrought_iron_ingot', '2x gtceu:steel_ingot', '2x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_extractor' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_extractor')
.itemInputs('1x gtceu:hp_steam_extractor')
.itemOutputs('7x gtceu:wrought_iron_dust', '2x gtceu:steel_dust', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_macerator' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_macerator')
.itemInputs('1x gtceu:hp_steam_macerator')
.itemOutputs('7x gtceu:wrought_iron_ingot', '2x gtceu:steel_ingot', '1x #forge:ingots/black_steel', '1x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_macerator' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_macerator')
.itemInputs('1x gtceu:hp_steam_macerator')
.itemOutputs('7x gtceu:wrought_iron_dust', '2x gtceu:steel_dust', '1x #forge:dusts/black_steel', '1x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_compressor' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_compressor')
.itemInputs('1x gtceu:hp_steam_compressor')
.itemOutputs('8x gtceu:wrought_iron_ingot', '1x gtceu:steel_ingot', '2x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_compressor' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_compressor')
.itemInputs('1x gtceu:hp_steam_compressor')
.itemOutputs('8x gtceu:wrought_iron_dust', '1x gtceu:steel_dust', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_furnace' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_furnace')
.itemInputs('1x gtceu:hp_steam_furnace')
.itemOutputs('7x gtceu:wrought_iron_ingot', '2x gtceu:tin_alloy_ingot', '1x gtceu:steel_ingot', '1x #forge:ingots/black_steel')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_furnace' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_furnace')
.itemInputs('1x gtceu:hp_steam_furnace')
.itemOutputs('7x gtceu:wrought_iron_dust', '2x gtceu:tin_alloy_dust', '1x gtceu:steel_dust', '1x #forge:dusts/black_steel', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_alloy_smelter' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_alloy_smelter')
.itemInputs('1x gtceu:hp_steam_alloy_smelter')
.itemOutputs('7x gtceu:wrought_iron_ingot', '3x gtceu:steel_ingot', '1x gtceu:tin_alloy_ingot', '1x #forge:ingots/black_steel')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_alloy_smelter' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_alloy_smelter')
.itemInputs('1x gtceu:hp_steam_alloy_smelter')
.itemOutputs('7x gtceu:wrought_iron_dust', '3x gtceu:steel_dust', '1x gtceu:tin_alloy_dust', '1x #forge:dusts/black_steel', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_rock_crusher' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_rock_crusher')
.itemInputs('1x gtceu:hp_steam_rock_crusher')
.itemOutputs('6x gtceu:wrought_iron_ingot', '2x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_rock_crusher' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_rock_crusher')
.itemInputs('1x gtceu:hp_steam_rock_crusher')
.itemOutputs('6x gtceu:wrought_iron_dust', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_miner' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_miner')
.itemInputs('1x gtceu:hp_steam_miner')
.itemOutputs('7x gtceu:wrought_iron_ingot', '2x gtceu:tin_alloy_ingot', '1x #forge:ingots/steel')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_miner' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_miner')
.itemInputs('1x gtceu:hp_steam_miner')
.itemOutputs('7x gtceu:wrought_iron_dust', '2x gtceu:tin_alloy_dust', '1x #forge:dusts/steel', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_solid_boiler' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_solid_boiler')
.itemInputs('1x gtceu:hp_steam_solid_boiler')
.itemOutputs('5x gtceu:wrought_iron_ingot', '4x #forge:ingots/steel', '2x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_solid_boiler' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_solid_boiler')
.itemInputs('1x gtceu:hp_steam_solid_boiler')
.itemOutputs('5x gtceu:wrought_iron_dust', '4x #forge:dusts/steel', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_liquid_boiler' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_liquid_boiler')
.itemInputs('1x gtceu:hp_steam_liquid_boiler')
.itemOutputs('5x gtceu:wrought_iron_ingot', '4x #forge:ingots/steel', '2x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_liquid_boiler' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_liquid_boiler')
.itemInputs('1x gtceu:hp_steam_liquid_boiler')
.itemOutputs('5x gtceu:wrought_iron_dust', '4x #forge:dusts/steel', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
event.remove({ id: 'gtceu:arc_furnace/arc_hp_steam_solar_boiler' })
event.recipes.gtceu.arc_furnace('tfg:arc_hp_steam_solar_boiler')
.itemInputs('1x gtceu:hp_steam_solar_boiler')
.itemOutputs('5x gtceu:wrought_iron_ingot', '4x #forge:ingots/silver', '2x gtceu:tin_alloy_ingot')
.duration(3310)
.EUt(30)
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
event.remove({ id: 'gtceu:macerator/macerate_hp_steam_solar_boiler' })
event.recipes.gtceu.macerator('tfg:macerate_hp_steam_solar_boiler')
.itemInputs('1x gtceu:hp_steam_solar_boiler')
.itemOutputs('5x gtceu:wrought_iron_dust', '4x #forge:dusts/silver', '2x gtceu:tin_alloy_dust', '12x gtceu:brick_dust')
.duration(3254)
.EUt(8)
.category(GTRecipeCategories.MACERATOR_RECYCLING)
//#endregion
}

View file

@ -57,6 +57,12 @@ const registerGTCEUItemTags = (event) => {
{
event.remove('ae2:p2p_attunements/fluid_p2p_tunnel', `gtceu:${dyeName}_dye_bucket`)
})
// Piglin loved
event.add('minecraft:piglin_loved', 'gtceu:tiny_pyrite_dust')
event.add('minecraft:piglin_loved', 'gtceu:poor_raw_pyrite')
event.add('minecraft:piglin_loved', 'gtceu:raw_pyrite')
event.add('minecraft:piglin_loved', 'gtceu:rich_raw_pyrite')
}
const registerGTCEUBlockTags = (event) => {

View file

@ -59,42 +59,106 @@ const getFillingNBT = (material, amount) => {
}
function generatePlatedBlockRecipe(event, material) {
// firmaciv plated blocks don't have this property
let tfcProperty = material.getProperty(TFGPropertyKey.TFC_PROPERTY)
let outputMaterial = (tfcProperty == null || tfcProperty.getOutputMaterial() == null) ? material : tfcProperty.getOutputMaterial()
let plateItem = ChemicalHelper.get(TagPrefix.plate, material, 1);
let platedBlock = ChemicalHelper.get(TFGTagPrefix.blockPlated, material, 1);
let platedSlab = ChemicalHelper.get(TFGTagPrefix.slabPlated, material, 1);
let platedStair = ChemicalHelper.get(TFGTagPrefix.stairPlated, material, 1);
let tfcMetalName = material.getName();
if (tfcMetalName == "iron")
tfcMetalName = "cast_iron";
event.recipes.create.item_application(platedBlock, ['#forge:stone_bricks', plateItem])
.id(`tfg:item_application/${material.getName()}_plated_block`)
event.recipes.createDeploying(platedBlock, ['#forge:stone_bricks', plateItem])
.id(`tfg:deploying/${material.getName()}_plated_block`)
event.recipes.gtceu.assembler(`tfg:assembler/${material.getName()}_plated_block`)
event.recipes.gtceu.assembler(`tfg:${material.getName()}_plated_block`)
.itemInputs('#forge:stone_bricks', plateItem)
.itemOutputs(platedBlock)
.circuit(10)
.duration(50)
.EUt(4)
.EUt(GTValues.VA[GTValues.ULV])
if (tfcProperty != null) {
event.recipes.tfc.heating(platedBlock, tfcProperty.getMeltTemp())
.resultFluid(Fluid.of(outputMaterial.getFluid(), 144))
.id(`tfc:heating/metal/${tfcMetalName}_block`)
}
event.recipes.gtceu.macerator(`tfg:${material.getName()}_plated_block`)
.itemInputs(platedBlock)
.itemOutputs(ChemicalHelper.get(TagPrefix.dust, material, 1), 'gtceu:stone_dust')
.duration(material.getMass())
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace(`tfg:${material.getName()}_plated_block`)
.itemInputs(platedBlock)
.itemOutputs(ChemicalHelper.get(TagPrefix.ingot, material, 1), 'gtceu:ash_dust')
.duration(material.getMass())
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.create.item_application(platedSlab, ['#tfg:brick_slabs', plateItem])
.id(`tfg:item_application/${material.getName()}_plated_slab`)
event.recipes.createDeploying(platedSlab, ['#tfg:brick_slabs', plateItem])
.id(`tfg:deploying/${material.getName()}_plated_slab`)
event.recipes.gtceu.assembler(`tfg:assembler/${material.getName()}_plated_slab`)
event.recipes.gtceu.assembler(`tfg:${material.getName()}_plated_slab`)
.itemInputs('#tfg:brick_slabs', plateItem)
.itemOutputs(platedSlab)
.circuit(10)
.duration(50)
.EUt(4)
.EUt(GTValues.VA[GTValues.ULV])
if (tfcProperty != null) {
event.recipes.tfc.heating(platedSlab, tfcProperty.getMeltTemp())
.resultFluid(Fluid.of(outputMaterial.getFluid(), 144))
.id(`tfc:heating/metal/${tfcMetalName}_block_slab`)
}
event.recipes.gtceu.macerator(`tfg:${material.getName()}_plated_slab`)
.itemInputs(platedSlab)
.itemOutputs(ChemicalHelper.get(TagPrefix.dust, material, 1), 'gtceu:small_stone_dust')
.duration(material.getMass())
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace(`tfg:${material.getName()}_plated_slab`)
.itemInputs(platedSlab)
.itemOutputs(ChemicalHelper.get(TagPrefix.ingot, material, 1), 'gtceu:small_ash_dust')
.duration(material.getMass())
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.create.item_application(platedStair, ['#tfg:brick_stairs', plateItem])
.id(`tfg:item_application/${material.getName()}_plated_stair`)
event.recipes.createDeploying(platedStair, ['#tfg:brick_stairs', plateItem])
.id(`tfg:deploying/${material.getName()}_plated_stair`)
event.recipes.gtceu.assembler(`tfg:assembler/${material.getName()}_plated_stair`)
event.recipes.gtceu.assembler(`tfg:${material.getName()}_plated_stair`)
.itemInputs('#tfg:brick_stairs', plateItem)
.itemOutputs(platedStair)
.circuit(10)
.duration(50)
.EUt(4)
.EUt(GTValues.VA[GTValues.ULV])
if (tfcProperty != null) {
event.recipes.tfc.heating(platedStair, tfcProperty.getMeltTemp())
.resultFluid(Fluid.of(outputMaterial.getFluid(), 144))
.id(`tfc:heating/metal/${tfcMetalName}_block_stairs`)
}
event.recipes.gtceu.macerator(`tfg:${material.getName()}_plated_stair`)
.itemInputs(platedStair)
.itemOutputs(ChemicalHelper.get(TagPrefix.dust, material, 1), 'gtceu:stone_dust')
.duration(material.getMass())
.category(GTRecipeCategories.MACERATOR_RECYCLING)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.arc_furnace(`tfg:${material.getName()}_plated_stair`)
.itemInputs(platedStair)
.itemOutputs(ChemicalHelper.get(TagPrefix.ingot, material, 1), 'gtceu:ash_dust')
.duration(material.getMass())
.category(GTRecipeCategories.ARC_FURNACE_RECYCLING)
.EUt(GTValues.VA[GTValues.LV])
}

View file

@ -1,16 +1,28 @@
// priority: 0
const registerHandGliderRecipes = (event) => {
event.remove({id: 'hangglider:glider_framework'})
// Glider Framework
event.shaped('hangglider:glider_framework', [
'AAA',
'BCB',
'DCD'
], {
A: '#forge:rods/wrought_iron',
B: '#forge:rods/long/wrought_iron',
A: ChemicalHelper.get(TagPrefix.rod, GTMaterials.WroughtIron, 1),
B: ChemicalHelper.get(TagPrefix.rodLong, GTMaterials.WroughtIron, 1),
C: '#forge:screws',
D: '#forge:rings'
}).id('hangglider:glider_framework')
}).id('hangglider:shaped/glider_framework')
event.shaped('hangglider:glider_wing', [
' C',
' BA',
'BAA'
], {
A: '#forge:cloth',
B: ChemicalHelper.get(TagPrefix.rod, GTMaterials.WroughtIron, 1),
C: '#forge:rings'
}).id('hangglider:shaped/glider_wing')
}

View file

@ -132,6 +132,8 @@ TFCEvents.data(event => {
LootJS.modifiers((event) => {
registerGTCEULoots(event)
registerLootrLoots(event)
registerPrimitiveCreatesLoots(event)
registerTFCLoots(event)
});
/**
@ -148,7 +150,6 @@ GTCEuServerEvents.oreVeins(event => {
*/
ServerEvents.recipes(event => {
registerAdvancedPeripheralsRecipes(event)
registerAdvancedPeripheralsRecyclingRecipes(event)
registerAlekishipsRecipes(event)
registerAE2Recipes(event)
registerAFCRecipes(event)
@ -162,9 +163,7 @@ ServerEvents.recipes(event => {
registerChiselAndBitsRecipes(event)
registerComfortsRecipes(event);
registerComputerCraftRecipes(event)
registerComputerCraftRecyclingRecipes(event)
registerCccBridgeRecipes(event)
registerCccBridgeRecyclingRecipes(event)
registerConstructionwandRecipes(event)
registerCreateRecipes(event)
registerCreateAdditionsRecipes(event)
@ -184,7 +183,7 @@ ServerEvents.recipes(event => {
registerFTBQuestsRecipes(event)
registerGrapplingHookRecipes(event);
registerGreateRecipes(event)
registerGTCEURecipes(event)
registerGTCEURecipes(event);
registerHandGliderRecipes(event)
registerHotOrNotRecipes(event)
registerImmersiveAircraftRecipes(event)

View file

@ -227,6 +227,15 @@ const registerMinecraftRecipes = (event) => {
.resultItem('minecraft:sponge')
.id('tfg:minecraft/heating/sponge')
event.recipes.gtceu.chemical_reactor('minecraft:gtceu/chemical_reactor/sponge')
.itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.SodiumBisulfate, 1))
.inputFluids(Fluid.of('gtceu:polyethylene', 144), Fluid.of('minecraft:water', 250))
.itemOutputs('2x minecraft:sponge')
.outputFluids(Fluid.of('gtceu:sodium_persulfate', 35))
.duration(80)
.EUt(GTValues.VA[GTValues.LV])
//#endregion
//#region Выход: Тонированное стекло
@ -866,6 +875,14 @@ const registerMinecraftRecipes = (event) => {
generateCutterRecipe(event, '#forge:double_plates/wrought_iron', 'minecraft:iron_door', 400, GTValues.VA[GTValues.LV], 'iron_door')
event.shaped('4x minecraft:ladder', [
'A A',
'AAA',
'A A'
], {
A: '#forge:rods/wooden'
}).id('gtceu:shaped/ladder')
// #endregion
// #region Calcite

View file

@ -911,6 +911,9 @@ function removeMinecraftRecipes(event) {
event.remove({ id: 'minecraft:warped_hyphae' })
event.remove({ id: 'minecraft:stripped_crimson_hyphae' })
event.remove({ id: 'minecraft:crimson_hyphae' })
event.remove({ id: 'minecraft:arrow' })
event.remove({ output: 'minecraft:tipped_arrow' })
//#endregion

View file

@ -54,7 +54,6 @@ const registerMinecraftItemTags = (event) => {
event.add('tfc:rock/raw', 'minecraft:blackstone')
event.add('tfc:rock/raw', 'minecraft:dripstone_block')
event.add('forge:cloth', 'minecraft:phantom_membrane')
event.add('tfc:sewing_dark_cloth', 'minecraft:phantom_membrane')
event.remove('forge:gems', 'minecraft:charcoal')

View file

@ -0,0 +1,10 @@
// priority: 0
function registerPrimitiveCreatesLoots(event) {
event.addEntityLootModifier('kaolinclayze:tfc')
.addWeightedLoot([7,15], ['tfc:kaolin_clay', 'minecraft:clay_ball'])
event.addEntityLootModifier('kaolinclayze:golem_2')
.addWeightedLoot([7,15], ['gtceu:poor_raw_graphite', 'gtceu:raw_graphite', 'gtceu:rich_raw_graphite'])
}

View file

@ -177,6 +177,7 @@ const registerTFCFertilizers = (event) => {
//#region registerTFCKnappingTypes
const registerTFCKnappingTypes = (event) => {
event.knappingType('minecraft:flint', 1, 1, 'tfc:item.knapping.stone', true, false, true, 'minecraft:flint', 'tfg:flint')
// event.knappingType('gtceu:rubber_plate', 1, 5, 'tfc:item.knapping.leather', true, false, true, 'gtceu:rubber_plate', 'tfg:rubber')
// event.knappingType('gtceu:styrene_butadiene_rubber_plate', 1, 5, 'tfc:item.knapping.leather', true, false, true, 'gtceu:styrene_butadiene_rubber_plate', 'tfg:styrene_butadiene_rubber_plate')
// event.knappingType('gtceu:silicone_rubber_plate', 1, 5, 'tfc:item.knapping.leather', true, false, true, 'gtceu:silicone_rubber_plate', 'tfg:silicone_rubber_plate')
@ -198,14 +199,8 @@ const registerTFCItemSize = (event) => {
event.itemSize('tfg:decorative_vase', 'normal', 'medium', 'decorative_vase')
event.itemSize('tfg:decorative_vase/unfired', 'normal', 'medium', 'decorative_vase/unfired')
event.itemSize('man_of_many_planes:scarlet_biplane', 'huge', 'very_heavy')
event.itemSize('man_of_many_planes:economy_plane', 'huge', 'very_heavy')
event.itemSize('immersive_aircraft:airship', 'huge', 'very_heavy')
event.itemSize('immersive_aircraft:cargo_airship', 'huge', 'very_heavy')
event.itemSize('immersive_aircraft:warship', 'huge', 'very_heavy')
event.itemSize('immersive_aircraft:biplane', 'huge', 'very_heavy')
event.itemSize('immersive_aircraft:gyrodyne', 'huge', 'very_heavy')
event.itemSize('immersive_aircraft:quadrocopter', 'very_large', 'very_heavy')
event.itemSize('#tfc:ore_pieces', 'very_small', 'very_light', 'tfc_ores')
}
//#endregion

View file

@ -0,0 +1,61 @@
// priority: 0
function registerTFCLoots(event)
{
event.addEntityLootModifier('tfc:black_bear')
.addWeightedLoot([8,12], ['tfc:food/bear'])
event.addEntityLootModifier('tfc:grizzly_bear')
.addWeightedLoot([10,16], ['tfc:food/bear'])
event.addEntityLootModifier('tfc:polar_bear')
.addWeightedLoot([14,20], ['tfc:food/bear'])
.addWeightedLoot([2,5], ['tfc:blubber'])
event.addEntityLootModifier('tfc:cougar')
.addWeightedLoot([6,10], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:panther')
.addWeightedLoot([6,10], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:sabertooth')
.addWeightedLoot([9,14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:lion')
.addWeightedLoot([9,14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:tiger')
.addWeightedLoot([9,14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:ocelot')
.addWeightedLoot([2,5], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:cat')
.addWeightedLoot([2,5], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:sabertooth')
.addWeightedLoot([9,14], ['tfc:food/gran_feline'])
event.addEntityLootModifier('tfc:dog')
.addWeightedLoot([5,9], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:wolf')
.addWeightedLoot([5,9], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:direwolf')
.addWeightedLoot([10,15], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:wolf')
.addWeightedLoot([5,9], ['tfc:food/wolf'])
event.addEntityLootModifier('tfc:hyena')
.addWeightedLoot([5,9], ['tfc:food/hyena'])
event.addEntityLootModifier('tfc:fox')
.addWeightedLoot([5,9], ['tfc:food/fox'])
event.addEntityLootModifier('tfc:crocodile')
.addWeightedLoot([5,10], ['tfc:food/bluegill', 'tfc:food/crappie', 'tfc:food/lake_trout', 'tfc:food/rainbow_trout', 'tfc:food/frog_legs'])
.addSequenceLoot(LootEntry.of('tfc:metal/fish_hook/copper').when(c => c.randomChance(0.2)))
}

View file

@ -164,7 +164,12 @@ const registerTFCRecipes = (event) => {
event.recipes.tfc.advanced_shapeless_crafting(
TFC.itemStackProvider.of('5x tfc:food/pumpkin_chunks').copyFood(),
[TFC.ingredient.notRotten('tfc:pumpkin'), '#forge:tools/hammers'], 'tfc:pumpkin')
.id(`tfc:crafting/pumpkin_chunks`)
.id(`tfc:crafting/pumpkin_chunks_hammer`)
event.recipes.tfc.advanced_shapeless_crafting(
TFC.itemStackProvider.of('5x tfc:food/pumpkin_chunks').copyFood(),
[TFC.ingredient.notRotten('tfc:pumpkin'), '#tfc:knives'], 'tfc:pumpkin')
.id(`tfc:crafting/pumpkin_chunks_knife`)
// Lime
event.smelting('tfc:powder/lime', 'tfc:powder/flux')
@ -175,8 +180,17 @@ const registerTFCRecipes = (event) => {
.id('tfg:smelting/kaolinite_clay')
// Fire Brick
//event.smelting('tfc:ceramic/fire_brick', 'gtceu:compressed_fireclay')
// .id('tfg:smelting/fireclay_brick')
event.recipes.gtceu.alloy_smelter('tfg:cheaper_fire_brick')
.itemInputs('#forge:dusts/graphite', 'tfc:kaolin_clay')
.itemOutputs('tfc:fire_clay')
.duration(600)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.alloy_smelter('tfg:oops_i_smelted_all_my_kaolin')
.itemInputs('5x minecraft:clay_ball', 'tfc:powder/kaolinite')
.itemOutputs('5x tfc:kaolin_clay')
.duration(600)
.EUt(GTValues.VA[GTValues.ULV])
// Выпаривание соли
event.recipes.tfc.pot([], Fluid.of('tfc:salt_water', 625), 300, 100)

View file

@ -279,6 +279,7 @@ function registerTFCMachineRecipes(event) {
event.recipes.gtceu.fermenter(`tfg:fermenter/cream_from_${milk.id.replace(':', '_')}`)
.inputFluids(Fluid.of(milk.id, 1000))
.outputFluids(Fluid.of('firmalife:cream'))
.circuit(6)
.duration(1200)
.EUt(24)
})
@ -332,13 +333,32 @@ function registerTFCMachineRecipes(event) {
.EUt(2)
// Empty Jar
event.recipes.gtceu.assembler(`tfg:tfc/glass_jar`)
event.recipes.gtceu.alloy_smelter('tfc:jar_alloying')
.itemInputs('#tfc:glass_batches_tier_2')
.circuit(2)
.notConsumable('gtceu:cylinder_casting_mold')
.itemOutputs('tfc:empty_jar')
.duration(100)
.EUt(2)
event.recipes.gtceu.fluid_solidifier('tfc:jar_solidification')
.inputFluids(Fluid.of('gtceu:glass', 144))
.notConsumable('gtceu:cylinder_casting_mold')
.itemOutputs('tfc:empty_jar')
.duration(100)
.EUt(2)
event.recipes.gtceu.extractor('tfc:jar_extraction')
.itemInputs('#tfc:jars')
.outputFluids(Fluid.of('gtceu:glass', 144))
.duration(50)
.EUt(2)
event.recipes.gtceu.extractor('tfc:glass_batch_extraction')
.itemInputs('#tfc:glass_batches')
.outputFluids(Fluid.of('gtceu:glass', 144))
.duration(50)
.EUt(2)
// Wool Yarn
event.recipes.gtceu.macerator('macerate_wool')
.itemInputs('#minecraft:wool')

View file

@ -1056,7 +1056,7 @@ function registerTFCMaterialsRecipes(event) {
// Декрафт блока в жидкость
event.recipes.tfc.heating(`#forge:storage_blocks/${material.getName()}`, tfcProperty.getMeltTemp())
.resultFluid(Fluid.of(outputMaterial.getFluid(), 1296))
.id(`tfc:heating/metal/${material.getName()}_block`)
.id(`tfc:heating/metal/${material.getName()}_storage_block`)
}

View file

@ -84,70 +84,70 @@ function registerTFCMetalsRecipes(event) {
event.recipes.gtceu.forge_hammer('tfg/refined_bloom')
.itemInputs('tfc:raw_iron_bloom')
.itemOutputs('tfc:refined_iron_bloom')
.duration(1000)
.duration(400)
.EUt(4)
// Укрепленная крица -> Слиток кованного железа
event.recipes.gtceu.forge_hammer('tfg/wrought_iron_ingot')
.itemInputs('tfc:refined_iron_bloom')
.itemOutputs('gtceu:wrought_iron_ingot')
.duration(1000)
.duration(400)
.EUt(4)
// Чугун -> Высокоуглеродная сталь
event.recipes.gtceu.forge_hammer('tfg/high_carbon_steel')
.itemInputs('tfc:metal/ingot/pig_iron')
.itemOutputs('tfc:metal/ingot/high_carbon_steel')
.duration(700)
.duration(500)
.EUt(4)
// Высокоуглеродная сталь -> Cталь
event.recipes.gtceu.forge_hammer('tfg/steel')
.itemInputs('tfc:metal/ingot/high_carbon_steel')
.itemOutputs('gtceu:steel_ingot')
.duration(700)
.duration(500)
.EUt(4)
// Высокоуглеродная черная сталь -> черная сталь
event.recipes.gtceu.forge_hammer('tfg/black_steel')
.itemInputs('tfc:metal/ingot/high_carbon_black_steel')
.itemOutputs('tfc:metal/ingot/black_steel')
.duration(900)
.duration(600)
.EUt(4)
// Высокоуглеродная синяя сталь -> синяя сталь
event.recipes.gtceu.forge_hammer('tfg/blue_steel')
.itemInputs('tfc:metal/ingot/high_carbon_blue_steel')
.itemOutputs('tfc:metal/ingot/blue_steel')
.duration(1000)
.duration(700)
.EUt(4)
// Высокоуглеродная красная сталь -> красная сталь
event.recipes.gtceu.forge_hammer('tfg/red_steel')
.itemInputs('tfc:metal/ingot/high_carbon_red_steel')
.itemOutputs('tfc:metal/ingot/red_steel')
.duration(1000)
.duration(700)
.EUt(4)
// Слабая сталь + Чугун -> Высокоуглеродная черная сталь
event.recipes.gtceu.alloy_smelter('tfg/high_carbon_black_steel')
.itemInputs('tfc:metal/ingot/weak_steel', 'tfc:metal/ingot/pig_iron')
.itemOutputs('2x tfc:metal/ingot/high_carbon_black_steel')
.duration(1000)
.duration(600)
.EUt(4)
// Слабая синяя сталь + Черная сталь -> Высокоуглеродная синяя сталь
event.recipes.gtceu.alloy_smelter('tfg/high_carbon_blue_steel')
.itemInputs('tfc:metal/ingot/weak_blue_steel', 'tfc:metal/ingot/black_steel')
.itemOutputs('2x tfc:metal/ingot/high_carbon_blue_steel')
.duration(1000)
.duration(700)
.EUt(4)
// Слабая красная сталь + Черная сталь -> Высокоуглеродная красная сталь
event.recipes.gtceu.alloy_smelter('tfg/high_carbon_red_steel')
.itemInputs('tfc:metal/ingot/weak_red_steel', 'tfc:metal/ingot/black_steel')
.itemOutputs('2x tfc:metal/ingot/high_carbon_red_steel')
.duration(1000)
.duration(700)
.EUt(4)
const TFC_INTERMEDIATE_METALS =
@ -248,50 +248,67 @@ function registerTFCMetalsRecipes(event) {
.id(`tfc:anvil/iron_door`)
// Bloom -> Wrought Iron Ingot
event.recipes.tfc.anvil('gtceu:wrought_iron_ingot', 'tfc:refined_iron_bloom', ['hit_last', 'hit_second_last', 'hit_third_last']).tier(2)
event.recipes.tfc.anvil('gtceu:wrought_iron_ingot', 'tfc:refined_iron_bloom', ['hit_last', 'hit_second_last', 'hit_third_last'])
.tier(2)
.id('tfc:anvil/wrought_iron_from_bloom')
// High Carbon Steel Ingot -> Steel Ingot
event.recipes.tfc.anvil('gtceu:steel_ingot', 'tfc:metal/ingot/high_carbon_steel', ['hit_last', 'hit_second_last', 'hit_third_last']).tier(3)
event.recipes.tfc.anvil('gtceu:steel_ingot', 'tfc:metal/ingot/high_carbon_steel', ['hit_last', 'hit_second_last', 'hit_third_last'])
.tier(3)
.id('tfc:anvil/steel_ingot')
// High Carbon Black Steel Ingot -> Black Steel Ingot
event.recipes.tfc.anvil('tfc:metal/ingot/black_steel', 'tfc:metal/ingot/high_carbon_black_steel', ['hit_last', 'hit_second_last', 'hit_third_last']).tier(4)
event.recipes.tfc.anvil('tfc:metal/ingot/black_steel', 'tfc:metal/ingot/high_carbon_black_steel', ['hit_last', 'hit_second_last', 'hit_third_last'])
.tier(4)
.id('tfc:anvil/black_steel_ingot')
// High Carbon Red Steel Ingot -> Red Steel Ingot
event.recipes.tfc.anvil('tfc:metal/ingot/red_steel', 'tfc:metal/ingot/high_carbon_red_steel', ['hit_last', 'hit_second_last', 'hit_third_last']).tier(5)
event.recipes.tfc.anvil('tfc:metal/ingot/red_steel', 'tfc:metal/ingot/high_carbon_red_steel', ['hit_last', 'hit_second_last', 'hit_third_last'])
.tier(5)
.id('tfc:anvil/red_steel_ingot')
// High Carbon Blue Steel Ingot -> Blue Steel Ingot
event.recipes.tfc.anvil('tfc:metal/ingot/blue_steel', 'tfc:metal/ingot/high_carbon_blue_steel', ['hit_last', 'hit_second_last', 'hit_third_last']).tier(5)
event.recipes.tfc.anvil('tfc:metal/ingot/blue_steel', 'tfc:metal/ingot/high_carbon_blue_steel', ['hit_last', 'hit_second_last', 'hit_third_last'])
.tier(5)
.id('tfc:anvil/blue_steel_ingot')
// Gears
event.recipes.tfc.anvil('gtceu:bronze_gear', '#forge:double_plates/bronze', ['punch_last', 'shrink_any', 'draw_any']).tier(2)
event.recipes.tfc.anvil('gtceu:bronze_gear', '#forge:double_plates/bronze', ['punch_last', 'shrink_any', 'draw_any'])
.tier(2)
.id('tfc:anvil/bronze_gear')
event.recipes.tfc.anvil('gtceu:black_bronze_gear', '#forge:double_plates/black_bronze', ['punch_last', 'shrink_any', 'draw_any']).tier(2)
event.recipes.tfc.anvil('gtceu:black_bronze_gear', '#forge:double_plates/black_bronze', ['punch_last', 'shrink_any', 'draw_any'])
.tier(2)
.id('tfc:anvil/black_bronze_gear')
event.recipes.tfc.anvil('gtceu:bismuth_bronze_gear', '#forge:double_plates/bismuth_bronze', ['punch_last', 'shrink_any', 'draw_any']).tier(2)
event.recipes.tfc.anvil('gtceu:bismuth_bronze_gear', '#forge:double_plates/bismuth_bronze', ['punch_last', 'shrink_any', 'draw_any'])
.tier(2)
.id('tfc:anvil/bismuth_bronze_gear')
event.recipes.tfc.anvil('gtceu:wrought_iron_gear', '#forge:double_plates/wrought_iron', ['punch_last', 'shrink_any', 'draw_any']).tier(3)
event.recipes.tfc.anvil('gtceu:wrought_iron_gear', '#forge:double_plates/wrought_iron', ['punch_last', 'shrink_any', 'draw_any'])
.tier(3)
.id('tfc:anvil/wrought_iron_gear')
event.recipes.tfc.anvil('gtceu:steel_gear', '#forge:double_plates/steel', ['punch_last', 'shrink_any', 'draw_any']).tier(4)
event.recipes.tfc.anvil('gtceu:steel_gear', '#forge:double_plates/steel', ['punch_last', 'shrink_any', 'draw_any'])
.tier(4)
.id('tfc:anvil/steel_gear')
event.recipes.tfc.anvil('gtceu:black_steel_gear', '#forge:double_plates/black_steel', ['punch_last', 'shrink_any', 'draw_any']).tier(5)
event.recipes.tfc.anvil('gtceu:black_steel_gear', '#forge:double_plates/black_steel', ['punch_last', 'shrink_any', 'draw_any'])
.tier(5)
.id('tfc:anvil/black_steel_gear')
event.recipes.tfc.anvil('gtceu:red_steel_gear', '#forge:double_plates/red_steel', ['punch_last', 'shrink_any', 'draw_any']).tier(6)
event.recipes.tfc.anvil('gtceu:red_steel_gear', '#forge:double_plates/red_steel', ['punch_last', 'shrink_any', 'draw_any'])
.tier(6)
.id('tfc:anvil/red_steel_gear')
event.recipes.tfc.anvil('gtceu:blue_steel_gear', '#forge:double_plates/blue_steel', ['punch_last', 'shrink_any', 'draw_any']).tier(6)
event.recipes.tfc.anvil('gtceu:blue_steel_gear', '#forge:double_plates/blue_steel', ['punch_last', 'shrink_any', 'draw_any'])
.tier(6)
.id('tfc:anvil/blue_steel_gear')
event.recipes.tfc.anvil('gtceu:small_wrought_iron_gear', '#forge:ingots/wrought_iron', ['shrink_last', 'shrink_second_last', 'upset_third_last']).tier(3)
event.recipes.tfc.anvil('gtceu:small_wrought_iron_gear', '#forge:ingots/wrought_iron', ['hit_last', 'shrink_second_last', 'draw_third_last'])
.tier(3)
.id('tfc:anvil/small_wrought_iron_gear')
event.recipes.tfc.anvil('gtceu:small_steel_gear', '#forge:ingots/steel', ['shrink_last', 'shrink_second_last', 'upset_third_last']).tier(4)
event.recipes.tfc.anvil('gtceu:small_steel_gear', '#forge:ingots/steel', ['hit_last', 'shrink_second_last', 'draw_third_last'])
.tier(4)
.id('tfc:anvil/small_steel_gear')
event.recipes.tfc.anvil('gtceu:small_brass_gear', '#forge:ingots/brass', ['shrink_last', 'shrink_second_last', 'upset_third_last']).tier(2)
event.recipes.tfc.anvil('gtceu:small_brass_gear', '#forge:ingots/brass', ['hit_last', 'shrink_second_last', 'draw_third_last'])
.tier(2)
.id('tfc:anvil/small_brass_gear')
event.recipes.tfc.anvil('gtceu:small_bronze_gear', '#forge:ingots/bronze', ['shrink_last', 'shrink_second_last', 'upset_third_last']).tier(2)
event.recipes.tfc.anvil('gtceu:small_bronze_gear', '#forge:ingots/bronze', ['hit_last', 'shrink_second_last', 'draw_third_last'])
.tier(2)
.id('tfc:anvil/small_bronze_gear')
// Cast iron -> Raw Iron Bloom

View file

@ -70,6 +70,21 @@ function registerTFCStoneRecipes(event) {
`4x tfc:rock/gravel/${stone}`
]).id(`tfc:shapeless/gravel_to_loose_${stone}`)
// Cobble Unpacking
event.recipes.gtceu.packer(`tfc:gtceu/packer/unpacking_mossy_${stone}_cobble_into_loose`)
.itemInputs(`1x tfc:rock/mossy_cobble/${stone}`)
.circuit(1)
.itemOutputs(`4x tfc:rock/mossy_loose/${stone}`)
.duration(20)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.gtceu.packer(`tfc:gtceu/packer/unpacking_${stone}_cobble_into_loose`)
.itemInputs(`1x tfc:rock/cobble/${stone}`)
.circuit(1)
.itemOutputs(`4x tfc:rock/loose/${stone}`)
.duration(20)
.EUt(GTValues.VA[GTValues.ULV])
//#endregion
// #region Stonecutting

View file

@ -258,6 +258,13 @@ const registerTFCItemTags = (event) => {
event.add('forge:cloth', 'tfc:burlap_cloth')
event.add('forge:cloth', 'tfc:wool_cloth')
event.add('forge:cloth', 'tfc:silk_cloth')
event.add('forge:cloth', 'minecraft:phantom_membrane')
// Piglin loved
event.add('minecraft:piglin_loved', 'tfc:ore/small_native_gold')
event.add('minecraft:piglin_loved', 'tfc:ore/poor_native_gold')
event.add('minecraft:piglin_loved', 'tfc:ore/normal_native_gold')
event.add('minecraft:piglin_loved', 'tfc:ore/rich_native_gold')
}
const registerTFCBlockTags = (event) => {

View file

@ -5,441 +5,472 @@ function registerTFGMedicineRecipes(event) {
//#region Antipoison
event.recipes.firmalife.mixing_bowl()
.ingredients(['#forge:wax', '#tfg:antipoison_ingredients', 'gtceu:tricalcium_phosphate_dust'], Fluid.of('tfc:spring_water', 250))
.ingredients(['#forge:wax', '#tfg:antipoison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1)], Fluid.of('tfc:spring_water', 250))
.outputItem('1x tfg:antipoison_pill')
.id(`tfg:mixing_bowl/pill_antipoison`)
event.recipes.create.mixing(
'1x tfg:antipoison_pill',
['#forge:wax', '#tfg:antipoison_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('tfc:spring_water', 250)])
.id(`tfg:create/mixer/spring_water/pill_antipoison`)
event.recipes.create.mixing(
'1x tfg:antipoison_pill',
['#forge:wax', '#tfg:antipoison_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('gtceu:distilled_water', 50)])
.id(`tfg:create/mixer/distilled_water/pill_antipoison`)
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/pill_antipoison`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:antipoison_pill')
.itemInputs('#forge:wax', '#tfg:antipoison_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:antipoison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/pill_antipoison`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:antipoison_pill')
.itemInputs('#forge:wax', '#tfg:antipoison_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:antipoison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/tablet_antipoison`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:antipoison_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:antipoison_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:antipoison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/tablet_antipoison`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:antipoison_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:antipoison_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:antipoison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
//#endregion
//#region Poison
event.recipes.firmalife.mixing_bowl()
.ingredients(['#forge:wax', '#tfg:poison_ingredients', 'tfc:powder/sulfur'], Fluid.of('tfc:spring_water', 250))
.ingredients(['#forge:wax', '#tfg:poison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1)], Fluid.of('tfc:spring_water', 250))
.outputItem('1x tfg:poison_pill')
.id(`tfg:mixing_bowl/pill_poison`)
event.recipes.create.mixing(
'1x tfg:poison_pill',
['#forge:wax', '#tfg:poison_ingredients', 'tfc:powder/sulfur', Fluid.of('tfc:spring_water', 250)])
.id(`tfg:create/mixer/spring_water/pill_poison`)
event.recipes.create.mixing(
'1x tfg:poison_pill',
['#forge:wax', '#tfg:poison_ingredients', 'tfc:powder/sulfur', Fluid.of('gtceu:distilled_water', 50)])
.id(`tfg:create/mixer/distilled_water/pill_poison`)
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/pill_poison`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:poison_pill')
.itemInputs('#forge:wax', '#tfg:poison_ingredients', 'tfc:powder/sulfur')
.itemInputs('#forge:wax', '#tfg:poison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/pill_poison`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:poison_pill')
.itemInputs('#forge:wax', '#tfg:poison_ingredients', 'tfc:powder/sulfur')
.itemInputs('#forge:wax', '#tfg:poison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/tablet_poison`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:poison_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:poison_ingredients', 'tfc:powder/sulfur')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:poison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/tablet_poison`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:poison_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:poison_ingredients', 'tfc:powder/sulfur')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:poison_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
// Arrow
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/poison_1`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:poison"}'))
.itemInputs('16x minecraft:arrow', 'tfg:poison_pill')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/poison_2`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:long_poison"}'))
.itemInputs('16x minecraft:arrow', 'tfg:poison_tablet')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
//#endregion
//#region Regeneration
event.recipes.firmalife.mixing_bowl()
.ingredients(['#forge:wax', '#tfg:regeneration_ingredients', 'gtceu:tricalcium_phosphate_dust'], Fluid.of('tfc:spring_water', 250))
.ingredients(['#forge:wax', '#tfg:regeneration_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1)], Fluid.of('tfc:spring_water', 250))
.outputItem('1x tfg:regeneration_pill')
.id(`tfg:mixing_bowl/pill_regeneration`)
event.recipes.create.mixing(
'1x tfg:regeneration_pill',
['#forge:wax', '#tfg:regeneration_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('tfc:spring_water', 250)])
.id(`tfg:create/mixer/spring_water/pill_regeneration`)
event.recipes.create.mixing(
'1x tfg:regeneration_pill',
['#forge:wax', '#tfg:regeneration_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('gtceu:distilled_water', 50)])
.id(`tfg:create/mixer/distilled_water/pill_regeneration`)
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/pill_regeneration`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:regeneration_pill')
.itemInputs('#forge:wax', '#tfg:regeneration_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:regeneration_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/pill_regeneration`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:regeneration_pill')
.itemInputs('#forge:wax', '#tfg:regeneration_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:regeneration_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/tablet_regeneration`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:regeneration_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:regeneration_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:regeneration_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/tablet_regeneration`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:regeneration_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:regeneration_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:regeneration_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
// Arrow
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/regeneration_1`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:regeneration"}'))
.itemInputs('16x minecraft:arrow', 'tfg:regeneration_pill')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/regeneration_2`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:long_regeneration"}'))
.itemInputs('16x minecraft:arrow', 'tfg:regeneration_tablet')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
//#endregion
//#region Speed
event.recipes.firmalife.mixing_bowl()
.ingredients(['#forge:wax', '#tfg:speed_ingredients', 'gtceu:tricalcium_phosphate_dust'], Fluid.of('tfc:spring_water', 250))
.ingredients(['#forge:wax', '#tfg:speed_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1)], Fluid.of('tfc:spring_water', 250))
.outputItem('1x tfg:speed_pill')
.id(`tfg:mixing_bowl/pill_speed`)
event.recipes.create.mixing(
'1x tfg:speed_pill',
['#forge:wax', '#tfg:speed_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('tfc:spring_water', 250)])
.id(`tfg:create/mixer/spring_water/pill_speed`)
event.recipes.create.mixing(
'1x tfg:speed_pill',
['#forge:wax', '#tfg:speed_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('gtceu:distilled_water', 50)])
.id(`tfg:create/mixer/distilled_water/pill_speed`)
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/pill_speed`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:speed_pill')
.itemInputs('#forge:wax', '#tfg:speed_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:speed_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/pill_speed`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:speed_pill')
.itemInputs('#forge:wax', '#tfg:speed_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:speed_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/tablet_speed`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:speed_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:speed_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:speed_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/tablet_speed`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:speed_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:speed_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:speed_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
// Arrow
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/swiftness_1`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:swiftness"}'))
.itemInputs('16x minecraft:arrow', 'tfg:speed_pill')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/swiftness_2`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:long_swiftness"}'))
.itemInputs('16x minecraft:arrow', 'tfg:speed_tablet')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
//#endregion
//#region Slowness
event.recipes.firmalife.mixing_bowl()
.ingredients(['#forge:wax', '#tfg:slowness_ingredients', 'tfc:powder/sulfur'], Fluid.of('tfc:spring_water', 250))
.ingredients(['#forge:wax', '#tfg:slowness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1)], Fluid.of('tfc:spring_water', 250))
.outputItem('1x tfg:slowness_pill')
.id(`tfg:mixing_bowl/pill_slowness`)
event.recipes.create.mixing(
'1x tfg:slowness_pill',
['#forge:wax', '#tfg:slowness_ingredients', 'tfc:powder/sulfur', Fluid.of('tfc:spring_water', 250)])
.id(`tfg:create/mixer/spring_water/pill_slowness`)
event.recipes.create.mixing(
'1x tfg:slowness_pill',
['#forge:wax', '#tfg:slowness_ingredients', 'tfc:powder/sulfur', Fluid.of('gtceu:distilled_water', 50)])
.id(`tfg:create/mixer/distilled_water/pill_slowness`)
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/pill_slowness`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:slowness_pill')
.itemInputs('#forge:wax', '#tfg:slowness_ingredients', 'tfc:powder/sulfur')
.itemInputs('#forge:wax', '#tfg:slowness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/pill_slowness`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:slowness_pill')
.itemInputs('#forge:wax', '#tfg:slowness_ingredients', 'tfc:powder/sulfur')
.itemInputs('#forge:wax', '#tfg:slowness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/tablet_slowness`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:slowness_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:slowness_ingredients', 'tfc:powder/sulfur')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:slowness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/tablet_slowness`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:slowness_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:slowness_ingredients', 'tfc:powder/sulfur')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:slowness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
// Arrow
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/slowness_1`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:slowness"}'))
.itemInputs('16x minecraft:arrow', 'tfg:slowness_pill')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/slowness_2`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:long_slowness"}'))
.itemInputs('16x minecraft:arrow', 'tfg:slowness_tablet')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
//#endregion
//#region Weakness
event.recipes.firmalife.mixing_bowl()
.ingredients(['#forge:wax', '#tfg:weakness_ingredients', 'tfc:powder/sulfur'], Fluid.of('tfc:spring_water', 250))
.ingredients(['#forge:wax', '#tfg:weakness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1)], Fluid.of('tfc:spring_water', 250))
.outputItem('1x tfg:weakness_pill')
.id(`tfg:mixing_bowl/pill_weakness`)
event.recipes.create.mixing(
'1x tfg:weakness_pill',
['#forge:wax', '#tfg:weakness_ingredients', 'tfc:powder/sulfur', Fluid.of('tfc:spring_water', 250)])
.id(`tfg:create/mixer/spring_water/pill_weakness`)
event.recipes.create.mixing(
'1x tfg:weakness_pill',
['#forge:wax', '#tfg:weakness_ingredients', 'tfc:powder/sulfur', Fluid.of('gtceu:distilled_water', 50)])
.id(`tfg:create/mixer/distilled_water/pill_weakness`)
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/pill_weakness`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:weakness_pill')
.itemInputs('#forge:wax', '#tfg:weakness_ingredients', 'tfc:powder/sulfur')
.itemInputs('#forge:wax', '#tfg:weakness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/pill_weakness`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:weakness_pill')
.itemInputs('#forge:wax', '#tfg:weakness_ingredients', 'tfc:powder/sulfur')
.itemInputs('#forge:wax', '#tfg:weakness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/tablet_weakness`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:weakness_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:weakness_ingredients', 'tfc:powder/sulfur')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:weakness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/tablet_weakness`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:weakness_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:weakness_ingredients', 'tfc:powder/sulfur')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:weakness_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.Sulfur, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
// Arrow
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/weakness_1`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:weakness"}'))
.itemInputs('16x minecraft:arrow', 'tfg:weakness_pill')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/weakness_2`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:long_weakness"}'))
.itemInputs('16x minecraft:arrow', 'tfg:weakness_tablet')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
//#endregion
//#region Haste
event.recipes.firmalife.mixing_bowl()
.ingredients(['#forge:wax', '#tfg:haste_ingredients', 'gtceu:tricalcium_phosphate_dust'], Fluid.of('tfc:spring_water', 250))
.ingredients(['#forge:wax', '#tfg:haste_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1)], Fluid.of('tfc:spring_water', 250))
.outputItem('1x tfg:haste_pill')
.id(`tfg:mixing_bowl/pill_haste`)
event.recipes.create.mixing(
'1x tfg:haste_pill',
['#forge:wax', '#tfg:haste_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('tfc:spring_water', 250)])
.id(`tfg:create/mixer/spring_water/pill_haste`)
event.recipes.create.mixing(
'1x tfg:haste_pill',
['#forge:wax', '#tfg:haste_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('gtceu:distilled_water', 50)])
.id(`tfg:create/mixer/distilled_water/pill_haste`)
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/pill_haste`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:haste_pill')
.itemInputs('#forge:wax', '#tfg:haste_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:haste_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/pill_haste`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:haste_pill')
.itemInputs('#forge:wax', '#tfg:haste_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:haste_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/tablet_haste`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:haste_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:haste_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:haste_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/tablet_haste`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:haste_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:haste_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:haste_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
//#endregion
//#region Water Breathing
event.recipes.firmalife.mixing_bowl()
.ingredients(['#forge:wax', '#tfg:water_breathing_ingredients', 'gtceu:tricalcium_phosphate_dust'], Fluid.of('tfc:spring_water', 250))
.ingredients(['#forge:wax', '#tfg:water_breathing_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1)], Fluid.of('tfc:spring_water', 250))
.outputItem('1x tfg:water_breathing_pill')
.id(`tfg:mixing_bowl/pill_water_breathing`)
event.recipes.create.mixing(
'1x tfg:water_breathing_pill',
['#forge:wax', '#tfg:water_breathing_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('tfc:spring_water', 250)])
.id(`tfg:create/mixer/spring_water/pill_water_breathing`)
event.recipes.create.mixing(
'1x tfg:water_breathing_pill',
['#forge:wax', '#tfg:water_breathing_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('gtceu:distilled_water', 50)])
.id(`tfg:create/mixer/distilled_water/pill_water_breathing`)
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/pill_water_breathing`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:water_breathing_pill')
.itemInputs('#forge:wax', '#tfg:water_breathing_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:water_breathing_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/pill_water_breathing`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:water_breathing_pill')
.itemInputs('#forge:wax', '#tfg:water_breathing_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:water_breathing_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/tablet_water_breathing`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:water_breathing_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:water_breathing_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:water_breathing_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/tablet_water_breathing`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:water_breathing_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:water_breathing_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:water_breathing_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
// Arrow
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/water_breathing_1`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:water_breathing"}'))
.itemInputs('16x minecraft:arrow', 'tfg:water_breathing_pill')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/water_breathing_2`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:long_water_breathing"}'))
.itemInputs('16x minecraft:arrow', 'tfg:water_breathing_tablet')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
//#endregion
//#region Night Vision
event.recipes.firmalife.mixing_bowl()
.ingredients(['#forge:wax', '#tfg:night_vision_ingredients', 'gtceu:tricalcium_phosphate_dust'], Fluid.of('tfc:spring_water', 250))
.ingredients(['#forge:wax', '#tfg:night_vision_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1)], Fluid.of('tfc:spring_water', 250))
.outputItem('1x tfg:night_vision_pill')
.id(`tfg:mixing_bowl/pill_night_vision`)
event.recipes.create.mixing(
'1x tfg:night_vision_pill',
['#forge:wax', '#tfg:night_vision_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('tfc:spring_water', 250)])
.id(`tfg:create/mixer/spring_water/pill_night_vision`)
event.recipes.create.mixing(
'1x tfg:night_vision_pill',
['#forge:wax', '#tfg:night_vision_ingredients', 'gtceu:tricalcium_phosphate_dust', Fluid.of('gtceu:distilled_water', 50)])
.id(`tfg:create/mixer/distilled_water/pill_night_vision`)
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/pill_night_vision`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:night_vision_pill')
.itemInputs('#forge:wax', '#tfg:night_vision_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:night_vision_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/pill_night_vision`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:night_vision_pill')
.itemInputs('#forge:wax', '#tfg:night_vision_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('#forge:wax', '#tfg:night_vision_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/spring_water/tablet_night_vision`)
.circuit(4)
.inputFluids(Fluid.of('tfc:spring_water', 250))
.itemOutputs('2x tfg:night_vision_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:night_vision_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:night_vision_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/distilled_water/tablet_night_vision`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:distilled_water', 50))
.itemOutputs('2x tfg:night_vision_tablet')
.notConsumable('gtceu:pill_casting_mold')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:night_vision_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sodium_bicarbonate_dust', 'gtceu:lactose_dust', '#tfg:night_vision_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
// Arrow
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/night_vision_1`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:night_vision"}'))
.itemInputs('16x minecraft:arrow', 'tfg:night_vision_pill')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
event.recipes.gtceu.mixer(`tfg:gtceu/mixer/arrow/night_vision_2`)
.circuit(4)
.inputFluids(Fluid.of('gtceu:ethanol', 25))
.itemOutputs(Item.of('16x minecraft:tipped_arrow', '{Potion:"minecraft:long_night_vision"}'))
.itemInputs('16x minecraft:arrow', 'tfg:night_vision_tablet')
.duration(200)
.EUt(GTValues.VA[GTValues.MV])
//#endregion
@ -449,9 +480,9 @@ function registerTFGMedicineRecipes(event) {
.circuit(4)
.inputFluids(Fluid.of('gtceu:aminophenol', 250))
.itemOutputs('1x tfg:invisibility_salvo')
.itemInputs('gtceu:sticky_resin', '#tfg:invisibility_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sticky_resin', '#tfg:invisibility_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
//#endregion
@ -461,9 +492,9 @@ function registerTFGMedicineRecipes(event) {
.circuit(4)
.inputFluids(Fluid.of('gtceu:aminophenol', 250))
.itemOutputs('1x tfg:fire_resistance_salvo')
.itemInputs('gtceu:sticky_resin', '#tfg:fire_resistance_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sticky_resin', '#tfg:fire_resistance_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
//#endregion
@ -473,9 +504,9 @@ function registerTFGMedicineRecipes(event) {
.circuit(4)
.inputFluids(Fluid.of('gtceu:aminophenol', 250))
.itemOutputs('1x tfg:resistance_salvo')
.itemInputs('gtceu:sticky_resin', '#tfg:resistance_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sticky_resin', '#tfg:resistance_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
//#endregion
@ -485,9 +516,9 @@ function registerTFGMedicineRecipes(event) {
.circuit(4)
.inputFluids(Fluid.of('gtceu:aminophenol', 250))
.itemOutputs('1x tfg:instant_health_salvo')
.itemInputs('gtceu:sticky_resin', '#tfg:instant_health_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sticky_resin', '#tfg:instant_health_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
//#endregion
@ -497,9 +528,9 @@ function registerTFGMedicineRecipes(event) {
.circuit(4)
.inputFluids(Fluid.of('gtceu:aminophenol', 250))
.itemOutputs('1x tfg:absorption_salvo')
.itemInputs('gtceu:sticky_resin', '#tfg:absorption_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sticky_resin', '#tfg:absorption_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
//#endregion
@ -509,9 +540,9 @@ function registerTFGMedicineRecipes(event) {
.circuit(4)
.inputFluids(Fluid.of('gtceu:phenol', 250))
.itemOutputs('1x tfg:luck_salvo')
.itemInputs('gtceu:sticky_resin', '#tfg:luck_ingredients', 'gtceu:tricalcium_phosphate_dust')
.itemInputs('gtceu:sticky_resin', '#tfg:luck_ingredients', ChemicalHelper.get(TagPrefix.dust, GTMaterials.TricalciumPhosphate, 1))
.duration(200)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
//#endregion

View file

@ -27,11 +27,11 @@ function registerTFGMiscellaneousRecipes(event) {
//paraffin
event.recipes.gtceu.chemical_reactor('tfg:paraffin_wax_from_lubricant')
.circuit(7)
.itemOutputs('2x tfg:paraffin_wax')
.itemOutputs('6x tfg:paraffin_wax')
.outputFluids(Fluid.of('gtceu:oil_light', 25))
.inputFluids(Fluid.of('gtceu:lubricant', 250), Fluid.of('gtceu:acetone', 25))
.duration(500)
.EUt(21)
.EUt(GTValues.VA[GTValues.LV])
// Rosin
event.recipes.firmalife.vat()
@ -50,7 +50,7 @@ function registerTFGMiscellaneousRecipes(event) {
.inputFluids(Fluid.of(`tfc:${color}_dye`, 25))
.itemOutputs(`tfg:decorative_vase/unfired/${color}`)
.duration(80)
.EUt(20)
.EUt(GTValues.VA[GTValues.ULV])
.category(GTRecipeCategories.CHEM_DYES)
event.recipes.tfc.heating(`tfg:decorative_vase/unfired/${color}`, 1399)
@ -74,7 +74,7 @@ function registerTFGMiscellaneousRecipes(event) {
.inputFluids(Fluid.of('gtceu:chlorine', 72))
.itemOutputs('tfg:decorative_vase/unfired')
.duration(80)
.EUt(20)
.EUt(GTValues.VA[GTValues.ULV])
.category(GTRecipeCategories.CHEM_DYES)
event.smelting(
@ -107,7 +107,7 @@ function registerTFGMiscellaneousRecipes(event) {
.itemOutputs('1x gtceu:lactose_dust')
.outputFluids(Fluid.of('tfc:curdled_milk', 1000))
.duration(300)
.EUt(30)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer('lactose_milk_yak')
.circuit(1)
@ -115,7 +115,7 @@ function registerTFGMiscellaneousRecipes(event) {
.itemOutputs('1x gtceu:lactose_dust')
.outputFluids(Fluid.of('firmalife:curdled_yak_milk', 1000))
.duration(300)
.EUt(30)
.EUt(GTValues.VA[GTValues.LV])
event.recipes.gtceu.mixer('lactose_milk_goat')
.circuit(1)
@ -123,7 +123,7 @@ function registerTFGMiscellaneousRecipes(event) {
.itemOutputs('1x gtceu:lactose_dust')
.outputFluids(Fluid.of('firmalife:curdled_goat_milk', 1000))
.duration(300)
.EUt(30)
.EUt(GTValues.VA[GTValues.LV])
//Scaffolding Frame
event.shaped('tfg:scaffolding_frame',
@ -141,7 +141,7 @@ function registerTFGMiscellaneousRecipes(event) {
.itemInputs('8x #forge:rods/wood', '#forge:cloth')
.itemOutputs('tfg:scaffolding_frame')
.duration(10)
.EUt(2);
.EUt(GTValues.VA[GTValues.ULV]);
//Airship Hull
event.shaped('tfg:airship_hull', [
@ -158,7 +158,7 @@ function registerTFGMiscellaneousRecipes(event) {
.itemOutputs('tfg:airship_hull')
.duration(40)
.circuit(1)
.EUt(10);
.EUt(GTValues.VA[GTValues.ULV]);
//Airship Balloon
event.shaped('tfg:airship_balloon', [
@ -175,7 +175,7 @@ function registerTFGMiscellaneousRecipes(event) {
.itemOutputs('tfg:airship_balloon')
.duration(40)
.circuit(1)
.EUt(10)
.EUt(GTValues.VA[GTValues.ULV])
// Steam bloomery
event.shaped('gtceu:steam_bloomery', [
@ -189,4 +189,48 @@ function registerTFGMiscellaneousRecipes(event) {
D: '#forge:screws/wrought_iron',
E: '#forge:tools/wrenches'
})
// Arrow Parts
event.recipes.tfc.knapping(
'4x tfg:flint_arrow_head',
'tfg:flint',
[
' XXX',
' XXXX',
'XXXXX',
' XXX ',
' X '
]
).outsideSlotRequired(false)
.id('tfg:knapping/flint_arrow_head')
event.recipes.gtceu.assembler('tfg:assembler/flint_arrow_head')
.itemInputs('1x minecraft:flint')
.itemOutputs('4x tfg:flint_arrow_head')
.duration(20)
.circuit(4)
.EUt(GTValues.VA[GTValues.ULV])
event.recipes.tfc.damage_inputs_shapeless_crafting(
event.shapeless('4x tfg:fletching', [
'minecraft:feather',
'#forge:tools/knives'
]).id('tfg:shapeless/fletching'))
event.recipes.gtceu.assembler('tfg:assembler/fletching')
.itemInputs('1x minecraft:feather')
.itemOutputs('4x tfg:fletching')
.duration(20)
.circuit(4)
.EUt(GTValues.VA[GTValues.ULV])
event.shaped('4x minecraft:arrow', [
' A ',
' B ',
' C '
],{
A: 'tfg:flint_arrow_head',
B: '#forge:rods/wooden',
C: 'tfg:fletching'
}).id('tfg:shaped/arrow')
}

View file

@ -8,6 +8,9 @@ const registerTFGItemTags = (event) => {
})
event.add('tfg:decorative_vases', 'tfg:decorative_vase')
event.add('tfg:decorative_vases/unfired', 'tfg:decorative_vase/unfired')
//Knapping
event.add('tfc:any_knapping', 'minecraft:flint')
// #region Paper from wood
@ -25,6 +28,8 @@ const registerTFGItemTags = (event) => {
event.add('forge:wax', 'firmalife:beeswax')
event.add('forge:wax', 'tfg:conifer_rosin')
event.add('tfc:fluxstone', 'tfg:loose/dripstone')
// #endregion
// #region Medicines

View file

@ -3,6 +3,11 @@
//#region Greenhouse
const registerGTCEuMachines = (event) => {
GTMachineUtils.registerCrate(GTMaterials.BismuthBronze, 54, "Bismuth Bronze Crate");
GTMachineUtils.registerCrate(GTMaterials.BlackBronze, 54, "Black Bronze Crate");
GTMachineUtils.registerDrum(GTMaterials.BismuthBronze, 32000, "Bismuth Bronze Drum");
GTMachineUtils.registerDrum(GTMaterials.BlackBronze, 32000, "Black Bronze Drum");
const $SteamMulti = Java.loadClass('com.gregtechceu.gtceu.common.machine.multiblock.steam.SteamParallelMultiblockMachine');
const $Tags = Java.loadClass("dev.latvian.mods.kubejs.util.Tags")

View file

@ -238,13 +238,19 @@ const registerGTCEuMaterialModification = (event) => {
GTMaterials.Chromite.setProperty(PropertyKey.HAZARD, new $HAZARD_PROPERTY($HAZARD_PROPERTY.HazardTrigger.SKIN_CONTACT, GTMedicalConditions.CARCINOGEN, 1, false));
// Color Adjustments
GTMaterials.BismuthBronze.setMaterialARGB(0x8CDCB6)
GTMaterials.BlackBronze.setMaterialARGB(0xB681CE)
GTMaterials.RedSteel.setMaterialARGB(0xc8575d)
GTMaterials.RedSteel.setMaterialSecondaryARGB(0x560307)
GTMaterials.BlueSteel.setMaterialARGB(0x7a87b7)
GTMaterials.BlueSteel.setMaterialSecondaryARGB(0x283467)
GTMaterials.BismuthBronze.setMaterialARGB(0x5A966E)
GTMaterials.BismuthBronze.setMaterialSecondaryARGB(0x203E2A)
GTMaterials.BlackBronze.setMaterialARGB(0x9D789D)
GTMaterials.BlackBronze.setMaterialSecondaryARGB(0x5B425B)
GTMaterials.Steel.setMaterialARGB(0x9AA9AB)
GTMaterials.SteelMagnetic.setMaterialARGB(0x9AA9AB)
GTMaterials.RedSteel.setMaterialARGB(0xDE7B80)
GTMaterials.RedSteel.setMaterialSecondaryARGB(0xE12323)
GTMaterials.BlueSteel.setMaterialARGB(0xA0B6EC)
GTMaterials.BlueSteel.setMaterialSecondaryARGB(0x2B5CD8)
GTMaterials.Bismuth.setMaterialARGB(0x66847E)
GTMaterials.Bismuth.setMaterialSecondaryARGB(0x25465B)
GTMaterials.Iron.setMaterialARGB(0x503d32)
GTMaterials.Iron.setMaterialSecondaryARGB(0x131212)
GTMaterials.IronMagnetic.setMaterialARGB(0x503d32)

View file

@ -671,7 +671,6 @@ global.MINECRAFT_DISABLED_ITEMS = [
'minecraft:compass',
'minecraft:iron_bars',
'minecraft:honeycomb',
'minecraft:tipped_arrow',
'minecraft:grindstone',
'minecraft:fermented_spider_eye',

View file

@ -271,6 +271,7 @@ const registerTFGBlocks = (event) => {
horizontal.resistance(16)
horizontal.mapColor('color_orange')
horizontal.tagBlock('minecraft:mineable/pickaxe')
horizontal.tagBlock('minecraft:climbable')
horizontal.requiresTool(true)
horizontal.renderType('cutout')
horizontal.opaque(false)
@ -280,6 +281,7 @@ const registerTFGBlocks = (event) => {
.resistance(16)
.mapColor('color_orange')
.tagBlock('minecraft:mineable/pickaxe')
.tagBlock('minecraft:climbable')
.requiresTool(true)
.renderType('cutout')
.opaque(false)

View file

@ -140,6 +140,14 @@ const registerTFGItems = (event) => {
.translationKey('item.tfg.conifer_rosin')
//#endregion
//#region Arrow Parts
event.create('tfg:flint_arrow_head')
.translationKey('item.tfg.flint_arrow_head')
event.create('tfg:fletching')
.translationKey('item.tfg.fletching')
//#endregion
//#region Immersive Aircraft Impl
event.create('tfg:scaffolding_frame')
.translationKey('item.tfg.scaffolding_frame')

2
mods

@ -1 +1 @@
Subproject commit c44b868e396f111ff0a98ef1c89b769a1a23c50f
Subproject commit ffeea9861f4266858a98d7be602b11eb3b8df073

File diff suppressed because it is too large Load diff

View file

@ -190,23 +190,35 @@
"dynamiclights-reforged": {
"side": "CLIENT"
},
"resourceful-config": {
"rainboows": {
"side": "CLIENT"
},
"resourceful-config": {
"side": "BOTH"
},
"resourceful-lib": {
"side": "CLIENT"
"side": "BOTH"
},
"enderman-overhaul": {
"side": "CLIENT"
"side": "BOTH"
},
"primitive-creatures": {
"side": "CLIENT"
"side": "BOTH"
},
"geckolib": {
"side": "CLIENT"
"side": "BOTH"
},
"detected-setblock-be-gone": {
"side": "CLIENT"
},
"tfcgenviewer": {
"side": "BOTH"
},
"tfc-hot-or-not": {
"side": "BOTH"
},
"particular-reforged": {
"side": "BOTH"
}
}
}