- 版权类型
- 原创
- 插件中文名称
- 搬运动物大挑战
- 插件英文名称
- ALZoneGames
- 原帖地址
- #
- 支持的核心(服务端)
- Spigot
- Paper
- Folia
- Purpur
- 语言支持
- 中文(简体)
- 前置组件
- [以下插件均为软依赖]
YiyunCEskin:https://www.minebbs.com/resources/yiyunceskin-craftengine-folia.16955/
- 适配版本(Java)
- 最新版本
- 26.x
ALZoneGames
搬运动物大挑战 / 时装检测惩罚 / 生物挣扎反击 / 钥匙物品与次数分组 / 排行榜与PAPI变量 / 跨服共享
不是简单的"刷怪杀怪"玩法,而是一套围绕区域设计、全 GUI 配置的限时抓宠计分比赛系统。
适用于:生存服 / RPG服 / 养老服 / 综合服 / 活动服 / Folia 或 Luminol / Lophine 服务端
搬运动物大挑战 / 时装检测惩罚 / 生物挣扎反击 / 钥匙物品与次数分组 / 排行榜与PAPI变量 / 跨服共享
不是简单的"刷怪杀怪"玩法,而是一套围绕区域设计、全 GUI 配置的限时抓宠计分比赛系统。
适用于:生存服 / RPG服 / 养老服 / 综合服 / 活动服 / Folia 或 Luminol / Lophine 服务端
插件简介
ALZoneGames 是一款面向 Paper 26.x / Folia 系服务端的区域玩法插件,提供两大系统,全部通过 GUI 配置,几乎不需要手改文件:
区域系统:圈地(两点长方体)或范围(圆心+半径)两种选区方式,选区时金色轮廓全棱预览(仅自己可见),启用后白色粒子边界常显(可按区域关闭)。
抓宠玩法(搬运动物大挑战):区域内按配置刷新生物,玩家潜行(Shift)+左键攻击抱起动物(骑在头顶),抱回放生区按 Shift 放下得分,限时比赛、积分换奖励、成绩入排行榜。生物会挣扎、反击、放风弹、丢潜影弹、逃跑——是会"反抗"的搬运目标,不是站桩木偶。
- 准备阶段组队 → 满员立即开局 / 倒计时到点开局,比赛中禁止加入
- Shift+左键攻击抓起(限抱 1 只),放生区 Shift 放下计分,特殊生物积分 ×2
- 生物行为可配:经验条挣扎、反击击退、风弹弹飞、潜影弹追踪、逃离 AI、负重减速
- 奖励双模式:积分达标档位全发,或按名次发奖(物品 + 指令)
- 钥匙物品参加条件:存入即钥匙、全属性严格匹配、指令发放闭环
- 每日次数分组制:同组区域共用次数,每日 / 每周 / 每月重置
- 比赛公平防护:附魔屏蔽(赛后全路径还原)、禁末影珍珠、可选二段跳与抢夺模式
- 掉线重连保护:比赛中掉线保留席位与比分,120 秒内重连续打
- 每区域 Top10 排行榜(GUI 金字塔布局)+ PlaceholderAPI 全套变量 + 插件 API 与事件
- MySQL 跨服共享:区域配置 / 排行榜 / 每日次数全群组共用,join 远程区域自动跳服
- 全菜单 yml 化(24 个菜单文件),支持 CustomModelData / 头颅 / 多动作 triggers
- Paper / Folia 双核自适应:普通 Paper 上照常运行,Folia 分支上自动落到正确线程
核心亮点
| 模块 | 说明 | 适合场景 |
|---|---|---|
| 限时抓宠比赛 | 准备阶段组队 → 开场 3-2-1 → 限时抓生物回放生区计分 → 结算发奖传回参加点 | 日常活动、周期性比赛玩法 |
| 生物行为系统 | 经验条挣扎(玩家经验零损失)、反击击退、风弹弹飞、潜影贝追踪弹、逃离 AI(撞墙自动换向)、抓起负重减速 | 做出"会反抗的猎物",拉开玩家差距 |
| 时装检测惩罚 | 联动 YiyunCEskin 按皮肤 ID 检测,未穿时装者受罚:氧气消耗 / 周期扣血 / 持续 Debuff,可同时开启 | 时装服、资源包服、RPG 服服装体系 |
| 区域 Buff | 区域内全员持续获得(隐藏粒子、自动续期),离开即清除;另有仅针对未穿时装玩家的 Debuff | 增益区域、活动加成区 |
| 钥匙物品 | 参加需持指定物品:GUI 存入即钥匙、isSimilar 级全属性严格匹配、/alzg give 原样发放,发票→验票→扣票闭环 | 门票制玩法、商城对接、签到发放 |
| 次数分组 | 同组区域共用每日次数(A 区玩过 B 区同组扣减),每组可调上限与重置模式(每日/每周/每月) | 控制玩法节奏、防肝服 |
| 公平防护 | 比赛期间自动剥除装备/武器附魔(PDC 备份,结束/死亡/重连/崩溃全路径还原)、禁末影珍珠 | 高附魔服防止附魔碾压 |
| 抢夺与二段跳 | 区域级开关:攻击头顶抱动物的玩家按概率抢夺(被抢者百分百抢回权、放生区禁抢范围);二段跳带冷却 | PVP 向玩法、增强机动性 |
| 掉线重连 | 起床战争式保护:比赛中掉线保留席位与比分,120 秒内重连回区续打,超时成绩照常入榜 | 网络波动大的服务器 |
| 排行榜 | 每区域 Top10 自动记录,GUI 金字塔布局(玩家头颅+名次+成绩+日期),提供 topclear 管理指令 | 长期竞技榜、荣誉展示 |
| PAPI 变量与 API | %alg_playing% / %alg_score% / %alg_top_区域_名次_name% 等全套变量;ALZoneGamesAPI + 4 个 Bukkit 事件(计分事件可取消) | 全息、计分板、聊天插件联动、二开 |
| 跨服共享 | MySQL 模式下区域配置、排行榜、次数分组全库共享;区域归属全自动(在哪台服圈地就归哪台服),join 远程区域自动跳服 | BungeeCord / Velocity 群组服 |
| 菜单 yml 化 | 24 个菜单文件自由编辑:shape 布局、triggers 多动作、CustomModelData、头颅、显示条件,/alzg reload 热改 | 美化菜单、资源包服自定义图标 |
| Folia 兼容 | 调度全部走 Folia 调度 API 双核自适应:生成走区块线程、传送走 teleportAsync、实体变更走实体线程,plugin.yml 声明 folia-supported | Folia / Luminol / Lophine 区域线程服务端 |
玩家如何使用
主指令:
代码:
/alzg join <区域ID> 参加指定区域
/alzg join 随机匹配(优先当前人数最少的区域)
/alzg quit 退出本局(不计成绩)
/alzg top [区域ID] 排行榜 GUI
基础流程:
- 参加后进入准备阶段(出生在放生区),期间可等待其他玩家加入,未开局不得离开放生区(越界自动拉回)
- 满员立即开局,或倒计时结束自动开局(手动模式的区域由管理员 /alzg start 开赛)
- 开局 3-2-1 大字倒计时 + 号角音效,BossBar 显示剩余时间与积分,侧边栏显示时间 / 积分 / 抓捕数
- 对区域内刷新的生物潜行(Shift)+左键攻击即可抱起(骑在头顶,限 1 只)
- 抱回放生区按 Shift 放下得分,动作栏即时反馈,特殊生物(红色发光)积分 ×2
- 时间到自动结算:达到的奖励档位全部发放(物品 + 指令),传回参加点,成绩计入排行榜
- 中途退出 /alzg quit 不计成绩;死亡、掉线、跑出区域超时都会自动结束
- 特殊生物会触发经验条挣扎:移动会加速挣脱,站定不动可以让它冷静下来
- 有的生物会反击击退、发射风弹把你弹飞、或丢出潜影贝追踪弹让你漂浮 2 秒
- 开启抢夺的区域可以攻击头顶抱着动物的玩家进行抢夺;被抢的人有一次百分百抢回机会
- 比赛中装备附魔会被临时屏蔽(防附魔碾压),结束自动还原,不用担心丢附魔
管理员快速上手(全程 GUI)
管理员 5 步配好第一个区域(输入文字时在聊天栏输入,`cancel` 取消):
- 创建:`/alzg` 打开主菜单 → 绿宝石「创建区域」→ 聊天输入 ID(如 moon)
- 选活动区域:M2「活动区域」→ 右键切换圈地/范围模式 → 左键领烈焰棒去场地选点,两点齐后整个长方体轮廓金色预览(仅自己可见)→ 聊天点 [确定创建]
- 选放生区:M2「放生区域」左键领棒,同上选点(可设在区域外,搬运路线更自由)
- 配生物:M2「生物编辑」→ 选一种刷怪蛋 → 编辑名字 / 积分 / 特殊 / 体型 / 速度 / 上限,以及挣扎、反击、风弹、潜影弹、逃离等行为开关
- 启用:回主菜单对区域右键启用,白色粒子边界出现,玩家即可 /alzg join
功能详解
时装检测与未穿惩罚(联动 YiyunCEskin)
- 检测规则:盔甲槽任一件装备上应用的皮肤命中区域配置的皮肤 ID 列表即算穿戴(支持四槽位配置)
- 未穿惩罚三种可并存:氧气消耗(原版气泡条下降,归零扣血)、周期扣血(伤害与间隔可调)、持续 Debuff(M9 药水选择器,等级 I~V)
- 穿上时装或离开区域后氧气自动恢复;未穿者每 5 秒动作栏警告
- 未配置时装的区域不受任何影响,可以只把插件当抓宠玩法用
- GUI 存入 1 件模板即成为钥匙(存完自动返还),无需编辑名字/Lore
- 匹配规则为全属性严格比对(类型+名字+Lore+附魔+NBT),改过名或附过魔的同类物品无效
- 数量 1~64、是否消耗可配(不消耗 = 持票免费玩);加入时二次校验防弹窗期丢物品
- `/alzg give <区域ID> [数量] [玩家]` 发放与模板逐字节一致的门票,支持控制台,可对接商店/签到
- M1「次数分组」书本按钮:建组 / 调上限(0~100,0=不限)/ 管理成员区域 / 删除分组(独立 Y/N 确认菜单)
- 区域在 M2 选择分组:无分组 = 不限次数;同组所有区域共用次数
- 重置模式每组独立:每日 / 每周(ISO 周一起算)/ 每月;跨天自动清零,计数按组存库
- 成功开局计 1 次(中途退出同样消耗),次数用尽后 join 与随机匹配都会拦截并提示
| 行为 | 说明 | 可调参数 |
|---|---|---|
| 经验条挣扎 | 携带期间随机触发,经验条变为挣脱进度:移动上涨、站定回落,涨满生物弹开逃脱,清零取消并冷却 | 开关 / 涨满秒数 / 触发概率(默认仅特殊生物开启) |
| 反击击退 | 玩家进入 3 格按概率触发:0 伤害击退 + 音效,冷却 3 秒 | 开关 / 概率 / 力度 |
| 风弹 | 朝玩家发射原版风电荷,命中爆炸弹飞(无伤害不破坏方块),全走原版物理 | 开关 / 概率 5~100% / 冷却 1~30 秒 |
| 潜影弹 | 检测到参赛玩家即丢潜影贝追踪弹(会拐弯追人),命中漂浮 2 秒;无距离限制,每只生物一生一次 | 开关 |
| 逃离 AI | 5 格警觉逃向反方向,寻路撞墙自动 ±45°/±90°/180° 换向重试(限频不卡服) | 开关 / 速度 1.0~3.0 |
| 负重减速 | 抱起该生物时玩家移速按倍率降低,放下 / 挣脱 / 结束自动恢复,属性修饰符实现无粒子 | 倍率 0.1~1.0(默认 1 = 不减速) |
| 其他 | 发光分色(普通白光 / 特殊红光,可关)、体型 0.25~2.0 倍、速度 = 疾跑 × 倍率、禁食物诱惑与繁殖、越界自动拉回 | M6 编辑界面 |
刷新设置(M7)
- 出生方式:区域内随机安全点,或固定点池(领工具左键逐点添加)+ 点位散布半径 0~10 格
- 刷新间隔每区域独立(0~300 秒,0 = 跟随全局默认),GUI 调整即时生效
- 双重上限:全局同屏上限 + 单生物上限;随机补位刷新(有空位时从未满种类中随机补)
- 区块未加载的点位自动跳过,不卡服;放生区周边自动避刷(距离可调)
- 二段跳:比赛中双击空格空中再跳一次,区域级冷却(默认 3 秒,0~60 可调)
- 抢夺模式:攻击头顶抱动物的玩家按成功率抢夺;失败对同一只动物禁抢;被抢者一次百分百抢回权;放生区外扩 N 格禁抢范围
- 附魔屏蔽:比赛期间剥除装备/武器附魔(PDC 备份全路径还原),可在区域级关闭
- 末影珍珠:比赛期间投掷拦截(config 全局开关,默认开)
- 每区域 Top10 结算自动记录(一人一档,按最优一场);M1 下界之星或 /alzg top 打开金字塔布局 GUI
- 管理指令:/alzg topclear <区域ID> 清空整榜;/alzg topclear player <玩家名> [区域ID] 删玩家记录
- PlaceholderAPI 变量:
%alg_playing% / %alg_score% / %alg_caught%(玩家)、
%alg_players_<区域>%(区域人数)
%alg_best_<区域>_name/caught/score%(纪录)
%alg_top_<区域>_<名次>_name/caught/score%(排行)
全息/计分板/聊天插件可直接引用 - 开发者 API:ALZoneGamesAPI(区域查询 / 比赛状态 / 排行榜读取)+ ZoneGameJoinEvent / QuitEvent / ScoreEvent(可取消)/ EndEvent 四个事件
- 存储三选一:FILE(yml)/ SQLITE(单文件,WAL 加速)/ MYSQL(自动重连健康检查),见 database.yml
- 所有 SQL 在 DB 专用单线程异步执行,网络抖动不卡主线程;每日次数原子 UPSERT,多节点并发不丢计数
- MySQL + serverid 非空即自动跨服生效:区域配置、排行榜、次数分组全库共享
- 区域归属全自动:在哪台服圈地就归哪台服(无需手动指定);join 远程区域经 BungeeCord Connect 自动跳服并走完整加入流程
安装说明
推荐环境:
| 项目 | 说明 |
|---|---|
| Java | Java 25 |
| 服务端 | Paper 26.x(api-version 26.2);Folia / Luminol / Lophine 等 Folia 分支同样支持 |
| YiyunCEskin | 可选;需要"时装检测/未穿惩罚"玩法时必须安装 |
| PlaceholderAPI | 可选;用于 %alg_...% 变量 |
| 数据库 | 默认 FILE 零依赖;需要跨服共享时使用 MySQL |
- 将 `ALZoneGames-1.0.3.jar` 放入服务器 `plugins` 文件夹
- 启动服务器,生成 `plugins/ALZoneGames/` 配置目录
- 管理员执行 `/alzg` 打开主菜单,按"快速上手"五步创建第一个区域
- 如需时装玩法,安装 YiyunCEskin 并在 M8 配置皮肤 ID
- 如需跨服,编辑 database.yml 切换 MYSQL,并在各节点 config.yml 设置唯一 serverid
- 使用 `/alzg reload` 重载配置,或重启服务器
代码:
plugins/ALZoneGames/
├── config.yml # 全局设置(比赛/次数/跨服/默认值)
├── database.yml # FILE / SQLITE / MYSQL
├── lang/zh_CN.yml # 全部文案(含药水名翻译,可自行修改)
├── lang/en_US.yml
├── menus/ # 24 个菜单 yml(布局/图标/动作自由编辑)
└── regions/<区域ID>.yml # 每区域一个文件,手改保存 1 秒内自动生效
代码:
match:
ready-seconds: 60 # 准备阶段时长(秒)
reconnect-seconds: 120 # 掉线保护期(秒)
countdown-from: 10 # 屏幕中央倒计时起始秒数
start-sound: "item.goat_horn_sound.0" # 开局号角(羊角 7 种)
settings:
language: zh_CN
disable-enchantments: true # 比赛期间屏蔽装备附魔
disable-ender-pearl: true # 比赛期间禁末影珍珠
border-particle-density: NORMAL
global-spawn-interval-sec: 5
join-limit:
daily-max: 3 # 新建分组默认次数上限
reset-hour: 0 # 每日刷新时刻
cross-server:
serverid: "server1"
serverName: "一号服"
常用命令
| 命令 | 说明 | 权限 |
|---|---|---|
| /alzg | 打开管理主菜单(无权限则显示帮助) | zonegames.admin |
| /alzg join <区域ID> | 参加指定区域玩法 | zonegames.join |
| /alzg join | 随机匹配:优先人数最少的已配置区域 | zonegames.join |
| /alzg quit | 退出本局(不计成绩) | zonegames.use |
| /alzg top [区域ID] | 排行榜 GUI(不带 ID = 区域列表,Tab 可补全) | zonegames.top |
| /alzg start <区域ID> | 手动开赛(手动模式区域) | zonegames.start |
| /alzg give <区域ID> [数量] [玩家] | 发放该区域参加物品(门票),支持控制台 | zonegames.admin |
| /alzg stop <区域ID> | 强制结束该区域全部比赛(进行中结算/准备退还),支持控制台 | zonegames.admin |
| /alzg clear <区域ID> | 清除该区域全部玩法生物与潜影弹,支持控制台 | zonegames.admin |
| /alzg topclear <区域ID> | 清空区域排行榜 | zonegames.admin |
| /alzg topclear player <玩家名> [区域ID] | 删除玩家排行记录(不带区域 = 全部区域) | zonegames.admin |
| /alzg wand <区域ID> | 重新获取选区烈焰棒 | zonegames.admin |
| /alzg confirm / cancel | 聊天按钮内部指令 / 取消输入(一般不用手打) | zonegames.use |
| /alzg reload | 重载配置、语言、区域、排行榜 | zonegames.admin |
常用权限
| 权限 | 默认 | 说明 |
|---|---|---|
| zonegames.use | 所有玩家 | 基本指令与聊天确认/取消按钮(勿设为 op,否则按钮失效) |
| zonegames.join | 所有玩家 | 参加玩法 |
| zonegames.top | 所有玩家 | 查看排行榜 |
| zonegames.admin | OP | 管理 GUI、创建/删除区域、give/stop/clear、reload |
| zonegames.start | 默认无人拥有 | 手动开赛 /alzg start,由管理员在权限插件发放(zonegames.admin 也可用) |
| zonegames.* | OP | 通配权限(LuckPerms 授权方便) |
适合购买的人群
- 你想给服务器加一个"限时抓宠搬运"的周期性比赛玩法,而不是又一个打怪刷怪插件
- 你使用 YiyunCEskin 时装体系,想要"不穿指定时装进区受罚"的区域玩法
- 你希望玩法有完整闭环:门票发放 → 验票 → 次数控制 → 比赛 → 奖励 → 排行榜
- 你想做会挣扎、反击、放风弹、丢追踪弹的"活"生物,而不是木桩目标
- 你需要二段跳、抢夺、附魔屏蔽这类竞技公平机制
- 你是群组服,需要区域配置、排行榜、每日次数跨服共享
- 你需要在全息/计分板上显示比赛数据(PlaceholderAPI 变量)
- 你的服务器跑在 Folia / Luminol / Lophine 上,需要原生区域线程兼容
- 你的服务器不是 Paper 26.x 系核心,或无法使用 Java 25
- 你只想要一个静态刷怪场,不需要计分、计时、奖励、排行榜这些比赛要素
- 你不想安装 YiyunCEskin,但又必须使用时装检测惩罚玩法(抓宠玩法本身不受影响)
- 你希望玩法零配置开箱即玩——本插件按区域逐个配置(全程 GUI),首次配置有一定工作量
购买前建议:
- 确认服务器使用 Java 25 启动
- 确认服务端为 Paper 26.x 或 Folia / Luminol / Lophine 等兼容核心
- 如需时装检测玩法,确认 YiyunCEskin 已正确安装且皮肤 ID 可查
- 如需跨服共享,确认群组已配置 BungeeCord Connect 且各节点可连同一 MySQL
- 升级前建议备份 `plugins/ALZoneGames/` 目录(含 regions/ 与 menus/)
更新与配置注意事项
- 抓捕操作为潜行(Shift)+左键攻击(0.30.0 起从右键改为左键),放下计分仍是放生区按 Shift
- 从旧版本升级时,建议删除一次 `menus/` 目录让插件重新生成菜单文件,避免旧版本号文件不触发更新提醒
- 区域配置为每区域单文件(regions/<区域ID>.yml),手改保存后 1 秒内自动热生效;新建文件即新区域
- MYSQL 跨服模式下数据库为权威,手改本地 yml 会自动写回库传播到其他节点(需世界布局一致)
- 附魔屏蔽默认开启:比赛期间剥除附魔并在结束/死亡/重连/崩溃后自动还原,不需要的区域可在 M2 单独关闭
- 比赛期间末影珍珠默认禁用(config `settings.disable-ender-pearl`)
- 掉线保护期默认 120 秒(config `match.reconnect-seconds`),0 = 掉线即出
- 语言文件缺失的 key 自动用内置默认值,升级新 key 自动合并进旧文件(自定义值不覆盖)
- Folia 系核心启动时日志会显示检测到的核心类型;普通 Paper 上行为与单线程核心完全一致
ALZoneGames
让动物搬运不只是跑腿,而是成为服务器活动、经济与竞技体系的一部分。
让动物搬运不只是跑腿,而是成为服务器活动、经济与竞技体系的一部分。