跳到主要内容

配置

配置头版本

默认 config.yml 文件头仍写着“LotteryBox 1.0.3 配置文件”。这是没有同步更新的旧注释,不会覆盖 build.gradle、JAR 清单和 plugin.yml 展开后的实际插件版本;当前插件版本是 1.0.4。

颜色代码使用 &。执行 /lb reload 会读取新配置、重新探测经济后端并重建全息;涉及构建版本、依赖或类加载的变化仍应重启测试服。

抽奖基础值

默认值说明
lottery.cost1000单次抽奖/单把钥匙的全局最后后备价格
lottery.daily-limit10每玩家、每箱每日限制;管理员不受限
lottery.timezone""空值使用服务器时区,也可填 Asia/Shanghai 等 ZoneId

购买钥匙本身不计次数。每日计数按玩家和箱子分别保存,在指定时区午夜切换。

价格优先级固定为:

  1. 箱级货币独立价格,即 /lb setcurrency
  2. economy.player-currency.costs 中对应类型的 PlayerCurrency 配置价格;
  3. 箱级后备基础价格,即 /lb setcost
  4. 全局 lottery.cost

稀有度

每个 lottery.rarity.COMMON|RARE|EPIC 节点都有相同字段:

字段COMMONRAREEPIC说明
display&7普通&d精品&6史诗玩家显示名
color&7&d&6文本颜色
wool-colorWHITEMAGENTAORANGEwool 动画材质色
weight1002010非空奖池权重
glass-colorWHITE_STAINED_GLASS_PANEMAGENTA_STAINED_GLASS_PANEORANGE_STAINED_GLASS_PANEGUI 装饰

概率只对非空奖池归一化。材质和颜色名称必须在目标服务端版本有效。

抽奖箱认定与编辑工具

默认值说明
designation.modeADMIN_TOOL编辑棒右键已有方块;可改为 PLACE_WITH_TOOL
designation.allowed-blocksCHESTTRAPPED_CHEST空列表 [] 表示允许任意方块
edit-tool.materialBLAZE_ROD编辑工具材质
edit-tool.name&e&l抽奖箱编辑工具显示名
edit-tool.lore两行默认说明右键编辑/创建说明

经济配置

默认值说明
economy.player-currency.currencies[]新箱 PlayerCurrency 类型白名单;空表示发现到的全部类型
economy.player-currency.costs{}类型到后备价格的映射,键不带 playercurrency:
economy.player-currency.names{}类型到自定义显示名的映射
economy.player-currency.icons{}类型到 Bukkit Material 图标的映射
economy.xconomy.display-name金币XConomy 显示名
economy.xconomy.iconGOLD_INGOTXConomy 图标
economy.vault.display-name金币Vault 显示名
economy.vault.iconGOLD_INGOTVault 图标
economy.fallback.display-name金币兼容旧 1.0.1 配置的后备显示名
economy.fallback.iconGOLD_INGOT兼容旧配置的后备图标

示例:

economy:
player-currency:
currencies: [coin, point]
costs:
coin: 1000
point: 10
names:
point: 积分
icons:
point: EMERALD

钥匙

默认值占位符/说明
key-item.materialTRIPWIRE_HOOK钥匙材质
key-item.default-box-name&6&l抽奖箱箱子没有自定义名称时使用
key-item.name&6&l{box} 钥匙{box} 为箱名
key-item.lore三行默认说明{box} 为绑定箱名

GUI

默认行为占位符
preview-gui.title54 格预览,每页 45 个奖品{page}{pages}
purchase-gui.titleKEY 的 27 格购买界面,每页最多九种货币{page}{pages}
purchase-gui.button-lore货币、单把价格、余额和购买提示{currency}{price}{balance}
direct-payment-gui.titleDIRECT 的 27 格选择界面,每页最多九种货币{page}{pages}
direct-payment-gui.button-lore货币、单次价格、余额和抽奖提示{currency}{price}{balance}
animation-gui.title36 格共用动画界面
animation-gui.status.name&6&l正在抽奖…
animation-gui.status.lore等待与关闭界面说明

动画

默认值说明
animation.duration-ticks60总时长,20 tick 约一秒仅在 20 TPS 时成立
animation.interval-ticks2动画刷新周期

全息

默认值说明
hologram.enabledtrue全息总开关
hologram.y-offset1.4Y 偏移
hologram.view-range32.0可视距离
hologram.see-throughfalse是否穿透可见
hologram.background-argb1073741824背景 ARGB
hologram.default-title&6&l✦ 抽奖箱 ✦默认标题
hologram.direct-line左键预览、右键付费抽奖DIRECT 交互行
hologram.key-line左键预览、右键购买/使用钥匙KEY 交互行
hologram.cost-line左键预览、右键付费抽奖旧配置兼容;当前按 draw mode 使用前两项

音效

节点默认 keyvolumepitch
sound.startUI_BUTTON_CLICK1.01.0
sound.spinBLOCK_NOTE_BLOCK_HAT0.51.5
sound.winUI_TOAST_CHALLENGE_COMPLETE1.01.0

sound.enabled: true 是总开关。三个 key 必须是目标核心支持的 Sound 名称。

全服播报

默认值说明
broadcast.enabledtrue总开关
broadcast.format当前中奖文案支持 {player}{prize}{rarity}{prize_count}{category}
broadcast.prefix&6[抽奖系统] 可选前缀
broadcast.use-prefixtrue是否使用前缀
broadcast.only-epictrue只播报 EPIC

消息

所有 messages.* 都是可本地化文本。当前键和动态占位符如下;“无”表示没有动态参数,但仍支持 & 颜色代码。

占位符场景
messages.no-permission权限不足
messages.player-only控制台执行玩家专用命令
messages.not-enough-money{amount}旧通用余额不足文案
messages.cost-deducted{amount}{balance}旧通用扣款成功文案
messages.daily-limit-reached每日次数用完
messages.pool-empty没有有效奖品
messages.prize-unavailable奖品无法解析,提交前取消
messages.draw-start-failed动画启动失败、次数回滚和退款/退钥匙提示
messages.drawing-in-progress玩家已有付款或抽奖 token
messages.inventory-full-drop奖品背包溢出后掉落
messages.reload-success配置和经济重载成功
messages.reset-success{player}重置单个玩家
messages.reset-all-success重置所有玩家
messages.give-success{player}{amount}给予额外次数
messages.edit-tool-given发放编辑工具
messages.box-created新箱创建成功
messages.box-create-conflict位置已有配置,拒绝覆盖
messages.box-create-failed创建失败,复制状态保留
messages.box-editing打开编辑界面
messages.clone-prepared复制快照已冻结
messages.clone-created一次复制成功
messages.clone-cancelled取消复制
messages.clone-not-pending没有待复制状态
messages.box-deleted删除成功
messages.box-not-found目标不是 LotteryBox
messages.not-a-chest目标不是允许的箱子
messages.look-at-box未瞄准六格内箱子
messages.name-set{name}设置箱名
messages.name-cleared清除箱名
messages.box-protected抽奖箱受保护
messages.remaining-draws{remaining}显示剩余次数
messages.already-editing另一管理员持有编辑锁
messages.no-economy无可用经济后端,已有钥匙仍可用
messages.no-payment-methods当前箱没有支付 ID
messages.payment-method-unavailable已配置支付 ID 目前均不可用
messages.payment-selection-expired模式、方法或价格快照变化
messages.not-enough-currency{currency}{amount}指定货币余额不足
messages.refund-success{amount}{currency}原路退款成功
messages.refund-failed{amount}{currency}自动退款失败,要求人工对账
messages.wrong-key钥匙属于其他箱子
messages.key-requiredKEY 模式要求手持正确钥匙
messages.purchase-in-progress上一笔钥匙购买处理中
messages.purchase-failed购买失败或已退款
messages.key-purchase-success{amount}{currency}{balance}购买成功
messages.key-inventory-full-drop钥匙背包溢出后掉落
messages.payment-failedDIRECT 付款失败或已退款
messages.invalid-draw-mode{mode}非 direct/key 输入
messages.draw-mode-set{mode}{display}模式切换成功
messages.currency-not-found{currency}未检测到支付方式
messages.currency-already-added{currency}重复添加
messages.currency-added{currency}{name}添加成功,价格继续走后备规则
messages.currency-not-added{currency}设置尚未添加的货币
messages.currency-removed{currency}从当前箱移除
messages.currency-cost-set{currency}{amount}独立价格设置成功
messages.invalid-amount{amount}金额非法或小于零

启动或 /lb reload 会把 JAR 默认配置中缺失的新键补入旧配置,同时保留已有自定义值。修改占位符时不要删除业务需要的参数,否则消息将失去关键对账信息。

旧版直接付费按钮

默认占位符
draw-button.name&6&l✦ 点击抽奖 ✦
draw-button.lore消耗、剩余次数和点击提示{cost}{remaining}{limit}

draw-button.* 为旧版直接付费入口保留。1.0.4 当前 DIRECT 主入口是 27 格货币选择界面,配置兼容项存在不代表旧 GUI 行为仍是当前主流程。