# 🛠️Configuration files

## Config.yml file content

```yaml
# EnchantmentSlots by @PQguanfang
#
# READ THE WIKI: enchantmentslots.superiormc.cn

# Languages
language: en_US

debug: false

paper-api:
  skull: false

# Settings
settings:
  item-can-be-enchanted:
    # Auto add enchantment slot lore for all item that can be enchanted.
    # If disabled, only item has enchantment slot NBT will display lore.
    # Maybe lead to server lag after enable.
    auto-add-lore: false
    apply-items:
      - wooden_pickaxe
      - stone_pickaxe
      - iron_pickaxe
      - golden_pickaxe
      - diamond_pickaxe
      - netherite_pickaxe
      - wooden_hoe
      - stone_hoe
      - iron_hoe
      - golden_hoe
      - diamond_hoe
      - netherite_hoe
      - wooden_axe
      - stone_axe
      - iron_axe
      - golden_axe
      - diamond_axe
      - netherite_axe
      - wooden_shovel
      - stone_shovel
      - iron_shovel
      - golden_shovel
      - diamond_shovel
      - netherite_shovel
      - wooden_sword
      - stone_sword
      - iron_sword
      - golden_sword
      - diamond_sword
      - netherite_sword
      - fishing_rod
      - trident
      - elytra
      - bow
      - crossbow
      - carrot_on_a_stick
      - shield
      - turtle_helmet
      - leather_helmet
      - chainmail_helmet
      - iron_helmet
      - golden_helmet
      - diamond_helmet
      - netherite_helmet
      - leather_chestplate
      - chainmail_chestplate
      - iron_chestplate
      - golden_chestplate
      - diamond_chestplate
      - netherite_chestplate
      - leather_leggings
      - chainmail_leggings
      - iron_leggings
      - golden_leggings
      - diamond_leggings
      - netherite_leggings
      - leather_boots
      - chainmail_boots
      - iron_boots
      - golden_boots
      - diamond_boots
      - netherite_boots
      - enchanted_book
      - book
      - mace
    # Require MythicChanger.
    # EnchantmentSlots built-in a very simple match item system, allow you put item ID only here.
    # For more complex use, please install MythicChanger and use it's match item rules!
    match-item:
      material:
        - wooden_pickaxe
        - stone_pickaxe
        - iron_pickaxe
        - golden_pickaxe
        - diamond_pickaxe
        - netherite_pickaxe
        - wooden_hoe
        - stone_hoe
        - iron_hoe
        - golden_hoe
        - diamond_hoe
        - netherite_hoe
        - wooden_axe
        - stone_axe
        - iron_axe
        - golden_axe
        - diamond_axe
        - netherite_axe
        - wooden_shovel
        - stone_shovel
        - iron_shovel
        - golden_shovel
        - diamond_shovel
        - netherite_shovel
        - wooden_sword
        - stone_sword
        - iron_sword
        - golden_sword
        - diamond_sword
        - netherite_sword
        - fishing_rod
        - trident
        - elytra
        - bow
        - crossbow
        - carrot_on_a_stick
        - shield
        - turtle_helmet
        - leather_helmet
        - chainmail_helmet
        - iron_helmet
        - golden_helmet
        - diamond_helmet
        - netherite_helmet
        - leather_chestplate
        - chainmail_chestplate
        - iron_chestplate
        - golden_chestplate
        - diamond_chestplate
        - netherite_chestplate
        - leather_leggings
        - chainmail_leggings
        - iron_leggings
        - golden_leggings
        - diamond_leggings
        - netherite_leggings
        - leather_boots
        - chainmail_boots
        - iron_boots
        - golden_boots
        - diamond_boots
        - netherite_boots
        - enchanted_book
        - book
        - mace
  # This is when will the plugin trying adds enchantment slot NBT for an enchantable item which also means set fixed
  # enchantment slot for an item.
  set-slot-trigger:
    add-hide-enchant-flag: false
    black-book: true
    # This option support ProtocolLib only.
    # Enable this maybe improve plugin performance.
    SetSlotPacket:
      enabled: true
      # Only plugin has enchantment slot NBT will be checked.
      remove-illegal-excess-enchant: true
    EnchantItemEvent:
      enabled: true
      # Whether cancel the enchantment event or remove extra enchantment if
      # item reached slot limit after enchant.
      cancel-if-reached-slot: false
    AnvilItemEvent:
      enabled: true
      # If your item has display issue after use anvil, you can try to enable this.
      update-item: false
    SmithItemEvent:
      enabled: true
      # If set to true, we will reset old item enchantment slot and then regenerate new slot
      # value for new item, enchantments won't affect by this option.
      reset-previous-slot: true
      # If set to true, if new generated slot value smaller than existed slot value, we will still
      #      # keep use existed value as new upgraded item's slot limit.
      keep-greater-slot: true
    # Enable this maybe improve plugin performance.
    # Maybe has incompatible issue with other plugins.
    InventoryClickEvent:
      enabled: false
  # Only item that can be enchanted will be added lore.
  # If item don't have enchantment slot NBT, plugin will auto calculate it default slot as max slot.
  add-lore:
    # Require MythicChanger.
    # Which item will display lore.
    match-item:
      not:
        material:
          - book
          - enchanted_book
    # Book will no longer display enchantment slot lore.
    black-book: true
    # This option support ProtocolLib only.
    # Enable this maybe improve plugin performance.
    only-in-player-inventory: true
    # Whether only-in-player-inventory option only checks chest UI.
    check-chests-only: true
    # Support plugin:
    #   - eco (Do not change unless you are know what you are doing)
    #   - ProtocolLib (Classic and stable choice)
    use-listener-plugin: ProtocolLib
    # ProtocolLib Support value:
    #    LOWEST(0),
    #    LOW(1),
    #    NORMAL(2),
    #    HIGH(3),
    #    HIGHEST(4),
    #    MONITOR(5)
    # eco Support value:
    #    CUSTOM(250),
    #    LOWEST(100),
    #    LOW(200),
    #    HIGH(300),
    #    HIGHEST(400)
    # The value after the value just a number help you know it's level, do not type them in option.
    packet-listener-priority: LOWEST
    # Does not support other packed-based item, enchants plugins.
    # Like EcoEnchants, EcoItems. (You can also try eco as use-listener-plugin, then change packet-listener-priority)
    # They will always put their lore at first location and EnchantmentSlots can do nothing about it.
    at-first-or-last: false
    # Do not change this option when server started!
    # Only change this if your server has stopped!
    display-value:
      - "&#ff3300Enchantment Slots: {enchant_amount}/{slot_amount}"
      - "{enchants}"
      - "{empty_slots}"
    placeholder:
      enchants:
        # Other placeholder: {enchant_level_roman}, {raw_enchant_name}
        format: '&6  {enchant_name} {enchant_level}'
        sort: true
        level-hide-one: true
      empty-slots:
        format: '&7  --- Empty Slot ---'
  default-slots:
    default: 3
    vip: 5
  #default-slots-by-item:
  #  diamond_sword:
  #    default: 20
  #    vip: 30
  #  # You can type third plugin item ID here.
  #  # For now, EnchantmentSlots support:
  #  # MMOItems, EcoItems, EcoArmor, MythicMobs, NeigeItems, ItemsAdder, Oraxen, ExecutableItems.
  #  superior_sword:
  #    default: 100
  #    vip: 200
  # Only work for extra slot items.
  # Remove this section if you don't want this feature.
  max-slots:
    default: 10
    vip: 15
  # max-slots-by-item:
  # Similar to default-slots-by-item, remove the section to not use this feature.
  slots-conditions:
    vip:
      1:
        type: permission
        permission: 'group.vip'
  # Whether you use item tier instead of item ID to identify item slots.
  # If this item plugin don't have tier, will still use Item ID as identify.
  use-tier-identify-slots: false
  close-inventory-if-reached-limit: true
  # Whether cancel add slot or just set item slot to max slot value and still consume add slot item
  # if item reached max slot limit after using add slot items.
  cancel-add-slot-if-reached-max-slot: true

add-slot-items:
  A:
    material: PAPER
    name: '&dExtra Enchantment Slot &7(+1)'
    lore:
      - '&fDrag this item into your item to use!'
      - '&fApply for all items but have only 50% success rate!'
    add-slots: 1
    chance: 50
    conditions: []
    success-actions:
      1:
        type: sound
        sound: 'block.note_block.harp'
      2:
        type: message
        message: '&#98FB98[EnchantmentSlots] &aAdd {amount} extra enchantment slot to your item!'
    fail-actions:
      1:
        type: sound
        sound: 'block.note_block.bass'
      2:
        type: message
        message: '&#98FB98[EnchantmentSlots] &cYou are not very lucky, slot item has broken!'
    apply-items:
      - '*'
  B:
    material: PAPER
    custom-model-data: 5
    name: '&dExtra Enchantment Slot &7(+5)'
    lore:
      - '&fDrag this item into your item to use!'
      - '&f100% success but only work for diamond sword.'
    add-slots: 5
    conditions:
      - 'none'
    success-actions:
      1:
        type: sound
        sound: 'block.note_block.harp'
      2:
        type: message
        message: '&#98FB98[EnchantmentSlots] &aAdd {amount} extra enchantment slot to your item!'
    fail-actions:
      1:
        type: sound
        sound: 'block.note_block.bass'
      2:
        type: message
        message: '&#98FB98[EnchantmentSlots] &cYou are not very lucky, slot item has broken!'
    apply-items:
      - 'diamond_sword'
    #black-items:
    #  - 'iron_sword'

# Enchant Level
enchant-level:
  1: ①
  2: ②
  3: ③
  4: ④
  5: ⑤
  6: ⑥

# Enchant Name
enchant-name:
  # Default providing vanilla enchantments here.
  # For third enchantment plugins:
  # Plugin will auto get enchantment display name that provided by EcoEnchants and ExcellentEnchants
  # If you are not using the 2 plugins, please using "Enchantment Key: Enchantment Display Name" format
  # Like:
  # an_other_enchantment: 'This is just an example here!'
  protection: 'Protection'
  fire_protection: 'Fire Protection'
  feather_falling: 'Feather Falling'
  blast_protection: 'Blast Protection'
  projectile_protection: 'Projectile Protection'
  respiration: 'Respiration'
  aqua_affinity: 'Aqua Affinity'
  thorns: 'Thorns'
  depth_strider: 'Depth Strider'
  frost_walker: 'Frost Walker'
  binding_curse: 'Binding Curse'
  sharpness: 'Sharpness'
  smite: 'Smite'
  bane_of_arthropods: 'Bane of Arthropods'
  knockback: 'Knockback'
  fire_aspect: 'Fire Aspect'
  looting: 'Looting'
  sweeping: 'Sweeping'
  # For 1.21+
  sweeping_edge: 'Sweeping Edge'
  efficiency: 'Efficiency'
  silk_touch: 'Silk Touch'
  unbreaking: 'Unbreaking'
  fortune: 'Fortune'
  power: 'Power'
  punch: 'Punch'
  flame: 'Flame'
  infinity: 'Infinity'
  luck_of_the_sea: 'Luck of the Sea'
  lure: 'Lure'
  loyalty: 'Loyalty'
  impaling: 'Impaling'
  riptide: 'Riptide'
  channeling: 'Channeling'
  multishot: 'Multishot'
  quick_charge: 'Quick Charge'
  piercing: 'Piercing'
  mending: 'Mending'
  vanishing_curse: 'Vanishing Curse'
  soul_speed: 'Soul Speed'
  wind_burst: 'Wind Burst'
  breach: 'Breach'
  density: 'Density'
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://enchantmentslots.superiormc.cn/for-4.1.8/info/configuration-files.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
