BetterNether

BetterNether

30M Downloads

[Bug] bone_block_bone_button.json recipe not generating

brandonJensen opened this issue ยท 1 comments

commented

What happened?

I noticed that the bone button has no crafting recipe, so I decided to try to fix that.

In src\main\generated\data\betternether\recipes, "bone_block_bone_button.json" is missing. I can easily add that, and the recipe works just fine.

However, I'm pretty sure the "generated" folder means it's supposed to be written automatically. I found where it's supposed to use a recipe builder in BCLIb, and it throws a warning for only that recipe that it's only one item, so it should be shapeless. I can't see any place where that blocks it from writing it, but I can fix the issue in src\main\java\org\betterx\betternether\recipes\RecipesHelper.java by replacing line 15:
private static final String[] SHAPE_BUTTON = new String[]{"#"};
with:
private static final String[] SHAPE_BUTTON = null;

This makes BCLib treat it as shapeless like it wanted, so I don't get the warning.

BUT I can't confirm that it fixes the problem, because I can't figure out what triggers the file generation. I tried deleting bone_block_bone_plate.json to see if it would regenerate it, but it doesn't. I'm using intelliJ. I tried running client, and gradlew build, but neither of those rebuilt the plate recipe.

How do I autobuild the "generated" folder?

BetterNether

9.0.11

BCLib

3.0.14

Fabric API

0.91.0+1.20.1

Fabric Loader

0.15.3

Minecraft

1.20.1

Relevant log output

No response

Other Mods

Just what's in the dev environment, which includes:
wthit
emi
commented

This is related, so I'll just put it here instead of another issue.
This is technically a bug, but it's a very minor one that you'd only ever notice in the source code. But it's also really easy to fix.
In the advancement requirements for "make_crying", two of the conditions are backward.
The json is another generated file like the recipes above, so the root of it is in
src\main\java\org\betterx\datagen\betternether\advancements\NetherAdvancementDataProvider.java.

Just swap lines 98 and 102, the strings "made_crying" and "made_blue_weeping".

I know it doesn't affect anything because you need all 4 to get the advancement; it's just something I noticed.