RewardСкачать
ВЕРСИИ (1)
release
Reward 1.0
1.019 сент. 2026 г.27Minecraft: 26.1.2paper
Что нового
# 1.0 — 首个正式版本 · Initial release
## 中文
第一个公开版本,悬赏全流程已经跑通:**发起 → 全服投票 → 目标暴露 → 追猎 → 按劳分配**。
### 玩法
- **发起与投票**:`/rd create <目标> <赏金> <人头数> <原因>`,赏金从发起人账户**托管扣除**;全服弹出可点击公告,满 **3 人同意**(可配置)才正式发布
- **被悬赏者**:常驻发光 + 顶部倒计时 Boss 条 + **禁止一切传送**(指令 / 末影珍珠 / 紫颂果,传送门可选)+ **领地保护失效**
- **追猎**:`/rd tp` 传送到目标 **40 格内的随机安全落点**,冷却 90 秒;落点只在不加载新区块的前提下寻找
- **击杀统计**:归因覆盖宠物、坐骑、弹射物与间接击杀(点燃 / 摔死),每次击杀全服播报进度
### 领地(Residence)
- 默认 `hunted.residence-action: none` —— **一个字节都不动玩家领地**,只让"保护"在悬赏期间失效
- 可选 `suspend`:临时挂起保护 flag,悬赏结束 / 关服 / 下次开服**原样还原**(备份按 UUID 存 `residence-backup.yml`,还原成功才删除)
- 可选 `delete`:必须显式配置才会删,且不可恢复
- 猎人**无需任何领地权限**即可进出、破坏、传送(临时权限附件,悬赏结束自动回收)
### 结算与防赖账
- 打满人头数后私聊发起人战报:`xxx 击杀了 yyy 3 刀 | 占比 60% | 建议分配 600 金币`
- 分配支持**设为**(覆盖重算)、`add` 追加、`take` 扣减、`reset` 清空、`auto` 按击杀整池重算,每步回显"他现在累计多少、还剩多少没分"
- 发放前必须**输入文字确认**(默认 `确认`,可配置),防误操作
- **超时自动结算**:发起人拖着不分配,到点由系统自动分配并发放(默认平均分,防止他把大头塞给熟人)
- **先落盘再动钱**:确认发放与取消退款都是先写终态、再操作经济,崩服不会重复发放或重复退款
### 经济
- `auto` 模式依次尝试 **Vault → XConomy 直连 → 内置金币**;可用 `economy.vault-provider` 指定经济插件
- 服务器存在多个经济提供者时会列出全部候选并告警,避免"绑到了另一个经济插件"
- 后端返回码不可信时(如 XConomy 的返回码语义)**以余额实际变化为准**,不做乐观判断
- `/rd admin econ test <玩家>` 一键验钞(入账一笔再扣回,余额复原)
### 配置与数据安全
- `config.yml` 全部设置项带注释,所有玩家可见文案为 **MiniMessage**,可翻译成任意语言
- **升级不用删配置**:新增的键自动补进现有文件,保留你的值、注释与缩进;写入前做 YAML 校验,不合法就一个字都不写;配置损坏可从 `config.yml.bak` 自动恢复
- `/rd reload` 热重载配置与文案,并把进行中的悬赏按新配置重新同步(不刷屏、不重复动领地)
- 数据文件原子写入;读档失败时停止写入并另存 `.corrupt`,绝不用空数据覆盖
### 显示
- 顶部公共 Boss 条 + 被悬赏者专属倒计时条 + 猎人专属进度条
- `/rd hud` 可**只对自己**隐藏悬赏 Boss 条(偏好跨登录保留),关键信息改走聊天栏
### 指令与权限
- 主指令 `/rd`,别名 `/bounty`、`/悬赏`;管理端 `/rd admin …`(cancel / force / demo / kill / add|take|set / econ / hud / unglow / diag / reload / history)
- 权限:`reward.use`(默认所有人)、`reward.tp`、`reward.admin`(OP)、`reward.bypass`(OP)
### 安装
1. 把 `Reward-1.0.jar` 放进 `plugins/`
2. **重启服务端**(Paper 没有热替换插件类加载器的接口)
3. 首次启动会生成 `config.yml`;装 Residence / Vault 则对应功能自动启用,没装也能跑
### 已知限制
- 换 jar 必须重启服务端;只改配置 / 文案用 `/rd reload`
- Boss 条与 ActionBar 不支持点击(客户端限制),"点击加入"走聊天栏按钮
- `hunted.void-residence-for-everyone: true` 会一并绕过其它保护插件(WorldGuard 等);只想对参与悬赏的人生效就设为 `false`
- 需要 **Paper 26.1.2 / Java 25**
---
## English
Initial public release — the full bounty loop works end to end: **post → server vote → target exposed → hunt → payout by kills.**
### Gameplay
- `/rd create <target> <reward> <kills> <reason>` escrows the reward from the poster; a clickable server-wide announcement is shown and **3 approvals** (configurable) are required before it goes live
- Target **glows permanently**, gets a countdown boss bar, has **all teleports blocked** (commands, ender pearls, chorus fruit; portals optional) and **loses land protection**
- `/rd tp` teleports hunters to a **random safe spot within 40 blocks**, 90s cooldown, without loading new chunks
- Kill attribution covers pets, mounts, projectiles and indirect kills (fire, fall damage); every kill is announced server-wide
### Residence
- Defaults to `none` — **your players' land is never modified**; only the protection is voided while hunted
- `suspend` temporarily suspends protection flags and restores them exactly (UUID-keyed backup, deleted only after a successful restore)
- `delete` is opt-in and irreversible
- Hunters need **no Residence permissions** (temporary permission attachment, revoked when the bounty ends)
### Settlement & anti-stall
- The poster receives a report (`xxx killed yyy 3 times | 60% share | suggested 600`)
- Allocation supports **set** (recomputes), `add`, `take`, `reset`, and `auto` (re-split by kill ratio), always echoing the running total and what's left
- Payout requires **typing a confirmation phrase**
- **Auto-settle on timeout** if the poster stalls (even split by default)
- **State is persisted before any money moves** — a crash can't double-pay or double-refund
### Economy
- `auto` tries **Vault → XConomy (direct) → built-in balance**; `economy.vault-provider` pins a specific provider
- Multiple providers are listed with a clear warning so you don't silently bind to the wrong economy
- When a backend's return code can't be trusted, the result is judged by the **actual balance change**
- `/rd admin econ test <player>` performs a live deposit/withdraw check
### Config & data safety
- Every setting is commented; all player-facing text is **MiniMessage** and fully translatable
- **Updating never requires deleting your config** — new keys are merged in, keeping your values and comments; the result is YAML-validated before writing; a corrupted config is restored from `config.yml.bak`
- `/rd reload` hot-reloads settings/messages and re-syncs running bounties
- Data files are written atomically; on load failure the plugin stops writing and keeps a `.corrupt` copy
### Display
- Public boss bar, a private countdown bar for the target, and a personal progress bar per hunter
- `/rd hud` hides bounty boss bars **for yourself only**, moving key info to chat
### Commands & permissions
- `/rd` with aliases `/bounty`, `/悬赏`; admin: `/rd admin …` (cancel / force / demo / kill / add|take|set / econ / hud / unglow / diag / reload / history)
- Nodes: `reward.use` (everyone), `reward.tp`, `reward.admin` (OP), `reward.bypass` (OP)
### Install
1. Drop `Reward-1.0.jar` into `plugins/`
2. **Restart the server** (Paper has no official plugin reload)
3. `config.yml` is generated on first start; Residence / Vault are picked up automatically if present
### Known limitations
- Swapping the jar requires a restart; config/message changes only need `/rd reload`
- Boss bars and the action bar aren't clickable (client limitation) — "join" is a chat button
- `hunted.void-residence-for-everyone: true` also bypasses other protection plugins (WorldGuard, etc.)
- Requires **Paper 26.1.2 / Java 25**