config.yml
plugins/CloudShop/config.yml,改完执行 /cs reload(database 要重启服务器)。以下是默认内容,按段落说明。
子服、介面与时区
# 子服识别名称(多个子服共用 MySQL 时用来区分;留空 = 服务器文件夹名:端口)
server-id: ''
# 介面:auto(装了云界面 CloudUI 就用云界面,没有就用箱子菜单)/ chest / cloudui
ui: auto
# 限购、库存、轮换、特卖使用的时区(留空 = 服务器系统时区,例:Asia/Shanghai)
timezone: ''
| 键 | 说明 |
|---|---|
server-id | 这个子服的名称。用在商店的 servers(只在哪些子服开放)、不跨子服的限购 / 库存 / 行情、交易记录。共用 MySQL 时每个子服要不同,建议明确填写 |
ui | auto / chest / cloudui,见 云界面联动 |
timezone | 所有周期(daily 04:00、折扣的日期与时段)用的时区。写错时控制台警告并改用系统时区。多个 子服请设成一样 |
数据库
database:
# sqlite(默认,每个子服各自一份)/ mysql(多个子服共用)
type: sqlite
file: data.db
host: 127.0.0.1
port: 3306
database: cloudshop
username: root
password: ''
parameters: useSSL=false&characterEncoding=utf8&serverTimezone=UTC
table-prefix: cs_
pool-size: 2
| 键 | 说明 |
|---|---|
type | sqlite 或 mysql(MariaDB 也用 mysql) |
file | SQLite 文件名(在插件资料夹) |
host / port / database / username / password / parameters | MySQL 连线 |
table-prefix | 表名前缀 |
pool-size | MySQL 背景线程与连线数(最少 2)。SQLite 固定 1 条 |
数据库连不上时插件会停用并在控制台说明原因。存在数据库里的是:限购与库存记录、动态价格、交易记录、/cs sale 特卖,以及(MySQL 时)共用的商店文件。
多服同步
# 使用 MySQL 时:商店文件(shops/、menu.yml)存进数据库,所有子服自动同步
sync:
enabled: true
interval-seconds: 3
| 键 | 说明 |
|---|---|
enabled | false = 不同步商店文件(限购、库存、行情、特卖仍然共用数据库) |
interval-seconds | 多久检查一次其他子服的修改(最少 1) |
SQLite 时这段不起作用。见 MySQL 多服同步。
货币
currencies:
default: money
money:
type: vault
name: 金币
format: '{amount} 金币'
decimals: 2
icon: GOLD_INGOT
points:
type: playerpoints
name: 点券
format: '{amount} 点券'
icon: EMERALD
exp:
type: exp
name: 经验等级
format: '{amount} 级经验'
icon: EXPERIENCE_BOTTLE
default 是价格只写数字时用的货币。每种货币的设定、物品货币与 PlaceholderAPI 货币的写法见 货币与价格。
点击操作与单次上限
# 商店里点击商品的操作(可用:buy-1 / buy-stack / buy-menu / sell-1 / sell-stack / sell-all / sell-menu / none)
clicks:
left: buy-1
right: sell-1
shift-left: buy-menu
shift-right: sell-all
middle: buy-stack
drop: none
# 单次最多买多少件(商品可用 max-per-purchase 另外设定)
max-per-purchase: 2304
clicks每个操作的意思见 主菜单与箱子菜单。max-per-purchase是物品个数,换算成每件商品的份数(每份 64 个 → 36 份);商品自己的max-per-purchase是份数。
底部按钮
# 箱子菜单底部按钮(slot 为负数 = 从最后一格往前数,-1 = 最后一格)
layout:
previous: {slot: -9, material: ARROW, name: '&e« 上一页'}
back: {slot: -5, material: OAK_DOOR, name: '&c返回主菜单'}
next: {slot: -1, material: ARROW, name: '&e下一页 »'}
balance:
slot: -7
material: GOLD_INGOT
name: '&6我的余额'
lore:
- '&7金币:&f{balance_money}'
- '&7点券:&f{balance_points}'
sell: {slot: -3, material: HOPPER, name: '&a出售物品', lore: ['&7打开出售箱,放进去的物品', '&7关闭时自动按回收价卖出']}
# 底部一整排的底色(留空 = 不填)
bar: GRAY_STAINED_GLASS_PANE
每个按钮:slot、material(留空 = 不要这个按钮)、name、lore。只有 2 行以上的商店有按钮栏,见 底部按钮。