diff --git a/config/allthetweaks-common.toml b/config/allthetweaks-common.toml index 923c518c..c89ce251 100644 --- a/config/allthetweaks-common.toml +++ b/config/allthetweaks-common.toml @@ -21,5 +21,5 @@ [packversionminrev] #Pack Minor Version Revision : X #Range: 0 ~ 32768 - minorrev = 13 + minorrev = 14 diff --git a/config/ftbquests/quests/chapters/allthemodium.snbt b/config/ftbquests/quests/chapters/allthemodium.snbt index 34993921..a3064d7c 100644 --- a/config/ftbquests/quests/chapters/allthemodium.snbt +++ b/config/ftbquests/quests/chapters/allthemodium.snbt @@ -9,7 +9,7 @@ quests: [ { x: -3.5d, - y: 1.5d, + y: 2.0d, dependencies: ["2403B59A21D2B3AF"], id: "3DF54AB611650DEC", tasks: [{ @@ -103,7 +103,7 @@ x: -6.0d, y: -4.5d, description: ["It is recommended to use this potion with your first ingot. "], - dependencies: ["5BDBE666E604FCAC"], + dependencies: ["71A43C89EB13E9A0"], id: "04AB01C841CD3E3F", tasks: [{ id: "2F97DA30FE1982CF", @@ -167,7 +167,7 @@ x: -2.5d, y: -4.5d, description: ["It is recommended to use this potion with your first ingot. "], - dependencies: ["2DF64CB9298E91EA"], + dependencies: ["61FDABF2C7CC1F9D"], id: "7496DB58411060AE", tasks: [{ id: "0C83388DB2387448", @@ -196,7 +196,7 @@ x: 1.0d, y: -4.5d, description: ["It is recommended to use this potion with your first ingot. "], - dependencies: ["4F6E6AF1D9E74CB7"], + dependencies: ["44760B819EB3CA68"], id: "76016E5C8C9397D2", tasks: [{ id: "238E353C6A05F0A3", @@ -238,23 +238,6 @@ item: "allthemodium:vibranium_nugget" }] }, - { - x: 0.0d, - y: -4.0d, - description: ["Unlimited Power!"], - dependencies: ["4F6E6AF1D9E74CB7"], - id: "4F23CB27606EDD78", - tasks: [{ - id: "2673FC8D2F0DB1F5", - type: "item", - item: "allthemodium:unobtainium_ingot" - }], - rewards: [{ - id: "3DBC11C23965ECCA", - type: "item", - item: "allthemodium:unobtainium_ingot" - }] - }, { x: -7.0d, y: -1.0d, @@ -336,7 +319,7 @@ { x: 0.0d, y: -1.0d, - dependencies: ["4F23CB27606EDD78"], + dependencies: ["44760B819EB3CA68"], id: "4D24742EB7E480FD", tasks: [{ id: "0F521F7C1D602AAD", @@ -368,7 +351,7 @@ x: 0.0d, y: -3.0d, description: ["This solar panel produces 32,768 FE/Tick."], - dependencies: ["4F23CB27606EDD78"], + dependencies: ["44760B819EB3CA68"], id: "630255EA7104D1E1", tasks: [{ id: "499F0061A2D1B220", @@ -385,7 +368,7 @@ x: 0.0d, y: -2.0d, description: ["Now you are just showing off."], - dependencies: ["4F23CB27606EDD78"], + dependencies: ["44760B819EB3CA68"], id: "1AFDB3AE73E72A33", tasks: [{ id: "579B48ABB0CBD18A", @@ -474,6 +457,7 @@ x: -6.0d, y: -2.5d, description: ["Bees?"], + hide_dependency_lines: true, dependencies: ["71A43C89EB13E9A0"], id: "37561407B7D8D952", tasks: [{ @@ -490,6 +474,7 @@ { x: -2.5d, y: -2.5d, + hide_dependency_lines: true, dependencies: ["61FDABF2C7CC1F9D"], id: "6BAA3137C9674E7F", tasks: [{ @@ -506,7 +491,8 @@ { x: 1.0d, y: -2.5d, - dependencies: ["4F23CB27606EDD78"], + hide_dependency_lines: true, + dependencies: ["44760B819EB3CA68"], id: "25884CEF41F8AABC", tasks: [{ id: "1C120189C0DFD703", @@ -521,7 +507,7 @@ }, { x: -4.5d, - y: 2.5d, + y: 3.0d, dependencies: ["2403B59A21D2B3AF"], id: "2AF6901685445541", tasks: [{ @@ -543,7 +529,7 @@ }, { x: -3.5d, - y: 2.5d, + y: 3.0d, description: [""], dependencies: [ "5A9C8F63CE469155", @@ -572,7 +558,7 @@ }, { x: -3.5d, - y: 3.5d, + y: 4.0d, dependencies: ["2403B59A21D2B3AF"], id: "5A9C8F63CE469155", tasks: [{ @@ -594,7 +580,7 @@ }, { x: -2.5d, - y: 2.5d, + y: 3.0d, dependencies: ["2403B59A21D2B3AF"], id: "768A30A300FCE0F3", tasks: [{ @@ -645,10 +631,7 @@ x: -2.5d, y: 0.5d, description: ["We are in the endgame now."], - dependencies: [ - "61761B6C1D1542FD", - "2673FC8D2F0DB1F5" - ], + dependencies: ["61761B6C1D1542FD"], id: "6459F9A1F845A049", tasks: [{ id: "2403B59A21D2B3AF", @@ -672,10 +655,7 @@ x: -3.5d, y: 0.5d, description: ["Doesn't taste good though."], - dependencies: [ - "6A101A8056AC9A3A", - "2673FC8D2F0DB1F5" - ], + dependencies: ["6A101A8056AC9A3A"], id: "1D3C4B41BD512EF7", tasks: [{ id: "0F3803B82A460772", @@ -809,7 +789,7 @@ { x: -1.0d, y: -4.5d, - dependencies: ["2673FC8D2F0DB1F5"], + dependencies: ["44760B819EB3CA68"], id: "172E838FFEC67A70", tasks: [{ id: "6B7216A17814B466", @@ -1028,7 +1008,8 @@ { x: -6.0d, y: -1.5d, - dependencies: ["37561407B7D8D952"], + hide_dependency_lines: true, + dependencies: ["71A43C89EB13E9A0"], id: "4DB7AB98161AC064", tasks: [{ id: "4A5DA941C0DAC273", @@ -1044,7 +1025,8 @@ { x: -2.5d, y: -1.5d, - dependencies: ["6BAA3137C9674E7F"], + hide_dependency_lines: true, + dependencies: ["61FDABF2C7CC1F9D"], id: "48A776F5F3D35B23", tasks: [{ id: "69579871C1D8E1C1", @@ -1060,7 +1042,8 @@ { x: 1.0d, y: -1.5d, - dependencies: ["25884CEF41F8AABC"], + hide_dependency_lines: true, + dependencies: ["44760B819EB3CA68"], id: "55FC612B6B92629F", tasks: [{ id: "549B21412588BDFC", @@ -1072,6 +1055,81 @@ type: "item", item: "mysticalagriculture:unobtainium_essence" }] + }, + { + x: 0.0d, + y: -4.0d, + dependencies: ["4F6E6AF1D9E74CB7"], + id: "44760B819EB3CA68", + tasks: [{ + id: "16A8B32CB4B011DA", + type: "item", + item: "allthemodium:unobtainium_ingot" + }], + rewards: [{ + id: "630BAC7F9B93C9D9", + type: "item", + item: "allthemodium:unobtainium_nugget" + }] + }, + { + x: -7.0d, + y: 0.0d, + dependencies: ["71A43C89EB13E9A0"], + id: "5130BBAD5C542EDB", + tasks: [{ + id: "1F28A31269E9EDE8", + type: "item", + item: "allthemodium:teleport_pad" + }] + }, + { + title: "Diggy Diggy Hole!", + x: -8.0d, + y: 0.5d, + dependencies: ["5130BBAD5C542EDB"], + id: "21AC1C7A92CAB0C2", + tasks: [{ + id: "59FF7825435AF860", + type: "dimension", + dimension: "allthemodium:mining" + }] + }, + { + title: "Piglin Homeworld", + x: -6.0d, + y: 0.5d, + dependencies: ["5130BBAD5C542EDB"], + id: "1A5E414C9D25703A", + tasks: [{ + id: "2212DFCF11CE8D69", + type: "dimension", + dimension: "allthemodium:the_other" + }] + }, + { + x: -6.0d, + y: -0.5d, + hide_dependency_lines: true, + dependencies: ["71A43C89EB13E9A0"], + id: "7F3B96033AB7A21E", + tasks: [{ + id: "6C79D005D95BAB61", + type: "item", + item: "allthemodium:allthemodium_apple" + }] + }, + { + x: -8.0d, + y: -0.5d, + hide_dependency_lines: true, + dependencies: ["71A43C89EB13E9A0"], + id: "15D56588634665FA", + tasks: [{ + id: "32629A7C461C48F7", + type: "item", + item: "allthemodium:allthemodium_carrot" + }] } ] } diff --git a/config/ftbquests/quests/chapters/applied_energistics_2.snbt b/config/ftbquests/quests/chapters/applied_energistics_2.snbt new file mode 100644 index 00000000..044b8b74 --- /dev/null +++ b/config/ftbquests/quests/chapters/applied_energistics_2.snbt @@ -0,0 +1,1288 @@ +{ + id: "6C891E4EAC7ADBB6", + group: "1AC60211DE7427FC", + order_index: 2, + filename: "applied_energistics_2", + title: "Applied Energistics 2", + icon: "appliedenergistics2:controller", + default_quest_shape: "", + quests: [ + { + x: 0.0d, + y: 0.0d, + shape: "gear", + description: ["Welcome to &aApplied Energistics 2&f!"], + size: 1.5d, + id: "19AE785A8A2A781B", + tasks: [{ + id: "1E3C500144353271", + type: "checkmark", + title: "Applied Energistics 2" + }], + rewards: [{ + id: "4150F41A1EBFC2CB", + type: "item", + item: { + id: "minecraft:player_head", + Count: 1b, + tag: { + SkullOwner: { + Properties: { + textures: [{ + Value: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYWQ3YzI3M2U5N2MyNzdjNDljOTA2NWVkZGYxMDdlODdlYTc3NWM4N2IyYzlmZWEwOTIyNTUwNTE5MDJhYzRhIn19fQ==" + }] + }, + Id: [I; + -647195142, + 2010533167, + -1243897687, + 1144171008 + ] + }, + display: { + Name: '{"text":"BovineShaman"}' + } + } + } + }] + }, + { + x: 2.0d, + y: 0.0d, + dependencies: ["19AE785A8A2A781B"], + id: "6E2CBFBCF0524177", + tasks: [{ + id: "38ABFDBB9990EF0F", + type: "item", + item: "appliedenergistics2:sky_compass" + }] + }, + { + title: "Inscriber Presses", + x: 3.0d, + y: 1.0d, + shape: "rsquare", + dependencies: ["6E2CBFBCF0524177"], + id: "3FD12066E2ED18B1", + tasks: [ + { + id: "09A5245AAD9EDDFA", + type: "item", + item: "appliedenergistics2:calculation_processor_press" + }, + { + id: "38A9758E4A6C23EE", + type: "item", + item: "appliedenergistics2:engineering_processor_press" + }, + { + id: "5073175CBECE1C00", + type: "item", + item: "appliedenergistics2:logic_processor_press" + }, + { + id: "1D6107ADF1895CEC", + type: "item", + item: "appliedenergistics2:silicon_press" + } + ], + rewards: [{ + id: "17DCF91EA9FF8D85", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 1.0d, + y: -1.0d, + dependencies: ["19AE785A8A2A781B"], + id: "01588BD6756AFD7D", + tasks: [ + { + id: "2687F53F3DC61595", + type: "item", + item: "appliedenergistics2:certus_quartz_crystal" + }, + { + id: "75315D1A74BF9997", + type: "item", + item: "appliedenergistics2:charged_certus_quartz_crystal" + } + ], + rewards: [{ + id: "452AF630FED19D75", + type: "xp", + xp: 100 + }] + }, + { + x: 2.0d, + y: -2.0d, + dependencies: ["01588BD6756AFD7D"], + id: "477C09F17DD5826B", + tasks: [{ + id: "0F12DAD73052342B", + type: "item", + item: "appliedenergistics2:fluix_crystal" + }], + rewards: [{ + id: "0D84486AC20E86A5", + type: "item", + item: "appliedenergistics2:charged_certus_quartz_crystal", + count: 2 + }] + }, + { + x: 1.0d, + y: 1.0d, + hide_dependency_lines: true, + dependencies: ["19AE785A8A2A781B"], + id: "12408CAE8B4D97C8", + tasks: [ + { + id: "79B65968E227BC1D", + type: "item", + item: "appliedenergistics2:grindstone" + }, + { + id: "7A5FB6648D2A3DFE", + type: "item", + item: "appliedenergistics2:crank" + } + ] + }, + { + x: 3.0d, + y: -1.0d, + shape: "rsquare", + dependencies: [ + "477C09F17DD5826B", + "6E2CBFBCF0524177" + ], + dependency_requirement: "all_started", + id: "7649A910A63AC709", + tasks: [{ + id: "3B3076A740927E5F", + type: "item", + item: "appliedenergistics2:inscriber" + }] + }, + { + x: 4.0d, + y: -2.0d, + dependencies: ["477C09F17DD5826B"], + id: "5832A9E1ED7B1524", + tasks: [{ + id: "6DD28073A81B55AE", + type: "item", + item: "appliedenergistics2:purified_fluix_crystal" + }] + }, + { + x: 2.0d, + y: 2.0d, + dependencies: ["6E2CBFBCF0524177"], + id: "483B15757D583ABB", + tasks: [{ + id: "39129ABE3D3AC37A", + type: "item", + item: "appliedenergistics2:sky_stone_block" + }], + rewards: [{ + id: "4D3EF2866C929CDE", + type: "item", + item: "appliedenergistics2:sky_stone_block", + count: 10 + }] + }, + { + x: 4.0d, + y: 2.0d, + dependencies: ["483B15757D583ABB"], + id: "10AEE3B63F71E943", + tasks: [{ + id: "175D384CB8E419D7", + type: "item", + item: "appliedenergistics2:smooth_sky_stone_block" + }], + rewards: [{ + id: "263A5CDE2F65D90F", + type: "item", + item: "appliedenergistics2:sky_stone_block", + count: 10 + }] + }, + { + x: 4.0d, + y: 0.0d, + shape: "rsquare", + description: ["The most important part of the ME system"], + dependencies: [ + "5832A9E1ED7B1524", + "3FD12066E2ED18B1", + "7649A910A63AC709", + "10AEE3B63F71E943" + ], + id: "0C9EF370D15DFC01", + tasks: [{ + id: "4BBB2BB77C2390CE", + type: "item", + item: "appliedenergistics2:controller" + }], + rewards: [{ + id: "40CF126062712518", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 12.0d, + y: 0.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "10EE17B993744BBE", + tasks: [{ + id: "18E17278AF459540", + type: "item", + item: "appliedenergistics2:quartz_fiber" + }] + }, + { + x: 14.0d, + y: 0.0d, + dependencies: ["10EE17B993744BBE"], + id: "1A8E24EE87E20806", + tasks: [{ + id: "7AAEE920DC6D9133", + type: "item", + item: "appliedenergistics2:fluix_glass_cable" + }] + }, + { + x: 10.0d, + y: -2.0d, + shape: "rsquare", + description: ["A place to put your &estorage cells&f."], + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "03650B79243393B5", + tasks: [{ + id: "7D22FEA4E24F3116", + type: "item", + item: "appliedenergistics2:drive" + }] + }, + { + x: 10.0d, + y: -4.0d, + dependencies: ["03650B79243393B5"], + id: "70E70A39E752CF99", + tasks: [ + { + id: "1F658BB1696E8CE3", + type: "item", + item: "appliedenergistics2:crafting_unit" + }, + { + id: "64192A5710FDE3F0", + type: "item", + item: "appliedenergistics2:empty_storage_cell" + } + ] + }, + { + x: 12.0d, + y: -2.0d, + dependencies: ["03650B79243393B5"], + id: "08BDB40244B67175", + tasks: [{ + id: "05356620D5709BFA", + type: "item", + item: "appliedenergistics2:io_port" + }] + }, + { + x: 9.0d, + y: -5.0d, + dependencies: ["70E70A39E752CF99"], + id: "42D1BE48C985B332", + tasks: [{ + id: "581685318E78A01D", + type: "item", + item: "appliedenergistics2:1k_cell_component" + }] + }, + { + x: 9.0d, + y: -7.0d, + dependencies: ["42D1BE48C985B332"], + id: "3ADFCF48F479DD38", + tasks: [{ + id: "468700C689662176", + type: "item", + item: "appliedenergistics2:4k_cell_component" + }] + }, + { + x: 11.0d, + y: -5.0d, + dependencies: ["70E70A39E752CF99"], + id: "44455BDD706828C6", + tasks: [{ + id: "6DC487A61508814B", + type: "item", + item: "appliedenergistics2:1k_fluid_cell_component" + }] + }, + { + x: 11.0d, + y: -7.0d, + dependencies: ["44455BDD706828C6"], + id: "14A4C69DCE06A728", + tasks: [{ + id: "738232200099AD0E", + type: "item", + item: "appliedenergistics2:4k_fluid_cell_component" + }] + }, + { + x: 11.0d, + y: -9.0d, + dependencies: ["14A4C69DCE06A728"], + id: "58AE272113881475", + tasks: [{ + id: "033995ADFB9AC000", + type: "item", + item: "appliedenergistics2:16k_fluid_cell_component" + }] + }, + { + x: 11.0d, + y: -11.0d, + dependencies: ["58AE272113881475"], + id: "7E7F3B90B0698872", + tasks: [{ + id: "25F0B88D924C691C", + type: "item", + item: "appliedenergistics2:64k_fluid_cell_component" + }] + }, + { + x: 12.0d, + y: -10.0d, + dependencies: ["7E7F3B90B0698872"], + id: "0D802448FE319FEC", + tasks: [{ + id: "505EF3252064C7BC", + type: "item", + item: "ae2extras:256k_fluid_cell_component" + }] + }, + { + x: 12.5d, + y: -8.0d, + dependencies: ["0D802448FE319FEC"], + id: "4E4D0C1F5CF0549F", + tasks: [{ + id: "2561E1D05343E037", + type: "item", + item: "ae2extras:1m_fluid_cell_component" + }] + }, + { + x: 12.5d, + y: -6.0d, + dependencies: ["4E4D0C1F5CF0549F"], + id: "0BA9FAA7642D1AC1", + tasks: [{ + id: "3D6791C74C13EACD", + type: "item", + item: "ae2extras:4m_fluid_cell_component" + }] + }, + { + x: 12.0d, + y: -4.0d, + dependencies: ["0BA9FAA7642D1AC1"], + id: "044FBD32E3B228F2", + tasks: [{ + id: "4D8A05434D0FBA2E", + type: "item", + item: "ae2extras:16m_fluid_cell_component" + }] + }, + { + x: 9.0d, + y: -9.0d, + dependencies: ["3ADFCF48F479DD38"], + id: "6DFBB26943D4CF88", + tasks: [{ + id: "546F677E7406229B", + type: "item", + item: "appliedenergistics2:16k_cell_component" + }] + }, + { + x: 9.0d, + y: -11.0d, + dependencies: ["6DFBB26943D4CF88"], + id: "0E664DCD7817BA88", + tasks: [{ + id: "61ADCD45ECD1652A", + type: "item", + item: "appliedenergistics2:64k_cell_component" + }] + }, + { + x: 8.0d, + y: -10.0d, + dependencies: ["0E664DCD7817BA88"], + id: "29A0B60E4FBBCA13", + tasks: [{ + id: "72148A21DF9B5697", + type: "item", + item: "ae2extras:256k_cell_component" + }] + }, + { + x: 7.5d, + y: -8.0d, + dependencies: ["29A0B60E4FBBCA13"], + id: "38450082134B1A8A", + tasks: [{ + id: "40DA0445150B2F58", + type: "item", + item: "ae2extras:1m_cell_component" + }] + }, + { + x: 7.5d, + y: -6.0d, + dependencies: ["38450082134B1A8A"], + id: "799E5DF27B686E7F", + tasks: [{ + id: "3DD3FC8CA6885A4A", + type: "item", + item: "ae2extras:4m_cell_component" + }] + }, + { + x: 8.0d, + y: -4.0d, + dependencies: ["799E5DF27B686E7F"], + id: "0E9ECD002C0C79B2", + tasks: [{ + id: "76BF304343BF1B5F", + type: "item", + item: "ae2extras:16m_cell_component" + }] + }, + { + x: 14.0d, + y: -2.0d, + description: ["I have no idea how spatial storage works"], + dependencies: ["08BDB40244B67175"], + id: "7E85FD869F164235", + tasks: [{ + id: "2BB3439A44ED3D6F", + type: "item", + item: "appliedenergistics2:spatial_io_port" + }] + }, + { + x: 10.0d, + y: 2.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "63471F9218507F84", + tasks: [{ + id: "33D8577AAD2538D7", + type: "item", + item: "appliedenergistics2:wireless_receiver" + }] + }, + { + x: 10.0d, + y: 4.0d, + description: ["These will allow you to access your storage system, wirelessly."], + dependencies: ["63471F9218507F84"], + id: "25FFC52137326268", + tasks: [ + { + id: "7994832CABD887E8", + type: "item", + item: "appliedenergistics2:wireless_access_point" + }, + { + id: "4CBBB9BA189E1001", + type: "item", + item: { + id: "appliedenergistics2:wireless_terminal", + Count: 1b, + tag: {} + } + } + ] + }, + { + x: 6.0d, + y: -2.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "10A5ABDBD6DD55E2", + tasks: [{ + id: "14583E7486781865", + type: "item", + item: { + id: "appliedenergistics2:energy_cell", + Count: 1b, + tag: {} + } + }] + }, + { + x: 5.0d, + y: -3.0d, + dependencies: ["10A5ABDBD6DD55E2"], + id: "24EB7386CA395BE8", + tasks: [{ + id: "1C396C1F773EE34D", + type: "item", + item: { + id: "appliedenergistics2:dense_energy_cell", + Count: 1b, + tag: {} + } + }] + }, + { + x: 8.0d, + y: 2.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "266CC38BC5FD7F6E", + tasks: [{ + id: "23DD3D0091789D2A", + type: "item", + item: "appliedenergistics2:semi_dark_monitor" + }] + }, + { + x: 8.0d, + y: 4.0d, + dependencies: ["266CC38BC5FD7F6E"], + id: "3133090A01D9A312", + tasks: [{ + id: "4B0CABD17148AD86", + type: "item", + item: "appliedenergistics2:terminal" + }] + }, + { + x: 7.0d, + y: 3.0d, + dependencies: ["3133090A01D9A312"], + id: "79BB2077CEE6C9F3", + tasks: [{ + id: "25C5E4946BA3E688", + type: "item", + item: "appliedenergistics2:fluid_terminal" + }] + }, + { + x: 9.0d, + y: 3.0d, + dependencies: ["3133090A01D9A312"], + id: "0EAF464246E63F5E", + tasks: [{ + id: "1885D051FB622696", + type: "item", + item: "appliedenergistics2:crafting_terminal" + }] + }, + { + x: 9.0d, + y: 5.0d, + dependencies: ["0EAF464246E63F5E"], + id: "431374A4B93FD94D", + tasks: [{ + id: "0B1B749018FC9A81", + type: "item", + item: "appliedenergistics2:pattern_terminal" + }] + }, + { + x: 7.0d, + y: 5.0d, + dependencies: ["3133090A01D9A312"], + id: "1BD13602982DCDDB", + tasks: [{ + id: "744A9A3365C71795", + type: "item", + item: "appliedenergistics2:interface_terminal" + }] + }, + { + x: 6.0d, + y: 2.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "4C3C69789D724BCC", + tasks: [ + { + id: "75B61EAC5E445EB8", + type: "item", + item: "appliedenergistics2:interface" + }, + { + id: "1F5F67F0B39908BB", + type: "item", + item: "appliedenergistics2:fluid_interface" + } + ] + }, + { + x: 11.0d, + y: 3.0d, + description: ["These will boost the range of the &ewireless access port&f. Stacks up to 64."], + dependencies: ["25FFC52137326268"], + id: "6E5F1D957BB32321", + tasks: [{ + id: "31727F116B1BAEE3", + type: "item", + item: "appliedenergistics2:wireless_booster" + }], + rewards: [{ + id: "0598FC4201B3D1F3", + type: "item", + item: "appliedenergistics2:wireless_booster" + }] + }, + { + x: 5.0d, + y: 3.0d, + dependencies: ["4C3C69789D724BCC"], + id: "2B2E8903F412D5D2", + tasks: [ + { + id: "5A80784DBE0F918E", + type: "item", + item: "appliedenergistics2:storage_bus" + }, + { + id: "2AC27417F93D3004", + type: "item", + item: "appliedenergistics2:fluid_storage_bus" + } + ] + }, + { + x: 10.0d, + y: -6.0d, + hide_dependency_lines: true, + dependencies: ["7E85FD869F164235"], + id: "11271EC3F6601FF0", + tasks: [{ + id: "0ABD45352A36D2A9", + type: "item", + item: "appliedenergistics2:2_cubed_spatial_cell_component" + }] + }, + { + x: 10.0d, + y: -8.0d, + dependencies: ["11271EC3F6601FF0"], + id: "3D983213BF8BA37D", + tasks: [{ + id: "63E1AB88D21C1251", + type: "item", + item: "appliedenergistics2:16_cubed_spatial_cell_component" + }] + }, + { + x: 10.0d, + y: -10.0d, + dependencies: ["3D983213BF8BA37D"], + id: "60CE5D4EC897E63D", + tasks: [{ + id: "4262C692D2F57442", + type: "item", + item: "appliedenergistics2:128_cubed_spatial_cell_component" + }] + }, + { + x: 18.0d, + y: -2.0d, + dependencies: ["2D4C79A2D53DE45A"], + id: "1FC2B6761027B2DD", + tasks: [{ + id: "2EB7C10FFF36EDB7", + type: "item", + item: "appliedenergistics2:spatial_anchor" + }] + }, + { + x: 16.0d, + y: -2.0d, + dependencies: ["7E85FD869F164235"], + id: "2D4C79A2D53DE45A", + tasks: [{ + id: "44895755EFB50C1C", + type: "item", + item: "appliedenergistics2:spatial_pylon" + }] + }, + { + x: 6.0d, + y: 0.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["19AE785A8A2A781B"], + id: "4C44F539A9488432", + tasks: [ + { + id: "1C2CDF029DBA6FC6", + type: "item", + item: "appliedenergistics2:nether_quartz_wrench" + }, + { + id: "6FFB80CE1F7810C9", + type: "item", + item: "appliedenergistics2:certus_quartz_wrench" + } + ], + rewards: [{ + id: "37E6AB49282E036D", + type: "xp", + xp: 100 + }] + }, + { + x: 15.0d, + y: -1.0d, + dependencies: ["1A8E24EE87E20806"], + id: "14A639B96DB8163D", + tasks: [{ + id: "700118BDBC2C174E", + type: "item", + item: "appliedenergistics2:fluix_covered_cable" + }] + }, + { + x: 12.0d, + y: 2.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "5D23C4693F648580", + tasks: [{ + id: "2045AD9CE41EA8C4", + type: "item", + item: "appliedenergistics2:chest" + }] + }, + { + x: 12.0d, + y: 4.0d, + dependencies: ["5D23C4693F648580"], + id: "103884AEFCF01B44", + tasks: [ + { + id: "6BA3AFF458CDCD4A", + type: "item", + item: "appliedenergistics2:security_station" + }, + { + id: "0BD73C94F0F2086C", + type: "item", + item: { + id: "appliedenergistics2:biometric_card", + Count: 1b, + tag: {} + } + } + ], + rewards: [{ + id: "6F9B0E4C20A066B8", + type: "item", + item: { + id: "appliedenergistics2:biometric_card", + Count: 1b, + tag: {} + } + }] + }, + { + x: 17.0d, + y: -1.0d, + dependencies: ["14A639B96DB8163D"], + id: "1ACCB3F257B60F4E", + tasks: [{ + id: "0241F7CD7A4D1201", + type: "item", + item: "appliedenergistics2:fluix_covered_dense_cable" + }] + }, + { + x: 16.0d, + y: 0.0d, + dependencies: ["14A639B96DB8163D"], + id: "59BBD6908713422D", + tasks: [{ + id: "2FA2988C303388E6", + type: "item", + item: "appliedenergistics2:fluix_smart_cable" + }] + }, + { + x: 18.0d, + y: 0.0d, + dependencies: ["1ACCB3F257B60F4E"], + id: "7D1F9440CD8AD477", + tasks: [{ + id: "4257F352E85C10D4", + type: "item", + item: "appliedenergistics2:fluix_smart_dense_cable" + }] + }, + { + x: 15.0d, + y: 1.0d, + dependencies: ["1A8E24EE87E20806"], + id: "63B21814E8CE889F", + tasks: [{ + id: "289ACE303E50F3FB", + type: "item", + item: "appliedenergistics2:toggle_bus" + }] + }, + { + x: 14.0d, + y: 2.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "34ECA7AEEC61C281", + tasks: [{ + id: "653A71EB5022480E", + type: "item", + item: "appliedenergistics2:basic_card" + }] + }, + { + title: "Basic Cards", + x: 13.0d, + y: 3.0d, + dependencies: ["34ECA7AEEC61C281"], + id: "7255C5C5E9631BCD", + tasks: [ + { + id: "20DA85BDB01998C9", + type: "item", + item: "appliedenergistics2:redstone_card" + }, + { + id: "5D8CD7AF9B00EF7C", + type: "item", + item: "appliedenergistics2:capacity_card" + }, + { + id: "17C18255B2D01F31", + type: "item", + item: "appliedenergistics2:crafting_card" + } + ] + }, + { + x: 14.0d, + y: 4.0d, + dependencies: ["34ECA7AEEC61C281"], + id: "3A4DBA40E3AD6B82", + tasks: [{ + id: "4A30DEAC4559FF2E", + type: "item", + item: "appliedenergistics2:advanced_card" + }] + }, + { + title: "Advanced Cards", + x: 15.0d, + y: 3.0d, + dependencies: ["3A4DBA40E3AD6B82"], + id: "4F4C07148FE8A730", + tasks: [ + { + id: "111FDFB812155611", + type: "item", + item: "appliedenergistics2:speed_card" + }, + { + id: "7195C02F23FDD88A", + type: "item", + item: "appliedenergistics2:fuzzy_card" + }, + { + id: "1430B9C878698674", + type: "item", + item: "appliedenergistics2:inverter_card" + } + ] + }, + { + title: "Other Tools", + x: 8.0d, + y: 0.0d, + shape: "rsquare", + dependencies: ["4C44F539A9488432"], + id: "21101506FB150EA8", + tasks: [ + { + id: "5FA814539AF1DDA2", + type: "item", + item: "appliedenergistics2:network_tool" + }, + { + id: "0BAAD4561465D96A", + type: "item", + item: { + id: "appliedenergistics2:charged_staff", + Count: 1b, + tag: {} + } + }, + { + id: "7C31BD172C8EC38C", + type: "item", + item: { + id: "appliedenergistics2:entropy_manipulator", + Count: 1b, + tag: {} + } + }, + { + id: "3082B4F88D89A583", + type: "item", + item: { + id: "appliedenergistics2:color_applicator", + Count: 1b, + tag: {} + } + }, + { + id: "45FB03B3F459379B", + type: "item", + item: { + id: "appliedenergistics2:matter_cannon", + Count: 1b, + tag: {} + } + } + ], + rewards: [{ + id: "6046E3883878D7C3", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 15.0d, + y: -3.0d, + hide_dependency_lines: true, + dependencies: ["42D1BE48C985B332"], + id: "242C3366D2C29AD4", + tasks: [{ + id: "76AF28815D28EA50", + type: "item", + item: { + id: "appliedenergistics2:portable_cell", + Count: 1b, + tag: {} + } + }], + rewards: [{ + id: "28EEA6A285CB277F", + type: "item", + item: "appliedenergistics2:1k_cell_component" + }] + }, + { + x: 5.0d, + y: 5.0d, + dependencies: ["3C15323D88647DFA"], + id: "0B36EC7E3B020FAF", + tasks: [{ + id: "7F7E1C52D202FF80", + type: "item", + item: "appliedenergistics2:blank_pattern" + }] + }, + { + x: 6.0d, + y: 4.0d, + dependencies: ["4C3C69789D724BCC"], + id: "3C15323D88647DFA", + tasks: [{ + id: "5230585DC06B826B", + type: "item", + item: "appliedenergistics2:molecular_assembler" + }] + }, + { + title: "Other Machines", + x: 10.0d, + y: 0.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "5DE50D1A6460971D", + tasks: [ + { + id: "4F9A7A9737AC016C", + type: "item", + item: "appliedenergistics2:energy_acceptor" + }, + { + id: "1CE2E023ADAD81BC", + type: "item", + item: "appliedenergistics2:condenser" + }, + { + id: "0BDAB1648FD365CA", + type: "item", + item: "appliedenergistics2:cell_workbench" + }, + { + id: "184B0D2B2C216398", + type: "item", + item: "lazierae2:crystal_energizer" + } + ] + }, + { + x: 16.0d, + y: 2.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "71F60B1D74293149", + tasks: [{ + id: "0D724074856FD440", + type: "item", + item: "lazierae2:universal_press" + }] + }, + { + x: 18.0d, + y: 2.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "41F4B828D4786CD2", + tasks: [{ + id: "3C56B9F45C111386", + type: "item", + item: "lazierae2:fluix_aggregator" + }] + }, + { + x: 17.0d, + y: 1.0d, + dependencies: ["7D1F9440CD8AD477"], + id: "0F64578F97BE24BF", + tasks: [ + { + id: "2A9DE4118576B540", + type: "item", + item: "appliedenergistics2:quantum_link", + count: 2L + }, + { + id: "771193924092EAC8", + type: "item", + item: "appliedenergistics2:quantum_ring", + count: 16L + }, + { + id: "3C9103A05248F760", + type: "item", + item: "appliedenergistics2:quantum_entangled_singularity", + count: 2L + } + ] + }, + { + x: 16.0d, + y: 4.0d, + dependencies: [ + "41F4B828D4786CD2", + "71F60B1D74293149" + ], + id: "22C74BBDEB3211B9", + tasks: [{ + id: "31D38E4034CF9F28", + type: "item", + item: "lazierae2:pulse_centrifuge" + }] + }, + { + x: 18.0d, + y: 4.0d, + dependencies: [ + "71F60B1D74293149", + "41F4B828D4786CD2" + ], + id: "4186F252E69406E7", + tasks: [{ + id: "59EC37FE994B0D8A", + type: "item", + item: "lazierae2:circuit_etcher" + }] + }, + { + x: 8.0d, + y: -2.0d, + shape: "rsquare", + hide_dependency_lines: true, + dependencies: ["0C9EF370D15DFC01"], + id: "19299FC3C312F886", + tasks: [{ + id: "4C0D91B24C985938", + type: "item", + item: "appliedenergistics2:me_p2p_tunnel" + }] + }, + { + x: 9.0d, + y: -3.0d, + dependencies: ["19299FC3C312F886"], + id: "5468CFE5CCC84ACC", + tasks: [ + { + id: "212AB79A039305E3", + type: "item", + item: "appliedenergistics2:redstone_p2p_tunnel" + }, + { + id: "7AE7F588A93A4B28", + type: "item", + item: "appliedenergistics2:item_p2p_tunnel" + }, + { + id: "37DB80AF9100EEBE", + type: "item", + item: "appliedenergistics2:fluid_p2p_tunnel" + }, + { + id: "600F540826528C28", + type: "item", + item: "appliedenergistics2:fe_p2p_tunnel" + }, + { + id: "3737C51E0BE51641", + type: "item", + item: "appliedenergistics2:light_p2p_tunnel" + } + ] + }, + { + x: 11.0d, + y: -3.0d, + hide_dependency_lines: true, + dependencies: [ + "42D1BE48C985B332", + "44455BDD706828C6" + ], + dependency_requirement: "one_started", + id: "3E421B9748DA1B90", + tasks: [ + { + id: "15C58D4F3C181FEC", + type: "item", + item: { + id: "appliedenergistics2:1k_storage_cell", + Count: 1b, + tag: {} + } + }, + { + id: "721F052189D38708", + type: "item", + item: { + id: "appliedenergistics2:1k_fluid_storage_cell", + Count: 1b, + tag: {} + } + } + ], + rewards: [{ + id: "2E7D17BCCC999887", + type: "xp", + xp: 100 + }] + }, + { + x: 13.0d, + y: -3.0d, + hide_dependency_lines: true, + dependencies: ["42D1BE48C985B332"], + id: "0C420CF3D66C953C", + tasks: [{ + id: "328E61DB801B6B00", + type: "item", + item: "appliedenergistics2:1k_crafting_storage" + }], + rewards: [{ + id: "00AA43852869AD4C", + type: "xp", + xp: 100 + }] + }, + { + x: 7.0d, + y: -3.0d, + dependencies: ["10A5ABDBD6DD55E2"], + id: "576A2F652A20532E", + tasks: [{ + id: "36B176988B2F4F6A", + type: "item", + item: "appliedenergistics2:vibration_chamber" + }] + }, + { + x: 17.0d, + y: -3.0d, + hide_dependency_lines: true, + dependencies: ["11271EC3F6601FF0"], + id: "64D4630C83006960", + tasks: [{ + id: "56FB389503921426", + type: "item", + item: "appliedenergistics2:2_cubed_spatial_storage_cell" + }] + }, + { + x: 0.0d, + y: -2.0d, + shape: "rsquare", + description: ["This can charge various AE2 tools. Also can charge &ecertus quartz&f."], + dependencies: ["477C09F17DD5826B"], + dependency_requirement: "all_started", + id: "0FE0BB925FEB73FD", + tasks: [{ + id: "77CFA5400825D0F4", + type: "item", + item: "appliedenergistics2:charger" + }], + rewards: [{ + id: "007D4358826E417B", + type: "xp", + xp: 100 + }] + } + ] +} diff --git a/config/ftbquests/quests/chapters/create.snbt b/config/ftbquests/quests/chapters/create.snbt index 4f78a200..adc2a0b9 100644 --- a/config/ftbquests/quests/chapters/create.snbt +++ b/config/ftbquests/quests/chapters/create.snbt @@ -1,7 +1,7 @@ { id: "100C477F4E63F20A", group: "2B51AC12041E3F89", - order_index: 0, + order_index: 1, filename: "create", title: "Create", icon: "create:large_cogwheel", diff --git a/config/ftbquests/quests/chapters/elementalcraft.snbt b/config/ftbquests/quests/chapters/elementalcraft.snbt new file mode 100644 index 00000000..92cd6e78 --- /dev/null +++ b/config/ftbquests/quests/chapters/elementalcraft.snbt @@ -0,0 +1,1815 @@ +{ + id: "4351A2B2F092D7AF", + group: "02FE661031A105D8", + order_index: 3, + filename: "elementalcraft", + title: "ElementalCraft", + icon: { + id: "patchouli:guide_book", + Count: 1b, + tag: { + "patchouli:book": "elementalcraft:element_book" + } + }, + default_quest_shape: "", + quests: [ + { + title: "Element Shards", + x: 1.0d, + y: -1.0d, + description: ["These shards are dropped by killing specific mobs. JEI can tell you which mobs to kill for which element."], + dependencies: ["55F12D063F9D9430"], + id: "43798AC35A5BC880", + tasks: [ + { + id: "7CFDFBA97A81252E", + type: "item", + item: "elementalcraft:fire_shard" + }, + { + id: "4D921A5528085A38", + type: "item", + item: "elementalcraft:water_shard" + }, + { + id: "38BBD46A9CF0CF70", + type: "item", + item: "elementalcraft:earth_shard" + }, + { + id: "6744EDF99B4FDBD9", + type: "item", + item: "elementalcraft:air_shard" + } + ], + rewards: [ + { + id: "438712F0C1F86312", + type: "item", + item: "elementalcraft:fire_shard", + count: 5 + }, + { + id: "3032C69FC61A1719", + type: "item", + item: "elementalcraft:water_shard", + count: 5 + }, + { + id: "11D090B35399F097", + type: "item", + item: "elementalcraft:earth_shard", + count: 5 + }, + { + id: "13A07B7EF051A360", + type: "item", + item: "elementalcraft:air_shard", + count: 5 + } + ] + }, + { + title: "ElementalCraft", + x: 0.0d, + y: 0.0d, + shape: "gear", + description: [ + "Welcome to &aElementalCraft&f!", + "", + "The &eElementopedia&f in you &eAkashic Tome&f will guide you through the mod." + ], + size: 1.5d, + id: "55F12D063F9D9430", + tasks: [{ + id: "66CB4D45D621E404", + type: "checkmark" + }], + rewards: [{ + id: "2C3A0CE67B4C644F", + type: "item", + item: { + id: "minecraft:player_head", + Count: 1b, + tag: { + SkullOwner: { + Properties: { + textures: [{ + Value: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYWQ3YzI3M2U5N2MyNzdjNDljOTA2NWVkZGYxMDdlODdlYTc3NWM4N2IyYzlmZWEwOTIyNTUwNTE5MDJhYzRhIn19fQ==" + }] + }, + Id: [I; + -647195142, + 2010533167, + -1243897687, + 1144171008 + ] + }, + display: { + Name: '{"text":"BovineShaman"}' + } + } + } + }] + }, + { + x: 1.0d, + y: 1.0d, + dependencies: ["55F12D063F9D9430"], + id: "5408B4319D86920D", + tasks: [{ + id: "1BB2305B3A343183", + type: "item", + item: "elementalcraft:inertcrystal" + }], + rewards: [{ + id: "3F68CFBDCA169CE7", + type: "item", + item: "elementalcraft:inertcrystal", + count: 5 + }] + }, + { + x: 2.0d, + y: 0.0d, + dependencies: ["5408B4319D86920D"], + id: "04C3CDC36ED3DA81", + tasks: [{ + id: "73DD538F07BAF5B0", + type: "item", + item: "elementalcraft:containedcrystal" + }], + rewards: [{ + id: "4070E931A1327998", + type: "item", + item: "elementalcraft:containedcrystal", + count: 2 + }] + }, + { + title: "Getting Elements", + x: 4.5d, + y: -1.0d, + description: [ + "The &eelement extractor&f will extract element out of the element sources that are generated throughout the world. The extractor must be placed directly below the source while also on top of an &eelement container&f.", + "", + "The &eelement evaporator&f turns elemental shards into element. Must be placed ontop of a container" + ], + dependencies: ["5E029A2BA469F42D"], + id: "023C2C0632BC0934", + tasks: [ + { + id: "4F879853AC71119A", + type: "item", + item: "elementalcraft:extractor" + }, + { + id: "44A01683531707A4", + type: "item", + item: "elementalcraft:evaporator" + } + ], + rewards: [{ + id: "0602E484B1FD2ADB", + type: "xp", + xp: 100 + }] + }, + { + x: 3.5d, + y: 0.0d, + dependencies: ["04C3CDC36ED3DA81"], + id: "1AC819882704B814", + tasks: [{ + id: "2E9FE2D6EA484356", + type: "item", + item: "elementalcraft:elementpipe_impaired" + }], + rewards: [{ + id: "58989F867695C769", + type: "item", + item: "elementalcraft:elementpipe_impaired", + count: 4 + }] + }, + { + x: 6.0d, + y: 1.0d, + description: ["Must be placed on top of an element container."], + dependencies: ["5E029A2BA469F42D"], + id: "06AAC66822DE0F2C", + tasks: [{ + id: "5DB67FC59A760562", + type: "item", + item: "elementalcraft:infuser" + }], + rewards: [{ + id: "252A2D00EB5429FC", + type: "xp", + xp: 100 + }] + }, + { + title: "Small Elemental Storage", + x: 5.5d, + y: 0.0d, + dependencies: ["1AC819882704B814"], + id: "5E029A2BA469F42D", + tasks: [{ + id: "187FFED3F1787FFA", + type: "item", + item: "elementalcraft:tank_small" + }], + rewards: [{ + id: "660C1E9798CF4734", + type: "xp", + xp: 100 + }] + }, + { + title: "Crystals", + x: 6.0d, + y: -1.0d, + dependencies: ["06AAC66822DE0F2C"], + id: "12BBC87D40762F6E", + tasks: [ + { + id: "2EBC4AE6123DAECC", + type: "item", + item: "elementalcraft:firecrystal" + }, + { + id: "6528028151D7D157", + type: "item", + item: "elementalcraft:watercrystal" + }, + { + id: "7B2016E40EE73614", + type: "item", + item: "elementalcraft:earthcrystal" + }, + { + id: "515BCE0EAD3B6531", + type: "item", + item: "elementalcraft:aircrystal" + } + ], + rewards: [{ + id: "2D618CF175F89CDE", + type: "xp", + xp: 100 + }] + }, + { + x: 4.5d, + y: 1.0d, + dependencies: ["06AAC66822DE0F2C"], + id: "3CCD6DAB7EEA5CC6", + tasks: [ + { + id: "3DA54DFAD8B1BF0D", + type: "item", + item: "elementalcraft:whiterock" + }, + { + id: "0A11DB2D2D331404", + type: "item", + item: "elementalcraft:burnt_glass" + } + ], + rewards: [ + { + id: "0D975F4C41C65456", + type: "item", + item: "elementalcraft:whiterock", + count: 10 + }, + { + id: "53E1C65EC9819C11", + type: "item", + item: "elementalcraft:burnt_glass", + count: 10 + } + ] + }, + { + x: 7.0d, + y: 0.0d, + dependencies: ["06AAC66822DE0F2C"], + id: "5E25F6AE2AFF8E7D", + tasks: [{ + id: "688574510ACAAEFD", + type: "item", + item: "elementalcraft:drenched_iron_ingot" + }], + rewards: [{ + id: "66EFD5A5705354FE", + type: "item", + item: "elementalcraft:drenched_iron_ingot", + count: 8 + }] + }, + { + x: 8.0d, + y: 1.0d, + dependencies: ["5E25F6AE2AFF8E7D"], + id: "765DB60D1D074BD9", + tasks: [{ + id: "6109E2771BDAF398", + type: "item", + item: "elementalcraft:elementpipe" + }], + rewards: [{ + id: "4C8C23965698E907", + type: "item", + item: "elementalcraft:elementpipe", + count: 8 + }] + }, + { + title: "Bigger Elemental Storage", + x: 8.0d, + y: 2.5d, + dependencies: ["765DB60D1D074BD9"], + id: "0C67D3001F2B759E", + tasks: [{ + id: "78EEFAE0D6B423FD", + type: "item", + item: "elementalcraft:tank" + }], + rewards: [{ + id: "540AD11F0F2D4B57", + type: "xp", + xp: 100 + }] + }, + { + x: 5.0d, + y: 3.5d, + dependencies: ["75692ECC829EB1CB"], + id: "2B4D6CED2D33C18C", + tasks: [{ + id: "679E5B4830572CD2", + type: "item", + item: "elementalcraft:scroll_paper" + }], + rewards: [{ + id: "5D91309AE8303A3F", + type: "item", + item: "elementalcraft:scroll_paper", + count: 2 + }] + }, + { + x: 7.0d, + y: -1.5d, + dependencies: [ + "5E25F6AE2AFF8E7D", + "12BBC87D40762F6E" + ], + dependency_requirement: "all_started", + id: "590E8784699B7906", + tasks: [ + { + id: "0898309D2B8DFE06", + type: "item", + item: { + ForgeCaps: { + Parent: { + element_capacity: 10000, + element_amount: 0, + element_type: "fire" + } + }, + id: "elementalcraft:element_holder_fire", + Count: 1b, + tag: { + Damage: 1000 + } + } + }, + { + id: "10EC251BDCF6518A", + type: "item", + item: { + ForgeCaps: { + Parent: { + element_capacity: 10000, + element_amount: 0, + element_type: "water" + } + }, + id: "elementalcraft:element_holder_water", + Count: 1b, + tag: { + Damage: 1000 + } + } + }, + { + id: "6261CD24C4296CAF", + type: "item", + item: { + ForgeCaps: { + Parent: { + element_capacity: 10000, + element_amount: 0, + element_type: "earth" + } + }, + id: "elementalcraft:element_holder_earth", + Count: 1b, + tag: { + Damage: 1000 + } + } + }, + { + id: "2676C9F4870761A5", + type: "item", + item: { + ForgeCaps: { + Parent: { + element_capacity: 10000, + element_amount: 0, + element_type: "air" + } + }, + id: "elementalcraft:element_holder_air", + Count: 1b, + tag: { + Damage: 1000 + } + } + } + ], + rewards: [{ + id: "6E01EC0DC8A3E1C1", + type: "xp", + xp: 300 + }] + }, + { + x: 17.0d, + y: 0.0d, + dependencies: ["38BE24143BDFC058"], + id: "258D1A080B2468BE", + tasks: [{ + id: "1AFE41ED1E968F69", + type: "item", + item: { + ForgeCaps: { + Parent: { + earth: 0, + fire: 0, + air: 0, + water: 0 + } + }, + id: "elementalcraft:pure_element_holder", + Count: 1b + } + }], + rewards: [{ + id: "581608B5B0CB6A13", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 10.0d, + y: 1.0d, + dependencies: ["765DB60D1D074BD9"], + id: "07405FDC188781AC", + tasks: [{ + id: "78D4C60E278C7ED0", + type: "item", + item: "elementalcraft:binder" + }], + rewards: [{ + id: "25717A5F6DBA7509", + type: "xp", + xp: 100 + }] + }, + { + x: 11.0d, + y: 0.0d, + dependencies: ["07405FDC188781AC"], + id: "15D76014F814293F", + tasks: [{ + id: "1D754B223EC99D18", + type: "item", + item: "elementalcraft:swift_alloy_ingot" + }], + rewards: [{ + id: "1BE815F3587B3653", + type: "item", + item: "elementalcraft:swift_alloy_ingot", + count: 4 + }] + }, + { + x: 3.0d, + y: 1.0d, + dependencies: ["3CCD6DAB7EEA5CC6"], + id: "7455A5A37851FDCE", + tasks: [{ + id: "5F7477533451048D", + type: "item", + item: "elementalcraft:minor_rune_slate" + }] + }, + { + x: 3.5d, + y: 2.0d, + dependencies: ["3CCD6DAB7EEA5CC6"], + id: "1DA052230F2FDEDE", + tasks: [{ + id: "665A40B7F4690EE0", + type: "item", + item: "elementalcraft:rune_slate" + }] + }, + { + x: 4.5d, + y: 2.5d, + dependencies: ["3CCD6DAB7EEA5CC6"], + id: "77AEDB523C826BBE", + tasks: [{ + id: "7DAFA0CE24BD1EBA", + type: "item", + item: "elementalcraft:major_rune_slate" + }] + }, + { + x: 12.0d, + y: 1.0d, + dependencies: ["15D76014F814293F"], + id: "752B0D21B14401B6", + tasks: [{ + id: "6169DCBDE0DE0260", + type: "item", + item: "elementalcraft:crystallizer" + }] + }, + { + x: 8.5d, + y: 0.0d, + description: ["Cooks like a normal furnace, but uses fire element for fuel."], + dependencies: ["5E25F6AE2AFF8E7D"], + id: "3A7EFD9387B8F82E", + tasks: [{ + id: "676756585356242C", + type: "item", + item: "elementalcraft:firefurnace" + }] + }, + { + x: 8.0d, + y: -1.0d, + description: ["Can grind up materials"], + dependencies: ["5E25F6AE2AFF8E7D"], + id: "6F1B5162BED3DA59", + tasks: [{ + id: "45D565FC92D13602", + type: "item", + item: "elementalcraft:air_mill" + }] + }, + { + x: 15.5d, + y: 0.0d, + dependencies: ["79A2E00852D325F1"], + id: "38BE24143BDFC058", + tasks: [{ + id: "41499C37C7CF8715", + type: "item", + item: "elementalcraft:fireite_ingot" + }], + rewards: [{ + id: "244BD7AE0472FBB1", + type: "item", + item: "elementalcraft:fireite_ingot", + count: 2 + }] + }, + { + x: 14.0d, + y: 0.0d, + dependencies: ["72F4183F5ECEB474"], + id: "79A2E00852D325F1", + tasks: [{ + id: "224C2FF59F14422D", + type: "item", + item: "elementalcraft:purecrystal" + }] + }, + { + x: 7.0d, + y: 1.5d, + dependencies: ["5E25F6AE2AFF8E7D"], + id: "75692ECC829EB1CB", + tasks: [{ + id: "1EEAEA5E6FD664B8", + type: "item", + item: "elementalcraft:spell_desk" + }], + rewards: [{ + id: "76E7D92DAE18ACE0", + type: "xp", + xp: 100 + }] + }, + { + x: 3.0d, + y: 5.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "3BCA018127338FB0", + tasks: [{ + id: "4950626E0901447E", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:gravelfall" + } + } + } + }] + }, + { + x: 4.0d, + y: 5.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "5E243EE0B2FFB719", + tasks: [{ + id: "7773F831FCBA795D", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:stonewall" + } + } + } + }] + }, + { + x: 5.0d, + y: 5.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "416A4873FBAAB9AE", + tasks: [{ + id: "4B9A62AB3C3052C1", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:fireball" + } + } + } + }] + }, + { + x: 6.0d, + y: 5.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "6A6A829F67D627B8", + tasks: [{ + id: "6DE64F851CC7571D", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:item_pull" + } + } + } + }] + }, + { + x: 7.0d, + y: 5.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "6509F875ECEC6030", + tasks: [{ + id: "492D275487D205C1", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:ender_strike" + } + } + } + }] + }, + { + x: 2.5d, + y: 6.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "252BC8CD496A081E", + tasks: [{ + id: "60802E269F3CE1E1", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:animal_growth" + } + } + } + }] + }, + { + x: 3.5d, + y: 6.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "2DD8CB6A1D1C4D43", + tasks: [{ + id: "4E21D1FB997D8F3B", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:tree_fall" + } + } + } + }] + }, + { + x: 4.5d, + y: 6.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "7AF451031B1D5488", + tasks: [{ + id: "25E815D3229A392D", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:purification" + } + } + } + }] + }, + { + x: 5.5d, + y: 6.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "2FFCF4312E0CE5F7", + tasks: [{ + id: "158EECB964B7750F", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:ripening" + } + } + } + }] + }, + { + x: 6.5d, + y: 6.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "346F498A7B79EF67", + tasks: [{ + id: "61E260B912A50AA9", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:flame_cleave" + } + } + } + }] + }, + { + x: 3.0d, + y: 7.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "2E32330FF8E73040", + tasks: [{ + id: "6F6D0C9C13A9FAA2", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:dash" + } + } + } + }] + }, + { + x: 4.0d, + y: 7.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "7E0E794E7522CD8A", + tasks: [{ + id: "58AF4EF910B68A2C", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:silk_vein" + } + } + } + }] + }, + { + x: 5.0d, + y: 7.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "2186762AF3A78AD6", + tasks: [{ + id: "74D742A186A3A692", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:translocation" + } + } + } + }] + }, + { + x: 6.0d, + y: 7.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "57A800201D1E1756", + tasks: [{ + id: "384DA078CE847BCB", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:heal" + } + } + } + }] + }, + { + x: 7.0d, + y: 7.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "3F7C5FA4A74FE5AB", + tasks: [{ + id: "39AB32EE0B4F1174", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:speed" + } + } + } + }] + }, + { + x: 7.5d, + y: 6.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "5D7BE29E1927A80D", + tasks: [{ + id: "1BE524BFD5849BC8", + type: "item", + item: { + id: "elementalcraft:scroll", + Count: 1b, + tag: { + elementalcraft: { + spell: "elementalcraft:inferno" + } + } + } + }] + }, + { + x: 6.5d, + y: 3.5d, + dependencies: ["2B4D6CED2D33C18C"], + id: "7A22166B8FE8FCBE", + tasks: [ + { + id: "19E1DAC72ED749A5", + type: "item", + item: { + id: "elementalcraft:spell_book", + Count: 1b, + tag: { + Damage: 100 + } + } + }, + { + id: "1E2791803EDCDD5B", + type: "item", + item: "elementalcraft:focus" + } + ], + rewards: [{ + id: "405601E17E990ED1", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 12.5d, + y: 0.0d, + dependencies: ["15D76014F814293F"], + id: "72F4183F5ECEB474", + tasks: [ + { + id: "6F6A447A45406252", + type: "item", + item: "elementalcraft:pureinfuser" + }, + { + id: "191BB9F3A9380970", + type: "item", + item: "elementalcraft:pedestal_fire" + }, + { + id: "1550B4BA6B455367", + type: "item", + item: "elementalcraft:pedestal_water" + }, + { + id: "09A87AD7683D1FC0", + type: "item", + item: "elementalcraft:pedestal_earth" + }, + { + id: "36AF12C9ACC1E3C5", + type: "item", + item: "elementalcraft:pedestal_air" + } + ] + }, + { + x: 11.0d, + y: -4.0d, + dependencies: ["15D76014F814293F"], + id: "020AF1B40EF414AC", + tasks: [{ + id: "71BB450DA300FF37", + type: "item", + item: "elementalcraft:shrine_upgrade_core" + }] + }, + { + x: 10.0d, + y: 3.0d, + dependencies: ["765DB60D1D074BD9"], + id: "2049298DC63A1C32", + tasks: [{ + id: "10EEDACCF6392A72", + type: "item", + item: "elementalcraft:shrinebase" + }], + rewards: [{ + id: "0CA3906B6B6C7C72", + type: "xp", + xp: 100 + }] + }, + { + title: "Huge Elemental Storage", + x: 14.0d, + y: 1.5d, + dependencies: ["79A2E00852D325F1"], + id: "5E74268C61AA96AD", + tasks: [ + { + id: "3F85803C79181790", + type: "item", + item: "elementalcraft:reservoir_fire" + }, + { + id: "3BFEE9D7B18D202E", + type: "item", + item: "elementalcraft:reservoir_water" + }, + { + id: "126333AF3AF55777", + type: "item", + item: "elementalcraft:reservoir_earth" + }, + { + id: "5897C466F0360692", + type: "item", + item: "elementalcraft:reservoir_air" + } + ], + rewards: [{ + id: "2F2DD64F9A40A024", + type: "xp_levels", + xp_levels: 2 + }] + }, + { + title: "Crude Gems", + x: 11.0d, + y: 2.5d, + dependencies: ["752B0D21B14401B6"], + id: "0F20543E53A575D3", + tasks: [ + { + id: "07139C08B4F7BC53", + type: "item", + item: "elementalcraft:crude_fire_gem" + }, + { + id: "5C2272D870A5E018", + type: "item", + item: "elementalcraft:crude_water_gem" + }, + { + id: "0A94008E6B85C1AD", + type: "item", + item: "elementalcraft:crude_earth_gem" + }, + { + id: "440342A7F02CEBB4", + type: "item", + item: "elementalcraft:crude_air_gem" + } + ] + }, + { + title: "Fine Gems", + x: 12.0d, + y: 3.0d, + dependencies: ["752B0D21B14401B6"], + id: "27B2CCD46FDC0269", + tasks: [ + { + id: "312FB3F394BBA161", + type: "item", + item: "elementalcraft:fine_fire_gem" + }, + { + id: "4B87353B00A1BE23", + type: "item", + item: "elementalcraft:fine_water_gem" + }, + { + id: "68930901BA2D59AA", + type: "item", + item: "elementalcraft:fine_earth_gem" + }, + { + id: "17B766A75E58CFCB", + type: "item", + item: "elementalcraft:fine_air_gem" + } + ] + }, + { + title: "Pristine Gems", + x: 13.0d, + y: 2.5d, + dependencies: ["752B0D21B14401B6"], + id: "471CADB8CDD73DF7", + tasks: [ + { + id: "09D7F75F14783151", + type: "item", + item: "elementalcraft:pristine_fire_gem" + }, + { + id: "558B099F9D9E3F11", + type: "item", + item: "elementalcraft:pristine_water_gem" + }, + { + id: "1994671C31AA1FCE", + type: "item", + item: "elementalcraft:pristine_earth_gem" + }, + { + id: "51F66A8A17712FBF", + type: "item", + item: "elementalcraft:pristine_air_gem" + } + ] + }, + { + x: 15.0d, + y: -1.0d, + dependencies: ["38BE24143BDFC058"], + id: "77164B76E8E364D3", + tasks: [{ + id: "7C64FE584173C07A", + type: "item", + item: "elementalcraft:binder_improved" + }] + }, + { + x: 14.0d, + y: -1.5d, + dependencies: ["79A2E00852D325F1"], + id: "6AFB420A3A13E01B", + tasks: [{ + id: "48B02663E4C10C46", + type: "item", + item: "elementalcraft:extractor_improved" + }] + }, + { + title: "Source Receptacle", + x: 15.0d, + y: 1.0d, + description: ["Allows you to move elemental sources."], + dependencies: ["79A2E00852D325F1"], + id: "56AD8D5800036BCB", + tasks: [{ + id: "64FFF068E8E81892", + type: "item", + item: { + id: "elementalcraft:receptacle_empty", + Count: 1b, + tag: { + Damage: 0 + } + } + }], + rewards: [{ + id: "502D962D15CB4CE0", + type: "xp", + xp: 100 + }] + }, + { + title: "Improved Source Receptacle", + x: 16.5d, + y: 1.0d, + description: ["Same as the source receptacle, but with more durability."], + dependencies: [ + "56AD8D5800036BCB", + "38BE24143BDFC058" + ], + id: "19B7F2DB92EEA463", + tasks: [{ + id: "43B4854E0F64C7E8", + type: "item", + item: { + id: "elementalcraft:receptacle_improved_empty", + Count: 1b, + tag: { + Damage: 0 + } + } + }], + rewards: [{ + id: "71C809BCF7D8806E", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 9.5d, + y: 0.0d, + dependencies: ["15D76014F814293F"], + id: "65B9E035FBFAB5C5", + tasks: [{ + id: "5CEE35C984468B00", + type: "item", + item: "elementalcraft:fireblastfurnace" + }] + }, + { + title: "Elemental Ore Doubling", + x: 13.0d, + y: 1.0d, + dependencies: ["79A2E00852D325F1"], + id: "5A46DB43D2EB0A0C", + tasks: [{ + id: "71AB051EB788D0D9", + type: "item", + item: "elementalcraft:purifier" + }] + }, + { + x: 9.0d, + y: -7.5d, + dependencies: ["020AF1B40EF414AC"], + id: "7F44314F8D2C5EFE", + tasks: [{ + id: "13465C6A08CBDE11", + type: "item", + item: "elementalcraft:shrine_upgrade_acceleration" + }] + }, + { + x: 10.0d, + y: -7.5d, + dependencies: ["020AF1B40EF414AC"], + id: "3EC57E7AEB8B180D", + tasks: [{ + id: "339EAAE0AE2DFA2B", + type: "item", + item: "elementalcraft:shrine_upgrade_range" + }] + }, + { + x: 11.0d, + y: -7.5d, + dependencies: ["020AF1B40EF414AC"], + id: "1D32E97B7E2CD468", + tasks: [{ + id: "7F3BAAC295303FAE", + type: "item", + item: "elementalcraft:shrine_upgrade_capacity" + }] + }, + { + x: 12.0d, + y: -7.5d, + dependencies: ["020AF1B40EF414AC"], + id: "5C8FC75AC9E25336", + tasks: [{ + id: "3F72C7CDF8662010", + type: "item", + item: "elementalcraft:shrine_upgrade_efficiency" + }] + }, + { + x: 13.0d, + y: -7.5d, + dependencies: ["020AF1B40EF414AC"], + id: "677F6EE94DAD368A", + tasks: [{ + id: "72BEABD21FB88557", + type: "item", + item: "elementalcraft:shrine_upgrade_strength" + }] + }, + { + x: 9.0d, + y: -6.5d, + dependencies: ["020AF1B40EF414AC"], + id: "592F787FC535D89F", + tasks: [{ + id: "19117A31614C1A40", + type: "item", + item: "elementalcraft:shrine_upgrade_optimization" + }] + }, + { + x: 10.0d, + y: -6.5d, + dependencies: ["020AF1B40EF414AC"], + id: "1DB35A769F0B708D", + tasks: [{ + id: "74A52E6AC1076246", + type: "item", + item: "elementalcraft:shrine_upgrade_fortune" + }] + }, + { + x: 11.0d, + y: -6.5d, + dependencies: ["020AF1B40EF414AC"], + id: "5B2C28D29A8B2F90", + tasks: [{ + id: "662336D78F045040", + type: "item", + item: "elementalcraft:shrine_upgrade_silk_touch" + }] + }, + { + x: 12.0d, + y: -6.5d, + dependencies: ["020AF1B40EF414AC"], + id: "10A74403865E904A", + tasks: [{ + id: "21003DFC637E2049", + type: "item", + item: "elementalcraft:shrine_upgrade_planting" + }] + }, + { + x: 13.0d, + y: -6.5d, + dependencies: ["020AF1B40EF414AC"], + id: "2966504648A04626", + tasks: [{ + id: "39F74A1E1CA97788", + type: "item", + item: "elementalcraft:shrine_upgrade_boneless_growth" + }] + }, + { + x: 9.0d, + y: -5.5d, + dependencies: ["020AF1B40EF414AC"], + id: "66DA377810C83CE7", + tasks: [{ + id: "39A1AB5F4A66803E", + type: "item", + item: "elementalcraft:shrine_upgrade_pickup" + }] + }, + { + x: 10.0d, + y: -5.5d, + dependencies: ["020AF1B40EF414AC"], + id: "62BE5B2454D65C07", + tasks: [{ + id: "39C8D08B6FD43BAD", + type: "item", + item: "elementalcraft:shrine_upgrade_nectar" + }] + }, + { + x: 11.0d, + y: -5.5d, + dependencies: ["020AF1B40EF414AC"], + id: "0D003C5489FEB1A0", + tasks: [{ + id: "17EBA3723255C0DE", + type: "item", + item: "elementalcraft:shrine_upgrade_stem_pollination" + }] + }, + { + x: 12.0d, + y: -5.5d, + dependencies: ["020AF1B40EF414AC"], + id: "7EE915BA6E7DE783", + tasks: [{ + id: "63EE822562EA1F4B", + type: "item", + item: "elementalcraft:shrine_upgrade_mystical_grove" + }] + }, + { + x: 13.0d, + y: -5.5d, + dependencies: ["020AF1B40EF414AC"], + id: "7366AD64E572D077", + tasks: [{ + id: "547AE2E211F4FDE6", + type: "item", + item: "elementalcraft:shrine_upgrade_protection" + }] + }, + { + x: 8.5d, + y: 5.5d, + dependencies: ["2049298DC63A1C32"], + id: "40A3E0995C929460", + tasks: [{ + id: "725BCB85495AFFE4", + type: "item", + item: "elementalcraft:vacuumshrine" + }] + }, + { + x: 9.5d, + y: 5.5d, + dependencies: ["2049298DC63A1C32"], + id: "37A317BE486ACD1D", + tasks: [{ + id: "7AB81D785437C32F", + type: "item", + item: "elementalcraft:growthshrine" + }] + }, + { + x: 10.5d, + y: 5.5d, + dependencies: ["2049298DC63A1C32"], + id: "18B53DD0FE2941D2", + tasks: [{ + id: "729F79267E762F77", + type: "item", + item: "elementalcraft:harvestshrine" + }] + }, + { + x: 11.5d, + y: 5.5d, + dependencies: ["2049298DC63A1C32"], + id: "76FC0AA0EA0C4F6B", + tasks: [{ + id: "52BE15D8AEF1D23B", + type: "item", + item: "elementalcraft:lavashrine" + }] + }, + { + x: 9.0d, + y: 6.5d, + dependencies: ["2049298DC63A1C32"], + id: "2C0A723788608A4F", + tasks: [{ + id: "35ADFEB4D56E9BDE", + type: "item", + item: "elementalcraft:oreshrine" + }] + }, + { + x: 10.0d, + y: 6.5d, + dependencies: ["2049298DC63A1C32"], + id: "0314A1A2286836FA", + tasks: [{ + id: "5DB6B839F7CF652B", + type: "item", + item: "elementalcraft:overloadshrine" + }] + }, + { + x: 11.0d, + y: 6.5d, + dependencies: ["2049298DC63A1C32"], + id: "3D6B4CAFA3ADBA32", + tasks: [{ + id: "4370DC163AEF925A", + type: "item", + item: "elementalcraft:sweetshrine" + }] + }, + { + x: 8.5d, + y: 7.5d, + dependencies: ["2049298DC63A1C32"], + id: "2335C4D7B727B056", + tasks: [{ + id: "57CA3FD9E4D9263B", + type: "item", + item: "elementalcraft:enderlockshrine" + }] + }, + { + x: 9.5d, + y: 7.5d, + dependencies: ["2049298DC63A1C32"], + id: "6AA775269C69DB79", + tasks: [{ + id: "1829ED2E48C945EB", + type: "item", + item: "elementalcraft:breedingshrine" + }] + }, + { + x: 10.5d, + y: 7.5d, + dependencies: ["2049298DC63A1C32"], + id: "605D8111F250E9E1", + tasks: [{ + id: "6BBD8C8519AF9741", + type: "item", + item: "elementalcraft:groveshrine" + }] + }, + { + x: 11.5d, + y: 7.5d, + dependencies: ["2049298DC63A1C32"], + id: "0C907086EBBE1903", + tasks: [{ + id: "2991780A02564E86", + type: "item", + item: "elementalcraft:firepylon" + }] + }, + { + x: 12.0d, + y: -1.0d, + dependencies: ["15D76014F814293F"], + id: "2183B485136B8C3F", + tasks: [{ + id: "0CF5A81136FBE933", + type: "item", + item: "elementalcraft:solar_synthesizer" + }] + }, + { + x: 12.0d, + y: -2.5d, + dependencies: ["2183B485136B8C3F"], + id: "3BFB8AA4E5E2FCDF", + tasks: [ + { + id: "1FA41FABF7BF8FFF", + type: "item", + item: { + id: "elementalcraft:fire_lense", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "784E962FC41CE24B", + type: "item", + item: { + id: "elementalcraft:water_lense", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "0D567BE1935443A0", + type: "item", + item: { + id: "elementalcraft:earth_lense", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "3EC2C2500E9108A6", + type: "item", + item: { + id: "elementalcraft:air_lense", + Count: 1b, + tag: { + Damage: 0 + } + } + } + ] + }, + { + x: 9.0d, + y: -2.0d, + dependencies: ["15D76014F814293F"], + id: "437F160DA20BFCD3", + tasks: [ + { + id: "774769860A139471", + type: "item", + item: "elementalcraft:inscriber" + }, + { + id: "7D32B666AE917C34", + type: "item", + item: { + id: "elementalcraft:chisel", + Count: 1b, + tag: { + Damage: 0 + } + } + } + ] + }, + { + title: "Speed Runes", + x: 8.0d, + y: -3.0d, + description: [""], + dependencies: ["437F160DA20BFCD3"], + hide_text_until_complete: true, + id: "09A85BC5D3DA51CE", + tasks: [ + { + id: "5ADABF1F97B0DF65", + type: "item", + item: { + id: "elementalcraft:rune", + Count: 1b, + tag: { + elementalcraft: { + rune: "elementalcraft:wii" + } + } + } + }, + { + id: "2B52FE4D4A70E2DA", + type: "item", + item: { + id: "elementalcraft:rune", + Count: 1b, + tag: { + elementalcraft: { + rune: "elementalcraft:fus" + } + } + } + }, + { + id: "3442E09D52543E37", + type: "item", + item: { + id: "elementalcraft:rune", + Count: 1b, + tag: { + elementalcraft: { + rune: "elementalcraft:zod" + } + } + } + } + ], + rewards: [{ + id: "54F425725DE3A06B", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + title: "Luck Runes", + x: 9.0d, + y: -3.5d, + dependencies: ["437F160DA20BFCD3"], + id: "0D7CBD67D7FC122F", + tasks: [ + { + id: "2C7C05C89386742D", + type: "item", + item: { + id: "elementalcraft:rune", + Count: 1b, + tag: { + elementalcraft: { + rune: "elementalcraft:claptrap" + } + } + } + }, + { + id: "454565C9174BA435", + type: "item", + item: { + id: "elementalcraft:rune", + Count: 1b, + tag: { + elementalcraft: { + rune: "elementalcraft:bombadil" + } + } + } + }, + { + id: "74A65C7753C85DF4", + type: "item", + item: { + id: "elementalcraft:rune", + Count: 1b, + tag: { + elementalcraft: { + rune: "elementalcraft:tzeentch" + } + } + } + } + ], + rewards: [{ + id: "4E3E28E1D94E6F4B", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + title: "Preservation Runes", + x: 10.0d, + y: -3.0d, + dependencies: ["437F160DA20BFCD3"], + id: "3499148B2D92C467", + tasks: [ + { + id: "0020AEC7B33E2CA7", + type: "item", + item: { + id: "elementalcraft:rune", + Count: 1b, + tag: { + elementalcraft: { + rune: "elementalcraft:manx" + } + } + } + }, + { + id: "107464BB6EDB6FE5", + type: "item", + item: { + id: "elementalcraft:rune", + Count: 1b, + tag: { + elementalcraft: { + rune: "elementalcraft:jita" + } + } + } + }, + { + id: "30B4C23E8010CB4C", + type: "item", + item: { + id: "elementalcraft:rune", + Count: 1b, + tag: { + elementalcraft: { + rune: "elementalcraft:tano" + } + } + } + } + ], + rewards: [{ + id: "2236A3E5E629CA15", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 13.0d, + y: -1.0d, + description: ["Can withstand explosions and the Wither."], + dependencies: ["72F4183F5ECEB474"], + id: "5619EF8C3300D184", + tasks: [{ + id: "6EA510E798086178", + type: "item", + item: "elementalcraft:purerock" + }] + }, + { + x: 8.0d, + y: 3.5d, + dependencies: ["7A22166B8FE8FCBE"], + dependency_requirement: "all_started", + id: "3FFF4844A0878D85", + tasks: [{ + id: "4B53FD127ACEE889", + type: "item", + item: { + id: "elementalcraft:staff", + Count: 1b, + tag: { + Damage: 0 + } + } + }], + rewards: [{ + id: "66299890367C6043", + type: "xp", + xp: 300 + }] + }, + { + x: 11.0d, + y: 1.5d, + dependencies: ["15D76014F814293F"], + id: "61BCE8789E5D74D5", + tasks: [{ + id: "69396F98DFB75A68", + type: "item", + item: "elementalcraft:elementpipe_improved" + }] + } + ] +} diff --git a/config/ftbquests/quests/chapters/industrial_foregoing.snbt b/config/ftbquests/quests/chapters/industrial_foregoing.snbt new file mode 100644 index 00000000..0d9229e9 --- /dev/null +++ b/config/ftbquests/quests/chapters/industrial_foregoing.snbt @@ -0,0 +1,1467 @@ +{ + id: "193F91842D2ED7D9", + group: "2B51AC12041E3F89", + order_index: 2, + filename: "industrial_foregoing", + title: "Industrial Foregoing", + icon: "industrialforegoing:common_black_hole_unit", + default_quest_shape: "", + quests: [ + { + x: 0.0d, + y: 0.0d, + shape: "gear", + description: ["Welcome to &aIndustrial Foregoing&f!"], + size: 1.5d, + id: "55820773BDD5319D", + tasks: [{ + id: "1997E42FA9EA414C", + type: "checkmark" + }], + rewards: [{ + id: "0BA0661996D457DE", + type: "item", + item: { + id: "minecraft:player_head", + Count: 1b, + tag: { + SkullOwner: { + Properties: { + textures: [{ + Value: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYWQ3YzI3M2U5N2MyNzdjNDljOTA2NWVkZGYxMDdlODdlYTc3NWM4N2IyYzlmZWEwOTIyNTUwNTE5MDJhYzRhIn19fQ==" + }] + }, + Id: [I; + -647195142, + 2010533167, + -1243897687, + 1144171008 + ] + }, + display: { + Name: '{"text":"BovineShaman"}' + } + } + } + }] + }, + { + x: 3.0d, + y: 0.0d, + description: [ + "Extracts latex from logs.", + "", + "Check JEI for acceptable logs and latex amounts." + ], + dependencies: ["6E616DB197387C86"], + id: "0EC2053B191C55C6", + tasks: [{ + id: "3CEAE2B50AD7C5ED", + type: "item", + item: "industrialforegoing:fluid_extractor" + }], + rewards: [{ + id: "2D3F9D6C16FE7EAF", + type: "xp", + xp: 100 + }] + }, + { + x: 1.5d, + y: 0.0d, + shape: "rsquare", + dependencies: ["55820773BDD5319D"], + id: "6E616DB197387C86", + tasks: [{ + id: "62D9743FABC21813", + type: "item", + item: "industrialforegoing:machine_frame_pity" + }], + rewards: [{ + id: "31C7A99204AFBBF7", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 1.5d, + y: -1.5d, + dependencies: ["6E616DB197387C86"], + optional: true, + id: "33532408B21A5378", + tasks: [{ + id: "3DD12A969161A5B6", + type: "item", + item: "industrialforegoing:pitiful_generator" + }], + rewards: [{ + id: "3F63CCEB0E0789AF", + type: "item", + item: "minecraft:coal", + count: 5 + }] + }, + { + x: 5.0d, + y: 0.0d, + dependencies: ["321FA7348E532F4E"], + id: "6FF04DD735346BED", + tasks: [{ + id: "163B2434699EEF1A", + type: "item", + item: "industrialforegoing:latex_processing_unit" + }], + rewards: [{ + id: "0FB5D498F42B6185", + type: "xp", + xp: 100 + }] + }, + { + title: "Item \\& Fluid Transport", + x: 1.5d, + y: 1.5d, + dependencies: ["6E616DB197387C86"], + id: "339DF320DDCAD98B", + tasks: [ + { + id: "5AE0559068C0050A", + type: "item", + item: "industrialforegoing:item_transporter_type" + }, + { + id: "7D17F00002916197", + type: "item", + item: "industrialforegoing:fluid_transporter_type" + } + ], + rewards: [ + { + id: "4BEE831683A26355", + type: "item", + item: "industrialforegoing:item_transporter_type", + count: 5 + }, + { + id: "754E8997E9493E96", + type: "item", + item: "industrialforegoing:fluid_transporter_type", + count: 5 + } + ] + }, + { + x: 4.0d, + y: 0.0d, + dependencies: ["0EC2053B191C55C6"], + id: "321FA7348E532F4E", + tasks: [{ + id: "1D19038D0227D7EC", + type: "item", + item: "industrialforegoing:latex_bucket" + }], + rewards: [{ + id: "6D991DABAE36FE01", + type: "item", + item: { + id: "mekanism:basic_fluid_tank", + Count: 1b, + tag: { + mekData: { + owner: [I; + -1699457496, + 663964002, + -2000923315, + -13829450 + ], + FluidTanks: [{ + Tank: 0b, + stored: { + FluidName: "industrialforegoing:latex", + Amount: 14000 + } + }], + securityMode: 0, + Items: [] + }, + BlockEntityTag: { + currentRedstone: 15, + FluidTanks: [{ + Tank: 0b, + stored: { + FluidName: "industrialforegoing:latex", + Amount: 14000 + } + }], + updateDelay: 0, + activeState: 0b, + editMode: 0, + ForgeCaps: {}, + Items: [], + id: "mekanism:basic_fluid_tank", + Security: { + owner: [I; + -1699457496, + 663964002, + -2000923315, + -13829450 + ], + name: "Security", + securityMode: 0, + override: 0b, + publicFreq: 1b + }, + componentSecurity: { + owner: [I; + -1699457496, + 663964002, + -2000923315, + -13829450 + ], + securityMode: 0 + }, + redstone: 0b + }, + display: { + Lore: ['"(+NBT)"'] + } + } + }, + count: 2 + }] + }, + { + x: 6.0d, + y: 0.0d, + dependencies: ["6FF04DD735346BED"], + id: "0EA9E52B67B533DF", + tasks: [{ + id: "66F8BD188ACD43E0", + type: "item", + item: "industrialforegoing:dryrubber" + }], + rewards: [{ + id: "2152C5EA52C0D06F", + type: "xp", + xp: 100 + }] + }, + { + x: 7.5d, + y: 0.0d, + shape: "rsquare", + dependencies: ["0EA9E52B67B533DF"], + id: "690CFF61CE787D43", + tasks: [{ + id: "77579FFDFEA734EB", + type: "item", + item: "industrialforegoing:plastic" + }], + rewards: [{ + id: "41FDECEBC7DDB3F6", + type: "item", + item: "industrialforegoing:plastic", + count: 5 + }] + }, + { + title: "Common Black Hole Storage", + x: 9.5d, + y: -1.5d, + dependencies: ["690CFF61CE787D43"], + id: "163BEB03C415E187", + tasks: [ + { + id: "53836C0727B39DCF", + type: "item", + item: "industrialforegoing:common_black_hole_unit" + }, + { + id: "15A028284A4863C1", + type: "item", + item: "industrialforegoing:common_black_hole_tank" + } + ], + rewards: [{ + id: "06BB8635159DB685", + type: "xp", + xp: 100 + }] + }, + { + x: 7.5d, + y: 1.5d, + dependencies: ["690CFF61CE787D43"], + id: "57C4A0BAE739E903", + tasks: [{ + id: "47C0E765FD874FCC", + type: "item", + item: "industrialforegoing:dissolution_chamber" + }] + }, + { + x: 9.0d, + y: 0.0d, + dependencies: ["690CFF61CE787D43"], + id: "1823CC81D613892B", + tasks: [{ + id: "4CEA3179A4BE3336", + type: "item", + item: "industrialforegoing:mob_slaughter_factory" + }], + rewards: [{ + id: "222D5521FF5BCB8C", + type: "xp", + xp: 100 + }] + }, + { + title: "Pink Slime \\& Liquid Meat", + x: 10.5d, + y: 0.0d, + shape: "rsquare", + dependencies: ["1823CC81D613892B"], + id: "0E8647B8EB4AAC41", + tasks: [ + { + id: "3F52AEF4BF3FE722", + type: "item", + item: "industrialforegoing:pink_slime_bucket" + }, + { + id: "6F7BCA742E93DB2A", + type: "item", + item: "industrialforegoing:meat_bucket" + } + ], + rewards: [ + { + id: "6AD72BC1A1F77913", + type: "item", + item: { + id: "mekanism:basic_fluid_tank", + Count: 1b, + tag: { + mekData: { + owner: [I; + -1699457496, + 663964002, + -2000923315, + -13829450 + ], + FluidTanks: [{ + Tank: 0b, + stored: { + FluidName: "industrialforegoing:pink_slime", + Amount: 14000 + } + }], + securityMode: 0, + Items: [] + } + } + } + }, + { + id: "0D8B60F8BD60B5CB", + type: "item", + item: { + id: "mekanism:basic_fluid_tank", + Count: 1b, + tag: { + mekData: { + owner: [I; + -1699457496, + 663964002, + -2000923315, + -13829450 + ], + FluidTanks: [{ + Tank: 0b, + stored: { + FluidName: "industrialforegoing:meat", + Amount: 14000 + } + }], + securityMode: 0, + Items: [] + } + } + } + } + ] + }, + { + x: 8.5d, + y: 1.0d, + dependencies: ["690CFF61CE787D43"], + id: "616CFD4078D67B51", + tasks: [{ + id: "3AE63F706CF41E9B", + type: "item", + item: "industrialforegoing:conveyor" + }], + rewards: [{ + id: "6C5045E055FD5551", + type: "item", + item: "industrialforegoing:conveyor", + count: 8 + }] + }, + { + title: "Conveyor Insertion \\& Extraction", + x: 9.8d, + y: 1.2999999999999998d, + dependencies: ["616CFD4078D67B51"], + id: "3027584AA6138E6D", + tasks: [ + { + id: "706E6BE855C4AE5C", + type: "item", + item: "industrialforegoing:conveyor_insertion_upgrade" + }, + { + id: "1D7CB07E1E6F7A29", + type: "item", + item: "industrialforegoing:conveyor_extraction_upgrade" + } + ], + rewards: [{ + id: "7D6160CAB260B39C", + type: "item", + item: "industrialforegoing:conveyor", + count: 8 + }] + }, + { + title: "Other Conveyor Upgrades", + x: 8.8d, + y: 2.3d, + dependencies: ["616CFD4078D67B51"], + optional: true, + id: "06094615950AC062", + tasks: [ + { + id: "1F78346AC1AA58B4", + type: "item", + item: "industrialforegoing:conveyor_detection_upgrade" + }, + { + id: "3DB99B677678BCDD", + type: "item", + item: "industrialforegoing:conveyor_bouncing_upgrade" + }, + { + id: "1A64390CFB75F256", + type: "item", + item: "industrialforegoing:conveyor_dropping_upgrade" + }, + { + id: "387D0194F77E1870", + type: "item", + item: "industrialforegoing:conveyor_blinking_upgrade" + }, + { + id: "4C5292076C0A9E83", + type: "item", + item: "industrialforegoing:conveyor_splitting_upgrade" + } + ], + rewards: [{ + id: "66A3E488F1A371C4", + type: "item", + item: "industrialforegoing:conveyor", + count: 8 + }] + }, + { + title: "Fluids", + x: 9.0d, + y: -2.5d, + dependencies: ["690CFF61CE787D43"], + optional: true, + id: "427C3AFC0FF131CD", + tasks: [ + { + id: "31CC6D6C9BD14E1E", + type: "item", + item: "industrialforegoing:fluid_collector" + }, + { + id: "62B10DA5B0939647", + type: "item", + item: "industrialforegoing:fluid_placer" + } + ], + rewards: [{ + id: "2753E05691F3DCC7", + type: "xp", + xp: 100 + }] + }, + { + title: "Blocks", + x: 8.5d, + y: -3.5d, + dependencies: ["690CFF61CE787D43"], + optional: true, + id: "2CCFEE98FE3B2E97", + tasks: [ + { + id: "796061CC713A9A91", + type: "item", + item: "industrialforegoing:block_breaker" + }, + { + id: "294C729B9EBD7A3C", + type: "item", + item: "industrialforegoing:block_placer" + } + ], + rewards: [{ + id: "43BDBF6B274E95D2", + type: "xp", + xp: 100 + }] + }, + { + title: "Animals", + x: 6.0d, + y: -2.5d, + dependencies: ["690CFF61CE787D43"], + optional: true, + id: "485AFAE5BBEF2FC7", + tasks: [ + { + id: "6C73F85B66281095", + type: "item", + item: "industrialforegoing:animal_feeder" + }, + { + id: "30C6C62788FBA50C", + type: "item", + item: "industrialforegoing:animal_rancher" + }, + { + id: "7C6B876555C4EA90", + type: "item", + item: "industrialforegoing:animal_baby_separator" + } + ], + rewards: [{ + id: "19210F4E78C3B032", + type: "xp", + xp: 100 + }] + }, + { + title: "Plants", + x: 6.5d, + y: -3.5d, + dependencies: ["690CFF61CE787D43"], + optional: true, + id: "6C001E18093FC037", + tasks: [ + { + id: "3B2B3F7BC100A618", + type: "item", + item: "industrialforegoing:plant_gatherer" + }, + { + id: "77DA9E89A314968B", + type: "item", + item: "industrialforegoing:plant_sower" + } + ], + rewards: [{ + id: "20588A723CB45234", + type: "xp", + xp: 100 + }] + }, + { + title: "Bio Power", + x: 5.5d, + y: -1.5d, + dependencies: ["690CFF61CE787D43"], + optional: true, + id: "540B857F043C24D5", + tasks: [ + { + id: "6DBD9D66E78E0D58", + type: "item", + item: "industrialforegoing:bioreactor" + }, + { + id: "28A15B47904E918A", + type: "item", + item: "industrialforegoing:biofuel_generator" + } + ], + rewards: [{ + id: "0F06B8DC62695CBF", + type: "xp", + xp: 100 + }] + }, + { + title: "Other Machines", + x: 7.5d, + y: -4.0d, + dependencies: ["690CFF61CE787D43"], + optional: true, + id: "3E6706BC4C318A40", + tasks: [ + { + id: "376F8FB39341A76F", + type: "item", + item: "industrialforegoing:sewage_composter" + }, + { + id: "3A617FF0FF39C742", + type: "item", + item: "industrialforegoing:spores_recreator" + } + ], + rewards: [{ + id: "5AABE475B6A7A7E1", + type: "xp", + xp: 100 + }] + }, + { + x: 6.5d, + y: 1.0d, + dependencies: ["690CFF61CE787D43"], + id: "4C366515E3CCB0B2", + tasks: [{ + id: "381C116FAD6B2236", + type: "item", + item: "industrialforegoing:meat_feeder" + }] + }, + { + x: 7.5d, + y: 3.0d, + shape: "rsquare", + dependencies: ["57C4A0BAE739E903"], + id: "3514E9C1A8C7400C", + tasks: [{ + id: "719FBA82094C5EC2", + type: "item", + item: "industrialforegoing:machine_frame_simple" + }], + rewards: [{ + id: "3CB88390179E68C1", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 10.5d, + y: 3.0d, + shape: "rsquare", + dependencies: [ + "3514E9C1A8C7400C", + "0E8647B8EB4AAC41" + ], + id: "0BCCDE24D378F260", + tasks: [{ + id: "6C58377563CFA587", + type: "item", + item: "industrialforegoing:machine_frame_advanced" + }], + rewards: [{ + id: "7368A06045782F5F", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 4.5d, + y: 4.0d, + dependencies: ["3514E9C1A8C7400C"], + optional: true, + id: "22702838FC507A2E", + tasks: [{ + id: "7BC5A77A97F5FEA3", + type: "item", + item: "industrialforegoing:hydroponic_bed" + }] + }, + { + x: 4.5d, + y: 2.0d, + dependencies: ["3514E9C1A8C7400C"], + optional: true, + id: "0D2DD9AA960843A3", + tasks: [{ + id: "782FFDDEED06401F", + type: "item", + item: "industrialforegoing:plant_fertilizer" + }] + }, + { + x: 6.0d, + y: 3.0d, + dependencies: ["3514E9C1A8C7400C"], + optional: true, + id: "0AD768E4CC10358C", + tasks: [{ + id: "183086ACEB713E82", + type: "item", + item: "industrialforegoing:mycelial_furnace" + }] + }, + { + x: 5.5d, + y: 2.0d, + dependencies: ["3514E9C1A8C7400C"], + id: "605A5AC65BC7E864", + tasks: [{ + id: "0B132D9A270D8A51", + type: "item", + item: "industrialforegoing:marine_fisher" + }] + }, + { + x: 5.0d, + y: 3.0d, + dependencies: ["3514E9C1A8C7400C"], + optional: true, + id: "377F505175DFB790", + tasks: [{ + id: "54E7A3F21AE2CA54", + type: "item", + item: "industrialforegoing:mycelial_culinary" + }] + }, + { + x: 3.0d, + y: 3.0d, + dependencies: ["3514E9C1A8C7400C"], + optional: true, + id: "45DA9A3DA47AF2F0", + tasks: [{ + id: "3ECC5C50C2436DB2", + type: "item", + item: "industrialforegoing:mycelial_frosty" + }] + }, + { + title: "Simple Black Hole Storage", + x: 5.5d, + y: 4.0d, + dependencies: ["3514E9C1A8C7400C"], + id: "0B7E3FD8B8CB04A2", + tasks: [ + { + id: "2A17E5658713BB56", + type: "item", + item: "industrialforegoing:simple_black_hole_unit" + }, + { + id: "7B9445CBF7FBAF14", + type: "item", + item: "industrialforegoing:simple_black_hole_tank" + } + ] + }, + { + x: 3.5d, + y: 4.0d, + dependencies: ["3514E9C1A8C7400C"], + optional: true, + id: "224C07AC71C5F40E", + tasks: [{ + id: "353C9F6B5E56C76E", + type: "item", + item: "industrialforegoing:fermentation_station" + }] + }, + { + x: 4.0d, + y: 3.0d, + dependencies: ["3514E9C1A8C7400C"], + optional: true, + id: "29C9EBD333E59A35", + tasks: [{ + id: "345746E883043F2A", + type: "item", + item: "industrialforegoing:mycelial_pink" + }] + }, + { + x: 3.5d, + y: 2.0d, + dependencies: ["3514E9C1A8C7400C"], + optional: true, + id: "1684D52FDAAC894B", + tasks: [{ + id: "720D4B73408CD1F0", + type: "item", + item: "industrialforegoing:mob_detector" + }] + }, + { + x: 11.0d, + y: 1.0d, + dependencies: ["0E8647B8EB4AAC41"], + id: "408203C29BAABA44", + tasks: [{ + id: "2B1369FBDB43CED5", + type: "item", + item: "industrialforegoing:pink_slime_ingot" + }] + }, + { + x: 11.0d, + y: 2.0d, + dependencies: [ + "408203C29BAABA44", + "0BCCDE24D378F260" + ], + id: "0B35172E47705205", + tasks: [{ + id: "79D439E38B286B8E", + type: "item", + item: "industrialforegoing:washing_factory" + }] + }, + { + x: 11.0d, + y: 4.5d, + dependencies: ["0BCCDE24D378F260"], + id: "418E57E34FFC19E1", + tasks: [ + { + id: "21285C89735F67FC", + type: "item", + item: "industrialforegoing:ore_laser_base" + }, + { + id: "7EB10ED3F8398FF4", + type: "item", + item: "industrialforegoing:fluid_laser_base" + }, + { + id: "39B89950413E16A6", + type: "item", + item: "industrialforegoing:laser_drill", + count: 4L + } + ] + }, + { + x: 10.0d, + y: 4.5d, + dependencies: ["0BCCDE24D378F260"], + id: "2E8E292ED596A104", + tasks: [{ + id: "7B6F79D3A759D5D5", + type: "item", + item: "industrialforegoing:laser_lens10" + }] + }, + { + x: 10.5d, + y: 6.0d, + description: [ + "Suggestion:", + "Use some sort of wither-proof glass." + ], + dependencies: [ + "2E8E292ED596A104", + "418E57E34FFC19E1" + ], + id: "7E39FB9F3E973009", + tasks: [{ + id: "1225664C1E9E28D3", + type: "item", + item: "industrialforegoing:ether_gas_bucket" + }], + rewards: [{ + id: "3F01AE70E8D45133", + type: "item", + item: { + id: "mekanism:basic_fluid_tank", + Count: 1b, + tag: { + mekData: { + owner: [I; + -1699457496, + 663964002, + -2000923315, + -13829450 + ], + FluidTanks: [{ + Tank: 0b, + stored: { + FluidName: "industrialforegoing:ether_gas", + Amount: 14000 + } + }], + securityMode: 0, + Items: [] + }, + BlockEntityTag: { + currentRedstone: 15, + FluidTanks: [{ + Tank: 0b, + stored: { + FluidName: "industrialforegoing:ether_gas", + Amount: 14000 + } + }], + updateDelay: 0, + activeState: 0b, + editMode: 0, + ForgeCaps: {}, + Items: [], + id: "mekanism:basic_fluid_tank", + Security: { + owner: [I; + -1699457496, + 663964002, + -2000923315, + -13829450 + ], + trusted: [[I; + -1699457496, + 663964002, + -2000923315, + -13829450 + ]], + name: "Security", + securityMode: 1, + override: 0b, + publicFreq: 1b + }, + componentSecurity: { + owner: [I; + -1699457496, + 663964002, + -2000923315, + -13829450 + ], + securityMode: 0 + }, + redstone: 0b + }, + display: { + Lore: ['"(+NBT)"'] + } + } + } + }] + }, + { + x: 10.5d, + y: 11.0d, + dependencies: ["7B4AF35313D7D779"], + id: "0F8FE6692717AA6A", + tasks: [{ + id: "2FD098DEE8336866", + type: "item", + item: "industrialforegoing:mycelial_reactor" + }] + }, + { + x: 10.5d, + y: 7.5d, + dependencies: ["7E39FB9F3E973009"], + id: "7B4AF35313D7D779", + tasks: [{ + id: "0DC23FAFFD8954C2", + type: "item", + item: "industrialforegoing:machine_frame_supreme" + }], + rewards: [{ + id: "3A2DA002948C28DF", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 12.5d, + y: 4.0d, + dependencies: ["0BCCDE24D378F260"], + id: "1D5895CD14AB88EF", + tasks: [ + { + id: "0F4D170395901E5C", + type: "item", + item: "industrialforegoing:advanced_black_hole_unit" + }, + { + id: "1B5535E1F65BA9F2", + type: "item", + item: "industrialforegoing:advanced_black_hole_tank" + } + ] + }, + { + x: 13.0d, + y: 3.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "65C5D30F48B77D20", + tasks: [{ + id: "285EB289271FF17A", + type: "item", + item: "industrialforegoing:mycelial_death" + }], + rewards: [{ + id: "6DFF5F139145071E", + type: "xp", + xp: 100 + }] + }, + { + x: 12.5d, + y: 2.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "7DC044EFFDC208D7", + tasks: [{ + id: "4AF8DF7BC38E419B", + type: "item", + item: "industrialforegoing:mycelial_slimey" + }], + rewards: [{ + id: "5EF23943495FF756", + type: "xp", + xp: 100 + }] + }, + { + x: 14.0d, + y: 3.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "014262BDF1BBA54D", + tasks: [{ + id: "56ACF4EA4F91E75C", + type: "item", + item: "industrialforegoing:mycelial_rocket" + }], + rewards: [{ + id: "51DAF57217E578E2", + type: "xp", + xp: 100 + }] + }, + { + x: 13.5d, + y: 2.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "5186CB4CD85B530C", + tasks: [{ + id: "1E468D6A624E64E2", + type: "item", + item: "industrialforegoing:mycelial_potion" + }], + rewards: [{ + id: "5F1811CD65E2047F", + type: "xp", + xp: 100 + }] + }, + { + x: 13.5d, + y: 4.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "287B47E27EBC2C18", + tasks: [{ + id: "4F813C90DC8DE4F0", + type: "item", + item: "industrialforegoing:enchantment_factory" + }] + }, + { + x: 15.0d, + y: 3.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "776EE1F5C4565146", + tasks: [{ + id: "6F96A800F8BDA3FD", + type: "item", + item: "industrialforegoing:mycelial_crimed" + }], + rewards: [{ + id: "22719C30558DBF7B", + type: "xp", + xp: 100 + }] + }, + { + x: 14.5d, + y: 4.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "3AFDE3396861A944", + tasks: [{ + id: "74E4102326A71945", + type: "item", + item: "industrialforegoing:enchantment_applicator" + }] + }, + { + x: 15.5d, + y: 4.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "4A8C60412E59E971", + tasks: [{ + id: "18A5C86DE82D9671", + type: "item", + item: "industrialforegoing:enchantment_sorter" + }] + }, + { + x: 16.5d, + y: 4.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "2DC012EF21FB359E", + tasks: [{ + id: "45B306381A723562", + type: "item", + item: "industrialforegoing:enchantment_extractor" + }] + }, + { + x: 16.0d, + y: 3.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "272E27EFE40C913A", + tasks: [{ + id: "0D2B10E4838ACFA2", + type: "item", + item: "industrialforegoing:mycelial_ender" + }], + rewards: [{ + id: "02982A3B61029BA0", + type: "xp", + xp: 100 + }] + }, + { + x: 17.0d, + y: 3.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "7CB4D47ABC295B92", + tasks: [{ + id: "43C5F3AECB9F88F1", + type: "item", + item: "industrialforegoing:mob_crusher" + }] + }, + { + x: 18.0d, + y: 3.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "15551AC6C68E12E0", + tasks: [{ + id: "532B0FD90F4D6AF6", + type: "item", + item: "industrialforegoing:mob_duplicator" + }] + }, + { + x: 14.5d, + y: 2.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "393A7BA6768A3F56", + tasks: [{ + id: "185FE487EF5B3069", + type: "item", + item: "industrialforegoing:mycelial_disenchantment" + }], + rewards: [{ + id: "41D2AB7FDF96F0BD", + type: "xp", + xp: 100 + }] + }, + { + x: 15.5d, + y: 2.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "1BF511A13DF35C3A", + tasks: [{ + id: "2C993EEE2B11D440", + type: "item", + item: "industrialforegoing:mycelial_magma" + }], + rewards: [{ + id: "4C75EC03132D7098", + type: "xp", + xp: 100 + }] + }, + { + x: 16.5d, + y: 2.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "38FF05B6A26DB2EC", + tasks: [{ + id: "04F5D3F7B29D441B", + type: "item", + item: "industrialforegoing:mycelial_explosive" + }], + rewards: [{ + id: "00B92D4CB603062C", + type: "xp", + xp: 100 + }] + }, + { + x: 17.5d, + y: 4.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "06F84E2C484FAC5B", + tasks: [{ + id: "5949367631EAD828", + type: "item", + item: "industrialforegoing:material_stonework_factory" + }] + }, + { + x: 17.5d, + y: 2.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "4F3EF1574F31A7E2", + tasks: [{ + id: "0D1F3F6898F4E776", + type: "item", + item: "industrialforegoing:stasis_chamber" + }] + }, + { + x: 18.5d, + y: 2.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "2782EA80C1C74EBD", + tasks: [{ + id: "3EFA144FCF33A935", + type: "item", + item: "industrialforegoing:potion_brewer" + }] + }, + { + x: 18.5d, + y: 4.0d, + dependencies: ["0BCCDE24D378F260"], + optional: true, + id: "34AA079FFAFC64BD", + tasks: [{ + id: "363855E6A408A2E5", + type: "item", + item: "industrialforegoing:fluid_sieving_machine" + }] + }, + { + x: 11.5d, + y: -1.0d, + dependencies: ["0E8647B8EB4AAC41"], + id: "65C147F5282E8FCD", + tasks: [{ + id: "7055454F2F8936C7", + type: "item", + item: "industrialforegoing:infinity_charger" + }] + }, + { + x: 12.5d, + y: -2.0d, + dependencies: ["65C147F5282E8FCD"], + id: "41E8550FC36ABCA5", + tasks: [ + { + id: "6D1A2543E374542A", + type: "item", + item: { + id: "industrialforegoing:infinity_trident", + Count: 1b, + tag: { + CanCharge: 1b, + Riptide: 0, + Channeling: 0b, + Energy: 0L, + Fluid: { + FluidName: "biofuel", + Amount: 0 + }, + Special: 0b, + Selected: "POOR", + Loyalty: 0 + } + } + }, + { + id: "798860AC37F98D4E", + type: "item", + item: { + id: "industrialforegoing:infinity_drill", + Count: 1b, + tag: { + CanCharge: 1b, + Special: 0b, + Selected: "POOR", + Energy: 0L, + Fluid: { + FluidName: "biofuel", + Amount: 0 + } + } + } + }, + { + id: "75341FD6B58D8988", + type: "item", + item: { + id: "industrialforegoing:infinity_saw", + Count: 1b, + tag: { + CanCharge: 1b, + Special: 0b, + Selected: "POOR", + Energy: 0L, + Fluid: { + FluidName: "biofuel", + Amount: 0 + } + } + } + }, + { + id: "291E22AEBC7FBCE2", + type: "item", + item: { + id: "industrialforegoing:infinity_hammer", + Count: 1b, + tag: { + CanCharge: 1b, + Energy: 0L, + Fluid: { + FluidName: "biofuel", + Amount: 0 + }, + Special: 0b, + Selected: "POOR", + Beheading: 0 + } + } + }, + { + id: "1A3351BC0935160A", + type: "item", + item: { + id: "industrialforegoing:infinity_backpack", + Count: 1b, + tag: { + CanCharge: 1b, + Special: 0b, + Selected: "POOR", + Energy: 0L + } + } + } + ], + rewards: [{ + id: "1382AE5136BAB6C3", + type: "xp_levels", + xp_levels: 2 + }] + }, + { + x: 9.5d, + y: 10.5d, + dependencies: ["7B4AF35313D7D779"], + optional: true, + id: "60719C4317D39E5A", + tasks: [{ + id: "42FC1011D077857F", + type: "item", + item: "industrialforegoing:mycelial_netherstar" + }] + }, + { + x: 9.0d, + y: 9.5d, + dependencies: ["7B4AF35313D7D779"], + optional: true, + id: "3A97E99FEC78E9C2", + tasks: [{ + id: "26CFE6CE592741D6", + type: "item", + item: "industrialforegoing:mycelial_halitosis" + }] + }, + { + x: 8.5d, + y: 8.5d, + dependencies: ["7B4AF35313D7D779"], + optional: true, + id: "7342B2669D96C509", + tasks: [{ + id: "077D65D9C7397844", + type: "item", + item: "industrialforegoing:mycelial_meatallurgic" + }] + }, + { + x: 11.5d, + y: 10.5d, + dependencies: ["7B4AF35313D7D779"], + id: "28B3591BFC0FA08B", + tasks: [{ + id: "12A0A25980EA485E", + type: "item", + item: "industrialforegoing:wither_builder" + }] + }, + { + x: 12.5d, + y: 8.5d, + dependencies: ["7B4AF35313D7D779"], + id: "30BEF473F5C25983", + tasks: [ + { + id: "01FE619C47E82C71", + type: "item", + item: "industrialforegoing:supreme_black_hole_unit" + }, + { + id: "63514396DB2EEA1C", + type: "item", + item: "industrialforegoing:supreme_black_hole_tank" + } + ] + }, + { + x: 12.0d, + y: 9.5d, + dependencies: ["7B4AF35313D7D779"], + id: "4F846973EFB95FA5", + tasks: [{ + id: "5A45E3CD864C4DA1", + type: "item", + item: "industrialforegoing:black_hole_controller" + }] + } + ] +} diff --git a/config/ftbquests/quests/chapters/pedestals.snbt b/config/ftbquests/quests/chapters/pedestals.snbt new file mode 100644 index 00000000..38851ed4 --- /dev/null +++ b/config/ftbquests/quests/chapters/pedestals.snbt @@ -0,0 +1,813 @@ +{ + id: "244A74DD4896B704", + group: "2B51AC12041E3F89", + order_index: 0, + filename: "pedestals", + title: "Pedestals", + icon: "pedestals:pedestal/stone333", + default_quest_shape: "", + quests: [ + { + x: 0.0d, + y: 0.0d, + shape: "gear", + description: ["Welcome to &aPedestals&f!"], + size: 1.5d, + id: "578911E0725C6A01", + tasks: [ + { + id: "3107D0641AE24A88", + type: "item", + item: "pedestals:pedestal/stone333" + }, + { + id: "41419A5E77FB4931", + type: "item", + title: "Linking Tool", + item: { + id: "itemfilters:tag", + Count: 1b, + tag: { + value: "pedestals:linkingtool" + } + } + }, + { + id: "327A589D421C2F19", + type: "item", + item: "pedestals:upgradetool" + }, + { + id: "6EB85FFCE49BD42B", + type: "item", + item: "pedestals:coin/default" + } + ], + rewards: [ + { + id: "6E97357346D96E2E", + type: "item", + item: { + id: "minecraft:player_head", + Count: 1b, + tag: { + SkullOwner: { + Properties: { + textures: [{ + Value: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYWQ3YzI3M2U5N2MyNzdjNDljOTA2NWVkZGYxMDdlODdlYTc3NWM4N2IyYzlmZWEwOTIyNTUwNTE5MDJhYzRhIn19fQ==" + }] + }, + Id: [I; + -647195142, + 2010533167, + -1243897687, + 1144171008 + ] + }, + display: { + Name: '{"text":"BovineShaman"}' + } + } + } + }, + { + id: "582218BBA8C953B9", + type: "item", + item: "pedestals:coin/default", + count: 3 + } + ] + }, + { + x: 0.0d, + y: -2.0d, + dependencies: ["578911E0725C6A01"], + id: "2478CC45028C833D", + tasks: [{ + id: "591FB02863204CE8", + type: "item", + item: "pedestals:coin/import" + }] + }, + { + x: -1.0d, + y: -1.0d, + dependencies: ["2478CC45028C833D"], + id: "51435B0D8A1BEEB8", + tasks: [ + { + id: "4D9020332C19C058", + type: "item", + item: "pedestals:coin/frestock" + }, + { + id: "5F43D91AD1708E30", + type: "item", + item: "pedestals:coin/fimport" + } + ] + }, + { + x: 2.0d, + y: -2.0d, + description: ["Will transfer energy between pedestals."], + dependencies: ["578911E0725C6A01"], + id: "3EC242094715BD60", + tasks: [{ + id: "2584887804A5C56C", + type: "item", + item: "pedestals:coin/rfrelay" + }] + }, + { + x: 2.0d, + y: 0.0d, + description: ["Will transfer fluids between pedestals."], + dependencies: ["578911E0725C6A01"], + id: "7DEAF5CC9706935D", + tasks: [{ + id: "499E084114678F3E", + type: "item", + item: "pedestals:coin/fluidrelay" + }] + }, + { + x: 2.0d, + y: 2.0d, + description: ["Will transfer XP between pedestals."], + dependencies: ["578911E0725C6A01"], + id: "37AD6B7D76A8B002", + tasks: [{ + id: "37D57922A50C1F96", + type: "item", + item: "pedestals:coin/xprelay" + }] + }, + { + x: 3.5d, + y: -2.0d, + dependencies: ["3EC242094715BD60"], + id: "42B96CCD45DDC17C", + tasks: [{ + id: "43F2ACD6C4BCCD92", + type: "item", + item: "pedestals:coin/rftank" + }] + }, + { + x: 3.5d, + y: 0.0d, + dependencies: ["7DEAF5CC9706935D"], + id: "4324073FAA133943", + tasks: [{ + id: "03754346D58F1571", + type: "item", + item: "pedestals:coin/fluidtank" + }] + }, + { + x: 3.5d, + y: 2.0d, + dependencies: ["37AD6B7D76A8B002"], + id: "19BD6BA955A7BF95", + tasks: [{ + id: "511676457DB93F9D", + type: "item", + item: "pedestals:coin/xptank" + }] + }, + { + x: 5.0d, + y: -2.0d, + dependencies: ["42B96CCD45DDC17C"], + id: "24FF0974C57A08F0", + tasks: [{ + id: "0C21F78807BF17B2", + type: "item", + item: "pedestals:coin/voidenergy" + }] + }, + { + x: 5.0d, + y: 0.0d, + dependencies: ["4324073FAA133943"], + id: "318FBD15A359F405", + tasks: [{ + id: "0B4435EBFCFA4F80", + type: "item", + item: "pedestals:coin/voidfluid" + }] + }, + { + x: -1.5d, + y: -2.0d, + dependencies: ["2478CC45028C833D"], + id: "5A3DAD4F87335B03", + tasks: [{ + id: "2D64BC721AF6DA08", + type: "item", + item: "pedestals:coin/void" + }] + }, + { + x: -2.0d, + y: 0.0d, + dependencies: ["51435B0D8A1BEEB8"], + dependency_requirement: "one_completed", + id: "57152CF55E8C5E17", + tasks: [{ + id: "15A4DC4E367A32CB", + type: "item", + item: "pedestals:coin/dropper" + }] + }, + { + x: 3.5d, + y: 3.5d, + dependencies: ["19BD6BA955A7BF95"], + id: "2C5B637FFB10812D", + tasks: [{ + id: "20E7F382C1B55E15", + type: "item", + item: "pedestals:coin/xpdropper" + }] + }, + { + x: 2.5d, + y: 3.0d, + dependencies: ["19BD6BA955A7BF95"], + id: "154FD28D614A5FBD", + tasks: [{ + id: "4590ABD5D50E9F48", + type: "item", + item: "pedestals:coin/xpbottler" + }] + }, + { + x: 4.5d, + y: 3.0d, + dependencies: ["19BD6BA955A7BF95"], + id: "5B02343D2BCF7294", + tasks: [{ + id: "643719BA98BB0ABF", + type: "item", + item: "pedestals:coin/xpmagnet" + }] + }, + { + x: 5.0d, + y: 2.0d, + dependencies: ["19BD6BA955A7BF95"], + id: "3AC81639A20C39E9", + tasks: [ + { + id: "22EE5AD2291B7C40", + type: "item", + item: "pedestals:coin/xpenchanter" + }, + { + id: "4339BB59F968CEA4", + type: "item", + item: "pedestals:coin/xpanvil" + }, + { + id: "6E847E7C17B54F3B", + type: "item", + item: "pedestals:coin/xpgrindstone" + } + ] + }, + { + x: 4.5d, + y: 1.0d, + dependencies: [ + "19BD6BA955A7BF95", + "4324073FAA133943" + ], + id: "66809E55D456C1C8", + tasks: [{ + id: "6C648245BA0028A3", + type: "item", + item: "pedestals:coin/fluidxpconverter" + }] + }, + { + x: -1.0d, + y: -4.0d, + dependencies: ["242760890E1D8275"], + id: "734A5B641366822E", + tasks: [{ + id: "7E992D5573429DDD", + type: "item", + item: "pedestals:coin/placer" + }] + }, + { + x: 0.0d, + y: -5.0d, + dependencies: ["242760890E1D8275"], + id: "4BC6585238D414CF", + tasks: [{ + id: "1C514DB776F11D76", + type: "item", + item: "pedestals:coin/breaker" + }] + }, + { + x: 0.0d, + y: -6.5d, + dependencies: ["242760890E1D8275"], + id: "141F1B275090FBFC", + tasks: [{ + id: "1E5F2044D83DB59F", + type: "item", + item: "pedestals:coin/chopper" + }] + }, + { + x: -1.0d, + y: -5.5d, + dependencies: ["4BC6585238D414CF"], + id: "7AD0979F82D22484", + tasks: [{ + id: "10CD42E4B9FEAF42", + type: "item", + item: "pedestals:coin/quarry" + }] + }, + { + x: -1.0d, + y: -7.0d, + dependencies: ["141F1B275090FBFC"], + id: "59A758F472160F1E", + tasks: [{ + id: "1BF995D66B887709", + type: "item", + item: "pedestals:coin/choppershrooms" + }] + }, + { + x: 3.5d, + y: -3.5d, + dependencies: ["42B96CCD45DDC17C"], + id: "0EE06578BCFED5E3", + tasks: [{ + id: "7F0B8A068DAFE723", + type: "item", + item: "pedestals:coin/rffuelgen" + }] + }, + { + x: 3.5d, + y: -5.0d, + dependencies: ["0EE06578BCFED5E3"], + id: "4C81207F75E45A75", + tasks: [{ + id: "10165391F1048853", + type: "item", + item: "pedestals:coin/rfexpgen" + }] + }, + { + x: 2.5d, + y: -3.0d, + dependencies: ["42B96CCD45DDC17C"], + id: "667C30764CDE52E0", + tasks: [{ + id: "69D7C1003FC5F6F5", + type: "item", + item: "pedestals:coin/rfcrusher" + }] + }, + { + x: 1.0d, + y: -3.0d, + dependencies: ["242760890E1D8275"], + id: "677C03C4F1366CC5", + tasks: [{ + id: "347A7DE1B343351F", + type: "item", + item: "pedestals:coin/crusher" + }] + }, + { + x: 1.0d, + y: -4.5d, + dependencies: ["677C03C4F1366CC5"], + id: "46AAF5331FF8D520", + tasks: [{ + id: "646FA253D627589C", + type: "item", + item: "pedestals:coin/sawmill" + }] + }, + { + x: 2.5d, + y: -4.5d, + dependencies: ["667C30764CDE52E0"], + id: "0C77CF8EE90DC4A3", + tasks: [{ + id: "7102CCC5FAB1D941", + type: "item", + item: "pedestals:coin/rfsawmill" + }] + }, + { + x: 2.5d, + y: -6.0d, + dependencies: ["0C77CF8EE90DC4A3"], + id: "7A31852EBCDE9781", + tasks: [{ + id: "47FAC9D45AAE5AD3", + type: "item", + item: "pedestals:coin/rfsmelter" + }] + }, + { + x: 1.0d, + y: -6.0d, + dependencies: ["46AAF5331FF8D520"], + id: "2D519E8EBA0E5992", + tasks: [{ + id: "13C5378EE4D61293", + type: "item", + item: "pedestals:coin/smelter" + }] + }, + { + x: 0.0d, + y: -3.5d, + dependencies: ["2478CC45028C833D"], + id: "242760890E1D8275", + tasks: [{ + id: "174AEC0E5B1B1FE8", + type: "item", + item: "pedestals:coin/itemtank" + }] + }, + { + x: 4.5d, + y: -3.0d, + dependencies: ["42B96CCD45DDC17C"], + id: "3C2D8F6DA55AC71F", + tasks: [{ + id: "588C0B255804E24C", + type: "item", + item: "pedestals:coin/rfimport" + }] + }, + { + x: 2.5d, + y: -1.0d, + dependencies: ["4324073FAA133943"], + id: "622DB4CBAEFA4C06", + tasks: [{ + id: "5D0155A2D82AB046", + type: "item", + item: "pedestals:coin/fluidpump" + }] + }, + { + x: 2.5d, + y: 1.0d, + dependencies: ["4324073FAA133943"], + id: "3F1D0B4C02073024", + tasks: [{ + id: "1303B38058FEE531", + type: "item", + item: "pedestals:coin/fluiddrain" + }] + }, + { + x: 4.5d, + y: -1.0d, + dependencies: ["4324073FAA133943"], + id: "7A3A138095EEFA99", + tasks: [{ + id: "6408B22AC766B745", + type: "item", + item: "pedestals:coin/fluidimport" + }] + }, + { + x: 6.0d, + y: -1.0d, + dependencies: ["7A3A138095EEFA99"], + id: "20F0C9AD82AD133C", + tasks: [{ + id: "066C9FC1ABF828A7", + type: "item", + item: "pedestals:coin/fluidfilteredimport" + }] + }, + { + x: 6.5d, + y: 0.0d, + dependencies: ["4324073FAA133943"], + id: "2E5FD4C05212D75A", + tasks: [ + { + id: "596D66EE03BC5A51", + type: "item", + item: "pedestals:coin/fluidcrafter1" + }, + { + id: "45D7CC5D23C9FD83", + type: "item", + item: "pedestals:coin/placeholderbucket" + } + ] + }, + { + x: -1.0d, + y: -3.0d, + dependencies: ["2478CC45028C833D"], + id: "20EB9E705AF796B2", + tasks: [ + { + id: "5B3E97B785955F6F", + type: "item", + item: "pedestals:coin/crafter1" + }, + { + id: "5A2A1B3C492841C4", + type: "item", + item: "pedestals:coin/placeholder" + } + ] + }, + { + x: -2.0d, + y: -4.0d, + dependencies: ["20EB9E705AF796B2"], + id: "1EDE6BF7E899CE79", + tasks: [{ + id: "49B297D625BBA523", + type: "item", + item: "pedestals:coin/compactor2" + }] + }, + { + x: 0.0d, + y: 2.0d, + dependencies: ["578911E0725C6A01"], + id: "6942609F4C6A54F6", + tasks: [{ + id: "5AE919444803279F", + type: "item", + item: "pedestals:itemcolorpalletdefault" + }] + }, + { + x: -3.0d, + y: -2.0d, + dependencies: ["2478CC45028C833D"], + id: "64B15B89EE3540DF", + tasks: [{ + id: "0ACB2BB0D37C2FA2", + type: "item", + item: "pedestals:coin/cobble" + }] + }, + { + x: -4.0d, + y: -3.0d, + dependencies: ["64B15B89EE3540DF"], + id: "56D3C3494C68E02C", + tasks: [ + { + id: "0CED5F01EDBA9B34", + type: "item", + item: "pedestals:coin/attack" + }, + { + id: "154E60C54636BB80", + type: "item", + item: "pedestals:coin/fan" + } + ] + }, + { + x: -3.0d, + y: -3.5d, + dependencies: ["64B15B89EE3540DF"], + id: "2960E068ABC30611", + tasks: [{ + id: "3AA8F263C5F8C13E", + type: "item", + item: "pedestals:coin/shearer" + }] + }, + { + x: -4.0d, + y: -1.0d, + dependencies: ["64B15B89EE3540DF"], + id: "3F2E9932D768ED3C", + tasks: [{ + id: "135FE73C4BC72A23", + type: "item", + item: "pedestals:coin/effect" + }] + }, + { + x: -3.0d, + y: -0.5d, + dependencies: ["64B15B89EE3540DF"], + id: "20C158570DB536C0", + tasks: [{ + id: "105891DDDFC60DD8", + type: "item", + item: "pedestals:coin/teleporter" + }] + }, + { + x: -2.0d, + y: -1.0d, + dependencies: ["64B15B89EE3540DF"], + id: "70EE25D93F2A8EE2", + tasks: [{ + id: "277B1BEC55D67A98", + type: "item", + item: "pedestals:coin/recycler" + }] + }, + { + x: -2.0d, + y: -3.0d, + dependencies: ["64B15B89EE3540DF"], + id: "2D84406D9EFE1D1D", + tasks: [{ + id: "0EECAE408C736D5B", + type: "item", + item: "pedestals:coin/harvesterhives" + }] + }, + { + x: 0.0d, + y: -8.0d, + dependencies: ["141F1B275090FBFC"], + id: "6FA32C5B088D442B", + tasks: [{ + id: "0B384A8147709C04", + type: "item", + item: "pedestals:coin/harvester" + }] + }, + { + x: -1.0d, + y: -8.5d, + dependencies: ["6FA32C5B088D442B"], + id: "6424A5540EDAA569", + tasks: [{ + id: "4967A9F1A55D56E9", + type: "item", + item: "pedestals:coin/planter" + }] + }, + { + x: 8.0d, + y: 0.0d, + dependencies: ["4324073FAA133943"], + id: "5D1D79795F156677", + tasks: [{ + id: "71DAE31ACB39E582", + type: "item", + item: "pedestals:coin/milker" + }] + }, + { + x: -4.5d, + y: -2.0d, + dependencies: ["64B15B89EE3540DF"], + id: "0FA964578831F594", + tasks: [{ + id: "60EDC00D7120A5B1", + type: "item", + item: "pedestals:coin/enderexport" + }] + }, + { + x: -6.0d, + y: -2.5d, + dependencies: ["0FA964578831F594"], + id: "19E03BC5B6AB9AB1", + tasks: [{ + id: "358550D40F35B372", + type: "item", + item: "pedestals:coin/enderfilteredexport" + }] + }, + { + x: -6.0d, + y: -1.5d, + dependencies: ["0FA964578831F594"], + id: "72B652280E3736B0", + tasks: [{ + id: "4B5FD795DCC1DCA5", + type: "item", + item: "pedestals:coin/enderfilteredrestock" + }] + }, + { + x: -2.0d, + y: 2.0d, + dependencies: ["578911E0725C6A01"], + id: "334B7FB59A913534", + tasks: [ + { + id: "6B3222494E8EED32", + type: "item", + item: "pedestals:upgradespeed" + }, + { + id: "58357534E311FEA8", + type: "item", + item: "pedestals:upgradecapacity" + }, + { + id: "4358360B0E4AD3A4", + type: "item", + item: "pedestals:upgraderange" + } + ] + }, + { + x: -4.0d, + y: 2.0d, + dependencies: ["334B7FB59A913534"], + id: "74AEFBF24CE25081", + tasks: [ + { + id: "382A1F4A083ECE71", + type: "item", + item: "pedestals:upgraderoundrobin" + }, + { + id: "0F3E38CFDDCB275A", + type: "item", + item: "pedestals:upgradesoundmuffler" + }, + { + id: "1161904DD4FA0936", + type: "item", + item: "pedestals:upgradeparticlediffuser" + } + ] + }, + { + x: 0.0d, + y: 4.0d, + dependencies: ["578911E0725C6A01"], + id: "6AFB0FE7F52ECDE7", + tasks: [{ + id: "2A21C4C960D502B9", + type: "item", + item: "pedestals:filter/filterbase" + }] + }, + { + x: -3.0d, + y: 3.0d, + dependencies: ["578911E0725C6A01"], + id: "5CCE866D08C12F9C", + tasks: [ + { + id: "3F965656C21FA961", + type: "item", + item: "pedestals:bookspeed" + }, + { + id: "0FC8E640BD032A1F", + type: "item", + item: "pedestals:bookrange" + }, + { + id: "57C07C5393CA1619", + type: "item", + item: "pedestals:bookarea" + }, + { + id: "571F00AC84C5F692", + type: "item", + item: "pedestals:bookcapacity" + }, + { + id: "2A73099188CFA581", + type: "item", + item: "pedestals:bookmagnet" + } + ] + }, + { + x: -4.0d, + y: 4.0d, + dependencies: ["5CCE866D08C12F9C"], + id: "1FB8A2BE09831AD0", + tasks: [{ + id: "71564ABE6A01954D", + type: "item", + item: "pedestals:bookadvanced" + }] + } + ] +} diff --git a/config/ftbquests/quests/chapters/psi.snbt b/config/ftbquests/quests/chapters/psi.snbt new file mode 100644 index 00000000..b078ca0e --- /dev/null +++ b/config/ftbquests/quests/chapters/psi.snbt @@ -0,0 +1,899 @@ +{ + id: "7831613229FC6191", + group: "02FE661031A105D8", + order_index: 4, + filename: "psi", + title: "Psi", + icon: { + id: "patchouli:guide_book", + Count: 1b, + tag: { + "patchouli:book": "psi:encyclopaedia_psionica" + } + }, + default_quest_shape: "", + quests: [ + { + x: 0.0d, + y: 0.0d, + shape: "gear", + description: [ + "Welcome to &aPsi&f, a mod by &2Vazkii&f!", + "", + "Contained in your &eAkashic Tome&f, the &eEncyclopaedia Psionica&f will provide more information about the items and features in this mod." + ], + size: 1.5d, + id: "14EBEEFAA34FBB77", + tasks: [{ + id: "341F8B1E1667A045", + type: "checkmark", + title: "Psi" + }], + rewards: [{ + id: "4F58802A8304C359", + type: "item", + item: { + id: "minecraft:player_head", + Count: 1b, + tag: { + SkullOwner: { + Properties: { + textures: [{ + Value: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYWQ3YzI3M2U5N2MyNzdjNDljOTA2NWVkZGYxMDdlODdlYTc3NWM4N2IyYzlmZWEwOTIyNTUwNTE5MDJhYzRhIn19fQ==" + }] + }, + Id: [I; + -647195142, + 2010533167, + -1243897687, + 1144171008 + ] + }, + display: { + Name: '{"text":"BovineShaman"}' + } + } + } + }] + }, + { + x: 0.0d, + y: -2.0d, + description: ["Your first &eCasting Assistant Device (CAD)&f!"], + dependencies: ["14EBEEFAA34FBB77"], + id: "447053485CABA551", + tasks: [{ + id: "7083348D2C3AC9B6", + type: "item", + item: "psi:cad_assembly_iron" + }], + rewards: [{ + id: "265BC6BBB82382F6", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 0.0d, + y: -4.0d, + description: ["This station will be used for all of your &eCAD&f assembling needs."], + dependencies: ["447053485CABA551"], + id: "3CEF13CA385F4434", + tasks: [{ + id: "114C592ADE552419", + type: "item", + item: "psi:cad_assembler" + }] + }, + { + x: 0.0d, + y: -6.0d, + description: ["Plop your &eIron CAD Assembly&f into the &fCAD Assembler&f"], + dependencies: ["3CEF13CA385F4434"], + id: "6EBFE853BA815DAA", + tasks: [{ + id: "0AD774B6DB580774", + type: "item", + item: { + ForgeCaps: { + Parent: { + Memory: [], + Battery: 0, + Time: 0 + } + }, + id: "psi:cad", + Count: 1b, + tag: { + componentASSEMBLY: { + id: "psi:cad_assembly_iron", + Count: 1b + } + } + } + }] + }, + { + x: 0.0d, + y: -8.0d, + description: ["Throw some &eredstone&f on the ground and right-click using your new &ecasting assistant device&f while nearby"], + dependencies: ["6EBFE853BA815DAA"], + id: "672A9398B8CB6E25", + tasks: [{ + id: "01A34931339FD7F4", + type: "item", + item: "psi:psidust" + }], + rewards: [{ + id: "527EC20AC4D60C7E", + type: "item", + item: "psi:psidust", + count: 3 + }] + }, + { + icon: "psi:programmer", + x: -1.0d, + y: -7.0d, + description: [ + "This station will be used for all of your &dspell&f creation needs.", + "", + "Right-click a &espell bullet&f onto the &espell programmer&f to load the &ebullet&f with that &dspell&f." + ], + dependencies: ["672A9398B8CB6E25"], + id: "5610D15E9584FD62", + tasks: [ + { + id: "14837B5723152A87", + type: "item", + item: "psi:programmer" + }, + { + id: "3519C05E87E6175B", + type: "item", + item: { + id: "psi:spell_bullet", + Count: 1b, + tag: {} + } + } + ], + rewards: [{ + id: "0C0AF913A9C85F17", + type: "item", + item: { + id: "psi:spell_bullet_projectile", + Count: 1b, + tag: {} + } + }] + }, + { + x: -1.0d, + y: -9.0d, + description: [ + "Simply changes the psi color of the &eCAD&f it's put onto.", + "", + "This is not required for a functional &eCAD&f, it is purely aesthetic" + ], + dependencies: ["672A9398B8CB6E25"], + id: "4FCB27776B052710", + tasks: [{ + id: "3DA14CC8518E5AA8", + type: "item", + item: "psi:cad_colorizer_red" + }], + rewards: [{ + id: "40F60594B0804EA6", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: -2.0d, + y: -10.0d, + description: ["Using the fancy new parts you just made, make a new CAD, only this one will be better!"], + dependencies: [ + "4FCB27776B052710", + "7D724B0F045F26E4" + ], + id: "6884A98956F51E5C", + tasks: [{ + id: "1AAA904E05AFD162", + type: "item", + item: { + ForgeCaps: { + Parent: { + Memory: [], + Battery: 100, + Time: 0 + } + }, + id: "psi:cad", + Count: 1b, + tag: { + componentCORE: { + id: "psi:cad_core_basic", + Count: 1b + }, + componentASSEMBLY: { + id: "psi:cad_assembly_gold", + Count: 1b + }, + componentDYE: { + id: "psi:cad_colorizer_psi", + Count: 1b + }, + componentSOCKET: { + id: "psi:cad_socket_basic", + Count: 1b + }, + componentBATTERY: { + id: "psi:cad_battery_basic", + Count: 1b + } + } + } + }], + rewards: [{ + id: "4CA679F42773B583", + type: "item", + item: "psi:psidust" + }] + }, + { + x: -2.0d, + y: -8.0d, + description: [ + '&dSpell&f must have &bTrick: Infusion&f and be named "&5Infusion&f".', + "", + "" + ], + dependencies: ["5610D15E9584FD62"], + id: "1FA1B263BE981D57", + tasks: [{ + id: "72F113BBA8359D13", + type: "item", + item: { + id: "psi:spell_bullet", + Count: 1b, + tag: { + spell: { + modsRequired: [{ + modVersion: "1.16-94", + modName: "psi" + }], + spellName: "Infusion", + uuidMost: 3804495466522953104L, + validSpell: 1b, + spellList: [{ + x: 4, + y: 4, + data: { + key: "psi:trick_infusion" + } + }], + uuidLeast: -8202454919581574748L + }, + has_spell: 1b + } + } + }] + }, + { + x: -3.0d, + y: -7.0d, + description: ['&dSpell&f must contain &bTrick: Greater Infusion&f and be named "&5Greater Infusion&f".'], + dependencies: ["5610D15E9584FD62"], + id: "296E709DCF11ECF2", + tasks: [{ + id: "7390F185303E8519", + type: "item", + item: { + id: "psi:spell_bullet", + Count: 1b, + tag: { + spell: { + modsRequired: [{ + modVersion: "1.16-94", + modName: "psi" + }], + spellName: "Greater Infusion", + uuidMost: 7503375332235758121L, + validSpell: 1b, + spellList: [{ + x: 4, + y: 4, + data: { + key: "psi:trick_greater_infusion" + } + }], + uuidLeast: -5136156521636814908L + }, + has_spell: 1b + } + } + }] + }, + { + x: -3.0d, + y: -9.0d, + description: [ + 'Created similarly to &epsidust&f, &epsimetal&f requires a &egold ingot&f on the ground and the casting of the "&5Infusion&f" &dspell&f while near the &egold ingots&f.', + "", + "This &dspell&f can also be used to make &epsidust&f." + ], + dependencies: [ + "1FA1B263BE981D57", + "6884A98956F51E5C" + ], + id: "7897AD80B39B3DA9", + tasks: [{ + id: "3FD358531114048C", + type: "item", + item: "psi:psimetal" + }], + rewards: [{ + id: "13FE8EC6DFF39C62", + type: "item", + item: "psi:psimetal", + count: 3 + }] + }, + { + x: -4.0d, + y: -6.0d, + dependencies: ["467C88955EDA576B"], + id: "350EECB5549A9149", + tasks: [{ + id: "3CDC8E3D9EA38648", + type: "item", + item: { + ForgeCaps: { + Parent: { + Memory: [], + Battery: 0, + Time: 0 + } + }, + id: "psi:cad", + Count: 1b, + tag: { + componentCORE: { + id: "psi:cad_core_overclocked", + Count: 1b + }, + componentASSEMBLY: { + id: "psi:cad_assembly_psimetal", + Count: 1b + }, + componentSOCKET: { + id: "psi:cad_socket_signaling", + Count: 1b + }, + componentBATTERY: { + id: "psi:cad_battery_extended", + Count: 1b + } + } + } + }] + }, + { + x: -5.0d, + y: -7.0d, + description: [ + 'Same as &epsidust&f and &epsimetal&f, the input being &ediamond&f and the "&5Greater Infusion&f" &dspell&f.', + "", + "This &dspell&f can also be used to make &epsidust&f and &epsimetal&f." + ], + dependencies: [ + "296E709DCF11ECF2", + "350EECB5549A9149" + ], + id: "508BB7E1F4E05BD9", + tasks: [{ + id: "68DC88BC1A432680", + type: "item", + item: "psi:psigem" + }], + rewards: [{ + id: "2B70EB4BD82021A4", + type: "item", + item: "psi:psigem", + count: 3 + }] + }, + { + title: "Ebony \\& Ivory Substance", + x: -3.0d, + y: -5.0d, + description: [ + 'Same as &epsidust&f, &epsimetal&f, and &epsigems&f, the input being &ecoal&f or &equartz&f and the "&5Evony \\& Ivory&f" &dspell&f.', + "", + "This &dspell&f can also be used to make &epsidust&f, &epsimetal&f, and &epsigems&f.", + "", + "You must be in the end for this &dspell&f to work!" + ], + dependencies: [ + "350EECB5549A9149", + "71E43799270B048D" + ], + id: "1BC4DFA9F41319C7", + tasks: [ + { + id: "66672A2AF4107310", + type: "item", + item: "psi:ebony_substance" + }, + { + id: "6A53520A5236FF5F", + type: "item", + item: "psi:ivory_substance" + } + ], + rewards: [ + { + id: "4D216BD77D3A434E", + type: "item", + item: "psi:ebony_substance", + count: 2 + }, + { + id: "3393BB0E7CAF3916", + type: "item", + item: "psi:ivory_substance", + count: 2 + } + ] + }, + { + x: -3.0d, + y: -3.0d, + dependencies: ["1BC4DFA9F41319C7"], + id: "707D86F3055FD628", + tasks: [ + { + id: "6C5DE0F53CBB2E19", + type: "item", + item: "psi:ebony_psimetal" + }, + { + id: "69AAF133777ECFEC", + type: "item", + item: "psi:ivory_psimetal" + } + ], + rewards: [ + { + id: "3110B8F9C0D4DA02", + type: "item", + item: "psi:ebony_psimetal" + }, + { + id: "13960722C196394C", + type: "item", + item: "psi:ivory_psimetal" + } + ] + }, + { + x: -2.0d, + y: -2.0d, + description: ["This assembly has higher efficiency than it's ebony counter part."], + dependencies: ["707D86F3055FD628"], + id: "1882D37244614A68", + tasks: [{ + id: "375F79ED3299DFE5", + type: "item", + item: "psi:cad_assembly_ivory_psimetal" + }], + rewards: [{ + id: "491876EB2D0A054E", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + title: "Getting A Better CAD", + x: 0.0d, + y: -10.0d, + description: [ + "Time to make some &eCAD&f parts!", + "- Cores determine max spell complexity", + "- Batteries determine max psi", + "- Sockets determine number of slots for &dspells&f" + ], + dependencies: ["672A9398B8CB6E25"], + id: "7D724B0F045F26E4", + tasks: [ + { + id: "586BE79EE6794A08", + type: "item", + item: "psi:cad_assembly_gold" + }, + { + id: "6BBE3E81A3CB88E4", + type: "item", + item: "psi:cad_core_basic" + }, + { + id: "2DB8A39927CD4799", + type: "item", + item: "psi:cad_socket_basic" + }, + { + id: "716D0E526FFC911B", + type: "item", + item: "psi:cad_battery_basic" + } + ], + rewards: [{ + id: "3517D3ACEF28700C", + type: "item", + item: "psi:psidust" + }] + }, + { + title: "Better CAD Parts", + x: -4.0d, + y: -8.0d, + dependencies: ["7897AD80B39B3DA9"], + id: "467C88955EDA576B", + tasks: [ + { + id: "3B6FD05608ACBFB6", + type: "item", + item: "psi:cad_assembly_psimetal" + }, + { + id: "52D4DD0EEF7BA0A3", + type: "item", + item: "psi:cad_core_overclocked" + }, + { + id: "5A7436894C51324B", + type: "item", + item: "psi:cad_socket_signaling" + }, + { + id: "5C76A0021188FA01", + type: "item", + item: "psi:cad_battery_extended" + } + ], + rewards: [{ + id: "1ACEA2C49B48E515", + type: "item", + item: "psi:psimetal", + count: 2 + }] + }, + { + x: -2.0d, + y: -6.0d, + description: ['&dSpell&f must contain &bTrick: Ebony \\& Ivory&f and be named "&5Ebony \\& Ivory&f".'], + dependencies: ["5610D15E9584FD62"], + id: "71E43799270B048D", + tasks: [{ + id: "7755ACF9FA2374C7", + type: "item", + item: { + id: "psi:spell_bullet", + Count: 1b, + tag: { + spell: { + modsRequired: [{ + modVersion: "1.16-94", + modName: "psi" + }], + spellName: "Ebony & Ivory", + uuidMost: 817484819054216280L, + validSpell: 1b, + spellList: [{ + x: 4, + y: 4, + data: { + key: "psi:trick_ebony_ivory" + } + }], + uuidLeast: -6505221033292121448L + }, + has_spell: 1b + } + } + }] + }, + { + title: "Psimetal Tools", + x: -6.0d, + y: -6.0d, + description: ["These tools can cast spells just like a &eCAD&f can!"], + dependencies: ["508BB7E1F4E05BD9"], + id: "03F5451FB3E37710", + tasks: [ + { + id: "32F228801C9F6BB2", + type: "item", + item: { + id: "psi:psimetal_sword", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "283D895E9F215B6D", + type: "item", + item: { + id: "psi:psimetal_pickaxe", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "45550AB85C31E698", + type: "item", + item: { + id: "psi:psimetal_axe", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "01B317BF3D6F3FEF", + type: "item", + item: { + id: "psi:psimetal_shovel", + Count: 1b, + tag: { + Damage: 0 + } + } + } + ], + rewards: [{ + id: "2615F462FCB25EBE", + type: "item", + item: "psi:cad_colorizer_empty" + }] + }, + { + x: 1.0d, + y: -7.0d, + description: ["A tool for measuring vectors"], + dependencies: ["672A9398B8CB6E25"], + id: "090636BABEE2587A", + tasks: [{ + id: "774CD3F11F95B8C6", + type: "item", + item: { + id: "psi:vector_ruler", + Count: 1b, + tag: {} + } + }], + rewards: [{ + id: "5AA2B8E73209E416", + type: "item", + item: "psi:psidust" + }] + }, + { + title: "Psimetal Exosuit", + x: -7.0d, + y: -7.0d, + description: ["This armor can cast spells just like a &eCAD&f can!"], + dependencies: ["508BB7E1F4E05BD9"], + id: "04A1564F7BBB5781", + tasks: [ + { + id: "7AFBAFFF4DF54BF8", + type: "item", + item: { + id: "psi:psimetal_exosuit_helmet", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "48B9BB583D4C8B6E", + type: "item", + item: { + id: "psi:psimetal_exosuit_chestplate", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "7A0558C43DEB59B8", + type: "item", + item: { + id: "psi:psimetal_exosuit_leggings", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "765C996BFD3196A1", + type: "item", + item: { + id: "psi:psimetal_exosuit_boots", + Count: 1b, + tag: { + Damage: 0 + } + } + } + ], + rewards: [{ + id: "67826687578C28A1", + type: "item", + item: "psi:cad_colorizer_psi" + }] + }, + { + x: -4.0d, + y: -10.0d, + description: [ + 'Crafting this with a "loaded" &ebullet&f will save whatever &dspell&f is on that &ebullet&f to the &espell drive&f.', + "", + "While sneaking, right-click the &espell drive&f onto a &espell programmer&f to load up the saved &dspell&f for editing." + ], + dependencies: ["7897AD80B39B3DA9"], + id: "078BE0A8317FB3E5", + tasks: [{ + id: "2295AC27CFC24222", + type: "item", + item: { + id: "psi:spell_drive", + Count: 1b, + tag: {} + } + }], + rewards: [{ + id: "0C9649A8FC3FBE5E", + type: "item", + item: { + id: "psi:spell_bullet", + Count: 1b, + tag: {} + } + }] + }, + { + title: "Even Better CAD Parts", + x: -6.0d, + y: -8.0d, + description: [ + "These are the highest tier components for &eCAD Assemblies&f.", + "", + "You will need to choose which &esocket&f and &ecore&f best suits your needs." + ], + dependencies: ["508BB7E1F4E05BD9"], + id: "4B6AA8594BD08A05", + tasks: [ + { + id: "5E54CAF48AC43B3B", + type: "item", + item: "psi:cad_core_hyperclocked" + }, + { + id: "60EE2E57D2E2D2A8", + type: "item", + item: "psi:cad_socket_transmissive" + }, + { + id: "6F00AC0CEB4DDF4A", + type: "item", + item: "psi:cad_core_radiative" + }, + { + id: "3150325572388CC4", + type: "item", + item: "psi:cad_socket_huge" + }, + { + id: "481287167B69F2FB", + type: "item", + item: "psi:cad_battery_ultradense" + } + ], + rewards: [ + { + id: "3A539FE9104DF3C7", + type: "item", + item: "psi:cad_assembly_psimetal" + }, + { + id: "762CBDB981745FC6", + type: "item", + item: "psi:cad_colorizer_rainbow" + } + ] + }, + { + title: "Exosuit Sensors", + x: -8.0d, + y: -6.0d, + dependencies: ["04A1564F7BBB5781"], + id: "1B4F621A49F86237", + tasks: [ + { + id: "6CFECA4B05D6C468", + type: "item", + item: "psi:exosuit_sensor_light" + }, + { + id: "6498064514B7E474", + type: "item", + item: "psi:exosuit_sensor_heat" + }, + { + id: "57D9075704B4C348", + type: "item", + item: "psi:exosuit_sensor_stress" + }, + { + id: "75C242F2A21D466F", + type: "item", + item: "psi:exosuit_sensor_water" + }, + { + id: "25CF04BBE1C0AD51", + type: "item", + item: "psi:exosuit_sensor_trigger" + } + ], + rewards: [{ + id: "1A01065ECCFC813C", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: -8.0d, + y: -8.0d, + dependencies: ["04A1564F7BBB5781"], + id: "33B94A3D3DC4348F", + tasks: [{ + id: "179E9DEB9315A5EB", + type: "item", + item: "psi:exosuit_controller" + }], + rewards: [{ + id: "7F5A06183FB38425", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: -4.0d, + y: -2.0d, + description: ["This assembly has higher potency than it's ivory counter part."], + dependencies: ["707D86F3055FD628"], + id: "51544B18E7CCC1A4", + tasks: [{ + id: "67BFB015F706806D", + type: "item", + item: "psi:cad_assembly_ebony_psimetal" + }], + rewards: [{ + id: "0842C52DB386315E", + type: "xp_levels", + xp_levels: 1 + }] + } + ] +} diff --git a/config/ftbquests/quests/chapters/refined_storage.snbt b/config/ftbquests/quests/chapters/refined_storage.snbt index dd72fd88..86930c31 100644 --- a/config/ftbquests/quests/chapters/refined_storage.snbt +++ b/config/ftbquests/quests/chapters/refined_storage.snbt @@ -1,7 +1,7 @@ { id: "15AAF17B6665223D", group: "1AC60211DE7427FC", - order_index: 0, + order_index: 1, filename: "refined_storage", title: "Refined Storage", icon: "refinedstorage:creative_controller", diff --git a/config/ftbquests/quests/chapters/resourceful_ways.snbt b/config/ftbquests/quests/chapters/resourceful_ways.snbt index 7327f726..cfb75642 100644 --- a/config/ftbquests/quests/chapters/resourceful_ways.snbt +++ b/config/ftbquests/quests/chapters/resourceful_ways.snbt @@ -1,16 +1,16 @@ { id: "5C764279146E5E66", group: "6614EE2378B8AFB9", - order_index: 1, + order_index: 0, filename: "resourceful_ways", title: "Mystical Agriculture", - default_quest_shape: "hexagon", + default_quest_shape: "", quests: [ { title: "Mystical Path", - x: -3.5d, - y: -1.5d, - shape: "circle", + x: -5.5d, + y: 0.0d, + shape: "rsquare", id: "6D750A38944E9B68", tasks: [ { @@ -39,9 +39,10 @@ }, { title: "Seed for Though", - x: -3.5d, - y: -2.5d, + x: -2.5d, + y: -3.0d, shape: "diamond", + dependencies: ["1CC4F8570A7A99EB"], id: "0A731CA172FB9188", tasks: [{ id: "53A2218A89F26A4E", @@ -66,12 +67,12 @@ x: -5.0d, y: -1.5d, shape: "circle", - dependencies: ["6D750A38944E9B68"], + dependencies: ["1CC4F8570A7A99EB"], id: "7DFF18CFEB0B8DBE", tasks: [{ id: "3BE2200A7B852974", type: "item", - item: "mysticalagriculture:inferium_essence" + item: "mysticalagriculture:inferium_farmland" }] }, { @@ -160,8 +161,8 @@ }, { title: "Circle of Souls", - x: -3.5d, - y: -0.5d, + x: -4.5d, + y: 0.0d, shape: "rsquare", description: [ "Some seeds require you to kill the mobs needed to get the seeds.", @@ -204,7 +205,7 @@ tasks: [{ id: "5093432E189F5F6F", type: "item", - item: "mysticalagriculture:prudentium_essence" + item: "mysticalagriculture:prudentium_farmland" }] }, { @@ -341,7 +342,7 @@ }, { x: -7.0d, - y: -0.5d, + y: 0.0d, shape: "rsquare", dependencies: ["576ABF43FCF886B7"], id: "3384308C78D86059", @@ -353,7 +354,7 @@ }, { x: -8.0d, - y: 1.5d, + y: 2.0d, shape: "rsquare", dependencies: ["576ABF43FCF886B7"], id: "2AECDD9E2DEA708C", @@ -366,7 +367,7 @@ { title: "Meow Meow I'm a Cow... NO!", x: -8.0d, - y: 0.5d, + y: 1.0d, shape: "rsquare", dependencies: ["576ABF43FCF886B7"], id: "7580037DB8ADEB3C", @@ -378,7 +379,7 @@ }, { x: -8.0d, - y: -0.5d, + y: 0.0d, shape: "rsquare", dependencies: ["576ABF43FCF886B7"], id: "75D09040185B0E40", @@ -391,7 +392,7 @@ { title: "Beep Beep I'm a Sheep", x: -7.0d, - y: 0.5d, + y: 1.0d, shape: "rsquare", dependencies: ["576ABF43FCF886B7"], id: "2C73E3C5113BF2AC", @@ -403,7 +404,7 @@ }, { x: -7.0d, - y: 1.5d, + y: 2.0d, shape: "rsquare", dependencies: ["576ABF43FCF886B7"], id: "29AE69722AB4C75C", @@ -415,7 +416,7 @@ }, { x: -8.0d, - y: 2.5d, + y: 3.0d, shape: "rsquare", dependencies: ["576ABF43FCF886B7"], id: "092A23FDA5D50812", @@ -427,7 +428,7 @@ }, { x: -7.0d, - y: 2.5d, + y: 3.0d, shape: "rsquare", dependencies: ["576ABF43FCF886B7"], id: "04B6E31120663EB2", @@ -446,12 +447,12 @@ tasks: [{ id: "65F226B04C4E0440", type: "item", - item: "mysticalagriculture:tertium_essence" + item: "mysticalagriculture:tertium_farmland" }] }, { x: -9.5d, - y: 0.5d, + y: 1.0d, shape: "rsquare", dependencies: ["76071C22A73A2026"], id: "38A77DBAD24C4B53", @@ -463,7 +464,7 @@ }, { x: -10.5d, - y: 1.5d, + y: 2.0d, shape: "rsquare", dependencies: ["76071C22A73A2026"], id: "6A18B971C3DB83AE", @@ -475,7 +476,7 @@ }, { x: -10.5d, - y: 0.5d, + y: 1.0d, shape: "rsquare", dependencies: ["76071C22A73A2026"], id: "26A7746051A4A079", @@ -487,7 +488,7 @@ }, { x: -10.5d, - y: -0.5d, + y: 0.0d, shape: "rsquare", dependencies: ["76071C22A73A2026"], id: "155A843A562DB7C4", @@ -499,7 +500,7 @@ }, { x: -9.5d, - y: -0.5d, + y: 0.0d, shape: "rsquare", dependencies: ["76071C22A73A2026"], id: "7ADE214373DE135F", @@ -690,7 +691,7 @@ }] }, { - x: -13.0d, + x: -12.5d, y: -1.5d, shape: "circle", dependencies: ["76071C22A73A2026"], @@ -698,12 +699,12 @@ tasks: [{ id: "19D0A5FD97D7E3E8", type: "item", - item: "mysticalagriculture:imperium_essence" + item: "mysticalagriculture:imperium_farmland" }] }, { - x: -13.5d, - y: -0.5d, + x: -13.0d, + y: 0.0d, shape: "rsquare", dependencies: ["5BC4250E4C9F803C"], id: "260F9C98DC2E485B", @@ -714,8 +715,8 @@ }] }, { - x: -12.5d, - y: -0.5d, + x: -12.0d, + y: 0.0d, shape: "rsquare", dependencies: ["5BC4250E4C9F803C"], id: "4F0DD86CF6E5F1B5", @@ -726,8 +727,8 @@ }] }, { - x: -13.5d, - y: 0.5d, + x: -13.0d, + y: 1.0d, shape: "rsquare", dependencies: ["5BC4250E4C9F803C"], id: "27E8ED4B5F8127F9", @@ -738,8 +739,8 @@ }] }, { - x: -12.5d, - y: 0.5d, + x: -12.0d, + y: 1.0d, shape: "octagon", dependencies: ["5BC4250E4C9F803C"], id: "07564DBB023EE2A6", @@ -750,8 +751,8 @@ }] }, { - x: -12.5d, - y: -3.5d, + x: -12.0d, + y: -2.5d, shape: "diamond", dependencies: ["5BC4250E4C9F803C"], id: "0AF5FB1B5AA5AA11", @@ -762,8 +763,8 @@ }] }, { - x: -13.5d, - y: -3.5d, + x: -13.0d, + y: -2.5d, shape: "diamond", dependencies: ["5BC4250E4C9F803C"], id: "25D84D82DBADA0DB", @@ -774,7 +775,7 @@ }] }, { - x: -13.0d, + x: -12.5d, y: -3.0d, shape: "diamond", dependencies: ["5BC4250E4C9F803C"], @@ -786,8 +787,8 @@ }] }, { - x: -12.5d, - y: -4.5d, + x: -12.0d, + y: -3.5d, shape: "diamond", dependencies: ["5BC4250E4C9F803C"], id: "222739E77C745519", @@ -798,8 +799,8 @@ }] }, { - x: -13.5d, - y: -4.5d, + x: -13.0d, + y: -3.5d, shape: "diamond", dependencies: ["5BC4250E4C9F803C"], id: "248AEF5537E48B1A", @@ -810,7 +811,7 @@ }] }, { - x: -13.0d, + x: -12.5d, y: -4.0d, shape: "diamond", dependencies: ["5BC4250E4C9F803C"], @@ -822,7 +823,7 @@ }] }, { - x: -16.0d, + x: -15.0d, y: -1.5d, shape: "circle", dependencies: ["5BC4250E4C9F803C"], @@ -830,12 +831,12 @@ tasks: [{ id: "7F969AA823C4157B", type: "item", - item: "mysticalagriculture:supremium_essence" + item: "mysticalagriculture:supremium_farmland" }] }, { - x: -16.0d, - y: -0.5d, + x: -15.0d, + y: 0.0d, shape: "rsquare", dependencies: ["48BF71269DEA1AB1"], id: "7CFA92CC48D1E7E3", @@ -846,7 +847,7 @@ }] }, { - x: -16.0d, + x: -15.0d, y: -3.0d, shape: "diamond", dependencies: ["48BF71269DEA1AB1"], @@ -858,8 +859,8 @@ }] }, { - x: -15.5d, - y: -3.5d, + x: -14.5d, + y: -2.5d, shape: "diamond", dependencies: ["48BF71269DEA1AB1"], id: "6A2AD67569F91F1F", @@ -870,8 +871,8 @@ }] }, { - x: -16.5d, - y: -3.5d, + x: -15.5d, + y: -2.5d, shape: "diamond", dependencies: ["48BF71269DEA1AB1"], id: "4E09BBC0BAED3440", @@ -882,8 +883,8 @@ }] }, { - x: -16.5d, - y: -4.5d, + x: -15.5d, + y: -3.5d, shape: "diamond", dependencies: ["48BF71269DEA1AB1"], id: "2B0553F307A024F7", @@ -894,7 +895,7 @@ }] }, { - x: -16.0d, + x: -15.0d, y: -4.0d, shape: "diamond", dependencies: ["48BF71269DEA1AB1"], @@ -906,8 +907,8 @@ }] }, { - x: -15.5d, - y: -4.5d, + x: -14.5d, + y: -3.5d, shape: "diamond", dependencies: ["48BF71269DEA1AB1"], id: "4E7990AEBCCC3C95", @@ -918,7 +919,7 @@ }] }, { - x: -18.5d, + x: -17.5d, y: -1.5d, shape: "circle", dependencies: ["48BF71269DEA1AB1"], @@ -926,11 +927,11 @@ tasks: [{ id: "5A17FCC895F52C8B", type: "item", - item: "mysticalagradditions:insanium_essence" + item: "mysticalagradditions:insanium_farmland" }] }, { - x: -18.0d, + x: -17.0d, y: -2.5d, shape: "diamond", dependencies: ["2FA6B8A1C8713DE0"], @@ -942,7 +943,7 @@ }] }, { - x: -19.0d, + x: -18.0d, y: -2.5d, shape: "diamond", dependencies: ["2FA6B8A1C8713DE0"], @@ -954,7 +955,7 @@ }] }, { - x: -18.0d, + x: -17.0d, y: -3.5d, shape: "diamond", dependencies: ["2FA6B8A1C8713DE0"], @@ -966,7 +967,7 @@ }] }, { - x: -19.0d, + x: -18.0d, y: -3.5d, shape: "diamond", dependencies: ["2FA6B8A1C8713DE0"], @@ -978,7 +979,7 @@ }] }, { - x: -18.5d, + x: -17.5d, y: -4.0d, shape: "diamond", dependencies: ["2FA6B8A1C8713DE0"], @@ -988,6 +989,634 @@ type: "item", item: "mysticalagriculture:unobtainium_seeds" }] + }, + { + x: -5.5d, + y: 1.0d, + shape: "rsquare", + id: "6A4C49AE72E98727", + tasks: [ + { + id: "7DDEA59FB8F44932", + type: "item", + item: "mysticalagriculture:tinkering_table" + }, + { + id: "6DFAB0CADDD8E8D4", + type: "item", + item: "mysticalagriculture:unattuned_augment" + } + ] + }, + { + x: -5.0d, + y: 2.0d, + shape: "octagon", + dependencies: ["6A4C49AE72E98727"], + id: "50E2B7E8DA12976B", + tasks: [{ + id: "695E9FEFC623D1E4", + type: "item", + item: "mysticalagriculture:flight_augment" + }] + }, + { + x: -4.5d, + y: 1.0d, + shape: "rsquare", + hide_dependency_lines: true, + id: "38405DCFF0A178B5", + tasks: [{ + id: "0A87851262DA0D13", + type: "item", + item: "xreliquary:fertile_lily_pad" + }] + }, + { + x: -2.5d, + y: -1.5d, + id: "1CC4F8570A7A99EB", + tasks: [{ + id: "667004CD0469493D", + type: "item", + item: "mysticalagriculture:inferium_essence" + }] + }, + { + x: -2.5d, + y: 0.0d, + description: ["Is required for making higher tiered essence."], + dependencies: ["1CC4F8570A7A99EB"], + id: "05618FE80F2E0372", + tasks: [{ + id: "255CA5B0B1870EE2", + type: "item", + item: { + id: "mysticalagriculture:infusion_crystal", + Count: 1b, + tag: { + Damage: 0 + } + } + }] + }, + { + x: -2.5d, + y: 1.5d, + description: ["Crafting essence with infinite uses!"], + dependencies: ["05618FE80F2E0372"], + id: "24F4E46FFFB0C13F", + tasks: [{ + id: "53B5D5242E99AD3D", + type: "item", + item: "mysticalagriculture:master_infusion_crystal" + }] + }, + { + x: 0.0d, + y: -1.5d, + description: [ + "Stacking these beneath farmland will increase the speed of crops.", + "", + "Higher tiers have a larger range, but same effect." + ], + dependencies: ["1CC4F8570A7A99EB"], + id: "4821419D44F8083F", + tasks: [{ + id: "047D297988E59B6B", + type: "item", + item: "mysticalagriculture:inferium_growth_accelerator" + }] + }, + { + x: 1.0d, + y: -1.5d, + dependencies: ["4821419D44F8083F"], + id: "7655E1C6C5E5469F", + tasks: [{ + id: "357DFF6A72C09E2E", + type: "item", + item: "mysticalagriculture:prudentium_growth_accelerator" + }] + }, + { + x: 2.0d, + y: -1.5d, + dependencies: ["7655E1C6C5E5469F"], + id: "077B2D62FA7650FB", + tasks: [{ + id: "21BCED1462115F52", + type: "item", + item: "mysticalagriculture:tertium_growth_accelerator" + }] + }, + { + x: 3.0d, + y: -1.5d, + dependencies: ["077B2D62FA7650FB"], + id: "06EAA74E0A10CBB6", + tasks: [{ + id: "77C281598A060103", + type: "item", + item: "mysticalagriculture:imperium_growth_accelerator" + }] + }, + { + x: 4.0d, + y: -1.5d, + dependencies: ["06EAA74E0A10CBB6"], + id: "3E555B364FD88B43", + tasks: [{ + id: "7572E0FF1D153196", + type: "item", + item: "mysticalagriculture:supremium_growth_accelerator" + }] + }, + { + x: 0.0d, + y: -2.5d, + description: [ + "Using this near or on crops will help the crops grow faster!", + "", + "Higher tiers have a larger area of effect." + ], + dependencies: ["1CC4F8570A7A99EB"], + id: "62D04566426DD979", + tasks: [{ + id: "00DC18C2F39EC0AC", + type: "item", + item: { + id: "mysticalagriculture:inferium_watering_can", + Count: 1b, + tag: { + Water: 0b, + Active: 0b + } + } + }] + }, + { + x: 1.0d, + y: -2.5d, + dependencies: ["62D04566426DD979"], + id: "1AC3485AB2EA13E5", + tasks: [{ + id: "0CBE6C91D28E45B1", + type: "item", + item: { + id: "mysticalagriculture:prudentium_watering_can", + Count: 1b, + tag: { + Water: 0b, + Active: 0b + } + } + }] + }, + { + x: 2.0d, + y: -2.5d, + dependencies: ["1AC3485AB2EA13E5"], + id: "69D8F6483DACD930", + tasks: [{ + id: "0CA99B2609E73E80", + type: "item", + item: { + id: "mysticalagriculture:tertium_watering_can", + Count: 1b, + tag: { + Water: 0b, + Active: 0b + } + } + }] + }, + { + x: 3.0d, + y: -2.5d, + dependencies: ["69D8F6483DACD930"], + id: "20CA94E3263FCA5E", + tasks: [{ + id: "4DC4C2C45A241BBB", + type: "item", + item: { + id: "mysticalagriculture:imperium_watering_can", + Count: 1b, + tag: { + Water: 0b, + Active: 0b + } + } + }] + }, + { + x: 4.0d, + y: -2.5d, + dependencies: ["20CA94E3263FCA5E"], + id: "475B63AF0E87E318", + tasks: [{ + id: "4A4E7C928F5407C0", + type: "item", + item: { + id: "mysticalagriculture:supremium_watering_can", + Count: 1b, + tag: { + Water: 0b, + Active: 0b + } + } + }] + }, + { + x: 0.0d, + y: -0.5d, + description: [ + "This can turn any extra seeds you have into their respective essence, at the cost of fuel.", + "", + "Higher tiers are faster." + ], + dependencies: ["1CC4F8570A7A99EB"], + id: "722B66145690D56B", + tasks: [{ + id: "54834BF18B95D535", + type: "item", + item: "mysticalagriculture:inferium_reprocessor" + }] + }, + { + x: 1.0d, + y: -0.5d, + dependencies: ["722B66145690D56B"], + id: "19092706A5192F5E", + tasks: [{ + id: "7C20C86A044B8B9B", + type: "item", + item: "mysticalagriculture:prudentium_reprocessor" + }] + }, + { + x: 2.0d, + y: -0.5d, + dependencies: ["19092706A5192F5E"], + id: "7012244236825F79", + tasks: [{ + id: "3CB4C9C081DFADF3", + type: "item", + item: "mysticalagriculture:tertium_reprocessor" + }] + }, + { + x: 3.0d, + y: -0.5d, + dependencies: ["7012244236825F79"], + id: "77EB0A0A5E5A2F32", + tasks: [{ + id: "7C671AA8A5D65A54", + type: "item", + item: "mysticalagriculture:imperium_reprocessor" + }] + }, + { + x: 4.0d, + y: -0.5d, + dependencies: ["77EB0A0A5E5A2F32"], + id: "1BC3146A1CDD1C79", + tasks: [{ + id: "2CF4F257B61EBB53", + type: "item", + item: "mysticalagriculture:supremium_reprocessor" + }] + }, + { + x: 0.0d, + y: 0.5d, + description: [ + "Better than a golden apple, and a tasty snack!", + "", + "Higher tiers give more hunger and saturation, as well as more buffs." + ], + dependencies: ["1CC4F8570A7A99EB"], + id: "1F88C697817A7680", + tasks: [{ + id: "51547F271EAC0A87", + type: "item", + item: "mysticalagradditions:inferium_apple" + }] + }, + { + x: 1.0d, + y: 0.5d, + dependencies: ["1F88C697817A7680"], + id: "3BB3AA6C29285837", + tasks: [{ + id: "50EED9493818859D", + type: "item", + item: "mysticalagradditions:prudentium_apple" + }] + }, + { + x: 2.0d, + y: 0.5d, + dependencies: ["3BB3AA6C29285837"], + id: "5F6ACDE014A61F46", + tasks: [{ + id: "7991C1D054311F8C", + type: "item", + item: "mysticalagradditions:tertium_apple" + }] + }, + { + x: 3.0d, + y: 0.5d, + dependencies: ["5F6ACDE014A61F46"], + id: "212EF8601746C500", + tasks: [{ + id: "6B6B34B77A5563FC", + type: "item", + item: "mysticalagradditions:imperium_apple" + }] + }, + { + x: 4.0d, + y: 0.5d, + dependencies: ["212EF8601746C500"], + id: "1C4ABF4518638A82", + tasks: [{ + id: "100405DB15F68EE1", + type: "item", + item: "mysticalagradditions:supremium_apple" + }] + }, + { + x: 5.0d, + y: 0.5d, + dependencies: ["1C4ABF4518638A82"], + id: "1F7591DB6D8EC1E7", + tasks: [{ + id: "0458D76584A3A6DB", + type: "item", + item: "mysticalagradditions:insanium_apple" + }] + }, + { + x: 0.0d, + y: -3.5d, + dependencies: ["1CC4F8570A7A99EB"], + id: "2A7E3F2CD335EAD0", + tasks: [ + { + id: "120DDD0418F82EC0", + type: "item", + item: { + id: "mysticalagriculture:inferium_helmet", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "45249857D08CB7F7", + type: "item", + item: { + id: "mysticalagriculture:inferium_chestplate", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "4DE8B3ADDD0DC539", + type: "item", + item: { + id: "mysticalagriculture:inferium_leggings", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "4DD5F73A2CC0848C", + type: "item", + item: { + id: "mysticalagriculture:inferium_boots", + Count: 1b, + tag: { + Damage: 0 + } + } + } + ] + }, + { + x: 1.0d, + y: -3.5d, + dependencies: ["2A7E3F2CD335EAD0"], + id: "4F137DB561F45306", + tasks: [ + { + id: "216AD49CD1746BD3", + type: "item", + item: { + id: "mysticalagriculture:prudentium_helmet", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "0231342A2C080DE3", + type: "item", + item: { + id: "mysticalagriculture:prudentium_chestplate", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "1721D6A39270238F", + type: "item", + item: { + id: "mysticalagriculture:prudentium_leggings", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "5C37A638689F024A", + type: "item", + item: { + id: "mysticalagriculture:prudentium_boots", + Count: 1b, + tag: { + Damage: 0 + } + } + } + ] + }, + { + x: 2.0d, + y: -3.5d, + dependencies: ["4F137DB561F45306"], + id: "15D764CAF047EA7A", + tasks: [ + { + id: "3D221E475DF6F3C3", + type: "item", + item: { + id: "mysticalagriculture:tertium_helmet", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "3584BC6827EF817C", + type: "item", + item: { + id: "mysticalagriculture:tertium_chestplate", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "3BCDF4DA20F35C79", + type: "item", + item: { + id: "mysticalagriculture:tertium_leggings", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "492A22DE74E59FBF", + type: "item", + item: { + id: "mysticalagriculture:tertium_boots", + Count: 1b, + tag: { + Damage: 0 + } + } + } + ] + }, + { + x: 3.0d, + y: -3.5d, + dependencies: ["15D764CAF047EA7A"], + id: "7D43016926E77150", + tasks: [ + { + id: "5C510B48A85397B6", + type: "item", + item: { + id: "mysticalagriculture:imperium_helmet", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "4C60EA95AA2084D1", + type: "item", + item: { + id: "mysticalagriculture:imperium_chestplate", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "2DB5403F9514E6DD", + type: "item", + item: { + id: "mysticalagriculture:imperium_leggings", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "4B8C4F4457E2367F", + type: "item", + item: { + id: "mysticalagriculture:imperium_boots", + Count: 1b, + tag: { + Damage: 0 + } + } + } + ] + }, + { + x: 4.0d, + y: -3.5d, + dependencies: ["7D43016926E77150"], + id: "5B1E0E3E876339E7", + tasks: [ + { + id: "596B05D2C017A3A4", + type: "item", + item: { + id: "mysticalagriculture:supremium_helmet", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "2D35459D09DE4348", + type: "item", + item: { + id: "mysticalagriculture:supremium_chestplate", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "2FF5CD7746B6C122", + type: "item", + item: { + id: "mysticalagriculture:supremium_leggings", + Count: 1b, + tag: { + Damage: 0 + } + } + }, + { + id: "5B823E7DB3B4894A", + type: "item", + item: { + id: "mysticalagriculture:supremium_boots", + Count: 1b, + tag: { + Damage: 0 + } + } + } + ] } ] } diff --git a/config/ftbquests/quests/chapters/storage.snbt b/config/ftbquests/quests/chapters/storage.snbt new file mode 100644 index 00000000..c0f15e7b --- /dev/null +++ b/config/ftbquests/quests/chapters/storage.snbt @@ -0,0 +1,918 @@ +{ + id: "1DB294A8F8686321", + group: "1AC60211DE7427FC", + order_index: 0, + filename: "storage", + title: "Storage", + icon: "minecraft:chest", + default_quest_shape: "", + quests: [ + { + title: "Vanilla", + x: 7.0d, + y: 2.0d, + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "1D20D9D437F3D177", + tasks: [ + { + id: "7814C3E5AE42164B", + type: "item", + item: "minecraft:ender_chest" + }, + { + id: "4B2A76680633CEA5", + type: "item", + item: "minecraft:shulker_box" + } + ], + rewards: [{ + id: "0D9EC494F734E180", + type: "xp_levels", + xp_levels: 1 + }] + }, + { + x: 0.0d, + y: 1.0d, + dependencies: ["5E4BC0F59C90433A"], + id: "7A93D054881AA536", + tasks: [{ + id: "6BDC8228A2C9A0E9", + type: "item", + item: "ironchest:dirt_chest" + }] + }, + { + x: -3.0d, + y: 0.0d, + dependencies: ["5E4BC0F59C90433A"], + id: "58514FDE153FD971", + tasks: [{ + id: "77A9435B6739348E", + type: "item", + item: "ironchest:iron_chest" + }] + }, + { + x: -5.0d, + y: 0.0d, + dependencies: ["58514FDE153FD971"], + id: "3E33730DC2115D26", + tasks: [{ + id: "0427B441A750316F", + type: "item", + item: "ironchest:gold_chest" + }] + }, + { + x: -7.0d, + y: 0.0d, + dependencies: ["3E33730DC2115D26"], + id: "4C0BDD483CCB40C4", + tasks: [{ + id: "00ED02255105A973", + type: "item", + item: "ironchest:diamond_chest" + }] + }, + { + x: -7.0d, + y: -2.0d, + dependencies: ["4C0BDD483CCB40C4"], + id: "73CD1D166E4B89BE", + tasks: [{ + id: "2CCB463CF049D5D9", + type: "item", + item: "ironchest:crystal_chest" + }] + }, + { + x: -9.0d, + y: 0.0d, + dependencies: ["4C0BDD483CCB40C4"], + id: "77F241BEE9902751", + tasks: [{ + id: "34B6EB0B801E4743", + type: "item", + item: "ironchest:obsidian_chest" + }] + }, + { + title: "Vanilla Chest", + x: -1.0d, + y: 0.0d, + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "5E4BC0F59C90433A", + tasks: [{ + id: "3C4AC12A7BCA9299", + type: "item", + item: "minecraft:chest" + }] + }, + { + title: "Vanilla Barrel", + x: 1.0d, + y: 0.0d, + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "20BE978C844561A5", + tasks: [{ + id: "37362B3756CA6293", + type: "item", + item: "minecraft:barrel" + }] + }, + { + x: 3.0d, + y: 0.0d, + dependencies: ["20BE978C844561A5"], + id: "3AF3D4ADE7ED1092", + tasks: [{ + id: "73B3DA4F56A96CAB", + type: "item", + item: "metalbarrels:iron_barrel" + }] + }, + { + x: 5.0d, + y: 0.0d, + dependencies: ["3AF3D4ADE7ED1092"], + id: "6597F70A1EBD8A35", + tasks: [{ + id: "4FEA21F0868B9097", + type: "item", + item: "metalbarrels:gold_barrel" + }] + }, + { + x: 7.0d, + y: 0.0d, + dependencies: ["6597F70A1EBD8A35"], + id: "17A57F9E69DF4FE2", + tasks: [{ + id: "2CF05B75B246F5CB", + type: "item", + item: "metalbarrels:diamond_barrel" + }] + }, + { + x: 7.0d, + y: -2.0d, + dependencies: ["17A57F9E69DF4FE2"], + id: "2D22BF606D1DD1DE", + tasks: [{ + id: "0DA941A34D0EE719", + type: "item", + item: "metalbarrels:crystal_barrel" + }] + }, + { + x: 9.0d, + y: 0.0d, + dependencies: ["17A57F9E69DF4FE2"], + id: "7E47B6B4D8C5600A", + tasks: [{ + id: "7CE839A07970F5EF", + type: "item", + item: "metalbarrels:obsidian_barrel" + }] + }, + { + x: 9.0d, + y: -2.0d, + dependencies: ["7E47B6B4D8C5600A"], + id: "3D2DDCD026BB9A02", + tasks: [{ + id: "397886F2632838B7", + type: "item", + item: "metalbarrels:netherite_barrel" + }] + }, + { + x: 0.0d, + y: -3.0d, + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "2746575C929B6C50", + tasks: [ + { + id: "79EC3CF180A5A940", + type: "item", + item: "storagedrawers:oak_full_drawers_1" + }, + { + id: "427D18788FDBC691", + type: "item", + item: "storagedrawers:spruce_full_drawers_1" + }, + { + id: "4E6CFEFE642521CD", + type: "item", + item: "storagedrawers:birch_full_drawers_1" + }, + { + id: "5470627684EF8E8E", + type: "item", + item: "storagedrawers:jungle_full_drawers_1" + }, + { + id: "338DC12BEC6E8849", + type: "item", + item: "storagedrawers:acacia_full_drawers_1" + }, + { + id: "686C769AC7EE41BD", + type: "item", + item: "storagedrawers:dark_oak_full_drawers_1" + } + ] + }, + { + x: -9.0d, + y: 2.0d, + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "344895B591A32648", + tasks: [{ + id: "2443F51C05854523", + type: "item", + item: "tanknull:dock" + }] + }, + { + x: -7.0d, + y: 2.0d, + dependencies: ["344895B591A32648"], + id: "094C4AF84F4012ED", + tasks: [{ + id: "3A429E21CB194836", + type: "item", + item: { + id: "tanknull:tank_1", + Count: 1b, + tag: { + fluidinv: {} + } + } + }] + }, + { + x: -5.0d, + y: 2.0d, + dependencies: ["094C4AF84F4012ED"], + id: "74C0C1373EA5AF15", + tasks: [{ + id: "743A078978A6F214", + type: "item", + item: { + id: "tanknull:tank_2", + Count: 1b, + tag: { + fluidinv: {} + } + } + }] + }, + { + x: -3.0d, + y: 2.0d, + dependencies: ["74C0C1373EA5AF15"], + id: "28D437E80250199C", + tasks: [{ + id: "204EED16D8B5E55D", + type: "item", + item: { + id: "tanknull:tank_3", + Count: 1b, + tag: { + fluidinv: {} + } + } + }] + }, + { + x: -1.0d, + y: 2.0d, + dependencies: ["28D437E80250199C"], + id: "3D154C1D631276BB", + tasks: [{ + id: "2E02C5C0458A3EBA", + type: "item", + item: { + id: "tanknull:tank_4", + Count: 1b, + tag: { + fluidinv: {} + } + } + }] + }, + { + x: 1.0d, + y: 2.0d, + dependencies: ["3D154C1D631276BB"], + id: "508BD519CD61D481", + tasks: [{ + id: "1E427EBCE9496791", + type: "item", + item: { + id: "tanknull:tank_5", + Count: 1b, + tag: { + fluidinv: {} + } + } + }] + }, + { + x: 3.0d, + y: 2.0d, + dependencies: ["508BD519CD61D481"], + id: "246E45FE72E8B704", + tasks: [{ + id: "7AD7797142F2B1BA", + type: "item", + item: { + id: "tanknull:tank_6", + Count: 1b, + tag: { + fluidinv: {} + } + } + }] + }, + { + x: 5.0d, + y: 2.0d, + dependencies: ["246E45FE72E8B704"], + id: "243FC2DF5361A36C", + tasks: [{ + id: "5F12EE437E04B8A3", + type: "item", + item: { + id: "tanknull:tank_7", + Count: 1b, + tag: { + fluidinv: {} + } + } + }] + }, + { + x: -9.0d, + y: 4.0d, + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "7F64C889BA52F4B0", + tasks: [{ + id: "0BE13EB20FFDD620", + type: "item", + item: "dankstorage:dock" + }] + }, + { + x: -7.0d, + y: 4.0d, + dependencies: ["7F64C889BA52F4B0"], + id: "5584DE65020A502A", + tasks: [{ + id: "28BB91351E152D09", + type: "item", + item: "dankstorage:dank_1" + }] + }, + { + x: -5.0d, + y: 4.0d, + dependencies: ["5584DE65020A502A"], + id: "4CBD4AFB154E3B52", + tasks: [{ + id: "4011C2D843A9F8BC", + type: "item", + item: "dankstorage:dank_2" + }] + }, + { + x: -3.0d, + y: 4.0d, + dependencies: ["4CBD4AFB154E3B52"], + id: "11685DFD06E3CC65", + tasks: [{ + id: "1F06A524C41FD32F", + type: "item", + item: "dankstorage:dank_3" + }] + }, + { + x: -1.0d, + y: 4.0d, + dependencies: ["11685DFD06E3CC65"], + id: "04A6B159417E2B92", + tasks: [{ + id: "54915EFEE1CAC18B", + type: "item", + item: "dankstorage:dank_4" + }] + }, + { + x: 1.0d, + y: 4.0d, + dependencies: ["04A6B159417E2B92"], + id: "5E456C646619BFFB", + tasks: [{ + id: "29776F2D1774D5A3", + type: "item", + item: "dankstorage:dank_5" + }] + }, + { + x: 3.0d, + y: 4.0d, + dependencies: ["5E456C646619BFFB"], + id: "45254C074338327C", + tasks: [{ + id: "00D5CE0EDBE5C939", + type: "item", + item: "dankstorage:dank_6" + }] + }, + { + x: 5.0d, + y: 4.0d, + dependencies: ["45254C074338327C"], + id: "6389968F8CA5D57A", + tasks: [{ + id: "11CCC52BBFDC9985", + type: "item", + item: "dankstorage:dank_7" + }] + }, + { + x: -1.0d, + y: -2.0d, + dependencies: ["2746575C929B6C50"], + dependency_requirement: "one_started", + id: "2B422B7E0CE3590D", + tasks: [{ + id: "4AC0DA5197DEBC7B", + type: "item", + item: "storagedrawers:compacting_drawers_3" + }] + }, + { + x: 1.0d, + y: -2.0d, + dependencies: ["2746575C929B6C50"], + dependency_requirement: "one_started", + id: "6FBAE89EE782DABA", + tasks: [{ + id: "1872E00684ADC839", + type: "item", + item: "storagedrawers:controller" + }], + rewards: [{ + id: "05B4B2219256BC7F", + type: "item", + item: "storagedrawers:controller_slave", + count: 3 + }] + }, + { + x: -1.0d, + y: -7.0d, + dependencies: ["6EFEF430894B1838"], + id: "07404AE25D403F15", + tasks: [{ + id: "2E689BA0178BFCAA", + type: "item", + item: "storagedrawers:obsidian_storage_upgrade" + }] + }, + { + x: -1.0d, + y: -5.5d, + dependencies: ["2746575C929B6C50"], + dependency_requirement: "one_started", + id: "6EFEF430894B1838", + tasks: [{ + id: "39D461293FA1948E", + type: "item", + item: "storagedrawers:upgrade_template" + }] + }, + { + x: -2.0d, + y: -6.5d, + dependencies: ["6EFEF430894B1838"], + id: "6CD64A7FC1DB9142", + tasks: [{ + id: "799463624E607E0B", + type: "item", + item: "storagedrawers:iron_storage_upgrade" + }] + }, + { + x: -2.5d, + y: -5.5d, + dependencies: ["6EFEF430894B1838"], + id: "03128285B915068C", + tasks: [{ + id: "74BD86E29FF9CA22", + type: "item", + item: "storagedrawers:gold_storage_upgrade" + }] + }, + { + x: -2.0d, + y: -4.5d, + dependencies: ["6EFEF430894B1838"], + id: "0351BAA7E42AB7FF", + tasks: [{ + id: "1A9171F031CF50B1", + type: "item", + item: "storagedrawers:diamond_storage_upgrade" + }] + }, + { + x: -1.0d, + y: -4.0d, + dependencies: ["6EFEF430894B1838"], + id: "7EFF53FAC2017DD3", + tasks: [{ + id: "61C00A10F2C73DAE", + type: "item", + item: "storagedrawers:emerald_storage_upgrade" + }] + }, + { + x: 3.0d, + y: -2.0d, + dependencies: ["6FBAE89EE782DABA"], + id: "2128E9346CD1B036", + tasks: [ + { + id: "7D325B505D4357D8", + type: "item", + item: "storagedrawers:drawer_key" + }, + { + id: "5DB5D3AC4B494F59", + type: "item", + item: "storagedrawers:quantify_key" + } + ] + }, + { + x: 1.0d, + y: -5.5d, + dependencies: ["6EFEF430894B1838"], + id: "464997A7F2D97778", + tasks: [{ + id: "3D490365C62BA7CE", + type: "item", + item: "storagedrawers:one_stack_upgrade" + }] + }, + { + x: 2.5d, + y: -5.5d, + dependencies: ["6EFEF430894B1838"], + optional: true, + id: "41785A3C46F4689D", + tasks: [{ + id: "66FB04C1363BEED2", + type: "item", + item: "storagedrawers:redstone_upgrade" + }] + }, + { + x: 2.0d, + y: -6.5d, + dependencies: ["6EFEF430894B1838"], + optional: true, + id: "31334BC08715B6C1", + tasks: [{ + id: "68306F5C39A979FE", + type: "item", + item: "storagedrawers:max_redstone_upgrade" + }] + }, + { + x: 2.0d, + y: -4.5d, + dependencies: ["6EFEF430894B1838"], + optional: true, + id: "5EC418B8BE9EBDC4", + tasks: [{ + id: "0D8D5D175ABEA414", + type: "item", + item: "storagedrawers:min_redstone_upgrade" + }] + }, + { + x: 1.0d, + y: -7.0d, + dependencies: ["6EFEF430894B1838"], + optional: true, + id: "44D4BCE983B9A605", + tasks: [{ + id: "34B9ED06F236BE1E", + type: "item", + item: "storagedrawers:illumination_upgrade" + }] + }, + { + x: 1.0d, + y: -4.0d, + dependencies: ["6EFEF430894B1838"], + optional: true, + id: "7E779B8E22899945", + tasks: [{ + id: "46E26D4D0001B4EE", + type: "item", + item: "storagedrawers:conversion_upgrade" + }] + }, + { + title: "Ender Storage", + x: -3.0d, + y: -2.0d, + description: ["Color coded ender storage."], + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "3247179F0F0252A2", + tasks: [ + { + id: "4E5DB7E53717FD3C", + type: "item", + item: { + id: "enderchests:ender_chest", + Count: 1b, + tag: { + owner: "all", + code: "000" + } + } + }, + { + id: "322CF20C9C5FB841", + type: "item", + item: { + id: "endertanks:ender_tank", + Count: 1b, + tag: { + owner: "all", + code: "000" + } + } + } + ], + rewards: [ + { + id: "1C3AB68685A3FD62", + type: "item", + item: { + id: "enderchests:ender_bag", + Count: 1b, + tag: { + owner: "all", + code: "000", + open: 0b + } + } + }, + { + id: "43FE4B654819B6C4", + type: "item", + item: { + id: "endertanks:ender_bucket", + Count: 1b, + tag: { + owner: "all", + code: "000" + } + } + } + ] + }, + { + x: 0.0d, + y: -1.0d, + shape: "gear", + hide_dependency_lines: true, + size: 1.5d, + id: "5A94A2664BFDD7B9", + tasks: [{ + id: "3E7F26D68D9A166B", + type: "checkmark", + title: "Storage" + }], + rewards: [{ + id: "0F57A73B1DA8276A", + type: "item", + item: { + id: "minecraft:player_head", + Count: 1b, + tag: { + SkullOwner: { + Properties: { + textures: [{ + Value: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvYWQ3YzI3M2U5N2MyNzdjNDljOTA2NWVkZGYxMDdlODdlYTc3NWM4N2IyYzlmZWEwOTIyNTUwNTE5MDJhYzRhIn19fQ==" + }] + }, + Id: [I; + -647195142, + 2010533167, + -1243897687, + 1144171008 + ] + }, + display: { + Name: '{"text":"BovineShaman"}' + } + } + } + }] + }, + { + title: "Trash Cans", + x: -9.0d, + y: -2.0d, + description: ["A way to destroy unwanted items, liquid, and power."], + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "17DC77F7F8C68AE6", + tasks: [ + { + id: "7F4087A08A6F82AC", + type: "item", + item: "trashcans:item_trash_can" + }, + { + id: "6E37055D317DBBA9", + type: "item", + item: "trashcans:liquid_trash_can" + }, + { + id: "736FE7C0E7C491E7", + type: "item", + item: "trashcans:energy_trash_can" + } + ], + rewards: [{ + id: "69AE6A259BD33878", + type: "item", + item: "trashcans:ultimate_trash_can" + }] + }, + { + title: "Mekanism Storage", + x: 9.0d, + y: 2.0d, + description: ["Go to the &aMekanism&f quest chapter for more on this mod."], + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "6B639160FD560CC1", + tasks: [ + { + id: "6712C300C0BE9378", + type: "item", + item: "mekanism:basic_bin" + }, + { + id: "369186424C860572", + type: "item", + item: "mekanism:basic_fluid_tank" + }, + { + id: "3D6E8FEED6165644", + type: "item", + item: "mekanism:basic_chemical_tank" + }, + { + id: "3F78627E25556DB3", + type: "item", + item: "mekanism:basic_energy_cube" + } + ], + rewards: [{ + id: "3F9A053749F2FAEC", + type: "xp", + xp: 100 + }] + }, + { + title: "QIO Drive Array", + icon: "mekanism:qio_drive_array", + x: 9.0d, + y: 4.0d, + description: ["&aMekanism&f's version of a storage network."], + dependencies: ["6B639160FD560CC1"], + id: "0CD52E81FD607310", + tasks: [{ + id: "13D426BA28BC3811", + type: "checkmark" + }], + rewards: [{ + id: "7E149DDA2A1FD614", + type: "xp", + xp: 100 + }] + }, + { + title: "Vanilla+", + x: 7.0d, + y: 4.0d, + description: ["An &eender chest backpack&f."], + dependencies: ["1D20D9D437F3D177"], + id: "4B7CD2EF8CB96B07", + tasks: [{ + id: "46134FE687CB199E", + type: "item", + item: "usefulbackpacks:backpack_enderchest" + }], + rewards: [{ + id: "6D423E5D79267206", + type: "xp", + xp: 100 + }] + }, + { + title: "Enchantment Storage", + x: 5.0d, + y: -2.0d, + description: ["Can store &eenchantment books&f."], + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "0A532064A15B46EA", + tasks: [ + { + id: "7D72C8664C5B2CC1", + type: "item", + item: "cyclic:ender_controller" + }, + { + id: "7F0917B77E88A124", + type: "item", + item: "cyclic:ender_shelf" + } + ], + rewards: [{ + id: "26C66531B967733A", + type: "item", + item: "cyclic:ender_shelf", + count: 4 + }] + }, + { + title: "Dimensional Storage", + x: -5.0d, + y: -2.0d, + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "3D5852E6D0ADF651", + tasks: [ + { + id: "61F1446D2A460827", + type: "item", + item: "dimstorage:dimensional_chest" + }, + { + id: "17FE9F196E4C6B44", + type: "item", + item: "dimstorage:dimensional_tank" + } + ] + }, + { + title: "Refined Storage", + x: -2.0d, + y: -1.0d, + description: ["Go to the &aRefined Storage&f quest chapter for more on this mod."], + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "3F3AA3641F8D6BE2", + tasks: [{ + id: "140A0A6DC8BB817F", + type: "item", + item: "refinedstorage:controller" + }] + }, + { + title: "Applied Energistics 2", + x: 2.0d, + y: -1.0d, + description: ["Go to the &aApplied Energistics 2&f quest chapter for more on this mod."], + hide_dependency_lines: true, + dependencies: ["5A94A2664BFDD7B9"], + id: "485352F9261A1D75", + tasks: [{ + id: "2590CD4938201A9D", + type: "item", + item: "appliedenergistics2:controller" + }] + } + ] +} diff --git a/config/ftbquests/quests/chapters/tips_and_tricks.snbt b/config/ftbquests/quests/chapters/tips_and_tricks.snbt index 55a0b5ff..ffc1c03d 100644 --- a/config/ftbquests/quests/chapters/tips_and_tricks.snbt +++ b/config/ftbquests/quests/chapters/tips_and_tricks.snbt @@ -23,7 +23,7 @@ }] }, { - x: -6.0d, + x: -1.5d, y: -4.0d, description: ["Use this item to shrink. Helpful for working on automation and also just overall fun."], id: "7EC8814940C4C3D7", @@ -43,22 +43,6 @@ count: 8 }] }, - { - x: -3.0d, - y: -4.0d, - description: ["Not your average storage device. "], - id: "73C662E0597726F3", - tasks: [{ - id: "29DBBEDE434FC907", - type: "item", - item: "dankstorage:dank_1" - }], - rewards: [{ - id: "37528CBEEBA5AEA6", - type: "item", - item: "minecraft:redstone_block" - }] - }, { x: -6.0d, y: -2.5d, @@ -97,11 +81,18 @@ type: "item", item: "fluxnetworks:flux_controller" }], - rewards: [{ - id: "0A947736C7FD97A9", - type: "item", - item: "fluxnetworks:flux_point" - }] + rewards: [ + { + id: "0A947736C7FD97A9", + type: "item", + item: "fluxnetworks:flux_point" + }, + { + id: "4E700E2FE535CCEE", + type: "item", + item: "fluxnetworks:flux_plug" + } + ] }, { x: -3.0d, @@ -118,6 +109,229 @@ type: "item", item: "minecraft:emerald" }] + }, + { + x: -1.5d, + y: -2.5d, + description: [ + "The sleeping bag lets you sleep during the night.", + "", + "The hammock lets you sleep during the day.", + "", + "Neither will reset your spawn-point." + ], + id: "14C8FC3F19190054", + tasks: [ + { + id: "450D00C38F5DB42B", + type: "item", + item: "comforts:hammock_white" + }, + { + id: "76BF5183FA92EF4B", + type: "item", + item: "comforts:sleeping_bag_white" + } + ], + rewards: [{ + id: "34037270BA530831", + type: "item", + item: "comforts:rope_and_nail", + count: 2 + }] + }, + { + x: -3.0d, + y: -4.0d, + description: [ + "It's an entire room in one block!", + "", + "Higher tiers are even bigger on the inside." + ], + id: "594540768120A627", + tasks: [{ + id: "029DB3044D5E30A0", + type: "item", + item: "compactmachines:machine_tiny" + }], + rewards: [{ + id: "17FAC4A27147E065", + type: "item", + item: "compactmachines:personal_shrinking_device" + }] + }, + { + x: -6.0d, + y: -4.0d, + description: [ + "Stores all the guidebooks you'll ever need!", + "", + "Re-craftable with one stick." + ], + id: "5718EEFE4F50BB73", + tasks: [{ + id: "523C1E77663E2287", + type: "item", + item: "akashictome:tome" + }] + }, + { + x: -6.0d, + y: -5.5d, + description: [ + "A quick way to switch between tools.", + "", + "Upgrade with belt pouches in an anvil to increase capacity." + ], + id: "378C95C18798D413", + tasks: [{ + id: "7FD9A02EA29669F6", + type: "item", + item: "toolbelt:belt" + }], + rewards: [{ + id: "40BCE4D56FE98018", + type: "item", + item: "toolbelt:pouch", + count: 2 + }] + }, + { + x: -4.5d, + y: -5.5d, + description: [ + "Allows you to store multiple tools in one!", + "", + "It'll automatically morph in to a mod's tool when looking at a block from that mod. You must add tools via crafting." + ], + id: "73F91BF3D424B269", + tasks: [{ + id: "3B227EED4B839733", + type: "item", + item: "morphtool:tool" + }] + }, + { + title: "Building Gadgets", + x: -3.0d, + y: -5.5d, + description: [ + "Some useful gadgets for building.", + "", + "&cDestruction Gadget voids blocks!" + ], + id: "0F75D7B9F4FF2459", + tasks: [ + { + id: "358F3A8EA9E5E7E3", + type: "item", + item: { + id: "buildinggadgets:gadget_building", + Count: 1b, + tag: { + state: { + serializer: "buildinggadgets:dummy_serializer", + state: { + Name: "minecraft:air" + }, + data: {} + } + } + } + }, + { + id: "008AD88A1CDCEE5E", + type: "item", + item: { + id: "buildinggadgets:gadget_exchanging", + Count: 1b, + tag: { + state: { + serializer: "buildinggadgets:dummy_serializer", + state: { + Name: "minecraft:air" + }, + data: {} + } + } + } + }, + { + id: "4738B22DF26DB2D8", + type: "item", + item: { + id: "buildinggadgets:gadget_copy_paste", + Count: 1b, + tag: { + mode: 0b, + template_id: [I; + 1687424916, + -1474150034, + -1591711937, + 1045183693 + ] + } + } + }, + { + id: "283D88FA9196A4AC", + type: "item", + item: { + id: "buildinggadgets:gadget_destruction", + Count: 1b, + tag: { + overlay: 1b, + fuzzy: 1b + } + } + } + ] + }, + { + title: "Other Gadgets", + x: -1.5d, + y: -5.5d, + description: [ + "Can be helpful for building.", + "", + "The consruction wand has cores that can be added to it in crafting. Sneak left-click the air to switch between cores." + ], + id: "2A2E3D020B1F5126", + tasks: [ + { + id: "05D9E287D437CDDB", + type: "item", + item: { + id: "constructionwand:stone_wand", + Count: 1b, + tag: { + wand_options: {}, + Damage: 0 + } + } + }, + { + id: "0478DE9976B3B6D5", + type: "item", + item: { + id: "exchangers:wooden_exchanger", + Count: 1b, + tag: { + mode: 0, + fuzzyPlacementChance: 100, + directionalPlacement: 0b, + forceDropItems: 0b, + fuzzyPlacement: 0b, + voidItems: 0b, + range: 0, + Damage: 0, + blockstate: { + Name: "minecraft:air" + } + } + } + } + ] } ] } diff --git a/config/iceandfire-common.toml b/config/iceandfire-common.toml index 5b4b4556..33632868 100644 --- a/config/iceandfire-common.toml +++ b/config/iceandfire-common.toml @@ -286,7 +286,7 @@ "Spawn Cyclopes Caves" = true #1 out of this number chance per chunk for generation #Range: 1 ~ 10000 - "Spawn Cyclops Cave Chance" = 55 + "Spawn Cyclops Cave Chance" = 45 #Maximum cyclops health #Range: 1.0 ~ 10000.0 "Cyclops Max Health" = 3500.0 @@ -310,7 +310,7 @@ [Mobs.Trolls] #Troll spawn weight. Lower = lower chance to spawn #Range: 1 ~ 10000 - "Troll Spawn Weight" = 40 + "Troll Spawn Weight" = 50 #Troll attack strength #Range: 1.0 ~ 10000.0 "Troll Attack Strength" = 10.0 @@ -410,14 +410,14 @@ "Dragonsteel Base Durability" = 8000 #Default armor value of dragonsteel chestplate. #Range: > 7 - "Dragonsteel Base Armor" = 12 + "Dragonsteel Base Armor" = 75 #Disable this to remove easter egg with tinkers installed. Weezer = true #True if the summon crystal can load chunks to find dragons. "Chunk Load Summon Crystal" = true #Default attack strength of a dragonsteel sword. #Range: 5.0 ~ 2.147483647E9 - "Dragonsteel Sword Base Attack Strength" = 25.0 + "Dragonsteel Sword Base Attack Strength" = 1350.0 #Percentage of critical strike that will disarm with easter egg tinkers material. #Range: 0.0 ~ 1.0 "Easter Egg Tinkers Tool Disarm chance" = 0.20000000298023224 diff --git a/config/randompatches.toml b/config/randompatches.toml index 92942a71..11e78bbf 100644 --- a/config/randompatches.toml +++ b/config/randompatches.toml @@ -1,63 +1,104 @@ # RandomPatches configuration +# All configuration options not under [client] are server-sided unless otherwise stated. -# Options related to the movement speed limits. -[speedLimits] +# Options related to player speed limits. +# These options are used to fix MC-90062: https://bugs.mojang.com/browse/MC-90062 +[player_speed_limits] # The maximum player elytra speed. # The vanilla default is 300.0. - # Min: 1.0 - # Max: 3.4028234663852886E38 + # Min: 0.0 + # Max: 3.4028235E38 # Default: 1000000.0 - maxPlayerElytraSpeed = 1000000.0 + max_elytra_speed = 1000000.0 # The maximum player vehicle speed. # The vanilla default is 100.0. - # Min: 1.0 + # Min: 0.0 # Max: 1.7976931348623157E308 # Default: 1000000.0 - maxPlayerVehicleSpeed = 1000000.0 - # The maximum player speed. + max_vehicle_speed = 1000000.0 + # The maximum player speed when not riding a vehicle or flying with elytra. # The vanilla default is 100.0. - # Min: 1.0 - # Max: 3.4028234663852886E38 + # Min: 0.0 + # Max: 3.4028235E38 # Default: 1000000.0 - maxPlayerSpeed = 1000000.0 + default_max_speed = 1000000.0 -# Options related to the disconnect timeouts. -[timeouts] - # The interval at which the server sends the KeepAlive packet. +# Options related to connection timeouts. +[connection_timeouts] + # The interval in seconds at which KeepAlive packets are sent to clients. # Min: 1 # Max: 2147483647 # Default: 15 - keepAlivePacketInterval = 15 - # The read timeout in seconds. - # This is the time it takes for a player to be disconnected after not responding to a KeepAlive packet. - # This value is automatically rounded up to a product of keepAlivePacketInterval. + keep_alive_packet_interval_seconds = 15 + # The connection read timeout in seconds. + # This value is used on both the client and the server. # Min: 1 # Max: 2147483647 - # Default: 90 - readTimeout = 90 + # Default: 120 + read_timeout_seconds = 120 # The login timeout in ticks. # Min: 1 # Max: 2147483647 - # Default: 900 - loginTimeout = 12000 + # Default: 2400 + login_timeout_ticks = 12000 + # The KeepAlive timeout in seconds. + # This is how long the server waits for a player to return a KeepAlive packet before disconnecting them. + # This is automatically rounded up to a multiple of the KeepAlive packet interval. + # Min: 1 + # Max: 2147483647 + # Default: 120 + keep_alive_timeout_seconds = 180 + +# Options related to packet size limits. +[packet_size_limits] + # The maximum compressed packet size. + # The vanilla limit is 2097152. + # This option is both client and server-sided. + # Setting this to a higher value than the vanilla limit can fix MC-185901, which may cause players to be disconnected: https://bugs.mojang.com/browse/MC-185901 + # Min: 256 + # Max: 2147483647 + # Default: 16777216 + max_compressed_packet_size = 16777216 + # The maximum NBT compound tag packet size. + # The vanilla limit is 2097152. + # This option is both client and server-sided. + # Setting this to a higher value than the vanilla limit may prevent players from being disconnected. + # Min: 256 + # Max: 2147483647 + # Default: 16777216 + max_nbt_compound_tag_packet_size = 16777216 + # The maximum client custom payload packet size. + # The vanilla limit is 32767. + # Setting this to a higher value than the vanilla limit may prevent the client from being disconnected. + # Min: 256 + # Max: 2147483647 + # Default: 16777216 + max_client_custom_payload_packet_size = 16777216 -# Options related to client-sided features. +# Client-sided options. [client] - # Forces Minecraft to show the title screen after disconnecting rather than the Multiplayer or Realms menu. + # Causes Minecraft to show the main menu screen after disconnecting rather than the Realms or multiplayer screen. # Default: false - forceTitleScreenOnDisconnect = false - # Whether to remove the glowing effect from potions. + return_to_main_menu_after_disconnect = false + # Removes the glowing effect from potions. + # This makes the potion colors more visible. + # Default: true + remove_glowing_effect_from_potions = true + # Removes the glowing effect from enchanted books. # Default: false - removePotionGlint = false + remove_glowing_effect_from_enchanted_books = false # The framerate limit slider step size. - # If this is set to 10.0, vanilla behavior is not changed. - # Min: 4.9E-324 + # The vanilla default is 10.0. + # Min: 1.4E-45 # Max: 260.0 # Default: 1.0 - framerateLimitSliderStepSize = 1.0 + framerate_limit_slider_step_size = 1.0 # Options related to the Minecraft window. [client.window] + # Enables custom Minecraft window titles. + # Default: true + custom_title = true # The path to the 256x256 window icon which is used on Mac OS X. # Leave this, the 16x16 icon and the 32x32 icon blank to use the default icon. # Default: @@ -70,43 +111,67 @@ # Leave this and the 16x16 icon blank to use the default icon. # Default: icon32 = "" + # The simple Minecraft window title. + # The current activity, the number of mods loaded and mod versions are not available. + # Variables: + # - ${mcversion}: The Minecraft version + # - ${username}: The username. + # '$' can be escaped by using an extra '$'. + # Default: "Minecraft ${mcversion}" + simple_title = "Minecraft ${mcversion} - ATM-6" # The Minecraft window title. - # The Minecraft version is provided as an argument. - # Default: Minecraft* %s - title = "Minecraft ${mcversion} - ATM6" - # The Minecraft window title. - # The Minecraft version and current activity are provided as arguments. - # For example: "RandomPatches - %2$s" - # Default: Minecraft* %s - %s - titleWithActivity = "Minecraft ${mcversion} - ATM6 - ${activity}" + # The current activity is not available. + # Variables: + # - ${mcversion}: The Minecraft version + # - ${username}: The username. + # - ${modsloaded}: The number of mods loaded. + # - ${modversion:modid}: The version of the mod with the specified ID. + # '$' can be escaped by using an extra '$'. + # Default: "Minecraft ${mcversion}" + title = "Minecraft ${mcversion} - ATM-6" + # The Minecraft window title that also takes into account the current activity. + # Variables: + # - ${mcversion}: The Minecraft version + # - ${activity}: The current activity. + # - ${username}: The username. + # - ${modsloaded}: The number of mods loaded. + # - ${modversion:modid}: The version of the mod with the specified ID. + # '$' can be escaped by using an extra '$'. + # Default: "Minecraft ${mcversion} - ${activity}" + title_with_activity = "Minecraft ${mcversion} - ATM-6 - ${activity}" -# Options related to boats. -[boats] - # Prevents underwater boat passengers from being ejected after 60 ticks (3 seconds). - # Default: false - preventUnderwaterBoatPassengerEjection = false +# Miscellaneous options. +[misc] # The buoyancy of boats when they are under flowing water. # The vanilla default is -0.0007. - # Min: -1.7976931348623157E308 - # Max: 1.7976931348623157E308 + # Setting this to a positive value allows boats to float up when they move into a higher block of water, fixing MC-91206: https://bugs.mojang.com/browse/MC-91206 # Default: 0.023 - underwaterBoatBuoyancy = 0.023 - -# Options that don't fit into any other categories. -[misc] - # The packet size limit. - # The vanilla limit is 2097152. - # Min: 257 + boat_buoyancy_under_flowing_water = 0.023 + # How long it takes in ticks for a boat passenger to be ejected when underwater. + # Set this to -1 to disable underwater boat passenger ejection. + # Min: -1 # Max: 2147483647 - # Default: 16777216 - packetSizeLimit = 16777216 - # Enables the portal bucket replacement fix for Nether portals. - # Default: false - portalBucketReplacementFixForNetherPortals = false - # Whether skull stacking requires the same textures or just the same player profile. - # Default: true - skullStackingRequiresSameTextures = true - # Enables the /rpreload command. - # Default: true - rpreload = true + # Default: 60 + underwater_boat_passenger_ejection_delay_ticks = 60 + # The name of the command that reloads this configuration from disk. + # Set this to an empty string to disable the command. + # Changes to this option are applied when a server is loaded. + # Default: "rpconfigreload" + config_reload_command = "rpconfigreload" + # Miscellaneous bug fixes. + [misc.bug_fixes] + # Fixes player heads from the same player sometimes not stacking. + # DISABLED: Disables this fix. + # REQUIRE_SAME_PLAYER_AND_TEXTURE_URL: Player heads can stack if they are from the same player and have the same texture URL. + # REQUIRE_SAME_PLAYER: Player heads can stack if they are from the same player. + # This bug is reported as MC-100044: https://bugs.mojang.com/browse/MC-100044 + # Default: "REQUIRE_SAME_PLAYER_AND_TEXTURE_URL" + fix_player_head_stacking = "REQUIRE_SAME_PLAYER_AND_TEXTURE_URL" + # Fixes duplicate entity UUIDs by assigning new UUIDs to the affected entities. + # This bug is reported as MC-95649: https://bugs.mojang.com/browse/MC-95649 + # Default: true + fix_duplicate_entity_uuids = true + # Logs fixed entity UUIDs. + # Default: true + log_fixed_duplicate_entity_uuids = false diff --git a/defaultconfigs/mahoutsukai-server.toml b/defaultconfigs/mahoutsukai-server.toml index dd65b952..2a6cd3f7 100644 --- a/defaultconfigs/mahoutsukai-server.toml +++ b/defaultconfigs/mahoutsukai-server.toml @@ -1,884 +1,1081 @@ - -[boundary] - #This is the mana cost per cycle - #Range: 0 ~ 100000000 - ALARM_BARRIER_MANA_COST = 1 - #This is the range of the boundary - #Range: 0 ~ 100000000 - ENCLOSURE_BARRIER_RADIUS = 5 - #This is how often the boundary drains mana - #Range: 0 ~ 100000000 - TANGIBLE_BARRIER_MANA_CYCLE = 3 - #This is the mana cost per cycle - #Range: 0 ~ 100000000 - DISPLACEMENT_BARRIER_MANA_COST = 1 - #This is the range of the boundary - #Range: 0 ~ 100000000 - TANGIBLE_BARRIER_RADIUS = 10 - #This is the range of the boundary - #Range: 0 ~ 100000000 - DISPLACEMENT_BARRIER_RADIUS = 11 - #This is how often the boundary does it's thing - #Range: 0 ~ 100000000 - ENCLOSURE_BARRIER_CYCLE = 20 - #This is the mana cost per cycle - #Range: 0 ~ 100000000 - DRAIN_LIFE_BARRIER_MANA_COST = 5 - #This is how often the boundary drains mana - #Range: 0 ~ 100000000 - GRAVITY_BARRIER_MANA_CYCLE = 2 - #This is how often the boundary does it's thing - #Range: 0 ~ 100000000 - TANGIBLE_BARRIER_CYCLE = 20 - #This is the mana cost per cycle - #Range: 0 ~ 100000000 - ENCLOSURE_BARRIER_MANA_COST = 20 - #This is how often the boundary drains mana - #Range: 0 ~ 100000000 - DRAIN_LIFE_BARRIER_MANA_CYCLE = 1 - #This is how often the boundary drains mana - #Range: 0 ~ 100000000 - ALARM_BARRIER_MANA_CYCLE = 10 - #This is how often the boundary drains mana - #Range: 0 ~ 100000000 - DISPLACEMENT_BARRIER_MANA_CYCLE = 5 - #This is how often the boundary does it's thing - #Range: 0 ~ 100000000 - DRAIN_LIFE_BARRIER_CYCLE = 20 - #This is the range of the boundary - #Range: 0 ~ 100000000 - ALARM_BARRIER_RADIUS = 10 - #This is the range of the boundary - #Range: 0 ~ 100000000 - DRAIN_LIFE_BARRIER_RADIUS = 10 - #This is how often the boundary does it's thing - #Range: 0 ~ 100000000 - GRAVITY_BARRIER_CYCLE = 1 - #This is how often the boundary does it's thing - #Range: 0 ~ 100000000 - DISPLACEMENT_BARRIER_CYCLE = 4 - #mahoutsukai.config.alarm_barrier_actionbar_messages.comment - ALARM_ACTION_BAR_MESSAGES = true - #This is the range of the boundary - #Range: 0 ~ 100000000 - GRAVITY_BARRIER_RADIUS = 10 - #This is the mana cost per cycle - #Range: 0 ~ 100000000 - TANGIBLE_BARRIER_MANA_COST = 1 - #This is the mana cost per cycle - #Range: 0 ~ 100000000 - GRAVITY_BARRIER_MANA_COST = 1 - #This is how often the boundary does it's thing - #Range: 0 ~ 100000000 - ALARM_BARRIER_CYCLE = 20 - -[displacement] - #This is the cost per teleport - #Range: 0 ~ 100000000 - ORDERED_DISPLACEMENT_MANA_COST = 40 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - PROTECTIVE_DISPLACEMENT_MANA_COST = 50 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - PROJECTILE_DISPLACEMENT_MANA_COST = 50 - #This is how far you can go before being sent back to your body - #Range: 0 ~ 100000000 - MENTAL_DISPLACEMENT_RANGE = 20 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - MENTAL_DISPLACEMENT_MANA_COST = 300 - #This is the max distance between ordered displacement circles. - #Range: 0 ~ 100000000 - ORDERED_DISPLACEMENT_RADIUS = 20 - #This is the cost per name tag - #Range: 0 ~ 100000000 - SCRYING_MANA_COST = 50 - #This is how often a Scrying tile entity will send updates - #Range: 0 ~ 100000000 - SCRYING_BLOCK_CYCLE = 4 - #This is the cost of using the scroll (also the cost per teleport if not a scroll) - #Range: 0 ~ 100000000 - ASCENSION_SCROLL_MANA_COST = 30 - #This is the cost per teleport - #Range: 0 ~ 100000000 - EQUIVALENT_DISPLACEMENT_MANA_COST = 60 - #This is the cooldown between teleports (so you don't get shot back and forth rapidly) - #Range: 0 ~ 100000000 - ORDERED_DISPLACEMENT_RECEIVE_COOLDOWN = 15 - #This is how often the circle checks for things to teleport - #Range: 0 ~ 100000000 - ORDERED_DISPLACEMENT_BLOCK_CYCLE = 4 - #This is how long (in ticks) before a single name tag use runs out - #Range: 0 ~ 100000000 - SCRYING_DURATION = 1200 - #This is how often the circle checks for things to teleport - #Range: 0 ~ 100000000 - ASCENSION_BLOCK_CYCLE = 4 - #This is how often the circle checks for things to teleport - #Range: 0 ~ 100000000 - EQUIVALENT_DISPLACEMENT_BLOCK_CYCLE = 4 - #This is the cooldown between teleports (so you don't get shot back and forth rapidly) - #Range: 0 ~ 100000000 - EQUIVALENT_DISPLACEMENT_RECEIVE_COOLDOWN = 15 - -[projection] - #This is the range for pulling undead mobs with Caliburn - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_PULL_RADIUS = 20 - #Acts as a blacklist if the toggle is on - POWER_CONSOLIDATION_BLACKLIST = ["mahoutsukai:clarent", "mahoutsukai:morgan"] - #This is the cost per cycle for creating the lake. - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_LAKE_MANA_COST = 30 - #Staff of Emrys Zap Damage - #Range: 0.0 ~ 1.0E8 - EMRYS_DAMAGE_ZAP = 1.5 - #This is the min distance between the target and the projectile spawn - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_MIN_DISTANCE = 8 - #Entities must be this close to the wielder of Caliburn's look vector to be affected by the sweep. - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_SWEEP_LOOK_RADIUS = 3 - #Staff of Emrys Mana Per Second - #Range: 0 ~ 100000000 - EMRYS_MANA_COST_FOCUSED = 200 - #Entities must be this close to the wielder of Caliburn to be affected by the sweep. - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_SWEEP_RADIUS = 6 - #This is the number of initial chains spawned - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_CHAINS_COUNT = 16 - #Distance between swords spawned in the Marble Dimension - #Range: 0 ~ 100000000 - MARBLE_DIMENSION_SPAWN_RATE = 12 - #Nerf factor for damage stored by Clarent - #Range: 0.0 ~ 1.0E8 - CLARENT_STORED_FACTOR = 0.5 - #How much durability Caliburn has. - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_DURABILITY = 1000 - #These will spawn in the Reality Marble as entities.. No guarantees on functionality if you change this. - MARBLE_SWORD_SPAWN_LIST = ["minecraft:iron_sword", "minecraft:diamond_sword", "minecraft:stone_sword"] - #If you have dimension conflicts, change this to something else - #Range: 0 ~ 100000000 - MARBLE_DIMENSION = 0 - #Caliburn Smite and Morgan Ball Mana Cost - #Range: 0 ~ 100000000 - CALIBURN_MORGAN_ABILITY_MANA_COST = 300 - #This is the delay between projectiles of the gauntlet - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_COOLDOWN = 10 - #Clarent is Unbreakable - CLARENT_UNBREAKABLE = true - #This is the cost per AOE projectile when using the gauntlet - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_AOE_MANA_COST = 120 - #Either the amount of damage a projected item takes from its max, or the total durability of the projected item - #Range: 0 ~ 100000000 - PROJECTION_DURABILITY_FACTOR = 1 - #How many hits the wound does each time it activates - #Range: 0 ~ 100000000 - CLARENT_WOUND_DAMAGE_HITS = 3 - #This is the cooldown between chain spawns - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_CHAINS_COOLDOWN = 10 - #List of allowed pets that can be killed with Caliburn to create Morgan - MORGAN_TRANSFORM_ENTITY_WHITELIST = ["minecraft:wolf"] - #How much damage Morgan gains from killing children - #Range: 0.0 ~ 1.0E8 - MORGAN_CHILD_INCREASE = 1.0 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_SCROLL_MANA_COST = 1000 - #How much damage the wound does per hit - #Range: 0.0 ~ 1.0E8 - CLARENT_WOUND_DAMAGE = 0.2 - #Staff of Emrys Damage Per Second - #Range: 0.0 ~ 1.0E8 - EMRYS_DAMAGE_FOCUSED_PER_SECOND = 4.0 - #Toggles whether it water should attempt to create tile entities. Only needed for old worlds with murky water in them. - POWER_CONSOLIDATION_RETRO_FOG_FIX = false - #Ignore whitelist; allow everything - TREASURY_PROJECTION_ALLOW_ALL = false - #This is the max radius of the lake - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_LAKE_RADIUS = 12 - #Clarent Durability - #Range: 0 ~ 100000000 - CLARENT_DURABILITY = 1500 - #Morgan Max Ball Range - #Range: 0 ~ 100000000 - MORGAN_MAX_BALL_RANGE = 15 - #Staff of Emrys Max Range - #Range: 0 ~ 100000000 - EMRYS_MAX_RANGE = 22 - #A blacklist for items which should not spawn extra drops with Strengthening - STRENGTHENING_ITEM_SPAWN_BLACKLIST = [] - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - WEAPON_SHOOTER_MANA_COST = 100 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - PROJECTION_MANA_COST = 200000 - #This is the distance before the lake begins to generate fog. (Note: Higher values may decrease FPS) - #Range: 0.0 ~ 1.0E8 - POWER_CONSOLIDATION_FOG_RADIUS = 8.0 - #This is the delay between AOE projectiles of the gauntlet - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_AOE_COOLDOWN = 4 - #Toggles the blacklist functionality - POWER_CONSOLIDATION_CALIBURN_BLACKLIST_TOGGLE = true - #A list of additional registry names which will be considered for selection in Treasury Projection - TREASURY_PROJECTION_WHITELIST = [] - #Probability of sword spawn - #Range: 0.0 ~ 1.0E8 - MARBLE_DIMENSION_SPAWN_CHANCE = 0.8 - #This is how much durability the proximity projection keys have - #Range: 0 ~ 100000000 - PROXIMITY_PROJECTION_MANA_COST = 30 - #Staff of Emrys Ignites - EMRYS_BOLT_FIRE = false - #Duration for Morgan Rage ability - #Range: 0 ~ 100000000 - MORGAN_RAGE_TIME = 120 - #Cooldown between special cast for Caliburn and Morgan - #Range: 0 ~ 100000000 - MORGAN_CALIBURN_POWER_COOLDOWN = 600 - #This is the range for smiting undead mobs with Caliburn - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_SMITE_RADIUS = 10 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - STRENGTHENING_MANA_COST = 50 - #This is the cost per sword transformation. - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_SWORD_MANA_COST = 5000 - #This is the cost per projectile when using the gauntlet - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_GAUNTLET_MANA_COST = 120 - #This is a nerf factor applied to enchantments to reduce the amount of power that can be consolidated. Lower is less nerf. - #Range: 0.0 ~ 1.0E8 - POWER_CONSOLIDATION_NERF_FACTOR = 0.6 - #This is the wind up time each projectile has before firing. - #Range: 0.0 ~ 1.0E8 - TREASURY_PROJECTION_SPEED = 30.0 - #This is the mana cost per chain spawned - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_CHAINS_MANA_COST = 120 - #How long Clarent's wound lasts - #Range: 0 ~ 100000000 - CLARENT_WOUND_TICKS = 600 - #Morgan Max Spike Range - #Range: 0 ~ 100000000 - MORGAN_SPIKE_RANGE = 10 - #Durability of swords spawned in the Marble Dimension - #Range: 0 ~ 100000000 - MARBLE_DIMENSION_DURABILITY = 3 - #Whether the projected durability is based on max damage (false) or just flat (true) - PROJECTION_DURABILITY_FLAT = true - #This is the max distance between the target and the projectile spawn - #Range: 0 ~ 100000000 - TREASURY_PROJECTION_DISTANCE = 20 - #How much damage Morgan gains from killing adult villagers - #Range: 0.0 ~ 1.0E8 - MORGAN_ADULT_INCREASE = 0.2 - #This is how often the lake does it's thing to make a lake - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_LAKE_CYCLE = 20 - #A list of registry names which will be not considered for selection in Treasury Projection - TREASURY_PROJECTION_BLACKLIST = [] - #Staff of Emrys Mana Per Zap - #Range: 0 ~ 100000000 - EMRYS_MANA_COST_PASSIVE = 80 - #Which swords cannot turn into Clarent - CLARENT_SWORD_BLACKLIST = ["mahoutsukai:caliburn", "mahoutsukai:morgan"] - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - MARBLE_MANA_COST = 4000 - #Ignore whitelist & blacklist; allow everything - TREASURY_PROJECTION_DENY_ALL = false - #Highest damage possible for Caliburn - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_ATTACK_CAP = 5000000 - #mahoutsukai.config.power_consolidation_fear_blacklist.comment - POWER_CONSOLIDATION_FEAR_BLACKLIST = [] - #This is the range for undead mobs to fear Caliburn - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_FEAR_RADIUS = 15 - #A list of enchantment names which cannot be projected. Such as minecraft:sharpness , for example. - PROJECTION_ENCHANTMENT_BLACKLIST = ["forbidden_arcanus:indestructible", "minecraft:mending"] - #How much durability Morgan gains from killing villagers - #Range: 0 ~ 100000000 - MORGAN_HEAL_FACTOR = 30 - #A list of item names which cannot be projected. Such as minecraft:diamond_sword , for example. - PROJECTION_BLACKLIST = ["silentgear"] - #How much Clarent's stored damage decreases per tick while blocking - #Range: 0.0 ~ 1.0E8 - CLARENT_DECREASE_PER_BLOCKING_TICK = 0.02 - #This is the minimum threshhold a lake needs to be to be able to transform a sword into Caliburn. - #Range: 0 ~ 100000000 - POWER_CONSOLIDATION_LAKE_THRESHHOLD = 150 - #Items that Strengthening won't work on - STRENGTHENING_ITEM_BLACKLIST = [] - #Reality Marble Mob Blacklist - MARBLE_MOB_BLACKLIST = [] - #Projection items cannot be used in anvil - PROJECTION_ANVIL_CANCEL = false - #Power Consolidation Enchant Blacklist - POWER_CONSOLIDATION_ENCHANT_BLACKLIST = ["minecraft:mending"] - #Morgan Upgrade Mana Cost - #Range: 0 ~ 10000000 - MORGAN_UPGRADE_MANA_COST = 400 - -[exchange] - #How far down gets changed by the Alchemical Exchange - #Range: 0 ~ 100000000 - ALCHEMICAL_EXCHANGE_HEIGHT = 5 - #This is a list of blocks available in the wood-class exchange. - ALCHEMICAL_WOOD_CLASS = ["minecraft:log", "minecraft:cactus", "minecraft:pumpkin", "minecraft:melon_block", "minecraft:brown_mushroom_block", "minecraft:red_mushroom_block", "minecraft:hay_block", "minecraft:nether_wart_block"] - #This is the max distance between contract circles. - #Range: 0 ~ 100000000 - CONTRACT_RADIUS = 10 - #This is the cost of forming a contract with another player - #Range: 0 ~ 100000000 - CONTRACT_MANA_COST = 10 - #This is a list of blocks available in the metal-class exchange. - ALCHEMICAL_METAL_CLASS = ["minecraft:iron_ore", "minecraft:gold_ore", "minecraft:quartz_ore"] - #This is how often the circle restores mana - #Range: 0 ~ 100000000 - DURABILITY_EXCHANGE_BLOCK_CYCLE = 20 - #This is the limit on mana restored per cycle - #Range: 0 ~ 100000000 - DURABILITY_EXCHANGE_MANA_GAIN_CAP = 10 - #This is a list of blocks available in the gem-class exchange. - ALCHEMICAL_GEM_CLASS = ["minecraft:diamond_ore", "minecraft:emerald_ore"] - #This is a list of blocks available in the special-class exchange. - ALCHEMICAL_SPECIAL_CLASS = ["minecraft:prismarine", "minecraft:glowstone", "minecraft:sea_lantern", "minecraft:obsidian", "minecraft:slime"] - #This is how often the circle restores or deducts mana - #Range: 0 ~ 100000000 - CHRONAL_EXCHANGE_BLOCK_CYCLE = 20 - #This is a list of blocks available in the fluid-class exchange. - ALCHEMICAL_FLUID_CLASS = ["minecraft:lava", "minecraft:water"] - #mahoutsukai.config.durability_exchange_blacklist.comment - DURABILITY_EXCHANGE_BLACKLIST = [] - #This is the new value of damage done while damage exchange is active - #Range: 0.0 ~ 1.0E8 - DAMAGE_EXCHANGE_REDUCE_TO = 1.0 - #This is how much mana is gained or lost every cycle - #Range: 0 ~ 100000000 - CHRONAL_EXCHANGE_MANA_GAIN_LOSS = 10 - #This is how much durability per mana restored - #Range: 0 ~ 100000000 - DURABILITY_EXCHANGE_EFFICIENCY = 1 - #This is the cost for each catalyst exchanged by the circle - #Range: 0 ~ 100000000 - CATALYST_EXCHANGE_MANA_COST = 50 - #This is how often the circle changes a layer underneath it - #Range: 0 ~ 100000000 - ALCHEMICAL_EXCHANGE_BLOCK_CYCLE = 20 - #This is the mana cost per scroll - #Range: 0 ~ 100000000 - IMMUNITY_EXCHANGE_MANA_COST = 400 - #This is how long the buff/debuff lasts (in ticks) - #Range: 0 ~ 100000000 - IMMUNITY_EXCHANGE_TIME = 1200 - #This is the how much mana you get back when you're injured - #Range: 0 ~ 100000000 - DAMAGE_EXCHANGE_MANA_GAIN = 20 - #This is a list of blocks available in the moving-fluid-class exchange. - ALCHEMICAL_MOVING_FLUID_CLASS = ["minecraft:flowing_lava", "minecraft:flowing_water"] - #This is a list of blocks available in the dirt-class exchange. - ALCHEMICAL_DIRT_CLASS = ["minecraft:dirt", "minecraft:sand", "minecraft:soul_sand", "minecraft:snow"] - #This is a list of blocks available in the clay-class exchange. - ALCHEMICAL_CLAY_CLASS = ["minecraft:clay", "minecraft:coal_ore", "minecraft:redstone_ore", "minecraft:lapis_ore"] - #This is a list of blocks available in the stone-class exchange. - ALCHEMICAL_STONE_CLASS = ["minecraft:stone", "minecraft:ice", "minecraft:packed_ice", "minecraft:sandstone", "minecraft:red_sandstone", "minecraft:gravel", "minecraft:end_stone", "minecraft:purpur_block", "minecraft:magma", "minecraft:netherrack", "minecraft:hardened_clay"] - #This is a list of blocks available in the grass-class exchange. - ALCHEMICAL_GRASS_CLASS = ["minecraft:grass", "minecraft:mycelium"] - #This is the cost for each block changed by the circle - #Range: 0 ~ 100000000 - ALCHEMICAL_EXCHANGE_MANA_COST = 16 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - DAMAGE_EXCHANGE_MANA_COST = 40 - #This is how often the block checks for players on top of it - #Range: 0 ~ 100000000 - CONTRACT_BLOCK_CYCLE = 4 - #This is how often the circle checks for catalysts on top to change - #Range: 0 ~ 100000000 - CATALYST_EXCHANGE_BLOCK_CYCLE = 4 - -[mystic] - #This is the effect that is applied when the network has multiples of 11. - HEAVENS_CUP_ELEVEN_EFFECT = "wither" - #Either a fraction of the max mana (if scaling) or a flat damage value - #Range: 0.0 ~ 1.0E8 - MYSTIC_STAFF_BIG_FACTOR = 0.02 - #Whether Rho Aias boops all the time or just when caster sneaking - RHO_AIAS_SNEAK_BOOP = true - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - RHO_AIAS_MANA_COST = 300 - #How far away Rho Aias will delete entities - #Range: 0 ~ 100000000 - RHO_AIAS_KILL_RANGE = 30 - #Blocks with higher than this resistance will not be broken. Set to 0 for no breaking. - #Range: 0 ~ 100000000 - AUTHORITY_BLOCK_RESISTANCE_LIMIT = 45 - #Mana cost per tick for Mystic Staff Beam - #Range: 0 ~ 100000000 - MYSTIC_STAFF_BEAM_MANA_PER_TICK = 500 - #This is the effect that is applied when the network has multiples of 13. - HEAVENS_CUP_THIRTEEN_EFFECT = "levitation" - #Entities which Rho Aias will delete if colliding with. - RHO_AIAS_COLLIDE_KILL_LIST = [] - #Whether the damage is flat or scales with caster's 'level' - MYSTIC_STAFF_BIG_SCALES = true - #Entities which Rho Aias will delete if within range - RHO_AIAS_ENTITY_KILL_LIST = [] - #This is a flat cost of using the staff on an entity - #Range: 0 ~ 100000000 - SPATIAL_DISORIENTATION_MANA_COST_ST = 200 - #Damage factor for Mystic Staff Beam - #Range: -1.0E7 ~ 1.0E8 - MYSTIC_STAFF_BEAM_DAMAGE_FACTOR = 0.01 - #This is the effect that is applied when the network has multiples of 3. - HEAVENS_CUP_THREE_EFFECT = "weakness" - #Whether the damage is flat or scales with caster's 'level' - MYSTIC_STAFF_AOE_SCALES = true - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - SPATIAL_DISORIENTATION_MANA_COST = 100 - #Damage Acceleration Factor for Mystic Staff Beam - #Range: 0.0 ~ 1.0E8 - MYSTIC_STAFF_BEAM_DAMAGE_ACCELERATION = 1.5 - #This is how much damage done to the player when attacking something - #Range: 0.0 ~ 1.0E8 - AUTHORITY_DAMAGE_TO_SELF = 1.5 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - DAMAGE_REPLICATION_MANA_COST = 160 - #Explosion Size for Big Explosion - #Range: 0 ~ 100000000 - MYSTIC_STAFF_BIG_SIZE = 30 - #Mystic Staff Beam Block Limit Per Tick - #Range: 0 ~ 100000000 - MYSTIC_STAFF_BEAM_MAX_BLOCK_BREAK_PER_TICK = 90 - #This is the maximum distance the player can be from a network to activate it - #Range: 0 ~ 100000000 - HEAVENS_CUP_START_DISTANCE = 20 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - AUTHORITY_MANA_COST = 900 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - MYSTIC_STAFF_SUMMON_MANA_COST = 100 - #This is the multiplier for speed when the buff is active. Lower is slower - #Range: 0.0 ~ 1.0E8 - AUTHORITY_SPEED_MULTIPLIER = 3.2 - #Explosion Size for AOE Explosion - #Range: 0 ~ 100000000 - MYSTIC_STAFF_AOE_SIZE = 3 - #This is the effect that is applied when the network has multiples of 2. - HEAVENS_CUP_TWO_EFFECT = "poison" - #This is how long the effect lasts (in ticks) - #Range: 0 ~ 100000000 - AUTHORITY_TIME = 400 - #This is the cost of using the giant explosion - #Range: 0 ~ 100000000 - MYSTIC_STAFF_BIG_MANA_COST = 5000 - #This is the slowdown factor when a punched thing hits a wall. Lower is slower - #Range: 0.0 ~ 1.0E8 - AUTHORITY_BREAK_SLOW_DOWN_FACTOR = 0.5 - #This is the effect that is applied when the network has multiples of 5. - HEAVENS_CUP_FIVE_EFFECT = "blindness" - #This is the effect that is applied when the network has multiples of 7. - HEAVENS_CUP_SEVEN_EFFECT = "slowness" - #This is how long potion generated by the network last. - #Range: 0 ~ 100000000 - HEAVENS_CUP_DURATION = 1200 - #This is the slowdown factor when a punched thing is flying through the air normally. Lower is slower - #Range: 0.0 ~ 1.0E8 - AUTHORITY_NORMAL_SLOW_DOWN_FACTOR = 0.875 - #This is the maximum distance between nodes for them to be counted as part of the network. - #Range: 0 ~ 100000000 - HEAVENS_CUP_NETWORK_DISTANCE = 30 - #This is the cost of using the multiple explosion mode - #Range: 0 ~ 100000000 - MYSTIC_STAFF_AOE_MANA_COST = 600 - #Logs detected entities from the kill list, for debug only - RHO_AIAS_KILL_DEBUG = false - #Either a fraction of the max mana (if scaling) or a flat damage value - #Range: 0.0 ~ 1.0E8 - MYSTIC_STAFF_AOE_FACTOR = 0.01 - #This is multiplied by the square root of the area of the target network, and then multiplied by the sum of potion to get the mana cost. - #Range: 0 ~ 100000000 - HEAVENS_CUP_MANA_COST = 2 - #This is the cost of using the staff on a block (per second!) - #Range: 0 ~ 100000000 - SPATIAL_DISORIENTATION_MANA_COST_AOE = 20 - #Damage scales with caster max mana for Beam - MYSTIC_STAFF_BEAM_DAMAGE_SCALES = true - #This is how much damaqe is done when the player hits something - #Range: 0.0 ~ 1.0E8 - AUTHORITY_DAMAGE_TO_OTHER = 3.0 - -[eyes] - #Entities must be this close to the user's look vector to be affected - #Range: 0 ~ 100000000 - MYSTIC_EYES_RANGE_FROM_LOOK_VEC = 4 - #Player deaths will count this much to the next death prevention. - #Range: 0.0 ~ 1.0E8 - DEATH_COLLECTION_SOUL_VALUE_PLAYER = 1.0 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - REVERSION_EYES_MANA_COST = 410 - #This is how long the buff lasts - #Range: 0 ~ 100000000 - CLAIRVOYANCE_TIME = 1200 - #Whitelist or blacklist of dimension IDs - LEY_DIMENSION_LIST = [] - #How often flames do an update (in ticks) - #Range: 0 ~ 100000000 - BLACK_FLAME_UPDATE_TICKS = 1 - #If false, will show lines instead of runes. Lines not may not be compatible with shaders. - LEY_RUNES = true - #Entities must be this close to the user's look vector to be affected - #Range: 0 ~ 100000000 - REVERSION_EYES_RANGE_FROM_LOOK_VEC = 4 - #This is how long the buff lasts - #Range: 0 ~ 100000000 - REVERSION_EYES_TIME = 600 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - BLACK_FLAME_MANA_COST = 300 - #Blocks and entities within this range will be ignited if the user looks at them - #Range: 0 ~ 100000000 - BLACK_FLAME_RANGE_FROM_USER = 30 - #The Y value Ley Lines should render at - #Range: 0 ~ 100000000 - LEY_RENDER_HEIGHT = 70 - #Mob deaths will count this much to the next death prevention. - #Range: 0.0 ~ 1.0E8 - DEATH_COLLECTION_SOUL_VALUE_MOB = 0.25 - #This is how many ticks it lasts from the time of using the scroll. - #Range: 0 ~ 100000000 - INSIGHT_TIME = 1200 - #Entities must be within this radius of the user to be affected - #Range: 0 ~ 100000000 - MYSTIC_EYES_RANGE_FROM_USER = 5 - #Control the speed at which flames die (number between 0 and 3, probably) - #Range: 0 ~ 100000000 - BLACK_FLAME_DEATH_AGE = 14 - #This value is added to mana regen. It is the floor for mana added by leylines. By default, you lose 1 mana from regen for not being near a leyline. - #Range: 0 ~ 100000000 - LEY_PUNISHMENT = 0 - #If true, the dimension list is a blacklist. If false it is a whitelist. - LEY_BLACKLIST = true - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - DEATH_COLLECTION_MANA_COST = 400 - #This is how long the buff lasts - #Range: 0 ~ 100000000 - MYSTIC_EYES_TIME = 600 - #This is how long the buff lasts - #Range: 0 ~ 100000000 - BLACK_FLAME_TIME = 100 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - CLAIRVOYANCE_MANA_COST = 220 - #Entities must be within this radius of the user to be affected - #Range: 0 ~ 100000000 - REVERSION_EYES_RANGE_FROM_USER = 10 - #An offset in case you don't want 0,0 to be a leyline - #Range: 0 ~ 100000000 - LEY_OFFSET = 0 - #Entities must be within this radius of the user to be counted - #Range: 0 ~ 100000000 - DEATH_COLLECTION_RANGE_FROM_USER = 10 - #The factor used in calculating the leyline bonus regen - #Range: 0.0 ~ 1.0E8 - LEY_FACTOR = 0.01 - #Default revive health when triggering death collection. - #Range: 0.0 ~ 1.0E8 - DEATH_COLLECTION_REVIVE_VALUE = 12.0 - #How far away ley points are from each other - #Range: 0 ~ 100000000 - LEY_DISTANCE = 300 - #This is how much mana it costs to use the scroll. - #Range: 0 ~ 100000000 - INSIGHT_MANA_COST = 320 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - MYSTIC_EYES_MANA_COST = 320 - #Set this to false if you don't like ley lines affecting mana regen - LEY_AFFECTS_MANA = true - #Entities within this radius will have their movement predicted - #Range: 0 ~ 100000000 - CLAIRVOYANCE_RANGE = 30 - #Modifier for Fae spawn rate - #Range: 0.0 ~ 1.0E8 - FAE_SPAWN_RATE = 1.0 - #This is how long the buff lasts - #Range: 0 ~ 100000000 - DEATH_COLLECTION_TIME = 600 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - FAY_SIGHT_MANA_COST = 100 - #Whether the bonus regen is flat or based on max mana - LEY_FLAT = false - #This is how long the buff lasts - #Range: 0 ~ 100000000 - FAY_SIGHT_TIME = 600 - #Something is lit on fire every this many ticks, from the player's eyes - #Range: 0 ~ 100000000 - BLACK_FLAME_IGNITION_TICKS = 1 - #Max Souls possible for Death Collection - #Range: -1.0E7 ~ 1.0E7 - DEATH_COLLECTION_MAX = 1.0E7 - #Mana drained per soul held - #Range: -1.0E7 ~ 1.0E7 - DEATH_COLLECTION_DRAIN_PER_SOUL = 0.3 - #Leyline Eytra boost limited to Fay Sight - LEY_ELYTRA_LIMITED_TO_FAY_SIGHT = false - -[familiar] - #This is whether the effect disappears once used - BUTTERFLY_EFFECT_SINGLE_USE = false - #This is the range of the effect from the familiar - #Range: 0 ~ 100000000 - FAMILIARS_GARDEN_RANGE = 7 - #Whether people other than the caster can see the butterfly effect - BUTTERFLY_EFFECT_VISIBLE_TO_OTHERS = false - #This is how many ticks it lasts from the time of using the scroll. - #Range: 0 ~ 100000000 - FAMILIARS_GARDEN_TIME = 1200 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - SUMMON_FAMILIAR_MANA_COST = 200 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - RECALL_FAMILIAR_MANA_COST = 20 - #This is the how long the effect lasts - #Range: 0 ~ 100000000 - BUTTERFLY_EFFECT_DURATION = 400 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - FAMILIARS_GARDEN_MANA_COST = 200 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - BUTTERFLY_EFFECT_MANA_COST = 100 - #mahoutsukai.config.familiar_actionbar_messages.comment - FAMILIAR_ACTION_BAR_MESSAGES = true - #How often the familiar tries to talk to you - #Range: 0 ~ 100000000 - FAMILIAR_REPORT_SURROUNDINGS_TIME = 400 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - SWAP_FAMILIAR_MANA_COST = 40 - #How much health the familiar has - #Range: 0 ~ 100000000 - FAMILIAR_HEALTH = 10 - #This is the cost of using the scroll - #Range: 0 ~ 100000000 - POSSESS_ENTITY_MANA_COST = 200 - #The chance that a familiar will complain about being hurt. - #Range: 0.0 ~ 1.0E8 - FAMILIAR_OUCH_CHANCE = 0.3 - -[secret] - #Cooldown of Fog Skill for Presence Concealment - #Range: 0 ~ 100000000 - RIPPER_COOLDOWN = 800 - #Ripper Attack Damage - #Range: 0.0 ~ 1000000.0 - RIPPER_DAMAGE = 2.5 - #Ripper Attack Bonus Scales With Mana - RIPPER_DAMAGE_BONUS_SCALES_WITH_MANA = false - #This is how much mana per percent or health costs. - #Range: 0 ~ 100000000 - RETRIBUTION_MANA_PER_DIFFERENCE = 40 - #Blacklist of mobs retribution won't work against - RETRIBUTION_BLACKLIST = [] - #Ripper Attack Bonus From Behind - #Range: 0.0 ~ 1000000.0 - RIPPER_DAMAGE_BONUS_FROM_BEHIND = 6.0 - #Cooldown of Invisibility on The Ripper after hitting someone - #Range: 0 ~ 100000000 - RIPPER_INVIS_COOLDOWN = 40 - #Ripper Durability - #Range: 0 ~ 1000000000 - RIPPER_DURABILITY = 1200 - #Mana Cost of Presence Concealment - #Range: 0 ~ 100000000 - RIPPER_MANA_COST = 800 - #Ripper Gives Invisibility - RIPPER_GIVES_INVIS = true - #Distance between Fog Particles - #Range: 0 ~ 100000000 - RIPPER_FOG_DISTANCE = 5 - #Radius of Fog - #Range: 0 ~ 100000000 - RIPPER_FOG_RANGE = 20 - #Ripper Attack Speed - #Range: 0.0 ~ 1000000.0 - RIPPER_SPEED = 3.0 - #If true, mana is charged per percent difference between caster and target, as opposed to per health point differeence. - RETRIBUTION_MANA_CHARGED_PER_PERCENT = false - #Ripper Fog Mana Cost - #Range: 0 ~ 10000000 - RIPPER_FOG_MANA_COST = 200 - #Ripper Invis Mana Cost - #Range: 0 ~ 10000000 - RIPPER_INVIS_MANA_COST = 0 - #Gandr Black Particles Spawned on Hit - #Range: 0 ~ 100000000 - GANDR_BLACK_PARTICLES_HIT = 150 - #Gandr Red Particles Spawned on Hit - #Range: 0 ~ 100000000 - GANDR_RED_PARTICLES_HI = 40 - #Gandr Red Particles Spawned on Launch - #Range: 0 ~ 100000000 - GANDR_RED_PARTICLES_LAUNCH = 25 - #Gandr Hit Radius - #Range: 0.0 ~ 1.0E8 - GANDR_HIT_RADIUS = 6.0 - #Gandr Effect Cloud Duration - #Range: 0 ~ 100000000 - GANDR_CLOUD_DURATION = 200 - #Gandr Mana Cost Scales with Max Mana - GANDR_MANA_SCALES = true - #Gandr Mana Cost Factor - #Range: 0.0 ~ 1.0E8 - GANDR_MANA_COST_FACTOR = 0.05 - #Gandr Damage Scales with Max Mana - GANDR_DAMAGE_SCALES = true - #Gandr Damage Factor - #Range: 0.0 ~ 1.0E8 - GANDR_DAMAGE_FACTOR = 0.009999999776482582 - #Gandr Max Damage - #Range: 0.0 ~ 1.0E8 - GANDR_MAX_DAMAGE = 1000.0 - #Gandr Min Damage - #Range: 0.0 ~ 1.0E8 - GANDR_MIN_DAMAGE = 5.0 - #Gandr Projectile Speed - #Range: 0.0 ~ 1.0E8 - GANDR_SPEED = 1.0 - #Gandr Effect Blacklist - GANDR_EFFECT_BLACKLIST = [] - #Gandr Effect Whitelist - GANDR_EFFECT_WHITELIST = ["mahoutsukai:misfortune", "mahoutsukai:bound", "mahoutsukai:fear", "mahoutsukai:black_burning", "mahoutsukai:wounded", "mahoutsukai:confusion"] - -[kodoku] - #mahoutsukai.config.kodoku_tool_divisor.comment - #Range: 0 ~ 100000000 - KODOKU_TOOL_DIVISOR = 10 - #mahoutsukai.config.kodoku_fire_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_FIRE_CHANCE = 0.1 - #mahoutsukai.config.kodoku_trip_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_MISFORTUNE_TRIP_CHANCE = 4.0E-5 - #mahoutsukai.config.kodoku_hunger_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_HUNGER_CHANCE = 0.15 - #mahoutsukai.config.kodoku_hop_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_HOP_CHANCE = 0.08 - #mahoutsukai.config.kodoku_teleport_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_TELEPORT_CHANCE = 0.08 - #mahoutsukai.config.kodoku_lightning_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_MISFORTUNE_LIGHTNING_CHANCE = 2.0E-5 - #mahoutsukai.config.kodoku_splash_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_SPLASH_CHANCE = 0.05 - #mahoutsukai.config.kodoku_drop_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_MISFORTUNE_DROP_CHANCE = 7.142857142857143E-5 - #mahoutsukai.config.kodoku_glow_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_GLOW_CHANCE = 0.02 - #mahoutsukai.config.kodoku_confuse_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_CONFUSE_CHANCE = 0.01 - #mahoutsukai.config.kodoku_aggro_chance.comment - #Range: 0.0 ~ 1.0 - KODOKU_MISFORTUNE_AGGRO_CHANCE = 4.0E-4 - #mahoutsukai.config.kodoku_loot_divisor.comment - #Range: 0 ~ 100000000 - KODOKU_LOOT_DIVISOR = 10 - -[other] - #mahoutsukai.config.magic_circles.comment - MAGIC_CIRCLES = [] - #mahoutsukai.config.projector_rot_speed.comment - #Range: 0.0 ~ 1000000.0 - PROJECTOR_DEFAULT_ROTATION_SPEED = 1.0 - #GameStages Enabled - GAMESTAGES_ENABLED = false - #How much this circuit can hold - #Range: 0 ~ 100000000 - MANA_CIRCUIT_MAGITECH_CAPACITY = 100000 - #How much max mana increases every time it does - #Range: 0 ~ 100000000 - MANA_INCREASE = 1 - #If false, scrolls will not disappear in creative. - CREATIVE_MODE_SPELLS = false - #How much mana fits into an attuned diamond - #Range: 0 ~ 100000000 - ATTUNED_DIAMOND_CAPACITY = 10000 - #Percentage of max mana players get back by sleeping - #Range: 0.0 ~ 1.0E8 - MANA_RECOVERY_SLEEP = 0.5 - #mahoutsukai.config.magic_runes.comment - MAGIC_RUNES = [] - #If true, only allow blood circles on solid blocks - BLOOD_CIRCLE_SOLID_ONLY = true - #The block range value for any spells which use the player's line of sight - #Range: 0 ~ 100000000 - GLOBAL_LOOK_RANGE = 100 - #How far away things can be from a Mana Circuit to use it - #Range: 0 ~ 100000000 - MANA_CIRCUIT_RANGE = 10 - #How much durability the Mystic Code - First Sorcery item has - #Range: 0 ~ 100000000 - FIRST_SORCERY_DURABILITY = 50 - #If damage is flat, this value is dealt to player's health. If not flat, this value is multiplied by mana used and rounded up. - #Range: 0.0 ~ 1.0E8 - MAGIC_DAMAGE_VALUE = 1.0 - #mahoutsukai.config.creative_mana.comment - CREATIVE_IGNORES_MANA_COSTS = true - #How much mana fits into an attuned emerald - #Range: 0 ~ 100000000 - ATTUNED_EMERALD_CAPACITY = 5000 - #How high a player's personal mana can go - #Range: 0 ~ 100000000 - MAX_MANA_CAP = 200000 - #mahoutsukai.config.projector_off_spin.comment - PROJECTOR_CONTINUES_ROTATE_WHEN_OFF = false - #If Magic damages the player, should it be flat damage or based on mana used - MAGIC_DAMAGE_FLAT = true - #What type of damage magic damage inflicts. - MAGIC_DAMAGE_GENERIC = true - #How much mana is spent before it increases - #Range: 0 ~ 100000000 - MANA_UP_COUNTER = 100 - #How much this circuit can hold - #Range: 0 ~ 100000000 - MANA_CIRCUIT_CAPACITY = 100000 - #Should magic damage the player - MAGIC_DAMAGES_PLAYER = false - #How much mana players regen per tick - #Range: 0 ~ 100000000 - MANA_REGEN_PER_TICK = 1 - #How much mana regen scaled with max mana is added to player regen - #Range: 0.0 ~ 1.0E7 - MANA_ADDED_SCALING_REGEN_PER_TICK = 0.0 - #Scaling factor for how much hunger affects regen - #Range: -1.0E7 ~ 1.0E7 - MANA_REGEN_HUNGER_FACTOR = 1.0 - + +[boundary] + #This is the mana cost per cycle + #Range: 0 ~ 100000000 + ALARM_BARRIER_MANA_COST = 1 + #This is the range of the boundary + #Range: 0 ~ 100000000 + ENCLOSURE_BARRIER_RADIUS = 5 + #This is how often the boundary drains mana + #Range: 0 ~ 100000000 + TANGIBLE_BARRIER_MANA_CYCLE = 3 + #This is the mana cost per cycle + #Range: 0 ~ 100000000 + DISPLACEMENT_BARRIER_MANA_COST = 1 + #This is the range of the boundary + #Range: 0 ~ 100000000 + TANGIBLE_BARRIER_RADIUS = 10 + #This is the range of the boundary + #Range: 0 ~ 100000000 + DISPLACEMENT_BARRIER_RADIUS = 11 + #This is how often the boundary does it's thing + #Range: 0 ~ 100000000 + ENCLOSURE_BARRIER_CYCLE = 20 + #This is the mana cost per cycle + #Range: 0 ~ 100000000 + DRAIN_LIFE_BARRIER_MANA_COST = 5 + #This is how often the boundary drains mana + #Range: 0 ~ 100000000 + GRAVITY_BARRIER_MANA_CYCLE = 2 + #This is how often the boundary does it's thing + #Range: 0 ~ 100000000 + TANGIBLE_BARRIER_CYCLE = 20 + #This is the mana cost per cycle + #Range: 0 ~ 100000000 + ENCLOSURE_BARRIER_MANA_COST = 20 + #This is how often the boundary drains mana + #Range: 0 ~ 100000000 + DRAIN_LIFE_BARRIER_MANA_CYCLE = 1 + #This is how often the boundary drains mana + #Range: 0 ~ 100000000 + ALARM_BARRIER_MANA_CYCLE = 10 + #This is how often the boundary drains mana + #Range: 0 ~ 100000000 + DISPLACEMENT_BARRIER_MANA_CYCLE = 5 + #This is how often the boundary does it's thing + #Range: 0 ~ 100000000 + DRAIN_LIFE_BARRIER_CYCLE = 20 + #This is the range of the boundary + #Range: 0 ~ 100000000 + ALARM_BARRIER_RADIUS = 10 + #This is the range of the boundary + #Range: 0 ~ 100000000 + DRAIN_LIFE_BARRIER_RADIUS = 10 + #This is how often the boundary does it's thing + #Range: 0 ~ 100000000 + GRAVITY_BARRIER_CYCLE = 1 + #This is how often the boundary does it's thing + #Range: 0 ~ 100000000 + DISPLACEMENT_BARRIER_CYCLE = 4 + #mahoutsukai.config.alarm_barrier_actionbar_messages.comment + ALARM_ACTION_BAR_MESSAGES = true + #This is the range of the boundary + #Range: 0 ~ 100000000 + GRAVITY_BARRIER_RADIUS = 10 + #This is the mana cost per cycle + #Range: 0 ~ 100000000 + TANGIBLE_BARRIER_MANA_COST = 1 + #This is the mana cost per cycle + #Range: 0 ~ 100000000 + GRAVITY_BARRIER_MANA_COST = 1 + #This is how often the boundary does it's thing + #Range: 0 ~ 100000000 + ALARM_BARRIER_CYCLE = 20 + #This is whether the boundary ignores hunger when refilling + DRAIN_LIFE_IGNORE_HUNGER = false + #This is how much mana the boundary restores + #Range: 0 ~ 10000000 + DRAIN_LIFE_MANA_REGEN = 1 + #This is how much the boundary heals + #Range: -1.0E7 ~ 1.0E7 + DRAIN_LIFE_HEAL_FACTOR = 0.5 + #This is how much damage the boundary does + #Range: 0.0 ~ 1.0E7 + DRAIN_LIFE_DAMAGE = 2.0 + #The boundary does this much times its normal damage if the target has magic resistance + #Range: 0.0 ~ 1.0E7 + DRAIN_LIFE_PUNISH_RESIST = 1.8 + #Entities that won't be considered for the boundary + DRAIN_LIFE_ENTITY_BLACKLIST = [] + +[displacement] + #This is the cost per teleport + #Range: 0 ~ 100000000 + ORDERED_DISPLACEMENT_MANA_COST = 40 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + PROTECTIVE_DISPLACEMENT_MANA_COST = 50 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + PROJECTILE_DISPLACEMENT_MANA_COST = 50 + #This is how far you can go before being sent back to your body + #Range: 0 ~ 100000000 + MENTAL_DISPLACEMENT_RANGE = 20 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + MENTAL_DISPLACEMENT_MANA_COST = 300 + #This is the max distance between ordered displacement circles. + #Range: 0 ~ 100000000 + ORDERED_DISPLACEMENT_RADIUS = 20 + #This is the cost per name tag + #Range: 0 ~ 100000000 + SCRYING_MANA_COST = 50 + #This is how often a Scrying tile entity will send updates + #Range: 0 ~ 100000000 + SCRYING_BLOCK_CYCLE = 4 + #This is the cost of using the scroll (also the cost per teleport if not a scroll) + #Range: 0 ~ 100000000 + ASCENSION_SCROLL_MANA_COST = 30 + #This is the cost per teleport + #Range: 0 ~ 100000000 + EQUIVALENT_DISPLACEMENT_MANA_COST = 60 + #This is the cooldown between teleports (so you don't get shot back and forth rapidly) + #Range: 0 ~ 100000000 + ORDERED_DISPLACEMENT_RECEIVE_COOLDOWN = 15 + #This is how often the circle checks for things to teleport + #Range: 0 ~ 100000000 + ORDERED_DISPLACEMENT_BLOCK_CYCLE = 4 + #This is how long (in ticks) before a single name tag use runs out + #Range: 0 ~ 100000000 + SCRYING_DURATION = 1200 + #This is how often the circle checks for things to teleport + #Range: 0 ~ 100000000 + ASCENSION_BLOCK_CYCLE = 4 + #This is how often the circle checks for things to teleport + #Range: 0 ~ 100000000 + EQUIVALENT_DISPLACEMENT_BLOCK_CYCLE = 4 + #This is the cooldown between teleports (so you don't get shot back and forth rapidly) + #Range: 0 ~ 100000000 + EQUIVALENT_DISPLACEMENT_RECEIVE_COOLDOWN = 15 + #Max Distance for Equivalent Displacement + #Range: -1.0E7 ~ 1.0E7 + EQUIVALENT_DISPLACEMENT_MAX_DISTANCE = -1.0 + #Whether Equivalent Displacement can traverse dimensions + EQUIVALENT_DISPLACEMENT_DIMENSIONAL_TRAVEL = true + +[projection] + #This is the range for pulling undead mobs with Caliburn + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_PULL_RADIUS = 20 + #Acts as a blacklist if the toggle is on + POWER_CONSOLIDATION_BLACKLIST = ["mahoutsukai:clarent", "mahoutsukai:morgan"] + #This is the cost per cycle for creating the lake. + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_LAKE_MANA_COST = 30 + #Staff of Emrys Zap Damage + #Range: 0.0 ~ 1.0E8 + EMRYS_DAMAGE_ZAP = 1.5 + #This is the min distance between the target and the projectile spawn + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_MIN_DISTANCE = 8 + #Entities must be this close to the wielder of Caliburn's look vector to be affected by the sweep. + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_SWEEP_LOOK_RADIUS = 3 + #Staff of Emrys Mana Per Second + #Range: 0 ~ 100000000 + EMRYS_MANA_COST_FOCUSED = 200 + #Entities must be this close to the wielder of Caliburn to be affected by the sweep. + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_SWEEP_RADIUS = 6 + #This is the number of initial chains spawned + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_CHAINS_COUNT = 16 + #Distance between swords spawned in the Marble Dimension + #Range: 0 ~ 100000000 + MARBLE_DIMENSION_SPAWN_RATE = 12 + #Nerf factor for damage stored by Clarent + #Range: 0.0 ~ 1.0E8 + CLARENT_STORED_FACTOR = 0.5 + #How much durability Caliburn has. + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_DURABILITY = 1000 + #These will spawn in the Reality Marble as entities.. No guarantees on functionality if you change this. + MARBLE_SWORD_SPAWN_LIST = ["minecraft:iron_sword", "minecraft:diamond_sword", "minecraft:stone_sword"] + #If you have dimension conflicts, change this to something else + #Range: 0 ~ 100000000 + MARBLE_DIMENSION = 0 + #Caliburn Smite and Morgan Ball Mana Cost + #Range: 0 ~ 100000000 + CALIBURN_MORGAN_ABILITY_MANA_COST = 300 + #This is the delay between projectiles of the gauntlet + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_COOLDOWN = 10 + #Clarent is Unbreakable + CLARENT_UNBREAKABLE = true + #This is the cost per AOE projectile when using the gauntlet + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_AOE_MANA_COST = 120 + #Either the amount of damage a projected item takes from its max, or the total durability of the projected item + #Range: 0 ~ 100000000 + PROJECTION_DURABILITY_FACTOR = 1 + #How many hits the wound does each time it activates + #Range: 0 ~ 100000000 + CLARENT_WOUND_DAMAGE_HITS = 3 + #This is the cooldown between chain spawns + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_CHAINS_COOLDOWN = 10 + #List of allowed pets that can be killed with Caliburn to create Morgan + MORGAN_TRANSFORM_ENTITY_WHITELIST = ["minecraft:wolf"] + #How much damage Morgan gains from killing children + #Range: 0.0 ~ 1.0E8 + MORGAN_CHILD_INCREASE = 1.0 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_SCROLL_MANA_COST = 1000 + #How much damage the wound does per hit + #Range: 0.0 ~ 1.0E8 + CLARENT_WOUND_DAMAGE = 0.2 + #Staff of Emrys Damage Per Second + #Range: 0.0 ~ 1.0E8 + EMRYS_DAMAGE_FOCUSED_PER_SECOND = 4.0 + #Toggles whether it water should attempt to create tile entities. Only needed for old worlds with murky water in them. + POWER_CONSOLIDATION_RETRO_FOG_FIX = false + #Ignore whitelist; allow everything + TREASURY_PROJECTION_ALLOW_ALL = false + #This is the max radius of the lake + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_LAKE_RADIUS = 12 + #Clarent Durability + #Range: 0 ~ 100000000 + CLARENT_DURABILITY = 1500 + #Morgan Max Ball Range + #Range: 0 ~ 100000000 + MORGAN_MAX_BALL_RANGE = 15 + #Staff of Emrys Max Range + #Range: 0 ~ 100000000 + EMRYS_MAX_RANGE = 22 + #A blacklist for items which should not spawn extra drops with Strengthening + STRENGTHENING_ITEM_SPAWN_BLACKLIST = [] + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + WEAPON_SHOOTER_MANA_COST = 100 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + PROJECTION_MANA_COST = 200000 + #This is the distance before the lake begins to generate fog. (Note: Higher values may decrease FPS) + #Range: 0.0 ~ 1.0E8 + POWER_CONSOLIDATION_FOG_RADIUS = 8.0 + #This is the delay between AOE projectiles of the gauntlet + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_AOE_COOLDOWN = 4 + #Toggles the blacklist functionality + POWER_CONSOLIDATION_CALIBURN_BLACKLIST_TOGGLE = true + #A list of additional registry names which will be considered for selection in Treasury Projection + TREASURY_PROJECTION_WHITELIST = [] + #Probability of sword spawn + #Range: 0.0 ~ 1.0E8 + MARBLE_DIMENSION_SPAWN_CHANCE = 0.8 + #This is how much durability the proximity projection keys have + #Range: 0 ~ 100000000 + PROXIMITY_PROJECTION_MANA_COST = 30 + #Staff of Emrys Ignites + EMRYS_BOLT_FIRE = false + #Duration for Morgan Rage ability + #Range: 0 ~ 100000000 + MORGAN_RAGE_TIME = 120 + #Cooldown between special cast for Caliburn and Morgan + #Range: 0 ~ 100000000 + MORGAN_CALIBURN_POWER_COOLDOWN = 600 + #This is the range for smiting undead mobs with Caliburn + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_SMITE_RADIUS = 10 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + STRENGTHENING_MANA_COST = 50 + #This is the cost per sword transformation. + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_SWORD_MANA_COST = 5000 + #This is the cost per projectile when using the gauntlet + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_GAUNTLET_MANA_COST = 120 + #This is a nerf factor applied to enchantments to reduce the amount of power that can be consolidated. Lower is less nerf. + #Range: 0.0 ~ 1.0E8 + POWER_CONSOLIDATION_NERF_FACTOR = 0.6 + #This is the wind up time each projectile has before firing. + #Range: 0.0 ~ 1.0E8 + TREASURY_PROJECTION_SPEED = 30.0 + #This is the mana cost per chain spawned + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_CHAINS_MANA_COST = 120 + #How long Clarent's wound lasts + #Range: 0 ~ 100000000 + CLARENT_WOUND_TICKS = 600 + #Morgan Max Spike Range + #Range: 0 ~ 100000000 + MORGAN_SPIKE_RANGE = 10 + #Durability of swords spawned in the Marble Dimension + #Range: 0 ~ 100000000 + MARBLE_DIMENSION_DURABILITY = 3 + #Whether the projected durability is based on max damage (false) or just flat (true) + PROJECTION_DURABILITY_FLAT = true + #This is the max distance between the target and the projectile spawn + #Range: 0 ~ 100000000 + TREASURY_PROJECTION_DISTANCE = 20 + #How much damage Morgan gains from killing adult villagers + #Range: 0.0 ~ 1.0E8 + MORGAN_ADULT_INCREASE = 0.2 + #This is how often the lake does it's thing to make a lake + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_LAKE_CYCLE = 20 + #A list of registry names which will be not considered for selection in Treasury Projection + TREASURY_PROJECTION_BLACKLIST = [] + #Staff of Emrys Mana Per Zap + #Range: 0 ~ 100000000 + EMRYS_MANA_COST_PASSIVE = 80 + #Which swords cannot turn into Clarent + CLARENT_SWORD_BLACKLIST = ["mahoutsukai:caliburn", "mahoutsukai:morgan"] + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + MARBLE_MANA_COST = 4000 + #Ignore whitelist & blacklist; allow everything + TREASURY_PROJECTION_DENY_ALL = false + #Highest damage possible for Caliburn + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_ATTACK_CAP = 5000000 + #mahoutsukai.config.power_consolidation_fear_blacklist.comment + POWER_CONSOLIDATION_FEAR_BLACKLIST = [] + #This is the range for undead mobs to fear Caliburn + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_FEAR_RADIUS = 15 + #A list of enchantment names which cannot be projected. Such as minecraft:sharpness , for example. + PROJECTION_ENCHANTMENT_BLACKLIST = ["forbidden_arcanus:indestructible", "minecraft:mending"] + #How much durability Morgan gains from killing villagers + #Range: 0 ~ 100000000 + MORGAN_HEAL_FACTOR = 30 + #A list of item names which cannot be projected. Such as minecraft:diamond_sword , for example. + PROJECTION_BLACKLIST = ["silentgear"] + #How much Clarent's stored damage decreases per tick while blocking + #Range: 0.0 ~ 1.0E8 + CLARENT_DECREASE_PER_BLOCKING_TICK = 0.02 + #This is the minimum threshhold a lake needs to be to be able to transform a sword into Caliburn. + #Range: 0 ~ 100000000 + POWER_CONSOLIDATION_LAKE_THRESHHOLD = 150 + #Items that Strengthening won't work on + STRENGTHENING_ITEM_BLACKLIST = [] + #Reality Marble Mob Blacklist + MARBLE_MOB_BLACKLIST = [] + #Projection items cannot be used in anvil + PROJECTION_ANVIL_CANCEL = false + #Power Consolidation Enchant Blacklist + POWER_CONSOLIDATION_ENCHANT_BLACKLIST = ["minecraft:mending"] + #Morgan Upgrade Mana Cost + #Range: 0 ~ 10000000 + MORGAN_UPGRADE_MANA_COST = 400 + #Speed of projectiles shot from the weapon projectile bow + #Range: 0.0 ~ 1.0E7 + WEAPON_SHOOTER_PROJECTILE_SPEED = 3.0 + #Damage multiplier for projectiles shot from the weapon projectile bow + #Range: 0.0 ~ 1.0E7 + WEAPON_SHOOTER_DAMAGE_MULTIPLIER = 1.0 + #Weapon projectile bow durability + #Range: 0 ~ 10000000 + WEAPON_SHOOTER_DURABILITY = 30 + #How much damage chains do on contact + #Range: 0.0 ~ 1.0E8 + TREASURY_PROJECTION_CHAINS_DAMAGE = 1.0 + #Treasury Projection Speed Increase Per Available Sword + #Range: -10000.0 ~ 10000.0 + TREASURY_PROJECTION_SPEED_INCREASE_PER_SWORD = 1.0 + #Treasury Projection Speed Minimum + #Range: 0.0 ~ 100000.0 + TREASURY_PROJECTION_SPEED_MIN = 10.0 + #Treasury Projection Cooldown Increase Per Available Sword + #Range: -10000.0 ~ 10000.0 + TREASURY_PROJECTION_COOLDOWN_INCREASE_PER_SWORD = 1.0 + #Treasury Projection Cooldown Minimum + #Range: 0.0 ~ 100000.0 + TREASURY_PROJECTION_COOLDOWN_MIN = 3.0 + #Treasury Projection AOE Mode Max Spawns Per Tick + #Range: 0.0 ~ 100000.0 + TREASURY_PROJECTION_AOE_MAX_SPAWNS = 3.0 + #Treasury Projection AOE Mode Swords Per Spawn + #Range: 0.0 ~ 100000.0 + TREASURY_PROJECTION_AOE_SWORDS_PER_SPAWN = 5.0 + #Treasury Projection Increases Requires Unique Weapons + TREASURY_PROJECTION_INCREASE_REQUIRES_UNIQUE = true + #Max Strengthening Cap + #Range: 0 ~ 100000000 + STRENGTHENING_CAP = 50 + #If False, PROJECTION_BLACKLIST will be considered a whitelist + PROJECTION_IS_BLACKLIST = true + #Projection Explicit Whitelist + PROJECTION_EXPLICIT_WHITELIST = [] + #Rhongomyniad Lake Nerf Factor + #Range: -1.0E7 ~ 1.0E7 + RHONGOMYNIAD_NERF_FACTOR = 0.6 + #Rhongomyniad Speed Factor + #Range: -1.0E7 ~ 1.0E7 + RHONGOMYNIAD_SPEED_FACTOR = 1.4 + #Rhongomyniad Mana Cost + #Range: 0 ~ 10000000 + RHONGOMYNIAD_MANA_COST = 300 + #Rhongomyniad Max Smites + #Range: 0 ~ 10000000 + RHONGOMYNIAD_MAX_SMITES = 10 + #Rhongomyniad Range + #Range: 0 ~ 10000000 + RHONGOMYNIAD_RANGE = 20 + #Max stored damage for Clarent + #Range: 0 ~ 100000000 + CLARENT_ATTACK_CAP = 5000000 + #Clarent Blacklist Toggle + CLARENT_BLACKLIST_TOGGLE = true + #Disable Emrys + DISABLE_EMRYS = false + #All pet wolves are allowed for transformation to Morgan + MORGAN_TRANSFORM_WOLFS_ALLOWED = true + #Replica Shockwave Base Damage + #Range: 0.0 ~ 1.0E7 + REPLICA_BASE_DAMAGE = 4.0 + #Replica Friend Teleport Range + #Range: 0.0 ~ 1.0E7 + REPLICA_TELEPORT_FRIEND_RANGE = 6.0 + #Replica Friend Teleport Max Distance + #Range: -1.0E7 ~ 1.0E7 + REPLICA_TELEPORT_MAX_DISTANCE = -1.0 + #Replica Teleport Start Time + #Range: 0 ~ 10000000 + REPLICA_TELEPORT_START_TELEPORTING = 110 + #Replica Teleport Stop Time + #Range: 0 ~ 10000000 + REPLICA_TELEPORT_STOP_TELEPORTING = 120 + #Replica Teleport Life + #Range: 0 ~ 10000000 + REPLICA_TELEPORT_LIFE = 140 + #Replica Teleport Mana Cost + #Range: 0 ~ 10000000 + REPLICA_TELEPORT_MANA_COST = 300 + #Replica Shockwave Mana Cost + #Range: 0 ~ 10000000 + REPLICA_ATTACK_MANA_COST = 30 + #Replica Shockwave Cooldown + #Range: 0 ~ 1000000 + REPLICA_SHOCKWAVE_COOLDOWN = 50 + #Replica Shockwave Range + #Range: 0.0 ~ 1.0E7 + REPLICA_ATTACK_RANGE = 8.0 + #Replica can Teleport across Dimensions + REPLICA_TELEPORT_CROSS_DIMENSION = true + #Replica Cover Move Range + #Range: 0.0 ~ 1.0E7 + REPLICA_COVER_MOVE_RANGE = 20.0 + #Replica Shockwave Max Damage + #Range: 0.0 ~ 1.0E7 + REPLICA_MAX_DAMAGE = 5000000.0 + #Replica is disabled + REPLICA_DISABLED = false + #Replica Banned Damage Types + REPLICA_BANNED_DAMAGE_TYPES = [] + #Power Consolidation Damage Cap Tiers + POWER_CONSOLIDATION_TIERS = [10000.0, 50000.0, 500000.0, 1000000.0, 5000000.0] + #Power Consolidation Tier Upgrade Items + POWER_CONSOLIDATION_TIER_UPGRADE_ITEM = ["allthemodium:vibranium_allthemodium_alloy_block"] + #Replica Durability + #Range: 0 ~ 10000000 + REPLICA_DURABILITY = 10000 + #Replica is Unbreakable + REPLICA_IS_UNBREAKABLE = true + +[exchange] + #How far down gets changed by the Alchemical Exchange + #Range: 0 ~ 100000000 + ALCHEMICAL_EXCHANGE_HEIGHT = 5 + #This is a list of blocks available in the wood-class exchange. + ALCHEMICAL_WOOD_CLASS = ["minecraft:log", "minecraft:cactus", "minecraft:pumpkin", "minecraft:melon_block", "minecraft:brown_mushroom_block", "minecraft:red_mushroom_block", "minecraft:hay_block", "minecraft:nether_wart_block"] + #This is the max distance between contract circles. + #Range: 0 ~ 100000000 + CONTRACT_RADIUS = 10 + #This is the cost of forming a contract with another player + #Range: 0 ~ 100000000 + CONTRACT_MANA_COST = 10 + #This is a list of blocks available in the metal-class exchange. + ALCHEMICAL_METAL_CLASS = ["minecraft:iron_ore", "minecraft:gold_ore", "minecraft:quartz_ore"] + #This is how often the circle restores mana + #Range: 0 ~ 100000000 + DURABILITY_EXCHANGE_BLOCK_CYCLE = 20 + #This is the limit on mana restored per cycle + #Range: 0 ~ 100000000 + DURABILITY_EXCHANGE_MANA_GAIN_CAP = 10 + #This is a list of blocks available in the gem-class exchange. + ALCHEMICAL_GEM_CLASS = ["minecraft:diamond_ore", "minecraft:emerald_ore"] + #This is a list of blocks available in the special-class exchange. + ALCHEMICAL_SPECIAL_CLASS = ["minecraft:prismarine", "minecraft:glowstone", "minecraft:sea_lantern", "minecraft:obsidian", "minecraft:slime"] + #This is how often the circle restores or deducts mana + #Range: 0 ~ 100000000 + CHRONAL_EXCHANGE_BLOCK_CYCLE = 20 + #This is a list of blocks available in the fluid-class exchange. + ALCHEMICAL_FLUID_CLASS = ["minecraft:lava", "minecraft:water"] + #mahoutsukai.config.durability_exchange_blacklist.comment + DURABILITY_EXCHANGE_BLACKLIST = [] + #This is the new value of damage done while damage exchange is active + #Range: 0.0 ~ 1.0E8 + DAMAGE_EXCHANGE_REDUCE_TO = 1.0 + #This is how much mana is gained or lost every cycle + #Range: 0 ~ 100000000 + CHRONAL_EXCHANGE_MANA_GAIN_LOSS = 10 + #This is how much durability per mana restored + #Range: 0 ~ 100000000 + DURABILITY_EXCHANGE_EFFICIENCY = 1 + #This is the cost for each catalyst exchanged by the circle + #Range: 0 ~ 100000000 + CATALYST_EXCHANGE_MANA_COST = 50 + #This is how often the circle changes a layer underneath it + #Range: 0 ~ 100000000 + ALCHEMICAL_EXCHANGE_BLOCK_CYCLE = 20 + #This is the mana cost per scroll + #Range: 0 ~ 100000000 + IMMUNITY_EXCHANGE_MANA_COST = 400 + #This is how long the buff/debuff lasts (in ticks) + #Range: 0 ~ 100000000 + IMMUNITY_EXCHANGE_TIME = 1200 + #This is the how much mana you get back when you're injured + #Range: 0 ~ 100000000 + DAMAGE_EXCHANGE_MANA_GAIN = 20 + #This is a list of blocks available in the moving-fluid-class exchange. + ALCHEMICAL_MOVING_FLUID_CLASS = ["minecraft:flowing_lava", "minecraft:flowing_water"] + #This is a list of blocks available in the dirt-class exchange. + ALCHEMICAL_DIRT_CLASS = ["minecraft:dirt", "minecraft:sand", "minecraft:soul_sand", "minecraft:snow"] + #This is a list of blocks available in the clay-class exchange. + ALCHEMICAL_CLAY_CLASS = ["minecraft:clay", "minecraft:coal_ore", "minecraft:redstone_ore", "minecraft:lapis_ore"] + #This is a list of blocks available in the stone-class exchange. + ALCHEMICAL_STONE_CLASS = ["minecraft:stone", "minecraft:ice", "minecraft:packed_ice", "minecraft:sandstone", "minecraft:red_sandstone", "minecraft:gravel", "minecraft:end_stone", "minecraft:purpur_block", "minecraft:magma", "minecraft:netherrack", "minecraft:hardened_clay"] + #This is a list of blocks available in the grass-class exchange. + ALCHEMICAL_GRASS_CLASS = ["minecraft:grass", "minecraft:mycelium"] + #This is the cost for each block changed by the circle + #Range: 0 ~ 100000000 + ALCHEMICAL_EXCHANGE_MANA_COST = 16 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + DAMAGE_EXCHANGE_MANA_COST = 40 + #This is how often the block checks for players on top of it + #Range: 0 ~ 100000000 + CONTRACT_BLOCK_CYCLE = 4 + #This is how often the circle checks for catalysts on top to change + #Range: 0 ~ 100000000 + CATALYST_EXCHANGE_BLOCK_CYCLE = 4 + #Durability Exchange Tax Brackets + DURABILITY_EXCHANGE_TAX_BRACKETS = [5000.0, 20000.0, 100000.0] + #Durability Exchange Tax Rates + DURABILITY_EXCHANGE_TAX_RATES = [0.02, 0.03, 0.04] + #Damage Exchange Cap + #Range: 0 ~ 1000000000 + DAMAGE_EXCHANGE_CAP = 100 + +[mystic] + #This is the effect that is applied when the network has multiples of 11. + HEAVENS_CUP_ELEVEN_EFFECT = "wither" + #Either a fraction of the max mana (if scaling) or a flat damage value + #Range: 0.0 ~ 1.0E8 + MYSTIC_STAFF_BIG_FACTOR = 0.02 + #Whether Rho Aias boops all the time or just when caster sneaking + RHO_AIAS_SNEAK_BOOP = true + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + RHO_AIAS_MANA_COST = 300 + #How far away Rho Aias will delete entities + #Range: 0 ~ 100000000 + RHO_AIAS_KILL_RANGE = 30 + #Blocks with higher than this resistance will not be broken. Set to 0 for no breaking. + #Range: 0 ~ 100000000 + AUTHORITY_BLOCK_RESISTANCE_LIMIT = 45 + #Mana cost per tick for Mystic Staff Beam + #Range: 0 ~ 100000000 + MYSTIC_STAFF_BEAM_MANA_PER_TICK = 500 + #This is the effect that is applied when the network has multiples of 13. + HEAVENS_CUP_THIRTEEN_EFFECT = "levitation" + #Entities which Rho Aias will delete if colliding with. + RHO_AIAS_COLLIDE_KILL_LIST = [] + #Whether the damage is flat or scales with caster's 'level' + MYSTIC_STAFF_BIG_SCALES = true + #Entities which Rho Aias will delete if within range + RHO_AIAS_ENTITY_KILL_LIST = [] + #This is a flat cost of using the staff on an entity + #Range: 0 ~ 100000000 + SPATIAL_DISORIENTATION_MANA_COST_ST = 200 + #Damage factor for Mystic Staff Beam + #Range: -1.0E7 ~ 1.0E8 + MYSTIC_STAFF_BEAM_DAMAGE_FACTOR = 0.01 + #This is the effect that is applied when the network has multiples of 3. + HEAVENS_CUP_THREE_EFFECT = "weakness" + #Whether the damage is flat or scales with caster's 'level' + MYSTIC_STAFF_AOE_SCALES = true + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + SPATIAL_DISORIENTATION_MANA_COST = 100 + #Damage Acceleration Factor for Mystic Staff Beam + #Range: 0.0 ~ 1.0E8 + MYSTIC_STAFF_BEAM_DAMAGE_ACCELERATION = 1.5 + #This is how much damage done to the player when attacking something + #Range: 0.0 ~ 1.0E8 + AUTHORITY_DAMAGE_TO_SELF = 1.5 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + DAMAGE_REPLICATION_MANA_COST = 160 + #Explosion Size for Big Explosion + #Range: 0 ~ 100000000 + MYSTIC_STAFF_BIG_SIZE = 30 + #Mystic Staff Beam Block Limit Per Tick + #Range: 0 ~ 100000000 + MYSTIC_STAFF_BEAM_MAX_BLOCK_BREAK_PER_TICK = 90 + #This is the maximum distance the player can be from a network to activate it + #Range: 0 ~ 100000000 + HEAVENS_CUP_START_DISTANCE = 20 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + AUTHORITY_MANA_COST = 900 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + MYSTIC_STAFF_SUMMON_MANA_COST = 100 + #This is the multiplier for speed when the buff is active. Lower is slower + #Range: 0.0 ~ 1.0E8 + AUTHORITY_SPEED_MULTIPLIER = 3.2 + #Explosion Size for AOE Explosion + #Range: 0 ~ 100000000 + MYSTIC_STAFF_AOE_SIZE = 3 + #This is the effect that is applied when the network has multiples of 2. + HEAVENS_CUP_TWO_EFFECT = "poison" + #This is how long the effect lasts (in ticks) + #Range: 0 ~ 100000000 + AUTHORITY_TIME = 400 + #This is the cost of using the giant explosion + #Range: 0 ~ 100000000 + MYSTIC_STAFF_BIG_MANA_COST = 5000 + #This is the slowdown factor when a punched thing hits a wall. Lower is slower + #Range: 0.0 ~ 1.0E8 + AUTHORITY_BREAK_SLOW_DOWN_FACTOR = 0.5 + #This is the effect that is applied when the network has multiples of 5. + HEAVENS_CUP_FIVE_EFFECT = "blindness" + #This is the effect that is applied when the network has multiples of 7. + HEAVENS_CUP_SEVEN_EFFECT = "slowness" + #This is how long potion generated by the network last. + #Range: 0 ~ 100000000 + HEAVENS_CUP_DURATION = 1200 + #This is the slowdown factor when a punched thing is flying through the air normally. Lower is slower + #Range: 0.0 ~ 1.0E8 + AUTHORITY_NORMAL_SLOW_DOWN_FACTOR = 0.875 + #This is the maximum distance between nodes for them to be counted as part of the network. + #Range: 0 ~ 100000000 + HEAVENS_CUP_NETWORK_DISTANCE = 30 + #This is the cost of using the multiple explosion mode + #Range: 0 ~ 100000000 + MYSTIC_STAFF_AOE_MANA_COST = 600 + #Logs detected entities from the kill list, for debug only + RHO_AIAS_KILL_DEBUG = false + #Either a fraction of the max mana (if scaling) or a flat damage value + #Range: 0.0 ~ 1.0E8 + MYSTIC_STAFF_AOE_FACTOR = 0.01 + #This is multiplied by the square root of the area of the target network, and then multiplied by the sum of potion to get the mana cost. + #Range: 0 ~ 100000000 + HEAVENS_CUP_MANA_COST = 2 + #This is the cost of using the staff on a block (per second!) + #Range: 0 ~ 100000000 + SPATIAL_DISORIENTATION_MANA_COST_AOE = 20 + #Damage scales with caster max mana for Beam + MYSTIC_STAFF_BEAM_DAMAGE_SCALES = true + #This is how much damaqe is done when the player hits something + #Range: 0.0 ~ 1.0E8 + AUTHORITY_DAMAGE_TO_OTHER = 3.0 + #Mystic Staff Creates Rain and Thunder + MYSTIC_STAFF_BIG_RAIN = true + #Mystic Staff Scaling Mana Factor + #Range: 0.0 ~ 1.0E7 + MYSTIC_STAFF_SCALING_MANA = 0.0 + #Mystic Staff World Damage + MYSTIC_STAFF_WORLD_DAMAGE = true + #Mystic Staff Beam Block Whitelist + MYSTIC_STAFF_BEAM_BLOCK_WHITELIST = [] + #How long Rho Aias lasts + #Range: 0 ~ 100000000 + RHO_AIAS_LIFE = 1200 + #Borrowed Authority Drops Blocks + AUTHORITY_DROPS_BLOCKS = true + #Spatial Disorientation Air Resistance + SPATIAL_DISORIENTATION_AIR_RESISTANCE = false + #Spatial Disorientation Launch Speed + #Range: 0.0 ~ 1.0E7 + SPATIAL_DISORIENTATION_SPEED = 7.0 + +[eyes] + #Entities must be this close to the user's look vector to be affected + #Range: 0 ~ 100000000 + MYSTIC_EYES_RANGE_FROM_LOOK_VEC = 4 + #Player deaths will count this much to the next death prevention. + #Range: 0.0 ~ 1.0E8 + DEATH_COLLECTION_SOUL_VALUE_PLAYER = 1.0 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + REVERSION_EYES_MANA_COST = 410 + #This is how long the buff lasts + #Range: 0 ~ 100000000 + CLAIRVOYANCE_TIME = 1200 + #Whitelist or blacklist of dimension IDs + LEY_DIMENSION_LIST = [] + #How often flames do an update (in ticks) + #Range: 0 ~ 100000000 + BLACK_FLAME_UPDATE_TICKS = 1 + #If false, will show lines instead of runes. Lines not may not be compatible with shaders. + LEY_RUNES = true + #Entities must be this close to the user's look vector to be affected + #Range: 0 ~ 100000000 + REVERSION_EYES_RANGE_FROM_LOOK_VEC = 4 + #This is how long the buff lasts + #Range: 0 ~ 100000000 + REVERSION_EYES_TIME = 600 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + BLACK_FLAME_MANA_COST = 300 + #Blocks and entities within this range will be ignited if the user looks at them + #Range: 0 ~ 100000000 + BLACK_FLAME_RANGE_FROM_USER = 30 + #The Y value Ley Lines should render at + #Range: 0 ~ 100000000 + LEY_RENDER_HEIGHT = 70 + #Mob deaths will count this much to the next death prevention. + #Range: 0.0 ~ 1.0E8 + DEATH_COLLECTION_SOUL_VALUE_MOB = 0.25 + #This is how many ticks it lasts from the time of using the scroll. + #Range: 0 ~ 100000000 + INSIGHT_TIME = 1200 + #Entities must be within this radius of the user to be affected + #Range: 0 ~ 100000000 + MYSTIC_EYES_RANGE_FROM_USER = 5 + #Control the speed at which flames die (number between 0 and 3, probably) + #Range: 0 ~ 100000000 + BLACK_FLAME_DEATH_AGE = 14 + #This value is added to mana regen. It is the floor for mana added by leylines. By default, you lose 1 mana from regen for not being near a leyline. + #Range: 0 ~ 100000000 + LEY_PUNISHMENT = 0 + #If true, the dimension list is a blacklist. If false it is a whitelist. + LEY_BLACKLIST = true + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + DEATH_COLLECTION_MANA_COST = 400 + #This is how long the buff lasts + #Range: 0 ~ 100000000 + MYSTIC_EYES_TIME = 600 + #This is how long the buff lasts + #Range: 0 ~ 100000000 + BLACK_FLAME_TIME = 100 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + CLAIRVOYANCE_MANA_COST = 220 + #Entities must be within this radius of the user to be affected + #Range: 0 ~ 100000000 + REVERSION_EYES_RANGE_FROM_USER = 10 + #An offset in case you don't want 0,0 to be a leyline + #Range: 0 ~ 100000000 + LEY_OFFSET = 0 + #Entities must be within this radius of the user to be counted + #Range: 0 ~ 100000000 + DEATH_COLLECTION_RANGE_FROM_USER = 10 + #The factor used in calculating the leyline bonus regen + #Range: 0.0 ~ 1.0E8 + LEY_FACTOR = 0.01 + #Default revive health when triggering death collection. + #Range: 0.0 ~ 1.0E8 + DEATH_COLLECTION_REVIVE_VALUE = 12.0 + #How far away ley points are from each other + #Range: 0 ~ 100000000 + LEY_DISTANCE = 300 + #This is how much mana it costs to use the scroll. + #Range: 0 ~ 100000000 + INSIGHT_MANA_COST = 320 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + MYSTIC_EYES_MANA_COST = 320 + #Set this to false if you don't like ley lines affecting mana regen + LEY_AFFECTS_MANA = true + #Entities within this radius will have their movement predicted + #Range: 0 ~ 100000000 + CLAIRVOYANCE_RANGE = 30 + #Modifier for Fae spawn rate + #Range: 0.0 ~ 1.0E8 + FAE_SPAWN_RATE = 1.0 + #This is how long the buff lasts + #Range: 0 ~ 100000000 + DEATH_COLLECTION_TIME = 600 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + FAY_SIGHT_MANA_COST = 100 + #Whether the bonus regen is flat or based on max mana + LEY_FLAT = false + #This is how long the buff lasts + #Range: 0 ~ 100000000 + FAY_SIGHT_TIME = 600 + #Something is lit on fire every this many ticks, from the player's eyes + #Range: 0 ~ 100000000 + BLACK_FLAME_IGNITION_TICKS = 1 + #Max Souls possible for Death Collection + #Range: -1.0E7 ~ 1.0E7 + DEATH_COLLECTION_MAX = 1.0E7 + #Mana drained per soul held + #Range: -1.0E7 ~ 1.0E7 + DEATH_COLLECTION_DRAIN_PER_SOUL = 0.3 + #Leyline Eytra boost limited to Fay Sight + LEY_ELYTRA_LIMITED_TO_FAY_SIGHT = false + #Souls drain with negative mana regen + DEATH_COLLECTION_NEGATIVE_REGEN_PUNISHMENT = true + +[familiar] + #This is whether the effect disappears once used + BUTTERFLY_EFFECT_SINGLE_USE = false + #This is the range of the effect from the familiar + #Range: 0 ~ 100000000 + FAMILIARS_GARDEN_RANGE = 7 + #Whether people other than the caster can see the butterfly effect + BUTTERFLY_EFFECT_VISIBLE_TO_OTHERS = false + #This is how many ticks it lasts from the time of using the scroll. + #Range: 0 ~ 100000000 + FAMILIARS_GARDEN_TIME = 1200 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + SUMMON_FAMILIAR_MANA_COST = 200 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + RECALL_FAMILIAR_MANA_COST = 20 + #This is the how long the effect lasts + #Range: 0 ~ 100000000 + BUTTERFLY_EFFECT_DURATION = 400 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + FAMILIARS_GARDEN_MANA_COST = 200 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + BUTTERFLY_EFFECT_MANA_COST = 100 + #mahoutsukai.config.familiar_actionbar_messages.comment + FAMILIAR_ACTION_BAR_MESSAGES = true + #How often the familiar tries to talk to you + #Range: 0 ~ 100000000 + FAMILIAR_REPORT_SURROUNDINGS_TIME = 400 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + SWAP_FAMILIAR_MANA_COST = 40 + #How much health the familiar has + #Range: 0 ~ 100000000 + FAMILIAR_HEALTH = 10 + #This is the cost of using the scroll + #Range: 0 ~ 100000000 + POSSESS_ENTITY_MANA_COST = 200 + #The chance that a familiar will complain about being hurt. + #Range: 0.0 ~ 1.0E8 + FAMILIAR_OUCH_CHANCE = 0.3 + +[secret] + #Cooldown of Fog Skill for Presence Concealment + #Range: 0 ~ 100000000 + RIPPER_COOLDOWN = 800 + #Ripper Attack Damage + #Range: 0.0 ~ 1000000.0 + RIPPER_DAMAGE = 2.5 + #Ripper Attack Bonus Scales With Mana + RIPPER_DAMAGE_BONUS_SCALES_WITH_MANA = false + #This is how much mana per percent or health costs. + #Range: 0 ~ 100000000 + RETRIBUTION_MANA_PER_DIFFERENCE = 40 + #Blacklist of mobs retribution won't work against + RETRIBUTION_BLACKLIST = [] + #Ripper Attack Bonus From Behind + #Range: 0.0 ~ 1000000.0 + RIPPER_DAMAGE_BONUS_FROM_BEHIND = 6.0 + #Cooldown of Invisibility on The Ripper after hitting someone + #Range: 0 ~ 100000000 + RIPPER_INVIS_COOLDOWN = 40 + #Ripper Durability + #Range: 0 ~ 1000000000 + RIPPER_DURABILITY = 1200 + #Mana Cost of Presence Concealment + #Range: 0 ~ 100000000 + RIPPER_MANA_COST = 800 + #Ripper Gives Invisibility + RIPPER_GIVES_INVIS = true + #Distance between Fog Particles + #Range: 0 ~ 100000000 + RIPPER_FOG_DISTANCE = 5 + #Radius of Fog + #Range: 0 ~ 100000000 + RIPPER_FOG_RANGE = 20 + #Ripper Attack Speed + #Range: -1000000.0 ~ 1000000.0 + RIPPER_SPEED = 3.0 + #If true, mana is charged per percent difference between caster and target, as opposed to per health point differeence. + RETRIBUTION_MANA_CHARGED_PER_PERCENT = false + #Ripper Fog Mana Cost + #Range: 0 ~ 10000000 + RIPPER_FOG_MANA_COST = 200 + #Ripper Invis Mana Cost + #Range: 0 ~ 10000000 + RIPPER_INVIS_MANA_COST = 0 + #Gandr Black Particles Spawned on Hit + #Range: 0 ~ 100000000 + GANDR_BLACK_PARTICLES_HIT = 150 + #Gandr Red Particles Spawned on Launch + #Range: 0 ~ 100000000 + GANDR_RED_PARTICLES_LAUNCH = 25 + #Gandr Hit Radius + #Range: 0.0 ~ 1.0E8 + GANDR_HIT_RADIUS = 6.0 + #Gandr Effect Cloud Duration + #Range: 0 ~ 100000000 + GANDR_CLOUD_DURATION = 200 + #Gandr Mana Cost Scales with Max Mana + GANDR_MANA_SCALES = true + #Gandr Mana Cost Factor + #Range: 0.0 ~ 1.0E8 + GANDR_MANA_COST_FACTOR = 0.05 + #Gandr Damage Scales with Max Mana + GANDR_DAMAGE_SCALES = true + #Gandr Damage Factor + #Range: 0.0 ~ 1.0E8 + GANDR_DAMAGE_FACTOR = 0.009999999776482582 + #Gandr Max Damage + #Range: 0.0 ~ 1.0E8 + GANDR_MAX_DAMAGE = 1000.0 + #Gandr Min Damage + #Range: 0.0 ~ 1.0E8 + GANDR_MIN_DAMAGE = 5.0 + #Gandr Projectile Speed + #Range: 0.0 ~ 1.0E8 + GANDR_SPEED = 1.0 + #Gandr Effect Blacklist + GANDR_EFFECT_BLACKLIST = [] + #Gandr Effect Whitelist + GANDR_EFFECT_WHITELIST = ["mahoutsukai:misfortune", "mahoutsukai:bound", "mahoutsukai:fear", "mahoutsukai:black_burning", "mahoutsukai:wounded", "mahoutsukai:confusion"] + #Ripper Movement Speed + #Range: -1.0E7 ~ 1000000.0 + RIPPER_MOVEMENT_SPEED = 0.05 + #Gandr Red Particles Spawned on Hit + #Range: 0 ~ 100000000 + GANDR_RED_PARTICLES_HIT = 40 + #Fallen Down Block Break Per Tick + #Range: 0 ~ 100000000 + FALLEN_DOWN_BLOCK_BREAK_PER_TICK = 800 + #Fallen Down Radius + #Range: 0 ~ 100000000 + FALLEN_DOWN_RADIUS = 30 + #Fallen Down Mana Per Tick + #Range: 0 ~ 100000000 + FALLEN_DOWN_MANA_COST = 2000 + #Fallen Down Beam Mode Blocks In + FALLEN_DOWN_BEAM_IN = ["minecraft:grass_block", "minecraft:sand", "minecraft:red_sand", "minecraft:cobblestone", "minecraft:clay", "minecraft:ice", "minecraft:packed_ice", "minecraft:blue_ice"] + #Fallen Down Beam Mode Blocks Out + FALLEN_DOWN_BEAM_OUT = ["minecraft:dirt", "minecraft:glass", "minecraft:red_stained_glass", "minecraft:stone", "minecraft:terracotta", "minecraft:water", "minecraft:water", "minecraft:water"] + #Fallen Down Beam Damage + #Range: 0.0 ~ 1.0E9 + FALLEN_DOWN_BEAM_DAMAGE = 2.0 + #Fallen Down Beam Growth + #Range: 0.0 ~ 1.0E9 + FALLEN_DOWN_BEAM_GROWTH = 0.12 + #Geas Mana Cost + #Range: 0 ~ 100000000 + GEAS_MANA_COST = 30 + #Geas Mana Regen + #Range: 0.0 ~ 1.0E8 + MANA_REGEN_PER_GEAS = 3.0 + +[kodoku] + #mahoutsukai.config.kodoku_tool_divisor.comment + #Range: 0 ~ 100000000 + KODOKU_TOOL_DIVISOR = 10 + #mahoutsukai.config.kodoku_fire_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_FIRE_CHANCE = 0.1 + #mahoutsukai.config.kodoku_trip_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_MISFORTUNE_TRIP_CHANCE = 4.0E-5 + #mahoutsukai.config.kodoku_hunger_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_HUNGER_CHANCE = 0.15 + #mahoutsukai.config.kodoku_hop_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_HOP_CHANCE = 0.08 + #mahoutsukai.config.kodoku_teleport_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_TELEPORT_CHANCE = 0.08 + #mahoutsukai.config.kodoku_lightning_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_MISFORTUNE_LIGHTNING_CHANCE = 2.0E-5 + #mahoutsukai.config.kodoku_splash_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_SPLASH_CHANCE = 0.05 + #mahoutsukai.config.kodoku_drop_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_MISFORTUNE_DROP_CHANCE = 7.142857142857143E-5 + #mahoutsukai.config.kodoku_glow_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_GLOW_CHANCE = 0.02 + #mahoutsukai.config.kodoku_confuse_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_CONFUSE_CHANCE = 0.01 + #mahoutsukai.config.kodoku_aggro_chance.comment + #Range: 0.0 ~ 1.0 + KODOKU_MISFORTUNE_AGGRO_CHANCE = 4.0E-4 + #mahoutsukai.config.kodoku_loot_divisor.comment + #Range: 0 ~ 100000000 + KODOKU_LOOT_DIVISOR = 10 + +[other] + #mahoutsukai.config.magic_circles.comment + MAGIC_CIRCLES = [] + #mahoutsukai.config.projector_rot_speed.comment + #Range: 0.0 ~ 1000000.0 + PROJECTOR_DEFAULT_ROTATION_SPEED = 1.0 + #GameStages Enabled + GAMESTAGES_ENABLED = false + #How much this circuit can hold + #Range: 0 ~ 100000000 + MANA_CIRCUIT_MAGITECH_CAPACITY = 100000 + #How much max mana increases every time it does + #Range: 0 ~ 100000000 + MANA_INCREASE = 1 + #If false, scrolls will not disappear in creative. + CREATIVE_MODE_SPELLS = false + #How much mana fits into an attuned diamond + #Range: 0 ~ 100000000 + ATTUNED_DIAMOND_CAPACITY = 10000 + #Percentage of max mana players get back by sleeping + #Range: 0.0 ~ 1.0E8 + MANA_RECOVERY_SLEEP = 0.5 + #mahoutsukai.config.magic_runes.comment + MAGIC_RUNES = [] + #If true, only allow blood circles on solid blocks + BLOOD_CIRCLE_SOLID_ONLY = true + #The block range value for any spells which use the player's line of sight + #Range: 0 ~ 100000000 + GLOBAL_LOOK_RANGE = 100 + #How far away things can be from a Mana Circuit to use it + #Range: 0 ~ 100000000 + MANA_CIRCUIT_RANGE = 10 + #How much durability the Mystic Code - First Sorcery item has + #Range: 0 ~ 100000000 + FIRST_SORCERY_DURABILITY = 50 + #If damage is flat, this value is dealt to player's health. If not flat, this value is multiplied by mana used and rounded up. + #Range: 0.0 ~ 1.0E8 + MAGIC_DAMAGE_VALUE = 1.0 + #mahoutsukai.config.creative_mana.comment + CREATIVE_IGNORES_MANA_COSTS = true + #How much mana fits into an attuned emerald + #Range: 0 ~ 100000000 + ATTUNED_EMERALD_CAPACITY = 5000 + #How high a player's personal mana can go + #Range: 0 ~ 100000000 + MAX_MANA_CAP = 200000 + #mahoutsukai.config.projector_off_spin.comment + PROJECTOR_CONTINUES_ROTATE_WHEN_OFF = false + #If Magic damages the player, should it be flat damage or based on mana used + MAGIC_DAMAGE_FLAT = true + #What type of damage magic damage inflicts. + MAGIC_DAMAGE_GENERIC = true + #How much mana is spent before it increases + #Range: 0 ~ 100000000 + MANA_UP_COUNTER = 100 + #How much this circuit can hold + #Range: 0 ~ 100000000 + MANA_CIRCUIT_CAPACITY = 100000 + #Should magic damage the player + MAGIC_DAMAGES_PLAYER = false + #How much mana players regen per tick + #Range: 0 ~ 100000000 + MANA_REGEN_PER_TICK = 1 + #How much mana regen scaled with max mana is added to player regen + #Range: 0.0 ~ 1.0E7 + MANA_ADDED_SCALING_REGEN_PER_TICK = 0.0 + #Scaling factor for how much hunger affects regen + #Range: -1.0E7 ~ 1.0E7 + MANA_REGEN_HUNGER_FACTOR = 1.0 + #Mystic Code First Sorcery Blacklist + MYSTIC_CODE_FIRST_SORCERY_BLACKLIST = ["mahoutsukai:scroll_boundary_drain_life"] + #Mystic Code Enchant Blacklist + MYSTIC_CODE_ENCHANT_BLACKLIST = [] + #Spell Creation Blacklist + SPELL_BLACKLIST = [] + diff --git a/kubejs/server_scripts/RBees/valid_apiary.js b/kubejs/server_scripts/RBees/valid_apiary.js index 992db732..8a0d624d 100644 --- a/kubejs/server_scripts/RBees/valid_apiary.js +++ b/kubejs/server_scripts/RBees/valid_apiary.js @@ -88,7 +88,7 @@ const whitelistVA = [ /quark:.*shingles/, /quark:.*prismarine/, /quark:.*soul_sandstone/, - /quark:.*verticle_slab/, + /quark:.*vertical_slab/, /quark:.*duskbound.*/, 'quark:lit_lamp', 'quark:blaze_lantern', diff --git a/kubejs/server_scripts/recipes.js b/kubejs/server_scripts/recipes.js index a993f701..2f6194e4 100644 --- a/kubejs/server_scripts/recipes.js +++ b/kubejs/server_scripts/recipes.js @@ -1,1314 +1,1306 @@ -onEvent('recipes', e => { - function energize(ingredient, result, rCount, power) { - e.recipes.powah.energizing({ - ingredients: ingredient, - energy: power, - result: { - item: result, - count: rCount - } - }) - } - - function pedestalCrush(result, count, ingred, type) { - const obj = {} - obj.result = { - item: result, - count: count - } - obj.ingredient = type == 1 ? { tag: ingred } : { item: ingred } - - e.recipes.pedestals.pedestal_crushing(obj) - } - - function pedestalSaw(result, count, ingred, type) { - const obj = {} - obj.result = { - item: result, - count: count - } - obj.ingredient = type == 1 ? { tag: ingred } : { item: ingred } - - e.recipes.pedestals.pedestal_sawing(obj) - } - - function multicrush(output, input) { - e.recipes.mekanism.crushing(output, input) - e.recipes.create.crushing(output, input) - e.recipes.immersiveengineering.crusher(output, input) - e.recipes.thermal.pulverizer(output, input) - } - - function crush(output, input) { - e.recipes.mekanism.crushing((output), input) - } - - function enrich(output, input) { - e.recipes.mekanism.enriching((output), input) - } - - function mainfusion(output, middle, item1, item2, item3, item4, item5, item6, item7, item8) { - e.recipes.mysticalagriculture.infusion({ - input: { - item: middle - }, - ingredients: [{ - item: item1 - }, - { - item: item2 - }, - { - item: item3 - }, - { - item: item4 - }, - { - item: item5 - }, - { - item: item6 - }, - { - item: item7 - }, - { - item: item8 - } - ], - result: { - item: output - } - }) - } - - function parapet(woodTypes) { - woodTypes.forEach(woodType => { - e.remove({type: 'minecraft:crafting_shaped', output: `mcwwindows:${woodType}_log_parapet`}) - e.shaped(`4x mcwwindows:${woodType}_log_parapet`, [ - 'SLS' - ], { - S: '#forge:rods/wooden', - L: `minecraft:stripped_${woodType}_log` - }).id(`kubejs:parapet_${woodType}`) - }) - } - - function plateCasting(material, coolingTime, result) { - e.custom( - { - "type": "tconstruct:casting_table", - "conditions": [ - { - "value": { - "tag": `forge:plates/${material}`, - "type": "forge:tag_empty" - }, - "type": "forge:not" - } - ], - "cast": { - "tag": "tconstruct:casts/multi_use/plate" - }, - "fluid": { - "name": `tconstruct:molten_${material}`, - "amount": 144 - }, - "result": { - "item": result - }, - "cooling_time": coolingTime - } - ) - e.custom( - { - "type": "tconstruct:casting_table", - "conditions": [ - { - "value": { - "tag": `forge:plates/${material}`, - "type": "forge:tag_empty" - }, - "type": "forge:not" - } - ], - "cast": { - "tag": "tconstruct:casts/single_use/plate" - }, - "cast_consumed": true, - "fluid": { - "name": `tconstruct:molten_${material}`, - "amount": 144 - }, - "result": { - "item": result - }, - "cooling_time": coolingTime - } - ) - } - - function platePressing(material, result) { - e.custom( - { - "type": "immersiveengineering:metal_press", - "mold": { - "item": "immersiveengineering:mold_plate" - }, - "result": { - "item": result - }, - "conditions": [ - { - "value": { - "tag": `forge:ingots/${material}`, - "type": "forge:tag_empty" - }, - "type": "forge:not" - }, - { - "value": { - "tag": `forge:plates/${material}`, - "type": "forge:tag_empty" - }, - "type": "forge:not" - } - ], - "input": { - "tag": `forge:ingots/${material}` - }, - "energy": 2400 - } - ) - } - - function plateProcessing(types) { - types.forEach(([material, type, coolingTime, result]) => { - result = result ? result : `thermal:${material}_plate` - if (material == 'lapis') { - e.recipes.create.pressing(result, `#forge:storage_blocks/${material}`) - e.recipes.thermal.press(result, `#forge:storage_blocks/${material}`) - e.shapeless(result, [`#forge:storage_blocks/${material}`, 'immersiveengineering:hammer']).id(`kubejs:${material}_plate`) - return - } - if (type.includes(0)) plateCasting(material, coolingTime, result) // casting missing - if (type.includes(1)) e.recipes.create.pressing(result, `#forge:ingots/${material}`) // create missing - if (type.includes(2)) e.recipes.thermal.press(result, `#forge:ingots/${material}`) // thermal missing - if (type.includes(3)) e.shapeless(result, [`#forge:ingots/${material}`, 'immersiveengineering:hammer']).id(`kubejs:${material}_plate`) // crafting missing - if (type.includes(4)) platePressing(material, result) // immersiveengineering missing - }) - } - - function essenceCircle(result, count, name) { - e.shaped(item.of(result, count), [ - 'aaa', - 'a a', - 'aaa' - ], { - a: 'mysticalagriculture:' + name + '_essence' - }).id(`kubejs:${name}_nugget`) - } - - // Plate Processing Additions - plateProcessing([ - ['aluminum', [1, 2], 47, 'immersiveengineering:plate_aluminum'], - ['steel', [1, 2], null, 'immersiveengineering:plate_steel'], - ['uranium', [1], null, 'immersiveengineering:plate_uranium'], - ['iron', [0], 60], - ['gold', [0], 57], - ['copper', [0], 50], - ['tin', [0, 1, 3], 39], - ['lead', [0, 1], 43], - ['silver', [0, 1], 60], - ['nickel', [0, 1], 65], - ['bronze', [0, 1, 3], 57], - ['electrum', [0, 1], 59], - ['invar', [0, 1, 3], 63], - ['constantan', [0, 1], 64], - ['signalum', [1, 3, 4]], - ['lumium', [1, 3, 4]], - ['enderium', [1, 3, 4]], - ['lapis', null, null, 'create:lapis_sheet'], - ['brass', [2, 3], 57, 'create:brass_sheet'] - ]) - - - parapet([ - 'oak', - 'spruce', - 'birch', - 'jungle', - 'acacia', - 'dark_oak' - ]) - - //Smelting - e.smelting('appliedenergistics2:certus_quartz_crystal', '#forge:ores/certus_quartz').xp(1).id('kubejs:smelting/certus') - e.smelting('alltheores:platinum_ingot', 'create:crushed_platinum_ore').xp(1).id('kubejs:smelting/create_platinum') - e.smelting('minecraft:glass', '#forge:sand').xp(.1).id('kubejs:smelting/sand') - e.smelting('minecraft:leather', 'kubejs:rotten_leather').xp(.5).id('kubejs:smelting/leather') - e.smoking('minecraft:leather', 'kubejs:rotten_leather').xp(.5).id('kubejs:smoking/leather') - e.smelting('allthemodium:vibranium_allthemodium_alloy_ingot', 'allthemodium:vibranium_allthemodium_alloy_dust').xp(.5).id('kubejs:smelting/vibranium_allthemodium_alloy_dust') - e.smelting('allthemodium:unobtainium_allthemodium_alloy_ingot', 'allthemodium:unobtainium_allthemodium_alloy_dust').xp(.5).id('kubejs:smelting/unobtainium_allthemodium_alloy_dust') - e.smelting('allthemodium:unobtainium_vibranium_alloy_ingot', 'allthemodium:unobtainium_vibranium_alloy_dust').xp(.5).id('kubejs:smelting/unobtainium_vibranium_alloy_dust') - //Tinkers Quick Fix - e.shaped('tconstruct:smeltery_controller', [ - 'CCC', - 'CSC', - 'CCC' - ], { - C: '#forge:ingots/copper', - S: 'tconstruct:seared_melter' - }) - //Misc shaped recipes - e.shaped('pamhc2foodcore:rolleritem', [ - 'SLS' - ], { - S: '#forge:rods/wooden', - L: `#minecraft:logs_unstripped` - }).id(`kubejs:pam_roller_unstripped`) - e.shaped('computercraft:turtle_advanced', [ - 'III', - 'ICI', - 'IAI' - ], { - I: '#forge:ingots/gold', - C: 'computercraft:computer_advanced', - A: '#forge:ingots/allthemodium' - }).id(`kubejs:turtle_advanced`) - e.shaped('computercraft:turtle_normal', [ - 'III', - 'ICI', - 'IAI' - ], { - I: '#forge:ingots/iron', - C: 'computercraft:computer_normal', - A: '#forge:ingots/allthemodium' - }).id(`kubejs:turtle_normal`) - e.shaped('minecraft:totem_of_undying', [ - ' E ', - 'GVG', - ' G ' - ], { - E: 'compressium:emerald_3', - G: '#forge:storage_blocks/gold', - V: 'minecraft:villager_spawn_egg' - }).id(`kubejs:totem_of_undying`) - e.shaped(item.of('enviromats:alabaster_magenta', 8), [ - 'AAA', - 'AMA', - 'AAA' - ], { - A: '#forge:alabaster', - M: '#forge:dyes/magenta' - }).id(`kubejs:magenta_alabaster`) - e.shaped(item.of('minecraft:ladder', 4), [ - 'S S', - 'SPS', - 'S S' - ], { - S: '#forge:rods', - P: '#minecraft:planks' - }).id(`kubejs:ladder`) - e.shaped('minecraft:hopper', [ - 'ILI', - 'ILI', - ' I ' - ], { - 'L': '#minecraft:logs', - 'I': '#forge:ingots/iron' - }).id(`kubejs:hopper`) - e.shaped('16x minecraft:stick', [ - 'L', - 'L' - ], { - 'L': '#minecraft:logs' - }).id(`kubejs:sticks`) - e.shaped('4x appliedenergistics2:sky_stone_block', [ - 'BSB', - 'SBS', - 'BSB' - ], { - 'S': 'minecraft:stone', - 'B': 'minecraft:blackstone' - }).id(`kubejs:sky_stone_brick`) - e.shaped('appliedenergistics2:calculation_processor_press', [ - 'CFC', - 'FVF', - 'PFP' - ], { - 'C': 'appliedenergistics2:purified_certus_quartz_crystal', - 'F': '#forge:ingots/fluix_steel', - 'V': '#forge:storage_blocks/vibranium', - 'P': 'appliedenergistics2:fluix_pearl' - }).id(`kubejs:calculation_press`) - e.shaped('appliedenergistics2:logic_processor_press', [ - 'BFB', - 'FVF', - 'CFC' - ], { - 'B': '#forge:ingots/blaze_gold', - 'F': '#forge:ingots/fluix_steel', - 'V': '#forge:storage_blocks/vibranium', - 'C': '#forge:ingots/rose_gold' - }).id(`kubejs:logic_press`) - e.shaped('appliedenergistics2:engineering_processor_press', [ - 'DFD', - 'FVF', - 'DFD' - ], { - 'D': '#forge:gems/mana_diamond', - 'F': '#forge:ingots/fluix_steel', - 'V': '#forge:storage_blocks/vibranium' - }).id(`kubejs:engineering_press`) - e.shaped('appliedenergistics2:silicon_press', [ - 'WFW', - 'FVF', - 'WFW' - ], { - 'W': '#forge:silicon', - 'F': '#forge:ingots/fluix_steel', - 'V': '#forge:storage_blocks/vibranium' - }).id(`kubejs:silicon_press`) - e.shaped('biomesoplenty:flesh', [ - 'FFF', - 'FFF', - 'FFF' - ], { - 'F': 'minecraft:rotten_flesh', - }).id(`kubejs:bop_flesh`) - e.shaped('extrastorage:iron_crafter', [ - 'B B', - 'PCP', - 'B B' - ], { - B: '#forge:storage_blocks/iron', - P: 'refinedstorage:improved_processor', - C: '#refinedstorage:crafter' - }).id(`kubejs:iron_crafter`) - e.shaped(`creativecrafter:creative_crafter`, [ - `BUB`, - `PCP`, - `BUB` - ], { - B: `#forge:storage_blocks/netherite`, - P: `extradisks:withering_processor`, - C: `extrastorage:netherite_crafter`, - U: `#forge:ingots/unobtainium` - }); - e.shaped('xreliquary:fertile_lily_pad', [ - 'ESE', - 'FLF', - 'ESE' - ], { - E: 'xreliquary:fertile_essence', - S: 'mysticalagriculture:supremium_growth_accelerator', - L: 'minecraft:lily_pad', - F: 'mysticalagriculture:mystical_fertilizer' - }).id(`kubejs:fertile_lily_pad`) - e.shaped('rftoolsbuilder:builder', [ - 'aea', - 'rmr', - 'ara' - ], { - 'a': '#forge:nuggets/allthemodium', - 'e': '#forge:ender_pearls', - 'r': '#forge:storage_blocks/redstone', - 'm': 'rftoolsbase:machine_frame' - }).id(`kubejs:builder`) - e.shaped('rats:pied_wool', [ - 'YGY', - 'GYG', - 'YGY' - ], { - 'Y': 'minecraft:yellow_wool', - 'G': 'minecraft:green_wool' - }).id(`kubejs:pied_wool`) - e.shaped('quarryplus:solidquarry', [ - 'FFF', - 'DGD', - 'AAA' - ], { - 'F': 'minecraft:furnace', - 'D': 'minecraft:diamond_pickaxe', - 'G': '#forge:storage_blocks/gold', - 'A': '#forge:nuggets/allthemodium' - }).id(`kubejs:solidquarry`) - e.shaped('quarryplus:workbenchplus', [ - 'III', - 'GDG', - 'AAA' - ], { - 'I': '#forge:storage_blocks/iron', - 'G': '#forge:storage_blocks/gold', - 'D': '#forge:storage_blocks/diamond', - 'A': '#forge:nuggets/allthemodium' - }).id(`kubejs:workbenchplus`) - e.shaped('mininggadgets:upgrade_empty', [ - 'RAL', - 'DGD', - 'LAR' - ], { - 'L': '#forge:storage_blocks/lapis', - 'R': '#forge:storage_blocks/redstone', - 'D': '#forge:gems/diamond', - 'A': '#forge:nuggets/allthemodium', - 'G': 'minecraft:glass_pane' - }).id(`kubejs:mininggadgets_upgrade`) - e.shaped(item.of('minecraft:grass', 12), [ - ' E ', - 'E E', - ' ' - ], { - 'E': 'mysticalagriculture:nature_essence' - }).id('kubejs:grass') - essenceCircle('allthemodium:allthemodium_nugget', 1, 'allthemodium') - essenceCircle('allthemodium:vibranium_nugget', 1, 'vibranium') - essenceCircle('allthemodium:unobtainium_nugget', 1, 'unobtainium') - essenceCircle('silentgear:azure_silver_ingot', 6, 'azure_silver') - essenceCircle('silentgear:azure_electrum_ingot', 4, 'azure_electrum') - essenceCircle('silentgear:crimson_iron_ingot', 6, 'crimson_iron') - essenceCircle('mekanism:fluorite_gem', 12, 'fluorite') - e.shaped('mysticalagriculture:unattuned_augment', [ - 'PMP', - 'AMA', - 'PMP' - ], { - 'P': 'mysticalagriculture:prosperity_ingot', - 'M': 'botania:manasteel_ingot', - 'A': '#forge:nuggets/allthemodium' - }).id(`kubejs:unattuned_augment`) - e.shaped('mekanism:digital_miner', [ - 'AUA', - 'LRL', - 'TST' - ], { - 'L': 'mekanism:logistical_sorter', - 'R': 'mekanism:robit', - 'T': 'mekanism:teleportation_core', - 'A': '#mekanism:alloys/atomic', - 'S': 'mekanism:steel_casing', - 'U': '#forge:ingots/unobtainium' - }).id(`kubejs:digital_miner`) - e.shaped('mekanism:atomic_disassembler', [ - 'RER', - 'RUR', - ' V ' - ], { - 'E': 'mekanism:energy_tablet', - 'R': '#mekanism:alloys/reinforced', - 'U': '#forge:circuits/ultimate', - 'V': '#forge:ingots/vibranium' - }).id(`kubejs:atomic_disassembler`) - e.shaped('mekanismgenerators:wind_generator', [ - ' O ', - 'OCO', - 'EBE' - ], { - 'E': 'mekanism:energy_tablet', - 'C': 'mekanismgenerators:electromagnetic_coil', - 'B': '#forge:circuits/basic', - 'O': '#forge:ingots/osmium' - }).id(`kubejs:wind_generator`) - e.shaped('ironjetpacks:diamond_cell', [ - ' R ', - 'TCT', - ' R ' - ], { - 'R': '#forge:dusts/redstone', - 'C': 'ironjetpacks:advanced_coil', - 'T': '#forge:gems/diamond' - }).id(`kubejs:diamond_cell`) - e.shaped('ironjetpacks:diamond_thruster', [ - 'TAT', - 'ACA', - 'TFT' - ], { - 'F': 'minecraft:furnace', - 'A': 'ironjetpacks:advanced_coil', - 'C': 'ironjetpacks:diamond_cell', - 'T': '#forge:gems/diamond' - }).id(`kubejs:diamond_thruster`) - e.shaped('ironjetpacks:diamond_capacitor', [ - 'RCR', - 'RCR', - 'RCR' - ], { - 'R': '#forge:gems/diamond', - 'C': 'ironjetpacks:diamond_cell' - }).id(`kubejs:diamond_capacitor`) - e.shaped('ironjetpacks:diamond_jetpack', [ - 'DCD', - 'DJD', - 'TRT' - ], { - 'D': '#forge:gems/diamond', - 'C': 'ironjetpacks:diamond_capacitor', - 'J': ['ironjetpacks:steel_jetpack', 'ironjetpacks:electrum_jetpack', 'ironjetpacks:invar_jetpack'], - 'T': 'ironjetpacks:diamond_thruster', - 'R': 'angelring:itemdiamondring' - }).id(`kubejs:diamond_jetpack`) - e.shaped('ironjetpacks:platinum_cell', [ - ' R ', - 'TCT', - ' R ' - ], { - 'R': '#forge:dusts/redstone', - 'C': 'ironjetpacks:advanced_coil', - 'T': '#forge:ingots/platinum' - }).id(`kubejs:platinum_cell`) - e.shaped('ironjetpacks:platinum_thruster', [ - 'TAT', - 'ACA', - 'TFT' - ], { - 'F': 'minecraft:furnace', - 'A': 'ironjetpacks:advanced_coil', - 'C': 'ironjetpacks:platinum_cell', - 'T': '#forge:ingots/platinum' - }).id(`kubejs:platinum_thruster`) - e.shaped('ironjetpacks:platinum_capacitor', [ - 'RCR', - 'RCR', - 'RCR' - ], { - 'R': '#forge:ingots/platinum', - 'C': 'ironjetpacks:platinum_cell' - }).id(`kubejs:platinum_capacitor`) - e.shaped('ironjetpacks:platinum_jetpack', [ - 'PCP', - 'PJP', - 'TRT' - ], { - 'P': '#forge:ingots/platinum', - 'C': 'ironjetpacks:platinum_capacitor', - 'J': ['ironjetpacks:steel_jetpack', 'ironjetpacks:electrum_jetpack', 'ironjetpacks:invar_jetpack'], - 'T': 'ironjetpacks:platinum_thruster', - 'R': 'angelring:itemdiamondring' - }).id(`kubejs:platinum_jetpack`) - e.shaped('pamhc2foodcore:fruitpunchitem', [ - 'FFF', - 'FBF', - 'FFF' - ], { - 'F': '#forge:fruits', - 'B': 'pamhc2foodcore:applejuiceitem' - }).id(`kubejs:fruitpunchitem`) - e.shaped('pamhc2foodcore:applejuiceitem', [ - 'FFF', - 'FBF', - 'FFF' - ], { - 'F': 'minecraft:apple', - 'B': 'minecraft:glass_bottle' - }).id(`kubejs:applejuiceitem`) - e.shaped('pamhc2foodcore:melonjuiceitem', [ - 'FFF', - 'FBF', - 'FFF' - ], { - 'F': 'minecraft:melon_slice', - 'B': 'minecraft:glass_bottle' - }).id(`kubejs:melonjuiceitem`) - e.shaped('pamhc2foodcore:sweetberryjuiceitem', [ - 'FFF', - 'FBF', - 'FFF' - ], { - 'F': 'minecraft:sweet_berries', - 'B': 'minecraft:glass_bottle' - }).id(`kubejs:sweetberryhuiceitem`) - e.shaped('pamhc2foodcore:p8juiceitem', [ - 'FFF', - 'FBF', - 'FFF' - ], { - 'F': '#forge:vegetables', - 'B': 'minecraft:glass_bottle' - }).id(`kubejs:p8juiceitem`) - e.shaped('angelring:itemdiamondring', [ - 'DND', - 'VEU', - 'DAD' - ], { - 'D': '#forge:storage_blocks/diamond', - 'N': '#forge:storage_blocks/netherite', - 'V': '#forge:storage_blocks/vibranium', - 'U': '#forge:storage_blocks/unobtainium', - 'A': '#forge:storage_blocks/allthemodium', - 'E': 'minecraft:elytra' - }).id(`kubejs:diamondring`) - e.shaped('angelring:itemring', [ - 'CAC', - 'ARA', - 'DGD' - ], { - 'C': 'botania:pixie_dust', - 'A': '#forge:storage_blocks/terrasteel', - 'R': 'angelring:itemdiamondring', - 'D': '#forge:nether_stars', - 'G': 'botania:gaia_ingot' - }).id(`kubejs:itemring`) - // - e.shaped('3x forbidden_arcanus:iron_chain', [ - 'N ', - ' I ', - ' N' - ], { - 'N': '#forge:nuggets/iron', - 'I': '#forge:ingots/iron' - }).id(`kubejs:iron_chain`) - e.shaped('entangled:block', [ - 'UEU', - 'ECE', - 'UEU' - ], { - 'U': '#forge:ingots/unobtainium', - 'E': '#forge:ender_pearls', - 'C': 'minecraft:ender_chest' - }).id(`kubejs:entangled_block`) - e.shaped('entangled:item', [ - ' EC', - ' UE', - 'U ' - ], { - 'U': '#forge:ingots/unobtainium', - 'E': '#forge:ender_pearls', - 'C': 'minecraft:ender_chest' - }).id(`kubejs:entanled_item`) - e.shaped('refinedstorage:4096k_fluid_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'refinedstorage:1024k_fluid_storage_part', - 'b': 'minecraft:bucket', - 'n': '#forge:nuggets/allthemodium' - }).id(`kubejs:4096k_fluid_storage_part`) - e.shaped('extradisks:4096k_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:1024k_storage_part', - 'b': '#forge:dusts/redstone', - 'n': '#forge:nuggets/allthemodium' - }).id(`kubejs:4096k_storage_part`) - e.shaped('extradisks:16384k_fluid_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'refinedstorage:4096k_fluid_storage_part', - 'b': 'minecraft:bucket', - 'n': '#forge:ingots/allthemodium' - }).id(`kubejs:16384k_fluid_storage_part`) - e.shaped('extradisks:16384k_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:4096k_storage_part', - 'b': '#forge:dusts/redstone', - 'n': '#forge:ingots/allthemodium' - }).id(`kubejs:16384k_storage_part`) - e.shaped('extradisks:65536k_fluid_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:16384k_fluid_storage_part', - 'b': 'minecraft:bucket', - 'n': '#forge:ingots/allthemodium' - }).id(`kubejs:65536k_fluid_storage_part`) - e.shaped('extradisks:65536k_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:16384k_storage_part', - 'b': '#forge:dusts/redstone', - 'n': '#forge:ingots/allthemodium' - }).id(`kubejs:65536k_storage_part`) - e.shaped('extradisks:262144k_fluid_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:65536k_fluid_storage_part', - 'b': 'minecraft:bucket', - 'n': '#forge:ingots/vibranium' - }).id(`kubejs:262144k_fluid_storage_part`) - e.shaped('extradisks:262144k_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:65536k_storage_part', - 'b': '#forge:dusts/redstone', - 'n': '#forge:ingots/vibranium' - }).id(`kubejs:262144k_storage_part`) - e.shaped('extradisks:1048576k_fluid_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:262144k_fluid_storage_part', - 'b': 'minecraft:bucket', - 'n': '#forge:ingots/unobtainium' - }).id(`kubejs:1048576k_fluid_storage_part`) - e.shaped('extradisks:1048576k_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:262144k_storage_part', - 'b': '#forge:dusts/redstone', - 'n': '#forge:ingots/unobtainium' - }).id(`kubejs:1048576k_storage_part`) - e.shaped('extradisks:infinite_fluid_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:1048576k_fluid_storage_part', - 'b': 'minecraft:bucket', - 'n': '#forge:ingots/unobtainium' - }).id(`kubejs:infinite_fluid_part`) - e.shaped('extradisks:infinite_storage_part', [ - 'ana', - 'fbf', - 'afa' - ], { - 'a': 'refinedstorage:advanced_processor', - 'f': 'extradisks:1048576k_storage_part', - 'b': '#forge:dusts/redstone', - 'n': '#forge:ingots/unobtainium' - }).id(`kubejs:infinite_storage_part`) - e.shaped('2x solarflux:sp_custom_allthemodium', [ - 'PPP', - 'SAS', - 'SDS' - ], { - S: 'solarflux:sp_5', - A: '#forge:storage_blocks/allthemodium', - D: '#forge:storage_blocks/diamond', - P: 'solarflux:photovoltaic_cell_4' - }).id(`kubejs:allthemodium_solar`) - e.shaped('2x solarflux:sp_custom_vibranium', [ - 'PPP', - 'SAS', - 'SAS' - ], { - S: 'solarflux:sp_custom_allthemodium', - A: '#forge:storage_blocks/vibranium', - P: 'solarflux:photovoltaic_cell_5' - }).id(`kubejs:vibranium_solar`) - e.shaped('2x solarflux:sp_custom_unobtainium', [ - 'PPP', - 'SAS', - 'SAS' - ], { - S: 'solarflux:sp_custom_vibranium', - A: '#forge:storage_blocks/unobtainium', - P: 'solarflux:photovoltaic_cell_6' - }).id(`kubejs:unobtainium_solar`) - //Minecraft - e.shaped('minecraft:dragon_egg', [ - 'SSS', - 'SDS', - 'SSS' - ], { - S: 'mysticalagradditions:dragon_egg_chunk', - D: 'atmadditions:dragon_soul' - }) - //Tombstone - e.shaped('tombstone:soul_receptacle', [ - 'ABA', - 'CDC', - 'AEA' - ], { - A: 'tombstone:dust_of_vanishing', - B: 'tombstone:ankh_of_pray', - C: 'minecraft:totem_of_undying', - D: 'tombstone:familiar_receptacle', - E: 'tombstone:voodoo_poppet' - }) - //Pipez - e.shaped('pipez:infinity_upgrade', [ - 'ABA', - 'BCB', - 'ABA' - ], { - A: 'allthemodium:unobtainium_ingot', - B: 'compressium:redstone_4', - C: 'pipez:ultimate_upgrade' - }) - //MA - e.shaped('8x astralsorcery:aquamarine', [ - 'AAA', - 'A A', - 'AAA' - ], { - A: 'mysticalagriculture:aquamarine_essence' - }).id(`kubejs:aquamarine_essence`) - //Cable Tiers changes - const caTypes = [ - `importer`, - `exporter`, - `constructor`, - `destructor` - ] - function caTier(tier, corners, processor, cables) { - caTypes.forEach(caType => { - e.shaped(`cabletiers:${tier}_${caType}`, [ - `a a`, - `bcb`, - `a a` - ], { - a: corners, - b: processor, - c: cables + caType - }) - }) - } - caTier(`elite`, `#forge:storage_blocks/iron`, `refinedstorage:improved_processor`, `refinedstorage:`); - caTier(`ultra`, `#forge:storage_blocks/diamond`, `refinedstorage:advanced_processor`, `cabletiers:elite_`); - caTier(`creative`, `#forge:storage_blocks/netherite`, `extradisks:withering_processor`, `cabletiers:ultra_`); - //Creative Transmitter - e.shaped('creativewirelesstransmitter:creative_wireless_transmitter', [ - 'ITI', - 'ICI', - 'IDI' - ], { - I: 'allthemodium:unobtainium_ingot', - D: 'rsinfinitybooster:dimension_card', - C: 'refinedstorage:machine_casing', - T: 'refinedstorage:wireless_transmitter' - }).id(`kubejs:creative_wireless_transmitter`) - //Mekasuit - e.shaped(Item.of('mekanism:mekasuit_helmet', { - HideFlags: 2 - }), [ - 'HCH', - 'HUH', - 'PIP' - ], { - H: 'mekanism:hdpe_sheet', - C: 'mekanism:ultimate_control_circuit', - P: 'mekanism:pellet_polonium', - I: 'mekanism:basic_induction_cell', - U: 'allthemodium:unobtainium_helmet' - }).id(`kubejs:mekasuit_helmet`) - e.shaped(Item.of('mekanism:mekasuit_bodyarmor', { - HideFlags: 2 - }), [ - 'HCH', - 'HUH', - 'PIP' - ], { - H: 'mekanism:hdpe_sheet', - C: 'mekanism:ultimate_control_circuit', - P: 'mekanism:pellet_polonium', - I: 'mekanism:basic_induction_cell', - U: 'allthemodium:unobtainium_chestplate' - }).id(`kubejs:mekasuit_bodyarmor`) - e.shaped(Item.of('mekanism:mekasuit_pants', { - HideFlags: 2 - }), [ - 'HCH', - 'HUH', - 'PIP' - ], { - H: 'mekanism:hdpe_sheet', - C: 'mekanism:ultimate_control_circuit', - P: 'mekanism:pellet_polonium', - I: 'mekanism:basic_induction_cell', - U: 'allthemodium:unobtainium_leggings' - }).id(`kubejs:mekasuit_pants`) - e.shaped(Item.of('mekanism:mekasuit_boots', { - HideFlags: 2 - }), [ - 'HCH', - 'HUH', - 'PIP' - ], { - H: 'mekanism:hdpe_sheet', - C: 'mekanism:ultimate_control_circuit', - P: 'mekanism:pellet_polonium', - I: 'mekanism:basic_induction_cell', - U: 'allthemodium:unobtainium_boots' - }).id(`kubejs:mekasuit_boots`) - - //Misc Shapeless Recipes - e.shapeless('4x minecraft:clay_ball', 'minecraft:clay').id(`kubejs:clay`) - e.shapeless('4x minecraft:quartz', 'minecraft:quartz_block').id(`kubejs:quartz`) - e.shapeless('minecraft:chest', '#forge:chests/wooden') - //e.shapeless(item.of('bluepower:blue_alloy_ingot', 4), ['#forge:dusts/teslatite','#forge:dusts/teslatite','#forge:dusts/teslatite','#forge:ingots/silver']) - //e.shapeless('kubejs:rotten_leather', ['minecraft:rotten_flesh', 'minecraft:rotten_flesh', 'minecraft:rotten_flesh']) - e.shapeless('kubejs:rotten_leather', '3x minecraft:rotten_flesh').id(`kubejs:rotten_leather`) - e.shapeless('appliedenergistics2:interface', 'appliedenergistics2:cable_interface').id(`kubejs:ae_interface`) - - // conversion recipe for solar panels which were removed from the game - e.shapeless('solarflux:sp_custom_allthemodium', 'solarflux:sp_6').id('kubejs:solar_conversion/tier_6') - e.shapeless('solarflux:sp_custom_vibranium', 'solarflux:sp_7').id('kubejs:solar_conversion/tier_7') - e.shapeless('solarflux:sp_custom_unobtainium', 'solarflux:sp_8').id('kubejs:solar_conversion/tier_8') - - //Powah recipes - e.shaped('powah:thermoelectric_plate', [ - 'BAB', - 'ACA', - 'BAB' - ], { - B: '#forge:rods/blaze', - A: 'mekanism:alloy_infused', - C: 'powah:capacitor_basic_tiny' - }).id('kubejs:thermoelectric_plate') - - energize([{ - tag: 'forge:storage_blocks/iron' - }, { - tag: 'forge:storage_blocks/gold' - }], 'powah:energized_steel_block', 2, "90000") - energize([{ - item: 'botania:blaze_block' - }], 'powah:blazing_crystal_block', 1, "810000") - energize([{ - tag: 'forge:storage_blocks/diamond' - }], 'powah:niotic_crystal_block', 1, "2700000") - energize([{ - tag: 'forge:storage_blocks/emerald' - }], 'powah:spirited_crystal_block', 1, "9000000") - - const tiersPowah = [ - 'starter', - 'basic', - 'hardened', - 'blazing', - 'niotic', - 'spirited', - 'nitro' - ] - const typesPowah = [ - 'energy_cell', - 'reactor', - 'furnator', - 'magmator', - 'thermo_generator', - 'solar_panel', - 'player_transmitter', - 'energy_hopper', - 'energy_discharger', - 'energizing_rod' - ] - typesPowah.forEach(type => { - tiersPowah.forEach(tier => { - e.shapeless(item.of('powah:' + type + '_' + tier), 'powah:' + type + '_' + tier) - }) - }) - - //Pedestal stuff - function coinUpgrade(name, type) { - if (type == 'rf') { - e.recipes.allthemodium.atmshapeless_crafting({ - ingredients: [{ - item: 'pedestals:coin/' + name - }, - { - tag: 'forge:storage_blocks/redstone' - } - ], - result: { - item: 'pedestals:coin/' + type + name - } - }) - } else { - e.recipes.allthemodium.atmshapeless_crafting({ - ingredients: [{ - item: 'pedestals:coin/' + name - }, - { - item: 'minecraft:experience_bottle' - } - ], - result: { - item: 'pedestals:coin/' + type + name - } - }) - } - } - - coinUpgrade('import', 'rf') - coinUpgrade('export', 'rf') - coinUpgrade('crusher', 'rf') - coinUpgrade('smelter', 'rf') - coinUpgrade('sawmill', 'rf') - coinUpgrade('quarry', 'rf') - coinUpgrade('quarryb', 'rf') - coinUpgrade('dropper', 'xp') - coinUpgrade('magnet', 'xp') - - pedestalCrush('pamhc2foodcore:flouritem', 1, 'forge:flour_plants', 1) - pedestalCrush('appliedenergistics2:fluix_dust', 1, 'appliedenergistics2:fluix_crystal', 0) - pedestalCrush('appliedenergistics2:certus_quartz_dust', 1, 'forge:gems/certus_quartz', 1) - pedestalCrush('mekanism:dust_quartz', 1, 'forge:gems/quartz', 1) - - pedestalSaw('mekanism:sawdust', 1, 'forge:rods/wooden', 1) - pedestalSaw('minecraft:stick', 4, 'minecraft:planks', 1) - pedestalSaw('minecraft:stick', 2, 'minecraft:wooden_slabs', 1) - - //AE Recipes - e.recipes.appliedenergistics2.grinder({ - input: { - tag: 'forge:flour_plants' - }, - result: { - primary: { - item: 'pamhc2foodcore:flouritem', - count: 1 - } - }, - turns: 8 - }) - - //NBT Resets - const resetNBT = [ - 'rftoolsbase:filter_module', - 'rftoolspower:dimensionalcell_simple', - 'rftoolspower:dimensionalcell', - 'rftoolspower:dimensionalcell_advanced', - 'rftoolspower:powercell_card', - 'rftoolsutility:syringe' - ] - utils.listOf(resetNBT).forEach(function (reset) { - e.shapeless(item.of(reset), reset) - }) - - //Solarflux Recipe - const solars = [ - '1', - '2', - '3', - '4', - '5', - 'custom_allthemodium', - 'custom_vibranium', - 'custom_unobtainium' - ] - solars.forEach(solar => { - e.shapeless(item.of('solarflux:sp_' + solar), 'solarflux:sp_' + solar) - }) - - //Smithing stuff - function smithing(result, base, addition) { - e.recipes.minecraft.smithing({ - 'base': { - 'item': base - }, - 'addition': { - 'item': addition - }, - 'result': { - 'item': result - } - }) - } - smithing('metalbarrels:wood_to_netherite', 'metalbarrels:wood_to_obsidian', 'minecraft:netherite_ingot') - - //Quark marble to Astral Sorcery Marble - e.recipes.astralsorcery.block_transmutation({ - "input": { - "block": "quark:marble", - }, - "output": { - "block": "astralsorcery:marble_raw" - }, - "starlight": 200.0 - }) - - e.recipes.astralsorcery.infuser({ - "fluidInput": "astralsorcery:liquid_starlight", - "input": { - "item": "quark:marble" - }, - "output": { - "item": "astralsorcery:marble_raw", - "count": 1 - }, - "consumptionChance": 0.1, - "duration": 100, - "consumeMultipleFluids": false, - "acceptChaliceInput": true, - "copyNBTToOutputs": false - }) - - //quark - const quarkWoodTypes = ['oak', 'dark_oak', 'acacia', 'spruce', 'birch', 'jungle', 'warped', 'crimson'] - quarkWoodTypes.forEach(wood => { - e.shapeless('quark:' + wood + '_chest', ['minecraft:' + wood + '_planks', '#forge:chests/wooden']) - e.shapeless('quark:' + wood + '_trapped_chest', ['quark:' + wood + '_chest', 'minecraft:tripwire_hook']) - }); - - function buildQuarkChest(type, material) { - e.shaped('quark:' + type + '_chest', [ - 'aaa', - 'a a', - 'aaa' - ], { - a: material - }); - e.shapeless('quark:' + type + '_trapped_chest', ['quark:' + type + '_chest', 'minecraft:tripwire_hook']); - } - - buildQuarkChest('nether_brick', 'minecraft:nether_bricks'); - buildQuarkChest('prismarine', 'minecraft:prismarine'); - buildQuarkChest('mushroom', '#forge:mushroom_caps'); - buildQuarkChest('purpur', 'minecraft:purpur_block'); - - //Make bio fuel use tags instead of invidual items - const bioFuels = [2, 4, 5, 7, 8] - bioFuels.forEach(bioFuel => { - e.recipes.mekanism.crushing(item.of('mekanism:bio_fuel', bioFuel), '#misctags:biofuel' + bioFuel) - }) - - //multicrush - mek crusher and thermal pulverizer - //multicrush (`output`,`input`) - multicrush('4x minecraft:brick', 'minecraft:bricks') - multicrush(`9x minecraft:rotten_flesh`, `biomesoplenty:flesh`) - multicrush(`4x minecraft:magma_cream`, `minecraft:magma_block`) - multicrush(`minecraft:snow_block`, `minecraft:ice`) - multicrush(`allthemodium:unobtainium_allthemodium_alloy_dust`, `allthemodium:unobtainium_allthemodium_alloy_ingot`) - multicrush(`allthemodium:unobtainium_vibranium_alloy_dust`, `allthemodium:unobtainium_vibranium_alloy_ingot`) - multicrush(`allthemodium:vibranium_allthemodium_alloy_dust`, `allthemodium:vibranium_allthemodium_alloy_ingot`) - - //crush - mek crushing only - //crush (`output`, `input`) - crush(`4x minecraft:blaze_powder`, `#forge:rods/blaze`) - - //enrich - mek enriching - //enrich (`output`, `input`) - enrich(`minecraft:blaze_rod`, `4x minecraft:blaze_powder`) - - //pulverize - thermal pulverizer only - //pulverize (`output`, `input`) - - //add byg logs to mek sawmill - const saw = [ - 'aspen', - 'baobab', - 'blue_enchanted', - 'cherry', - 'cika', - 'cypress', - 'ebony', - 'ether', - 'fir', - 'green_enchanted', - 'holly', - 'jacaranda', - 'lament', - 'mahogany', - 'mangrove', - 'maple', - 'nightshade', - 'palm', - 'pine', - 'rainbow_eucalyptus', - 'redwood', - 'skyris', - 'willow', - 'witch_hazel', - 'zelkova' - ] - saw.forEach(type => { - e.recipes.mekanism.sawing((`6x byg:${type}_planks`), [`byg:stripped_${type}_log`, `byg:${type}_log`], Item.of('mekanism:sawdust').withChance(0.25)).id(`kubejs:saw/byg_log_${type}`) - }) - e.recipes.mekanism.sawing((`6x minecraft:oak_planks`), `byg:withering_oak_log`, Item.of('mekanism:sawdust').withChance(0.25)).id(`kubejs:saw/byg_log_withering_oak`) - e.recipes.mekanism.sawing((`8x mekanism:sawdust`), `byg:imbued_nightshade_log`,).id(`kubejs:saw/byg_log_imbued_nightshade`) - e.recipes.mekanism.sawing((`6x minecraft:birch_planks`), [`byg:stripped_palo_verde_log`, `byg:palo_verde_log`], Item.of('mekanism:sawdust').withChance(0.25)).id(`kubejs:saw/byg_log_palo_verde`) - - //botania - e.recipes.botania.runic_altar({ - output: { - item: 'kubejs:rune_of_sins' - }, - mana: 25000, - ingredients: [{ - tag: 'botania:runes/lust' - }, - { - tag: 'botania:runes/gluttony' - }, - { - tag: 'botania:runes/greed' - }, - { - tag: 'botania:runes/sloth' - }, - { - tag: 'botania:runes/wrath' - }, - { - tag: 'botania:runes/envy' - }, - { - tag: 'botania:runes/pride' - } - ] - }).id('kubejs:runic_altar/rune_of_sins') - e.recipes.botania.petal_apothecary({ - output: { - item: 'kubejs:mass_of_wills' - }, - ingredients: [{ - item: 'botania:ancient_will_ahrim' - }, - { - item: 'botania:ancient_will_dharok' - }, - { - item: 'botania:ancient_will_guthan' - }, - { - item: 'botania:ancient_will_torag' - }, - { - item: 'botania:ancient_will_verac' - }, - { - item: 'botania:ancient_will_karil' - } - ] - }).id('kubejs:petal_apothecary/mass_of_wills') - - //ma infusion - //mainfusion (output,middle,item1,item2,item3,item4,item5,item6,item7,item8) - mainfusion('kubejs:magical_soil', 'botania:overgrowth_seed', 'botania:gaia_ingot', 'mysticalagradditions:insanium_block', 'botania:gaia_ingot', 'mysticalagradditions:insanium_block', 'botania:gaia_ingot', 'mysticalagradditions:insanium_block', 'botania:gaia_ingot', 'mysticalagradditions:insanium_block') - - //Custom Blocks - function customBlock(block, item) { - e.shapeless(`9x ${item}`, block) - e.shaped(block, [ - 'AAA', - 'AAA', - 'AAA' - ], { - A: item - }) - } - - customBlock('kubejs:nether_star_block', 'minecraft:nether_star') - customBlock('kubejs:atm_star_block', 'atmadditions:atm_star') -}) +onEvent('recipes', e => { + function energize(ingredient, result, rCount, power) { + e.recipes.powah.energizing({ + ingredients: ingredient, + energy: power, + result: { + item: result, + count: rCount + } + }) + } + + function pedestalCrush(result, count, ingred, type) { + const obj = {} + obj.result = { + item: result, + count: count + } + obj.ingredient = type == 1 ? { tag: ingred } : { item: ingred } + + e.recipes.pedestals.pedestal_crushing(obj) + } + + function pedestalSaw(result, count, ingred, type) { + const obj = {} + obj.result = { + item: result, + count: count + } + obj.ingredient = type == 1 ? { tag: ingred } : { item: ingred } + + e.recipes.pedestals.pedestal_sawing(obj) + } + + function multicrush(output, input) { + e.recipes.mekanism.crushing(output, input) + e.recipes.create.crushing(output, input) + e.recipes.immersiveengineering.crusher(output, input) + e.recipes.thermal.pulverizer(output, input) + } + + function crush(output, input) { + e.recipes.mekanism.crushing((output), input) + } + + function enrich(output, input) { + e.recipes.mekanism.enriching((output), input) + } + + function mainfusion(output, middle, item1, item2, item3, item4, item5, item6, item7, item8) { + e.recipes.mysticalagriculture.infusion({ + input: { + item: middle + }, + ingredients: [{ + item: item1 + }, + { + item: item2 + }, + { + item: item3 + }, + { + item: item4 + }, + { + item: item5 + }, + { + item: item6 + }, + { + item: item7 + }, + { + item: item8 + } + ], + result: { + item: output + } + }) + } + + function parapet(woodTypes) { + woodTypes.forEach(woodType => { + e.remove({type: 'minecraft:crafting_shaped', output: `mcwwindows:${woodType}_log_parapet`}) + e.shaped(`4x mcwwindows:${woodType}_log_parapet`, [ + 'SLS' + ], { + S: '#forge:rods/wooden', + L: `minecraft:stripped_${woodType}_log` + }).id(`kubejs:parapet_${woodType}`) + }) + } + + function plateCasting(material, coolingTime, result) { + e.custom( + { + "type": "tconstruct:casting_table", + "conditions": [ + { + "value": { + "tag": `forge:plates/${material}`, + "type": "forge:tag_empty" + }, + "type": "forge:not" + } + ], + "cast": { + "tag": "tconstruct:casts/multi_use/plate" + }, + "fluid": { + "name": `tconstruct:molten_${material}`, + "amount": 144 + }, + "result": { + "item": result + }, + "cooling_time": coolingTime + } + ) + e.custom( + { + "type": "tconstruct:casting_table", + "conditions": [ + { + "value": { + "tag": `forge:plates/${material}`, + "type": "forge:tag_empty" + }, + "type": "forge:not" + } + ], + "cast": { + "tag": "tconstruct:casts/single_use/plate" + }, + "cast_consumed": true, + "fluid": { + "name": `tconstruct:molten_${material}`, + "amount": 144 + }, + "result": { + "item": result + }, + "cooling_time": coolingTime + } + ) + } + + function platePressing(material, result) { + e.custom( + { + "type": "immersiveengineering:metal_press", + "mold": { + "item": "immersiveengineering:mold_plate" + }, + "result": { + "item": result + }, + "conditions": [ + { + "value": { + "tag": `forge:ingots/${material}`, + "type": "forge:tag_empty" + }, + "type": "forge:not" + }, + { + "value": { + "tag": `forge:plates/${material}`, + "type": "forge:tag_empty" + }, + "type": "forge:not" + } + ], + "input": { + "tag": `forge:ingots/${material}` + }, + "energy": 2400 + } + ) + } + + function plateProcessing(types) { + types.forEach(([material, type, coolingTime, result]) => { + result = result ? result : `thermal:${material}_plate` + if (material == 'lapis') { + e.recipes.create.pressing(result, `#forge:storage_blocks/${material}`) + e.recipes.thermal.press(result, `#forge:storage_blocks/${material}`) + e.shapeless(result, [`#forge:storage_blocks/${material}`, 'immersiveengineering:hammer']).id(`kubejs:${material}_plate`) + return + } + if (type.includes(0)) plateCasting(material, coolingTime, result) // casting missing + if (type.includes(1)) e.recipes.create.pressing(result, `#forge:ingots/${material}`) // create missing + if (type.includes(2)) e.recipes.thermal.press(result, `#forge:ingots/${material}`) // thermal missing + if (type.includes(3)) e.shapeless(result, [`#forge:ingots/${material}`, 'immersiveengineering:hammer']).id(`kubejs:${material}_plate`) // crafting missing + if (type.includes(4)) platePressing(material, result) // immersiveengineering missing + }) + } + + function essenceCircle(result, count, name) { + e.shaped(item.of(result, count), [ + 'aaa', + 'a a', + 'aaa' + ], { + a: 'mysticalagriculture:' + name + '_essence' + }).id(`kubejs:${name}_nugget`) + } + + // Plate Processing Additions + plateProcessing([ + ['aluminum', [1, 2], 47, 'immersiveengineering:plate_aluminum'], + ['steel', [1, 2], null, 'immersiveengineering:plate_steel'], + ['uranium', [1], null, 'immersiveengineering:plate_uranium'], + ['iron', [0], 60], + ['gold', [0], 57], + ['copper', [0], 50], + ['tin', [0, 1, 3], 39], + ['lead', [0, 1], 43], + ['silver', [0, 1], 60], + ['nickel', [0, 1], 65], + ['bronze', [0, 1, 3], 57], + ['electrum', [0, 1], 59], + ['invar', [0, 1, 3], 63], + ['constantan', [0, 1], 64], + ['signalum', [1, 3, 4]], + ['lumium', [1, 3, 4]], + ['enderium', [1, 3, 4]], + ['lapis', null, null, 'create:lapis_sheet'], + ['brass', [2, 3], 57, 'create:brass_sheet'] + ]) + + + parapet([ + 'oak', + 'spruce', + 'birch', + 'jungle', + 'acacia', + 'dark_oak' + ]) + + //Smelting + e.smelting('appliedenergistics2:certus_quartz_crystal', '#forge:ores/certus_quartz').xp(1).id('kubejs:smelting/certus') + e.smelting('alltheores:platinum_ingot', 'create:crushed_platinum_ore').xp(1).id('kubejs:smelting/create_platinum') + e.smelting('minecraft:glass', '#forge:sand').xp(.1).id('kubejs:smelting/sand') + e.smelting('minecraft:leather', 'kubejs:rotten_leather').xp(.5).id('kubejs:smelting/leather') + e.smoking('minecraft:leather', 'kubejs:rotten_leather').xp(.5).id('kubejs:smoking/leather') + e.smelting('allthemodium:vibranium_allthemodium_alloy_ingot', 'allthemodium:vibranium_allthemodium_alloy_dust').xp(.5).id('kubejs:smelting/vibranium_allthemodium_alloy_dust') + e.smelting('allthemodium:unobtainium_allthemodium_alloy_ingot', 'allthemodium:unobtainium_allthemodium_alloy_dust').xp(.5).id('kubejs:smelting/unobtainium_allthemodium_alloy_dust') + e.smelting('allthemodium:unobtainium_vibranium_alloy_ingot', 'allthemodium:unobtainium_vibranium_alloy_dust').xp(.5).id('kubejs:smelting/unobtainium_vibranium_alloy_dust') + + //Misc shaped recipes + e.shaped('pamhc2foodcore:rolleritem', [ + 'SLS' + ], { + S: '#forge:rods/wooden', + L: `#minecraft:logs_unstripped` + }).id(`kubejs:pam_roller_unstripped`) + e.shaped('computercraft:turtle_advanced', [ + 'III', + 'ICI', + 'IAI' + ], { + I: '#forge:ingots/gold', + C: 'computercraft:computer_advanced', + A: '#forge:ingots/allthemodium' + }).id(`kubejs:turtle_advanced`) + e.shaped('computercraft:turtle_normal', [ + 'III', + 'ICI', + 'IAI' + ], { + I: '#forge:ingots/iron', + C: 'computercraft:computer_normal', + A: '#forge:ingots/allthemodium' + }).id(`kubejs:turtle_normal`) + e.shaped('minecraft:totem_of_undying', [ + ' E ', + 'GVG', + ' G ' + ], { + E: 'compressium:emerald_3', + G: '#forge:storage_blocks/gold', + V: 'minecraft:villager_spawn_egg' + }).id(`kubejs:totem_of_undying`) + e.shaped(item.of('enviromats:alabaster_magenta', 8), [ + 'AAA', + 'AMA', + 'AAA' + ], { + A: '#forge:alabaster', + M: '#forge:dyes/magenta' + }).id(`kubejs:magenta_alabaster`) + e.shaped(item.of('minecraft:ladder', 4), [ + 'S S', + 'SPS', + 'S S' + ], { + S: '#forge:rods', + P: '#minecraft:planks' + }).id(`kubejs:ladder`) + e.shaped('minecraft:hopper', [ + 'ILI', + 'ILI', + ' I ' + ], { + 'L': '#minecraft:logs', + 'I': '#forge:ingots/iron' + }).id(`kubejs:hopper`) + e.shaped('16x minecraft:stick', [ + 'L', + 'L' + ], { + 'L': '#minecraft:logs' + }).id(`kubejs:sticks`) + e.shaped('4x appliedenergistics2:sky_stone_block', [ + 'BSB', + 'SBS', + 'BSB' + ], { + 'S': 'minecraft:stone', + 'B': 'minecraft:blackstone' + }).id(`kubejs:sky_stone_brick`) + e.shaped('appliedenergistics2:calculation_processor_press', [ + 'CFC', + 'FVF', + 'PFP' + ], { + 'C': 'appliedenergistics2:purified_certus_quartz_crystal', + 'F': '#forge:ingots/fluix_steel', + 'V': '#forge:storage_blocks/vibranium', + 'P': 'appliedenergistics2:fluix_pearl' + }).id(`kubejs:calculation_press`) + e.shaped('appliedenergistics2:logic_processor_press', [ + 'BFB', + 'FVF', + 'CFC' + ], { + 'B': '#forge:ingots/blaze_gold', + 'F': '#forge:ingots/fluix_steel', + 'V': '#forge:storage_blocks/vibranium', + 'C': '#forge:ingots/rose_gold' + }).id(`kubejs:logic_press`) + e.shaped('appliedenergistics2:engineering_processor_press', [ + 'DFD', + 'FVF', + 'DFD' + ], { + 'D': '#forge:gems/mana_diamond', + 'F': '#forge:ingots/fluix_steel', + 'V': '#forge:storage_blocks/vibranium' + }).id(`kubejs:engineering_press`) + e.shaped('appliedenergistics2:silicon_press', [ + 'WFW', + 'FVF', + 'WFW' + ], { + 'W': '#forge:silicon', + 'F': '#forge:ingots/fluix_steel', + 'V': '#forge:storage_blocks/vibranium' + }).id(`kubejs:silicon_press`) + e.shaped('biomesoplenty:flesh', [ + 'FFF', + 'FFF', + 'FFF' + ], { + 'F': 'minecraft:rotten_flesh', + }).id(`kubejs:bop_flesh`) + e.shaped('extrastorage:iron_crafter', [ + 'B B', + 'PCP', + 'B B' + ], { + B: '#forge:storage_blocks/iron', + P: 'refinedstorage:improved_processor', + C: '#refinedstorage:crafter' + }).id(`kubejs:iron_crafter`) + e.shaped(`creativecrafter:creative_crafter`, [ + `BUB`, + `PCP`, + `BUB` + ], { + B: `#forge:storage_blocks/netherite`, + P: `extradisks:withering_processor`, + C: `extrastorage:netherite_crafter`, + U: `#forge:ingots/unobtainium` + }); + e.shaped('xreliquary:fertile_lily_pad', [ + 'ESE', + 'FLF', + 'ESE' + ], { + E: 'xreliquary:fertile_essence', + S: 'mysticalagriculture:supremium_growth_accelerator', + L: 'minecraft:lily_pad', + F: 'mysticalagriculture:mystical_fertilizer' + }).id(`kubejs:fertile_lily_pad`) + e.shaped('rftoolsbuilder:builder', [ + 'aea', + 'rmr', + 'ara' + ], { + 'a': '#forge:nuggets/allthemodium', + 'e': '#forge:ender_pearls', + 'r': '#forge:storage_blocks/redstone', + 'm': 'rftoolsbase:machine_frame' + }).id(`kubejs:builder`) + e.shaped('rats:pied_wool', [ + 'YGY', + 'GYG', + 'YGY' + ], { + 'Y': 'minecraft:yellow_wool', + 'G': 'minecraft:green_wool' + }).id(`kubejs:pied_wool`) + e.shaped('quarryplus:solidquarry', [ + 'FFF', + 'DGD', + 'AAA' + ], { + 'F': 'minecraft:furnace', + 'D': 'minecraft:diamond_pickaxe', + 'G': '#forge:storage_blocks/gold', + 'A': '#forge:nuggets/allthemodium' + }).id(`kubejs:solidquarry`) + e.shaped('quarryplus:workbenchplus', [ + 'III', + 'GDG', + 'AAA' + ], { + 'I': '#forge:storage_blocks/iron', + 'G': '#forge:storage_blocks/gold', + 'D': '#forge:storage_blocks/diamond', + 'A': '#forge:nuggets/allthemodium' + }).id(`kubejs:workbenchplus`) + e.shaped('mininggadgets:upgrade_empty', [ + 'RAL', + 'DGD', + 'LAR' + ], { + 'L': '#forge:storage_blocks/lapis', + 'R': '#forge:storage_blocks/redstone', + 'D': '#forge:gems/diamond', + 'A': '#forge:nuggets/allthemodium', + 'G': 'minecraft:glass_pane' + }).id(`kubejs:mininggadgets_upgrade`) + e.shaped(item.of('minecraft:grass', 12), [ + ' E ', + 'E E', + ' ' + ], { + 'E': 'mysticalagriculture:nature_essence' + }).id('kubejs:grass') + essenceCircle('allthemodium:allthemodium_nugget', 1, 'allthemodium') + essenceCircle('allthemodium:vibranium_nugget', 1, 'vibranium') + essenceCircle('allthemodium:unobtainium_nugget', 1, 'unobtainium') + essenceCircle('silentgear:azure_silver_ingot', 6, 'azure_silver') + essenceCircle('silentgear:azure_electrum_ingot', 4, 'azure_electrum') + essenceCircle('silentgear:crimson_iron_ingot', 6, 'crimson_iron') + essenceCircle('mekanism:fluorite_gem', 12, 'fluorite') + e.shaped('mysticalagriculture:unattuned_augment', [ + 'PMP', + 'AMA', + 'PMP' + ], { + 'P': 'mysticalagriculture:prosperity_ingot', + 'M': 'botania:manasteel_ingot', + 'A': '#forge:nuggets/allthemodium' + }).id(`kubejs:unattuned_augment`) + e.shaped('mekanism:digital_miner', [ + 'AUA', + 'LRL', + 'TST' + ], { + 'L': 'mekanism:logistical_sorter', + 'R': 'mekanism:robit', + 'T': 'mekanism:teleportation_core', + 'A': '#mekanism:alloys/atomic', + 'S': 'mekanism:steel_casing', + 'U': '#forge:ingots/unobtainium' + }).id(`kubejs:digital_miner`) + e.shaped('mekanism:atomic_disassembler', [ + 'RER', + 'RUR', + ' V ' + ], { + 'E': 'mekanism:energy_tablet', + 'R': '#mekanism:alloys/reinforced', + 'U': '#forge:circuits/ultimate', + 'V': '#forge:ingots/vibranium' + }).id(`kubejs:atomic_disassembler`) + e.shaped('mekanismgenerators:wind_generator', [ + ' O ', + 'OCO', + 'EBE' + ], { + 'E': 'mekanism:energy_tablet', + 'C': 'mekanismgenerators:electromagnetic_coil', + 'B': '#forge:circuits/basic', + 'O': '#forge:ingots/osmium' + }).id(`kubejs:wind_generator`) + e.shaped('ironjetpacks:diamond_cell', [ + ' R ', + 'TCT', + ' R ' + ], { + 'R': '#forge:dusts/redstone', + 'C': 'ironjetpacks:advanced_coil', + 'T': '#forge:gems/diamond' + }).id(`kubejs:diamond_cell`) + e.shaped('ironjetpacks:diamond_thruster', [ + 'TAT', + 'ACA', + 'TFT' + ], { + 'F': 'minecraft:furnace', + 'A': 'ironjetpacks:advanced_coil', + 'C': 'ironjetpacks:diamond_cell', + 'T': '#forge:gems/diamond' + }).id(`kubejs:diamond_thruster`) + e.shaped('ironjetpacks:diamond_capacitor', [ + 'RCR', + 'RCR', + 'RCR' + ], { + 'R': '#forge:gems/diamond', + 'C': 'ironjetpacks:diamond_cell' + }).id(`kubejs:diamond_capacitor`) + e.shaped('ironjetpacks:diamond_jetpack', [ + 'DCD', + 'DJD', + 'TRT' + ], { + 'D': '#forge:gems/diamond', + 'C': 'ironjetpacks:diamond_capacitor', + 'J': ['ironjetpacks:steel_jetpack', 'ironjetpacks:electrum_jetpack', 'ironjetpacks:invar_jetpack'], + 'T': 'ironjetpacks:diamond_thruster', + 'R': 'angelring:itemdiamondring' + }).id(`kubejs:diamond_jetpack`) + e.shaped('ironjetpacks:platinum_cell', [ + ' R ', + 'TCT', + ' R ' + ], { + 'R': '#forge:dusts/redstone', + 'C': 'ironjetpacks:advanced_coil', + 'T': '#forge:ingots/platinum' + }).id(`kubejs:platinum_cell`) + e.shaped('ironjetpacks:platinum_thruster', [ + 'TAT', + 'ACA', + 'TFT' + ], { + 'F': 'minecraft:furnace', + 'A': 'ironjetpacks:advanced_coil', + 'C': 'ironjetpacks:platinum_cell', + 'T': '#forge:ingots/platinum' + }).id(`kubejs:platinum_thruster`) + e.shaped('ironjetpacks:platinum_capacitor', [ + 'RCR', + 'RCR', + 'RCR' + ], { + 'R': '#forge:ingots/platinum', + 'C': 'ironjetpacks:platinum_cell' + }).id(`kubejs:platinum_capacitor`) + e.shaped('ironjetpacks:platinum_jetpack', [ + 'PCP', + 'PJP', + 'TRT' + ], { + 'P': '#forge:ingots/platinum', + 'C': 'ironjetpacks:platinum_capacitor', + 'J': ['ironjetpacks:steel_jetpack', 'ironjetpacks:electrum_jetpack', 'ironjetpacks:invar_jetpack'], + 'T': 'ironjetpacks:platinum_thruster', + 'R': 'angelring:itemdiamondring' + }).id(`kubejs:platinum_jetpack`) + e.shaped('pamhc2foodcore:fruitpunchitem', [ + 'FFF', + 'FBF', + 'FFF' + ], { + 'F': '#forge:fruits', + 'B': 'pamhc2foodcore:applejuiceitem' + }).id(`kubejs:fruitpunchitem`) + e.shaped('pamhc2foodcore:applejuiceitem', [ + 'FFF', + 'FBF', + 'FFF' + ], { + 'F': 'minecraft:apple', + 'B': 'minecraft:glass_bottle' + }).id(`kubejs:applejuiceitem`) + e.shaped('pamhc2foodcore:melonjuiceitem', [ + 'FFF', + 'FBF', + 'FFF' + ], { + 'F': 'minecraft:melon_slice', + 'B': 'minecraft:glass_bottle' + }).id(`kubejs:melonjuiceitem`) + e.shaped('pamhc2foodcore:sweetberryjuiceitem', [ + 'FFF', + 'FBF', + 'FFF' + ], { + 'F': 'minecraft:sweet_berries', + 'B': 'minecraft:glass_bottle' + }).id(`kubejs:sweetberryhuiceitem`) + e.shaped('pamhc2foodcore:p8juiceitem', [ + 'FFF', + 'FBF', + 'FFF' + ], { + 'F': '#forge:vegetables', + 'B': 'minecraft:glass_bottle' + }).id(`kubejs:p8juiceitem`) + e.shaped('angelring:itemdiamondring', [ + 'DND', + 'VEU', + 'DAD' + ], { + 'D': '#forge:storage_blocks/diamond', + 'N': '#forge:storage_blocks/netherite', + 'V': '#forge:storage_blocks/vibranium', + 'U': '#forge:storage_blocks/unobtainium', + 'A': '#forge:storage_blocks/allthemodium', + 'E': 'minecraft:elytra' + }).id(`kubejs:diamondring`) + e.shaped('angelring:itemring', [ + 'CAC', + 'ARA', + 'DGD' + ], { + 'C': 'botania:pixie_dust', + 'A': '#forge:storage_blocks/terrasteel', + 'R': 'angelring:itemdiamondring', + 'D': '#forge:nether_stars', + 'G': 'botania:gaia_ingot' + }).id(`kubejs:itemring`) + // + e.shaped('3x forbidden_arcanus:iron_chain', [ + 'N ', + ' I ', + ' N' + ], { + 'N': '#forge:nuggets/iron', + 'I': '#forge:ingots/iron' + }).id(`kubejs:iron_chain`) + e.shaped('entangled:block', [ + 'UEU', + 'ECE', + 'UEU' + ], { + 'U': '#forge:ingots/unobtainium', + 'E': '#forge:ender_pearls', + 'C': 'minecraft:ender_chest' + }).id(`kubejs:entangled_block`) + e.shaped('entangled:item', [ + ' EC', + ' UE', + 'U ' + ], { + 'U': '#forge:ingots/unobtainium', + 'E': '#forge:ender_pearls', + 'C': 'minecraft:ender_chest' + }).id(`kubejs:entanled_item`) + e.shaped('refinedstorage:4096k_fluid_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'refinedstorage:1024k_fluid_storage_part', + 'b': 'minecraft:bucket', + 'n': '#forge:nuggets/allthemodium' + }).id(`kubejs:4096k_fluid_storage_part`) + e.shaped('extradisks:4096k_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:1024k_storage_part', + 'b': '#forge:dusts/redstone', + 'n': '#forge:nuggets/allthemodium' + }).id(`kubejs:4096k_storage_part`) + e.shaped('extradisks:16384k_fluid_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'refinedstorage:4096k_fluid_storage_part', + 'b': 'minecraft:bucket', + 'n': '#forge:ingots/allthemodium' + }).id(`kubejs:16384k_fluid_storage_part`) + e.shaped('extradisks:16384k_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:4096k_storage_part', + 'b': '#forge:dusts/redstone', + 'n': '#forge:ingots/allthemodium' + }).id(`kubejs:16384k_storage_part`) + e.shaped('extradisks:65536k_fluid_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:16384k_fluid_storage_part', + 'b': 'minecraft:bucket', + 'n': '#forge:ingots/allthemodium' + }).id(`kubejs:65536k_fluid_storage_part`) + e.shaped('extradisks:65536k_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:16384k_storage_part', + 'b': '#forge:dusts/redstone', + 'n': '#forge:ingots/allthemodium' + }).id(`kubejs:65536k_storage_part`) + e.shaped('extradisks:262144k_fluid_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:65536k_fluid_storage_part', + 'b': 'minecraft:bucket', + 'n': '#forge:ingots/vibranium' + }).id(`kubejs:262144k_fluid_storage_part`) + e.shaped('extradisks:262144k_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:65536k_storage_part', + 'b': '#forge:dusts/redstone', + 'n': '#forge:ingots/vibranium' + }).id(`kubejs:262144k_storage_part`) + e.shaped('extradisks:1048576k_fluid_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:262144k_fluid_storage_part', + 'b': 'minecraft:bucket', + 'n': '#forge:ingots/unobtainium' + }).id(`kubejs:1048576k_fluid_storage_part`) + e.shaped('extradisks:1048576k_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:262144k_storage_part', + 'b': '#forge:dusts/redstone', + 'n': '#forge:ingots/unobtainium' + }).id(`kubejs:1048576k_storage_part`) + e.shaped('extradisks:infinite_fluid_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:1048576k_fluid_storage_part', + 'b': 'minecraft:bucket', + 'n': '#forge:ingots/unobtainium' + }).id(`kubejs:infinite_fluid_part`) + e.shaped('extradisks:infinite_storage_part', [ + 'ana', + 'fbf', + 'afa' + ], { + 'a': 'refinedstorage:advanced_processor', + 'f': 'extradisks:1048576k_storage_part', + 'b': '#forge:dusts/redstone', + 'n': '#forge:ingots/unobtainium' + }).id(`kubejs:infinite_storage_part`) + e.shaped('2x solarflux:sp_custom_allthemodium', [ + 'PPP', + 'SAS', + 'SDS' + ], { + S: 'solarflux:sp_5', + A: '#forge:storage_blocks/allthemodium', + D: '#forge:storage_blocks/diamond', + P: 'solarflux:photovoltaic_cell_4' + }).id(`kubejs:allthemodium_solar`) + e.shaped('2x solarflux:sp_custom_vibranium', [ + 'PPP', + 'SAS', + 'SAS' + ], { + S: 'solarflux:sp_custom_allthemodium', + A: '#forge:storage_blocks/vibranium', + P: 'solarflux:photovoltaic_cell_5' + }).id(`kubejs:vibranium_solar`) + e.shaped('2x solarflux:sp_custom_unobtainium', [ + 'PPP', + 'SAS', + 'SAS' + ], { + S: 'solarflux:sp_custom_vibranium', + A: '#forge:storage_blocks/unobtainium', + P: 'solarflux:photovoltaic_cell_6' + }).id(`kubejs:unobtainium_solar`) + //Minecraft + e.shaped('minecraft:dragon_egg', [ + 'SSS', + 'SDS', + 'SSS' + ], { + S: 'mysticalagradditions:dragon_egg_chunk', + D: 'atmadditions:dragon_soul' + }) + //Tombstone + e.shaped('tombstone:soul_receptacle', [ + 'ABA', + 'CDC', + 'AEA' + ], { + A: 'tombstone:dust_of_vanishing', + B: 'tombstone:ankh_of_pray', + C: 'minecraft:totem_of_undying', + D: 'tombstone:familiar_receptacle', + E: 'tombstone:voodoo_poppet' + }) + //Pipez + e.shaped('pipez:infinity_upgrade', [ + 'ABA', + 'BCB', + 'ABA' + ], { + A: 'allthemodium:unobtainium_ingot', + B: 'compressium:redstone_4', + C: 'pipez:ultimate_upgrade' + }) + //MA + e.shaped('8x astralsorcery:aquamarine', [ + 'AAA', + 'A A', + 'AAA' + ], { + A: 'mysticalagriculture:aquamarine_essence' + }).id(`kubejs:aquamarine_essence`) + //Cable Tiers changes + const caTypes = [ + `importer`, + `exporter`, + `constructor`, + `destructor` + ] + function caTier(tier, corners, processor, cables) { + caTypes.forEach(caType => { + e.shaped(`cabletiers:${tier}_${caType}`, [ + `a a`, + `bcb`, + `a a` + ], { + a: corners, + b: processor, + c: cables + caType + }) + }) + } + caTier(`elite`, `#forge:storage_blocks/iron`, `refinedstorage:improved_processor`, `refinedstorage:`); + caTier(`ultra`, `#forge:storage_blocks/diamond`, `refinedstorage:advanced_processor`, `cabletiers:elite_`); + caTier(`creative`, `#forge:storage_blocks/netherite`, `extradisks:withering_processor`, `cabletiers:ultra_`); + //Creative Transmitter + e.shaped('creativewirelesstransmitter:creative_wireless_transmitter', [ + 'ITI', + 'ICI', + 'IDI' + ], { + I: 'allthemodium:unobtainium_ingot', + D: 'rsinfinitybooster:dimension_card', + C: 'refinedstorage:machine_casing', + T: 'refinedstorage:wireless_transmitter' + }).id(`kubejs:creative_wireless_transmitter`) + //Mekasuit + e.shaped(Item.of('mekanism:mekasuit_helmet', { + HideFlags: 2 + }), [ + 'HCH', + 'HUH', + 'PIP' + ], { + H: 'mekanism:hdpe_sheet', + C: 'mekanism:ultimate_control_circuit', + P: 'mekanism:pellet_polonium', + I: 'mekanism:basic_induction_cell', + U: 'allthemodium:unobtainium_helmet' + }).id(`kubejs:mekasuit_helmet`) + e.shaped(Item.of('mekanism:mekasuit_bodyarmor', { + HideFlags: 2 + }), [ + 'HCH', + 'HUH', + 'PIP' + ], { + H: 'mekanism:hdpe_sheet', + C: 'mekanism:ultimate_control_circuit', + P: 'mekanism:pellet_polonium', + I: 'mekanism:basic_induction_cell', + U: 'allthemodium:unobtainium_chestplate' + }).id(`kubejs:mekasuit_bodyarmor`) + e.shaped(Item.of('mekanism:mekasuit_pants', { + HideFlags: 2 + }), [ + 'HCH', + 'HUH', + 'PIP' + ], { + H: 'mekanism:hdpe_sheet', + C: 'mekanism:ultimate_control_circuit', + P: 'mekanism:pellet_polonium', + I: 'mekanism:basic_induction_cell', + U: 'allthemodium:unobtainium_leggings' + }).id(`kubejs:mekasuit_pants`) + e.shaped(Item.of('mekanism:mekasuit_boots', { + HideFlags: 2 + }), [ + 'HCH', + 'HUH', + 'PIP' + ], { + H: 'mekanism:hdpe_sheet', + C: 'mekanism:ultimate_control_circuit', + P: 'mekanism:pellet_polonium', + I: 'mekanism:basic_induction_cell', + U: 'allthemodium:unobtainium_boots' + }).id(`kubejs:mekasuit_boots`) + + //Misc Shapeless Recipes + e.shapeless('4x minecraft:clay_ball', 'minecraft:clay').id(`kubejs:clay`) + e.shapeless('4x minecraft:quartz', 'minecraft:quartz_block').id(`kubejs:quartz`) + e.shapeless('minecraft:chest', '#forge:chests/wooden') + //e.shapeless(item.of('bluepower:blue_alloy_ingot', 4), ['#forge:dusts/teslatite','#forge:dusts/teslatite','#forge:dusts/teslatite','#forge:ingots/silver']) + //e.shapeless('kubejs:rotten_leather', ['minecraft:rotten_flesh', 'minecraft:rotten_flesh', 'minecraft:rotten_flesh']) + e.shapeless('kubejs:rotten_leather', '3x minecraft:rotten_flesh').id(`kubejs:rotten_leather`) + e.shapeless('appliedenergistics2:interface', 'appliedenergistics2:cable_interface').id(`kubejs:ae_interface`) + + // conversion recipe for solar panels which were removed from the game + e.shapeless('solarflux:sp_custom_allthemodium', 'solarflux:sp_6').id('kubejs:solar_conversion/tier_6') + e.shapeless('solarflux:sp_custom_vibranium', 'solarflux:sp_7').id('kubejs:solar_conversion/tier_7') + e.shapeless('solarflux:sp_custom_unobtainium', 'solarflux:sp_8').id('kubejs:solar_conversion/tier_8') + + //Powah recipes + e.shaped('powah:thermoelectric_plate', [ + 'BAB', + 'ACA', + 'BAB' + ], { + B: '#forge:rods/blaze', + A: 'mekanism:alloy_infused', + C: 'powah:capacitor_basic_tiny' + }).id('kubejs:thermoelectric_plate') + + energize([{ + tag: 'forge:storage_blocks/iron' + }, { + tag: 'forge:storage_blocks/gold' + }], 'powah:energized_steel_block', 2, "90000") + energize([{ + item: 'botania:blaze_block' + }], 'powah:blazing_crystal_block', 1, "810000") + energize([{ + tag: 'forge:storage_blocks/diamond' + }], 'powah:niotic_crystal_block', 1, "2700000") + energize([{ + tag: 'forge:storage_blocks/emerald' + }], 'powah:spirited_crystal_block', 1, "9000000") + + const tiersPowah = [ + 'starter', + 'basic', + 'hardened', + 'blazing', + 'niotic', + 'spirited', + 'nitro' + ] + const typesPowah = [ + 'energy_cell', + 'reactor', + 'furnator', + 'magmator', + 'thermo_generator', + 'solar_panel', + 'player_transmitter', + 'energy_hopper', + 'energy_discharger', + 'energizing_rod' + ] + typesPowah.forEach(type => { + tiersPowah.forEach(tier => { + e.shapeless(item.of('powah:' + type + '_' + tier), 'powah:' + type + '_' + tier) + }) + }) + + //Pedestal stuff + function coinUpgrade(name, type) { + if (type == 'rf') { + e.recipes.allthemodium.atmshapeless_crafting({ + ingredients: [{ + item: 'pedestals:coin/' + name + }, + { + tag: 'forge:storage_blocks/redstone' + } + ], + result: { + item: 'pedestals:coin/' + type + name + } + }) + } else { + e.recipes.allthemodium.atmshapeless_crafting({ + ingredients: [{ + item: 'pedestals:coin/' + name + }, + { + item: 'minecraft:experience_bottle' + } + ], + result: { + item: 'pedestals:coin/' + type + name + } + }) + } + } + + coinUpgrade('import', 'rf') + coinUpgrade('export', 'rf') + coinUpgrade('crusher', 'rf') + coinUpgrade('smelter', 'rf') + coinUpgrade('sawmill', 'rf') + coinUpgrade('quarry', 'rf') + coinUpgrade('quarryb', 'rf') + coinUpgrade('dropper', 'xp') + coinUpgrade('magnet', 'xp') + + pedestalCrush('pamhc2foodcore:flouritem', 1, 'forge:flour_plants', 1) + pedestalCrush('appliedenergistics2:fluix_dust', 1, 'appliedenergistics2:fluix_crystal', 0) + pedestalCrush('appliedenergistics2:certus_quartz_dust', 1, 'forge:gems/certus_quartz', 1) + pedestalCrush('mekanism:dust_quartz', 1, 'forge:gems/quartz', 1) + + pedestalSaw('mekanism:sawdust', 1, 'forge:rods/wooden', 1) + pedestalSaw('minecraft:stick', 4, 'minecraft:planks', 1) + pedestalSaw('minecraft:stick', 2, 'minecraft:wooden_slabs', 1) + + //AE Recipes + e.recipes.appliedenergistics2.grinder({ + input: { + tag: 'forge:flour_plants' + }, + result: { + primary: { + item: 'pamhc2foodcore:flouritem', + count: 1 + } + }, + turns: 8 + }) + + //NBT Resets + const resetNBT = [ + 'rftoolsbase:filter_module', + 'rftoolspower:dimensionalcell_simple', + 'rftoolspower:dimensionalcell', + 'rftoolspower:dimensionalcell_advanced', + 'rftoolspower:powercell_card', + 'rftoolsutility:syringe' + ] + utils.listOf(resetNBT).forEach(function (reset) { + e.shapeless(item.of(reset), reset) + }) + + //Solarflux Recipe + const solars = [ + '1', + '2', + '3', + '4', + '5', + 'custom_allthemodium', + 'custom_vibranium', + 'custom_unobtainium' + ] + solars.forEach(solar => { + e.shapeless(item.of('solarflux:sp_' + solar), 'solarflux:sp_' + solar) + }) + + //Smithing stuff + function smithing(result, base, addition) { + e.recipes.minecraft.smithing({ + 'base': { + 'item': base + }, + 'addition': { + 'item': addition + }, + 'result': { + 'item': result + } + }) + } + smithing('metalbarrels:wood_to_netherite', 'metalbarrels:wood_to_obsidian', 'minecraft:netherite_ingot') + + //Quark marble to Astral Sorcery Marble + e.recipes.astralsorcery.block_transmutation({ + "input": { + "block": "quark:marble", + }, + "output": { + "block": "astralsorcery:marble_raw" + }, + "starlight": 200.0 + }) + + e.recipes.astralsorcery.infuser({ + "fluidInput": "astralsorcery:liquid_starlight", + "input": { + "item": "quark:marble" + }, + "output": { + "item": "astralsorcery:marble_raw", + "count": 1 + }, + "consumptionChance": 0.1, + "duration": 100, + "consumeMultipleFluids": false, + "acceptChaliceInput": true, + "copyNBTToOutputs": false + }) + + //quark + const quarkWoodTypes = ['oak', 'dark_oak', 'acacia', 'spruce', 'birch', 'jungle', 'warped', 'crimson'] + quarkWoodTypes.forEach(wood => { + e.shapeless('quark:' + wood + '_chest', ['minecraft:' + wood + '_planks', '#forge:chests/wooden']) + e.shapeless('quark:' + wood + '_trapped_chest', ['quark:' + wood + '_chest', 'minecraft:tripwire_hook']) + }); + + function buildQuarkChest(type, material) { + e.shaped('quark:' + type + '_chest', [ + 'aaa', + 'a a', + 'aaa' + ], { + a: material + }); + e.shapeless('quark:' + type + '_trapped_chest', ['quark:' + type + '_chest', 'minecraft:tripwire_hook']); + } + + buildQuarkChest('nether_brick', 'minecraft:nether_bricks'); + buildQuarkChest('prismarine', 'minecraft:prismarine'); + buildQuarkChest('mushroom', '#forge:mushroom_caps'); + buildQuarkChest('purpur', 'minecraft:purpur_block'); + + //Make bio fuel use tags instead of invidual items + const bioFuels = [2, 4, 5, 7, 8] + bioFuels.forEach(bioFuel => { + e.recipes.mekanism.crushing(item.of('mekanism:bio_fuel', bioFuel), '#misctags:biofuel' + bioFuel) + }) + + //multicrush - mek crusher and thermal pulverizer + //multicrush (`output`,`input`) + multicrush('4x minecraft:brick', 'minecraft:bricks') + multicrush(`9x minecraft:rotten_flesh`, `biomesoplenty:flesh`) + multicrush(`4x minecraft:magma_cream`, `minecraft:magma_block`) + multicrush(`minecraft:snow_block`, `minecraft:ice`) + multicrush(`allthemodium:unobtainium_allthemodium_alloy_dust`, `allthemodium:unobtainium_allthemodium_alloy_ingot`) + multicrush(`allthemodium:unobtainium_vibranium_alloy_dust`, `allthemodium:unobtainium_vibranium_alloy_ingot`) + multicrush(`allthemodium:vibranium_allthemodium_alloy_dust`, `allthemodium:vibranium_allthemodium_alloy_ingot`) + + //crush - mek crushing only + //crush (`output`, `input`) + crush(`4x minecraft:blaze_powder`, `#forge:rods/blaze`) + + //enrich - mek enriching + //enrich (`output`, `input`) + enrich(`minecraft:blaze_rod`, `4x minecraft:blaze_powder`) + + //pulverize - thermal pulverizer only + //pulverize (`output`, `input`) + + //add byg logs to mek sawmill + const saw = [ + 'aspen', + 'baobab', + 'blue_enchanted', + 'cherry', + 'cika', + 'cypress', + 'ebony', + 'ether', + 'fir', + 'green_enchanted', + 'holly', + 'jacaranda', + 'lament', + 'mahogany', + 'mangrove', + 'maple', + 'nightshade', + 'palm', + 'pine', + 'rainbow_eucalyptus', + 'redwood', + 'skyris', + 'willow', + 'witch_hazel', + 'zelkova' + ] + saw.forEach(type => { + e.recipes.mekanism.sawing((`6x byg:${type}_planks`), [`byg:stripped_${type}_log`, `byg:${type}_log`], Item.of('mekanism:sawdust').withChance(0.25)).id(`kubejs:saw/byg_log_${type}`) + }) + e.recipes.mekanism.sawing((`6x minecraft:oak_planks`), `byg:withering_oak_log`, Item.of('mekanism:sawdust').withChance(0.25)).id(`kubejs:saw/byg_log_withering_oak`) + e.recipes.mekanism.sawing((`8x mekanism:sawdust`), `byg:imbued_nightshade_log`,).id(`kubejs:saw/byg_log_imbued_nightshade`) + e.recipes.mekanism.sawing((`6x minecraft:birch_planks`), [`byg:stripped_palo_verde_log`, `byg:palo_verde_log`], Item.of('mekanism:sawdust').withChance(0.25)).id(`kubejs:saw/byg_log_palo_verde`) + + //botania + e.recipes.botania.runic_altar({ + output: { + item: 'kubejs:rune_of_sins' + }, + mana: 25000, + ingredients: [{ + tag: 'botania:runes/lust' + }, + { + tag: 'botania:runes/gluttony' + }, + { + tag: 'botania:runes/greed' + }, + { + tag: 'botania:runes/sloth' + }, + { + tag: 'botania:runes/wrath' + }, + { + tag: 'botania:runes/envy' + }, + { + tag: 'botania:runes/pride' + } + ] + }).id('kubejs:runic_altar/rune_of_sins') + e.recipes.botania.petal_apothecary({ + output: { + item: 'kubejs:mass_of_wills' + }, + ingredients: [{ + item: 'botania:ancient_will_ahrim' + }, + { + item: 'botania:ancient_will_dharok' + }, + { + item: 'botania:ancient_will_guthan' + }, + { + item: 'botania:ancient_will_torag' + }, + { + item: 'botania:ancient_will_verac' + }, + { + item: 'botania:ancient_will_karil' + } + ] + }).id('kubejs:petal_apothecary/mass_of_wills') + + //ma infusion + //mainfusion (output,middle,item1,item2,item3,item4,item5,item6,item7,item8) + mainfusion('kubejs:magical_soil', 'botania:overgrowth_seed', 'botania:gaia_ingot', 'mysticalagradditions:insanium_block', 'botania:gaia_ingot', 'mysticalagradditions:insanium_block', 'botania:gaia_ingot', 'mysticalagradditions:insanium_block', 'botania:gaia_ingot', 'mysticalagradditions:insanium_block') + + //Custom Blocks + function customBlock(block, item) { + e.shapeless(`9x ${item}`, block) + e.shaped(block, [ + 'AAA', + 'AAA', + 'AAA' + ], { + A: item + }) + } + + customBlock('kubejs:nether_star_block', 'minecraft:nether_star') + customBlock('kubejs:atm_star_block', 'atmadditions:atm_star') +}) diff --git a/kubejs/server_scripts/unify.js b/kubejs/server_scripts/unify.js index a47fb042..1e4a2981 100644 --- a/kubejs/server_scripts/unify.js +++ b/kubejs/server_scripts/unify.js @@ -1,1205 +1,1220 @@ -//priority: 997 -onEvent('recipes', e => { - // #region Functions - function removeRecipesByID(recipes) { - recipes.forEach(recipe => { - e.remove({ id: recipe }) - }) - } - function unifyMetal(name, ingotItem, dustItem, blockItem, nuggetItem) { - e.replaceOutput(`#forge:ingots/${name}`, ingotItem) - e.replaceOutput(`#forge:dusts/${name}`, dustItem) - e.replaceOutput(`#forge:nuggets/${name}`, nuggetItem) - e.replaceOutput(`#forge:storage_blocks/${name}`, blockItem) - e.remove({ - input: [`#forge:ores/${name}`, `#forge:dusts/${name}`], - output: `#forge:ingots/${name}`, - type: 'minecraft:smelting' - }) - e.remove({ - input: [`#forge:ores/${name}`, `#forge:dusts/${name}`], - output: `#forge:ingots/${name}`, - type: 'minecraft:blasting' - }) - if (name !== 'iron' && name !== 'gold' && name !== 'azure_silver' && name !== 'crimson_iron') { - e.remove({ - input: `#forge:ores/${name}`, - output: `mekanism:dust_${name}`, - type: 'mekanism:enriching' - }) - e.remove({ - input: `mekanism:dirty_dust_${name}`, - output: `mekanism:dust_${name}`, - type: 'mekanism:enriching' - }) - e.remove({ - input: `#mekanism:clumps/${name}`, - output: `mekanism:dirty_dust_${name}`, - type: 'mekanism:crushing' - }) - e.remove({ - input: `#forge:ores/${name}`, - output: `mekanism:clump_${name}`, - type: 'mekanism:purifying' - }) - e.remove({ - input: `mekanism:shard_${name}`, - output: `mekanism:clump_${name}`, - type: 'mekanism:purifying' - }) - e.remove({ - input: `#forge:ores/${name}`, - output: `mekanism:shard_${name}`, - type: 'mekanism:injecting' - }) - e.remove({ - input: `#mekanism:crystals/${name}`, - output: `mekanism:shard_${name}`, - type: 'mekanism:injecting' - }) - } - e.remove({ - input: `#forge:ores/${name}`, - type: 'immersiveengineering:crusher' - }) - e.remove({ - input: `#forge:ingots/${name}`, - type: 'immersiveengineering:crusher' - }) - e.recipes.minecraft.smelting(ingotItem, `#forge:dusts/${name}`).xp(0.5) - e.recipes.minecraft.blasting(ingotItem, `#forge:dusts/${name}`).xp(0.5) - e.recipes.pedestals.pedestal_crushing({ - ingredient: { - tag: `forge:ingots/${name}` - }, - result: { - item: dustItem, - count: 1 - } - }) - e.remove({ - id: `appliedenergistics2:grinder/${name}_dust_ingot` - }) - e.recipes.appliedenergistics2.grinder({ - input: { - tag: `forge:ingots/${name}` - }, - result: { - primary: { - item: dustItem, - count: 1 - } - }, - turns: 8 - }) - e.recipes.immersiveengineering.crusher({ - secondaries: [], - result: { - base_ingredient: { - item: dustItem - } - }, - input: { - tag: `forge:ingots/${name}` - }, - energy: 3000 - }) - - if (!ingredient.of(`#forge:ores/${name}`).stacks.empty) { - e.recipes.minecraft.smelting(ingotItem, `#forge:ores/${name}`).xp(1) - e.recipes.minecraft.blasting(ingotItem, `#forge:ores/${name}`).xp(1) - e.recipes.mekanism.enriching(item.of(dustItem, 2), `#forge:ores/${name}`) - //This is here to stop crushing hammer recipes for modium from generating - if (name !== 'allthemodium' && name !== 'vibranium' && name !== 'unobtainium') { - e.remove({ - id: `engineerstools:crushing/${name}_grit_crushing_recipe` - }) - e.recipes.engineerstools.crafting_extended_shapeless({ - group: 'grit', - ingredients: [ - { - tag: `forge:ores/${name}` - }, - { - item: 'engineerstools:crushing_hammer' - } - ], - result: { - item: dustItem, - count: 2 - }, - aspects: { - tool: 'engineerstools:crushing_hammer', - tool_damage: 25 - } - }) - } - e.recipes.immersiveengineering.crusher({ - secondaries: [], - result: { - count: 2, - base_ingredient: { - item: dustItem - } - }, - input: { - tag: `forge:ores/${name}` - }, - energy: 3000 - }) - e.remove({ - id: `pedestals:pedestal_crushing/dust${name}` - }) - e.recipes.pedestals.pedestal_crushing({ - ingredient: { - tag: `forge:ores/${name}` - }, - result: { - item: dustItem, - count: 2 - } - }) - e.remove({ - id: `appliedenergistics2:grinder/${name}_dust_ore` - }) - e.recipes.appliedenergistics2.grinder({ - input: { - tag: `forge:ores/${name}` - }, - result: { - primary: { - item: dustItem, - count: 2 - } - }, - turns: 8 - }) - } - e.replaceInput(nuggetItem, `#forge:nuggets/${name}`) - e.replaceInput(dustItem, `#forge:dusts/${name}`) - e.replaceInput(ingotItem, `#forge:ingots/${name}`) - e.replaceInput(blockItem, `#forge:storage_blocks/${name}`) - } - - function unifyCraftMetal(name, ingotItem, dustItem, blockItem, nuggetItem) { - e.replaceInput(nuggetItem, `#forge:nuggets/${name}`) - e.replaceInput(dustItem, `#forge:dusts/${name}`) - e.replaceInput(ingotItem, `#forge:ingots/${name}`) - e.replaceInput(blockItem, `#forge:storage_blocks/${name}`) - e.replaceOutput(`#forge:ingots/${name}`, ingotItem) - e.replaceOutput(`#forge:dusts/${name}`, dustItem) - e.replaceOutput(`#forge:nuggets/${name}`, nuggetItem) - e.replaceOutput(`#forge:storage_blocks/${name}`, blockItem) - } - // #endregion Functions - - // #region Metal Unification - //Vanilla MC - unifyMetal('gold', 'minecraft:gold_ingot', 'alltheores:gold_dust', 'minecraft:gold_block', 'minecraft:gold_nugget') - unifyMetal('iron', 'minecraft:iron_ingot', 'alltheores:iron_dust', 'minecraft:iron_block', 'minecraft:iron_nugget') - - //Multiple Mods - unifyMetal( - 'aluminum', - 'alltheores:aluminum_ingot', - 'alltheores:aluminum_dust', - 'alltheores:aluminum_block', - 'alltheores:aluminum_nugget' - ) - unifyMetal( - 'copper', - 'alltheores:copper_ingot', - 'alltheores:copper_dust', - 'alltheores:copper_block', - 'alltheores:copper_nugget' - ) - unifyMetal( - 'lead', - 'alltheores:lead_ingot', - 'alltheores:lead_dust', - 'alltheores:lead_block', - 'alltheores:lead_nugget' - ) - unifyMetal( - 'nickel', - 'alltheores:nickel_ingot', - 'alltheores:nickel_dust', - 'alltheores:nickel_block', - 'alltheores:nickel_nugget' - ) - unifyMetal( - 'platinum', - 'alltheores:platinum_ingot', - 'alltheores:platinum_dust', - 'alltheores:platinum_block', - 'alltheores:platinum_nugget' - ) - unifyMetal( - 'silver', - 'alltheores:silver_ingot', - 'alltheores:silver_dust', - 'alltheores:silver_block', - 'alltheores:silver_nugget' - ) - unifyMetal('tin', 'alltheores:tin_ingot', 'alltheores:tin_dust', 'alltheores:tin_block', 'alltheores:tin_nugget') - unifyMetal( - 'uranium', - 'alltheores:uranium_ingot', - 'alltheores:uranium_dust', - 'alltheores:uranium_block', - 'alltheores:uranium_nugget' - ) - unifyMetal( - 'zinc', - 'alltheores:zinc_ingot', - 'alltheores:zinc_dust', - 'alltheores:zinc_block', - 'alltheores:zinc_nugget' - ) - - //Mekanism - unifyMetal( - 'osmium', - 'alltheores:osmium_ingot', - 'alltheores:osmium_dust', - 'alltheores:osmium_block', - 'alltheores:osmium_nugget' - ) - - //Silent Gear - unifyMetal( - 'azure_silver', - 'silentgear:azure_silver_ingot', - 'silentgear:azure_silver_dust', - 'silentgear:azure_silver_block', - 'silentgear:azure_silver_nugget' - ) - unifyMetal( - 'crimson_iron', - 'silentgear:crimson_iron_ingot', - 'silentgear:crimson_iron_dust', - 'silentgear:crimson_iron_block', - 'silentgear:crimson_iron_nugget' - ) - - //Allthemodium (Why would we need to unify these they are only ours) - unifyMetal( - 'allthemodium', - 'allthemodium:allthemodium_ingot', - 'allthemodium:allthemodium_dust', - 'allthemodium:allthemodium_block', - 'allthemodium:allthemodium_nugget' - ) - unifyMetal( - 'vibranium', - 'allthemodium:vibranium_ingot', - 'allthemodium:vibranium_dust', - 'allthemodium:vibranium_block', - 'allthemodium:vibranium_nugget' - ) - unifyMetal( - 'unobtainium', - 'allthemodium:unobtainium_ingot', - 'allthemodium:unobtainium_dust', - 'allthemodium:unobtainium_block', - 'allthemodium:unobtainium_nugget' - ) - - //Craft only metals - //Multiple Mods crafted only (no ore) - //unifyCraftMetal('bronze', 'mekanism:ingot_bronze', 'mekanism:dust_bronze', 'mekanism:block_bronze', 'mekanism:nugget_bronze') //Replaced/Returned to unifying on thermal's bronze - unifyCraftMetal( - 'steel', - 'mekanism:ingot_steel', - 'mekanism:dust_steel', - 'mekanism:block_steel', - 'mekanism:nugget_steel' - ) - - //Thermal - unifyCraftMetal( - 'bronze', - 'thermal:bronze_ingot', - 'thermal:bronze_dust', - 'thermal:bronze_block', - 'thermal:bronze_nugget' - ) - unifyCraftMetal( - 'constantan', - 'thermal:constantan_ingot', - 'thermal:constantan_dust', - 'thermal:constantan_block', - 'thermal:constantan_nugget' - ) - unifyCraftMetal( - 'electrum', - 'thermal:electrum_ingot', - 'thermal:electrum_dust', - 'thermal:electrum_block', - 'thermal:electrum_nugget' - ) - // #endregion Metal Unification - - // #region Plate Unification - function unifyPlateSheets(types) { - types.forEach(type => { - let create = type == 'gold' ? `create:${type}en_sheet` : `create:${type}_sheet` - let output = type == 'aluminum' ? `immersiveengineering:plate_${type}` : `thermal:${type}_plate` - e.replaceInput(`thermal:${type}_plate`, `#forge:plates/${type}`) - e.replaceInput(`immersiveengineering:plate_${type}`, `#forge:plates/${type}`) - e.replaceInput(create, `#forge:plates/${type}`) - e.replaceOutput(`immersiveengineering:plate_${type}`, output) - e.replaceOutput(create, output) - if (type != 'aluminum') { - e.remove({ id: `tconstruct:smeltery/casting/metal/${type}/plate_gold_cast` }) - e.remove({ id: `tconstruct:smeltery/casting/metal/${type}/plate_sand_cast` }) - } - }) - } - - unifyPlateSheets([ - 'iron', - 'gold', - 'copper', - 'tin', - 'lead', - 'silver', - 'nickel', - 'bronze', - 'electrum', - 'invar', - 'constantan', - 'signalum', - 'lumium', - 'enderium', - 'aluminum' - ]) - // #endregion Plate Unification - - // #region Tinkers Unification - function tinkerMelting(material, type, typeValues, temperature, time, byproduct) { - const recipe = { - type: 'tconstruct:melting', - ingredient: { - tag: `forge:${type}/${material}` - }, - result: { - fluid: `alltheores:molten_${material}`, - amount: typeValues.amount - }, - temperature: temperature, - time: time * typeValues.multiplier - } - e.custom(type != 'ores' ? recipe : Object.assign({ byproducts: byproduct }, recipe)).id( - `kubejs:melting/${type}/${material}` - ) - } - - function tinkerBlockMelting(entries) { - entries.forEach(([input, fluidAmount, time, byproductAmount], index) => { - e.custom({ - type: 'tconstruct:melting', - ingredient: input, - result: { - fluid: 'alltheores:molten_copper', - amount: fluidAmount - }, - temperature: 500, - time: time, - byproducts: [ - { - fluid: 'tconstruct:seared_stone', - amount: byproductAmount - } - ] - }).id(`kubejs:melting/copper/fromblock/${index + 1}`) - }) - } - - function tinkerAlloys(entries) { - entries.forEach(([output, outputAmount, temperature, inputs]) => { - e.remove({ id: `tconstruct:smeltery/alloys/molten_${output}` }) - e.custom({ - type: 'tconstruct:alloy', - conditions: [ - { - value: { - tag: `forge:ingots/${output}`, - type: 'forge:tag_empty' - }, - type: 'forge:not' - } - ], - inputs: inputs, - result: { - fluid: `tconstruct:molten_${output}`, - amount: outputAmount - }, - temperature: temperature - }).id(`kubejs:melting/alloys/${output}`) - }) - } - - function unifyTinkers(entries) { - const meltingTypes = [ - 'block', - 'can', - 'coin', - 'dust', - 'gear', - 'ingot', - 'nugget', - 'ore', - 'plates', - 'rod', - 'sheetmetal' - ] - const meltingTypeValues = { - storage_blocks: { - amount: 1296, - multiplier: 88.125 - }, - dusts: { - amount: 144, - multiplier: 21.75 - }, - gears: { - amount: 576, - multiplier: 58.8 - }, - ingots: { - amount: 144, - multiplier: 29.4 - }, - nuggets: { - amount: 16, - multiplier: 10.0 - }, - ores: { - amount: 144, - multiplier: 44.1 - }, - plates: { - amount: 144, - multiplier: 29.4 - }, - rods: { - amount: 72, - multiplier: 5.88 - }, - sheetmetals: { - amount: 144, - multiplier: 29.4 - } - } - const meltingParts = [ - 'broad_axe_head', - 'broad_blade', - 'hammer_head', - 'large_plate', - 'pickaxe_head', - 'repair_kit', - 'small_axe_head', - 'small_blade', - 'tool_binding', - 'tool_handle', - 'tough_handle' - ] - - entries.forEach(([material, temperature, time, types, byproduct]) => { - e.replaceInput(`tconstruct:${material}_ingot`, `#forge:ingots/${material}`) - e.replaceInput(`tmechworks:${material}_ingot`, `#forge:ingots/${material}`) - e.replaceInput(`tconstruct:${material}_block`, `#forge:storage_blocks/${material}`) - e.replaceInput(`tmechworks:${material}_block`, `#forge:storage_blocks/${material}`) - e.replaceOutput(`tconstruct:${material}_ingot`, `alltheores:${material}_ingot`) - e.replaceOutput(`tmechworks:${material}_ingot`, `alltheores:${material}_ingot`) - e.replaceOutput(`tconstruct:${material}_block`, `alltheores:${material}_block`) - e.replaceOutput(`tmechworks:${material}_block`, `alltheores:${material}_block`) - - meltingTypes.forEach(meltingType => { - e.remove({ id: `tconstruct:smeltery/melting/metal/${material}/${meltingType}` }) - for (let type in meltingTypeValues) { - if (types.includes(type)) { - tinkerMelting(material, type, meltingTypeValues[type], temperature, time, byproduct) - } - } - }) - meltingParts.forEach(meltingPart => { - e.remove({ id: `tconstruct:tools/parts/melting/${meltingPart}/tconstruct/${material}` }) - }) - }) - } - - unifyTinkers([ - [ - 'aluminum', - 425, - 1.6, - ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores', 'plates', 'rods', 'sheetmetals'], - [{ fluid: 'tconstruct:molten_iron', amount: 48 }] - ], - [ - 'copper', - 500, - 1.7, - ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], - [{ fluid: 'tconstruct:molten_gold', amount: 16 }] - ], - [ - 'lead', - 330, - 1.4, - ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], - [{ fluid: 'alltheores:molten_silver', amount: 48 }] - ], - [ - 'nickel', - 950, - 2.2, - ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], - [{ fluid: 'alltheores:molten_platinum', amount: 16 }] - ], - [ - 'osmium', - 975, - 2.2, - ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores'], - [{ fluid: 'tconstruct:molten_iron', amount: 48 }] - ], - [ - 'platinum', - 970, - 2.2, - ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores'], - [{ fluid: 'tconstruct:molten_gold', amount: 48 }] - ], - [ - 'silver', - 790, - 2.0, - ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], - [{ fluid: 'alltheores:molten_lead', amount: 48 }] - ], - [ - 'tin', - 225, - 1.3, - ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates'], - [{ fluid: 'alltheores:molten_copper', amount: 48 }] - ], - [ - 'uranium', - 830, - 2.0, - ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], - [{ fluid: 'alltheores:molten_lead', amount: 48 }] - ], - [ - 'zinc', - 420, - 1.6, - ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores'], - [{ fluid: 'alltheores:molten_tin', amount: 48 }] - ] - ]) - - tinkerAlloys([ - [ - 'brass', - 288, - 605, - [ - { tag: 'forge:molten_copper', amount: 144 }, - { tag: 'forge:molten_zinc', amount: 144 } - ] - ], - [ - 'bronze', - 576, - 700, - [ - { tag: 'forge:molten_copper', amount: 432 }, - { tag: 'forge:molten_tin', amount: 144 } - ] - ], - [ - 'constantan', - 288, - 920, - [ - { tag: 'forge:molten_copper', amount: 144 }, - { tag: 'forge:molten_nickel', amount: 144 } - ] - ], - [ - 'electrum', - 288, - 760, - [ - { tag: 'tconstruct:molten_gold', amount: 144 }, - { tag: 'forge:molten_silver', amount: 144 } - ] - ], - [ - 'hepatizon', - 288, - 1400, - [ - { tag: 'forge:molten_copper', amount: 288 }, - { tag: 'tconstruct:molten_cobalt', amount: 144 }, - { tag: 'tconstruct:molten_obsidian', amount: 1000 } - ] - ], - [ - 'invar', - 432, - 900, - [ - { tag: 'tconstruct:molten_iron', amount: 288 }, - { tag: 'forge:molten_nickel', amount: 144 } - ] - ], - [ - 'pewter', - 288, - 400, - [ - { tag: 'tconstruct:molten_iron', amount: 144 }, - { tag: 'forge:molten_lead', amount: 144 } - ] - ], - [ - 'rose_gold', - 576, - 550, - [ - { tag: 'forge:molten_copper', amount: 432 }, - { tag: 'tconstruct:molten_gold', amount: 144 } - ] - ], - [ - 'tinkers_bronze', - 432, - 700, - [ - { tag: 'forge:molten_copper', amount: 432 }, - { tag: 'tconstruct:molten_glass', amount: 1000 } - ] - ] - ]) - - e.remove({ id: 'tconstruct:smeltery/melting/copper/smeltery_controller' }) - e.remove({ id: 'tconstruct:smeltery/melting/copper/smeltery_io' }) - tinkerBlockMelting([ - [{ item: 'tconstruct:smeltery_controller' }, 576, 175, 1152], - [[{ item: 'tconstruct:seared_drain' }, { item: 'tconstruct:seared_chute' }], 288, 125, 576] - ]) - // #endregion Tinkers Unification - - // Certus Quartz - e.replaceInput('appliedenergistics2:certus_quartz_dust', '#forge:dusts/certus_quartz') - - // #region Bitumen - e.replaceInput('thermal:bitumen', '#forge:bitumen') - e.replaceInput('immersivepetroleum:bitumen', '#forge:bitumen') - e.replaceOutput('immersivepetroleum:bitumen', 'thermal:bitumen') - e.remove({ id: 'immersivepetroleum:distillationtower/oilcracking' }) - e.remove({ output: 'immersivepetroleum:asphalt' }) - e.shaped('immersivepetroleum:asphalt', ['SBS', 'GWG', 'SBS'], { - S: '#forge:sand', - B: '#forge:bitumen', - G: '#forge:gravel', - W: ['minecraft:water_bucket', 'create:honey_bucket', 'create:chocolate_bucket', 'mahoutsukai:murky_bucket'] - }).id('kubejs:asphalt_1') - e.shaped('immersivepetroleum:asphalt', ['SBS', 'GWG', 'SBS'], { - S: '#forge:slag', - B: '#forge:bitumen', - G: '#forge:gravel', - W: ['minecraft:water_bucket', 'create:honey_bucket', 'create:chocolate_bucket', 'mahoutsukai:murky_bucket'] - }).id('kubejs:asphalt_2') - e.shaped('immersivepetroleum:asphalt', ['S', 'S'], { - S: 'immersivepetroleum:asphalt_slab' - }).id('kubejs:asphalt_3') - e.custom({ - type: 'immersivepetroleum:distillation', - byproducts: [ - { - item: 'thermal:bitumen', - chance: 0.07 - } - ], - results: [ - { - fluid: 'immersivepetroleum:lubricant', - amount: 9 - }, - { - fluid: 'immersivepetroleum:diesel_sulfur', - amount: 14 - }, - { - fluid: 'immersivepetroleum:gasoline', - amount: 39 - } - ], - input: { - tag: 'forge:crude_oil', - amount: 75 - }, - time: 1, - energy: 2048 - }).id('kubejs:oilcracking') - // #endregion Bitumen - - // #region Coal Dust - e.replaceInput('lazierae2:coal_dust', '#forge:dusts/coal') - e.replaceInput('mekanism:dust_coal', '#forge:dusts/coal') - e.replaceOutput('lazierae2:coal_dust', 'mekanism:dust_coal') - // #endregion Coal Dust - - // #region ExtraDisks & ExtraStorage - function unifyExtraStorageDisks(entries) { - const storageTypes = [ - ['parts', 'part', 'part', 'storagepart'], - ['storage_blocks', 'storage_block', 'block', 'block'], - ['disks', 'disk/shaped', 'disk', 'disk'] - ] - - entries.forEach(size => { - storageTypes.forEach(([tagCategory, recipeCategory, disk, storage]) => { - e.replaceInput(`extrastorage:${storage}_${size}k`, `#refinedstorage:${tagCategory}/items/${size}k`) - e.replaceInput( - `extrastorage:${storage}_${size * 64}k_fluid`, - `#refinedstorage:${tagCategory}/fluids/${size * 64}k` - ) - e.replaceOutput(`extrastorage:${storage}_${size}k`, `extradisks:${size}k_storage_${disk}`) - e.replaceOutput( - `extrastorage:${storage}_${size * 64}k_fluid`, - `extradisks:${size * 64}k_fluid_storage_${disk}` - ) - e.remove({ id: `extrastorage:${recipeCategory}/${storage}_${size}k` }) - e.remove({ id: `extrastorage:${recipeCategory}/${storage}_${size * 64}k_fluid` }) - }) - e.remove({ id: `extrastorage:disk/shapeless/disk_${size}k` }) - e.remove({ id: `extrastorage:disk/shapeless/disk_${size * 64}k_fluid` }) - }) - } - - unifyExtraStorageDisks([256, 1024, 4096, 16384]) - // #endregion ExtraDisks & ExtraStorage - - // #region Honey - const simpleHoneys = ['cofh_core:honey', 'resourcefulbees:honey', 'cyclic:honey', 'create:honey'] - const customHoneys = ['resourcefulbees:catnip_honey', 'resourcefulbees:rainbow_honey'] - - function cyclicHoneyMelter(entries) { - entries.forEach(([input, honey, honeyAmount]) => { - e.custom({ - type: 'cyclic:melter', - inputFirst: { - item: input - }, - result: { - fluid: honey, - count: honeyAmount - } - }).id(`kubejs:melter/${input.substring(input.indexOf(':') + 1)}/0`) - e.custom({ - type: 'cyclic:melter', - inputFirst: { - item: input - }, - inputSecond: { - item: input - }, - result: { - fluid: honey, - count: honeyAmount * 2 - } - }).id(`kubejs:melter/${input.substring(input.indexOf(':') + 1)}/1`) - }) - } - - function createHoneyMixing(entries) { - entries.forEach(([output, amount, honey, inputs, id]) => { - let honeyMixingRecipe = { - type: 'create:mixing', - results: [ - { - item: output, - amount: amount - } - ] - } - let honeyMixingInputs = [ - { - fluidTag: 'forge:honey', - amount: honey - } - ] - inputs.forEach(([input, type]) => { - honeyMixingInputs.push(type == 0 ? { item: input } : { tag: input }) - }) - honeyMixingRecipe = Object.assign({ ingredients: honeyMixingInputs }, honeyMixingRecipe) - e.custom(honeyMixingRecipe).id( - id - ? `kubejs:honey_mixing/${output.substring(output.indexOf(':') + 1)}/${id}` - : `kubejs:honey_mixing/${output.substring(output.indexOf(':') + 1)}` - ) - }) - } - - removeRecipesByID([ - 'create:emptying/honey_bottle', - 'cyclic:melter_honey', - 'cyclic:melter_honey1', - 'cyclic:melter_honeybottle', - 'cyclic:melter_honeybottle1', - 'cyclic:solidifier_honeynest', - 'cyclic:solidifier_honeycookie', - 'cyclic:solidifier_honeymelon', - 'cyclic:solidifier_apple_enchanted', - 'cyclic:solidifier_honeyhive', - 'cyclic:solidifier_apple0', - 'cyclic:solidifier_honey_block0', - 'cyclic:solidifier_amber', - 'cyclic:solidifier_honeycomb', - 'cyclic:solidifier_honey_block', - 'cyclic:solidifier_apple', - 'cyclic:solidifier_honeypie', - 'cyclic:solidifier_honeycake', - 'cyclic:solidifier_honeycarrot', - 'cyclic:solidifier_honey_bottle', - 'thermal:machine/chiller/chiller_honey_to_honey_block', - 'thermal:machine/bottler/bottler_honey_bottle', - 'thermal:machine/centrifuge/centrifuge_honeycomb', - 'thermal:machine/crucible/crucible_honey_block_to_honey' - ]) - - e.recipes.create - .emptying(['minecraft:glass_bottle', Fluid.of('resourcefulbees:honey', 250)], 'minecraft:honey_bottle') - .id('kubejs:emptying/honey_bottle') - - e.recipes.thermal - .centrifuge(Fluid.of('resourcefulbees:honey', 100), '#forge:simple_honeycombs') - .id(`kubejs:machine/centrifuge/centrifuge_honeycomb`) - e.recipes.thermal - .centrifuge(Fluid.of('resourcefulbees:honey', 900), '#forge:simple_honeycomb_blocks') - .id(`kubejs:machine/centrifuge/centrifuge_honeycomb_block`) - e.recipes.thermal - .crucible(Fluid.of('resourcefulbees:honey', 1000), 'minecraft:honey_block') - .id('kubejs:machine/crucible/crucible_honey_block_to_honey') - - simpleHoneys.forEach((honey, index) => { - e.recipes.thermal - .chiller('minecraft:honey_block', Fluid.of(honey, 1000)) - .id(`kubejs:machine/chiller/chiller_honey_to_honey_block/${index}`) - e.recipes.thermal - .bottler('minecraft:honey_bottle', [Fluid.of(honey, 250), 'minecraft:glass_bottle']) - .id(`kubejs:machine/bottler/bottler_honey_bottle/${index}`) - }) - customHoneys.forEach(honey => { - e.recipes.thermal - .chiller(`${honey}_block`, Fluid.of(honey, 1000)) - .id(`kubejs:machine/chiller/chiller_honey_to_honey_block/${honey.substring(honey.indexOf(':') + 1)}`) - e.recipes.thermal - .bottler(`${honey}_bottle`, [Fluid.of(honey, 250), 'minecraft:glass_bottle']) - .id(`kubejs:machine/bottler/bottler_honey_bottle/${honey.substring(honey.indexOf(':') + 1)}`) - e.recipes.thermal - .centrifuge( - Fluid.of(honey, 100), - honey.includes('rainbow') ? 'resourcefulbees:rgbee_honeycomb' : `${honey}comb` - ) - .id(`kubejs:machine/centrifuge/centrifuge_honeycomb/${honey.substring(honey.indexOf(':') + 1)}`) - e.recipes.thermal - .centrifuge( - Fluid.of(honey, 900), - honey.includes('rainbow') ? 'resourcefulbees:rgbee_honeycomb_block' : `${honey}comb_block` - ) - .id(`kubejs:machine/centrifuge/centrifuge_honeycomb_block/${honey.substring(honey.indexOf(':') + 1)}`) - e.recipes.thermal - .crucible(Fluid.of(honey, 1000), `${honey}_block`) - .id(`kubejs:machine/crucible/crucible_honey_block_to_honey/${honey.substring(honey.indexOf(':') + 1)}`) - }) - - cyclicHoneyMelter([ - ['minecraft:honey_bottle', 'resourcefulbees:honey', 250], - ['minecraft:honey_block', 'resourcefulbees:honey', 1000], - ['resourcefulbees:catnip_honey_bottle', 'resourcefulbees:catnip_honey', 250], - ['resourcefulbees:catnip_honey_block', 'resourcefulbees:catnip_honey', 1000], - ['resourcefulbees:rainbow_honey_bottle', 'resourcefulbees:rainbow_honey', 250], - ['resourcefulbees:rainbow_honey_block', 'resourcefulbees:rainbow_honey', 1000] - ]) - - createHoneyMixing([ - [ - 'minecraft:bee_nest', - 1, - 8000, - [ - ['resourcefulbees:resourceful_honeycomb_block', 1], - ['resourcefulbees:resourceful_honeycomb', 1], - ['resourcefulbees:resourceful_honeycomb_block', 1] - ] - ], - [ - 'minecraft:cookie', - 16, - 50, - [ - ['minecraft:wheat', 0], - ['minecraft:cocoa_beans', 0], - ['minecraft:wheat', 0] - ] - ], - [ - 'minecraft:glistering_melon_slice', - 2, - 100, - [ - ['minecraft:melon_slice', 0], - ['forge:nuggets/gold', 1], - ['minecraft:melon_slice', 0] - ] - ], - [ - 'minecraft:enchanted_golden_apple', - 1, - 4000, - [ - ['cyclic:apple_diamond', 0], - ['minecraft:netherite_block', 0], - ['minecraft:golden_apple', 0] - ] - ], - [ - 'minecraft:beehive', - 3, - 100, - [ - ['forge:chests', 1], - ['resourcefulbees:resourceful_honeycomb', 1], - ['forge:rods/wooden', 1] - ] - ], - [ - 'cyclic:gem_amber', - 1, - 500, - [ - ['minecraft:fire_charge', 0], - ['forge:dusts/redstone', 1], - ['minecraft:magma_block', 0] - ] - ], - [ - 'minecraft:honeycomb_block', - 1, - 100, - [ - ['resourcefulbees:resourceful_honeycomb', 1], - ['resourcefulbees:resourceful_honeycomb', 1], - ['resourcefulbees:resourceful_honeycomb', 1] - ] - ], - [ - 'minecraft:honey_block', - 1, - 1000, - [ - ['forge:rods/wooden', 1], - ['forge:rods/wooden', 1], - ['forge:rods/wooden', 1] - ], - 1 - ], - [ - 'cyclic:apple_honey', - 3, - 300, - [ - ['minecraft:apple', 0], - ['minecraft:apple', 0], - ['minecraft:apple', 0] - ], - 1 - ], - [ - 'minecraft:pumpkin_pie', - 1, - 100, - [ - ['minecraft:egg', 0], - ['minecraft:pumpkin', 0], - ['minecraft:egg', 0] - ] - ], - [ - 'minecraft:cake', - 1, - 500, - [ - ['minecraft:egg', 0], - ['minecraft:wheat', 0], - ['minecraft:egg', 0] - ] - ], - [ - 'minecraft:golden_carrot', - 2, - 100, - [ - ['minecraft:carrot', 0], - ['forge:nuggets/gold', 1], - ['minecraft:carrot', 0] - ] - ], - [ - 'minecraft:honey_bottle', - 3, - 750, - [ - ['minecraft:glass_bottle', 0], - ['minecraft:glass_bottle', 0], - ['minecraft:glass_bottle', 0] - ] - ], - ['cyclic:apple_honey', 1, 100, [['minecraft:apple', 0]], 2], - ['minecraft:honey_block', 1, 1000, [['forge:rods/wooden', 1]], 2] - ]) - // #endregion Honey - - // #region Oil - removeRecipesByID([ - 'thermal:machine/centrifuge/centrifuge_oil_sand', - 'thermal:machine/centrifuge/centrifuge_oil_red_sand' - ]) - - // crude - e.recipes.thermal - .centrifuge( - [Fluid.of('pneumaticcraft:oil', 100), 'minecraft:sand', 'thermal:bitumen', 'thermal:tar'], - 'thermal:oil_sand' - ) - .id('kubejs:machine/centrifuge/centrifuge_oil_sand') - e.recipes.thermal - .centrifuge( - [Fluid.of('pneumaticcraft:oil', 100), 'minecraft:red_sand', 'thermal:bitumen', 'thermal:tar'], - 'thermal:oil_red_sand' - ) - .id('kubejs:machine/centrifuge/centrifuge_oil_red_sand') - e.custom({ - type: 'thermal:refinery', - ingredient: { - fluid: 'pneumaticcraft:oil', - amount: 100 - }, - result: [ - { - fluid: 'thermal:heavy_oil', - amount: 40 - }, - { - fluid: 'thermal:light_oil', - amount: 60 - }, - { - item: 'thermal:bitumen', - chance: 0.1 - } - ], - energy: 6000 - }).id('kubejs:machine/refinery/pneumatic_crude_oil') - e.custom({ - type: 'thermal:refinery', - ingredient: { - fluid: 'immersivepetroleum:oil', - amount: 100 - }, - result: [ - { - fluid: 'thermal:heavy_oil', - amount: 40 - }, - { - fluid: 'thermal:light_oil', - amount: 60 - }, - { - item: 'thermal:bitumen', - chance: 0.1 - } - ], - energy: 6000 - }).id('kubejs:machine/refinery/immersive_crude_oil') - e.custom({ - type: 'pneumaticcraft:amadron', - input: { - type: 'FLUID', - id: 'thermal:crude_oil', - amount: 5000 - }, - output: { - type: 'ITEM', - id: 'minecraft:emerald', - amount: 1 - }, - static: true, - level: 0 - }).id('kubejs:amadron/thermal/oil_to_emerald') - e.custom({ - type: 'pneumaticcraft:amadron', - input: { - type: 'FLUID', - id: 'immersivepetroleum:oil', - amount: 5000 - }, - output: { - type: 'ITEM', - id: 'minecraft:emerald', - amount: 1 - }, - static: true, - level: 0 - }).id('kubejs:amadron/immersive/oil_to_emerald') - - // creosote - e.recipes.thermal - .pyrolyzer([Fluid.of('immersiveengineering:creosote', 250), 'minecraft:charcoal'], '#minecraft:logs') - .id('kubejs:machine/pyrolyzer/charcoal') - e.recipes.thermal - .pyrolyzer( - [Fluid.of('immersiveengineering:creosote', 5000), 'immersiveengineering:coke'], - '#forge:storage_blocks/coal' - ) - .id('kubejs:machine/pyrolyzer/coke_block') - e.custom({ - type: 'industrialforegoing:dissolution_chamber', - input: [ - { - tag: 'minecraft:planks' - } - ], - inputFluid: '{FluidName:"immersiveengineering:creosote",Amount:125}', - processingTime: 5, - output: { - item: 'immersiveengineering:treated_wood_horizontal', - count: 1 - } - }) - e.custom({ - type: 'industrialforegoing:dissolution_chamber', - input: [ - { - tag: 'minecraft:planks' - } - ], - inputFluid: '{FluidName:"thermal:creosote",Amount:125}', - processingTime: 5, - output: { - item: 'immersiveengineering:treated_wood_horizontal', - count: 1 - } - }) - // #endregion Oil -}) +//priority: 997 +onEvent('recipes', e => { + // #region Functions + function removeRecipesByID(recipes) { + recipes.forEach(recipe => { + e.remove({ id: recipe }) + }) + } + function unifyMetal(name, ingotItem, dustItem, blockItem, nuggetItem) { + e.replaceOutput(`#forge:ingots/${name}`, ingotItem) + e.replaceOutput(`#forge:dusts/${name}`, dustItem) + e.replaceOutput(`#forge:nuggets/${name}`, nuggetItem) + e.replaceOutput(`#forge:storage_blocks/${name}`, blockItem) + e.remove({ + input: [`#forge:ores/${name}`, `#forge:dusts/${name}`], + output: `#forge:ingots/${name}`, + type: 'minecraft:smelting' + }) + e.remove({ + input: [`#forge:ores/${name}`, `#forge:dusts/${name}`], + output: `#forge:ingots/${name}`, + type: 'minecraft:blasting' + }) + if (name !== 'iron' && name !== 'gold' && name !== 'azure_silver' && name !== 'crimson_iron') { + e.remove({ + input: `#forge:ores/${name}`, + output: `mekanism:dust_${name}`, + type: 'mekanism:enriching' + }) + e.remove({ + input: `mekanism:dirty_dust_${name}`, + output: `mekanism:dust_${name}`, + type: 'mekanism:enriching' + }) + e.remove({ + input: `#mekanism:clumps/${name}`, + output: `mekanism:dirty_dust_${name}`, + type: 'mekanism:crushing' + }) + e.remove({ + input: `#forge:ores/${name}`, + output: `mekanism:clump_${name}`, + type: 'mekanism:purifying' + }) + e.remove({ + input: `mekanism:shard_${name}`, + output: `mekanism:clump_${name}`, + type: 'mekanism:purifying' + }) + e.remove({ + input: `#forge:ores/${name}`, + output: `mekanism:shard_${name}`, + type: 'mekanism:injecting' + }) + e.remove({ + input: `#mekanism:crystals/${name}`, + output: `mekanism:shard_${name}`, + type: 'mekanism:injecting' + }) + } + e.remove({ + input: `#forge:ores/${name}`, + type: 'immersiveengineering:crusher' + }) + e.remove({ + input: `#forge:ingots/${name}`, + type: 'immersiveengineering:crusher' + }) + e.recipes.minecraft.smelting(ingotItem, `#forge:dusts/${name}`).xp(0.5) + e.recipes.minecraft.blasting(ingotItem, `#forge:dusts/${name}`).xp(0.5) + e.recipes.pedestals.pedestal_crushing({ + ingredient: { + tag: `forge:ingots/${name}` + }, + result: { + item: dustItem, + count: 1 + } + }) + e.remove({ + id: `appliedenergistics2:grinder/${name}_dust_ingot` + }) + e.recipes.appliedenergistics2.grinder({ + input: { + tag: `forge:ingots/${name}` + }, + result: { + primary: { + item: dustItem, + count: 1 + } + }, + turns: 8 + }) + e.recipes.immersiveengineering.crusher({ + secondaries: [], + result: { + base_ingredient: { + item: dustItem + } + }, + input: { + tag: `forge:ingots/${name}` + }, + energy: 3000 + }) + + if (!ingredient.of(`#forge:ores/${name}`).stacks.empty) { + e.recipes.minecraft.smelting(ingotItem, `#forge:ores/${name}`).xp(1) + e.recipes.minecraft.blasting(ingotItem, `#forge:ores/${name}`).xp(1) + e.recipes.mekanism.enriching(item.of(dustItem, 2), `#forge:ores/${name}`) + //This is here to stop crushing hammer recipes for modium from generating + if (name !== 'allthemodium' && name !== 'vibranium' && name !== 'unobtainium') { + e.remove({ + id: `engineerstools:crushing/${name}_grit_crushing_recipe` + }) + e.recipes.engineerstools.crafting_extended_shapeless({ + group: 'grit', + ingredients: [ + { + tag: `forge:ores/${name}` + }, + { + item: 'engineerstools:crushing_hammer' + } + ], + result: { + item: dustItem, + count: 2 + }, + aspects: { + tool: 'engineerstools:crushing_hammer', + tool_damage: 25 + } + }) + } + e.recipes.immersiveengineering.crusher({ + secondaries: [], + result: { + count: 2, + base_ingredient: { + item: dustItem + } + }, + input: { + tag: `forge:ores/${name}` + }, + energy: 3000 + }) + e.remove({ + id: `pedestals:pedestal_crushing/dust${name}` + }) + e.recipes.pedestals.pedestal_crushing({ + ingredient: { + tag: `forge:ores/${name}` + }, + result: { + item: dustItem, + count: 2 + } + }) + e.remove({ + id: `appliedenergistics2:grinder/${name}_dust_ore` + }) + e.recipes.appliedenergistics2.grinder({ + input: { + tag: `forge:ores/${name}` + }, + result: { + primary: { + item: dustItem, + count: 2 + } + }, + turns: 8 + }) + } + e.replaceInput(nuggetItem, `#forge:nuggets/${name}`) + e.replaceInput(dustItem, `#forge:dusts/${name}`) + e.replaceInput(ingotItem, `#forge:ingots/${name}`) + e.replaceInput(blockItem, `#forge:storage_blocks/${name}`) + } + + function unifyCraftMetal(name, ingotItem, dustItem, blockItem, nuggetItem) { + e.replaceInput(nuggetItem, `#forge:nuggets/${name}`) + e.replaceInput(dustItem, `#forge:dusts/${name}`) + e.replaceInput(ingotItem, `#forge:ingots/${name}`) + e.replaceInput(blockItem, `#forge:storage_blocks/${name}`) + e.replaceOutput(`#forge:ingots/${name}`, ingotItem) + e.replaceOutput(`#forge:dusts/${name}`, dustItem) + e.replaceOutput(`#forge:nuggets/${name}`, nuggetItem) + e.replaceOutput(`#forge:storage_blocks/${name}`, blockItem) + } + // #endregion Functions + + // #region Metal Unification + //Vanilla MC + unifyMetal('gold', 'minecraft:gold_ingot', 'alltheores:gold_dust', 'minecraft:gold_block', 'minecraft:gold_nugget') + unifyMetal('iron', 'minecraft:iron_ingot', 'alltheores:iron_dust', 'minecraft:iron_block', 'minecraft:iron_nugget') + + //Multiple Mods + unifyMetal( + 'aluminum', + 'alltheores:aluminum_ingot', + 'alltheores:aluminum_dust', + 'alltheores:aluminum_block', + 'alltheores:aluminum_nugget' + ) + unifyMetal( + 'copper', + 'alltheores:copper_ingot', + 'alltheores:copper_dust', + 'alltheores:copper_block', + 'alltheores:copper_nugget' + ) + unifyMetal( + 'lead', + 'alltheores:lead_ingot', + 'alltheores:lead_dust', + 'alltheores:lead_block', + 'alltheores:lead_nugget' + ) + unifyMetal( + 'nickel', + 'alltheores:nickel_ingot', + 'alltheores:nickel_dust', + 'alltheores:nickel_block', + 'alltheores:nickel_nugget' + ) + unifyMetal( + 'platinum', + 'alltheores:platinum_ingot', + 'alltheores:platinum_dust', + 'alltheores:platinum_block', + 'alltheores:platinum_nugget' + ) + unifyMetal( + 'silver', + 'alltheores:silver_ingot', + 'alltheores:silver_dust', + 'alltheores:silver_block', + 'alltheores:silver_nugget' + ) + unifyMetal('tin', 'alltheores:tin_ingot', 'alltheores:tin_dust', 'alltheores:tin_block', 'alltheores:tin_nugget') + unifyMetal( + 'uranium', + 'alltheores:uranium_ingot', + 'alltheores:uranium_dust', + 'alltheores:uranium_block', + 'alltheores:uranium_nugget' + ) + unifyMetal( + 'zinc', + 'alltheores:zinc_ingot', + 'alltheores:zinc_dust', + 'alltheores:zinc_block', + 'alltheores:zinc_nugget' + ) + + //Mekanism + unifyMetal( + 'osmium', + 'alltheores:osmium_ingot', + 'alltheores:osmium_dust', + 'alltheores:osmium_block', + 'alltheores:osmium_nugget' + ) + + //Silent Gear + unifyMetal( + 'azure_silver', + 'silentgear:azure_silver_ingot', + 'silentgear:azure_silver_dust', + 'silentgear:azure_silver_block', + 'silentgear:azure_silver_nugget' + ) + unifyMetal( + 'crimson_iron', + 'silentgear:crimson_iron_ingot', + 'silentgear:crimson_iron_dust', + 'silentgear:crimson_iron_block', + 'silentgear:crimson_iron_nugget' + ) + + //Allthemodium (Why would we need to unify these they are only ours) + unifyMetal( + 'allthemodium', + 'allthemodium:allthemodium_ingot', + 'allthemodium:allthemodium_dust', + 'allthemodium:allthemodium_block', + 'allthemodium:allthemodium_nugget' + ) + unifyMetal( + 'vibranium', + 'allthemodium:vibranium_ingot', + 'allthemodium:vibranium_dust', + 'allthemodium:vibranium_block', + 'allthemodium:vibranium_nugget' + ) + unifyMetal( + 'unobtainium', + 'allthemodium:unobtainium_ingot', + 'allthemodium:unobtainium_dust', + 'allthemodium:unobtainium_block', + 'allthemodium:unobtainium_nugget' + ) + + //Craft only metals + //Multiple Mods crafted only (no ore) + //unifyCraftMetal('bronze', 'mekanism:ingot_bronze', 'mekanism:dust_bronze', 'mekanism:block_bronze', 'mekanism:nugget_bronze') //Replaced/Returned to unifying on thermal's bronze + unifyCraftMetal( + 'steel', + 'mekanism:ingot_steel', + 'mekanism:dust_steel', + 'mekanism:block_steel', + 'mekanism:nugget_steel' + ) + + //Thermal + unifyCraftMetal( + 'bronze', + 'thermal:bronze_ingot', + 'thermal:bronze_dust', + 'thermal:bronze_block', + 'thermal:bronze_nugget' + ) + unifyCraftMetal( + 'constantan', + 'thermal:constantan_ingot', + 'thermal:constantan_dust', + 'thermal:constantan_block', + 'thermal:constantan_nugget' + ) + unifyCraftMetal( + 'electrum', + 'thermal:electrum_ingot', + 'thermal:electrum_dust', + 'thermal:electrum_block', + 'thermal:electrum_nugget' + ) + // #endregion Metal Unification + + // #region Plate Unification + function unifyPlateSheets(types) { + types.forEach(type => { + let create = type == 'gold' ? `create:${type}en_sheet` : `create:${type}_sheet` + let output = type == 'aluminum' ? `immersiveengineering:plate_${type}` : `thermal:${type}_plate` + e.replaceInput(`thermal:${type}_plate`, `#forge:plates/${type}`) + e.replaceInput(`immersiveengineering:plate_${type}`, `#forge:plates/${type}`) + e.replaceInput(create, `#forge:plates/${type}`) + e.replaceOutput(`immersiveengineering:plate_${type}`, output) + e.replaceOutput(create, output) + if (type != 'aluminum') { + e.remove({ id: `tconstruct:smeltery/casting/metal/${type}/plate_gold_cast` }) + e.remove({ id: `tconstruct:smeltery/casting/metal/${type}/plate_sand_cast` }) + } + }) + } + + unifyPlateSheets([ + 'iron', + 'gold', + 'copper', + 'tin', + 'lead', + 'silver', + 'nickel', + 'bronze', + 'electrum', + 'invar', + 'constantan', + 'signalum', + 'lumium', + 'enderium', + 'aluminum' + ]) + // #endregion Plate Unification + + // #region Tinkers Unification + function tinkerMelting(material, type, typeValues, temperature, time, byproduct) { + const recipe = { + type: 'tconstruct:melting', + ingredient: { + tag: `forge:${type}/${material}` + }, + result: { + fluid: `alltheores:molten_${material}`, + amount: typeValues.amount + }, + temperature: temperature, + time: time * typeValues.multiplier + } + e.custom(type != 'ores' ? recipe : Object.assign({ byproducts: byproduct }, recipe)).id( + `kubejs:melting/${type}/${material}` + ) + } + + function tinkerBlockMelting(entries) { + entries.forEach(([input, fluidAmount, time, byproductAmount], index) => { + e.custom({ + type: 'tconstruct:melting', + ingredient: input, + result: { + fluid: 'alltheores:molten_copper', + amount: fluidAmount + }, + temperature: 500, + time: time, + byproducts: [ + { + fluid: 'tconstruct:seared_stone', + amount: byproductAmount + } + ] + }).id(`kubejs:melting/copper/fromblock/${index + 1}`) + }) + } + + function tinkerAlloys(entries) { + entries.forEach(([output, outputAmount, temperature, inputs]) => { + e.remove({ id: `tconstruct:smeltery/alloys/molten_${output}` }) + e.custom({ + type: 'tconstruct:alloy', + conditions: [ + { + value: { + tag: `forge:ingots/${output}`, + type: 'forge:tag_empty' + }, + type: 'forge:not' + } + ], + inputs: inputs, + result: { + fluid: `tconstruct:molten_${output}`, + amount: outputAmount + }, + temperature: temperature + }).id(`kubejs:melting/alloys/${output}`) + }) + } + + function unifyTinkers(entries) { + const meltingTypes = [ + 'block', + 'can', + 'coin', + 'dust', + 'gear', + 'ingot', + 'nugget', + 'ore', + 'plates', + 'rod', + 'sheetmetal' + ] + const meltingTypeValues = { + storage_blocks: { + amount: 1296, + multiplier: 88.125 + }, + dusts: { + amount: 144, + multiplier: 21.75 + }, + gears: { + amount: 576, + multiplier: 58.8 + }, + ingots: { + amount: 144, + multiplier: 29.4 + }, + nuggets: { + amount: 16, + multiplier: 10.0 + }, + ores: { + amount: 144, + multiplier: 44.1 + }, + plates: { + amount: 144, + multiplier: 29.4 + }, + rods: { + amount: 72, + multiplier: 5.88 + }, + sheetmetals: { + amount: 144, + multiplier: 29.4 + } + } + const meltingParts = [ + 'broad_axe_head', + 'broad_blade', + 'hammer_head', + 'large_plate', + 'pickaxe_head', + 'repair_kit', + 'small_axe_head', + 'small_blade', + 'tool_binding', + 'tool_handle', + 'tough_handle' + ] + + entries.forEach(([material, temperature, time, types, byproduct]) => { + e.replaceInput(`tconstruct:${material}_ingot`, `#forge:ingots/${material}`) + e.replaceInput(`tmechworks:${material}_ingot`, `#forge:ingots/${material}`) + e.replaceInput(`tconstruct:${material}_block`, `#forge:storage_blocks/${material}`) + e.replaceInput(`tmechworks:${material}_block`, `#forge:storage_blocks/${material}`) + e.replaceOutput(`tconstruct:${material}_ingot`, `alltheores:${material}_ingot`) + e.replaceOutput(`tmechworks:${material}_ingot`, `alltheores:${material}_ingot`) + e.replaceOutput(`tconstruct:${material}_block`, `alltheores:${material}_block`) + e.replaceOutput(`tmechworks:${material}_block`, `alltheores:${material}_block`) + + meltingTypes.forEach(meltingType => { + e.remove({ id: `tconstruct:smeltery/melting/metal/${material}/${meltingType}` }) + for (let type in meltingTypeValues) { + if (types.includes(type)) { + tinkerMelting(material, type, meltingTypeValues[type], temperature, time, byproduct) + } + } + }) + meltingParts.forEach(meltingPart => { + e.remove({ id: `tconstruct:tools/parts/melting/${meltingPart}/tconstruct/${material}` }) + }) + }) + } + + unifyTinkers([ + [ + 'aluminum', + 425, + 1.6, + ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores', 'plates', 'rods', 'sheetmetals'], + [{ fluid: 'tconstruct:molten_iron', amount: 48 }] + ], + [ + 'copper', + 500, + 1.7, + ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], + [{ fluid: 'tconstruct:molten_gold', amount: 16 }] + ], + [ + 'lead', + 330, + 1.4, + ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], + [{ fluid: 'alltheores:molten_silver', amount: 48 }] + ], + [ + 'nickel', + 950, + 2.2, + ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], + [{ fluid: 'alltheores:molten_platinum', amount: 16 }] + ], + [ + 'osmium', + 975, + 2.2, + ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores'], + [{ fluid: 'tconstruct:molten_iron', amount: 48 }] + ], + [ + 'platinum', + 970, + 2.2, + ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores'], + [{ fluid: 'tconstruct:molten_gold', amount: 48 }] + ], + [ + 'silver', + 790, + 2.0, + ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], + [{ fluid: 'alltheores:molten_lead', amount: 48 }] + ], + [ + 'tin', + 225, + 1.3, + ['storage_blocks', 'dusts', 'gears', 'ingots', 'nuggets', 'ores', 'plates'], + [{ fluid: 'alltheores:molten_copper', amount: 48 }] + ], + [ + 'uranium', + 830, + 2.0, + ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores', 'plates', 'sheetmetals'], + [{ fluid: 'alltheores:molten_lead', amount: 48 }] + ], + [ + 'zinc', + 420, + 1.6, + ['storage_blocks', 'dusts', 'ingots', 'nuggets', 'ores'], + [{ fluid: 'alltheores:molten_tin', amount: 48 }] + ] + ]) + + tinkerAlloys([ + [ + 'brass', + 288, + 605, + [ + { tag: 'forge:molten_copper', amount: 144 }, + { tag: 'forge:molten_zinc', amount: 144 } + ] + ], + [ + 'bronze', + 576, + 700, + [ + { tag: 'forge:molten_copper', amount: 432 }, + { tag: 'forge:molten_tin', amount: 144 } + ] + ], + [ + 'constantan', + 288, + 920, + [ + { tag: 'forge:molten_copper', amount: 144 }, + { tag: 'forge:molten_nickel', amount: 144 } + ] + ], + [ + 'electrum', + 288, + 760, + [ + { tag: 'tconstruct:molten_gold', amount: 144 }, + { tag: 'forge:molten_silver', amount: 144 } + ] + ], + [ + 'hepatizon', + 288, + 1400, + [ + { tag: 'forge:molten_copper', amount: 288 }, + { tag: 'tconstruct:molten_cobalt', amount: 144 }, + { tag: 'tconstruct:molten_obsidian', amount: 1000 } + ] + ], + [ + 'invar', + 432, + 900, + [ + { tag: 'tconstruct:molten_iron', amount: 288 }, + { tag: 'forge:molten_nickel', amount: 144 } + ] + ], + [ + 'pewter', + 288, + 400, + [ + { tag: 'tconstruct:molten_iron', amount: 144 }, + { tag: 'forge:molten_lead', amount: 144 } + ] + ], + [ + 'rose_gold', + 576, + 550, + [ + { tag: 'forge:molten_copper', amount: 432 }, + { tag: 'tconstruct:molten_gold', amount: 144 } + ] + ], + [ + 'tinkers_bronze', + 432, + 700, + [ + { tag: 'forge:molten_copper', amount: 432 }, + { tag: 'tconstruct:molten_glass', amount: 1000 } + ] + ] + ]) + + e.remove({ id: 'tconstruct:smeltery/melting/copper/smeltery_controller' }) + e.remove({ id: 'tconstruct:smeltery/melting/copper/smeltery_io' }) + tinkerBlockMelting([ + [{ item: 'tconstruct:smeltery_controller' }, 576, 175, 1152], + [[{ item: 'tconstruct:seared_drain' }, { item: 'tconstruct:seared_chute' }], 288, 125, 576] + ]) + + e.custom({ + "type": "tconstruct:casting_basin", + "cast": { + "item": "tconstruct:seared_heater" + }, + "cast_consumed": true, + "fluid": { + "name": "alltheores:molten_copper", + "amount": 576 + }, + "result": "tconstruct:smeltery_controller", + "cooling_time": 100 + }) + + // #endregion Tinkers Unification + + // Certus Quartz + e.replaceInput('appliedenergistics2:certus_quartz_dust', '#forge:dusts/certus_quartz') + + // #region Bitumen + e.replaceInput('thermal:bitumen', '#forge:bitumen') + e.replaceInput('immersivepetroleum:bitumen', '#forge:bitumen') + e.replaceOutput('immersivepetroleum:bitumen', 'thermal:bitumen') + e.remove({ id: 'immersivepetroleum:distillationtower/oilcracking' }) + e.remove({ output: 'immersivepetroleum:asphalt' }) + e.shaped('immersivepetroleum:asphalt', ['SBS', 'GWG', 'SBS'], { + S: '#forge:sand', + B: '#forge:bitumen', + G: '#forge:gravel', + W: ['minecraft:water_bucket', 'create:honey_bucket', 'create:chocolate_bucket', 'mahoutsukai:murky_bucket'] + }).id('kubejs:asphalt_1') + e.shaped('immersivepetroleum:asphalt', ['SBS', 'GWG', 'SBS'], { + S: '#forge:slag', + B: '#forge:bitumen', + G: '#forge:gravel', + W: ['minecraft:water_bucket', 'create:honey_bucket', 'create:chocolate_bucket', 'mahoutsukai:murky_bucket'] + }).id('kubejs:asphalt_2') + e.shaped('immersivepetroleum:asphalt', ['S', 'S'], { + S: 'immersivepetroleum:asphalt_slab' + }).id('kubejs:asphalt_3') + e.custom({ + type: 'immersivepetroleum:distillation', + byproducts: [ + { + item: 'thermal:bitumen', + chance: 0.07 + } + ], + results: [ + { + fluid: 'immersivepetroleum:lubricant', + amount: 9 + }, + { + fluid: 'immersivepetroleum:diesel_sulfur', + amount: 14 + }, + { + fluid: 'immersivepetroleum:gasoline', + amount: 39 + } + ], + input: { + tag: 'forge:crude_oil', + amount: 75 + }, + time: 1, + energy: 2048 + }).id('kubejs:oilcracking') + // #endregion Bitumen + + // #region Coal Dust + e.replaceInput('lazierae2:coal_dust', '#forge:dusts/coal') + e.replaceInput('mekanism:dust_coal', '#forge:dusts/coal') + e.replaceOutput('lazierae2:coal_dust', 'mekanism:dust_coal') + // #endregion Coal Dust + + // #region ExtraDisks & ExtraStorage + function unifyExtraStorageDisks(entries) { + const storageTypes = [ + ['parts', 'part', 'part', 'storagepart'], + ['storage_blocks', 'storage_block', 'block', 'block'], + ['disks', 'disk/shaped', 'disk', 'disk'] + ] + + entries.forEach(size => { + storageTypes.forEach(([tagCategory, recipeCategory, disk, storage]) => { + e.replaceInput(`extrastorage:${storage}_${size}k`, `#refinedstorage:${tagCategory}/items/${size}k`) + e.replaceInput( + `extrastorage:${storage}_${size * 64}k_fluid`, + `#refinedstorage:${tagCategory}/fluids/${size * 64}k` + ) + e.replaceOutput(`extrastorage:${storage}_${size}k`, `extradisks:${size}k_storage_${disk}`) + e.replaceOutput( + `extrastorage:${storage}_${size * 64}k_fluid`, + `extradisks:${size * 64}k_fluid_storage_${disk}` + ) + e.remove({ id: `extrastorage:${recipeCategory}/${storage}_${size}k` }) + e.remove({ id: `extrastorage:${recipeCategory}/${storage}_${size * 64}k_fluid` }) + }) + e.remove({ id: `extrastorage:disk/shapeless/disk_${size}k` }) + e.remove({ id: `extrastorage:disk/shapeless/disk_${size * 64}k_fluid` }) + }) + } + + unifyExtraStorageDisks([256, 1024, 4096, 16384]) + // #endregion ExtraDisks & ExtraStorage + + // #region Honey + const simpleHoneys = ['cofh_core:honey', 'resourcefulbees:honey', 'cyclic:honey', 'create:honey'] + const customHoneys = ['resourcefulbees:catnip_honey', 'resourcefulbees:rainbow_honey'] + + function cyclicHoneyMelter(entries) { + entries.forEach(([input, honey, honeyAmount]) => { + e.custom({ + type: 'cyclic:melter', + inputFirst: { + item: input + }, + result: { + fluid: honey, + count: honeyAmount + } + }).id(`kubejs:melter/${input.substring(input.indexOf(':') + 1)}/0`) + e.custom({ + type: 'cyclic:melter', + inputFirst: { + item: input + }, + inputSecond: { + item: input + }, + result: { + fluid: honey, + count: honeyAmount * 2 + } + }).id(`kubejs:melter/${input.substring(input.indexOf(':') + 1)}/1`) + }) + } + + function createHoneyMixing(entries) { + entries.forEach(([output, amount, honey, inputs, id]) => { + let honeyMixingRecipe = { + type: 'create:mixing', + results: [ + { + item: output, + amount: amount + } + ] + } + let honeyMixingInputs = [ + { + fluidTag: 'forge:honey', + amount: honey + } + ] + inputs.forEach(([input, type]) => { + honeyMixingInputs.push(type == 0 ? { item: input } : { tag: input }) + }) + honeyMixingRecipe = Object.assign({ ingredients: honeyMixingInputs }, honeyMixingRecipe) + e.custom(honeyMixingRecipe).id( + id + ? `kubejs:honey_mixing/${output.substring(output.indexOf(':') + 1)}/${id}` + : `kubejs:honey_mixing/${output.substring(output.indexOf(':') + 1)}` + ) + }) + } + + removeRecipesByID([ + 'create:emptying/honey_bottle', + 'cyclic:melter_honey', + 'cyclic:melter_honey1', + 'cyclic:melter_honeybottle', + 'cyclic:melter_honeybottle1', + 'cyclic:solidifier_honeynest', + 'cyclic:solidifier_honeycookie', + 'cyclic:solidifier_honeymelon', + 'cyclic:solidifier_apple_enchanted', + 'cyclic:solidifier_honeyhive', + 'cyclic:solidifier_apple0', + 'cyclic:solidifier_honey_block0', + 'cyclic:solidifier_amber', + 'cyclic:solidifier_honeycomb', + 'cyclic:solidifier_honey_block', + 'cyclic:solidifier_apple', + 'cyclic:solidifier_honeypie', + 'cyclic:solidifier_honeycake', + 'cyclic:solidifier_honeycarrot', + 'cyclic:solidifier_honey_bottle', + 'thermal:machine/chiller/chiller_honey_to_honey_block', + 'thermal:machine/bottler/bottler_honey_bottle', + 'thermal:machine/centrifuge/centrifuge_honeycomb', + 'thermal:machine/crucible/crucible_honey_block_to_honey' + ]) + + e.recipes.create + .emptying(['minecraft:glass_bottle', Fluid.of('resourcefulbees:honey', 250)], 'minecraft:honey_bottle') + .id('kubejs:emptying/honey_bottle') + + e.recipes.thermal + .centrifuge(Fluid.of('resourcefulbees:honey', 100), '#forge:simple_honeycombs') + .id(`kubejs:machine/centrifuge/centrifuge_honeycomb`) + e.recipes.thermal + .centrifuge(Fluid.of('resourcefulbees:honey', 900), '#forge:simple_honeycomb_blocks') + .id(`kubejs:machine/centrifuge/centrifuge_honeycomb_block`) + e.recipes.thermal + .crucible(Fluid.of('resourcefulbees:honey', 1000), 'minecraft:honey_block') + .id('kubejs:machine/crucible/crucible_honey_block_to_honey') + + simpleHoneys.forEach((honey, index) => { + e.recipes.thermal + .chiller('minecraft:honey_block', Fluid.of(honey, 1000)) + .id(`kubejs:machine/chiller/chiller_honey_to_honey_block/${index}`) + e.recipes.thermal + .bottler('minecraft:honey_bottle', [Fluid.of(honey, 250), 'minecraft:glass_bottle']) + .id(`kubejs:machine/bottler/bottler_honey_bottle/${index}`) + }) + customHoneys.forEach(honey => { + e.recipes.thermal + .chiller(`${honey}_block`, Fluid.of(honey, 1000)) + .id(`kubejs:machine/chiller/chiller_honey_to_honey_block/${honey.substring(honey.indexOf(':') + 1)}`) + e.recipes.thermal + .bottler(`${honey}_bottle`, [Fluid.of(honey, 250), 'minecraft:glass_bottle']) + .id(`kubejs:machine/bottler/bottler_honey_bottle/${honey.substring(honey.indexOf(':') + 1)}`) + e.recipes.thermal + .centrifuge( + Fluid.of(honey, 100), + honey.includes('rainbow') ? 'resourcefulbees:rgbee_honeycomb' : `${honey}comb` + ) + .id(`kubejs:machine/centrifuge/centrifuge_honeycomb/${honey.substring(honey.indexOf(':') + 1)}`) + e.recipes.thermal + .centrifuge( + Fluid.of(honey, 900), + honey.includes('rainbow') ? 'resourcefulbees:rgbee_honeycomb_block' : `${honey}comb_block` + ) + .id(`kubejs:machine/centrifuge/centrifuge_honeycomb_block/${honey.substring(honey.indexOf(':') + 1)}`) + e.recipes.thermal + .crucible(Fluid.of(honey, 1000), `${honey}_block`) + .id(`kubejs:machine/crucible/crucible_honey_block_to_honey/${honey.substring(honey.indexOf(':') + 1)}`) + }) + + cyclicHoneyMelter([ + ['minecraft:honey_bottle', 'resourcefulbees:honey', 250], + ['minecraft:honey_block', 'resourcefulbees:honey', 1000], + ['resourcefulbees:catnip_honey_bottle', 'resourcefulbees:catnip_honey', 250], + ['resourcefulbees:catnip_honey_block', 'resourcefulbees:catnip_honey', 1000], + ['resourcefulbees:rainbow_honey_bottle', 'resourcefulbees:rainbow_honey', 250], + ['resourcefulbees:rainbow_honey_block', 'resourcefulbees:rainbow_honey', 1000] + ]) + + createHoneyMixing([ + [ + 'minecraft:bee_nest', + 1, + 8000, + [ + ['resourcefulbees:resourceful_honeycomb_block', 1], + ['resourcefulbees:resourceful_honeycomb', 1], + ['resourcefulbees:resourceful_honeycomb_block', 1] + ] + ], + [ + 'minecraft:cookie', + 16, + 50, + [ + ['minecraft:wheat', 0], + ['minecraft:cocoa_beans', 0], + ['minecraft:wheat', 0] + ] + ], + [ + 'minecraft:glistering_melon_slice', + 2, + 100, + [ + ['minecraft:melon_slice', 0], + ['forge:nuggets/gold', 1], + ['minecraft:melon_slice', 0] + ] + ], + [ + 'minecraft:enchanted_golden_apple', + 1, + 4000, + [ + ['cyclic:apple_diamond', 0], + ['minecraft:netherite_block', 0], + ['minecraft:golden_apple', 0] + ] + ], + [ + 'minecraft:beehive', + 3, + 100, + [ + ['forge:chests', 1], + ['resourcefulbees:resourceful_honeycomb', 1], + ['forge:rods/wooden', 1] + ] + ], + [ + 'cyclic:gem_amber', + 1, + 500, + [ + ['minecraft:fire_charge', 0], + ['forge:dusts/redstone', 1], + ['minecraft:magma_block', 0] + ] + ], + [ + 'minecraft:honeycomb_block', + 1, + 100, + [ + ['resourcefulbees:resourceful_honeycomb', 1], + ['resourcefulbees:resourceful_honeycomb', 1], + ['resourcefulbees:resourceful_honeycomb', 1] + ] + ], + [ + 'minecraft:honey_block', + 1, + 1000, + [ + ['forge:rods/wooden', 1], + ['forge:rods/wooden', 1], + ['forge:rods/wooden', 1] + ], + 1 + ], + [ + 'cyclic:apple_honey', + 3, + 300, + [ + ['minecraft:apple', 0], + ['minecraft:apple', 0], + ['minecraft:apple', 0] + ], + 1 + ], + [ + 'minecraft:pumpkin_pie', + 1, + 100, + [ + ['minecraft:egg', 0], + ['minecraft:pumpkin', 0], + ['minecraft:egg', 0] + ] + ], + [ + 'minecraft:cake', + 1, + 500, + [ + ['minecraft:egg', 0], + ['minecraft:wheat', 0], + ['minecraft:egg', 0] + ] + ], + [ + 'minecraft:golden_carrot', + 2, + 100, + [ + ['minecraft:carrot', 0], + ['forge:nuggets/gold', 1], + ['minecraft:carrot', 0] + ] + ], + [ + 'minecraft:honey_bottle', + 3, + 750, + [ + ['minecraft:glass_bottle', 0], + ['minecraft:glass_bottle', 0], + ['minecraft:glass_bottle', 0] + ] + ], + ['cyclic:apple_honey', 1, 100, [['minecraft:apple', 0]], 2], + ['minecraft:honey_block', 1, 1000, [['forge:rods/wooden', 1]], 2] + ]) + // #endregion Honey + + // #region Oil + removeRecipesByID([ + 'thermal:machine/centrifuge/centrifuge_oil_sand', + 'thermal:machine/centrifuge/centrifuge_oil_red_sand' + ]) + + // crude + e.recipes.thermal + .centrifuge( + [Fluid.of('pneumaticcraft:oil', 100), 'minecraft:sand', 'thermal:bitumen', 'thermal:tar'], + 'thermal:oil_sand' + ) + .id('kubejs:machine/centrifuge/centrifuge_oil_sand') + e.recipes.thermal + .centrifuge( + [Fluid.of('pneumaticcraft:oil', 100), 'minecraft:red_sand', 'thermal:bitumen', 'thermal:tar'], + 'thermal:oil_red_sand' + ) + .id('kubejs:machine/centrifuge/centrifuge_oil_red_sand') + e.custom({ + type: 'thermal:refinery', + ingredient: { + fluid: 'pneumaticcraft:oil', + amount: 100 + }, + result: [ + { + fluid: 'thermal:heavy_oil', + amount: 40 + }, + { + fluid: 'thermal:light_oil', + amount: 60 + }, + { + item: 'thermal:bitumen', + chance: 0.1 + } + ], + energy: 6000 + }).id('kubejs:machine/refinery/pneumatic_crude_oil') + e.custom({ + type: 'thermal:refinery', + ingredient: { + fluid: 'immersivepetroleum:oil', + amount: 100 + }, + result: [ + { + fluid: 'thermal:heavy_oil', + amount: 40 + }, + { + fluid: 'thermal:light_oil', + amount: 60 + }, + { + item: 'thermal:bitumen', + chance: 0.1 + } + ], + energy: 6000 + }).id('kubejs:machine/refinery/immersive_crude_oil') + e.custom({ + type: 'pneumaticcraft:amadron', + input: { + type: 'FLUID', + id: 'thermal:crude_oil', + amount: 5000 + }, + output: { + type: 'ITEM', + id: 'minecraft:emerald', + amount: 1 + }, + static: true, + level: 0 + }).id('kubejs:amadron/thermal/oil_to_emerald') + e.custom({ + type: 'pneumaticcraft:amadron', + input: { + type: 'FLUID', + id: 'immersivepetroleum:oil', + amount: 5000 + }, + output: { + type: 'ITEM', + id: 'minecraft:emerald', + amount: 1 + }, + static: true, + level: 0 + }).id('kubejs:amadron/immersive/oil_to_emerald') + + // creosote + e.recipes.thermal + .pyrolyzer([Fluid.of('immersiveengineering:creosote', 250), 'minecraft:charcoal'], '#minecraft:logs') + .id('kubejs:machine/pyrolyzer/charcoal') + e.recipes.thermal + .pyrolyzer( + [Fluid.of('immersiveengineering:creosote', 5000), 'immersiveengineering:coke'], + '#forge:storage_blocks/coal' + ) + .id('kubejs:machine/pyrolyzer/coke_block') + e.custom({ + type: 'industrialforegoing:dissolution_chamber', + input: [ + { + tag: 'minecraft:planks' + } + ], + inputFluid: '{FluidName:"immersiveengineering:creosote",Amount:125}', + processingTime: 5, + output: { + item: 'immersiveengineering:treated_wood_horizontal', + count: 1 + } + }) + e.custom({ + type: 'industrialforegoing:dissolution_chamber', + input: [ + { + tag: 'minecraft:planks' + } + ], + inputFluid: '{FluidName:"thermal:creosote",Amount:125}', + processingTime: 5, + output: { + item: 'immersiveengineering:treated_wood_horizontal', + count: 1 + } + }) + // #endregion Oil +})