配置文件
config.yml
主配置文件位于 plugins/CDKLite/config.yml,包含数据库连接、通用设置和跨服同步设置。
完整默认配置
database:
enable: false
host: localhost
port: 3306
user: root
password: root
database: minecraft
prefix: "cdklite"
setting:
allow_receive_self: false
random_cdk_chars: "!@#$%^&*()"
random_cdk: "{{ sender }} {{ cdklite rand 3 }}"
join_select_delay: 40
sync:
enabled: true
server-id: "server-1"
interval-seconds: 5
batch-size: 200
startup-full-sync: true
ignore-own-events: true
lazy-load-on-cache-miss: true
change-log:
cleanup-enabled: true
keep-days: 7
cleanup-interval-minutes: 60
bungee:
enabled: false
debounce-millis: 500
配置项说明
database 数据库
| 字段 | 类型 | 说明 |
|---|---|---|
enable | Boolean | false 使用 SQLite(默认),true 使用 MySQL |
host | String | MySQL 主机地址 |
port | Integer | MySQL 端口 |
user | String | MySQL 用户名 |
password | String | MySQL 密码 |
database | String | MySQL 数据库名 |
prefix | String | 数据表前缀 |
setting 通用设置
| 字段 | 类型 | 说明 |
|---|---|---|
allow_receive_self | Boolean | 是否允许 CDK 拥有者兑换自己的 CDK,默认 false |
random_cdk_chars | String | 随机 CDK 生成时使用的额外字符集,默认会在 a-z、A-Z、0-9 基础上追加这些字符 |
random_cdk | String | CDK 自动生成模板(Kether 表达式)。{{ sender }} 为玩家名,{{ cdklite rand 3 }} 生成 3 位随机字符 |
join_select_delay | Integer | 玩家进服后延迟多少 tick 查询兑换记录;插件启动初始化 CDK 数据时也会使用这个延迟 |
提示
random_cdk 模板决定了不指定自定义兑换码时自动生成的 CDK 格式。默认模板 {{ sender }} {{ cdklite rand 3 }} 会生成类似 Steve abc 这样的兑换码。你可以自由修改模板,比如 CDK-{{ cdklite rand 8 }} 生成纯随机码。
sync 跨服同步
| 字段 | 类型 | 说明 |
|---|---|---|
enabled | Boolean | 是否启用跨服增量同步。只有 database.enable: true 时才会实际生效 |
server-id | String | 当前子服唯一标识,每个子服都必须不同 |
interval-seconds | Integer | 定时异步查询 change_log 的间隔,单位秒,最低按 1 秒处理 |
batch-size | Integer | 每批最多处理多少条 change_log,最低按 1 条处理 |
startup-full-sync | Boolean | 启动时本地没有同步游标,或游标早于数据库保留记录时,是否先执行一次完整同步 |
ignore-own-events | Boolean | 是否忽略本服写入的 change_log 事件 |
lazy-load-on-cache-miss | Boolean | CDK 缓存未命中时是否回数据库懒加载 |
change-log.cleanup-enabled | Boolean | 是否定时清理过期 change_log |
change-log.keep-days | Integer | change_log 保留天数,最低按 1 天处理 |
change-log.cleanup-interval-minutes | Integer | 清理任务间隔,单位分钟,最低按 1 分钟处理 |
bungee.enabled | Boolean | 是否使用 Bukkit Messenger 通过 BungeeCord Forward 发送轻量唤醒通知 |
bungee.debounce-millis | Integer | Bungee 唤醒通知防抖时间,单位毫秒,最低按 50 毫秒处理 |
信息
/cdklite reload 会重载 config.yml 和 reward.yml,并让跨服同步任务按新的 sync 配置重新启动或停止。gui.yml 支持自动重载,管理员 GUI 里的重载按钮也会额外重载 gui.yml。
reward.yml
奖励包配置文件位于 plugins/CDKLite/reward.yml,详细说明请参考 奖励包系统。
gui.yml
GUI 配置文件位于 plugins/CDKLite/gui.yml,用于调整菜单标题、布局、按钮材质、名称和 Lore。详细说明请参考 GUI 管理面板。
lang/zh_CN.yml
语言文件位于 plugins/CDKLite/lang/zh_CN.yml,用于调整命令反馈、兑换失败提示、创建成功提示、删除提示和同步结果提示等中文消息。