商品与物品来源
商店文件 items: 下面的每一段是一件商品,段落名称是商品 key(同一个商店里唯一,变量与 /cs reset 用它)。
完整范例
shops/services.yml
items:
vip:
slot: 15
item: DIAMOND_HELMET
give-item: false # 不给物品,只执行指令(物品只当图示)
display:
name: '&6VIP · 30 天'
lore:
- '&7专属称号、每日礼包'
buy: 300 points
condition: '%player_level% >= 10'
deny-message: '&c需要 10 级以上才能购买 VIP'
commands:
- 'lp user {player} parent addtemp vip 30d'
limit:
buy: {amount: 1, reset: monthly}
字段
| 键 | 默认 | 说明 |
|---|---|---|
slot | 不显示 | 格子位置,从 0 开始;没有 slot 的商品是 轮换商品池 |
page | 1 | 第几页 |
item | 物品来源,见下方 物品来源 | |
amount | 1 | 每份的数量(1 – 6400)。买一份 = 给这么多个;卖一份 = 收走这么多个 |
display.name | 物品原本的名称 | 商店里显示的名称(也可以直接写在商品下的 name) |
display.lore | 附加在物品说明下面的文字(也可以直接写 lore) | |
display.icon | 商品物品 | 另外用一个物品当图示,写法同 item |
buy | 不出售 | 买价,见 货币与价格;0 / 不写 = 不出售 |
sell | 不回收 | 回收价;0 / 不写 = 不回收 |
limit.buy / limit.sell | 无 | 购买 / 出售次数限制,见 限购与库存 |
stock | 无 | 库存与补货,见 限购与库存 |
dynamic | 无 | 动态价格,见 动态价格 |
discount | 无 | 这件商品的折扣,见 折扣与限时特卖 |
permission | 留空 | 购买 / 出售这件商品需要的权限 |
condition | 留空 | 购买条件,见下方 条件 |
deny-message | 默认提示 | 没有权限或不符合条件时的提示 |
commands | 购买后执行的指令,见下方 指令 | |
give-item | true | false = 不给物品,只执行指令(卖权限、称号、服务);这种商品不能回收 |
weight | 10 | 轮换商品池的抽中权重,见 轮换商店 |
max-per-purchase | 跟 config.yml | 这件商品单次最多买几份 |
商品说明(买入 / 回收价格、每份数量、行情、限购、库存、操作提示)由插件自动加在物品说明下面,文字在 messages.yml 的 lore 段,见 消息与文字。
单次上限
config.yml 的 max-per-purchase: 2304 是物品个数(36 组),换算成份数:每份 64 个的商品一次最多 36 份。商品自己写 max-per-purchase: 5 时是份数,一次最多 5 份。数量选择菜单的「最多」也不会超过余额、背包空间、限购剩余与库存。
物品来源
item: 写成下面任何一种。插件没装时这件商品显示屏障「物品不存在」,不能买卖,其他商品照常。
| 写法 | 来源 | 例子 |
|---|---|---|
DIAMOND | 原版物品(也可以写 minecraft:diamond) | item: DIAMOND |
ci:<ID> | 云物品 CloudItems | item: 'ci:噬渊血冕' |
mmoitems:<类型>:<ID> | MMOItems | item: 'mmoitems:SWORD:FIRE_BLADE' |
ce:<命名空间>:<ID> | CraftEngine(只写 ID 时命名空间默认 default) | item: 'ce:default:ruby' |
ia:<命名空间>:<ID> | ItemsAdder | item: 'ia:myitems:ruby' |
nexo:<ID> | Nexo | item: 'nexo:ruby_sword' |
mm:<ID> | MythicMobs 物品 | item: 'mm:SkeletonKingSword' |
item: {data: …} | 完整物品(Base64):附魔、名称、所有组件原样保存 | 游戏内上架时自动产生 |
- 有冒号的写法请加引号(
'ci:噬渊血冕'),避免 YAML 误读。 - 前缀也接受全名:
clouditems:、mi:、craftengine:、itemsadder:、mythicmobs:。 - 完整物品也可以写成
item: 'data:<Base64>'。这种字串很长,建议用 游戏内管理介面 拿着物品点空格子,或 网页编辑器 的物品库产生。
回收时怎么辨认物品
| 商品来源 | 背包里的哪些物品算「这件商品」 |
|---|---|
插件物品(ci: / mmoitems: / ce: / ia: / nexo: / mm:) | 同一个插件 ID 的物品。随机属性、强化、宝石不同也算,所以玩家打到的装备都能卖 |
原版物品(DIAMOND) | 同材质、没有任何自订资料的物品。改过名、附过魔的不算,不会被误卖 |
完整物品(data) | 和保存的物品完全一样(名称、附魔、组件都相同) |