Skip to content

config.yml Full Config

Belongs to: Reference · Related: Attributes & Values · Soulbound

Annotation of all plugins/QinhItems/config.yml fields. Run /qi reload after changes to apply.

📄 Want the full original text + line-by-line annotations? See config.yml original line-by-line annotations.


Localization

yaml
language: zh_CN          # message language code

Items & Directories

yaml
items-folder: items      # item YAML directory (relative to plugin data dir, recursively scans *.yml)
default-type: misc       # default type when no type field is present
give-overflow-drop: true # /qi give drops naturally on the ground when the inventory is full

Write-Domain Isolation (write-domains)

Restricts the writable sources of different data domains. See Layers & Assembly → Write-Domain Policy.

yaml
write-domains:
  strict: true                 # strict domain isolation (false = lenient, warn only)
  runtime-owners:              # owners allowed in the RUNTIME domain
    - qi_admin
    - qi_ui
    - admin
  runtime-prefixes:            # or match by prefix
    - buff_
    - temp_
    - ui_
  layer-owners:                # owners allowed in the LAYER domain
    - strengthen
    - forge
    - gem
    - enchant
    - socket
    - refine
    - embed
    - upgrade
  layer-prefixes:
    - sys_
    - layer_

Action Routing (action-routing)

yaml
action-routing:
  strict: true     # true: error when a logic field (if/when/switch…) appears in an action; false: warn only

See Action System → Design.

Action Runtime Notifications

yaml
actions:
  notify-cooldown: true              # notify the player when triggered during cooldown
  notify-handler-unavailable: true   # notify when the handler is unavailable

Combat Module (combat)

yaml
combat:
  enabled: true              # false = pure item-library mode (no attributes applied)
  attribute-backend: auto    # auto | attributeplus | noop
  swing:
    vanilla-hit: true        # call Bukkit attack() on swing, let AP compute damage

See Attributes & Values.

Attribute Mapping (attribute-mapping)

ICVM key → AttributePlus display name.

yaml
attribute-mapping:
  attack_damage: "物理伤害"
  health: "生命"
  defense: "防御"
  attack_speed: "攻击速度"
  magic_damage: "魔法伤害"
  armor_penetration: "护甲穿透"
  max_mana: "最大魔法"
  mana_regen: "魔法恢复"
  # unmapped keys are passed through as lore; ignored if AP does not recognize them

Soulbound (soulbound)

yaml
soulbound:
  enabled: true
  lore-format: "&7{owner}的物品"      # placeholders {owner} {level}
  auto-bind-on-pickup: true
  scan-containers: true
  bypass-permission: "qinhitems.bypass.soulbound"
  message-cooldown-ticks: 20
  messages:
    drop: "&c该物品已被灵魂绑定,无法丢弃。"
    pickup: "&c该物品属于 {owner},你无法拾取。"
    move: "&c该物品属于 {owner},你无法移动。"
    container: "&c该容器内存放着已绑定的物品,无法破坏。"
    container-drop: "&c「{container}」中存有绑定物品,不可丢弃。"

For full details, see Soulbound.

Gem Integration (gem / legendinlay / magicgem)

yaml
gem:
  inject-sockets: true        # render socket lore
  inject-on-rebuild: false    # re-sync provider on rebuild

legendinlay:
  enabled: true
  stable-item-compare: true   # stable template (consistent PDC comparison)
  socket-catalog: integrations/legendinlay_sockets.yml
  inject-sockets: true
  inject-on-rebuild: false
  auto-deploy-lc-script: true # auto-deploy the LegendCore groovy fallback script

magicgem:
  enabled: true
  socket-catalog: integrations/magicgem_sockets.yml
  inject-sockets: true
  inject-on-rebuild: false

See Gem Sockets.


Other Config Files

FileContentSection
item_types.ymlitem types / abilitiesItem Types
item_tiers.ymlquality TiersQuality & Display
enchant_limits.ymlenchantment capsEnchantment Caps
integrations/gem_socket_types.ymlgem socket typesGem Sockets
integrations/legendinlay_sockets.ymlLI socket catalogGem Sockets
integrations/magicgem_sockets.ymlMG socket catalogGem Sockets
integrations/bridges.ymlbridge togglesIntegration
integrations/resource_models.ymlmodel catalogResource Pack

plugin.yml Metadata

yaml
name: QinhItems
version: '1.1.0'
main: com.qinhuai.items.QinhItems
api-version: '1.21'
author: Qinhuai
depend: [QinhCoreLib]              # hard dependency
softdepend:
  - AttributePlus
  - QinhSkills
  - PlaceholderAPI
  - CraftEngine
  - MythicMobs
  - LegendCore
  - Legendinlay
  - MagicGem
  - ItemsAdder
  - Nexo

Startup Order Reference

Rough order of QI's onEnable: dependency check → release built-in content → load each config object → register commands → register listeners → init integrations / bridges / actions / combat → load resource directory → schedule tasks → register item sources → load items / sets / library / action tables → link QinhSkills → print the startup summary. See Installation for details.


Next Steps