Compare commits
31 Commits
3fab0664bc
...
main
Author | SHA1 | Date | |
---|---|---|---|
fd5d608139 | |||
136a166983 | |||
78f64fce7c | |||
f78f491c46 | |||
2af72feb4d | |||
e8322eed47 | |||
ce717ad665 | |||
0e19f47a67 | |||
ae4391314e | |||
7c4fcbe515 | |||
64a6513064 | |||
7ac2c6cca2 | |||
6f1d3c3565 | |||
d4efc8e919 | |||
34077a5ee8 | |||
248988153e | |||
aa0d4cc720 | |||
79b17890ca | |||
503686e346 | |||
a52d1fb5db | |||
1e12f09858 | |||
52ba4e3b07 | |||
035aac2850 | |||
5a187602c8 | |||
dc70ef881d | |||
da4b35fe3d | |||
0f75163bae | |||
e36994e537 | |||
b861144041 | |||
374c3578ef | |||
1362fd4c46 |
BIN
assets/intelligent-catalyst.xcf
Normal file
BIN
assets/intelligent-catalyst.xcf
Normal file
Binary file not shown.
BIN
assets/intelligent-focus.xcf
Normal file
BIN
assets/intelligent-focus.xcf
Normal file
Binary file not shown.
BIN
assets/sapient-focus.xcf
Normal file
BIN
assets/sapient-focus.xcf
Normal file
Binary file not shown.
BIN
assets/textures/item/intelligent-catalyst.png
Normal file
BIN
assets/textures/item/intelligent-catalyst.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 722 B |
BIN
assets/textures/item/intelligent_focus.png
Normal file
BIN
assets/textures/item/intelligent_focus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 589 B |
BIN
assets/textures/item/sapient_focus.png
Normal file
BIN
assets/textures/item/sapient_focus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.5 KiB |
@ -40,17 +40,26 @@
|
||||
"forge:crops/{material}",
|
||||
"forge:seeds/{material}",
|
||||
"forge:grain/{material}",
|
||||
"forge:flour/{material}",
|
||||
"forge:bread/{material}",
|
||||
"forge:tomato_sauces",
|
||||
"forge:bacon",
|
||||
"forge:raw_bacon",
|
||||
"forge:cheeseburgers",
|
||||
"forge:hamburgers",
|
||||
"forge:string",
|
||||
"forge:cheese",
|
||||
"forge:peanut_butter_and_jam",
|
||||
"forge:dough",
|
||||
"forge:dough/{material}",
|
||||
"forge:flour",
|
||||
"forge:steamed_rices",
|
||||
"forge:rubber",
|
||||
"forge:cardboard"
|
||||
"forge:cardboard",
|
||||
"forge:chocolate",
|
||||
"forge:pasta",
|
||||
"forge:salad_ingredients/{material}",
|
||||
"forge:salt"
|
||||
],
|
||||
"materials": [
|
||||
"aeternium",
|
||||
@ -128,7 +137,10 @@
|
||||
"barley",
|
||||
"coffee_beans",
|
||||
"apple",
|
||||
"fig"
|
||||
"fig",
|
||||
|
||||
"wheat",
|
||||
"ginger"
|
||||
],
|
||||
"priorityOverrides": {
|
||||
"forge:cheese": "thermal",
|
||||
@ -182,16 +194,34 @@
|
||||
"forge:cardboard": ["dustrial_decor:cardboard", "create:cardboard"],
|
||||
"thermal:crafting/dies": ["ae2:silicon_press", "ae2:engineering_processor_press", "ae2:calculation_processor_press", "ae2:logic_processor_press"],
|
||||
"forge:ingots/andesite_alloy": ["create:andesite_alloy"],
|
||||
"forge:storage_blocks/andesite_alloy": ["create:andesite_alloy_block"],
|
||||
"forge:rods/andesite_alloy": ["create:shaft"],
|
||||
"forge:gears/andesite_alloy": ["create:cogwheel"]
|
||||
"forge:gears/andesite_alloy": ["create:cogwheel"],
|
||||
"forge:flour/wheat": ["croptopia:flour"],
|
||||
"forge:dough/wheat": ["croptopia:dough", "candlelight:dough", "bakery:dough"],
|
||||
"forge:dough/ginger": ["create_confectionery:gingerdough"],
|
||||
|
||||
"forge:bread/ginger": ["create_confectionery:gingerbread", "brewery:gingerbread"],
|
||||
|
||||
"forge:bars/chocolate": ["croptopia:chocolate"],
|
||||
|
||||
"forge:storage_blocks/redium": ["powder_power:block_redium"],
|
||||
"forge:storage_blocks/lapium": ["powder_power:block_lapium"],
|
||||
"forge:storage_blocks/gemium": ["powder_power:block_gemium"],
|
||||
"forge:storage_blocks/trilium": ["powder_power:block_trilium"],
|
||||
"forge:storage_blocks/quadrilium": ["powder_power:block_quadrilium"],
|
||||
"forge:limestone": ["quark:limestone", "alexcaves:limestone", "create:limestone"],
|
||||
"create:stone_types/limestone": ["quark:limestone", "alexcaves:limestone"]
|
||||
},
|
||||
"tagOwnerships": {
|
||||
"forge:crops/bell_pepper": ["forge:crops/bellpepper"],
|
||||
"forge:crops/tea": ["forge:tea_leaves", "forge:crops/tea_leaves"],
|
||||
"forge:seeds/rice": ["forge:rice_seeds", "forge:seeds/rice_seeds"],
|
||||
"forge:grain/rice": ["forge:rice", "forge:crops/rice"],
|
||||
"forge:grain/corn": ["forge:crops/corn"]
|
||||
"forge:grain/corn": ["forge:crops/corn"],
|
||||
"forge:dough": ["c:dough", "forge:doughs", "bakery:dough", "candlelight:dough"],
|
||||
"forge:bars/chocolate": ["forge:chocolate", "forge:chocolates"],
|
||||
"forge:grain/barley": ["forge:crops/barley"]
|
||||
},
|
||||
"itemTagInheritanceMode": "ALLOW",
|
||||
"itemTagInheritance": {},
|
||||
|
@ -1,8 +1,8 @@
|
||||
{
|
||||
chapter_groups: [
|
||||
{ id: "51EABD5138070E99", title: "The Elements of Grist" }
|
||||
{ id: "35747BFAEA235A1C", title: "Energetic Grist" }
|
||||
{ id: "7E7A924BDCDD2AE6", title: "Build Grist" }
|
||||
{ id: "35747BFAEA235A1C", title: "Build Grist" }
|
||||
{ id: "7E7A924BDCDD2AE6", title: "Energetic Grist" }
|
||||
{ id: "6BA8BD651D06794E", title: "Agricultural Grist" }
|
||||
{ id: "5618D395AFF037A4", title: "Intelligent Grist" }
|
||||
]
|
||||
|
File diff suppressed because it is too large
Load Diff
649
config/ftbquests/quests/chapters/basic_intelligent_grist.snbt
Normal file
649
config/ftbquests/quests/chapters/basic_intelligent_grist.snbt
Normal file
@ -0,0 +1,649 @@
|
||||
{
|
||||
default_hide_dependency_lines: false
|
||||
default_quest_shape: ""
|
||||
filename: "basic_intelligent_grist"
|
||||
group: "5618D395AFF037A4"
|
||||
id: "01E47C5B2C0CF536"
|
||||
order_index: 0
|
||||
quest_links: [ ]
|
||||
quests: [
|
||||
{
|
||||
dependencies: ["425D7E1F7944C15A"]
|
||||
id: "267EA884679F03FC"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "49F3FF457C481E77"
|
||||
title: "Basic Automation"
|
||||
type: "checkmark"
|
||||
}]
|
||||
x: 3.0d
|
||||
y: -1.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["529102FE3FD91B1A"]
|
||||
id: "425D7E1F7944C15A"
|
||||
shape: "gear"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "14FDA39579EB1CF8"
|
||||
item: "kubejs:grist_intelligent_basic"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: 0.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["13F36EDF98D4B995"]
|
||||
id: "0DA35C129BC11940"
|
||||
tasks: [{
|
||||
id: "06E19B2A37AA67D1"
|
||||
item: "sophisticatedstorage:controller"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: -3.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["425D7E1F7944C15A"]
|
||||
id: "13F36EDF98D4B995"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "5BEC506D5B4BD49E"
|
||||
title: "Storage Grid"
|
||||
type: "checkmark"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: -2.0d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"0DA35C129BC11940"
|
||||
"54319D03AA18E735"
|
||||
"7DF2C7C408419D18"
|
||||
]
|
||||
id: "0BA5AC285C684149"
|
||||
tasks: [{
|
||||
id: "06EDED6249F9B3F8"
|
||||
item: "ae2:storage_bus"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: -5.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["267EA884679F03FC"]
|
||||
id: "591072E10AD3C88A"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "09D314EDEF99ACB4"
|
||||
item: "prettypipes:pipe"
|
||||
type: "item"
|
||||
}]
|
||||
x: -0.5d
|
||||
y: -1.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["267EA884679F03FC"]
|
||||
id: "7A7EB33F1989C25C"
|
||||
tasks: [{
|
||||
id: "2512BFE42B46E31C"
|
||||
item: "thermal:item_buffer"
|
||||
type: "item"
|
||||
}]
|
||||
x: 0.0d
|
||||
y: -3.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["591072E10AD3C88A"]
|
||||
id: "4D5F7853656661AC"
|
||||
tasks: [{
|
||||
id: "2D68E9FB53659B42"
|
||||
item: "prettypipes:low_extraction_module"
|
||||
type: "item"
|
||||
}]
|
||||
x: -1.5d
|
||||
y: -0.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["591072E10AD3C88A"]
|
||||
id: "760ACDBAE65C0D1C"
|
||||
tasks: [{
|
||||
id: "2C3B194602256990"
|
||||
item: "prettypipes:low_crafting_module"
|
||||
type: "item"
|
||||
}]
|
||||
x: -1.5d
|
||||
y: -2.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["760ACDBAE65C0D1C"]
|
||||
id: "31DB5CC7C8020500"
|
||||
tasks: [{
|
||||
id: "7B684229511C4CE9"
|
||||
item: "prettypipes:medium_crafting_module"
|
||||
type: "item"
|
||||
}]
|
||||
x: -2.5d
|
||||
y: -2.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["4D5F7853656661AC"]
|
||||
id: "2B4D1025687B8A5D"
|
||||
tasks: [{
|
||||
id: "4A61575D6AA9AFC8"
|
||||
item: "prettypipes:medium_extraction_module"
|
||||
type: "item"
|
||||
}]
|
||||
x: -2.5d
|
||||
y: -0.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["591072E10AD3C88A"]
|
||||
id: "52FE7705DB61B1DE"
|
||||
tasks: [{
|
||||
id: "34C550041124E986"
|
||||
item: "prettypipes:wrench"
|
||||
type: "item"
|
||||
}]
|
||||
x: -2.0d
|
||||
y: -1.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["759EDC67BB936B05"]
|
||||
id: "76CB1E5A99B62CC3"
|
||||
tasks: [{
|
||||
id: "5CE59C8C7EF19808"
|
||||
item: "ars_nouveau:novice_spell_book"
|
||||
type: "item"
|
||||
}]
|
||||
x: 2.5d
|
||||
y: 1.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["54319D03AA18E735"]
|
||||
id: "759B061B596A77BF"
|
||||
shape: "rsquare"
|
||||
size: 1.5d
|
||||
tasks: [{
|
||||
id: "088377929813DA07"
|
||||
item: "ae2:terminal"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: -6.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["4317A5EE85960390"]
|
||||
id: "6148239C8A736F47"
|
||||
tasks: [{
|
||||
id: "695C63A17AC171A9"
|
||||
item: "ae2:printed_logic_processor"
|
||||
type: "item"
|
||||
}]
|
||||
x: 8.0d
|
||||
y: -7.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["2FE09A3185FF9959"]
|
||||
id: "0437D71E6EC5D9B1"
|
||||
tasks: [{
|
||||
id: "12F5FD6762FA80CE"
|
||||
item: "ae2:fluix_dust"
|
||||
type: "item"
|
||||
}]
|
||||
x: 10.0d
|
||||
y: -7.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["0FDFDAC9783D1868"]
|
||||
id: "4317A5EE85960390"
|
||||
tasks: [{
|
||||
id: "6B2AA8C98FFB6354"
|
||||
item: "ae2:printed_silicon"
|
||||
type: "item"
|
||||
}]
|
||||
x: 8.0d
|
||||
y: -9.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["7BCCB6740DDF0280"]
|
||||
id: "7D802158D07B33B5"
|
||||
tasks: [{
|
||||
id: "73230E83E681B4A3"
|
||||
item: "ae2:energy_acceptor"
|
||||
type: "item"
|
||||
}]
|
||||
x: 7.0d
|
||||
y: -14.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["1209A892C293B8BC"]
|
||||
id: "7BCCB6740DDF0280"
|
||||
tasks: [{
|
||||
id: "2531F8D0041B670A"
|
||||
item: "ae2:quartz_glass"
|
||||
type: "item"
|
||||
}]
|
||||
x: 8.5d
|
||||
y: -14.0d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"6148239C8A736F47"
|
||||
"0437D71E6EC5D9B1"
|
||||
]
|
||||
id: "16666552B4DE7562"
|
||||
tasks: [{
|
||||
id: "2B0B15463C65E292"
|
||||
item: "ae2:formation_core"
|
||||
type: "item"
|
||||
}]
|
||||
x: 7.0d
|
||||
y: -6.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"6148239C8A736F47"
|
||||
"0437D71E6EC5D9B1"
|
||||
]
|
||||
id: "07073EDA28B6B124"
|
||||
tasks: [{
|
||||
id: "474C53F30FC1B491"
|
||||
item: "ae2:annihilation_core"
|
||||
type: "item"
|
||||
}]
|
||||
x: 9.0d
|
||||
y: -6.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "0FDFDAC9783D1868"
|
||||
tasks: [{
|
||||
id: "267D521C2680636A"
|
||||
item: "ae2:inscriber"
|
||||
type: "item"
|
||||
}]
|
||||
x: 8.0d
|
||||
y: -10.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "31BB203ADCC56846"
|
||||
shape: "diamond"
|
||||
size: 1.5d
|
||||
tasks: [{
|
||||
id: "15E029FB4580393C"
|
||||
item: "ae2:meteorite_compass"
|
||||
type: "item"
|
||||
}]
|
||||
x: 12.0d
|
||||
y: -11.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["31BB203ADCC56846"]
|
||||
id: "3599B2F85B049737"
|
||||
tasks: [{
|
||||
id: "3018C6920103D477"
|
||||
item: "ae2:certus_quartz_crystal"
|
||||
type: "item"
|
||||
}]
|
||||
x: 10.5d
|
||||
y: -11.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["3599B2F85B049737"]
|
||||
id: "1209A892C293B8BC"
|
||||
tasks: [{
|
||||
id: "23AB5A52CC0FD33E"
|
||||
item: "ae2:certus_quartz_dust"
|
||||
type: "item"
|
||||
}]
|
||||
x: 9.5d
|
||||
y: -12.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["48C86C2E1660A2F4"]
|
||||
id: "7DF2C7C408419D18"
|
||||
tasks: [{
|
||||
id: "1BCC05175DBCB191"
|
||||
item: "ae2:fluix_glass_cable"
|
||||
type: "item"
|
||||
}]
|
||||
x: 8.5d
|
||||
y: -4.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["1209A892C293B8BC"]
|
||||
id: "26CAC7628D6D8DC1"
|
||||
tasks: [{
|
||||
id: "0E8E123EA834D19A"
|
||||
item: "ae2:quartz_fiber"
|
||||
type: "item"
|
||||
}]
|
||||
x: 8.5d
|
||||
y: -12.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["759B061B596A77BF"]
|
||||
id: "6E9944AFA950BF8F"
|
||||
tasks: [{
|
||||
id: "6AB1758716F040F0"
|
||||
item: "ae2:crafting_terminal"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: -9.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"16666552B4DE7562"
|
||||
"07073EDA28B6B124"
|
||||
]
|
||||
id: "54319D03AA18E735"
|
||||
tasks: [{
|
||||
id: "54D8C3AA23FBAB33"
|
||||
item: "ae2:interface"
|
||||
type: "item"
|
||||
}]
|
||||
x: 8.0d
|
||||
y: -5.0d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"183D92B8FE443776"
|
||||
"3599B2F85B049737"
|
||||
]
|
||||
id: "2FE09A3185FF9959"
|
||||
tasks: [{
|
||||
id: "23EA472A0E82C659"
|
||||
item: "ae2:charged_certus_quartz_crystal"
|
||||
type: "item"
|
||||
}]
|
||||
x: 10.0d
|
||||
y: -10.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "183D92B8FE443776"
|
||||
tasks: [{
|
||||
id: "4A2667B55779459B"
|
||||
item: "ae2:charger"
|
||||
type: "item"
|
||||
}]
|
||||
x: 12.0d
|
||||
y: -10.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["0437D71E6EC5D9B1"]
|
||||
id: "6F731D4A3DB27CC8"
|
||||
tasks: [{
|
||||
id: "12F6CC3FEBC11534"
|
||||
item: {
|
||||
Count: 1
|
||||
id: "ae2:energy_cell"
|
||||
tag: { }
|
||||
}
|
||||
type: "item"
|
||||
}]
|
||||
x: 11.5d
|
||||
y: -7.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["0437D71E6EC5D9B1"]
|
||||
id: "48C86C2E1660A2F4"
|
||||
tasks: [{
|
||||
id: "095D84484CFECA15"
|
||||
item: "ae2:fluix_crystal"
|
||||
type: "item"
|
||||
}]
|
||||
x: 10.0d
|
||||
y: -4.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["76CB1E5A99B62CC3"]
|
||||
id: "5258D2DA4EDC3D55"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "215348AD0214FB5B"
|
||||
item: "ars_nouveau:scribes_table"
|
||||
type: "item"
|
||||
}]
|
||||
x: 0.5d
|
||||
y: 2.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["425D7E1F7944C15A"]
|
||||
id: "759EDC67BB936B05"
|
||||
tasks: [{
|
||||
id: "4BE516035014C43D"
|
||||
title: "Magic"
|
||||
type: "checkmark"
|
||||
}]
|
||||
x: 3.5d
|
||||
y: 1.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["0B97D51D73E92080"]
|
||||
id: "3F5198E4EDCB780C"
|
||||
tasks: [{
|
||||
id: "5C51DB82639DDDBE"
|
||||
item: "ars_nouveau:water_essence"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.5d
|
||||
y: 5.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["0B97D51D73E92080"]
|
||||
id: "10AA66800AAD1B89"
|
||||
tasks: [{
|
||||
id: "20EA9C3DD2AA73C2"
|
||||
item: "ars_nouveau:conjuration_essence"
|
||||
type: "item"
|
||||
}]
|
||||
x: 7.5d
|
||||
y: 5.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"604EB9292B7B9851"
|
||||
"76F0CD7675CA4763"
|
||||
]
|
||||
id: "529102FE3FD91B1A"
|
||||
tasks: [{
|
||||
id: "5E73A165AC50AEAF"
|
||||
item: "kubejs:insightful_tincture"
|
||||
type: "item"
|
||||
}]
|
||||
x: 2.5d
|
||||
y: 3.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"7A490E72354C2498"
|
||||
"209F302DAF6A12D3"
|
||||
]
|
||||
id: "76F0CD7675CA4763"
|
||||
tasks: [{
|
||||
id: "684432F1B1BFD40C"
|
||||
item: "kubejs:sacred_flesh"
|
||||
type: "item"
|
||||
}]
|
||||
x: 3.5d
|
||||
y: 4.0d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"7A490E72354C2498"
|
||||
"7848999FF2D5D4EF"
|
||||
]
|
||||
id: "604EB9292B7B9851"
|
||||
tasks: [{
|
||||
id: "49CF39E4895C18AD"
|
||||
item: "kubejs:insightful_blend"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.5d
|
||||
y: 4.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "7848999FF2D5D4EF"
|
||||
tasks: [{
|
||||
id: "24F4E163A507EBCC"
|
||||
item: "thermal:lapis_dust"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.5d
|
||||
y: 5.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "209F302DAF6A12D3"
|
||||
tasks: [{
|
||||
id: "341462D279F30C07"
|
||||
item: "thermal:gold_dust"
|
||||
type: "item"
|
||||
}]
|
||||
x: 3.5d
|
||||
y: 5.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "7A490E72354C2498"
|
||||
tasks: [{
|
||||
id: "2F6C8CDE70803F78"
|
||||
item: "minecraft:rotten_flesh"
|
||||
type: "item"
|
||||
}]
|
||||
x: 2.5d
|
||||
y: 4.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "70F2BD0348311709"
|
||||
tasks: [{
|
||||
id: "679A179B6EAF5D76"
|
||||
item: "ars_nouveau:sourcestone"
|
||||
type: "item"
|
||||
}]
|
||||
x: 6.5d
|
||||
y: 3.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["71CE16EA312354E7"]
|
||||
hide_dependent_lines: true
|
||||
id: "4AA3E9811317F051"
|
||||
size: 4.0d
|
||||
tasks: [{
|
||||
id: "374623BD4F7C33D3"
|
||||
title: "Intelligent Grist"
|
||||
type: "checkmark"
|
||||
}]
|
||||
x: -6.0d
|
||||
y: 4.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["0B97D51D73E92080"]
|
||||
id: "3FD161550471A495"
|
||||
size: 3.0d
|
||||
tasks: [{
|
||||
count: 64L
|
||||
id: "370B7C6782A0804C"
|
||||
item: { Count: 64, id: "kubejs:grist_intelligent_basic" }
|
||||
type: "item"
|
||||
}]
|
||||
title: "Basic Mass Production"
|
||||
x: 2.0d
|
||||
y: 8.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["0B97D51D73E92080"]
|
||||
id: "072994347F78FA2D"
|
||||
tasks: [{
|
||||
id: "549412D2D13DB926"
|
||||
item: "ars_nouveau:earth_essence"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.5d
|
||||
y: 8.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["0B97D51D73E92080"]
|
||||
id: "1AF163ED020F3F21"
|
||||
tasks: [{
|
||||
id: "26967FDCD851C6AD"
|
||||
item: "ars_nouveau:air_essence"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: 6.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"425D7E1F7944C15A"
|
||||
"70F2BD0348311709"
|
||||
]
|
||||
id: "0B97D51D73E92080"
|
||||
size: 1.5d
|
||||
tasks: [{
|
||||
id: "49D20EE2038804D8"
|
||||
item: "ars_nouveau:arcane_pedestal"
|
||||
type: "item"
|
||||
}]
|
||||
x: 6.5d
|
||||
y: 7.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["0B97D51D73E92080"]
|
||||
id: "4CE7CBA1BBF3DB58"
|
||||
tasks: [{
|
||||
id: "6FF3697C15BB5B8A"
|
||||
item: "ars_nouveau:fire_essence"
|
||||
type: "item"
|
||||
}]
|
||||
x: 7.5d
|
||||
y: 8.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["0B97D51D73E92080"]
|
||||
id: "493157AD0F8B723F"
|
||||
tasks: [{
|
||||
id: "6ED11DD8BDD07F5F"
|
||||
item: "ars_nouveau:manipulation_essence"
|
||||
type: "item"
|
||||
}]
|
||||
x: 6.5d
|
||||
y: 9.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["0B97D51D73E92080"]
|
||||
id: "0B73D34F06AFB9A4"
|
||||
tasks: [{
|
||||
id: "3E999FF3E211F041"
|
||||
item: "ars_nouveau:abjuration_essence"
|
||||
type: "item"
|
||||
}]
|
||||
x: 8.0d
|
||||
y: 6.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["425D7E1F7944C15A"]
|
||||
id: "50DA15D9CAD36E2A"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "3A2B8A8446B0C400"
|
||||
title: "Transportation"
|
||||
type: "checkmark"
|
||||
}]
|
||||
x: 7.0d
|
||||
y: -1.0d
|
||||
}
|
||||
]
|
||||
title: "Basic Intelligent Grist"
|
||||
}
|
@ -155,6 +155,7 @@
|
||||
dependencies: [
|
||||
"6D12D603E67142C3"
|
||||
"65F274108773893B"
|
||||
"1B8AD95F2FB7F324"
|
||||
]
|
||||
id: "3FD50E817C92C5EB"
|
||||
tasks: [{
|
||||
@ -193,7 +194,7 @@
|
||||
item: "thermal:machine_centrifuge"
|
||||
type: "item"
|
||||
}]
|
||||
x: -4.0d
|
||||
x: -7.5d
|
||||
y: 0.0d
|
||||
}
|
||||
{
|
||||
@ -210,8 +211,8 @@
|
||||
type: "item"
|
||||
}]
|
||||
title: "Centrifuging Clay"
|
||||
x: -6.0d
|
||||
y: 1.0d
|
||||
x: -8.25d
|
||||
y: 3.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["4ABF24D9CFD208BA"]
|
||||
@ -253,6 +254,16 @@
|
||||
x: -2.0d
|
||||
y: 3.0d
|
||||
}
|
||||
{
|
||||
id: "1B8AD95F2FB7F324"
|
||||
tasks: [{
|
||||
id: "34BB07EF484A49D9"
|
||||
item: "kubejs:grist_build_basic"
|
||||
type: "item"
|
||||
}]
|
||||
x: -4.5d
|
||||
y: -2.0d
|
||||
}
|
||||
]
|
||||
title: "Improved Build Grist"
|
||||
}
|
||||
|
444
config/ftbquests/quests/chapters/improved_intelligent_grist.snbt
Normal file
444
config/ftbquests/quests/chapters/improved_intelligent_grist.snbt
Normal file
@ -0,0 +1,444 @@
|
||||
{
|
||||
default_hide_dependency_lines: false
|
||||
default_quest_shape: ""
|
||||
filename: "improved_intelligent_grist"
|
||||
group: "5618D395AFF037A4"
|
||||
icon: "kubejs:grist_intelligent_improved"
|
||||
id: "74B65283E5E1E10F"
|
||||
order_index: 1
|
||||
quest_links: [ ]
|
||||
quests: [
|
||||
{
|
||||
dependencies: ["3C9D10316136CCE7"]
|
||||
id: "0A6CEBEE1C135E36"
|
||||
shape: "gear"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "622D9AA7BE23D851"
|
||||
item: "kubejs:grist_intelligent_improved"
|
||||
type: "item"
|
||||
}]
|
||||
x: 6.5d
|
||||
y: -3.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "7C1F3D3A623F5FA2"
|
||||
tasks: [{
|
||||
id: "02D734AAD8E322F5"
|
||||
item: "ars_elemental:lesser_fire_focus"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: -0.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "4A316546C4FCB12A"
|
||||
tasks: [{
|
||||
id: "4C4057E8D9C77A82"
|
||||
item: "ars_elemental:lesser_air_focus"
|
||||
type: "item"
|
||||
}]
|
||||
x: 6.0d
|
||||
y: 1.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"5B407BC47F97CAD2"
|
||||
"4A316546C4FCB12A"
|
||||
"7C1F3D3A623F5FA2"
|
||||
"4C9475E4E38E1926"
|
||||
"6CAEBD670D89A90E"
|
||||
]
|
||||
id: "3C9D10316136CCE7"
|
||||
tasks: [{
|
||||
id: "6BF8D412C0C044DE"
|
||||
item: "kubejs:sapient_focus"
|
||||
type: "item"
|
||||
}]
|
||||
x: 6.5d
|
||||
y: 0.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "6CAEBD670D89A90E"
|
||||
tasks: [{
|
||||
id: "3E65DF4D7FA6404F"
|
||||
item: "ars_elemental:lesser_earth_focus"
|
||||
type: "item"
|
||||
}]
|
||||
x: 7.0d
|
||||
y: 1.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "4C9475E4E38E1926"
|
||||
tasks: [{
|
||||
id: "1CAA8FF9A3AE7DC2"
|
||||
item: "ars_elemental:lesser_water_focus"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: 0.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"23E50D3BC6041186"
|
||||
"07BF8A8180C163FA"
|
||||
"0C9CCF161AE3DEFC"
|
||||
"7912F664E198653F"
|
||||
]
|
||||
id: "5B407BC47F97CAD2"
|
||||
tasks: [{
|
||||
id: "7961B90A44FCDD01"
|
||||
item: "kubejs:intelligent_focus"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.0d
|
||||
y: 1.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["466CB1DC25ADFAF1"]
|
||||
id: "07BF8A8180C163FA"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "51D2D9F85B58144D"
|
||||
item: "summoningrituals:altar"
|
||||
type: "item"
|
||||
}]
|
||||
x: 2.528571428571418d
|
||||
y: 3.2071428571428555d
|
||||
}
|
||||
{
|
||||
dependencies: ["7B9B13C5F72EB91C"]
|
||||
id: "0C9CCF161AE3DEFC"
|
||||
tasks: [{
|
||||
id: "25B2BF61A7B72B50"
|
||||
item: "ars_nouveau:arcane_core"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.0d
|
||||
y: 1.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["466CB1DC25ADFAF1"]
|
||||
id: "23E50D3BC6041186"
|
||||
tasks: [{
|
||||
id: "38B8F2599F0B3A0F"
|
||||
item: "kubejs:imbued_source_gem"
|
||||
type: "item"
|
||||
}]
|
||||
x: 4.0d
|
||||
y: 5.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["7B9B13C5F72EB91C"]
|
||||
id: "466CB1DC25ADFAF1"
|
||||
tasks: [{
|
||||
id: "5B68EA035016E025"
|
||||
item: "kubejs:intelligent_catalyst"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.5d
|
||||
y: 5.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["3BD2CA7C4DAE16C4"]
|
||||
id: "7B9B13C5F72EB91C"
|
||||
size: 1.5d
|
||||
tasks: [{
|
||||
id: "36305F079471CC98"
|
||||
item: "ars_nouveau:source_gem"
|
||||
type: "item"
|
||||
}]
|
||||
x: -0.5d
|
||||
y: 3.0d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"1EA0716F4A911DC2"
|
||||
"425D7E1F7944C15A"
|
||||
"3A6A331B189B5738"
|
||||
]
|
||||
id: "3BD2CA7C4DAE16C4"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "39646895B0922536"
|
||||
item: "ars_nouveau:imbuement_chamber"
|
||||
type: "item"
|
||||
}]
|
||||
x: -3.0d
|
||||
y: 1.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["4AA3E9811317F051"]
|
||||
id: "1EA0716F4A911DC2"
|
||||
tasks: [{
|
||||
id: "7C1BC59A2239BEB2"
|
||||
item: "ars_nouveau:archwood_planks"
|
||||
type: "item"
|
||||
}]
|
||||
x: -0.5d
|
||||
y: 1.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["246EB7C3FA5E9091"]
|
||||
id: "7912F664E198653F"
|
||||
tasks: [{
|
||||
id: "3A569DB8FC921DC0"
|
||||
item: "experienceobelisk:cognitive_alloy_block"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.0d
|
||||
y: 0.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["104B831DAF1209A5"]
|
||||
id: "246EB7C3FA5E9091"
|
||||
tasks: [{
|
||||
id: "1E5CBF2F90B6C03E"
|
||||
item: "experienceobelisk:cognitive_alloy"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.0d
|
||||
y: -2.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["2D8531C39985A6A4"]
|
||||
id: "104B831DAF1209A5"
|
||||
tasks: [{
|
||||
id: "10FC44076BEDC66D"
|
||||
item: "experienceobelisk:cognitive_amalgam"
|
||||
type: "item"
|
||||
}]
|
||||
x: -1.0d
|
||||
y: -2.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["104B831DAF1209A5"]
|
||||
id: "75C55A2AB07F9BD9"
|
||||
tasks: [{
|
||||
id: "3A9192582E765615"
|
||||
item: "experienceobelisk:cognitive_crystal"
|
||||
type: "item"
|
||||
}]
|
||||
x: 0.5d
|
||||
y: -3.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["75C55A2AB07F9BD9"]
|
||||
id: "6688C18109920F09"
|
||||
tasks: [{
|
||||
id: "5E5CDF5645460B93"
|
||||
item: "experienceobelisk:attunement_staff"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.5d
|
||||
y: -3.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["6688C18109920F09"]
|
||||
id: "0A5750D6075B0171"
|
||||
tasks: [{
|
||||
id: "329AA3633A87A5EA"
|
||||
item: "experienceobelisk:experience_fountain"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.5d
|
||||
y: -4.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"3B0EF8DCFE832119"
|
||||
"75C55A2AB07F9BD9"
|
||||
]
|
||||
id: "59AFC1A47A0EE2B8"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "0F60612AA7C32E60"
|
||||
item: {
|
||||
Count: 1
|
||||
id: "experienceobelisk:experience_obelisk"
|
||||
tag: { }
|
||||
}
|
||||
type: "item"
|
||||
}]
|
||||
x: -1.0d
|
||||
y: -5.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["104B831DAF1209A5"]
|
||||
id: "3B0EF8DCFE832119"
|
||||
tasks: [{
|
||||
id: "2D6B47855644D81B"
|
||||
item: "experienceobelisk:astute_assembly"
|
||||
type: "item"
|
||||
}]
|
||||
x: -1.0d
|
||||
y: -3.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["3B0EF8DCFE832119"]
|
||||
id: "49589FA9D62EBB15"
|
||||
tasks: [{
|
||||
id: "16E4FF2DEB5FF414"
|
||||
item: "experienceobelisk:precision_dispeller"
|
||||
type: "item"
|
||||
}]
|
||||
x: -2.0d
|
||||
y: -3.0d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"425D7E1F7944C15A"
|
||||
"3A6A331B189B5738"
|
||||
]
|
||||
id: "2D8531C39985A6A4"
|
||||
tasks: [{
|
||||
id: "558BFF289474CDA4"
|
||||
item: "experienceobelisk:cognitive_flux"
|
||||
type: "item"
|
||||
}]
|
||||
x: -3.0d
|
||||
y: -2.0d
|
||||
}
|
||||
{
|
||||
id: "3A6A331B189B5738"
|
||||
tasks: [{
|
||||
id: "0655E0A07C459CA4"
|
||||
item: "kubejs:grist_intelligent_basic"
|
||||
type: "item"
|
||||
}]
|
||||
x: -5.5d
|
||||
y: -0.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["7B9B13C5F72EB91C"]
|
||||
id: "00D030A960FF4D3C"
|
||||
tasks: [{
|
||||
id: "12155E5CE9099BDF"
|
||||
item: {
|
||||
Count: 1
|
||||
id: "ars_nouveau:warp_scroll"
|
||||
tag: { }
|
||||
}
|
||||
type: "item"
|
||||
}]
|
||||
x: -0.5d
|
||||
y: 5.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["7B9B13C5F72EB91C"]
|
||||
id: "3D6E0138CCF4DF42"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "0E79165E3902E74D"
|
||||
title: "Farming Source"
|
||||
type: "checkmark"
|
||||
}]
|
||||
x: -3.5d
|
||||
y: 5.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["3D6E0138CCF4DF42"]
|
||||
id: "58107760E67EEC05"
|
||||
tasks: [{
|
||||
id: "393EA1C7A271C7EE"
|
||||
item: "ars_nouveau:vitalic_sourcelink"
|
||||
type: "item"
|
||||
}]
|
||||
x: -5.5d
|
||||
y: 4.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["3D6E0138CCF4DF42"]
|
||||
id: "746372DE8D0A9996"
|
||||
tasks: [{
|
||||
id: "0C337C2BF924F341"
|
||||
item: "ars_nouveau:agronomic_sourcelink"
|
||||
type: "item"
|
||||
}]
|
||||
x: -5.0d
|
||||
y: 3.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["3D6E0138CCF4DF42"]
|
||||
id: "361EB4E62465A602"
|
||||
tasks: [{
|
||||
id: "0F5D2650FD97575C"
|
||||
item: "ars_nouveau:alchemical_sourcelink"
|
||||
type: "item"
|
||||
}]
|
||||
x: -5.5d
|
||||
y: 5.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["3D6E0138CCF4DF42"]
|
||||
id: "0B1C2698BC46455A"
|
||||
tasks: [{
|
||||
id: "4B53999D3DD38578"
|
||||
item: "ars_nouveau:mycelial_sourcelink"
|
||||
type: "item"
|
||||
}]
|
||||
x: -3.0d
|
||||
y: 7.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["3D6E0138CCF4DF42"]
|
||||
id: "3086BAAFC2B99DCC"
|
||||
tasks: [{
|
||||
id: "7B96BDA95AAEABC1"
|
||||
item: "ars_nouveau:source_jar"
|
||||
type: "item"
|
||||
}]
|
||||
x: -4.0d
|
||||
y: 7.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["3D6E0138CCF4DF42"]
|
||||
id: "175C95CF36ADF477"
|
||||
tasks: [{
|
||||
id: "37EE10D83453DF72"
|
||||
item: "ars_nouveau:volcanic_sourcelink"
|
||||
type: "item"
|
||||
}]
|
||||
x: -5.0d
|
||||
y: 6.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"3D6E0138CCF4DF42"
|
||||
"475C4ADBB4EEE67B"
|
||||
]
|
||||
id: "1A5F9880063AC7A4"
|
||||
tasks: [{
|
||||
id: "61450E731AAF9DDC"
|
||||
item: "ars_nouveau:relay"
|
||||
type: "item"
|
||||
}]
|
||||
x: -4.0d
|
||||
y: 3.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["7B9B13C5F72EB91C"]
|
||||
id: "475C4ADBB4EEE67B"
|
||||
tasks: [{
|
||||
id: "3098E5E0AF56CC0D"
|
||||
item: {
|
||||
Count: 1
|
||||
id: "ars_nouveau:dominion_wand"
|
||||
tag: { }
|
||||
}
|
||||
type: "item"
|
||||
}]
|
||||
x: -3.0d
|
||||
y: 3.0d
|
||||
}
|
||||
]
|
||||
title: "Improved Intelligent Grist"
|
||||
}
|
@ -24,43 +24,6 @@
|
||||
x: -2.0d
|
||||
y: -1.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["1A05926674B2FB92"]
|
||||
id: "0AE258D57666445E"
|
||||
tasks: [{
|
||||
id: "6896FD1F005FCB05"
|
||||
item: "immersive_aircraft:biplane"
|
||||
type: "item"
|
||||
}]
|
||||
x: 2.5d
|
||||
y: -2.0d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"1A05926674B2FB92"
|
||||
"1635F0FF5EE83A1B"
|
||||
]
|
||||
id: "7DEE7F34129F6C17"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "491935136AA9EECD"
|
||||
item: "immersive_aircraft:airship"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.0d
|
||||
y: -5.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["1A05926674B2FB92"]
|
||||
id: "2B18387E36EC5E37"
|
||||
tasks: [{
|
||||
id: "5142A4F4DA622483"
|
||||
item: "immersive_aircraft:quadrocopter"
|
||||
type: "item"
|
||||
}]
|
||||
x: 3.0d
|
||||
y: -5.0d
|
||||
}
|
||||
{
|
||||
id: "03713BAAF3CE3B74"
|
||||
tasks: [{
|
||||
@ -101,8 +64,8 @@
|
||||
type: "item"
|
||||
}]
|
||||
title: "Warp Plates"
|
||||
x: 3.0d
|
||||
y: 2.0d
|
||||
x: 4.0d
|
||||
y: 4.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["18056D524BC5C149"]
|
||||
@ -124,8 +87,8 @@
|
||||
type: "item"
|
||||
}]
|
||||
title: "Warp Stones"
|
||||
x: 2.0d
|
||||
y: 3.0d
|
||||
x: 3.0d
|
||||
y: 5.5d
|
||||
}
|
||||
{
|
||||
description: [
|
||||
@ -141,23 +104,8 @@
|
||||
type: "structure"
|
||||
}]
|
||||
title: "Village Waystones"
|
||||
x: 4.5d
|
||||
y: 2.0d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"0AE258D57666445E"
|
||||
"37443E16BC367061"
|
||||
"36CEEA7DECFCE5D9"
|
||||
]
|
||||
id: "375676395486D2D9"
|
||||
tasks: [{
|
||||
id: "4898507ED2186C00"
|
||||
item: "immersive_aircraft:nether_engine"
|
||||
type: "item"
|
||||
}]
|
||||
x: 4.0d
|
||||
y: -1.5d
|
||||
x: 5.5d
|
||||
y: 4.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["594B48E407645A20"]
|
||||
@ -170,55 +118,6 @@
|
||||
x: -4.5d
|
||||
y: 1.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["7DEE7F34129F6C17"]
|
||||
id: "1D79F300B31231FC"
|
||||
tasks: [{
|
||||
id: "6B1163D958B1F123"
|
||||
item: "immersive_aircraft:cargo_airship"
|
||||
type: "item"
|
||||
}]
|
||||
x: 3.0d
|
||||
y: -7.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["1635F0FF5EE83A1B"]
|
||||
id: "37443E16BC367061"
|
||||
tasks: [
|
||||
{
|
||||
id: "6F89355E5EC18EDF"
|
||||
item: "immersive_aircraft:sturdy_pipes"
|
||||
type: "item"
|
||||
}
|
||||
{
|
||||
id: "71874473865366D1"
|
||||
item: "immersive_aircraft:industrial_gears"
|
||||
type: "item"
|
||||
}
|
||||
{
|
||||
id: "5671F48227993963"
|
||||
item: "immersive_aircraft:enhanced_propeller"
|
||||
type: "item"
|
||||
}
|
||||
]
|
||||
title: "Airship Upgrades"
|
||||
x: 2.5d
|
||||
y: 0.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"37443E16BC367061"
|
||||
"0AE258D57666445E"
|
||||
]
|
||||
id: "36CEEA7DECFCE5D9"
|
||||
tasks: [{
|
||||
id: "4D8A699FA5CC9B96"
|
||||
item: "immersive_aircraft:steel_boiler"
|
||||
type: "item"
|
||||
}]
|
||||
x: 2.5d
|
||||
y: -1.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["1635F0FF5EE83A1B"]
|
||||
id: "32F682AF17F5DB11"
|
||||
@ -263,17 +162,6 @@
|
||||
x: -7.0d
|
||||
y: 0.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["1635F0FF5EE83A1B"]
|
||||
id: "25D4DF26DE35AA9D"
|
||||
tasks: [{
|
||||
id: "679E03D0706984DE"
|
||||
item: "immersive_aircraft:boiler"
|
||||
type: "item"
|
||||
}]
|
||||
x: 0.0d
|
||||
y: -1.5d
|
||||
}
|
||||
{
|
||||
id: "75CAF141200D511E"
|
||||
tasks: [{
|
||||
@ -282,8 +170,8 @@
|
||||
type: "dimension"
|
||||
}]
|
||||
title: "Nether Portals"
|
||||
x: 4.5d
|
||||
y: 3.0d
|
||||
x: 5.5d
|
||||
y: 5.5d
|
||||
}
|
||||
{
|
||||
id: "50B6B5544B0B622C"
|
||||
@ -303,8 +191,8 @@
|
||||
}
|
||||
]
|
||||
title: "Horses"
|
||||
x: 1.0d
|
||||
y: 4.5d
|
||||
x: 2.0d
|
||||
y: 7.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["18056D524BC5C149"]
|
||||
@ -314,8 +202,8 @@
|
||||
item: "waystones:sharestone"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.0d
|
||||
y: 2.0d
|
||||
x: 2.0d
|
||||
y: 4.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["2FA465182E731E8F"]
|
||||
@ -325,19 +213,8 @@
|
||||
item: "waystones:portstone"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.0d
|
||||
y: 3.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["25D4DF26DE35AA9D"]
|
||||
id: "1A05926674B2FB92"
|
||||
tasks: [{
|
||||
id: "0BE4D3DD67B15E7B"
|
||||
item: "immersive_aircraft:engine"
|
||||
type: "item"
|
||||
}]
|
||||
x: 1.0d
|
||||
y: -3.0d
|
||||
x: 2.0d
|
||||
y: 5.5d
|
||||
}
|
||||
{
|
||||
id: "008C20CAC68945A5"
|
||||
@ -350,8 +227,8 @@
|
||||
}
|
||||
type: "item"
|
||||
}]
|
||||
x: 2.5d
|
||||
y: 4.5d
|
||||
x: 3.5d
|
||||
y: 7.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["008C20CAC68945A5"]
|
||||
@ -365,8 +242,8 @@
|
||||
}
|
||||
type: "item"
|
||||
}]
|
||||
x: 4.0d
|
||||
y: 4.5d
|
||||
x: 5.0d
|
||||
y: 7.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["6CDBB60580844C81"]
|
||||
@ -376,8 +253,8 @@
|
||||
item: "waystones:warp_scroll"
|
||||
type: "item"
|
||||
}]
|
||||
x: 4.5d
|
||||
y: 0.5d
|
||||
x: 5.5d
|
||||
y: 3.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["6CDBB60580844C81"]
|
||||
@ -387,8 +264,8 @@
|
||||
item: "waystones:bound_scroll"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.5d
|
||||
y: 1.0d
|
||||
x: 6.5d
|
||||
y: 3.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["6CDBB60580844C81"]
|
||||
@ -398,9 +275,207 @@
|
||||
item: "waystones:return_scroll"
|
||||
type: "item"
|
||||
}]
|
||||
x: 7.0d
|
||||
y: 4.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"1635F0FF5EE83A1B"
|
||||
"50DA15D9CAD36E2A"
|
||||
]
|
||||
id: "25D4DF26DE35AA9D"
|
||||
tasks: [{
|
||||
id: "679E03D0706984DE"
|
||||
item: "immersive_aircraft:boiler"
|
||||
type: "item"
|
||||
}]
|
||||
x: 0.5d
|
||||
y: -1.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["50DA15D9CAD36E2A"]
|
||||
id: "3A7CF01E49DA9AC2"
|
||||
tasks: [{
|
||||
id: "36DD7D3E57308830"
|
||||
item: "waystones:warp_dust"
|
||||
type: "item"
|
||||
}]
|
||||
x: -1.0d
|
||||
y: 4.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["50DA15D9CAD36E2A"]
|
||||
id: "0A410280801DA39D"
|
||||
tasks: [{
|
||||
id: "437564233DB0C641"
|
||||
item: "wormhole_artifact:ender_nacre"
|
||||
type: "item"
|
||||
}]
|
||||
x: -2.0d
|
||||
y: 4.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["3A7CF01E49DA9AC2"]
|
||||
id: "14EFA84A8B6CEDFB"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
count: 2L
|
||||
id: "4ABC3923778EE930"
|
||||
item: "waystones:warp_plate"
|
||||
type: "item"
|
||||
}]
|
||||
x: 0.0d
|
||||
y: 5.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["0A410280801DA39D"]
|
||||
id: "6605463B4550A801"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "672291AE695D3AE5"
|
||||
item: {
|
||||
Count: 1
|
||||
id: "wormhole_artifact:wormhole_artifact"
|
||||
tag: {
|
||||
Damage: 0
|
||||
}
|
||||
}
|
||||
type: "item"
|
||||
}]
|
||||
x: -1.0d
|
||||
y: 6.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["1A05926674B2FB92"]
|
||||
id: "0AE258D57666445E"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "6896FD1F005FCB05"
|
||||
item: "immersive_aircraft:biplane"
|
||||
type: "item"
|
||||
}]
|
||||
x: 3.0d
|
||||
y: -0.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["25D4DF26DE35AA9D"]
|
||||
id: "1A05926674B2FB92"
|
||||
tasks: [{
|
||||
id: "0BE4D3DD67B15E7B"
|
||||
item: "immersive_aircraft:engine"
|
||||
type: "item"
|
||||
}]
|
||||
x: 2.0d
|
||||
y: -1.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"1A05926674B2FB92"
|
||||
"1635F0FF5EE83A1B"
|
||||
]
|
||||
id: "7DEE7F34129F6C17"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "491935136AA9EECD"
|
||||
item: "immersive_aircraft:airship"
|
||||
type: "item"
|
||||
}]
|
||||
x: 3.5d
|
||||
y: -3.5d
|
||||
}
|
||||
{
|
||||
dependencies: ["1A05926674B2FB92"]
|
||||
id: "2B18387E36EC5E37"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "5142A4F4DA622483"
|
||||
item: "immersive_aircraft:quadrocopter"
|
||||
type: "item"
|
||||
}]
|
||||
x: 4.5d
|
||||
y: -2.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["7DEE7F34129F6C17"]
|
||||
id: "1D79F300B31231FC"
|
||||
shape: "diamond"
|
||||
size: 2.0d
|
||||
tasks: [{
|
||||
id: "6B1163D958B1F123"
|
||||
item: "immersive_aircraft:cargo_airship"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.5d
|
||||
y: -4.5d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"0AE258D57666445E"
|
||||
"37443E16BC367061"
|
||||
"36CEEA7DECFCE5D9"
|
||||
]
|
||||
id: "375676395486D2D9"
|
||||
tasks: [{
|
||||
id: "4898507ED2186C00"
|
||||
item: "immersive_aircraft:nether_engine"
|
||||
type: "item"
|
||||
}]
|
||||
x: 5.5d
|
||||
y: 0.0d
|
||||
}
|
||||
{
|
||||
dependencies: [
|
||||
"37443E16BC367061"
|
||||
"0AE258D57666445E"
|
||||
]
|
||||
id: "36CEEA7DECFCE5D9"
|
||||
tasks: [{
|
||||
id: "4D8A699FA5CC9B96"
|
||||
item: "immersive_aircraft:steel_boiler"
|
||||
type: "item"
|
||||
}]
|
||||
x: 4.0d
|
||||
y: 1.0d
|
||||
}
|
||||
{
|
||||
dependencies: ["1635F0FF5EE83A1B"]
|
||||
id: "37443E16BC367061"
|
||||
tasks: [
|
||||
{
|
||||
id: "6F89355E5EC18EDF"
|
||||
item: "immersive_aircraft:sturdy_pipes"
|
||||
type: "item"
|
||||
}
|
||||
{
|
||||
id: "71874473865366D1"
|
||||
item: "immersive_aircraft:industrial_gears"
|
||||
type: "item"
|
||||
}
|
||||
{
|
||||
id: "5671F48227993963"
|
||||
item: "immersive_aircraft:enhanced_propeller"
|
||||
type: "item"
|
||||
}
|
||||
]
|
||||
title: "Airship Upgrades"
|
||||
x: 6.0d
|
||||
y: 2.0d
|
||||
}
|
||||
{
|
||||
id: "19F4EF07ADBB4F61"
|
||||
tasks: [{
|
||||
id: "09095C8A81A85633"
|
||||
item: "kubejs:grist_intelligent_basic"
|
||||
type: "item"
|
||||
}]
|
||||
x: -2.0d
|
||||
y: 2.0d
|
||||
}
|
||||
]
|
||||
title: "Transportation"
|
||||
}
|
||||
|
50
config/itemborders-common.toml
Normal file
50
config/itemborders-common.toml
Normal file
@ -0,0 +1,50 @@
|
||||
|
||||
#Client Configuration
|
||||
[client]
|
||||
|
||||
[client.options]
|
||||
# If the hotbar should display item borders.
|
||||
hotbar = true
|
||||
# If item borders should show for common items.
|
||||
show_for_common = false
|
||||
# If the borders should have square corners.
|
||||
square_corners = true
|
||||
# If the borders should fully envelop item slots (otherwise they will only show on the bottom portion of the slot).
|
||||
full_border = false
|
||||
# If the borders draw over items instead of under.
|
||||
over_items = false
|
||||
# If the borders should have a more prominent glow.
|
||||
extra_glow = true
|
||||
# If automatic borders (based on item rarity) should be enabled.
|
||||
auto_borders = true
|
||||
# If enabled and Legendary Tooltips is installed, borders will sync with tooltip border colors.
|
||||
legendary_tooltips_sync = false
|
||||
# Custom border colors for specific items. Format: { <color> = ["list of selectors"] }.
|
||||
# Color formats supported:
|
||||
# Hex color code - A hex color code is preceded by # or 0x and must be quoted. Supports 3, 4, 6, or 8 digit codes in the formats RGB, ARGB, RRGGBB, or AARRGGBB. Examples: "#F4C", "0xFEE0", "#40FF2E", "#CC00E2EE"
|
||||
# Decimal color code - A decimal color code, which is just a hex color code converted to decimal. May or may not be quoted. Examples: 15614720, "4278251143"
|
||||
# Minecraft color name - One of the standard 16 Minecraft color names. May or may not be quoted. Examples: "red", "dark_purple", "gold"
|
||||
# Web color name - One of the standard 140 web/HTML color names or "transparent". May or may not be quoted. Examples: "chartreuse", "darkorange", "deeppink", "deepskyblue"
|
||||
# Modifiers - Colors specified in any of the above formats can be modified by using modifiers.
|
||||
# Modifiers are specified after any color in the format "<+, -, or =><h, s, v, r, g, b, or a><amount>".
|
||||
# The letters represent h - hue, s - saturation, v - value, r - red, g - green, b - blue, a - alpha.
|
||||
# Valid amounts are 0 to 255 for all types except hue, which accepts 0 to 359.
|
||||
# Using any modifiers will REQUIRE the key to be quoted.
|
||||
# Examples: "red+h15", "#saddlebrown-v20+s5", "10_aqua_aqua+v15-h5", "#F4C-r15-v10=a40"
|
||||
# Animated color - An animated color that fades from one to another in sequence.
|
||||
# A string in the format "<duration in seconds>_<list of color definitions separated by underscores>". May or may not be quoted. Examples: "10_black_#7FFF00", "5.5_gold_orange_orangered", "20_red_orange_yellow_green_blue_purple"
|
||||
# Selectors supported:
|
||||
# Match all - Specifying just an asterisk (*) will match all items. Examples: "*"
|
||||
# Item ID - Use item ID to match single items. Must include mod name for modded items. Examples: "minecraft:stick", "iron_ore", "spoiledeggs:spoiled_egg"
|
||||
# Tag - $ followed by tag name to match all items with that tag. Examples: "$forge:stone", "$planks"
|
||||
# Mod name - @ followed by mod identifier to match all items from that mod. Examples: "@spoiledeggs"
|
||||
# Rarity - ! followed by item's rarity to match all items with that rarity. This is ONLY vanilla rarities. Examples: "!uncommon", "!rare", "!epic"
|
||||
# Item name color - # followed by color hex code, to match all items with that exact color item name. Examples: "#23F632"
|
||||
# Display name - % followed by any text. Will match any item with this text (case-sensitive) in its tooltip display name. Examples: "%Netherite", "%Uncommon"
|
||||
# Tooltip text - ^ followed by any text. Will match any item with this text (case-sensitive) anywhere in the tooltip text (besides the name). Examples: "^Legendary"
|
||||
# NBT tag - & followed by tag name and optional comparator (=, >, <, or !=) and value, in the format <tag><comparator><value> or just <tag>. Examples: "&Damage=0", "&Tier>1", "&map!=128", "&Enchantments"
|
||||
# Negation - ~ followed by any selector above. This selector will be negated, matching every item that does NOT match the selector. Examples: "~minecraft:stick", "~!uncommon", "~@minecraft"
|
||||
# Combining selectors - Any number of selectors can be combined by separating them with a plus sign. Examples: "minecraft:diamond_sword+&Enchantments", "minecraft:stick+~!common+&Damage=0"
|
||||
[client.options.manual_borders]
|
||||
# grist gets RGB, because why not
|
||||
# "5_#c300ff_#ff0000_#33ff00_#ffd500_#0066ff" = ["$kubejs:grist", "$kubejs:grist_blocks"]
|
256
index.toml
256
index.toml
@ -14,7 +14,7 @@ hash = "a60442351eb4a2fb2c74d4a7c62fd25d32faca43c0f192a1c261c13db9a71551"
|
||||
|
||||
[[files]]
|
||||
file = "config/almostunified/unify.json"
|
||||
hash = "69af40d099b24e53d2f6463348a1c012900b87d729af8fd83c312fe576f2fe10"
|
||||
hash = "8c51d8df836f7175aa64f92141df3e3a3113f080511420b4ae34ad0acb8d3c21"
|
||||
|
||||
[[files]]
|
||||
file = "config/apotheosis/adventure.cfg"
|
||||
@ -54,11 +54,11 @@ hash = "62afc99266eeb4ca3b31af6aea57b5ae877da549e4e327d0090d74db97d67b80"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/chapter_groups.snbt"
|
||||
hash = "323c95696ca0eb4887243f6fbeb0de961874ca0d9924daf29546de4f5f5cced3"
|
||||
hash = "24d6564d06f4482c009da3d706036c399d822ab812506360af28e37d59d3c843"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/chapters/automation.snbt"
|
||||
hash = "89d5686fa7d33e453996201b5f55ae68a4dd499d1aadc4624d3e562f8df6e67d"
|
||||
hash = "877f9dd3b22b1b45fd29f1de29a1ea7fe172045bfee94c1399f3f595d3a7f389"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/chapters/base_building.snbt"
|
||||
@ -68,6 +68,10 @@ hash = "5db7a5f4cd94fc19a484f714a31573877ff052c1d8489afb02f6a37b2026cd45"
|
||||
file = "config/ftbquests/quests/chapters/basic_build_grist.snbt"
|
||||
hash = "6922bb7b61c1f4c6b288e88389093fbb92d510cad83fb943d12625c652f443bd"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/chapters/basic_intelligent_grist.snbt"
|
||||
hash = "69c97103d900dcafba55d6378b9f9a108ccdccb4ca3c0773b7aa2b5d2ad343d5"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/chapters/build_grist.snbt"
|
||||
hash = "926424de7920412d67ec6c0d35cd9bdf0582d8572f8cef03969560db726c0c76"
|
||||
@ -86,7 +90,11 @@ hash = "aa23b81f7dcea4fe0e8c9d289dee295d6f8085e343568b5026736950cec271b0"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/chapters/improved_build_grist.snbt"
|
||||
hash = "fd8e53fcf735027cf13175cc2d595f3812a3932a1364f4200e3a3873fe3c659c"
|
||||
hash = "3693246c0a1cf1048fd9b3d5a0d037b9c8d539f67ea1d73c9a5e04c267f246a6"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/chapters/improved_intelligent_grist.snbt"
|
||||
hash = "e1d0fa5aa6dda4bcfc7038e5118e051f38b79dbda9d199364814d46cb915039f"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/chapters/malloc_s4.snbt"
|
||||
@ -106,7 +114,7 @@ hash = "c981fd882894d5e030f250ffb0d38c2374f663cca74da61ab465092abe57ef3e"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/chapters/transportation.snbt"
|
||||
hash = "f67ee3d8e264125f93d5e39020f2ba856da4583229de242d55f25afb60a1cc60"
|
||||
hash = "6d0deb7e237102e77ebc8ee17b3a6b42be6db8d2f64c8ef03391b85e7e978099"
|
||||
|
||||
[[files]]
|
||||
file = "config/ftbquests/quests/data.snbt"
|
||||
@ -140,6 +148,10 @@ hash = "2b957dd01aaf5435d451b7845dddb9c7af7cecf6308d98bf9d9cea4a893eabd4"
|
||||
file = "config/ftbquests/quests/reward_tables/random_metal_dust.snbt"
|
||||
hash = "749e6bd14eca63555b9193c6fc1f550b953ef742bf912c6eb0d7ef18fc063116"
|
||||
|
||||
[[files]]
|
||||
file = "config/itemborders-common.toml"
|
||||
hash = "501464fecf9667c720c42895f3c87b21bb413ba984a7b772e0c8483b1af17a7e"
|
||||
|
||||
[[files]]
|
||||
file = "config/miapi.jsonc"
|
||||
hash = "3e03896b16e429035a401f2d947c01852b39cd7036e8816401f9e6a0700b357a"
|
||||
@ -337,6 +349,22 @@ hash = "419fdc2c111b1a2914948df553bb0a4d45e5f8f9e9ea541958e905509717236d"
|
||||
file = "kubejs/assets/malloc/textures/item/grist_radiant_universal.png"
|
||||
hash = "42a2172a02524079b7cbc1f5d2a20a0836f4a5d4bc9a16c5d46b00944e0231ce"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/assets/malloc/textures/item/intelligent_catalyst.png"
|
||||
hash = "f772a30c558f10ae84f94090e79b6aba02c6ec74609848562cad8bf97536f543"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/assets/malloc/textures/item/intelligent_focus.png"
|
||||
hash = "e5030cfedcbcfbdf5f3faf85bfea7d5c12c44826c1be43d2377ba35de549044c"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/assets/malloc/textures/item/sapient_focus.png"
|
||||
hash = "0da5812f7ea6433b5570cbede69d81057a3e34c855380e78aaa94e3967d6df98"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/assets/malloc/textures/item/sapient_focus.png.mcmeta"
|
||||
hash = "113b7219abbc4483b799c934a0ca59a157d70cee97128ead936c5ea337260493"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/client_scripts/jsconfig.json"
|
||||
hash = "dee1340c5e7927f5675987957c6b198f9ca2e1e731291d72396278dddc066a04"
|
||||
@ -349,6 +377,10 @@ hash = "a4454cdbcbe9cc1f09125730bf3b513ecae2e14e2bdf4296e997a8bf767d6fb9"
|
||||
file = "kubejs/config/common.properties"
|
||||
hash = "f6bb8d377d9fc2085ebb06bbb4ebbd0f1786325ed821ec254064dbb8f2a94f80"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/data/emi/recipe/defaults/kubejs.json"
|
||||
hash = "3dfbf52f29923ede5825329f240ef085339775fd9996df6cdc0e7fc835b11080"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/data/industrialforegoing/recipes/dissolution_chamber/advanced_machine_frame.json"
|
||||
hash = "3222c9ad39285f3503cbbeae101f9b5f346c7a259d828e1e157f7c21d744d61b"
|
||||
@ -523,31 +555,31 @@ hash = "a5e02c71fd92029ea204f96d071c6b25f59d03b59f65199cb24f96a1858b3ed0"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/grist/agricultural.js"
|
||||
hash = "cdf7287193272cb56683c68fd2a6e70ba9afc858e3a2cabafbdecdefddd37245"
|
||||
hash = "65145ba119d067f34a207496f295c8fd63673723c9504637872f27ff0f78c566"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/grist/build.js"
|
||||
hash = "fb0b2aae3ef5e7c77eb03392f92c043a33df894e7e986cab4b045900d970fa81"
|
||||
hash = "3d6b9e5d6935c8de378596e052c8a61ea7e827cfbda135e7298863093772151e"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/grist/energetic.js"
|
||||
hash = "5ab83de41e89b9d25acfabb4d26bd6e53579f274c9e8e8abf738d8674b24feb3"
|
||||
hash = "28fffd03b4985c3f56d18d8449f2e04badb91439f0690484668d222130672ae6"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/grist/intelligent.js"
|
||||
hash = "f922fd6e0bba21f3bb42929d83b4c977178a8421a176adc8e738291c877a27d7"
|
||||
hash = "11903a439e89b90be32c435f54b49ad915aab9d571434120592b3a4b579f197d"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/grist/primordeal.js"
|
||||
hash = "b2558215fb1aca7efcf3a1c09d41e847f78e8fe61c3aa6652b17bd870edd8b87"
|
||||
hash = "8902157c387eedd43855207c38af0fa990522589fb6a8ae827bb9cfecedf19b6"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/grist/tags.js"
|
||||
hash = "f8c23be0553da9ec51e7f58e94d5b547e9ee813cea2a8c97d7cc5def3c680ddd"
|
||||
hash = "0863a1d0a2d67ea44bd174fbe19642e73a3f85aae6bdeb12599e61f174079f2b"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/init.js"
|
||||
hash = "359568a66f5354c5d9bd92e8743de6e6af35bfd26ffe3194df40466f2b6ce032"
|
||||
hash = "a3be46580f9dbc584536293dc6e9a6b76583bb47069ae00d2af75583766f0438"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/malloc-balance.js"
|
||||
@ -555,7 +587,11 @@ hash = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/ae2.js"
|
||||
hash = "4dacad5d914c02db31c80e40d7edab7fee89a817444e2f75858209278f9be446"
|
||||
hash = "b0fe6b78daf76938f90ba1cb76f79079c26b01e6ed612b151d81a5d839b580e9"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/apotheosis.js"
|
||||
hash = "815fc6329edd3a9445c7b6be55ecc83f1d4b98de5474d84a5316bc915dde8a46"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/arsnoveau.js"
|
||||
@ -563,7 +599,7 @@ hash = "f25c7a0fd694135d3de66db51519c14377f96a836dbd59081a9f22860fb1878d"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/bakery.js"
|
||||
hash = "d3354c17a4803ff38f9f862171a9381fe1617ba1c49f63adbeaba99ab085d159"
|
||||
hash = "d60ef6dbb60815fb8703d5aba99eb147a1129c7eafc17297b708f29366da0266"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/botanypots.js"
|
||||
@ -573,6 +609,10 @@ hash = "61d6bccd674c300bbccf4375d1b21b25fbdf6211fbcf539d726a0b3be3eb17d0"
|
||||
file = "kubejs/server_scripts/mods/bountiful.js"
|
||||
hash = "02114b2d9c50ffc113d85b9861090f9fe6a86d3e7fcc6d6612085c429e28fc8c"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/brewery.js"
|
||||
hash = "36902591d2ad83cee0e339b1cd7b4f033afeba590b21ab5c36eea20f5c8941aa"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/buildinggadgets2.js"
|
||||
hash = "f5fd5c23f0122c0f488485eb87df0e989dad6576fa15df95faba8d872f5593fb"
|
||||
@ -587,11 +627,23 @@ hash = "4717847a6d54f56ed6919a1e2c3591fc73780973708e818a563753132bc7c15e"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/create.js"
|
||||
hash = "13831564cb218cf39d1db7d6891a1fc3f4647bdbe1b30a25571f863edecbf4de"
|
||||
hash = "449085c47d84c6f0f24cbe7b15b60434f35db12095f5e2172e0c64a23b93a526"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/create_jetpack.js"
|
||||
hash = "c01b0faf4eac2658f0f1e5d95fc6e4365888a2a3c8171d448594abf69d34332a"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/create_new_age.js"
|
||||
hash = "06b10973ef4e2d9b053643a50d443a9e16134d46ba1dc8ed68b2f7b02b44cc7e"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/create_power_loader.js"
|
||||
hash = "99c87081cbcba79e032cf8c33c5bf9ff032e841da349c1fc720048711b064584"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/croptopia.js"
|
||||
hash = "e26329b4528cfa187e27acf924039157bf7ecc3c31c745a338490bde8d81695d"
|
||||
hash = "7d09c5eec356309a58d915dbe77e901e4c72679eae95657a5c0dd371b9c9e747"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/darkutils.js"
|
||||
@ -609,13 +661,17 @@ hash = "4ae08d926ae9dfd24d59ae6bea4659c400ca89f011f2acc85b7f839956236f35"
|
||||
file = "kubejs/server_scripts/mods/elevatorid.js"
|
||||
hash = "f9a0d2744bd16db5ba3a099b87ce15c72c9e067ce4d27ba17a82fceee40a9845"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/energymeter.js"
|
||||
hash = "dc4318bb4290cc1b1a9f7c971fca38f951977d22bdfc824fb4290b78e2f0841a"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/experienceobelisk.js"
|
||||
hash = "d635d9125b6a04148ddf506e45c45e88b8c255c4fdfa5a3af1d441931a15bcd0"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/farmersdelight.js"
|
||||
hash = "fd8f6de5bb56d08a181e625e450b91c3ea687b33ebf378daf0381e7873515f85"
|
||||
hash = "dfdc817dfe6078ff22a64ce2db5b0de2c1f16ad5f29af1bd738ddfdd183fc244"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/functionalstorage.js"
|
||||
@ -655,15 +711,15 @@ hash = "2d9109e7f1e0beed5dd325fb7939a15f6afa2f2783e31f3830d1fb6f055f3f07"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/powah.js"
|
||||
hash = "93b1aee5ea41c226a2dd5e453824518ab0eeb6d15f649f0a74e5b0e4be9a2e17"
|
||||
hash = "f83c2a9f95e664a55b76eb3f67e0c4e64218fc4cba324da41829a79aea5b9cb1"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/powder_power.js"
|
||||
hash = "06d82c15a2d41e8408f550c0e24ef41d1bc730b16874e9b3aff5cc5cc143ab00"
|
||||
hash = "029c5a31573f50b8876763efa7a6306867542623e62ab0a0e5b3f377792f8b59"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/prettypipes.js"
|
||||
hash = "b8e97ae2d545b542bd983935eb914709315630d63f921a144f9242943ecfe672"
|
||||
hash = "27dec2fed14df3f60856114b01e9d34821ebd37afbc5a5fcd5eb1c093821f05b"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/sophisticated.js"
|
||||
@ -679,11 +735,15 @@ hash = "d37bfb9bc41aa46d0aa075dbe19a5eeb947b4ea3d8f13c03ac370cb00763d7a1"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/thermal.js"
|
||||
hash = "b33f603a2121bc90e47b27680ee55655dca46c9d7b07d97d1c06698d0a1c762d"
|
||||
hash = "d8fcfe6c5efe785eb7493deddcc121ace1eff1358669426c6da2e63ae5b2d495"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/torchmaster.js"
|
||||
hash = "bace606c88cff3079285ad8932eeebccdcea1e73dab04168591a888ee5c5278b"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/vinery.js"
|
||||
hash = "208d9d49c612c84f57ee509ec02d4c44145b673caaa06fe451340dc30b8da5aa"
|
||||
hash = "b24325803c78a586a2516a593456c43156b4e7b5d63a9388a3d7476fe06f5417"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/mods/waystones.js"
|
||||
@ -695,7 +755,7 @@ hash = "4003082f31011049402ff31504a6db0f4fdd6c7076167109c66fa412286be462"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/ore-processing.js"
|
||||
hash = "b5317b5c9094cf38ef9ffb536a70ebf849056030a900feb4a837b284ec4c7f1c"
|
||||
hash = "4b8bb32cc012765c5c1719b297a396ffef6bd563f4b0a1cee1a5b4b2b98a8af1"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/server_scripts/progression/report.js"
|
||||
@ -715,19 +775,19 @@ hash = "395c96d3ddd178821db851f387e91560e606ea752177f66d2016f12bd0542b8f"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/startup_scripts/grist.js"
|
||||
hash = "b79ebd1ba18eeb0dc59bb6b7ed375cf348edd90fa648f5759dd45f890db5f3d6"
|
||||
hash = "d851746c6e7ae1c679f576b984662289c10e4195c0f52b459fd1ce3a83666ed4"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/startup_scripts/init.js"
|
||||
hash = "86b0c3c97240c008d6de87d66ff77a80e47a07c105e89d743cb74c9fdc1b031e"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/startup_scripts/jsconfig.json"
|
||||
hash = "a9e6912b8515be242dd76c6c9a536a8d7c73f6b8b949787f538436ebeafbb7ee"
|
||||
hash = "80483290133f2ab1a969008335c29758884b20e4611ffbfb4e4253f3207ef74a"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/startup_scripts/progression-items.js"
|
||||
hash = "a02214d2516833e93c185648258182347dc771a45eb50c6affa06897c966c7cf"
|
||||
hash = "eda5964bf26b3ea17ab806944e79c16007e525da8f3ba4d6222dcbb0437f9f90"
|
||||
|
||||
[[files]]
|
||||
file = "kubejs/startup_scripts/rarities.js"
|
||||
hash = "c41670ee6003d8151508fe9a35931a42765390a126fc4c9afb285edffa153892"
|
||||
|
||||
[[files]]
|
||||
file = "mods/ae2-things-forge.pw.toml"
|
||||
@ -844,6 +904,11 @@ file = "mods/ato.pw.toml"
|
||||
hash = "d64d02d240575e58a4b2ee8794a60f67f053d1fd675dfbd280b2bb8c3438fb93"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/attract-to-sound.pw.toml"
|
||||
hash = "8701257b0340cf7ef4f623f3f691e267b959e5ba200e72988ba4dd12658c9fbc"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/balm.pw.toml"
|
||||
hash = "e02edad65b21bdaa914dce1237d99e4a4d2d80e497e817e0cd77be87043c80be"
|
||||
@ -899,6 +964,11 @@ file = "mods/building-gadgets.pw.toml"
|
||||
hash = "8461b7344559646b5051a6d812e2cd4d43e62c8c817d17f0b2552f65306f43d4"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/butchery.pw.toml"
|
||||
hash = "67a12440b89d7c88ea7552249dba464314b78dc463774110128f49e82524156d"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/caelus.pw.toml"
|
||||
hash = "5155ae1ca2c606df2001422a48cd167d2449160d5fe12a302753dee69af7fe92"
|
||||
@ -984,6 +1054,11 @@ file = "mods/cooking-for-blockheads.pw.toml"
|
||||
hash = "4df05f5b4ffd71d44d4a9d2572548b5fa34103e88c151cb7ed0cddb662eb677e"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/copycats.pw.toml"
|
||||
hash = "408ce5619020064fc084d150d331edc654bbf1749bbd289e19f050a0df51f1c8"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/corn-delight.pw.toml"
|
||||
hash = "e5436d140858377db41e50dbc6ef5ea6fc8efecdbedbb56ae6bf25ac6b4de57e"
|
||||
@ -1014,14 +1089,29 @@ file = "mods/create-goggles.pw.toml"
|
||||
hash = "78f2bef5055785f575721f45fc38619bccf578c6c1499e477f4a8631efd50392"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/create-jetpack.pw.toml"
|
||||
hash = "af34be85ba49c0ab5cfa982627c6f196c395926dcadfb495060ac5aa56ed7daf"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/create-new-age.pw.toml"
|
||||
hash = "705f2896491dcb762ea9585a9d72f9482dcfd326796c3d9554764a5431aba844"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/create-power-loader.pw.toml"
|
||||
hash = "255864fc7aa8e28619e5ddbf9094623bfcc9d6caa260bc0cd3d32b39d45a532f"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/create-railways-navigator.pw.toml"
|
||||
hash = "00929d51a65b0b8c417691b3312fc858ccff50bce507fc1d1b85dc7a2b2df20b"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/create.pw.toml"
|
||||
hash = "119d501c87aef8afa8cf89ed6f17499518c21240d7781f4331e3007e57957a79"
|
||||
hash = "97f7c75ac9bf6ee2a4f15c0f1e3e4cd161f3d2e33f32ebf623811ac90b3c2a83"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
@ -1054,6 +1144,11 @@ file = "mods/curios.pw.toml"
|
||||
hash = "68960354be9294d5761b636b94e4f54715119602e83c4dd107698021dbeca16b"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/custom-rarity.pw.toml"
|
||||
hash = "9c1c5002ed732af9361b06b0f72de65f69d241c8bdec7a88579e66e7fd4f1645"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/cyclops-core.pw.toml"
|
||||
hash = "de937c84384b9e99dc858f1e68f1a34789e357e111dd74cf8d8ff87df2d0dc6f"
|
||||
@ -1074,6 +1169,11 @@ file = "mods/delightful.pw.toml"
|
||||
hash = "7e66dc768ce9a290edf6b25bb0ee760b7aafabb8c161a2181306dfb3b2bfddee"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/dimensional-dungeons.pw.toml"
|
||||
hash = "5e64f030cc500f12429c9f931a795221aa1f00fedde37a0b63685dcc65e54136"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/ding.pw.toml"
|
||||
hash = "abf68c7b90b93d7223c6ed856e7a4ae89ebdccf7780277e4de6aa3d707f7e27f"
|
||||
@ -1114,16 +1214,6 @@ file = "mods/dynamic-fps.pw.toml"
|
||||
hash = "62c8188f48d71d21bf114d4dcfbc35d1e3251456e07f2caef1a2457d2e2a2947"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/dynamic-lights.pw.toml"
|
||||
hash = "9e509b2046271caf29aa1f0f91f1db22d981a3e84f0dd4b13047b3010fba078f"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/dynamiclights-reforged.pw.toml"
|
||||
hash = "8f2270a50a633db681826cbfb691e6efdb25e1e0c4702125c13d525b52fe229f"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/easy-villagers.pw.toml"
|
||||
hash = "9f9d2f8a99a2599ab346e2b3d2a6a70ffa5b1a41dd36f59bad5f14ee96f0e6fd"
|
||||
@ -1169,6 +1259,11 @@ file = "mods/ends-delight.pw.toml"
|
||||
hash = "63a9fdacf232df08a520fb1f25d2d1e878551fef4d18722c075e04d6291f5ed1"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/energymeter.pw.toml"
|
||||
hash = "4f815d15a2c3918b1ae49851e4d743b85bbdb5bc5b32cd0c9fde14daed000cda"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/enlightend.pw.toml"
|
||||
hash = "bd3ba2a82d5b80be3ccc187ad50a1aec11f53956c2a20cd9a0ad70b8cd932c1d"
|
||||
@ -1199,6 +1294,11 @@ file = "mods/exposure.pw.toml"
|
||||
hash = "4835b66cd4c26a027d52b4d15916f010c326537bebaa81350ddd40b9df61cf27"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/fairy-lights.pw.toml"
|
||||
hash = "eeca094798607a0393a5ec261a0f3298e20fa74b0daa879951aec47c2c7fe64b"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/farmers-delight.pw.toml"
|
||||
hash = "ba6c13e70f06dde3b8d01d4143c22fea36ec035d7cd8834c7a82aa778a809467"
|
||||
@ -1291,7 +1391,7 @@ metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/geckolib.pw.toml"
|
||||
hash = "598758f152e98916bc6eea2ad73a82b47a6e6934f4b0ba1e1f6593773afd1a50"
|
||||
hash = "5290e7961ab2ca528b8bf3fecfbcb33240029314fd7cb2086c06c3ee13daf1fc"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
@ -1314,6 +1414,11 @@ file = "mods/handcrafted.pw.toml"
|
||||
hash = "b9a7e71472f5f88229bf2f9e214b223b3900052bdc56075906d7a22acf74568c"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/hardcore-revival.pw.toml"
|
||||
hash = "5869060b25fa903f04001584df9cef6e69b33235116eea441c70bdc5a18535c8"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/heartstone.pw.toml"
|
||||
hash = "a9deb10c5d5431b59c78ab1b04827f761e8fac6cb925800155a560c343180186"
|
||||
@ -1324,6 +1429,11 @@ file = "mods/hostile-neural-networks.pw.toml"
|
||||
hash = "d8f52c6109108160c9ca80ae2d1fd03f3b27f4a3196c62ba805928b66482be5b"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/iceberg.pw.toml"
|
||||
hash = "c1d1a0476c58e3c011de6f750f48eb4f48493a1b9cef7bd59c008e87e0c0984c"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/ichunutil.pw.toml"
|
||||
hash = "6be04f7e78af2fc1701666edecbc69cc7c401bad38d4b46d36ad68d10e3e643f"
|
||||
@ -1354,6 +1464,11 @@ file = "mods/insanelib.pw.toml"
|
||||
hash = "815b4191dd612bc6d1b1b714c507ba4e0884cadff7355b799b5dad39a6e9574a"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/interiors.pw.toml"
|
||||
hash = "94a549e2ce246807a68cb59773e2ee2ec412039fb2aed4e4d5b35077972c66d4"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/inventory-essentials.pw.toml"
|
||||
hash = "3e53a00faa4c4b7a182fef776a740bc6df256b81a4ec77b299363e1dda62813a"
|
||||
@ -1364,6 +1479,11 @@ file = "mods/iron-furnaces.pw.toml"
|
||||
hash = "1d461a57d4e64d5cdb416db0ee911c150e0ac08e13335ff525b2b5d0bef5844f"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/item-borders.pw.toml"
|
||||
hash = "5a10f11c440c870239753bae8f488ca6c251bfaf6967b55cf8666c778c333da4"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/item-filters.pw.toml"
|
||||
hash = "ff92eddb2bf6f1afe9fa7fc73d63ea9419e0cff77fbd4fd2936b51525fe9340c"
|
||||
@ -1421,7 +1541,7 @@ metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/kotlin-for-forge.pw.toml"
|
||||
hash = "40026875ee9b7d25a4ece48faa2b70a338100e87a689d5a8d4ba1ee608b878f6"
|
||||
hash = "7ea985404ee4cc9082472c6869ec146309f526e395361b39f2f4c1a43506c41d"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
@ -1499,6 +1619,11 @@ file = "mods/lets-do-vinery.pw.toml"
|
||||
hash = "804cfa5ea0ee40e2cd079f8acc738d83c3bf9afd689deab4a6be9d28e62f6b40"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/lexiconfig.pw.toml"
|
||||
hash = "471f6366615d29246e35c3193359ea479925ad98eb2beb1d59f0647f9896df3d"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/loot-journal.pw.toml"
|
||||
hash = "69c57c204a597cd8d05b9de65b63516bdae88589cb254d38b0361cc828e5e1a3"
|
||||
@ -1514,6 +1639,16 @@ file = "mods/lootr.pw.toml"
|
||||
hash = "a3fc2800be76f3406961d01ab4ab6805b4ca5e269f53d3cb2d58ea39d6afa9f2"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/macaws-furniture.pw.toml"
|
||||
hash = "454c8dd01b9f5e9b9288f37230dd0e38b7a2bba8d14bf4adce738185626191bd"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/macaws-lights-and-lamps.pw.toml"
|
||||
hash = "a205d0ab764efa4bb2eb93c114bbfde4cd3e117d117be9a941b8b56148945d0a"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/magnesium-extras.pw.toml"
|
||||
hash = "27f69e040bd3275a1ee455353f1ad31b69200d72122308ead260522a6c2525e0"
|
||||
@ -1594,6 +1729,11 @@ file = "mods/notrample.pw.toml"
|
||||
hash = "f08e47a8b608a67794114836dcefe16e07c853ca4271c2fa8def9bd84b58020e"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/obscure-tooltips.pw.toml"
|
||||
hash = "fd65b1e838edc65558b89ae72af29051ac92997d1d6ef4260fc889dd350a826e"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/oceans-delight.pw.toml"
|
||||
hash = "57f6793fdca748db18eb33a34344f68804e881af07c5e032073d8b33ee683a54"
|
||||
@ -1684,6 +1824,11 @@ file = "mods/pretty-pipes.pw.toml"
|
||||
hash = "0729cfefad5651843eb27cc59464ca1ba9d4221f4f9393291a66645817944122"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/prism-lib.pw.toml"
|
||||
hash = "f79cb80b6ea599fe4ca9404465277ff7edf25118976170c28827590febfcee7a"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/probejs.pw.toml"
|
||||
hash = "25f4863fba654a2b603a90f52ce5f0e17871c4249fd5c7bef3d40a6c8d9e36de"
|
||||
@ -1764,6 +1909,11 @@ file = "mods/simple-voice-chat.pw.toml"
|
||||
hash = "703a46fa7d4918e855cc6ee841d4542741494851023ff49ba4087092a8d70b20"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/simply-light.pw.toml"
|
||||
hash = "762eced5d260cdbc94f0acc033efd8fe70fdfe5a28bd8d180e0b052de509893f"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/simply-swords.pw.toml"
|
||||
hash = "60fffd9990be454a9dffb87a2804f654e6deb21b2ee63924ef4a84d443612352"
|
||||
@ -1784,6 +1934,16 @@ file = "mods/smooth-chunk-save.pw.toml"
|
||||
hash = "a061b4f98461fc38b4ff6495b5e3a9b8708e9d87333c2cbb29e6b265053a5abe"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/sodium-dynamic-lights.pw.toml"
|
||||
hash = "82bb7cd6c8b68bb1831bb7c374bd316b6403cd01195d582f19c31076c908953a"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/sodium-options-api.pw.toml"
|
||||
hash = "75a60e6b443b351b7a4a78ffce7c71e44b3e20ca10c374aea1de516c785d6e2d"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/sooty-chimneys.pw.toml"
|
||||
hash = "e8f11d351338010339f2bfe8d3a28e7b56fbb802b29c74f205490e46e2a5ea14"
|
||||
@ -1954,6 +2114,16 @@ file = "mods/vein-mining.pw.toml"
|
||||
hash = "0d1a0a24a2d759c48bb1daa4b1bf27df514c91a4ff9a2c87df20ed5ce9ae809a"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/vibrative-voice.pw.toml"
|
||||
hash = "5194dedc1d09130cf3635ea8f32e8d95ce0615d08d9c60006ec94e512a01eb46"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/voidscape.pw.toml"
|
||||
hash = "607057a50307a9da24c04f8371158698fa0a2d2770b9062035ed88228dc96224"
|
||||
metafile = true
|
||||
|
||||
[[files]]
|
||||
file = "mods/wares.pw.toml"
|
||||
hash = "781312254556427d94858b2441e76ccc5bb10225c49ca072d17c2a52de710258"
|
||||
|
BIN
kubejs/assets/malloc/textures/item/intelligent_catalyst.png
Normal file
BIN
kubejs/assets/malloc/textures/item/intelligent_catalyst.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 722 B |
BIN
kubejs/assets/malloc/textures/item/intelligent_focus.png
Normal file
BIN
kubejs/assets/malloc/textures/item/intelligent_focus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 589 B |
BIN
kubejs/assets/malloc/textures/item/sapient_focus.png
Normal file
BIN
kubejs/assets/malloc/textures/item/sapient_focus.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.5 KiB |
@ -0,0 +1,3 @@
|
||||
{
|
||||
"animation": {"interpolate": true,"width": 16,"height": 16,"frametime": 5}
|
||||
}
|
49
kubejs/data/emi/recipe/defaults/kubejs.json
Normal file
49
kubejs/data/emi/recipe/defaults/kubejs.json
Normal file
@ -0,0 +1,49 @@
|
||||
{
|
||||
"added": [
|
||||
"jei:/farmersdelight/kjs/7xq4nyk3r5vfi4o5stor2qno",
|
||||
"jei:/thermal/kjs/4umrea9hazjwtxvpwevqoae8e",
|
||||
"ae2:network/cells/item_storage_components_cell_16k_part",
|
||||
"ae2:network/cells/item_storage_components_cell_1k_part",
|
||||
"minecraft:kjs/grist_intelligent_basic",
|
||||
"jei:/summoningrituals/kjs/3fs6aw230b71bmm7kysg4doxm",
|
||||
"jei:/thermal/kjs/5q4y5rpbrx8e376dyfxh882m2",
|
||||
"ae2:network/blocks/storage_chest",
|
||||
"kubejs:grist_primordeal_improved_manual_only",
|
||||
"jei:/caupona/kjs/45zxnyunup7lwby0s5u010k2m",
|
||||
"minecraft:kjs/insightful_tincture",
|
||||
"powah:kjs/3f73f2rnxi6tyutjjhrcpmrv2",
|
||||
"kubejs:grist_primordeal_basic_manual_only",
|
||||
"jei:/farmersdelight/kjs/4z9mtrr3eq6xwnjucb5onkj9m",
|
||||
"jei:/ae2/inscriber/calculation_processor",
|
||||
"jei:/ae2/inscriber/logic_processor",
|
||||
"minecraft:kjs/grist_energetic_basic_block_2",
|
||||
"jei:/create/kjs/ep7so3n829sq63hg3pi28l0yy",
|
||||
"jei:/create/kjs/akwrfa3jl0aw5t0z03ht8llmg",
|
||||
"cookingforblockheads:toaster",
|
||||
"jei:/create/kjs/86gof05gy2luf5i6d12ui1cjb",
|
||||
"ae2:network/cables/glass_fluix",
|
||||
"minecraft:kjs/grist_energetic_basic",
|
||||
"minecraft:kjs/grist_paste",
|
||||
"minecraft:kjs/grist_build_basic_2",
|
||||
"jei:/industrialforegoing/kjs/5pxdlk276ldctac2uef99tfs1",
|
||||
"minecraft:kjs/grist_agricultural_basic",
|
||||
"jei:/farmersdelight/kjs/9peruvnu0lsi6d079cjh6seyc",
|
||||
"appliedcooking:kitchen_station",
|
||||
"ae2:smelting/silicon_from_certus_quartz_dust",
|
||||
"jei:/ae2/inscriber/engineering_processor",
|
||||
"jei:/ars_nouveau/kjs/3fs313200k49rtji8uufmacsq",
|
||||
"ae2:network/cells/item_storage_components_cell_4k_part",
|
||||
"jei:/thermal/kjs/cbe32crqpdzagvuhkf6vilvjb",
|
||||
"jei:/thermal/kjs/70qk6590scuax6epa980053cl",
|
||||
"jei:/create/kjs/dwn1xyh6m7yc44b4xpx827n2",
|
||||
"minecraft:redstone",
|
||||
"minecraft:kjs/insightful_blend",
|
||||
"minecraft:kjs/sacred_flesh",
|
||||
"jei:/apotheosis/kjs/e5z0qepnnqf0wr4f65tjc3xqq",
|
||||
"jei:/thermal/kjs/8qo66bnz9m6cpy1okhsev4db2",
|
||||
"minecraft:kjs/grist_treats",
|
||||
"powah:kjs/5otj39ftzbmi5k8gw3rqw2i9q",
|
||||
"ae2:network/parts/terminals",
|
||||
"minecraft:kjs/grist_primordeal_basic_block"
|
||||
]
|
||||
}
|
@ -1,4 +1,62 @@
|
||||
ServerEvents.recipes(event => {
|
||||
// Creating dough from flour from plants is a major progression item for Agricultural grist, so we set it all up in here.
|
||||
|
||||
// First, we set up the flour processing lines
|
||||
let flourItem = AlmostUnified.getPreferredItemForTag('forge:flour');
|
||||
let doughItem = AlmostUnified.getPreferredItemForTag('forge:dough');
|
||||
event.remove({output: flourItem});
|
||||
event.remove({output: doughItem});
|
||||
// Vanilla crafting with a hammer gives 0.5x flour per wheat
|
||||
event.shapeless(flourItem.withCount(1), ['2x #croptopia:flourable', '#alltheores:ore_hammers']);
|
||||
// Basic tier of grist gives 2x flour per wheat
|
||||
event.recipes.create.crushing(flourItem.withCount(2), '#croptopia:flourable');
|
||||
event.recipes.create.milling(flourItem.withCount(2), '#croptopia:flourable');
|
||||
// Late basic gives 4x per wheat
|
||||
event.recipes.thermal.pulverizer('#croptopia:flourable', [flourItem.withCount(4)]);
|
||||
|
||||
// Dough production scales through the grist tiers. Yeast can always be used to further scale output
|
||||
// Vanilla production takes 2x flour to make 1x dough on the crafting table
|
||||
//event.shapeless('1x create:dough', [flourItem.withCount(2), '#forge:water_bottles']);
|
||||
//event.shapeless('8x create:dough', ['2x #forge:flour', '#forge:water_bottles', 'bakery:yeast']);
|
||||
|
||||
// Cooking pot is 2x efficient
|
||||
event.custom({
|
||||
type: 'farmersdelight:cooking',
|
||||
cookingtime: 15,
|
||||
experience: 1.0,
|
||||
ingredients: [
|
||||
{tag: 'forge:flour'},
|
||||
{tag: 'forge:water_bottles'},
|
||||
],
|
||||
result: doughItem.withCount(2)
|
||||
}).id('kubejs:farmersdelight_cooking_dough_from_flour_with_yeast_manual_only');
|
||||
event.custom({
|
||||
type: 'farmersdelight:cooking',
|
||||
cookingtime: 20,
|
||||
experience: 1.0,
|
||||
ingredients: [
|
||||
{tag: 'forge:flour'},
|
||||
{tag: 'forge:water_bottles'},
|
||||
{item: 'bakery:yeast'},
|
||||
],
|
||||
result: doughItem.withCount(8).toJson()
|
||||
}).id('kubejs:farmersdelight_cooking_dough_from_flour_manual_only');
|
||||
|
||||
// A create mixer is 4x efficient
|
||||
event.custom({
|
||||
type: 'create:mixing',
|
||||
ingredients: ['#forge:flour', {fluid: 'minecraft:water', amount: 50}],
|
||||
results: [doughItem.withCount(4).toJson()]
|
||||
});
|
||||
event.custom({
|
||||
type: 'create:mixing',
|
||||
ingredients: ['#forge:flour', 'bakery:yeast', {fluid: 'minecraft:water', amount: 50}],
|
||||
results: [doughItem.withCount(8).toJson()]
|
||||
});
|
||||
|
||||
// The thermal bottler (basic build grist) is 4x efficient
|
||||
event.recipes.thermal.bottler(doughItem.withCount(8), [Fluid.of("minecraft:water", 50), '#forge:flour']);
|
||||
|
||||
/*
|
||||
Agricultural grist
|
||||
none -> basic: plant some wheat, make dough, cook with veggies and meat -> unlock early mob farming, botany pots, kitchen parts
|
||||
@ -33,7 +91,7 @@ ServerEvents.recipes(event => {
|
||||
{tag: 'forge:dough'},
|
||||
{item: 'minecraft:gunpowder'}
|
||||
],
|
||||
result: {item: 'kubejs:grist_agricultural_basic', count: 16}
|
||||
result: {item: 'kubejs:grist_agricultural_basic_block', count: 1}
|
||||
});
|
||||
event.custom({
|
||||
type: 'farmersdelight:cooking',
|
||||
@ -45,7 +103,7 @@ ServerEvents.recipes(event => {
|
||||
{tag: 'forge:dough'},
|
||||
{item: 'minecraft:gunpowder'}
|
||||
],
|
||||
result: {item: 'kubejs:grist_agricultural_basic', count: 2}
|
||||
result: {item: 'kubejs:grist_agricultural_basic_block', count: 1}
|
||||
});
|
||||
|
||||
/*
|
||||
@ -62,10 +120,10 @@ ServerEvents.recipes(event => {
|
||||
ingredients: [
|
||||
{item: 'kubejs:grist_primordeal_improved_block'},
|
||||
{tag: 'kubejs:grist/agricultural/improved'},
|
||||
{item: 'kubejs:grist_primordeal_improved_block'},
|
||||
{tag: 'kubejs:grist/agricultural/improved'},
|
||||
{tag: 'forge:tomato_sauces'},
|
||||
{item: 'minecraft:rotten_flesh'},
|
||||
],
|
||||
result: {item: 'kubejs:grist_agricultural_improved', count: 4}
|
||||
result: {item: 'kubejs:grist_agricultural_improved_block'}
|
||||
});
|
||||
event.custom({
|
||||
type: 'farmersdelight:cooking',
|
||||
@ -79,7 +137,7 @@ ServerEvents.recipes(event => {
|
||||
{item: 'kubejs:grist_chutney'},
|
||||
{item: 'kubejs:grist_chutney'},
|
||||
],
|
||||
result: {item: 'kubejs:grist_agricultural_improved'}
|
||||
result: {item: 'kubejs:grist_agricultural_improved_block', count: 3}
|
||||
});
|
||||
event.shaped('kubejs:grist_treats', [
|
||||
'AAA',
|
||||
|
@ -21,29 +21,22 @@ ServerEvents.recipes(event => {
|
||||
Instead of an ore hammer, you can use a heated mixer with create
|
||||
*/
|
||||
event.recipes.thermal.smelter(
|
||||
'2x kubejs:grist_build_basic',
|
||||
['#kubejs:grist/build/basic', 'kubejs:grist_primordeal_basic_block']
|
||||
'kubejs:grist_build_basic_block',
|
||||
['#kubejs:grist/build/basic', 'kubejs:grist_primordeal_basic_block', 'minecrtaft:cobblestone']
|
||||
);
|
||||
event.custom({
|
||||
type: 'create:mixing',
|
||||
ingredients: [
|
||||
'#kubejs:grist/build/basic',
|
||||
'minecraft:cobblestone',
|
||||
'kubejs:grist_primordeal_basic_block',
|
||||
],
|
||||
heatRequirement: "heated",
|
||||
results: [
|
||||
'2x kubejs:grist_build_basic'
|
||||
'kubejs:grist_build_basic_block'
|
||||
]
|
||||
});
|
||||
event.smelting('16x kubejs:grist_build_basic', 'kubejs:refined_grist_aggregate');
|
||||
event.recipes.shapeless(
|
||||
'kubejs:coarse_grist_aggregate', [
|
||||
'3x #forge:sand',
|
||||
'minecraft:clay_ball',
|
||||
'3x #forge:gravel',
|
||||
'#alltheores:ore_hammers',
|
||||
'kubejs:grist_primordeal_basic_block'
|
||||
]).id('kubejs:coarse_grist_aggregate_manual_only');
|
||||
event.custom({
|
||||
type: 'create:mixing',
|
||||
ingredients: [
|
||||
@ -57,13 +50,6 @@ ServerEvents.recipes(event => {
|
||||
'kubejs:coarse_grist_aggregate'
|
||||
]
|
||||
});
|
||||
event.recipes.shapeless(
|
||||
'kubejs:reduced_grist_aggregate', [
|
||||
'#alltheores:ore_hammers',
|
||||
'minecraft:granite',
|
||||
'kubejs:grist_primordeal_basic',
|
||||
'6x kubejs:coarse_grist_aggregate'
|
||||
]).id('kubejs:reduced_grist_aggregate_manual_only');
|
||||
event.custom({
|
||||
type: 'create:mixing',
|
||||
ingredients: [
|
||||
@ -76,12 +62,6 @@ ServerEvents.recipes(event => {
|
||||
'kubejs:reduced_grist_aggregate'
|
||||
]
|
||||
});
|
||||
event.recipes.shapeless(
|
||||
'2x kubejs:refined_grist_aggregate', [
|
||||
'#alltheores:ore_hammers',
|
||||
'kubejs:grist_primordeal_basic',
|
||||
'5x kubejs:reduced_grist_aggregate'
|
||||
]).id('kubejs:refined_grist_aggregate_manual_only');
|
||||
event.custom(
|
||||
{
|
||||
type: 'create:mixing',
|
||||
@ -103,15 +83,32 @@ ServerEvents.recipes(event => {
|
||||
reinforced grist nuggets come from grist blend in a centrifugal separator
|
||||
grist blend comes from basic + improved primordeal block + sulfur in induction smelter
|
||||
*/
|
||||
event.recipes.thermal.crystallizer(
|
||||
'4x kubejs:grist_build_improved',
|
||||
['4x minecraft:clay', '2x #kubejs:grist/build/improved', Fluid.of('kubejs:grist_primordeal_improved_fluid', 4500)]
|
||||
);
|
||||
event.recipes.thermal.crystallizer(
|
||||
'kubejs:grist_build_improved',
|
||||
['32x kubejs:reinforced_grist_ingot', Fluid.of('kubejs:grist_primordeal_improved_fluid', 4000)]
|
||||
|
||||
// Improved grist starts by smelting together build grist, primordeal improved grist, and sulfur to create reinforced grist blend
|
||||
event.recipes.thermal.smelter(
|
||||
'kubejs:reinforced_grist_blend',
|
||||
['32x #kubejs:grist/build/basic', '8x kubejs:grist_primordeal_improved_block', '2x #forge:dusts/sulfur']
|
||||
);
|
||||
|
||||
// The grist blend is then centrifuged to extract nuggets
|
||||
/*event.recipes.thermal.centrifuge([
|
||||
'kubejs:reinforced_grist_nugget',
|
||||
Fluid.of('kubejs:grist_build_basic_fluid', 125)
|
||||
], 'kubejs:reinforced_grist_blend');*/
|
||||
|
||||
event.custom({
|
||||
type: 'thermal:centrifuge',
|
||||
ingredients: [
|
||||
{ item: 'kubejs:reinforced_grist_blend', count: 3 }
|
||||
],
|
||||
results: [
|
||||
{ fluid: 'kubejs:grist_build_basic_fluid', amount: 225 },
|
||||
{ item: 'kubejs:grist_essence', chance: 0.2 },
|
||||
{ item: 'kubejs:reinforced_grist_nugget' },
|
||||
]
|
||||
});
|
||||
|
||||
// 9 nuggets combine only in a press to create a reinforced grist ingot
|
||||
event.custom({
|
||||
type: "thermal:press",
|
||||
ingredients: [
|
||||
@ -121,18 +118,25 @@ ServerEvents.recipes(event => {
|
||||
result: [{item: 'kubejs:reinforced_grist_ingot'}]
|
||||
});
|
||||
|
||||
event.custom({
|
||||
// Finally, you crystallize a pile of ingots with improved primordeal fluid.
|
||||
event.recipes.thermal.crystallizer(
|
||||
'2x kubejs:grist_build_improved_block',
|
||||
['32x kubejs:reinforced_grist_ingot', Fluid.of('kubejs:grist_primordeal_improved_fluid', 8000)]
|
||||
);
|
||||
|
||||
// After that, you simply re-crystalize it along with a little bit of clay
|
||||
event.recipes.thermal.crystallizer(
|
||||
'kubejs:grist_build_improved_block',
|
||||
['4x minecraft:clay', '#kubejs:grist/build/improved', Fluid.of('kubejs:grist_primordeal_improved_fluid', 4500)]
|
||||
);
|
||||
|
||||
/*event.custom({
|
||||
type: "thermal:centrifuge",
|
||||
ingredients: [
|
||||
{ item: 'kubejs:reinforced_grist_blend' },
|
||||
],
|
||||
result: [{item: 'kubejs:reinforced_grist_nugget', chance: 0.3}]
|
||||
});
|
||||
|
||||
event.recipes.thermal.smelter(
|
||||
'kubejs:reinforced_grist_blend',
|
||||
['32x #kubejs:grist/build/basic', '3x kubejs:grist_primordeal_improved_block', '2x #forge:dusts/sulfur']
|
||||
);
|
||||
result: [{item: 'kubejs:build_grist_basic'}, {item: 'kubejs:reinforced_grist_nugget', chance: 0.3}]
|
||||
});*/
|
||||
|
||||
/*
|
||||
improved -> radiant: process ores with power generation, new machines, and tool enchants into smelting up grist alloys -> near creative mode world shaping tools, crafting any block
|
||||
|
@ -26,7 +26,7 @@ ServerEvents.recipes(event => {
|
||||
your first energetic comes from smelting grist paste
|
||||
grist paste comes from redstone, obsidian, and primordeal grist
|
||||
*/
|
||||
event.smelting('16x kubejs:grist_energetic_basic', 'kubejs:grist_paste');
|
||||
event.smelting('2x kubejs:grist_energetic_basic_block', 'kubejs:grist_paste');
|
||||
event.shaped('2x kubejs:grist_paste', [
|
||||
'ADA',
|
||||
'BCB',
|
||||
@ -39,7 +39,7 @@ ServerEvents.recipes(event => {
|
||||
});
|
||||
event.recipes.powah.energizing(
|
||||
['kubejs:grist_primordeal_basic_block', '#kubejs:grist/energetic/basic'],
|
||||
'2x kubejs:grist_energetic_basic',
|
||||
'kubejs:grist_energetic_basic_block',
|
||||
3000
|
||||
);
|
||||
|
||||
@ -55,16 +55,14 @@ ServerEvents.recipes(event => {
|
||||
blazing crystals require blaze powder plus either infused grist capacitors or improved grist
|
||||
*/
|
||||
event.recipes.powah.energizing([
|
||||
'kubejs:grist_energetic_improved',
|
||||
'kubejs:grist_energetic_improved',
|
||||
'kubejs:grist_primordeal_improved_block',
|
||||
'kubejs:grist_primordeal_improved_block',
|
||||
], '4x kubejs:grist_energetic_improved',
|
||||
], 'kubejs:grist_energetic_improved_block',
|
||||
20000
|
||||
);
|
||||
event.recipes.powah.energizing([
|
||||
'#forge:glass',
|
||||
'thermal:phytogrow',
|
||||
'thermal:phytogro',
|
||||
'#forge:dusts/redstone',
|
||||
'thermal:rf_coil',
|
||||
global.nuggetItem('steel'),
|
||||
@ -84,7 +82,7 @@ ServerEvents.recipes(event => {
|
||||
'kubejs:activated_grist_capacitor',
|
||||
'kubejs:infused_grist_capacitor',
|
||||
3000,
|
||||
[]
|
||||
['kubejs:intelligent_catalyst', 'kubejs:intelligent_catalyst', 'kubejs:intelligent_catalyst']
|
||||
);
|
||||
event.recipes.thermal.bottler(
|
||||
Item.of('kubejs:unstable_grist_capacitor'),
|
||||
@ -97,7 +95,7 @@ ServerEvents.recipes(event => {
|
||||
'kubejs:unstable_grist_capacitor',
|
||||
'kubejs:unstable_grist_capacitor',
|
||||
'kubejs:unstable_grist_capacitor',
|
||||
], 'kubejs:grist_energetic_improved',
|
||||
], '3x kubejs:grist_energetic_improved_block',
|
||||
50000
|
||||
);
|
||||
|
||||
|
@ -32,7 +32,7 @@ ServerEvents.recipes(event => {
|
||||
quanta: 25,
|
||||
arcana: -1
|
||||
},
|
||||
result: Item.of('kubejs:grist_intelligent_basic', 16).toJson()
|
||||
result: Item.of('kubejs:grist_intelligent_basic_block', 3).toJson()
|
||||
});
|
||||
|
||||
event.shaped('kubejs:sacred_flesh', [
|
||||
@ -69,13 +69,22 @@ ServerEvents.recipes(event => {
|
||||
'#alltheores:ore_hammers'
|
||||
]);
|
||||
|
||||
// After you have finished your first grist, you simply duplicate it with a bunch of Source
|
||||
event.recipes.ars_nouveau.imbuement(
|
||||
'kubejs:grist_primordeal_basic_block',
|
||||
'kubejs:grist_intelligent_basic',
|
||||
'kubejs:grist_intelligent_basic_block',
|
||||
900,
|
||||
['kubejs:grist_intelligent_basic']
|
||||
);
|
||||
|
||||
// Adding a catalyst makes it run more efficiently
|
||||
event.recipes.ars_nouveau.imbuement(
|
||||
'kubejs:grist_primordeal_basic_block',
|
||||
'2x kubejs:grist_intelligent_basic_block',
|
||||
700,
|
||||
['kubejs:grist_intelligent_basic', 'kubejs:intelligent_catalyst']
|
||||
);
|
||||
|
||||
/*event.custom({
|
||||
type: "thermal:press",
|
||||
ingredients: [
|
||||
@ -102,13 +111,13 @@ ServerEvents.recipes(event => {
|
||||
catalysts come from source gems crystalized with basic intelligent fluid and sacred flesh
|
||||
*/
|
||||
event.recipes.summoningrituals.altar("kubejs:grist_primordeal_improved")
|
||||
.itemOutput(Item.of('kubejs:grist_intelligent_improved', 4))
|
||||
.input(Item.of('kubejs:grist_primordeal_improved_block', 2))
|
||||
.input(Item.of('kubejs:grist_intelligent_improved', 2))
|
||||
.itemOutput(Item.of('kubejs:grist_intelligent_improved_block', 3))
|
||||
.input(Item.of('kubejs:grist_primordeal_improved_block', 1))
|
||||
.input(Item.of('kubejs:grist_intelligent_improved', 1))
|
||||
.blockBelow('ars_nouveau:arcane_core');
|
||||
|
||||
event.recipes.summoningrituals.altar("kubejs:sapient_focus")
|
||||
.itemOutput('kubejs:grist_intelligent_improved')
|
||||
.itemOutput(Item.of('kubejs:grist_intelligent_improved_block'))
|
||||
.input('ars_elemental:lesser_fire_focus')
|
||||
.input('ars_elemental:lesser_water_focus')
|
||||
.input('ars_elemental:lesser_air_focus')
|
||||
|
@ -26,7 +26,7 @@ ServerEvents.recipes(event => {
|
||||
], {
|
||||
'A': '#forge:cobblestone',
|
||||
'B': 'kubejs:grist_essence'
|
||||
}).id('kubejs:grist_primordeal_basic_block_manual_only');
|
||||
}).id('kubejs:grist_primordeal_basic_block_essence_manual_only');
|
||||
event.custom({
|
||||
type: 'create:mixing',
|
||||
ingredients: [
|
||||
@ -43,15 +43,18 @@ ServerEvents.recipes(event => {
|
||||
let id = grist.id();
|
||||
let fluidID = grist.fluid().id();
|
||||
let blockID = grist.block().id();
|
||||
event.recipes.thermal.crucible(Fluid.of(fluidID, 1000), blockID);
|
||||
event.recipes.thermal.crucible(Fluid.of(fluidID, 250), id);
|
||||
event.recipes.thermal.chiller(id, Fluid.of(fluidID, 250));
|
||||
event.recipes.thermal.chiller(blockID, Fluid.of(fluidID, 1000));
|
||||
event.recipes.createMixing(Fluid.of(fluidID, 250), id).heated();
|
||||
event.recipes.createMixing(Fluid.of(fluidID, 1000), blockID).heated();
|
||||
|
||||
// convert between block and normal item
|
||||
event.shapeless(blockID, [`9x ${id}`]);
|
||||
event.shapeless(`9x ${id}`, [blockID]);
|
||||
|
||||
event.custom({
|
||||
/*event.custom({
|
||||
type: "industrialforegoing:dissolution_chamber",
|
||||
input: [],
|
||||
inputFluid: `{Amount:250,FluidName:\"${fluidID}\"}`,
|
||||
@ -73,11 +76,12 @@ ServerEvents.recipes(event => {
|
||||
},
|
||||
outputFluid: `{Amount:250,FluidName:\"${fluidID}\"}`,
|
||||
processingTime: 50
|
||||
});
|
||||
});*/
|
||||
});
|
||||
|
||||
// Progression along primordeals and universals
|
||||
let _ = [{from: 'basic', to: 'improved'}, {from: 'improved', to: 'radiant'}].forEach(upgrade => {
|
||||
// TODO: Implement sideways conversion from universal grist to each of the elementals
|
||||
// Primordeal progression requires one from each element of the lower tier
|
||||
event.shaped(`kubejs:grist_primordeal_${upgrade.to}`, [
|
||||
'A B',
|
||||
|
@ -5,6 +5,12 @@ ServerEvents.tags('item', event => {
|
||||
event.add(tagName, grist.id());
|
||||
});
|
||||
});
|
||||
|
||||
global.Grist.forEachBlock(grist => {
|
||||
grist.tags().forEach(tagName => {
|
||||
event.add(tagName, grist.id());
|
||||
});
|
||||
});
|
||||
/*global.GRIST_ELEMENTS.forEach(element => {
|
||||
global.GRIST_TIERS.forEach(tier => {
|
||||
event.add(`kubejs:grist/${element}/${tier}`, `kubejs:grist_${element}_${tier}`)
|
||||
|
@ -1,36 +1,64 @@
|
||||
// priority: 0
|
||||
function Metal(name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
global.metalForm = (metal, tag, form, qty) => {
|
||||
if (qty == undefined) {
|
||||
qty = 1;
|
||||
}
|
||||
let itemType = AlmostUnified.getPreferredItemForTag(`forge:${tag}/${metal}`);
|
||||
Metal.of = function(name) {
|
||||
return new Metal(name);
|
||||
}
|
||||
|
||||
Metal.prototype.formOf = function(form) {
|
||||
let itemType = AlmostUnified.getPreferredItemForTag(`forge:${form}/${this.name}`);
|
||||
if (itemType.id == 'minecraft:air') {
|
||||
console.log(`metals: ${metal} ${form} has unknown tag forge:${tag}/${metal}?`)
|
||||
let ret = Item.of(`alltheores:${metal}_${form}`);
|
||||
if (ret.id == "minecraft:air") {
|
||||
return Item.of(`thermal:${metal}_${form}`);
|
||||
}
|
||||
return ret;
|
||||
console.warn(`metals: #forge:${form}/${this.name} is not supported by AlmostUnified! Trying a vanilla hack...`);
|
||||
itemType = Ingredient.of(`#forge:${form}/${this.name}`).getFirst();
|
||||
}
|
||||
if (itemType.id == 'minecraft:air') {
|
||||
console.warn(`metals: No metal items found in #forge:${form}/${this.name}`)
|
||||
} else {
|
||||
console.log(`metals: Found ${itemType.id} for #forge:${form}/${this.name}`);
|
||||
}
|
||||
console.log(`metals: forge:${tag}/${metal} found`);
|
||||
return itemType;
|
||||
}
|
||||
|
||||
global.dustItem = (material, qty) => {
|
||||
return global.metalForm(material, 'dusts', 'dust', qty);
|
||||
// Format is [property name, tag name]
|
||||
const forms = [
|
||||
['ingot', 'ingots'],
|
||||
['gear', 'gears'],
|
||||
['rod', 'rods'],
|
||||
['nugget', 'nuggets'],
|
||||
['plate', 'plates'],
|
||||
['dust', 'dusts']
|
||||
];
|
||||
|
||||
for (const [prop_name, form_tag] of forms) {
|
||||
Metal.prototype[prop_name] = function() {
|
||||
return this.formOf(form_tag);
|
||||
}
|
||||
}
|
||||
|
||||
global.ingotItem = (material, qty) => {
|
||||
return global.metalForm(material, 'ingots', 'ingot', qty);
|
||||
global.metalForm = (metal, tag) => {
|
||||
return (new Metal(metal)).formOf(tag);
|
||||
}
|
||||
|
||||
global.gearItem = (material, qty) => {
|
||||
return global.metalForm(material, 'gears', 'gear', qty);
|
||||
global.dustItem = (material) => {
|
||||
return global.metalForm(material, 'dusts');
|
||||
}
|
||||
|
||||
global.nuggetItem = (material, qty) => {
|
||||
return global.metalForm(material, 'nuggets', 'nugget', qty);
|
||||
global.ingotItem = (material) => {
|
||||
return global.metalForm(material, 'ingots');
|
||||
}
|
||||
|
||||
global.plateItem = (material) => {
|
||||
return global.metalForm(material, 'plates');
|
||||
}
|
||||
|
||||
global.gearItem = (material) => {
|
||||
return global.metalForm(material, 'gears');
|
||||
}
|
||||
|
||||
global.nuggetItem = (material) => {
|
||||
return global.metalForm(material, 'nuggets');
|
||||
}
|
||||
|
||||
global.replaceInputs = (evt, filter, replaceMap) => {
|
||||
|
@ -137,4 +137,95 @@ ServerEvents.recipes(event => {
|
||||
'minecraft:netherite_ingot',
|
||||
'#kubejs:grist/intelligent/radiant'
|
||||
);
|
||||
|
||||
// Nerf the storage components a little bit
|
||||
event.replaceInput(
|
||||
{output: 'ae2:cell_component_1k'},
|
||||
'minecraft:redstone',
|
||||
'#kubejs:grist/intelligent/basic'
|
||||
);
|
||||
event.replaceInput(
|
||||
{output: 'ae2:cell_component_4k'},
|
||||
'minecraft:redstone',
|
||||
'#kubejs:grist/intelligent/basic'
|
||||
);
|
||||
event.replaceInput(
|
||||
{output: 'ae2:cell_component_16k'},
|
||||
'minecraft:glowstone',
|
||||
'#kubejs:grist/intelligent/basic/block'
|
||||
);
|
||||
event.replaceInput(
|
||||
{output: 'ae2:cell_component_64k'},
|
||||
'minecraft:glowstone',
|
||||
'#kubejs:grist/intelligent/improved'
|
||||
);
|
||||
event.replaceInput(
|
||||
{output: 'ae2:cell_component_256k'},
|
||||
'ae2:quartz_glass',
|
||||
'#kubejs:grist/intelligent/improved/block'
|
||||
);
|
||||
|
||||
// Spatial IO is gated behind radiant build grist
|
||||
event.replaceInput(
|
||||
{output: 'ae2:spatial_cell_component_2'},
|
||||
'minecraft:glowstone_dust',
|
||||
'#kubejs:grist/build/radiant'
|
||||
);
|
||||
event.replaceInput(
|
||||
{output: 'ae2:spatial_cell_component_16'},
|
||||
'minecraft:glowstone_dust',
|
||||
'#kubejs:grist/build/radiant'
|
||||
);
|
||||
event.replaceInput(
|
||||
{output: 'ae2:spatial_cell_component_128'},
|
||||
'minecraft:glowstone_dust',
|
||||
'#kubejs:grist/build/radiant'
|
||||
);
|
||||
|
||||
// Item cells should require build grist
|
||||
event.replaceInput(
|
||||
{output: 'ae2:item_cell_housing'},
|
||||
'minecraft:redstone',
|
||||
'#kubejs:grist/build/basic'
|
||||
);
|
||||
event.replaceInput(
|
||||
{output: 'ae2:item_cell_housing'},
|
||||
'minecraft:iron_ingot',
|
||||
'#forge:plates/invar'
|
||||
);
|
||||
|
||||
event.replaceInput(
|
||||
{output: 'ae2:basic_card'},
|
||||
'minecraft:iron_ingot',
|
||||
'#forge:plates/silver'
|
||||
);
|
||||
|
||||
event.replaceInput(
|
||||
{output: 'ae2:basic_card'},
|
||||
'minecraft:gold_ingot',
|
||||
'#forge:plates/gold'
|
||||
);
|
||||
|
||||
event.replaceInput(
|
||||
{output: 'ae2:basic_card'},
|
||||
'minecraft:redstone',
|
||||
'#kubejs:grist/intelligent/basic'
|
||||
);
|
||||
|
||||
// Advanced card is an upgrade from the basic card
|
||||
event.replaceInput(
|
||||
{output: 'ae2:advanced_card'},
|
||||
'minecraft:redstone',
|
||||
'ae2:basic_card'
|
||||
);
|
||||
event.replaceInput(
|
||||
{output: 'ae2:advanced_card'},
|
||||
'minecraft:iron_ingot',
|
||||
'#forge:plates/invar'
|
||||
);
|
||||
event.replaceInput(
|
||||
{output: 'ae2:advanced_card'},
|
||||
'minecraft:diamond',
|
||||
'#kubejs:grist/intelligent/basic/block'
|
||||
);
|
||||
});
|
26
kubejs/server_scripts/mods/apotheosis.js
Normal file
26
kubejs/server_scripts/mods/apotheosis.js
Normal file
@ -0,0 +1,26 @@
|
||||
ServerEvents.recipes(event => {
|
||||
event.replaceInput({output: 'apotheosis:ender_lead'},
|
||||
'minecraft:ender_pearl',
|
||||
'#kubejs:grist/intelligent/basic'
|
||||
);
|
||||
|
||||
event.replaceInput({output: 'apotheosis:ender_lead'},
|
||||
'minecraft:gold_ingot',
|
||||
'#kubejs:grist/agricultural/basic'
|
||||
);
|
||||
|
||||
event.replaceInput({output: 'apotheosis:salvaging_table'},
|
||||
'minecraft:copper_ingot',
|
||||
'#forge:ingots/steel'
|
||||
);
|
||||
|
||||
event.replaceInput({output: 'apotheosis:salvaging_table'},
|
||||
'minecraft:iron_pickaxe',
|
||||
'#kubejs:grist/intelligent/basic'
|
||||
);
|
||||
|
||||
event.replaceInput({output: 'apotheosis:salvaging_table'},
|
||||
'minecraft:iron_axe',
|
||||
'#kubejs:grist/intelligent/basic'
|
||||
);
|
||||
});
|
@ -2,4 +2,8 @@ ServerEvents.recipes(event => {
|
||||
event.replaceInput({output: 'bakery:yeast'}, 'minecraft:water_bucket', '#forge:water_bottles');
|
||||
event.replaceInput({output: 'bakery:yeast'}, 'minecraft:brown_mushroom', '#forge:mushrooms');
|
||||
event.replaceInput({output: 'bakery:yeast'}, 'minecraft:sugar', '#caupona:sugar');
|
||||
|
||||
event.replaceInput({output: 'bakery:cake_dough'}, '#c:wheat', '#forge:dough');
|
||||
event.replaceInput({output: 'bakery:sweet_dough'}, '#c:wheat', '#forge:dough');
|
||||
event.replaceInput({output: 'bakery:chocolate_truffle'}, 'minecraft:wheat', '#forge:dough');
|
||||
});
|
3
kubejs/server_scripts/mods/brewery.js
Normal file
3
kubejs/server_scripts/mods/brewery.js
Normal file
@ -0,0 +1,3 @@
|
||||
ServerEvents.recipes(event => {
|
||||
event.replaceInput({output: 'brewery:pretzel'}, '#c:wheat', '#forge:dough');
|
||||
});
|
@ -1,17 +1,5 @@
|
||||
|
||||
ServerEvents.recipes(event => {
|
||||
// Gate create behind finding tin and basic ore crushing hammers
|
||||
event.remove({output: 'create:andesite_alloy'});
|
||||
event.shapeless('2x create:andesite_alloy', [
|
||||
'2x minecraft:andesite',
|
||||
global.dustItem('tin', 2),
|
||||
]);
|
||||
|
||||
event.recipes.thermal.smelter(
|
||||
'6x create:andesite_alloy',
|
||||
['2x minecraft:andesite', '#forge:dusts/tin']
|
||||
);
|
||||
|
||||
event.shapeless('2x create:cogwheel', [
|
||||
'thermal:tin_gear',
|
||||
'#minecraft:planks',
|
||||
@ -40,6 +28,29 @@ ServerEvents.recipes(event => {
|
||||
'#forge:plates/invar'
|
||||
);
|
||||
|
||||
event.remove({output: 'create:windmill_bearing'});
|
||||
event.shaped('create:windmill_bearing', [
|
||||
' A ',
|
||||
'DBD',
|
||||
'DCD'
|
||||
], {
|
||||
'A': '#minecraft:wooden_slabs',
|
||||
'B': '#forge:stone',
|
||||
'C': 'create:shaft',
|
||||
'D': '#kubejs:grist/energetic/basic'
|
||||
});
|
||||
|
||||
// Gate the backpack behind mid-game energetic grist
|
||||
event.replaceInput({output: 'create:copper_backtank'},
|
||||
'minecraft:copper_block',
|
||||
'kubejs:grist_energetic_basic_block'
|
||||
)
|
||||
|
||||
event.replaceInput({output: 'create:schematicannon'},
|
||||
'minecraft:iron_block',
|
||||
'kubejs:grist_build_basic_block'
|
||||
)
|
||||
|
||||
// Allow certus quartz to be used for rose quartz
|
||||
event.replaceInput({output: 'create:rose_quartz'},
|
||||
'minecraft:quartz',
|
||||
@ -50,7 +61,8 @@ ServerEvents.recipes(event => {
|
||||
'8x minecraft:redstone',
|
||||
]);
|
||||
|
||||
// Crushing wheels can either come from finding diamonds (expensive) or build grist (cheap, eventually)
|
||||
// Crushing wheels can come from build grist
|
||||
event.remove({output: 'create:crushing_wheel'});
|
||||
event.shaped('create:crushing_wheel', [
|
||||
'CBC',
|
||||
'BAB',
|
||||
@ -61,20 +73,12 @@ ServerEvents.recipes(event => {
|
||||
'C': 'create:andesite_alloy',
|
||||
});
|
||||
|
||||
event.shaped('create:crushing_wheel', [
|
||||
'CBC',
|
||||
'BAB',
|
||||
'CBC'
|
||||
], {
|
||||
'A': 'minecraft:diamond',
|
||||
'B': 'thermal:tin_gear',
|
||||
'C': 'create:andesite_alloy',
|
||||
});
|
||||
|
||||
// Melt down XP nuggets and blocks into raw XP
|
||||
// 1 nugget == 60mb cognitium
|
||||
event.recipes.createMixing(Fluid.of('experienceobelisk:cognitium', 60), 'create:experience_nugget').heated();
|
||||
event.recipes.createMixing(Fluid.of('experienceobelisk:cognitium', 60 * 9), 'create:experience_block').heated();
|
||||
event.recipes.thermal.centrifuge([Fluid.of('experienceobelisk:cognitum', 60)], 'create:experience_nugget');
|
||||
event.recipes.thermal.centrifuge([Fluid.of('experienceobelisk:cognitum', 60 * 9)], 'create:experience_block');
|
||||
|
||||
// Precision mechanisms should require intelligent grist
|
||||
event.recipes.createSequencedAssembly([
|
||||
@ -84,4 +88,38 @@ ServerEvents.recipes(event => {
|
||||
event.recipes.createDeploying('create:incomplete_precision_mechanism', ['create:incomplete_precision_mechanism', 'create:cogwheel']),
|
||||
event.recipes.createDeploying('create:incomplete_precision_mechanism', ['create:incomplete_precision_mechanism', '#forge:gears/copper'])
|
||||
]).transitionalItem('create:incomplete_precision_mechanism').loops(3);
|
||||
|
||||
// Factory automation should require some intelligent grist
|
||||
event.replaceInput({output: 'create:stock_ticker'},
|
||||
'minecraft:gold_ingot',
|
||||
'#kubejs:grist/intelligent/basic'
|
||||
);
|
||||
|
||||
event.remove({output: 'create:stock_link'});
|
||||
event.shaped('create:stock_link', [
|
||||
' A ',
|
||||
' B ',
|
||||
' C '
|
||||
], {
|
||||
'A': 'create:transmitter',
|
||||
'B': 'create:item_vault',
|
||||
'C': '#kubejs:grist/intelligent/basic',
|
||||
});
|
||||
|
||||
// Gate the symmetry wand behind build grist
|
||||
event.replaceInput({output: 'create:wand_of_symmetry'},
|
||||
'#forge:ender_pearls',
|
||||
'#kubejs:grist/build/improved'
|
||||
);
|
||||
|
||||
['red', 'orange', 'yellow', 'green', 'blue', 'purple', 'magenta', 'white', 'black', 'light_gray', 'gray', 'brown', 'cyan', 'pink', 'lime'].forEach(color => {
|
||||
// Create colored blocks from the mixer.
|
||||
// TODO: This is required due to disabling all automatic crafting recipes, maybe these can just be re-enabled somehow?
|
||||
event.recipes.create.mixing(`8x minecraft:${color}_concrete_powder`, [`minecraft:${color}_dye`, '4x #forge:sand', '4x minecraft:gravel']);
|
||||
event.recipes.create.mixing(`8x minecraft:${color}_concrete`, [`minecraft:${color}_dye`, '4x #forge:sand', '4x minecraft:gravel', Fluid.of('minecraft:water', 250 * 8)]);
|
||||
event.recipes.create.mixing(`8x minecraft:${color}_terracotta`, [`minecraft:${color}_dye`, '8x minecraft:terracotta']);
|
||||
event.recipes.create.mixing(`minecraft:${color}_concrete`, [`minecraft:${color}_concrete_powder`, Fluid.of('minecraft:water', 250)]);
|
||||
event.recipes.create.mixing(`minecraft:${color}_wool`, [`minecraft:${color}_dye`, '#minecraft:wool']);
|
||||
event.recipes.create.mixing(`minecraft:${color}_stained_glass`, [`minecraft:${color}_dye`, '#forge:glass/colorless']).heated();
|
||||
});
|
||||
});
|
33
kubejs/server_scripts/mods/create_jetpack.js
Normal file
33
kubejs/server_scripts/mods/create_jetpack.js
Normal file
@ -0,0 +1,33 @@
|
||||
ServerEvents.recipes(event => {
|
||||
event.remove({output: 'create_jetpack:jetpack'})
|
||||
event.recipes.create.mechanical_crafting('create_jetpack:jetpack', [
|
||||
' ABA ',
|
||||
'ACDCA',
|
||||
'AEFEA',
|
||||
' EGE '
|
||||
], {
|
||||
'A': '#forge:plates/constantan',
|
||||
'B': 'create:shaft',
|
||||
'C': '#kubejs:grist/intelligent/improved',
|
||||
'D': 'create:copper_backtank',
|
||||
'E': 'create:chute',
|
||||
'F': 'minecraft:elytra',
|
||||
'G': '#kubejs:grist/build/improved'
|
||||
});
|
||||
|
||||
event.remove({output: 'create_jetpack:netherite_jetpack'})
|
||||
event.recipes.create.mechanical_crafting('create_jetpack:netherite_jetpack', [
|
||||
' ABA ',
|
||||
'ACDCA',
|
||||
'AEFEA',
|
||||
' EGE '
|
||||
], {
|
||||
'A': '#forge:plates/constantan',
|
||||
'B': 'create:shaft',
|
||||
'C': '#kubejs:grist/intelligent/improved',
|
||||
'D': 'create:netherite_backtank',
|
||||
'E': 'create:chute',
|
||||
'F': 'minecraft:elytra',
|
||||
'G': '#kubejs:grist/build/improved'
|
||||
});
|
||||
});
|
128
kubejs/server_scripts/mods/create_new_age.js
Normal file
128
kubejs/server_scripts/mods/create_new_age.js
Normal file
@ -0,0 +1,128 @@
|
||||
ServerEvents.recipes(event => {
|
||||
// Most of the mod is gated behind basic energetic and build grist
|
||||
event.replaceInput({output: 'create_new_age:reinforced_motor'},
|
||||
'minecraft:diamond',
|
||||
'#kubejs:grist/build/basic'
|
||||
);
|
||||
|
||||
event.replaceInput({mod: 'create_new_age'},
|
||||
'minecraft:redstone_block',
|
||||
'#kubejs:grist/energetic/basic'
|
||||
);
|
||||
|
||||
|
||||
event.replaceInput({mod: 'create_new_age'},
|
||||
'minecraft:netherite_scrap',
|
||||
'#kubejs:grist/energetic/improved'
|
||||
);
|
||||
|
||||
event.replaceInput({mod: 'create_new_age'},
|
||||
'#forge:nuggets/copper',
|
||||
'#kubejs:grist/energetic/basic'
|
||||
);
|
||||
|
||||
// Reactor requires energetic
|
||||
event.replaceInput({output: 'create_new_age:reactor_casing'},
|
||||
'minecraft:bricks',
|
||||
'#kubejs:grist/energetic/improved'
|
||||
);
|
||||
|
||||
// Power generation requires basic energetic and build
|
||||
event.replaceInput({output: 'create_new_age:carbon_brushes'},
|
||||
'minecraft:coal',
|
||||
'#kubejs:grist/build/basic'
|
||||
);
|
||||
|
||||
event.replaceInput({output: 'create_new_age:generator_coil'},
|
||||
'minecraft:copper_ingot',
|
||||
'#kubejs:grist/energetic/basic'
|
||||
);
|
||||
|
||||
// Rewrite the motors to use grist
|
||||
event.remove({output: 'create_new_age:basic_motor'});
|
||||
event.shaped('create_new_age:basic_motor', [
|
||||
'ABA',
|
||||
'CDE',
|
||||
'AFA'
|
||||
], {
|
||||
'A': '#forge:nuggets/iron',
|
||||
'B': '#kubejs:grist/energetic/basic',
|
||||
'C': 'create_new_age:magnetite_block',
|
||||
'D': 'create:andesite_casing',
|
||||
'E': 'create:shaft',
|
||||
'F': '#kubejs:grist/build/basic'
|
||||
});
|
||||
|
||||
event.remove({output: 'create_new_age:advanced_motor'});
|
||||
event.shaped('create_new_age:advanced_motor', [
|
||||
'ABA',
|
||||
'CDE',
|
||||
'AFA'
|
||||
], {
|
||||
'A': '#forge:plates/invar',
|
||||
'B': '#kubejs:grist/energetic/basic',
|
||||
'C': global.ingotItem('tin'),
|
||||
'D': 'create:andesite_casing',
|
||||
'E': 'create:shaft',
|
||||
'F': '#kubejs:grist/build/basic'
|
||||
});
|
||||
|
||||
|
||||
// Powah compat with the energizing recipes
|
||||
|
||||
/*event.recipes.powah.energizing(
|
||||
['#forge:plates/iron'],
|
||||
'create_new_age:overcharged_iron_sheet',
|
||||
1000
|
||||
);
|
||||
|
||||
event.recipes.powah.energizing(
|
||||
['#forge:ingots/iron'],
|
||||
'create_new_age:overcharged_iron',
|
||||
2000
|
||||
);
|
||||
|
||||
event.recipes.powah.energizing(
|
||||
['#forge:ingots/gold'],
|
||||
'create_new_age:overcharged_gold',
|
||||
2000
|
||||
);
|
||||
|
||||
event.recipes.powah.energizing(
|
||||
['#forge:plates/gold'],
|
||||
'create_new_age:overcharged_gold_sheet',
|
||||
2000
|
||||
);*/
|
||||
|
||||
// Remove the whole energizing mechanic in favor of the metals system
|
||||
event.remove({type: 'create_new_age:energising'});
|
||||
event.remove({output: 'create_new_age:overcharged_iron_sheet'});
|
||||
event.remove({output: 'create_new_age:overcharged_gold_sheet'});
|
||||
event.remove({output: 'create_new_age:energiser_t1'});
|
||||
event.remove({output: 'create_new_age:energiser_t2'});
|
||||
event.remove({output: 'create_new_age:energiser_t3'});
|
||||
event.replaceInput({},
|
||||
'create_new_age:overcharged_iron',
|
||||
global.ingotItem('tin')
|
||||
);
|
||||
|
||||
event.replaceInput({},
|
||||
'create_new_age:overcharged_iron_sheet',
|
||||
global.plateItem('tin')
|
||||
);
|
||||
|
||||
event.replaceInput({},
|
||||
'create_new_age:overcharged_gold',
|
||||
global.ingotItem('constantan')
|
||||
);
|
||||
|
||||
event.replaceInput({},
|
||||
'create_new_age:overcharged_gold_sheet',
|
||||
global.plateItem('constantan')
|
||||
);
|
||||
|
||||
event.replaceInput({},
|
||||
'create_new_age:overcharged_diamond',
|
||||
global.gearItem('platinum')
|
||||
);
|
||||
});
|
15
kubejs/server_scripts/mods/create_power_loader.js
Normal file
15
kubejs/server_scripts/mods/create_power_loader.js
Normal file
@ -0,0 +1,15 @@
|
||||
ServerEvents.recipes(event => {
|
||||
event.replaceInput({output: 'create_power_loader:empty_andesite_chunk_loader'},
|
||||
'minecraft:respawn_anchor',
|
||||
'#kubejs:grist/intelligent/improved'
|
||||
);
|
||||
|
||||
event.replaceInput({output: 'create_power_loader:empty_brass_chunk_loader'},
|
||||
'minecraft:respawn_anchor',
|
||||
'create_power_loader:empty_andesite_chunk_loader'
|
||||
);
|
||||
event.replaceInput({output: 'create_power_loader:empty_brass_chunk_loader'},
|
||||
'create:precision_mechanism',
|
||||
'#kubejs:grist/intelligent/improved'
|
||||
);
|
||||
});
|
@ -1,12 +1,4 @@
|
||||
ServerEvents.recipes(event => {
|
||||
event.recipes.thermal.pulverizer("4x croptopia:flour", ['minecraft:wheat']);
|
||||
event.custom({
|
||||
type: 'create:crushing',
|
||||
ingredients: ['minecraft:wheat'],
|
||||
results: ['3x croptopia:flour']
|
||||
});
|
||||
event.shapeless('2x croptopia:flour', ['minecraft:wheat', '#alltheores:ore_hammers']);
|
||||
|
||||
let jamFruits = ['apricot', 'blackberry', 'blueberry', 'cherry', 'elderberry', 'grape', 'peach', 'raspberry', 'straberry'];
|
||||
jamFruits.forEach(fruit => {
|
||||
event.replaceInput({output: `croptopia:${fruit}_jam`}, 'minecraft:glass_bottle', 'thermal:jar');
|
||||
@ -33,7 +25,6 @@ ServerEvents.recipes(event => {
|
||||
});
|
||||
|
||||
event.recipes.thermal.bottler('croptopia:steamed_rice', [Fluid.of("minecraft:water", 50), '#forge:grain/rice']);
|
||||
event.recipes.thermal.bottler('croptopia:dough', [Fluid.of("minecraft:water", 50), '#forge:flour']);
|
||||
|
||||
let _ = ['pizza', 'supreme_pizza', 'cheese_pizza', 'pineapple_pepperoni_pizza', 'anchovy_pizza'].forEach(pizza => {
|
||||
event.replaceInput(
|
||||
@ -43,9 +34,21 @@ ServerEvents.recipes(event => {
|
||||
);
|
||||
});
|
||||
|
||||
event.custom({
|
||||
type: 'create:mixing',
|
||||
ingredients: ['#forge:flour', {fluid: 'minecraft:water', amount: 50}],
|
||||
results: ['4x croptopia:dough']
|
||||
})
|
||||
// There is a recipe that uses the skillet, but very different ingredients
|
||||
event.remove({id: 'croptopia:cheeseburger'});
|
||||
|
||||
// Allow the apple pie to be automated in create, and use other eggs
|
||||
event.replaceInput({output: 'croptopia:apple_pie'},
|
||||
'minecraft:egg',
|
||||
'#forge:eggs'
|
||||
);
|
||||
event.recipes.create.mixing(
|
||||
'croptopia:apple_pie', [
|
||||
'minecraft:apple',
|
||||
'minecraft:sugar',
|
||||
'#forge:eggs',
|
||||
'#forge:flour',
|
||||
'#forge:dough'
|
||||
]
|
||||
).heated();
|
||||
});
|
15
kubejs/server_scripts/mods/energymeter.js
Normal file
15
kubejs/server_scripts/mods/energymeter.js
Normal file
@ -0,0 +1,15 @@
|
||||
ServerEvents.recipes(event => {
|
||||
event.replaceInput({mod: 'energymeter'},
|
||||
'minecraft:comparator',
|
||||
'#kubejs:grist/energetic/basic'
|
||||
);
|
||||
event.replaceInput({mod: 'energymeter'},
|
||||
'minecraft:redstone',
|
||||
'#kubejs:grist/intelligent/basic'
|
||||
);
|
||||
|
||||
event.replaceInput({mod: 'energymeter'},
|
||||
'minecraft:iron_ingot',
|
||||
global.ingotItem('copper')
|
||||
);
|
||||
});
|
@ -1,6 +1,7 @@
|
||||
ServerEvents.recipes(event => {
|
||||
event.shapeless('2x croptopia:dough', ['#forge:flour', '#forge:water_bottles']);
|
||||
event.remove({id: 'thermal:compat/farmersdelight/insolator_farmersdelight_rice'});
|
||||
event.remove({id: 'botanypots:farmersdelight/crop/rice'});
|
||||
event.remove({id: 'farmersdelight:cooking/steamed_rice'});
|
||||
|
||||
event.replaceInput({output: 'farmersdeligh:pie_crust'}, 'minecraft:wheat', '#forge:flour')
|
||||
});
|
@ -10,7 +10,7 @@ ServerEvents.recipes(event => {
|
||||
'A': 'powah:dielectric_paste',
|
||||
'B': '#chipped:iron_bars',
|
||||
'C': '#kubejs:grist/intelligent/improved'
|
||||
})
|
||||
});
|
||||
|
||||
// Dielectric casings are used in nearly every powah recipe, so lets require energetic grist
|
||||
event.shaped('powah:dielectric_casing', [
|
||||
@ -39,8 +39,42 @@ ServerEvents.recipes(event => {
|
||||
'thermal:rf_coil'
|
||||
]);
|
||||
|
||||
event.recipes.powah.energizing(['minecraft:diamond', '#kubejs:grist/energetic/improved'], 'powah:crystal_niotic', 180000);
|
||||
event.recipes.powah.energizing(['minecraft:emerald', '2x #kubejs:grist/energetic/improved'], 'powah:crystal_spirited', 1000000);
|
||||
event.replaceInput({output: 'powah:thermoelectric_plate'},
|
||||
'minecraft:blaze_powder',
|
||||
'#kubejs:grist/energetic/basic'
|
||||
);
|
||||
event.replaceInput({output: 'powah:thermoelectric_plate'},
|
||||
'minecraft:redstone',
|
||||
'#kubejs:grist/build/basic'
|
||||
);
|
||||
|
||||
event.replaceInput({mod: 'powah'},
|
||||
'minecraft:quartz',
|
||||
Ingredient.of('minecraft:quartz').or('ae2:certus_quartz_crystal')
|
||||
);
|
||||
|
||||
event.replaceInput({mod: 'powah'},
|
||||
'minecraft:quartz_block',
|
||||
Ingredient.of('minecraft:quartz_block').or('ae2:quartz_block')
|
||||
);
|
||||
|
||||
// Nitro and spirited require radiant grist
|
||||
event.remove({output: 'powah:crystal_nitro'});
|
||||
event.recipes.powah.energizing(['3x #kubejs:grist/energetic/radiant/block'], '2x powah:crystal_nitro', 20000000);
|
||||
event.remove({output: 'powah:crystal_spirited'});
|
||||
event.recipes.powah.energizing(['powah:crystal_niotic', '2x #kubejs:grist/energetic/radiant'], '2x powah:crystal_spirited', 1000000);
|
||||
|
||||
// Niotic and blazing are at the improved tier
|
||||
event.remove({output: 'powah:crystal_niotic'});
|
||||
event.recipes.powah.energizing(['3x #kubejs:grist/energetic/improved/block'], '2x powah:crystal_niotic', 180000);
|
||||
event.remove({output: 'powah:crystal_blazing'});
|
||||
event.recipes.powah.energizing(['3x #kubejs:grist/energetic/improved'], '2x powah:crystal_blazing', 90000);
|
||||
|
||||
// Energized steel (aka hardened tier) require basic grist
|
||||
event.remove({output: 'powah:steel_energized'});
|
||||
event.recipes.powah.energizing(['minecraft:iron_ingot', 'minecraft:gold_ingot', '3x #kubejs:grist/energetic/basic'], '2x powah:steel_energized', 10000);
|
||||
|
||||
// Dielectric paste can be crafted with basic grist, and scaled up through machines
|
||||
event.shapeless('6x powah:dielectric_paste', [
|
||||
'kubejs:grist_primordeal_basic',
|
||||
'kubejs:grist_energetic_basic',
|
||||
@ -48,4 +82,16 @@ ServerEvents.recipes(event => {
|
||||
'minecraft:clay_ball',
|
||||
'#alltheores:ore_hammers'
|
||||
]);
|
||||
// TODO: Add create mixing and thermal alloy smelting versions for dialectric paste
|
||||
event.recipes.thermal.smelter('24x powah:dielectric_paste', [
|
||||
'kubejs:grist_energetic_basic',
|
||||
'minecraft:clay_ball',
|
||||
'minecraft:redstone'
|
||||
]);
|
||||
event.recipes.create.mixing('12x powah:dielectric_paste', [
|
||||
'kubejs:grist_energetic_basic',
|
||||
'minecraft:clay_ball',
|
||||
'minecraft:redstone'
|
||||
]).heated();
|
||||
// TODO: create a crystalizer recipe with destabilized redstone? liquid grist?
|
||||
});
|
@ -1,12 +1,16 @@
|
||||
ServerEvents.recipes(event => {
|
||||
// Powders are created by further crushing dusts
|
||||
event.recipes.thermal.pulverizer('powder_power:powder_end_pearl', ['#forge:dusts/ender_pearl']);
|
||||
event.recipes.createCrushing(`powder_power:powder_end_pearl`, `#forge:dusts/ender_pearl`);
|
||||
event.recipes.create.crushing(`powder_power:powder_end_pearl`, `#forge:dusts/ender_pearl`);
|
||||
event.recipes.thermal.pulverizer('powder_power:powder_nether_quartz', ['#forge:dusts/quartz']);
|
||||
event.recipes.createCrushing(`powder_power:powder_nether_quartz`, `#forge:dusts/quartz`);
|
||||
event.recipes.create.crushing(`powder_power:powder_nether_quartz`, `#forge:dusts/quartz`);
|
||||
|
||||
['redstone', 'lapis', 'copper', 'prismarine', 'obsidian', 'ghast_tear'].forEach(element => {
|
||||
event.recipes.thermal.pulverizer(`powder_power:powder_${element}`, [`#forge:dusts/${element}`]);
|
||||
event.recipes.createCrushing(`powder_power:powder_${element}`, `#forge:dusts/${element}`);
|
||||
event.recipes.create.crushing(`powder_power:powder_${element}`, `#forge:dusts/${element}`);
|
||||
});
|
||||
|
||||
// The mortar and pestle is completely replaced with create+thermal machines
|
||||
event.remove({input: 'powder_power:motar_pestle'});
|
||||
event.remove({output: 'powder_power:motar_pestle'});
|
||||
});
|
@ -91,4 +91,10 @@ ServerEvents.recipes(event => {
|
||||
'minecraft:redstone_block',
|
||||
'#kubejs:grist/intelligent/improved'
|
||||
);
|
||||
|
||||
event.replaceInput(
|
||||
{mod: 'prettypipes'},
|
||||
'minecraft:sugar',
|
||||
'#kubejs:grist/energetic/basic'
|
||||
);
|
||||
})
|
@ -1,5 +1,9 @@
|
||||
ServerEvents.recipes(event => {
|
||||
|
||||
// Completely remove the thermal cheese wheel, it gets confusing
|
||||
event.remove({output: 'thermal:cheese_wheel'});
|
||||
event.remove({input: 'thermal:cheese_wheel'});
|
||||
|
||||
// Sawdust for energy, of course.
|
||||
event.recipes.thermal.stirling_fuel('thermal:sawdust').energy(500)
|
||||
|
||||
@ -135,6 +139,14 @@ ServerEvents.recipes(event => {
|
||||
'#kubejs:grist/agricultural/basic'
|
||||
);
|
||||
|
||||
event.remove({input: 'thermal:earth_charge'});
|
||||
|
||||
event.recipes.create.mixing('16x thermal:phytogro', [
|
||||
'#forge:sand',
|
||||
'2x thermal:apatite_dust',
|
||||
'thermal:niter_dust'
|
||||
]);
|
||||
|
||||
// Pulverizer is gated behind brass, which requires create
|
||||
/*event.replaceInput(
|
||||
{id: 'thermal:machine_pulverizer'},
|
||||
|
28
kubejs/server_scripts/mods/torchmaster.js
Normal file
28
kubejs/server_scripts/mods/torchmaster.js
Normal file
@ -0,0 +1,28 @@
|
||||
ServerEvents.recipes(event => {
|
||||
event.replaceInput({mod: 'torchmaster'},
|
||||
'minecraft:diamond',
|
||||
'#kubejs:grist/intelligent/improved'
|
||||
);
|
||||
event.replaceInput({mod: 'torchmaster'},
|
||||
'minecraft:glowstone_dust',
|
||||
'#kubejs:grist/intelligent/basic'
|
||||
);
|
||||
event.replaceInput({mod: 'torchmaster'},
|
||||
'minecraft:gold_ingot',
|
||||
'#kubejs:grist/build/basic'
|
||||
);
|
||||
event.replaceInput({mod: 'torchmaster'},
|
||||
'#minecraft:logs',
|
||||
'#kubejs:grist/agricultural/basic/block'
|
||||
);
|
||||
|
||||
event.replaceInput({mod: 'torchmaster'},
|
||||
'minecraft:gold_block',
|
||||
'#kubejs:grist/build/basic/block'
|
||||
);
|
||||
|
||||
event.replaceInput({mod: 'torchmaster'},
|
||||
'minecraft:glowstone',
|
||||
'torchmaster:megatorch'
|
||||
);
|
||||
});
|
@ -13,4 +13,24 @@ ServerEvents.recipes(event => {
|
||||
let _nv = ['crimson', 'warped'].forEach(variety => {
|
||||
makeJuice(`${variety}_grapejuice`, `${variety}_grape`, `${variety}_grape_seeds`);
|
||||
});
|
||||
|
||||
event.replaceInput({output: 'candlelight:tomato_soup'},
|
||||
'#forge:tomatoes',
|
||||
'#forge:tomato_sauces'
|
||||
);
|
||||
event.recipes.create.mixing('candlelight:tomato_soup', [
|
||||
'#forge:tomato_sauces',
|
||||
'minecraft:sugar',
|
||||
'#candellight:all_effects'
|
||||
]).heated();
|
||||
event.recipes.create.mixing('candlelight:tomato_soup', [
|
||||
Fluid.of('create_central_kitchen:tomato_sauce', 250),
|
||||
'minecraft:sugar',
|
||||
'#candlelight:all_effects'
|
||||
]).heated();
|
||||
event.recipes.create.mixing('candlelight:bolognese', [
|
||||
'#candlelight:red_effect',
|
||||
'#forge:cooked_beef',
|
||||
'candlelight:tomato_soup'
|
||||
]).heated();
|
||||
});
|
@ -1,3 +1,7 @@
|
||||
//FIXME: broken andesite mixing recipe creates no output
|
||||
//FIXME: test create shaft and cog recipes again
|
||||
//FIXME: Figure out what the original create wool and concrete coloring recipes were, add mixer variants
|
||||
//FIXME: Create a water mixer route to turn concrete powder to concrete
|
||||
ServerEvents.recipes(event => {
|
||||
// Metal tiers:
|
||||
// Copper, iron, tin, nickel, gold, zinc, brass, invar, bronze - Pre-basic build tier, the only ores that don't require a pulverizer or smelter to process
|
||||
@ -13,20 +17,54 @@ ServerEvents.recipes(event => {
|
||||
// invar, gold, silver, electrum, signalum, lead, steel - Gated behind gear die
|
||||
// lumium, enderium, other alloys - Gated behind heavy duty gear die
|
||||
|
||||
let metalForm = (metal, tag, form) => {
|
||||
let itemType = AlmostUnified.getPreferredItemForTag(`forge:${tag}/${metal}`);
|
||||
if (itemType.id == 'minecraft:air') {
|
||||
console.log(`metals: ${metal} ${form} has unknown tag forge:${tag}/${metal}?`)
|
||||
let ret = Item.of(`alltheores:${metal}_${form}`);
|
||||
if (ret.id == "minecraft:air") {
|
||||
return Item.of(`thermal:${metal}_${form}`);
|
||||
let rawForms = (metal) => {
|
||||
let ret = null;
|
||||
AlmostUnified.getItemIds(`forge:raw_materials/${metal}`).forEach(id => {
|
||||
if (ret == null) {
|
||||
ret = Ingredient.of(id);
|
||||
} else {
|
||||
ret = ret.or(id);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
console.log(`metals: forge:${tag}/${metal} found`);
|
||||
return itemType;
|
||||
});
|
||||
return ret;
|
||||
}
|
||||
|
||||
let metalForm = global.metalForm;
|
||||
|
||||
let alloyIngredients = (forms, ingredients) => {
|
||||
let real_ingredients = [];
|
||||
for (const ingredient of ingredients.slice(1)) {
|
||||
let real_item = Item.of(ingredient);
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
let real_ingredient = null;
|
||||
for (const form of forms) {
|
||||
let parts = ingredient.split(' ');
|
||||
if (parts.length == 1) {
|
||||
real_item = metalForm(parts[0], form);
|
||||
} else {
|
||||
real_item = metalForm(parts[1], form).withCount(parts[0].split('x')[0]);
|
||||
}
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
console.error(`Unknown or invalid alloy ${form} ingredient: ${ingredient}`);
|
||||
} else {
|
||||
if (real_ingredient == null) {
|
||||
real_ingredient = Ingredient.of(real_item);
|
||||
} else {
|
||||
real_ingredient = real_ingredient.or(real_item);
|
||||
}
|
||||
//real_ingredients.push(real_item);
|
||||
}
|
||||
}
|
||||
//console.error(`Ingredients: ${real_ingredients}`);
|
||||
//real_ingredients.push(Ingredient.apply(null, real_ingredients));
|
||||
real_ingredients.push(real_ingredient);
|
||||
} else {
|
||||
real_ingredients.push(real_item);
|
||||
}
|
||||
}
|
||||
return real_ingredients;
|
||||
};
|
||||
|
||||
// Progression
|
||||
// Vanilla age -> Ore hammer for crushing tin to make andesite alloy
|
||||
// Andesite age -> Mixer from andesite allow allows creating early alloys: bronze, brass, invar, constantan
|
||||
@ -93,12 +131,10 @@ ServerEvents.recipes(event => {
|
||||
tin: [],
|
||||
gold: [],
|
||||
zinc: [],
|
||||
// FIXME: Need to add create:andesite_alloy to #forge:ingots/andesite_alloy
|
||||
andesite_alloy: [4, '2x minecraft:andesite', 'tin']
|
||||
},
|
||||
// Andesite age: Iron pickaxe to mine, crushing wheels to crush, then the crushed ore is smelted normally. Alloys require the create mixer. Ore washing to double crushed ore is unlocked, but fans require invar instead of iron. Gears can be crafted on a crafting table
|
||||
andesite: {
|
||||
silver: [],
|
||||
aluminum: [],
|
||||
lead: [],
|
||||
rose_gold: [2, 'copper', 'gold'],
|
||||
@ -108,6 +144,7 @@ ServerEvents.recipes(event => {
|
||||
},
|
||||
// Mechanical/grist age: Ores require diamond pick, crushed in the pulverizer, and crushed ore is smelted normally. Alloys require the induction furnace. 4x ore centrifuge is unlocked after creating a constantan gear on the crafting table. Other gears require the press.
|
||||
mechanical: {
|
||||
silver: [],
|
||||
nickel: [],
|
||||
invar: [3, '2x iron', 'nickel'],
|
||||
electrum: [2, 'gold', 'silver'],
|
||||
@ -123,26 +160,29 @@ ServerEvents.recipes(event => {
|
||||
lumium: [4, 'silver', '3x tin', '2x minecraft:glowstone_dust'],
|
||||
redium: [4, '4x powder_power:powder_redstone', '2x #forge:dusts/obsidian', '2x #forge:dusts/iron', 'minecraft:blaze_powder'],
|
||||
lapium: [4, '4x powder_power:powder_lapis', '2x #forge:dusts/gold', '2x #forge:dusts/obsidian', 'powder_power:powder_nether_quartz'],
|
||||
gemium: [4, '4x #forge:dusts/obsidian', '2x #forge:dusts/diamond', '2x #forge:dusts/emerald', 'powder_power:powder_prismarine'],
|
||||
trilium: [4, '2x lapium', '2x gemium', '2x redium', 'powder_power:powder_end_pearl']
|
||||
gemium: [4, '4x #forge:dusts/obsidian', '2x #forge:dusts/diamond', '2x #forge:dusts/emerald', 'powder_power:powder_prismarine']
|
||||
},
|
||||
// Modern age: Alloys require improved grist
|
||||
modern: {
|
||||
gobber: [3, 'gobber2:gobber2_glob', 'platinum', 'osmium'],
|
||||
nether_gobber: [3, 'gobber2:gobber2_glob_nether', 'minecraft:netherite_scrap', '2x gobber'],
|
||||
quadrilium: [3, '3x trilium', '4x minecraft:netherite_scrap', 'powder_power:powder_ghast_tear']
|
||||
nether_gobber: [3, 'gobber2:gobber2_glob_nether', 'minecraft:netherite_scrap', '2x gobber2:gobber2_ingot'],
|
||||
quadrilium: [3, '3x trilium', '4x minecraft:netherite_scrap', 'powder_power:powder_ghast_tear'],
|
||||
trilium: [4, '2x lapium', '2x gemium', '2x redium', 'powder_power:powder_end_pearl']
|
||||
},
|
||||
// Age of Legends: The end game
|
||||
legends: {
|
||||
//enderium: [],
|
||||
end_gobber: [3, 'gobber2:gobber2_glob_end', '2x nether_gobber', '2x #kubejs:grist/build/improved']
|
||||
end_gobber: [3, 'gobber2:gobber2_glob_end', '2x gobber2:gobber2_ingot_nether', '2x #kubejs:grist/build/improved']
|
||||
}
|
||||
};
|
||||
|
||||
// Basic rules for all materials
|
||||
for (const [key, metals] of Object.entries(progression)) {
|
||||
for (const [tier, metals] of Object.entries(progression)) {
|
||||
for (const [metal, ingredients] of Object.entries(metals)) {
|
||||
console.log(`Running ore processing for ${metal}...`);
|
||||
|
||||
let rawType = metalForm(metal, 'raw_materials', 'ore');
|
||||
let rawIngredients = rawForms(metal);
|
||||
let crushedType = Item.of(`create:crushed_raw_${metal}`);
|
||||
|
||||
let dustType = metalForm(metal, 'dusts', 'dust');
|
||||
@ -155,8 +195,6 @@ ServerEvents.recipes(event => {
|
||||
let gearType = metalForm(metal, 'gears', 'gear');
|
||||
let rodType = metalForm(metal, 'rods', 'rod');
|
||||
|
||||
console.log(`Wiping out stock ore processing for ${metal}...`);
|
||||
|
||||
// Wipe out all the stock recipes
|
||||
event.remove({output: gearType});
|
||||
event.remove({output: dustType});
|
||||
@ -168,73 +206,118 @@ ServerEvents.recipes(event => {
|
||||
event.remove({output: nuggetType});
|
||||
event.remove({output: crushedType});
|
||||
event.remove({input: crushedType});
|
||||
console.warn(`Removing ${metal} ingot recipes for ${ingotType.id}`);
|
||||
|
||||
// All dusts and crushed ores can be smelted to ingots, and made with ore hammers
|
||||
let ingotSources = [];
|
||||
|
||||
// All forms can be crushed back into dust
|
||||
if (dustType.id != 'minecraft:air') {
|
||||
event.smelting(ingotType, dustType);
|
||||
event.shapeless(dustType, [ingotType, '#alltheores:ore_hammers']);
|
||||
let dustSource = null;
|
||||
[gearType, rodType, plateType, ingotType].forEach(form => {
|
||||
if (form.id != 'minecraft:air') {
|
||||
if (dustSource == null) {
|
||||
dustSource = Ingredient.of(form);
|
||||
} else {
|
||||
dustSource = dustSource.or(form);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
event.shapeless(dustType, [dustSource, '#alltheores:ore_hammers']);
|
||||
event.recipes.create.crushing(dustType, dustSource);
|
||||
event.recipes.create.milling(dustType, dustSource);
|
||||
event.recipes.thermal.pulverizer(dustType, dustSource);
|
||||
}
|
||||
|
||||
// Plates can always be smelted back into their original ingot
|
||||
// All forms, including crushed ores, can be smelted back into an ingot
|
||||
if (ingotType.id != 'minecraft:air') {
|
||||
let ingotSource = null;
|
||||
[gearType, rodType, plateType, dustType, crushedType].forEach(form => {
|
||||
if (form.id != 'minecraft:air') {
|
||||
if (ingotSource == null) {
|
||||
ingotSource = Ingredient.of(form);
|
||||
} else {
|
||||
ingotSource = ingotSource.or(form);
|
||||
}
|
||||
}
|
||||
});
|
||||
if (ingotSource != null) {
|
||||
event.smelting(ingotType, ingotSource);
|
||||
} else {
|
||||
console.warn(`Unable to generate ${metal} ingot smelting from derivatives`);
|
||||
}
|
||||
}
|
||||
|
||||
// Gears and ingots can be pressed into a plate
|
||||
if (plateType.id != 'minecraft:air') {
|
||||
event.smelting(ingotType, plateType);
|
||||
// 1 plate = 1 ingot in presses
|
||||
event.recipes.thermal.press(plateType, [ingotType]);
|
||||
event.recipes.create.pressing([plateType], [ingotType]);
|
||||
let plateSource = null;
|
||||
[gearType, ingotType].forEach(form => {
|
||||
if (form.id != 'minecraft:air') {
|
||||
if (plateSource == null) {
|
||||
plateSource = Ingredient.of(form);
|
||||
} else {
|
||||
plateSource = plateSource.or(form);
|
||||
}
|
||||
}
|
||||
})
|
||||
event.recipes.thermal.press(plateType, plateSource);
|
||||
event.recipes.create.pressing(plateType, plateSource);
|
||||
}
|
||||
|
||||
// 4 ingots = 1 gear
|
||||
// 4 ingots = 1 gear in the press
|
||||
if (gearType.id != 'minecraft:air') {
|
||||
event.recipes.thermal.press(gearType, [ingotType.withCount(4), 'thermal:press_gear_die']);
|
||||
// TODO: would be fun to have a special 'high efficiency' gear press?
|
||||
event.recipes.thermal.press(gearType.withCount(2), [ingotType.withCount(4), 'thermal:press_gear_die']).id(`kubejs:${metal}_gear_in_thermal_press`);
|
||||
}
|
||||
|
||||
// 9 Nuggets == 1 ingot, for every material
|
||||
if (nuggetType.id != 'minecraft:air') {
|
||||
event.shapeless(ingotType, [nuggetType.withCount(9)]);
|
||||
event.shapeless(nuggetType.withCount(9), [ingotType]);
|
||||
event.shapeless(ingotType, [nuggetType.withCount(9)]).id(`kubejs:${metal}_ingot_from_nuggets`);
|
||||
event.shapeless(nuggetType.withCount(9), [ingotType]).id(`kubejs:${metal}_nuggets_from_ingot`);
|
||||
event.recipes.thermal.press(ingotType, [nuggetType.withCount(9), 'thermal:press_packing_3x3_die']).id(`kubejs:${metal}_ingot_from_nuggets_in_thermal_press`);
|
||||
event.recipes.thermal.press(nuggetType.withCount(9), [ingotType, 'thermal:press_unpacking_die']).id(`kubejs:${metal}_nuggets_from_ingot_in_thermal_press`);
|
||||
}
|
||||
// 9 ore = 1 ore block
|
||||
if (rawType.id != 'minecraft:air') {
|
||||
event.shapeless(rawBlockType, [rawType.withCount(9)]);
|
||||
event.shapeless(rawType.withCount(9), [rawBlockType]);
|
||||
if (rawIngredients != null) {
|
||||
event.shapeless(rawBlockType, [rawIngredients.withCount(9)]).id(`kubejs:${metal}_ore_block_from_ore`);
|
||||
event.shapeless(rawType.withCount(9), [rawBlockType]).id(`kubejs:${metal}_ore_from_ore_block`);
|
||||
event.recipes.thermal.press(rawBlockType, [rawIngredients.withCount(9), 'thermal:press_packing_3x3_die']).id(`kubejs:${metal}_ore_block_from_ore_in_thermal_press`);
|
||||
event.recipes.thermal.press(rawType.withCount(9), [rawBlockType, 'thermal:press_unpacking_die']).id(`kubejs:${metal}_ore_from_ore_block_in_thermal_press`);
|
||||
}
|
||||
// 9 ingots = 1 block
|
||||
if (blockType.id != 'minecraft:air') {
|
||||
event.shapeless(blockType, [ingotType.withCount(9)]);
|
||||
event.shapeless(ingotType.withCount(9), [blockType]);
|
||||
event.shapeless(blockType, [ingotType.withCount(9)]).id(`kubejs:${metal}_block_from_ingots`);
|
||||
event.shapeless(ingotType.withCount(9), [blockType]).id(`kubejs:${metal}_ingots_from_block`);
|
||||
event.recipes.thermal.press(blockType, [ingotType.withCount(9), 'thermal:press_packing_3x3_die']).id(`kubejs:${metal}_block_from_ingots_in_thermal_press`);
|
||||
event.recipes.thermal.press(ingotType.withCount(9), [blockType, 'thermal:press_unpacking_die']).id(`kubejs:${metal}_ingots_from_block_in_thermal_press`);
|
||||
}
|
||||
|
||||
// All alloys can be created in the smelter, or a superheated mixer
|
||||
if (rodType.id != 'minecraft:air') {
|
||||
// All metals can waste one ingot to create a rod in the crafting table
|
||||
event.shapeless(rodType, [ingotType.withCount(2), '#alltheores:ore_hammers']);
|
||||
// Or create two rods from one ingot in the create cutter
|
||||
event.recipes.create.cutting(rodType.withCount(2), ingotType);
|
||||
// Or create four rods from the thermal sawmill
|
||||
event.recipes.thermal.sawmill(rodType.withCount(4), ingotType);
|
||||
// TODO: Isn't there also a thermal press we can use?
|
||||
}
|
||||
|
||||
// All alloys can be created in the thermal smelter, or a superheated create mixer
|
||||
if (ingredients.length > 0) {
|
||||
for (const form of ['ingots', 'dusts']) {
|
||||
let real_ingredients = [];
|
||||
for (const ingredient of ingredients.slice(1)) {
|
||||
let real_item = Item.of(ingredient);
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
let parts = ingredient.split(' ');
|
||||
if (parts.length == 1) {
|
||||
real_item = metalForm(parts[0], form);
|
||||
} else {
|
||||
real_item = metalForm(parts[1], form).withCount(parts[0].split('x')[0]);
|
||||
}
|
||||
}
|
||||
let real_ingredients = alloyIngredients(['ingots', 'dusts'], ingredients);
|
||||
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
console.error(`Unknown or invalid ${metal} alloy ingredient: ${ingredient}`);
|
||||
}
|
||||
real_ingredients.push(real_item);
|
||||
}
|
||||
|
||||
if (real_ingredients.length > 0) {
|
||||
if (real_ingredients.length <= 3) {
|
||||
event.recipes.thermal.smelter(ingotType.withCount(ingredients[0]), real_ingredients);
|
||||
} else {
|
||||
event.recipes.create.mixing(ingotType.withCount(ingredients[0]), real_ingredients).superheated();
|
||||
}
|
||||
if (real_ingredients.length == 0) {
|
||||
console.error(`Unable to create ingots from ${form} for ${metal}!`);
|
||||
} else {
|
||||
// If we have 3 or fewer ingredients, we can create it in the 3-slot thermal smelter
|
||||
if (real_ingredients.length <= 3) {
|
||||
event.recipes.thermal.smelter(ingotType.withCount(ingredients[0]), real_ingredients).id(`kubejs:metals/smelting/${metal}`);
|
||||
} else {
|
||||
// Materials with 4 or more require superheating to be made in the mixer
|
||||
event.recipes.create.mixing(ingotType.withCount(ingredients[0]), real_ingredients).superheated().id(`kubejs:metals/superheated_mixing/${metal}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
// TODO: Create saw, 3x3 packing/unpacking dies, mechanical press
|
||||
}
|
||||
}
|
||||
|
||||
@ -261,7 +344,7 @@ ServerEvents.recipes(event => {
|
||||
// Vanilla tier: Ores need an ore hammer, and alloys can be crafted on the crafting table
|
||||
for (const tier of ['primitive', 'vanilla']) {
|
||||
for (const [metal, ingredients] of Object.entries(progression[tier])) {
|
||||
let rawType = metalForm(metal, 'raw_materials', 'ore');
|
||||
let rawIngredients = rawForms(metal);
|
||||
let dustType = metalForm(metal, 'dusts', 'dust');
|
||||
let ingotType = metalForm(metal, 'ingots', 'ingot');
|
||||
let rawBlockType = metalForm(`raw_${metal}`, 'storage_blocks', 'block');
|
||||
@ -269,49 +352,32 @@ ServerEvents.recipes(event => {
|
||||
console.log(`Building vanilla processing for ${metal}...`);
|
||||
|
||||
// Crush raw ore into dust with an ore hammer, in crafting table and in the deployer
|
||||
if (rawType.id != 'minecraft:air') {
|
||||
event.shapeless(dustType, [rawType, '#alltheores:ore_hammers']);
|
||||
if (rawIngredients != null) {
|
||||
event.shapeless(dustType, [rawIngredients, '#alltheores:ore_hammers']);
|
||||
event.shapeless(dustType.withCount(9), [rawBlockType, '#alltheores:ore_hammers']);
|
||||
event.recipes.create.deploying([dustType], [rawType, '#alltheores:ore_hammers']).keepHeldItem();
|
||||
event.recipes.create.deploying([dustType], [rawIngredients, '#alltheores:ore_hammers']).keepHeldItem();
|
||||
event.recipes.create.deploying([dustType.withCount(9)], [rawBlockType, '#alltheores:ore_hammers']).keepHeldItem();
|
||||
} else {
|
||||
console.error(`No ${metal} ore hammer smashing available!`);
|
||||
console.log(`No ${metal} ore hammer smashing available due to missing raw form!`);
|
||||
}
|
||||
|
||||
// TODO: alloy ingredients
|
||||
for (const form of ['ingots', 'dusts']) {
|
||||
let real_ingredients = [];
|
||||
for (const ingredient of ingredients.slice(1)) {
|
||||
let real_item = Item.of(ingredient);
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
let parts = ingredient.split(' ');
|
||||
if (parts.length == 1) {
|
||||
real_item = metalForm(parts[0], form);
|
||||
} else {
|
||||
real_item = metalForm(parts[1], form).withCount(parts[0].split('x')[0]);
|
||||
}
|
||||
}
|
||||
let real_ingredients = alloyIngredients(['ingots', 'dusts'], ingredients);
|
||||
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
console.error(`Unknown or invalid ${metal} alloy ingredient: ${ingredient}`);
|
||||
} else {
|
||||
real_ingredients.push(real_item);
|
||||
}
|
||||
}
|
||||
|
||||
if (real_ingredients.length > 0) {
|
||||
event.shapeless(ingotType.withCount(ingredients[0]), real_ingredients);
|
||||
}
|
||||
if (real_ingredients.length > 0 && ingotType.id != 'minecraft:air') {
|
||||
event.shapeless(ingotType.withCount(ingredients[0]), real_ingredients);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Andesite alloy is the progression item, as it unlocks most of the next tier of create
|
||||
event.shapeless('create:andesite_alloy', [global.dustItem('tin'), '2x minecraft:andesite']);
|
||||
//event.shapeless('create:andesite_alloy', [global.dustItem('tin'), '2x minecraft:andesite']);
|
||||
|
||||
let xpNugget = Item.of('create:experience_nugget');
|
||||
|
||||
// Andesite age: Crushing wheels to crush, then the crushed ore is smelted normally. Alloys require the create mixer. Ore washing to double crushed ore is unlocked, but fans require invar instead of iron. Gears can be crafted on a crafting table
|
||||
for (const tier of ['primitive', 'vanilla', 'andesite']) {
|
||||
for (const [metal, ingredients] of Object.entries(progression[tier])) {
|
||||
let rawType = metalForm(metal, 'raw_materials', 'ore');
|
||||
let rawIngredients = rawForms(metal);
|
||||
let crushedType = Item.of(`create:crushed_raw_${metal}`);
|
||||
let dustType = metalForm(metal, 'dusts', 'dust');
|
||||
let ingotType = metalForm(metal, 'ingots', 'ingot');
|
||||
@ -321,11 +387,11 @@ ServerEvents.recipes(event => {
|
||||
|
||||
console.log(`Building andesite processing for ${metal}...`);
|
||||
|
||||
if (rawType.id != 'minecraft:air') {
|
||||
if (rawIngredients != null) {
|
||||
if (crushedType.id != 'minecraft:air') {
|
||||
event.recipes.create.crushing([crushedType.withCount(2)], rawType);
|
||||
event.recipes.create.crushing([crushedType.withCount(18)], rawBlockType);
|
||||
event.recipes.create.milling([crushedType.withCount(2)], rawType);
|
||||
event.recipes.create.crushing([crushedType.withCount(2), xpNugget.withCount(2).withChance(0.75)], rawIngredients);
|
||||
event.recipes.create.crushing([crushedType.withCount(18), xpNugget.withCount(18).withChance(0.75)], rawBlockType);
|
||||
event.recipes.create.milling([crushedType.withCount(2)], rawIngredients);
|
||||
event.recipes.create.milling([crushedType.withCount(18)], rawBlockType);
|
||||
event.smelting(ingotType, crushedType);
|
||||
|
||||
@ -349,38 +415,19 @@ ServerEvents.recipes(event => {
|
||||
'B': '#forge:gems'
|
||||
});
|
||||
} else {
|
||||
console.error(`No ${metal} gears available!`);
|
||||
console.warn(`No ${metal} gears available!`);
|
||||
}
|
||||
|
||||
if (plateType.id != 'minecraft:air') {
|
||||
event.shapeless(plateType, [ingotType.withCount(2), '#alltheores:ore_hammers']);
|
||||
} else {
|
||||
console.error(`No ${metal} plates available!`);
|
||||
console.warn(`No ${metal} plates available!`);
|
||||
}
|
||||
|
||||
// TODO: alloy ingredients
|
||||
for (const form of ['ingots', 'dusts']) {
|
||||
let real_ingredients = [];
|
||||
for (const ingredient of ingredients.slice(1)) {
|
||||
let real_item = Item.of(ingredient);
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
let parts = ingredient.split(' ');
|
||||
if (parts.length == 1) {
|
||||
real_item = metalForm(parts[0], form);
|
||||
} else {
|
||||
real_item = metalForm(parts[1], form).withCount(parts[0].split('x')[0]);
|
||||
}
|
||||
}
|
||||
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
console.error(`Unknown or invalid ${metal} alloy ingredient: ${ingredient}`);
|
||||
}
|
||||
real_ingredients.push(real_item);
|
||||
}
|
||||
|
||||
if (real_ingredients.length > 0) {
|
||||
event.recipes.create.mixing(ingotType.withCount(ingredients[0]), real_ingredients).heated();
|
||||
}
|
||||
// These ones can simply have their dusts mixed in a cold mixer to create the "alloy" ingot, which for the andesite tier is only andesite alloy.
|
||||
let real_ingredients = alloyIngredients(['dusts'], ingredients);
|
||||
if (real_ingredients.length > 0) {
|
||||
event.recipes.create.mixing(ingotType.withCount(ingredients[0]), real_ingredients).id(`kubejs:metals/cold_mixing/${metal}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -394,45 +441,17 @@ ServerEvents.recipes(event => {
|
||||
// Mechanical/grist age: Ores require diamond pick, crushed in the pulverizer, and crushed ore is smelted normally. Alloys require blending dusts in a heated mixer, then smelting the blend. 4x ore centrifuge is unlocked after creating a constantan gear on the crafting table. Other gears require the press.
|
||||
for (const tier of ['primitive', 'vanilla', 'andesite', 'mechanical']) {
|
||||
for (const [metal, ingredients] of Object.entries(progression[tier])) {
|
||||
let rawType = metalForm(metal, 'raw_materials', 'ore');
|
||||
let crushedType = Item.of(`create:crushed_raw_${metal}`);
|
||||
let dustType = metalForm(metal, 'dusts', 'dust');
|
||||
let ingotType = metalForm(metal, 'ingots', 'ingot');
|
||||
|
||||
console.log(`Building mechanical processing for ${metal}...`);
|
||||
|
||||
if (rawType.id != 'minecraft:air') {
|
||||
if (crushedType.id != 'minecraft:air') {
|
||||
// Crushed ores are created in the industrial tier code, but mechanical tier and below are the only ones that don't need a centrifuge first
|
||||
// This allows Nickel to be processed into a constantan gear, which unlocks the centrifuge
|
||||
event.smelting(ingotType, [crushedType]);
|
||||
} else {
|
||||
console.error(`No ${metal} ore pulverizing available! Falling back to dust-based processing line`);
|
||||
}
|
||||
}
|
||||
|
||||
for (const form of ['dusts']) {
|
||||
let real_ingredients = [];
|
||||
for (const ingredient of ingredients.slice(1)) {
|
||||
let real_item = Item.of(ingredient);
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
let parts = ingredient.split(' ');
|
||||
if (parts.length == 1) {
|
||||
real_item = metalForm(parts[0], form);
|
||||
} else {
|
||||
real_item = metalForm(parts[1], form).withCount(parts[0].split('x')[0]);
|
||||
}
|
||||
}
|
||||
|
||||
if (real_item.id == 'minecraft:air') {
|
||||
console.error(`Unknown or invalid ${metal} alloy ingredient: ${ingredient}`);
|
||||
}
|
||||
real_ingredients.push(real_item);
|
||||
}
|
||||
|
||||
if (real_ingredients.length > 0) {
|
||||
event.recipes.create.mixing(dustType.withCount(ingredients[0]), real_ingredients).heated();
|
||||
}
|
||||
if (crushedType.id != 'minecraft:air') {
|
||||
// Crushed ores are created in the industrial tier code, but mechanical tier and below are the only ones that don't need a centrifuge first
|
||||
// This allows Nickel to be processed into a constantan gear, which unlocks the centrifuge
|
||||
event.smelting(ingotType, [crushedType]);
|
||||
} else {
|
||||
console.warn(`No ${metal} ore pulverizing available! Falling back to dust-based processing line`);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -441,278 +460,67 @@ ServerEvents.recipes(event => {
|
||||
// Industrial age: Ores require centrifuging, alloys require basic grists, gears can only be made with a gear die
|
||||
for (const tier of ['primitive', 'vanilla', 'andesite', 'mechanical', 'industrial']) {
|
||||
for (const [metal, ingredients] of Object.entries(progression[tier])) {
|
||||
let rawType = metalForm(metal, 'raw_materials', 'ore');
|
||||
let rawIngredients = rawForms(metal);
|
||||
let crushedType = Item.of(`create:crushed_raw_${metal}`);
|
||||
let ingotType = metalForm(metal, 'ingots', 'ingot');
|
||||
let dustType = metalForm(metal, 'dusts', 'dust');
|
||||
let rawBlockType = metalForm(`raw_${metal}`, 'storage_blocks', 'block');
|
||||
if (rawType.id != 'minecraft:air') {
|
||||
if (rawIngredients != null) {
|
||||
if (crushedType.id != 'minecraft:air') {
|
||||
event.recipes.thermal.pulverizer([crushedType.withCount(4), crushedType.withChance(0.25)], rawType);
|
||||
event.recipes.thermal.pulverizer([crushedType.withCount(4 * 9), crushedType.withChance(0.25)], rawBlockType);
|
||||
event.recipes.thermal.pulverizer([crushedType.withCount(4), crushedType.withChance(0.25), xpNugget.withCount(4).withChance(0.75)], rawIngredients);
|
||||
event.recipes.thermal.pulverizer([crushedType.withCount(4 * 9), crushedType.withChance(0.25), xpNugget.withCount(4 * 9).withChance(0.75)], rawBlockType);
|
||||
event.recipes.thermal.centrifuge([dustType.withCount(4), dustType.withChance(0.25)], crushedType);
|
||||
} else {
|
||||
console.error(`No ${metal} ore centrifuing available!`);
|
||||
}
|
||||
}
|
||||
|
||||
// Industrial and below can be mixed up in a regular heated mixer
|
||||
let real_ingredients = alloyIngredients(['ingots', 'dusts'], ingredients);
|
||||
if (real_ingredients.length > 0) {
|
||||
event.recipes.create.mixing(ingotType.withCount(ingredients[0]), real_ingredients).heated().id(`kubejs:metals/hot_mixing/${metal}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Generate clay from centrifuing ash or gravel
|
||||
event.recipes.thermal.centrifuge([
|
||||
Item.of('minecraft:clay_ball').withChance(1.05),
|
||||
Item.of('minecraft:clay_ball').withChance(0.25)],
|
||||
'supplementaries:ash_brick'
|
||||
);
|
||||
event.recipes.thermal.centrifuge([
|
||||
Item.of('minecraft:clay_ball').withChance(1.75),
|
||||
Item.of('minecraft:clay_ball').withChance(0.85)],
|
||||
'minecraft:gravel'
|
||||
);
|
||||
// Let quartz dust be created in the crafting table with a hammer
|
||||
event.shapeless('thermal:quartz_dust',
|
||||
['minecraft:quartz', '#alltheores:ore_hammers']
|
||||
).id('kubejs:quartz_dust_crushing');
|
||||
|
||||
// Fix up the diamond gear recipe, which somehow has two duplicates
|
||||
event.remove({output: 'thermal:diamond_gear'});
|
||||
event.shaped('thermal:diamond_gear', [
|
||||
' A ',
|
||||
'ABA',
|
||||
' A '
|
||||
], {
|
||||
'A': 'minecraft:diamond',
|
||||
'B': '#kubejs:grist/build/basic'
|
||||
});
|
||||
|
||||
//event.recipes.create.crushing(dustType, dustSource);
|
||||
event.recipes.create.milling('create:powdered_obsidian', 'minecraft:obsidian');
|
||||
});
|
||||
|
||||
function foobar() {
|
||||
function shpaes() {
|
||||
event.shapeless('thermal:quartz_dust', ['8x minecraft:granite', '#alltheores:ore_hammers']).id('kubejs:quartz_dust_from_granit_crushing_manual_only');
|
||||
event.shapeless('thermal:quartz_dust', ['minecraft:quartz', '#alltheores:ore_hammers']).id('kubejs:quartz_dust_crushing_manual_only');
|
||||
|
||||
// All metals can be processed in the pulverizer/crusher, make plates in the press, and make gears with the die
|
||||
{
|
||||
let _ = ['copper', 'rose_gold', 'aluminum', 'constantan', 'iron', 'tin', 'nickel', 'gold', 'zinc', 'brass', 'invar', 'bronze', 'silver', 'platinum', 'lead', 'iridium', 'osmium', 'lumium', 'enderium', 'electrum', 'signalum', 'steel', 'uranium'].forEach(metal => {
|
||||
console.log(`Setting up Tier 3 ${metal} processing...`);
|
||||
|
||||
let gearType = metalForm(metal, 'gears', 'gear');
|
||||
let dustType = metalForm(metal, 'dusts', 'dust');
|
||||
let plateType = metalForm(metal, 'plates', 'plate');
|
||||
let ingotType = metalForm(metal, 'ingots', 'ingot');
|
||||
let rawType = metalForm(metal, 'raw_materials', 'ore');
|
||||
let blockType = metalForm(`raw_${metal}`, 'storage_blocks', 'block');
|
||||
let crushedType = Item.of(`create:crushed_raw_${metal}`);
|
||||
|
||||
event.remove({output: gearType});
|
||||
event.remove({output: plateType});
|
||||
|
||||
event.remove({input: `#forge:ores/${metal}`});
|
||||
event.remove({input: `#forge:raw_materials/${metal}`});
|
||||
|
||||
// By default, you can't make any blends in the crafting table.
|
||||
event.remove({output: dustType, type: 'minecraft:crafting'});
|
||||
event.remove({output: ingotType, input: 'minecraft:fire_charge'});
|
||||
|
||||
// Remove the default conversion of ingot to nuggets from create
|
||||
event.remove({input: ingotType, type: 'create:crushing'});
|
||||
|
||||
// And completely eliminate the default refining line with create crushed ores
|
||||
if (crushedType.id != 'minecraft:air') {
|
||||
event.remove({input: crushedType});
|
||||
event.remove({output: crushedType});
|
||||
} else {
|
||||
console.log(`metals: Missing create:crushed_raw_${metal}`);
|
||||
}
|
||||
|
||||
event.remove({id: `alltheores:${metal}_dust_from_alloy_blending`});
|
||||
|
||||
console.log(`crushing ${rawType.toJson()} ${dustType.toJson()}`);
|
||||
if (rawType.id != "minecraft:air") {
|
||||
event.custom({
|
||||
type: "thermal:pulverizer",
|
||||
ingredients: [
|
||||
{tag: `forge:raw_materials/${metal}`}
|
||||
],
|
||||
result: [
|
||||
{item: dustType.id, chance: 1.05},
|
||||
{item: dustType.id, chance: 0.25}
|
||||
],
|
||||
experience: 0.5
|
||||
});
|
||||
|
||||
if (crushedType.id != 'minecraft:air') {
|
||||
event.custom({
|
||||
type: "create:crushing",
|
||||
ingredients: [
|
||||
{tag: `forge:raw_materials/${metal}`}
|
||||
],
|
||||
results: [
|
||||
{item: crushedType.id, chance: 1},
|
||||
{item: crushedType.id, chance: 0.25},
|
||||
{item: dustType.id, chance: 0.05},
|
||||
{item: 'create:experience_nugget', count: 2, chance: 0.75}
|
||||
],
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if (blockType.id != "minecraft:air") {
|
||||
event.custom({
|
||||
type: "thermal:pulverizer",
|
||||
ingredients: [
|
||||
{tag: `forge:storage_blocks/raw_${metal}`}
|
||||
],
|
||||
result: [
|
||||
{item: dustType.id, count: 9, chance: 1},
|
||||
{item: dustType.id, count: 9, chance: 0.25}
|
||||
],
|
||||
experience: 0.5
|
||||
});
|
||||
|
||||
if (crushedType.id != 'minecraft:air') {
|
||||
event.custom({
|
||||
type: "create:crushing",
|
||||
ingredients: [
|
||||
{tag: `forge:storage_blocks/raw_${metal}`}
|
||||
],
|
||||
results: [
|
||||
{item: crushedType.id, count: 9, chance: 1},
|
||||
{item: crushedType.id, count: 9, chance: 0.25},
|
||||
{item: dustType.id, count: 9, chance: 0.05},
|
||||
{item: 'create:experience_nugget', count: 2 * 9, chance: 0.75}
|
||||
],
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// Set up the parallel create-based ore washing line
|
||||
if (crushedType.id != 'minecraft:air') {
|
||||
event.custom({
|
||||
type: "create:splashing",
|
||||
ingredients: [
|
||||
{item: crushedType.id }
|
||||
],
|
||||
results: [
|
||||
{item: dustType.id, count: 2, chance: 1},
|
||||
{item: dustType.id, chance: 0.25},
|
||||
{item: dustType.id, chance: 0.05},
|
||||
],
|
||||
});
|
||||
|
||||
event.custom({
|
||||
type: "thermal:centrifuge",
|
||||
ingredients: [
|
||||
{item: crushedType.id }
|
||||
],
|
||||
result: [
|
||||
{item: dustType.id, count: 3, chance: 3.0},
|
||||
{item: dustType.id, chance: 0.75},
|
||||
{item: "twigs:pebble", chance: 0.05}
|
||||
],
|
||||
});
|
||||
}
|
||||
|
||||
// 1 dust = 1 ingot
|
||||
event.custom({
|
||||
type: "thermal:pulverizer",
|
||||
ingredients: [
|
||||
ingotType.toJson()
|
||||
],
|
||||
result: [
|
||||
dustType.toJson()
|
||||
],
|
||||
});
|
||||
|
||||
event.custom({
|
||||
type: "create:crushing",
|
||||
ingredients: [
|
||||
ingotType.toJson()
|
||||
],
|
||||
results: [
|
||||
dustType.toJson()
|
||||
],
|
||||
});
|
||||
|
||||
// 4 ingots = 1 gear
|
||||
event.custom({
|
||||
type: "thermal:press",
|
||||
ingredients: [
|
||||
ingotType.withCount(4).toJson(),
|
||||
{ item: "thermal:press_gear_die" }
|
||||
],
|
||||
result: [gearType.toJson()]
|
||||
});
|
||||
|
||||
// 1 ingot = 1 plate
|
||||
event.custom({
|
||||
type: "thermal:press",
|
||||
ingredients: [
|
||||
ingotType.toJson(),
|
||||
],
|
||||
result: [plateType.toJson()]
|
||||
});
|
||||
event.custom({
|
||||
type: "create:pressing",
|
||||
ingredients: [
|
||||
ingotType.toJson(),
|
||||
],
|
||||
results: [plateType.toJson()]
|
||||
});
|
||||
});}
|
||||
|
||||
// But only these metals can be processed without a machine
|
||||
{let _ = ['copper', 'iron', 'tin', 'nickel', 'zinc', 'brass', 'bronze', 'lead', 'aluminum'].forEach(metal => {
|
||||
console.log(`Setting up ${metal} manual processing...`);
|
||||
let gearID = metalForm(metal, 'gears', 'gear');
|
||||
let plateID = metalForm(metal, 'plates', 'plate');
|
||||
let dustID = metalForm(metal, 'dusts', 'dust');
|
||||
event.shaped(gearID, [
|
||||
' A ',
|
||||
'ABA',
|
||||
' A '
|
||||
], {
|
||||
'A': global.ingotItem(metal),
|
||||
'B': '#forge:gems'
|
||||
});
|
||||
event.shapeless(plateID, [global.ingotItem(metal, 2), '#alltheores:ore_hammers']).id(`kubejs:plate_crushing_${metal}_manual_only`);
|
||||
event.shapeless(dustID, [global.ingotItem(metal), '#alltheores:ore_hammers']).id(`kubejs:ore_crushing_${metal}_manual_only`);
|
||||
});}
|
||||
|
||||
// And only these ores can be hammered or crushed
|
||||
{let _ = ['copper', 'iron', 'tin', 'nickel', 'zinc', 'lead', 'aluminum', 'gold'].forEach(ore => {
|
||||
console.log(`Setting up ${ore} hammering...`);
|
||||
let dustType = metalForm(ore, 'dusts', 'dust');
|
||||
event.shapeless(dustType.withCount(2), [`#forge:raw_materials/${ore}`, '#alltheores:ore_hammers']).id(`kubejs:ore_crushing_2_${ore}_manual_only`);
|
||||
event.shapeless(dustType.withCount(2 * 9), [`#forge:storage_blocks/raw_${ore}`, '#alltheores:ore_hammers']).id(`kubejs:ore_block_crushing_${ore}_manual_only`);
|
||||
});}
|
||||
|
||||
// And only copper can be smelted without pulverizing
|
||||
event.smelting(global.ingotItem('copper'), metalForm('copper', 'raw_materials', 'ore'));
|
||||
|
||||
console.log(`Setting up blends...`);
|
||||
// These are the only blends you can make by hand, aka pre-smelter alloys
|
||||
// FIXME: Remove the hammer from the create mixer
|
||||
event.shapeless(Item.of(metalForm('bronze', 'dusts', 'dust').withCount(4)), [
|
||||
global.dustItem('tin', 2),
|
||||
global.dustItem('copper', 2),
|
||||
'#alltheores:ore_hammers'
|
||||
]).id('kubejs:bronze_mixing_manual_only');
|
||||
event.custom({
|
||||
type: "create:mixing",
|
||||
ingredients: [
|
||||
global.dustItem('tin', 2),
|
||||
global.dustItem('copper', 2),
|
||||
],
|
||||
results: [global.dustItem('tin', 4)]
|
||||
});
|
||||
|
||||
event.shapeless(Item.of(metalForm('brass', 'dusts', 'dust').withCount(4)), [
|
||||
global.dustItem('copper', 3),
|
||||
global.dustItem('zinc', 1),
|
||||
'#alltheores:ore_hammers'
|
||||
]).id(`kubejs:brass_mixing_manual_only`);
|
||||
event.custom({
|
||||
type: "create:mixing",
|
||||
ingredients: [
|
||||
global.dustItem('copper', 3),
|
||||
global.dustItem('zinc', 1),
|
||||
],
|
||||
results: [global.dustItem('brass', 4)]
|
||||
});
|
||||
|
||||
event.shapeless(Item.of(metalForm('invar', 'dusts', 'dust').withCount(4)), [
|
||||
global.dustItem('iron', 2),
|
||||
global.dustItem('nickel', 2),
|
||||
'#alltheores:ore_hammers'
|
||||
]).id('kubejs:invar_mixing_manual_only');
|
||||
event.custom({
|
||||
type: "create:mixing",
|
||||
ingredients: [
|
||||
global.dustItem('iron', 2),
|
||||
global.dustItem('nickel', 2),
|
||||
],
|
||||
results: [global.dustItem('invar', 4)]
|
||||
});
|
||||
|
||||
// Constantan dust consumes your first build grist, and it unlocks the basic grist production line
|
||||
event.shapeless(Item.of(metalForm('constantan', 'dusts', 'dust').withCount(4)),[
|
||||
global.ingotItem('nickel', 2),
|
||||
global.ingotItem('copper', 2),
|
||||
'#kubejs:grist/build/basic',
|
||||
'#alltheores:ore_hammers'
|
||||
]).id('kubejs:constantan_dust_mixing_manual_only');
|
||||
// Constantan is the only metal you can't work on the bench except for gears
|
||||
event.shaped('thermal:constantan_gear', [
|
||||
' A ',
|
||||
|
@ -15,7 +15,6 @@ StartupEvents.registry('item', e => {
|
||||
console.log(`Create ${grist}`);
|
||||
e.create(grist.id())
|
||||
.displayName(grist.displayName())
|
||||
.rarity('rare')
|
||||
.fireResistant(true)
|
||||
.textureJson({layer0: grist.itemTexture()});
|
||||
});
|
||||
|
@ -22,9 +22,10 @@ function HSVtoRGB(h, s, v) {
|
||||
return `#${toHex(r)}${toHex(g)}${toHex(b)}`.toString();
|
||||
}
|
||||
|
||||
function Tier(name, colorValue) {
|
||||
function Tier(name, colorValue, rarity) {
|
||||
this.name = name;
|
||||
this.colorValue = colorValue;
|
||||
this.rarity = rarity;
|
||||
};
|
||||
|
||||
Tier.prototype.displayName = function() {
|
||||
@ -83,9 +84,9 @@ Grist.Primitives = [
|
||||
|
||||
// Color values are 0-1 floats
|
||||
Grist.Tiers = {
|
||||
basic: new Tier('basic', 0.5),
|
||||
improved: new Tier('improved', 0.75),
|
||||
radiant: new Tier('radiant', 1.0)
|
||||
basic: new Tier('basic', 0.5, 'uncommon'),
|
||||
improved: new Tier('improved', 0.75, 'rare'),
|
||||
radiant: new Tier('radiant', 1.0, 'epic')
|
||||
};
|
||||
|
||||
Grist.Tiers.forEach = function(f) {
|
||||
@ -148,6 +149,14 @@ Grist.prototype.exact = function() {
|
||||
return this;
|
||||
};
|
||||
|
||||
Grist.prototype.rarity = function() {
|
||||
if (this.element == 'universal') {
|
||||
return 'kubejs:legendary'
|
||||
} else {
|
||||
return this.tier.rarity;
|
||||
}
|
||||
}
|
||||
|
||||
Grist.prototype.color = function() {
|
||||
//return '#0d6aff';
|
||||
if (this.element.hue == -1) {
|
||||
@ -190,11 +199,20 @@ Grist.prototype.elementalTag = function() {
|
||||
};
|
||||
|
||||
Grist.prototype.tags = function() {
|
||||
return [
|
||||
'kubejs:grist',
|
||||
this.tag(),
|
||||
this.elementalTag()
|
||||
];
|
||||
if (this.state == 'item') {
|
||||
return [
|
||||
'kubejs:grist',
|
||||
this.tag(),
|
||||
this.elementalTag()
|
||||
];
|
||||
} else if (this.state == 'block') {
|
||||
return [
|
||||
'kubejs:grist_block',
|
||||
this.tag(),
|
||||
this.elementalTag(),
|
||||
`forge:storage_blocks/grist_${this.element.name}_${this.tier.name}`
|
||||
];
|
||||
}
|
||||
};
|
||||
|
||||
Grist.prototype.id = function() {
|
||||
|
@ -1,20 +0,0 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"target": "ES2015",
|
||||
"lib": [
|
||||
"ES5",
|
||||
"ES2015"
|
||||
],
|
||||
"rootDir": "./src",
|
||||
"typeRoots": [
|
||||
"../../.probe/startup/probe-types"
|
||||
],
|
||||
"baseUrl": "../../.probe/startup/probe-types",
|
||||
"skipLibCheck": true
|
||||
},
|
||||
"include": [
|
||||
"./src/**/*",
|
||||
null
|
||||
]
|
||||
}
|
@ -13,7 +13,7 @@ StartupEvents.registry('fluid', e => {
|
||||
});
|
||||
|
||||
StartupEvents.registry('item', e => {
|
||||
e.create('grist_essence').displayName('Grist Essence').rarity('rare');
|
||||
e.create('grist_essence').displayName('Grist Essence').rarity('uncommon');
|
||||
|
||||
// Intelligent progress
|
||||
// Basic
|
||||
@ -22,16 +22,16 @@ StartupEvents.registry('item', e => {
|
||||
e.create('sacred_flesh').displayName('Sacred Flesh').rarity('rare').textureJson({layer0:'minecraft:item/rotten_flesh'}).color(0, Grist.of('build', 'basic').color());
|
||||
|
||||
// Improved
|
||||
e.create('intelligent_focus').displayName('Intelligent Focus').rarity('rare');
|
||||
e.create('sapient_focus').displayName('Sapient Focus').rarity('rare');
|
||||
e.create('imbued_source_gem').displayName('Imbued Source Gem').rarity('rare');
|
||||
e.create('intelligent_catalyst').displayName('Intelligent Catalyst').rarity('rare');
|
||||
e.create('intelligent_focus').displayName('Intelligent Focus').rarity('rare').textureJson({layer0: 'malloc:item/intelligent_focus'});
|
||||
e.create('sapient_focus').displayName('Sapient Focus').rarity('rare').textureJson({layer0: 'malloc:item/sapient_focus'});
|
||||
e.create('imbued_source_gem').displayName('Imbued Source Gem').rarity('rare').textureJson({layer0: 'ars_nouveau:item/source_gem'}).color(0, Grist.of('intelligent', 'improved').color());
|
||||
e.create('intelligent_catalyst').displayName('Intelligent Catalyst').rarity('rare').textureJson({layer0: 'malloc:item/intelligent_catalyst'});
|
||||
|
||||
// Radiant
|
||||
e.create('intelligent_processor').displayName('Intelligent Processor').rarity('rare').texture('malloc:item/intelligent_processor');
|
||||
e.create('raw_intelligent_processor').displayName('Raw Intelligent Processor').rarity('rare').texture('malloc:item/raw_intelligent_processor');
|
||||
e.create('deep_intelligent_processor').displayName('Deep Intelligent Processor').rarity('rare').texture('malloc:item/deep_intelligent_processor');
|
||||
e.create('raw_deep_intelligent_processor').displayName('Deep Raw Intelligent Processor').rarity('rare').texture('malloc:item/raw_deep_intelligent_processor');
|
||||
e.create('intelligent_processor').displayName('Intelligent Processor').rarity('epic').texture('malloc:item/intelligent_processor');
|
||||
e.create('raw_intelligent_processor').displayName('Raw Intelligent Processor').rarity('epic').texture('malloc:item/raw_intelligent_processor');
|
||||
e.create('deep_intelligent_processor').displayName('Deep Intelligent Processor').rarity('epic').texture('malloc:item/deep_intelligent_processor');
|
||||
e.create('raw_deep_intelligent_processor').displayName('Deep Raw Intelligent Processor').rarity('epic').texture('malloc:item/raw_deep_intelligent_processor');
|
||||
|
||||
// Energetic progression
|
||||
// Basic
|
||||
@ -69,13 +69,13 @@ StartupEvents.registry('item', e => {
|
||||
e.create('reinforced_grist_blend').displayName('Reinforced Grist Blend').rarity('rare').textureJson({layer0: 'minecraft:item/redstone'}).color(0, Grist.of('build', 'improved').color());
|
||||
|
||||
// Radiant
|
||||
e.create('grist_crucible');
|
||||
e.create('grist_crucible_filled');
|
||||
e.create('grist_crucible_hot');
|
||||
e.create('tempered_grist_alloy_ingot');
|
||||
e.create('tempered_grist_alloy_nugget');
|
||||
e.create('perfect_grist_alloy_ingot');
|
||||
e.create('perfect_grist_alloy_nugget');
|
||||
e.create('flawed_grist_alloy_ingot');
|
||||
e.create('flawed_grist_alloy_nugget');
|
||||
e.create('grist_crucible').rarity('epic');
|
||||
e.create('grist_crucible_filled').rarity('epic');
|
||||
e.create('grist_crucible_hot').rarity('epic');
|
||||
e.create('tempered_grist_alloy_ingot').rarity('epic');
|
||||
e.create('tempered_grist_alloy_nugget').rarity('epic');
|
||||
e.create('perfect_grist_alloy_ingot').rarity('epic');
|
||||
e.create('perfect_grist_alloy_nugget').rarity('epic');
|
||||
e.create('flawed_grist_alloy_ingot').rarity('epic');
|
||||
e.create('flawed_grist_alloy_nugget').rarity('epic');
|
||||
});
|
76
kubejs/startup_scripts/rarities.js
Normal file
76
kubejs/startup_scripts/rarities.js
Normal file
@ -0,0 +1,76 @@
|
||||
// priority: 10000
|
||||
|
||||
RarityJSEvents.register(event => {
|
||||
console.warn("Setting up rarities");
|
||||
|
||||
event.addRarity("kubejs:legendary", "yellow");
|
||||
event.addRarity("kubejs:mythic", "red");
|
||||
event.addRarity("kubejs:unique", "red");
|
||||
|
||||
event.addRarity("kubejs:intelligent_grist", "dark_green");
|
||||
event.addRarity("kubejs:build_grist", "dark_blue");
|
||||
event.addRarity("kubejs:energetic_grist", "dark_red");
|
||||
event.addRarity("kubejs:agricultural_grist", "gold");
|
||||
// TODO: Put modular items into the unique tier
|
||||
// TODO: Put gobber compat stuff into legendary
|
||||
// TODO: Put powder power stuff into mythic/legendary
|
||||
|
||||
Grist.forEach(grist => {
|
||||
console.warn(`${grist.id()} => ${grist.rarity()}`);
|
||||
event.setRarity(grist.id(), grist.rarity());
|
||||
});
|
||||
Grist.forEachBlock(grist => {
|
||||
console.warn(`${grist.id()} => ${grist.rarity()}`);
|
||||
event.setRarity(grist.id(), grist.rarity());
|
||||
});
|
||||
|
||||
event.setRarityByMod('kubejs', 'rare');
|
||||
|
||||
event.setRarityByMod('miapi', 'kubejs:unique');
|
||||
event.setRarity("miapi:modular_work_bench", "rare");
|
||||
|
||||
event.setRarityByMod('gobber2', 'uncommon');
|
||||
|
||||
// Lots of mid-game mods should be uncommon by default
|
||||
event.setRarityByMod('wormhole_artifact', 'epic');
|
||||
event.setRarityByMod('artifacts', 'epic');
|
||||
event.setRarityByMod('sophisticatedbackpacks', 'kubejs:intelligent_grist');
|
||||
event.setRarityByMod('ae2', 'kubejs:intelligent_grist');
|
||||
event.setRarityByMod('torchmaster', 'kubejs:intelligent_grist');
|
||||
event.setRarityByMod('experienceobelisk', 'kubejs:intelligent_grist');
|
||||
event.setRarityByMod('functionalstorage', 'kubejs:intelligent_grist');
|
||||
event.setRarityByMod('waystones', 'kubejs:intelligent_grist');
|
||||
event.setRarityByMod('modularrouters', 'kubejs:intelligent_grist');
|
||||
|
||||
event.setRarityByMod('summoningrituals', 'epic');
|
||||
event.setRarityByMod('tempad', 'epic');
|
||||
|
||||
event.setRarity('create:precision_mechanism', 'kubejs:intelligent_grist');
|
||||
event.setRarity('create:experience_nugget', 'uncommon');
|
||||
|
||||
event.setRarityByMod('botanypots', 'kubejs:agricultural_grist');
|
||||
event.setRarityByMod('industrialforegoing', 'kubejs:agricultural_grist');
|
||||
event.setRarityByMod('hostilenetworks', 'kubejs:agricultural_grist');
|
||||
event.setRarityByMod('easy_villagers', 'kubejs:agricultural_grist');
|
||||
event.setRarity('thermal:redstone_servo', 'kubejs:agricultural_grist');
|
||||
event.setRarity('thermal:device_fischer', 'kubejs:agricultural_grist');
|
||||
event.setRarity('farmersdelight:cooking_pot', 'kubejs:agricultural_grist');
|
||||
event.setRarityByMod('darkutils', 'kubejs:agricultural_grist');
|
||||
|
||||
event.setRarityByMod('systeams', 'kubejs:energetic_grist');
|
||||
event.setRarityByMod('powah', 'kubejs:energetic_grist');
|
||||
event.setRarityByMod('create_new_age', 'kubejs:energetic_grist');
|
||||
event.setRarity('thermal:energy_duct', 'kubejs:energetic_grist');
|
||||
event.setRarity('thermal:energy_cell', 'kubejs:energetic_grist');
|
||||
event.setRarity('thermal:rf_coil', 'kubejs:energetic_grist');
|
||||
event.setRarity('thermal:energy_cell_frame', 'kubejs:energetic_grist');
|
||||
event.setRarity('create:windmill_bearing', 'kubejs:energetic_grist');
|
||||
event.setRarity('immersive_aircraft:boiler', 'kubejs:energetic_grist');
|
||||
event.setRarity('iron_furnaces:augment_factory', 'kubejs:energetic_grist');
|
||||
// "$INST_JAVA" -jar packwiz-installer-bootstrap.jar https://gitea.malloc.hackerbots.net/tdfischer/malloc-s4/raw/branch/main/pack.toml
|
||||
|
||||
event.setRarityByMod('thermal', 'kubejs:build_grist');
|
||||
event.setRarityByMod('ironfurnaces', 'kubejs:build_grist');
|
||||
event.setRarityByMod('buildinggadgets2', 'epic');
|
||||
event.setRarity('create:crushing_wheel', 'kubejs:build_grist');
|
||||
});
|
13
mods/attract-to-sound.pw.toml
Normal file
13
mods/attract-to-sound.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Attract to Sound (Forge/Fabric): Sound & Stealth."
|
||||
filename = "forge_soundattract_1.20.1-3.0.1.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/zZluixcp/versions/IdivdtXt/forge_soundattract_1.20.1-3.0.1.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "07f2cffc46258ed2ecccb7b20cd8645cbcc4631f83a7cb54f94cdf974a579ec36e574465a834e0beb84ba6fae7a13e6e3770fa705278c5373c0eaced32131c15"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "zZluixcp"
|
||||
version = "IdivdtXt"
|
13
mods/butchery.pw.toml
Normal file
13
mods/butchery.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Butchery"
|
||||
filename = "butcher-3.6.1-forge-1.20.1.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/6YfOmC9t/versions/YLBZX0fF/butcher-3.6.1-forge-1.20.1.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "077a471b620f9dff6e23e53b404a8aede98634c80ffd0f12cc48ed8f475a0f202334ac7a097408560e45fe1fe5bbe6409667ac6498ac0c64a37d5f5508f044f0"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "6YfOmC9t"
|
||||
version = "YLBZX0fF"
|
13
mods/copycats.pw.toml
Normal file
13
mods/copycats.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Create: Copycats+"
|
||||
filename = "copycats-3.0.2+mc.1.20.1-forge.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/UT2M39wf/versions/ibcPwZZT/copycats-3.0.2%2Bmc.1.20.1-forge.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "29b1912155e4e6f0c08355d475c8f89923912c5bdf1f7b75da760d743e733af78b3dfc82e5a5a56d5ef0bbaff6e51c25eb98558187c330e8c20259016a0fee2f"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "UT2M39wf"
|
||||
version = "ibcPwZZT"
|
13
mods/create-jetpack.pw.toml
Normal file
13
mods/create-jetpack.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Create Jetpack"
|
||||
filename = "create_jetpack-forge-4.4.2.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/UbFnAd4l/versions/wAQ8Ph2w/create_jetpack-forge-4.4.2.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "b844c5df9557f928cfb8d0a876c7f8dcd8dd8085eb4fc02504afcd8c59bcac162abea564affbf1cf7c85bc893a2db7e6fa1d0a64b25e9871b704b4032a9c7abf"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "UbFnAd4l"
|
||||
version = "wAQ8Ph2w"
|
13
mods/create-power-loader.pw.toml
Normal file
13
mods/create-power-loader.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Create: Power Loader"
|
||||
filename = "create_power_loader-2.0.3-mc1.20.1.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/wPQ6GgFE/versions/gQuz8jcV/create_power_loader-2.0.3-mc1.20.1.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "cce4eeb6a7dc942f24f0a7b4182c1b92898b3cc998a876d910148a498d0a39ac8a37fb7d9b66ee81dadd422b9fe42ff57c7f5f9aa05dcdde80b64c04cfb9d55d"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "wPQ6GgFE"
|
||||
version = "gQuz8jcV"
|
13
mods/create-railways-navigator.pw.toml
Normal file
13
mods/create-railways-navigator.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Create Railways Navigator"
|
||||
filename = "createrailwaysnavigator-forge-1.20.1-beta-0.8.3-C6.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/Dq3STxps/versions/VooLiYLH/createrailwaysnavigator-forge-1.20.1-beta-0.8.3-C6.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "bc4613f5893aefc33b3e2387d616720c9934b7f1a0654da9e785999dc6180c71ce4c9b8ef77a9cfc6594191a9392fab5a0aee8d729348cb99dccdcc00c196159"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "Dq3STxps"
|
||||
version = "VooLiYLH"
|
@ -1,13 +1,13 @@
|
||||
name = "Create"
|
||||
filename = "create-1.20.1-6.0.4.jar"
|
||||
filename = "create-1.20.1-6.0.6.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/LNytGWDc/versions/xoKzmnen/create-1.20.1-6.0.4.jar"
|
||||
url = "https://cdn.modrinth.com/data/LNytGWDc/versions/JjPQsQVw/create-1.20.1-6.0.6.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "9dc60349a07d3367977fc935a65053db63cdfab4fc244db06e97a62e9c9d1154c1b8b66d4083f5a4c4a1403716a06c3251cd8d0ddfccb5e9de7177c8c2c45d25"
|
||||
hash = "efc7097430ff2e7fe5e54478efbefc52d0017762b59372878a03f79f4eb0446572290bf377e8aba8374f3a9932fdf1cefd4a4650a9a5f3cf6ab0ad9fd05cc30b"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "LNytGWDc"
|
||||
version = "xoKzmnen"
|
||||
version = "JjPQsQVw"
|
||||
|
13
mods/custom-rarity.pw.toml
Normal file
13
mods/custom-rarity.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "RarityJS"
|
||||
filename = "raritymod-1.0.5.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "d8ad367b715ce62a42e0651b1bb7c90f7220e050"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 6359655
|
||||
project-id = 1037072
|
13
mods/dimensional-dungeons.pw.toml
Normal file
13
mods/dimensional-dungeons.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Dimensional Dungeons"
|
||||
filename = "dimdungeons-194-forge-1.20.1.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/Q8XlZjYF/versions/Hn1QKGHI/dimdungeons-194-forge-1.20.1.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "3e6f00f3584c86b7a46199558cde4c5f1dda63aa620edf964bd7e20efef62c62f68b284f33501801a78ef408170d8dac558f7e290d89ebda00861918b286d532"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "Q8XlZjYF"
|
||||
version = "Hn1QKGHI"
|
@ -1,13 +0,0 @@
|
||||
name = "Dynamic Lights"
|
||||
filename = "dynamiclights-1.20.1.2.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "19a5b772e1b6ca15cca8db6f201884459f37a173"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 4861183
|
||||
project-id = 227874
|
@ -1,13 +0,0 @@
|
||||
name = "Sodium/Embeddium Dynamic Lights"
|
||||
filename = "sodiumdynamiclights-forge-1.0.10-1.20.1.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "d27524e85bed0f0af83c03be46f9ca3eb02a1be9"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 6044481
|
||||
project-id = 551736
|
13
mods/energymeter.pw.toml
Normal file
13
mods/energymeter.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Energy Meter"
|
||||
filename = "energymeter-forge-1.20.1-1.0.0.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/MbejSZ2E/versions/UyNuFWXF/energymeter-forge-1.20.1-1.0.0.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "e599493c47e3f5ea24aae9cc1e67c335085c088ac6149e23eb2a3c2d25cc9f51dd015f9ef5e3b68c8b2971db5151aad99534d33bec8b70902ddca64db6e67ac7"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "MbejSZ2E"
|
||||
version = "UyNuFWXF"
|
13
mods/fairy-lights.pw.toml
Normal file
13
mods/fairy-lights.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Fairy Lights"
|
||||
filename = "fairylights-7.0.0-1.20.1.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "7b392b908492be1dbfc84b72ae6445db8bb891dd"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 4961775
|
||||
project-id = 233342
|
@ -1,13 +1,13 @@
|
||||
name = "GeckoLib"
|
||||
filename = "geckolib-forge-1.20.1-4.7.1.2.jar"
|
||||
name = "Geckolib"
|
||||
filename = "geckolib-forge-1.20.1-4.7.2.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "c2b5d7ccf77f505996701ba477741d7e5cd034e1"
|
||||
mode = "metadata:curseforge"
|
||||
url = "https://cdn.modrinth.com/data/8BmcQJ2H/versions/AiVKLYep/geckolib-forge-1.20.1-4.7.2.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "40aefbb89e4a65c1955bd05c13cb656c0902e545741770d9395037f6a87684e91676935e0d5b7be0419abd1599272fa3aa245dc3976208b82f568d994813e314"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 6333474
|
||||
project-id = 388172
|
||||
[update.modrinth]
|
||||
mod-id = "8BmcQJ2H"
|
||||
version = "AiVKLYep"
|
||||
|
13
mods/hardcore-revival.pw.toml
Normal file
13
mods/hardcore-revival.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Hardcore Revival"
|
||||
filename = "hardcorerevival-forge-1.20.1-12.0.7.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/HqKoXaXz/versions/1nklKToo/hardcorerevival-forge-1.20.1-12.0.7.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "e6862828684af7f64d35cc481a128e0694a71d69a90c42a7cc8a9ab2d1d72f88f70ec540a4046dd5d52c4fb60478ba4465c4d38497c03a7cf08b08f103c826c3"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "HqKoXaXz"
|
||||
version = "1nklKToo"
|
13
mods/iceberg.pw.toml
Normal file
13
mods/iceberg.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Iceberg"
|
||||
filename = "Iceberg-1.20.1-forge-1.1.25.jar"
|
||||
side = "client"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/5faXoLqX/versions/BQ8rJPXV/Iceberg-1.20.1-forge-1.1.25.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "8612097a014fcd6343a092cfeddb0e9d57c5a665b9ac61603a7760d156abd048ac548db55e750b369700b0475661e554f4b92b44677edf07574d4f9ffa42558c"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "5faXoLqX"
|
||||
version = "BQ8rJPXV"
|
13
mods/interiors.pw.toml
Normal file
13
mods/interiors.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Create: Interiors"
|
||||
filename = "interiors-0.5.6+forge-mc1.20.1-local.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/r4Knci2k/versions/sFv3NBS4/interiors-0.5.6%2Bforge-mc1.20.1-local.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "1c84e2a566cc03fc88fc27a55dcbac7a85f91781c73a8993c9761ac94b13eef93b04a89ffecb75d94a07e367ee09e78d2f8dc1e99a06163fc60cddef708d91a7"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "r4Knci2k"
|
||||
version = "sFv3NBS4"
|
13
mods/item-borders.pw.toml
Normal file
13
mods/item-borders.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Item Borders"
|
||||
filename = "ItemBorders-1.20.1-forge-1.2.2.jar"
|
||||
side = "client"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/b1fMg6sH/versions/JUW31p4D/ItemBorders-1.20.1-forge-1.2.2.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "9822eaa5debee8b8a67c185fec2f03f4a5bf25513cb4ef3567266dab44280564050ebcf730b43782e1f12a4d6e19668bdedb60279c1b53925ccbed5b6680ba3b"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "b1fMg6sH"
|
||||
version = "JUW31p4D"
|
@ -3,11 +3,11 @@ filename = "kotlinforforge-4.11.0-all.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "1fd8acfd75a2be2dc3cdcc7e816482b2e427d6e5"
|
||||
mode = "metadata:curseforge"
|
||||
url = "https://cdn.modrinth.com/data/ordsPcFz/versions/hmeyC41q/kotlinforforge-4.11.0-all.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "d72707078f0c4fde78981c638ca976722f22a64ce74bdb489258790fe9886d763a7b1e0dfbc5429ddd3105d8a65d177f06242dfb1457e219e56c70dd3e8cbf2c"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 5402061
|
||||
project-id = 351264
|
||||
[update.modrinth]
|
||||
mod-id = "ordsPcFz"
|
||||
version = "hmeyC41q"
|
||||
|
13
mods/lexiconfig.pw.toml
Normal file
13
mods/lexiconfig.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Lexiconfig"
|
||||
filename = "lexiconfig-forge-1.4.18-1.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/D157Rgyf/versions/iv3Hdpa6/lexiconfig-forge-1.4.18-1.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "6050924134d594dd7031061bfe70b34429842516b388262335024206e50993794baa3697f08053bd001e728d3ce42875ee5215e819ed2c595a002cec46c40985"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "D157Rgyf"
|
||||
version = "iv3Hdpa6"
|
13
mods/macaws-furniture.pw.toml
Normal file
13
mods/macaws-furniture.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Macaw's Furniture"
|
||||
filename = "mcw-furniture-3.3.0-mc1.20.1forge.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/dtWC90iB/versions/jQcvCX79/mcw-furniture-3.3.0-mc1.20.1forge.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "aeb7537b9bb41615418e32d8383d6a0ea8b337554593752aa39ed955d50e1faa025c35a1d4bdb66fe49f9930a33d3becb8c897ee438c353da44d5fc8b7dfbdb8"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "dtWC90iB"
|
||||
version = "jQcvCX79"
|
13
mods/macaws-lights-and-lamps.pw.toml
Normal file
13
mods/macaws-lights-and-lamps.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Macaw's Lights and Lamps"
|
||||
filename = "mcw-lights-1.1.2-mc1.20.1forge.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/w4an97C2/versions/gqevfDHf/mcw-lights-1.1.2-mc1.20.1forge.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "2ee82b5ca8d964cff83ea41d38bfa5e4c9a9bedb7bccf891ce269d25238bfeb3f46b428a4d6ff6695a69907046cec22b356f3feefe94564bfa4cc081df8fcb72"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "w4an97C2"
|
||||
version = "gqevfDHf"
|
13
mods/obscure-tooltips.pw.toml
Normal file
13
mods/obscure-tooltips.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Obscure Tooltips"
|
||||
filename = "Obscure-Tooltips-2.2.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "8cc7c31f79a11bef3d5cc69b1740f07d5adbfc96"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 4686579
|
||||
project-id = 715660
|
13
mods/prism-lib.pw.toml
Normal file
13
mods/prism-lib.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Prism"
|
||||
filename = "Prism-1.20.1-forge-1.0.5.jar"
|
||||
side = "client"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/1OE8wbN0/versions/FFyss87M/Prism-1.20.1-forge-1.0.5.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "b73de6bf581f5f28d86baa3eeb8ac0ff30aa9a35280da7fa528547bbb9e0aff5f931b434e143a4dfc4d11ae03ce52bc1cfa359beb8b656880e75bf1aa8d91b81"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "1OE8wbN0"
|
||||
version = "FFyss87M"
|
13
mods/simply-light.pw.toml
Normal file
13
mods/simply-light.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Simply Light"
|
||||
filename = "simplylight-1.20.1-1.4.6-build.50.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "cfd851ffd2c3b451a96a19207dc6e084c1dfec73"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 4832944
|
||||
project-id = 300331
|
13
mods/sodium-dynamic-lights.pw.toml
Normal file
13
mods/sodium-dynamic-lights.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Sodium Dynamic Lights"
|
||||
filename = "sodiumdynamiclights-forge-1.0.10-1.20.1.jar"
|
||||
side = "client"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/PxQSWIcD/versions/I156ee3A/sodiumdynamiclights-forge-1.0.10-1.20.1.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "b8527199be5a8b4bc758a4f320586b5886e6ff657718f52d464386b1e3c695d7bfe644e2ef9487a869c93c0866818995ecd47b9e1a19054929242682e37f58b7"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "PxQSWIcD"
|
||||
version = "I156ee3A"
|
13
mods/sodium-options-api.pw.toml
Normal file
13
mods/sodium-options-api.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Sodium Options API"
|
||||
filename = "sodiumoptionsapi-forge-1.0.10-1.20.1.jar"
|
||||
side = "client"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/Es5v4eyq/versions/d0EFLitO/sodiumoptionsapi-forge-1.0.10-1.20.1.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "20b11f1582df3df3d351e0cffcfc8b97453e2d73164fbad46d3f4eb960cab57d8f708d84b818782ef019d5cd9494ce001161f753623680516a191d6f510ebb79"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "Es5v4eyq"
|
||||
version = "d0EFLitO"
|
13
mods/vibrative-voice.pw.toml
Normal file
13
mods/vibrative-voice.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Vibrative Voice"
|
||||
filename = "VibrativeVoice-forge-1.20.1-1.2.0.jar"
|
||||
side = "server"
|
||||
|
||||
[download]
|
||||
url = "https://cdn.modrinth.com/data/Wa9vzNNU/versions/c1nQyYLn/VibrativeVoice-forge-1.20.1-1.2.0.jar"
|
||||
hash-format = "sha512"
|
||||
hash = "6d15dcb3eaaa38cc41635ec732ec732111d6348dda9b90142e6c30a136cc6102afe2f52575086fe86b1f471a0254486046e40487840e6991f984bca666c3ff67"
|
||||
|
||||
[update]
|
||||
[update.modrinth]
|
||||
mod-id = "Wa9vzNNU"
|
||||
version = "c1nQyYLn"
|
13
mods/voidscape.pw.toml
Normal file
13
mods/voidscape.pw.toml
Normal file
@ -0,0 +1,13 @@
|
||||
name = "Voidscape"
|
||||
filename = "Voidscape-1.20.1-1.5.389.jar"
|
||||
side = "both"
|
||||
|
||||
[download]
|
||||
hash-format = "sha1"
|
||||
hash = "794b864e1dd1bab20b8cc3f16f729b649e61abee"
|
||||
mode = "metadata:curseforge"
|
||||
|
||||
[update]
|
||||
[update.curseforge]
|
||||
file-id = 5179872
|
||||
project-id = 251730
|
Reference in New Issue
Block a user