战斗持久性

战斗持久性

在Fabric服务器上阻止战斗记录。战斗中退出游戏,你的一个副本会带着你的装备留在原地。击杀它并夺取战利品。仅需服务端安装,玩家无需安装任何东西。

管理

战斗持续

有人在战斗中落败,于是退出了游戏。在大多数服务器上,事情到此为止:他们安全了,还能保住自己的物品。

有了这个模组就不一样了。如果玩家在战斗中离开,会有一个携带其装备的复制体留在原地,直到战斗计时结束。杀死它,他们的物品就会掉落。当他们重新登录时,就已经死了。

它只在服务器端运行。你的玩家不需要安装任何东西。

一名玩家在战斗中登出,其假人被杀死并掉落了战利品

工作原理

  • 攻击另一名玩家会让你们双方进入 15 秒的战斗状态。倒计时显示在快捷栏上方。你可以在配置中修改时长。
  • 如果你在战斗中登出,一个带有你装备的 [OFFLINE] 假人会留在你当时站立的位置。
  • 如果有人杀死了假人,你的物品会掉落,并且你下次加入时会死亡。
  • 如果在计时结束前没有人杀死它,它会消失,你登录时会拿回所有物品。
  • 只有 PvP 会启动计时器。怪物、摔落伤害和岩浆不会。断线等同于退出游戏。

下面是第二种情况,没有人杀死假人:

假人在计时结束后存活,玩家重新登录时带着所有装备

无法传送逃离战斗

当玩家处于战斗中时,/spawn、/home、/tp、/tpa、/warp 和 /back 会被阻止。你可以将自己的命令添加到列表中。

在战斗中尝试 /spawn 和 /tp

安装

  1. 你需要一个运行 Minecraft 26.3 的 Fabric 服务器,Fabric Loader 0.20.1 或更新版本,以及 Java 25。
  2. 将 Combat Persistence 和 Fabric API 放入 mods 文件夹。
  3. 启动一次服务器。配置文件会创建在 config/combatpersistence.json。

使用的是较旧的 Minecraft 版本?请查看版本选项卡。每个文件只适用于为其列出的版本。

大多数人会修改的设置

设置 默认值 作用
combatTagDurationSeconds 15 最后一次攻击后战斗状态持续的时间。
blockedCommands /spawn、/home、/tp、/tpa、/warp、/back 战斗中无法使用的命令。添加你服务器使用的别名。
combatMessage IN COMBAT: %s s remaining 倒计时文本。
npcNamePrefix [OFFLINE] 显示在假人名称前面的前缀。
npcDeathBroadcast [PvP] %s combat logged and was slain! 假人死亡时的聊天消息。
disableEnderChests false 为整个服务器关闭末影箱。

完整配置列表在 GitHub 上。

离线模式服务器

如果你的服务器以离线模式运行,内置了一个可选的登录系统:/register 和 /login、哈希密码、多次错误尝试后的锁定,以及登录超时。在线模式服务器会跳过所有这些,因为 Mojang 已经验证了账户。

一个警告:离线模式不加密流量,因此任何能看到连接的人都可以读取密码。如果可以,请使用在线模式,并告诉玩家不要重复使用真实密码。

常见问题

玩家需要这个模组吗? 不需要,只有服务器需要。

它能在 Paper、Spigot、Forge 或 NeoForge 上运行吗? 不能,它仅支持 Fabric。

如果服务器在假人还站在那里时重启会怎样? 假人会消失,但物品栏会保存到磁盘,因此玩家下次加入时会拿回它。

它能与其他模组一起使用吗? 原版物品栏、盔甲和副手都已覆盖。我还没有测试添加自己物品栏槽位的模组(背包、饰品),所以请先在测试世界中试用。

有什么它无法处理的情况吗? 如果服务器在假人死亡后、世界保存前崩溃,掉落的物品可能会丢失。更多细节见安全说明。

问题与支持

发现了 bug?请提交 issue,附上你的 Minecraft 版本、模组版本和服务器日志,我会查看。请先从日志中删除密码和 IP 地址。

如果这为你的服务器省去了一些麻烦,在项目页面关注会有帮助,在 Ko-fi 上请我喝杯咖啡也会有帮助。