Display name, lore, enchantments, attributes, persistent data and crafting recipes: the 2026 technical guide to custom items on Paper, including the Adventure 5 break and exactly what needs a resource pack.
Not unless you want a different texture or 3D model. The coloured name, the lore, enchantments, glint, attributes, persistent data and the crafting recipe are all server side. Only a visual that differs from the base material needs a resource pack installed on every client.
Not unless you want a different texture or 3D model. The coloured name, the lore, enchantments, glint, attributes, persistent data and the crafting recipe are all server side. Only a visual that differs from the base material needs a resource pack installed on every client.
Paper 26.x ships Adventure 5, which removed API that had previously only been deprecated, mostly around messages and text shown to players. Item display name and lore now go through Component, with displayName(Component) and lore(List<Component>), both of which also exist on the 1.21 API.
Use the ItemMeta PersistentDataContainer under a NamespacedKey owned by your plugin. Never match on the display name: a player can rename any item at an anvil, and the day you fix a typo in your own wording, every copy already in circulation stops being recognised.