Skip to content

Item Definitions and Sets

Item files are stored under items/*.yml; set files are stored under sets/*.yml. Item definitions determine how a stable item ID generates an ItemStack. Set definitions determine bonuses when multiple set pieces are equipped.

Item definition fields

FieldTypeRequiredDefaultDescription
idstringYesUnique item ID used by other modules.
materialstringYesVanilla material (Bukkit Material enum name).
display_namestringNoDisplay name (MiniMessage format, supports %variable% placeholders).
item_namestringNoInternal item name (1.21+ item component name, cannot be changed by anvil).
lorelist<string>No[]Lore text list (MiniMessage format, supports %variable% placeholders).
effectslistNoItem effects list (unified format, see below).
componentsobjectNoItem component configuration (see below).
setobjectNoSet membership info (id and piece).
conditionsobjectNoEquipment conditions.
repairobjectNoRepair configuration.
updateobjectNoAuto-update configuration.
actionsobjectNoTrigger action configuration.

Effects system

Item effects use a unified effects list with a type field:

typeDescription
variablesExpression engine variables for display_name and lore placeholder rendering.
ea_attributeEmakiAttribute PDC attributes written to item PDC.
es_skillEmakiSkills skill attachment, granted when equipped; payload uses the es_skills list.
yaml
effects:
  - type: "variables"
    variables:
      physical_attack: 12
      physical_crit_rate: 5
  - type: "ea_attribute"
    ea_attributes:
      physical_attack: 12.0
      physical_crit_rate: 5.0
  - type: "es_skill"
    es_skills:
      - "fireball"
      - "flame_dash"

Current configs no longer use ea_attribute_meta. Put real attribute output in explicit ea_attributes. variables are only text/placeholder context and do not automatically become Attribute PDC attributes.

Components

ComponentTypeDescription
custom_model_dataobject/integerCustom model data (1.21.4+ supports floats/flags/strings/colors).
item_modelstringItem model NamespacedKey (1.21+ item model system).
tooltip_stylestringTooltip style NamespacedKey.
enchantmentsmap/listEnchantment config. Format {enchant_id: level} or ["enchant_id:level"].
item_flagslist<string>Item flags (e.g. HIDE_ENCHANTS, HIDE_ATTRIBUTES).
hide_tooltipbooleanHide entire tooltip.
unbreakablebooleanUnbreakable.
enchantment_glint_overridebooleanForce show/hide enchantment glint.
max_stack_sizeintegerMax stack size (1–99).
raritystringItem rarity (COMMON, UNCOMMON, RARE, EPIC).
damageintegerCurrent durability damage.
max_damageintegerMax durability.
enchantableintegerEnchantment level weight.
attribute_modifierslistVanilla attribute modifier list.

Set definitions

Set files (sets/*.yml) define:

FieldDescription
idSet ID.
display_nameSet display name.
piecesMap of piece IDs to their item sources.
thresholdsList of piece-count thresholds with effects.
lore_configLore rendering configuration for set status display.

Set bonuses are refreshed based on config.yml > set_bonus.refresh_triggers.