WarZDuelTime —— 经典单挑插件的重制版|1.13-1.21+ | 多竞技场 / 排位 / 商城 / Folia 支持

二次开发 游戏模式 WarZDuelTime —— 经典单挑插件的重制版|1.13-1.21+ | 多竞技场 / 排位 / 商城 / Folia 支持 2.6.17

完成注册/登录后下载
  • 修复“先丢末影珍珠,再加入单挑竞技场,随后被珍珠传送出场刷装备”的漏洞。
  • 禁止比赛玩家通过非插件传送方式离开竞技场范围。
  • 对会在赛后恢复原背包的经典/Kit 对局,比赛中禁止把装备丢在地上。
[MD] ## 本次更新 ### 1. 修复决斗死亡后立即断线导致关服 - 修复玩家在决斗中死亡后立即断线(死亡瞬间强退),在 `1.21.11`、Luminol 等较新核心上抛出 `World mismatch` 异常并导致服务器关闭的问题。 - 原因是旧逻辑会在 `PlayerQuitEvent` 期间直接对已断线玩家执行跨世界传送,新核心对这种传送时机更加敏感。 ### 2. 改为“下次上线再传” - 玩家退出时不再直接在 `PlayerQuitEvent` 期间跨世界传送,而是把回城坐标记入“待上线传送”队列。 - 玩家下次上线时再补传到原大厅/出生点位置,彻底避开断线期间的传送异常。 ### 3. 结算逻辑跳过正在断线的玩家 - 决斗结算中的延迟回城、死亡后恢复(背包、经验等级等)逻辑现在会跳过正在断线的玩家。 - 这些状态会保留到玩家下次上线时再恢复,避免对离线玩家写入/传送造成的报错。 [/MD]
  • 修复开赛时玩家处于骑乘状态导致无法传送进单挑场地
  • 统一传送增加异步失败兜底,兼容新核心更严格的传送行为
  • 顺带覆盖大厅回传、观战回传、重生回传等共用传送路径
[MD] 本次更新: 1. 修复 Kit 竞技场重载后变成经典 - 修复 dueltime:kit 竞技场类型没有持久化到数据库的问题。 - 现在执行 /dt reload、重连数据库或插件重建竞技场实例后,Kit 竞技场会继续按 KitArena 重新加载,不会再自动退回经典竞技场。 2. 自动迁移旧竞技场表结构 - 竞技场数据表现在会自动补齐 type_id 字段,避免旧版本表结构缺列时继续丢失竞技场类型。 - 当服务器升级到本版本后,若当前内存中的竞技场类型仍是正确的,插件会在重载流程中优先回填该类型,尽量减少升级后再次写错的情况。 3. 新增竞技场类型手动修正命令 - 新增管理员命令 /dt arena settype <竞技场ID> <竞技场类型>。 - 适用于已经被旧版本错误重载成经典的空闲竞技场,可直接在线修正为 dueltime:kit 或其他已注册类型。 - 为避免比赛中途切换类型造成异常,命令仅允许在竞技场空闲、无玩家、无观战者时执行。 [/MD]
版本更新:

  • WarZDuelTime -> 2.6.0
  • WarZDuelTimeTeam -> 2.0.0
主要更新内容:

  • Kit.items 和团队随机装备组都支持 TacZ 枪械/复杂物品保存。
  • 新增 item-base64 复杂物品格式,优先还原真实 ItemStack,原来的 material/name/lore/custom-model-data 简单写法继续兼容。
  • 新增命令/GUI:
    • /dt kit save <槽位> [main|offhand]
    • /dt kit gui
    • /dt kit list
    • /dt kit remove <槽位>
    • /teamduel equip save <group> <slot> [main|offhand]
    • /teamduel equip gui <group>
    • /teamduel equip list [group]
    • /teamduel equip remove <group> <slot>
    • /teamduel equip enable|disable
    • /teamduel equip weight <group> <weight>
  • GUI 交互:左键目标槽复制手持/鼠标物品,右键清空,关闭自动保存,不会把管理员手里的 TacZ 物品吃掉。
  • 补充了更详细的中文配置注释,重点包括 Kit.items、团队 equipment-randomizer、messages.yml、arenas.yml、越界、队友标记、TacZ 保存方式。
  • 喜欢
反馈: xiaosuan1
[MD] ## 本次更新 ### 1. 修复 Kit 同归于尽后的背包恢复 - 修复 Kit / `dueltime:kit_loadout` 对局中,两名玩家同归于尽时,后死亡玩家可能在赛后延迟回传阶段被普通死亡逻辑清理背包的问题。 - 赛后待恢复原背包的玩家如果在延迟回传期间死亡,会转入重生后的回传与原背包恢复流程,不再把 kit 装备误保存为赛后装备。 - 玩家在死亡重生前退出服务器时,也会立即按待恢复数据回传、恢复原背包并保存玩家数据。 [/MD]
[MD] ## 本次更新 ### 1. 比赛中越界直接死亡 - 经典 1v1 / Kit 对局在正式比赛阶段,如果玩家离开竞技场创建时设置的立方体范围,会直接被击杀并进入原有死亡结算流程。 - 倒计时阶段仍沿用原本锁定出生点逻辑,不会因为倒计时移动限制触发死亡。 - 默认关闭,保持旧版“拉回最近有效位置”的处理方式;用户开启后才会改为越界死亡。 ### 2. 新增配置项 ```yaml Arena: classic: out-of-bounds: kill-player: false ``` ## 兼容版本 - 团队竞技场扩展建议同步更新到 `WarZDuelTimeTeam 1.10.0`。 [/MD]
  • 等待队列加入增加统一 CD,覆盖聊天“点击加入”、/dt join、GUI、全服匹配。
  • 加入广播增加独立 CD,只限制刷屏广播,不影响入队。
  • 广播增加“仅当前世界/维度发送”开关。
  • 新配置在 Arena.wait 下:join-cooldown、broadcast-cooldown、broadcast-same-world-only。
[MD] ## 本次更新 ### 1. 胜利烟花不再炸死玩家 - 经典决斗结算时生成的胜利烟花现在会被标记为纯庆祝特效。 - 该烟花仍会正常播放视觉效果,但不会再对附近玩家造成爆炸伤害。 - 这解决了“双方残血时,获胜者击杀对手后反被烟花炸死”的问题。 ### 2. 背包恢复时机调整为回传之后 - 需要恢复原背包的经典/Kit 对局,现在会先把玩家送回大厅或原位置,再恢复原背包、等级与经验。 - 不再出现“比赛刚结束,人还站在竞技场里,原背包已经先恢复”的情况。 - 对死亡结算重生回传、延迟返回和赛后下线保存的时序也做了统一,减少背包清空、串包和残留风险。 ### 3. 赛后状态恢复链路更稳 - 赛后补恢复逻辑现在会结合玩家是否已经脱离竞技场、是否已经完成回传再执行。 - 这样可以避免异步传送尚未完成时,旧背包被过早塞回玩家身上。 [/MD]
[MD] # WarZDuelTime v2.2.2 更新说明 ## 版本信息 - **版本号**: v2.2.2 - **发布日期**: 2026-05-24 - **更新类型**: 匹配页面展示优化 --- ## 本次更新 ### 1. 匹配页面地图 lore 描述 - 匹配页面的竞技场物品现在支持按竞技场 ID 配置额外 lore。 - 可用于展示地图介绍、玩法说明、人数建议、奖励提示等内容。 - 支持占位符:`{arena}`、`{arena_name}`、`{arena_id}`、`{state}`、`{now_number}`、`{max_number}`。 ### 2. 可选右键观战 - 新增匹配页面右键观战配置项。 - 默认关闭,避免观战点未配置或观战地图异常时影响玩家。 - 开启后,玩家可在匹配页面右键正在进行中的竞技场进入观战。 ### 3. 观战保护 - 经典竞技场未配置观战功能时,会正确取消观战事件。 - 避免玩家进入“已标记观战但没有真实观战数据”的异常状态。 --- ## 新增配置 将以下内容补到 `config.yml` 的 `Gui.Start` 下: ```yaml ArenaDescription: enabled: true default-lore: [] arenas: example_arena: - "&8&m----------------" - "&7这里可以写地图描述。" - "&7竞技场ID: &f{arena_id}" RightClickSpectate: enabled: false lore: - "&7右键点击观战" ``` 说明: - `ArenaDescription.arenas` 下面的 key 必须填写竞技场 ID。 - `default-lore` 会作为未单独配置地图的默认描述。 - `RightClickSpectate.enabled` 默认为 `false`,确认观战功能稳定后再开启。 --- [/MD]
后退
顶部 底部