资源图标

转载 开源 经济 赏金重制版 1.0.1

没有下载权限
版权类型
转载
插件中文名
赏金重制版
插件英文名
fzjAR8aA
原帖地址
https://modrinth.com/project/fzjAR8aA
支持的核心 [服务端]
  1. Purpur
语言支持
  1. 中文(简体)
适配Minecraft版本 [Java]
  1. 1.21
[MD]
# 🏴‍☠️ Bounty Redux

一款免费、开源的 Paper 服务器悬赏插件,灵感来自 DonutSMP 的悬赏插件。

## 功能特点

- 提供流畅的悬赏 GUI,支持分页显示玩家头像。
- 可通过命令或 GUI 为任意玩家发布悬赏。
- 内置确认菜单,防止误操作。
- 提供冷却时间机制,避免恶意刷悬赏。
- 支持按悬赏金额或玩家名称排序。
- 支持按玩家名称搜索悬赏。
- 集成 Vault 经济系统。
- 可通过 `config.yml` 完全自定义消息。
- 所有命令均支持 Tab 自动补全。
- 使用 SQLite 持久化保存数据,服务器重启后悬赏不会丢失。
- **完整支持离线模式服务器**:即使玩家离线,且服务器使用 SkinRestorer,玩家头像也能正常显示。

## 依赖项

| 依赖 | 链接 |
|---|---|
| Vault | [SpigotMC](https://www.spigotmc.org/resources/vault.34315/) |
| EssentialsX(可选) | [SpigotMC](https://www.spigotmc.org/resources/essentialsx.9089/) |
| SkinRestorer(可选;推荐离线模式服务器使用) | [SpigotMC](https://www.spigotmc.org/resources/skinsrestorer.2124/) |

## 离线模式服务器支持

大多数悬赏插件依赖 Bukkit 的离线玩家缓存来渲染玩家头像。一旦玩家下线,头像便可能无法正常显示;使用离线认证的玩家头像通常也无法渲染。

本插件对此进行了完整处理:

- 玩家每次加入服务器时,插件都会将其皮肤纹理缓存到本地 SQLite 数据库中,其中也包括由 SkinRestorer 注入的皮肤。
- 玩家头像直接使用纹理缓存渲染,不依赖目标玩家是否在线。
- 开箱即用兼容 SkinRestorer,无需额外配置。

## 命令与权限

| 命令 | 说明 | 权限 |
|---|---|---|
| `/bounty` | 打开悬赏菜单 | `bountyredux.use` |
| `/bounty add <player> <amount>` | 发布悬赏 | `bountyredux.add` |
| `/bounty search <player>` | 查看指定玩家的悬赏 | `bountyredux.search` |
| `/bounty track <player>` | 追踪玩家 | `bountyredux.track` |
| `/bounty clear <player>` | 清除指定玩家的悬赏 | `bountyredux.clear` |
| `/bounty reload` | 重载配置 | `bountyredux.reload` |

### 权限节点

- `bountyredux.add`:发布悬赏
- `bountyredux.reload`:重载配置
- `bountyredux.clear`:清除悬赏
- `bountyredux.admin`:完整管理员权限
- `bountyredux.*`:全部权限

## 安装方法

1. 在 Releases 页面下载最新的 `.jar`。
2. 将文件放入服务器的 `/plugins` 文件夹。
3. 重启服务器。
4. 如有需要,编辑 `plugins/BountyRedux/config.yml`。

## 配置

默认 `config.yml`:

```yaml
# ============================================
# Bounty Redux Plugin — GPLv3
# ============================================

settings:
# Minimum bounty amount a player can place
min-bounty: 10
# Maximum bounty amount a player can place
max-bounty: 1000000
# Cooldown in seconds between placing bounties
add-cooldown: 60
# GUI title
gui-title: "§6§lBounty Menu"

tracking:
# Cost mode: 'fixed' or 'percentage'
cost-mode: percentage
# Fixed cost in currency (e.g. 500 = $500)
fixed-cost: 500
# Percentage of the target's total bounty (e.g. 5 = 5%)
percentage-cost: 5
# Duration in seconds (default 300 = 5 minutes)
duration: 300

messages:
prefix: "§8[§6Bounty§8] §r"
bounty-placed: "§aYou placed a bounty of §6${amount} §aon §e{target}§a!"
bounty-collected: "§6{killer} §acollected the bounty of §6${amount} §aon §e{target}§a!"
bounty-cleared: "§cThe bounty on §e{target} §chas been cleared."
bounty-not-found: "§cNo bounty found for that player."
no-permission: "§cYou don't have permission to do that."
not-enough-money: "§cYou don't have enough money! You need §6${amount}§c."
on-cooldown: "§cYou're on cooldown! Wait §e{seconds}s §cbefore placing another bounty."
invalid-amount: "§cInvalid amount. Must be between §6${min} §cand §6${max}§c."
cannot-bounty-self: "§cYou can't place a bounty on yourself!"
player-not-found: "§cPlayer not found."
plugin-reloaded: "§aPlugin reloaded successfully."
bounty-confirmed: "§aYou confirmed a bounty of §6${amount} §aon §e{target}§a."
bounty-cancelled: "§cBounty placement cancelled."
no-bounties: "§cThis player has no bounties."
```

### 可用占位符

| 占位符 | 说明 |
|---|---|
| `{amount}` | 悬赏金额 |
| `{target}` | 悬赏目标玩家名称 |
| `{killer}` | 击杀者名称 |
| `{seconds}` | 剩余冷却时间(秒) |
| `{min}` | 最低悬赏金额 |
| `{max}` | 最高悬赏金额 |

## 从源码构建

```bash
git clone https://github.com/LightNabz/BountyRedux.git
cd bounties
mvn clean package
```

构建完成的 JAR 文件位于 `/target/BountyRedux-{version}.jar`。

## 许可证

本项目采用 **GNU General Public License v3.0** 许可证发布。

详情请参阅 [LICENSE](LICENSE)。
[/MD]
作者
cacca
下载
0
查看
1
首次发布
最后更新
评分
0.00 星 0 星

来自cacca的更多资源

后退
顶部