0

My computer crashed and my level.dat, level.dat_old and player data were 0 bytes.
I knew the seed, so I created a new world with the same seed and copied all the files from the old world (apart from the level.dat and level.dat_old) into it.

The world is back but my Recipe Book is broken.
There are no entries in it, and if I pick something up, e.g. Planks, it doesn't add new recipes. Normally, when you pick up something new it should show a popup and add new items to the Recipe Book.
If I craft something from memory then that does get added to the book, but things I haven't crafted yet and related items are not shown.

The level.dat has a player tag with a Recipe Book tag in it, however, this doesn't seem to store the triggers.

I am okay with my old Recipe Book being lost, but how do I reset the triggers so that Minecraft thinks that anything I pick up is "new", and adds items to the book?

  • Have you tried /recipe take @s *? – Fabian Röling Sep 18 at 17:08
  • No I haven't. How does that work? The wildcard looks like it is going to give me all recipes in the game. That's not what I want. – opticyclic Sep 18 at 18:15
  • I just tried it out. That command just clears the recipes in the book. Essentially it puts me where I already am. It doesn't affect the advancements. /advancement revoke @s everything resets it like I want but it also resets all my advancements too which I don't want. – opticyclic Sep 18 at 19:58
  • This command should remove all minecraft advancements based upon the recipes root: /advancement revoke @s from minecraft:recipes/root – Zach K Sep 18 at 20:06
  • Advancements? Your problem was the recipe book. If you empty your recipe book, that should put you back to the start, so you can then put stuff into your inventory to unlock the corresponding recipes. – Fabian Röling Sep 18 at 22:06
2

While it is true that the level.dat file stores the recipes available for each player in the recipe book specifically, recipe book triggers are stored as advancements alongside of the other player advancements in their respective folder.

You can revoke all of recipe related advancements by running the command:

/advancement revoke @s from minecraft:recipes/root

However, I recommend you remove all recipes using /recipe take @s * before you remove all of your recipe advancements, otherwise you might run into some recipe conflict issues.

Technically, if you wanted to restore your actual recipe book, you could manually give yourself all of the recipes for the advancements that you currently have, though this would probably take longer than just getting the recipes back normally.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.