Skip to content

Commit 3a7036b

Browse files
committed
Minor alchemy infusion recipe adjustments
- add nether stones cycle (basalt->netherrack->blackstone->basalt) - add pink petals to flower cycle (right before sunflower) - turn 2-way conversions into cycle definitions (i.e. set standard group/recipe names) - reorder log/sapling cycles to alternate "easy" and "difficult" tree shapes (makes single-step log conversion viable in combination with only farming trees with "simple" shape) - massively increase cost of sapling cycle (call it the cost of not exploring) - slightly increase cost of froglight cycle (call it a luxury tax) - stare at conjuration recipes, menacingly
1 parent 4bc3909 commit 3a7036b

29 files changed

+136
-65
lines changed

Fabric/src/main/java/vazkii/botania/fabric/data/xplat/ManaInfusionProvider.java

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -84,9 +84,13 @@ public void buildRecipes(RecipeOutput consumer) {
8484

8585
alchemy(consumer, id("rotten_flesh_to_leather"), new ItemStack(Items.LEATHER), ingr(Items.ROTTEN_FLESH), 600);
8686

87-
cycle(consumer, 40, "botania:log_cycle", Blocks.OAK_LOG, Blocks.SPRUCE_LOG, Blocks.BIRCH_LOG, Blocks.JUNGLE_LOG, Blocks.ACACIA_LOG, Blocks.DARK_OAK_LOG, Blocks.MANGROVE_LOG, Blocks.CHERRY_LOG);
88-
cycle(consumer, 40, "botania:froglight_cycle", Blocks.OCHRE_FROGLIGHT, Blocks.VERDANT_FROGLIGHT, Blocks.PEARLESCENT_FROGLIGHT);
89-
cycle(consumer, 120, "botania:sapling_cycle", Blocks.OAK_SAPLING, Blocks.SPRUCE_SAPLING, Blocks.BIRCH_SAPLING, Blocks.JUNGLE_SAPLING, Blocks.ACACIA_SAPLING, Blocks.DARK_OAK_SAPLING, Blocks.MANGROVE_PROPAGULE, Blocks.CHERRY_SAPLING);
87+
cycle(consumer, 40, "botania:log_cycle",
88+
Blocks.OAK_LOG, Blocks.DARK_OAK_LOG, Blocks.SPRUCE_LOG, Blocks.MANGROVE_LOG,
89+
Blocks.BIRCH_LOG, Blocks.CHERRY_LOG, Blocks.JUNGLE_LOG, Blocks.ACACIA_LOG);
90+
cycle(consumer, 100, "botania:froglight_cycle", Blocks.OCHRE_FROGLIGHT, Blocks.VERDANT_FROGLIGHT, Blocks.PEARLESCENT_FROGLIGHT);
91+
cycle(consumer, 12000, "botania:sapling_cycle",
92+
Blocks.OAK_SAPLING, Blocks.DARK_OAK_SAPLING, Blocks.SPRUCE_SAPLING, Blocks.MANGROVE_PROPAGULE,
93+
Blocks.BIRCH_SAPLING, Blocks.CHERRY_SAPLING, Blocks.JUNGLE_SAPLING, Blocks.ACACIA_SAPLING);
9094

9195
deconstruct(consumer, id("glowstone_deconstruct"), Items.GLOWSTONE_DUST, Blocks.GLOWSTONE);
9296
deconstruct(consumer, id("quartz_deconstruct"), Items.QUARTZ, Blocks.QUARTZ_BLOCK);
@@ -101,26 +105,21 @@ public void buildRecipes(RecipeOutput consumer) {
101105
alchemy(consumer, id("chiseled_stone_bricks"), new ItemStack(Blocks.CHISELED_STONE_BRICKS, 1), ingr(Blocks.STONE_BRICKS), 150);
102106
alchemy(consumer, id("ice"), new ItemStack(Blocks.ICE), ingr(Blocks.SNOW_BLOCK), 2250);
103107

104-
// TODO: These can use the `cycle` function, right?? check when datagen operational
105-
final String vineLilypadGroup = "botania:vine_and_lily_pad_cycle";
106-
alchemy(consumer, id("vine_to_lily_pad"), new ItemStack(Blocks.LILY_PAD), ingr(Blocks.VINE), 320, vineLilypadGroup);
107-
alchemy(consumer, id("lily_pad_to_vine"), new ItemStack(Blocks.VINE), ingr(Blocks.LILY_PAD), 320, vineLilypadGroup);
108+
cycle(consumer, 320, "botania:vine_and_lily_pad_cycle", Items.LILY_PAD, Items.VINE);
108109

109110
cycle(consumer, 200, "botania:fish_cycle", Items.COD, Items.SALMON, Items.TROPICAL_FISH, Items.PUFFERFISH);
110111
cycle(consumer, 6000, "botania:crop_cycle", Items.COCOA_BEANS, Items.WHEAT_SEEDS, Items.POTATO, Items.CARROT, Items.BEETROOT_SEEDS, Items.MELON_SEEDS, Items.PUMPKIN_SEEDS);
111112

112113
alchemy(consumer, id("potato_unpoison"), new ItemStack(Items.POTATO), ingr(Items.POISONOUS_POTATO), 1200);
113114
alchemy(consumer, id("blaze_rod_to_nether_wart"), new ItemStack(Items.NETHER_WART), ingr(Items.BLAZE_ROD), 4000);
114115

115-
cycle(consumer, 200, "", Items.GUNPOWDER, Items.FLINT);
116+
cycle(consumer, 200, "botania:gunpowder_and_flint_cycle", Items.GUNPOWDER, Items.FLINT);
116117

117118
alchemy(consumer, id("book_to_name_tag"), new ItemStack(Items.NAME_TAG), ingr(Items.WRITABLE_BOOK), 6000);
118119

119120
alchemy(consumer, id("wool_deconstruct"), new ItemStack(Items.STRING, 3), ingr(ItemTags.WOOL), 100);
120121

121-
final String cactusSlimeGroup = "botania:cactus_and_slime_cycle";
122-
alchemy(consumer, id("cactus_to_slime"), new ItemStack(Items.SLIME_BALL), ingr(Blocks.CACTUS), 1200, cactusSlimeGroup);
123-
alchemy(consumer, id("slime_to_cactus"), new ItemStack(Blocks.CACTUS), ingr(Items.SLIME_BALL), 1200, cactusSlimeGroup);
122+
cycle(consumer, 1200, "botania:cactus_and_slime_cycle", Items.SLIME_BALL, Items.CACTUS);
124123

125124
alchemy(consumer, id("ender_pearl_from_ghast_tear"), new ItemStack(Items.ENDER_PEARL), ingr(Items.GHAST_TEAR), 28000);
126125

@@ -136,16 +135,18 @@ public void buildRecipes(RecipeOutput consumer) {
136135
alchemy(consumer, id("soul_soil"), new ItemStack(Blocks.SOUL_SOIL), ingr(Blocks.SOUL_SAND), 120);
137136

138137
alchemy(consumer, id("stone_to_andesite"), new ItemStack(Blocks.ANDESITE), ingr(Blocks.STONE), 200);
139-
cycle(consumer, 200, "botania:stone_cycle", Blocks.DIORITE, Blocks.GRANITE, Blocks.ANDESITE);
138+
cycle(consumer, 200, "botania:stone_cycle", Blocks.ANDESITE, Blocks.DIORITE, Blocks.GRANITE);
140139
// TODO: move tuff and calcite to stone cycle
141140
cycle(consumer, 200, "botania:117_stone_cycle", Blocks.TUFF, Blocks.CALCITE, Blocks.DEEPSLATE);
141+
cycle(consumer, 200, "botania:nether_stone_cycle", Blocks.BASALT, Blocks.NETHERRACK, Blocks.BLACKSTONE);
142142

143143
cycle(consumer, 500, "botania:shrub_cycle", Blocks.FERN, Blocks.DEAD_BUSH, Blocks.SHORT_GRASS);
144144

145-
// NB: No wither rose is intentional
146-
cycle(consumer, 400, "botania:flower_cycle", Blocks.DANDELION, Blocks.POPPY, Blocks.BLUE_ORCHID, Blocks.ALLIUM, Blocks.AZURE_BLUET, Blocks.RED_TULIP, Blocks.ORANGE_TULIP,
147-
Blocks.WHITE_TULIP, Blocks.PINK_TULIP, Blocks.OXEYE_DAISY, Blocks.CORNFLOWER, Blocks.LILY_OF_THE_VALLEY,
148-
Blocks.SUNFLOWER, Blocks.LILAC, Blocks.ROSE_BUSH, Blocks.PEONY);
145+
// NB: No wither rose or sniffer flowers is intentional
146+
cycle(consumer, 400, "botania:flower_cycle", Blocks.DANDELION, Blocks.POPPY, Blocks.BLUE_ORCHID,
147+
Blocks.ALLIUM, Blocks.AZURE_BLUET, Blocks.RED_TULIP, Blocks.ORANGE_TULIP, Blocks.WHITE_TULIP,
148+
Blocks.PINK_TULIP, Blocks.OXEYE_DAISY, Blocks.CORNFLOWER, Blocks.LILY_OF_THE_VALLEY,
149+
Blocks.PINK_PETALS, Blocks.SUNFLOWER, Blocks.LILAC, Blocks.ROSE_BUSH, Blocks.PEONY);
149150

150151
alchemy(consumer, id("dripleaf_shrinking"), new ItemStack(Blocks.SMALL_DRIPLEAF), ingr(Items.BIG_DRIPLEAF), 500);
151152
alchemy(consumer, id("chorus_fruit_to_flower"), new ItemStack(Blocks.CHORUS_FLOWER), ingr(Items.POPPED_CHORUS_FRUIT), 10000);

Xplat/src/generated/resources/.cache/8482c265eb392e1fe5c3863ee4f62f310932c269

Lines changed: 27 additions & 23 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Xplat/src/generated/resources/data/botania/recipe/mana_infusion/acacia_log_to_dark_oak_log.json renamed to Xplat/src/generated/resources/data/botania/recipe/mana_infusion/acacia_log_to_oak_log.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Xplat/src/generated/resources/data/botania/recipe/mana_infusion/acacia_sapling_to_dark_oak_sapling.json renamed to Xplat/src/generated/resources/data/botania/recipe/mana_infusion/acacia_sapling_to_oak_sapling.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)