Curios API (Forge/NeoForge)

Curios API (Forge/NeoForge)

140M Downloads

Datapack functions fail to load if they contain a `curios add <slot> @s 1` unless `/reload` is used

James103 opened this issue ยท 0 comments

commented

Versions (Be specific, do not write "latest"):

  • Curios: 5.0.7.0
  • Forge: 40.1.20

Observed Behavior:

When loading a data pack that contains functions that themselves contain commands of the form curios add <slot> @s 1, those functions fail to load for the first time, and /reload must be used to make them load correctly.
It does not matter which slot type is being used. For testing purposes, I used Curios 5.0.7.0 alongside Curio of Undying 5.3.0.0, both for Minecraft 1.18.2. This adds Totems of Undying to the charm slot, making it valid.

Expected Behavior:

When loading a data pack that contains functions that themselves contain commands of the form curios add <slot> @s 1, those functions should load correctly, even for the first time, assuming the slot type being used is actually valid.

Steps to Reproduce:

  1. Create a new world with the following data pack, which should unlock a new Charm slot every 100 levels from level 200 to level 1,000: curios_progression.zip
  2. Notice that the functions by the name of curios_progression/add_charm_slot_* fail to load with a parse error on line 1: Unknown curio slot type charm Therefore, the rewards don't work as intended.
  3. Run /reload
  4. Notice the functions load correctly.
  5. Give yourself 100,000 experience: xp add @s 100000
  6. If the functions load correctly, a message is sent saying that a new charm slot is unlocked, and a new charm slot is actually unlocked, the datapack attached is working as intended.