Skip to content

[FEATURE] Add support for XpSeed player NBT tag #8

Description

@EternityLegacy

Feature Request/Issue Background:
I'm creating a vanilla-friendly datapack that lets players throw a Bottle o' Enchanting onto an enchanting table to reroll the enchantment offers (without needing to enchant an item first). The only reliable way to reroll the enchantment table offers is by changing the player's XpSeed, which currently isn't exposed.

Solution:
Add XpSeed (Int) to the list of supported player NBT fields so it can be read and modified with commands like:
/data get entity @s XpSeed
/data modify entity @s XpSeed set value <new_seed>

Alternatives Considered:
I've tried:

  • Forcing the player to enchant a dummy item (current workaround) - but this defeats the purpose of the "instant refresh" feature and is essentially no different than vanilla behavior.
  • Using external NBT editors (only works offline).

Additional Notes
My datapack aims to improve the enchanting experience while giving Bottles o' Enchanting a meaningful use. Exposing this NBT tag would allow datapacks to reroll enchantment offers, giving a more intuitive alternative to enchanting unwanted items just to refresh the enchantment seed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions