- 版权类型
- 原创
- 插件中文名称
- 挂机池
- 插件英文名称
- IdlePool
- 支持的核心(服务端)
- Spigot
- Paper
- 语言支持
- 多语言
- 前置组件
- 推荐:PlaceholderAPI
可选:ItemsAdder
可选:MythicMobs
可选:MMOITEMS
可选:SlimeFun
- 适配版本(Java)
- 最新版本
- 26.x
- 1.21
[MD]
插件介绍
IdlePool 是一个面向生存服、RPG 服和综合服的区域挂机奖励插件。
玩家进入管理员划定的挂机池区域后,会自动看到 Minecraft 原生箱子界面。只有点击“开始挂机”按钮后才会累计时间并结算奖励,避免玩家只是路过区域也被计入挂机。
挂机期间,ActionBar 会显示本次挂机时长、距离下次周期奖励的时间以及本次获得的奖励数量。玩家离开区域、主动停止或下线时,本次挂机结束;尚未完成一个奖励周期的进度会继续保留,默认保留 7 天,也可以按挂机池单独设置。
实物奖励不会直接塞进玩家背包,而是进入独立暂存箱;Vault 货币和命令奖励则直接结算。v1.1.0 为暂存箱加入事务预约、异常复核、分页和一键领取,并为每次奖励生成唯一结算 ID,尽可能避免网络抖动、重复任务或服务器异常造成重复发奖。
>全GUI编辑支持...
---
## 主要功能
- 支持创建多个长方体挂机区域
- 玩家进入区域后自动打开原生箱子 GUI
- 玩家必须点击按钮才会正式开始挂机
- ActionBar 实时显示挂机时长、下次奖励和本次收益
- SQLite 异步保存玩家累计时间和未满周期进度
- 未满周期进度默认保留 7 天,可按挂机池独立配置
- 支持周期奖励、延迟概率解锁和单次挂机里程碑
- 每项奖励独立设置概率、数量和解锁时间
- 实物奖励进入暂存箱,货币及命令奖励直接结算
- 暂存箱支持事务安全领取、翻页和一键领取
- 奖励流水和唯一结算 ID 防止重复结算
- 游戏内 GUI 创建、选择、复制和删除挂机池及奖励方案
- 管理员可直接手持物品,让插件自动识别物品来源
- 支持原版、ItemsAdder、MythicMobs、MMOItems 和 Slimefun 物品
- 无法识别来源的自定义物品可以保存完整物品快照
- 配置结构自动迁移,迁移前自动创建备份
- 语言文件缺少新键时自动使用内置文本回退
- 提供简体中文 `message.yml` 和完整英文 `en.yml`
- 可选 PlaceholderAPI 变量
- 启动时异步检查 GitHub 更新
- `/afkpool doctor` 提供上线前配置与依赖检查
---
## 奖励时间规则
IdlePool 的每项奖励都可以独立选择触发方式。
### 普通周期奖励
管理员可以给挂机池设置一个基础周期,例如每 10 分钟结算一次。
下面的钻石奖励要求玩家本次连续挂机达到 30 分钟,之后才会在每个普通周期中以 10% 概率参与抽取:
```yaml
- type: item
provider: vanilla
id: DIAMOND
amount: 1
chance: 10.0
trigger: cycle
unlock-after: 30m
```
将 `unlock-after` 设置为 `0s`,表示该奖励从第一次周期结算开始就参与抽取。
### 单次挂机里程碑
里程碑奖励会在本次连续挂机首次达到指定时间时额外结算一次:
```yaml
- type: command
command: "say {player} 连续挂机已满一小时"
chance: 100.0
trigger: session-milestone
unlock-after: 1h
```
同一个奖励方案可以同时设置 10 分钟、30 分钟、1 小时、2 小时等多个阶段。里程碑概率判定失败后,本次挂机不会反复重试;玩家下一次重新开始挂机时可以再次挑战该里程碑。
支持的时间单位为 `s`、`m`、`h`、`d`,也可以写成 `1h30m`。
---
## 支持的奖励类型
### 原版物品
```yaml
provider: vanilla
id: DIAMOND
```
### ItemsAdder 物品
```yaml
provider: itemsadder
id: "idlepool:afk_coin"
```
### MythicMobs 物品
```yaml
provider: mythicmobs
id: "SKELETON_SWORD"
```
### MMOItems 物品
MMOItems 使用 `类型:ID` 格式:
```yaml
provider: mmoitems
id: "SWORD:CUTLASS"
```
### Slimefun 物品
```yaml
provider: slimefun
id: "CARBONADO"
```
此外还支持 Vault 货币奖励、控制台命令奖励,以及管理员手持物品生成的完整物品快照。
---
## 安装教程
1. 确认服务端使用 Java 21 或更高版本,并运行兼容版本的 Paper。
2. 将 `IdlePool-1.1.0.jar` 放入服务端的 `plugins` 目录。
3. 根据需要安装可选依赖;如果只使用原版物品,可以不安装任何额外插件。
4. 启动服务器,等待生成 `plugins/IdlePool` 配置目录。
5. 执行 `/afkpool doctor` 检查插件、奖励方案和可选依赖状态。
6. 执行 `/afkpool admin rewards` 创建或编辑奖励方案。
7. 执行 `/afkpool admin` 创建挂机池,设置区域两点、奖励周期、进度保留时间和奖励方案。
8. 检查配置无误后,在管理员 GUI 中启用挂机池。
首次生成的示例挂机池默认处于关闭状态,不会直接影响主城或其他世界。
### 从 v1.0 升级
直接关闭服务器并替换 JAR,随后重新启动即可。
v1.1.0 会自动迁移:
- `config.yml`
- `pools.yml`
- `rewards.yml`
- SQLite 数据库表结构
首次迁移前,原 YAML 会保存为 `*.v1.bak`。虽然插件会自动备份配置,正式服升级前仍建议额外备份整个 `plugins/IdlePool` 目录。
---
## ItemsAdder 配套资源
ItemsAdder 完全可选。未安装 ItemsAdder 时,插件会自动使用原版按钮和纯文字 ActionBar,不影响挂机与奖励功能。
如需使用配套按钮、挂机币和 ActionBar 图标,将发布包中的:
```text
ItemsAdder/contents/idlepool
```
合并到服务器的:
```text
plugins/ItemsAdder/contents/idlepool
```
然后执行 `/iazip`,并让客户端重新加载资源包。
为避免客户端 GUI 缩放、字体和模组造成材质偏移,IdlePool 的所有菜单背景始终使用 Minecraft 原生箱子,不再使用 ItemsAdder 字体图片模拟容器背景。ItemsAdder 只负责可选按钮、物品和 ActionBar 小图标。
---
## 命令
| 命令 | 说明 |
|---|---|
| `/afkpool` | 在挂机池区域内打开开始界面 |
| `/afkpool info` | 查看插件版本、服务端版本、ItemsAdder 状态和更新信息 |
| `/afkpool stop` | 结束当前挂机并保存未满周期进度 |
| `/afkpool claim` | 打开实物奖励暂存箱 |
| `/afkpool admin` | 打开挂机池管理员 GUI |
| `/afkpool admin rewards` | 直接打开奖励方案管理 GUI |
| `/afkpool doctor` | 检查配置、奖励方案和依赖状态 |
| `/afkpool reload` | 重载配置、奖励方案和语言文件 |
别名:`/idlepool`
## 权限
| 权限 | 默认 | 说明 |
|---|---|---|
| `idlepool.use` | 所有玩家 | 使用挂机池 |
| `idlepool.admin` | OP | 管理和重载 IdlePool |
每个挂机池还可以配置单独的进入权限;留空时不要求额外权限。
---
## PlaceholderAPI
安装 PlaceholderAPI 后,IdlePool 会自动注册 `idlepool` 扩展,无需通过 eCloud 另外下载。
| 变量 | 内容 |
|---|---|
| `%idlepool_active%` | 玩家当前是否正在挂机 |
| `%idlepool_pool%` | 当前挂机池 ID |
| `%idlepool_session_time%` | 本次连续挂机时长 |
| `%idlepool_total_time%` | 当前挂机池累计挂机时长 |
| `%idlepool_next_reward%` | 距离下次周期奖励的时间 |
| `%idlepool_earned%` | 本次挂机已获得的奖励数量 |
| `%idlepool_inbox_count%` | 暂存箱待领取条目数量 |
---
## 可选依赖
| 插件 | 用途 | 是否必须 |
|---|---|---|
| ItemsAdder | 自定义按钮、图标和 IA 物品奖励 | 否 |
| Vault + 经济插件 | 货币奖励 | 仅使用货币奖励时需要 |
| MythicMobs | MythicMobs 物品奖励 | 仅使用对应物品时需要 |
| MMOItems | MMOItems 物品奖励 | 仅使用对应物品时需要 |
| Slimefun | Slimefun 物品奖励 | 仅使用对应物品时需要 |
| PlaceholderAPI | 提供变量 | 否 |
插件缺少某个可选依赖时,不会影响其他奖励类型。建议配置完成后使用 `/afkpool doctor` 检查引用了但尚未安装的物品提供器。
---
## 常见问题
### 玩家没有挂满一个周期,进度会消失吗?
不会立即消失。未满周期进度会按挂机池设置保留,默认 7 天。超过保留期后才会重置。
### 玩家只是经过挂机池会获得奖励吗?
不会。进入区域后只会打开开始界面,玩家必须主动点击开始按钮。
### 玩家背包已满怎么办?
所有实物奖励先进入暂存箱。领取时如果背包空间不足,未领取部分会继续保留。
### 服务器异常关闭会不会重复发奖?
v1.1.0 使用奖励唯一结算 ID、SQLite 奖励流水和暂存箱领取令牌保护重复结算。对于结果无法确认的异常领取,记录会进入复核状态,不会自动回滚成可重复领取状态。
### 必须安装 ItemsAdder 吗?
不需要。ItemsAdder 仅用于可选贴图与 IA 物品,未安装时会自动使用原版界面。
### 可以修改全部提示文字吗?
可以。玩家消息、命令反馈、GUI 标题、按钮和 Lore 均可在 `message.yml` 中修改。将 `config.yml` 的 `language.file` 改为 `en.yml` 可以切换英文。
[/MD]
插件开源仓库地址:https://github.com/SenalMC/IdlePool
若你的服务端不支持此构建版本 可以选择使用JAVA创建的老版本 不过将不会得到任何更新支持
(自行下载构建)https://github.com/SenalMC/IdlePool/tree/old
插件开源仓库地址:https://github.com/SenalMC/IdlePool
若你的服务端不支持此构建版本 可以选择使用JAVA创建的老版本 不过将不会得到任何更新支持
(自行下载构建)https://github.com/SenalMC/IdlePool/tree/old