TESSERA

content 01

Items

Every .yml file in items/ is loaded, including files in subfolders. Each top-level key is one item id. A file can hold as many items as you like.

Keys

KeyTypeDefaultNotes
materialmaterial nameSTONEAny Bukkit material. Invalid names stop the item from loading.
display_nameMiniMessagethe idUsed as the item name.
lorelist of MiniMessageemptyOne entry per line.
custom_model_datainteger0Applied only when greater than zero.
unbreakablebooleanfalseSets the unbreakable flag.
max_stack_sizeintegerunsetApplied only when greater than zero.

There are no other item keys in 2.0.0. See Not implemented below before copying examples out of the config comments.

Example

# plugins/Tessera/items/ruby.yml
ruby:
  material: EMERALD
  display_name: "<gradient:#ff416c:#ff4b2b><bold>Ruby</bold></gradient>"
  lore:
    - "<gray>A precious crimson gemstone"
    - "<dark_gray>Common Material"
  custom_model_data: 10001
  max_stack_size: 64

ruby_sword:
  material: DIAMOND_SWORD
  display_name: "<gradient:#ff416c:#ff4b2b><bold>Ruby Sword</bold></gradient>"
  lore:
    - "<gray>Forged from crystallized ruby"
    - "<red>+10 Attack Damage"
  custom_model_data: 10002
  unbreakable: true

That file ships with the plugin.

Ids

The id is the key, ruby above. It is what you type in commands, what a recipe refers to as tessera:ruby, and what a block drop table refers to. Ids are stored in the item's PersistentDataContainer when the stack is built, so the plugin can recognise the item later even after it has been moved between inventories.

/tessera get ruby 16
/tessera give Steve ruby_sword
/tessera inspect          # shows the stored id of the held item

Text formatting

display_name and lore are MiniMessage. Glyphs are substituted before parsing, so :ruby: and <glyph:ruby> both work inside item text. See Glyphs and HUD.

Custom model data

Set custom_model_data yourself and point your model at the same number in the resource pack. The generated pack does not write item models for you. It writes the font providers, pack.mcmeta and the pack icon. Put your own models and textures into plugins/Tessera/pack/assets/ and they are zipped with the rest. See Resource pack.

Not implemented

The comment blocks in config.yml and the Modrinth page show item keys that the parser does not read in 2.0.0:

  • mechanics of any kind: lifesteal, explosive strike, thunder, poison, auto smelt, projectile tuning, click actions, cooldowns, mana costs and particle effects.
  • max_durability, food, stat modifiers such as attack speed or armour toughness, and rarity.

The parser ignores those keys and the mechanics registry is empty, so adding them does nothing.