简介
KnockBackFixer 是一款用于修复 Minecraft 中一个常见漏洞的插件。当玩家在另一位玩家之后加入服务器时,可能会造成比其他玩家更强的击退效果。通过此插件,您可以直接在游戏中设置击退的速度和高度,从而为您的 PvP 服务器打造平衡且出色的战斗体验。
-----------------------------------
完全兼容 1.7 | 1.8 | 1.9 版本
-----------------------------------
> 重要提示:关注我的 Twitter 账号以获取插件更新:https://twitter.com/EdoDev2__
重要须知
- 不兼容 NoHitDelay!KnockBackFixer 会自动禁用服务器中的 NoHitDelay 插件。
- 请勿在评论区提交 Bug,否则将无法获得技术支持。
- 升级前请备份旧的配置文件,因为新版本会生成全新的配置文件。
- 依赖项:仅需 WorldGuard。
什么是连击模式?
当玩家处于配置文件中定义的连击区域(Combo Region)内,或者被击中的玩家食用了附魔金苹果(GApple)时,连击模式将被激活。
在连击模式下,插件会启用一个可配置的击中延迟和自定义击退效果。这使您能为 PvP 服务器创造流畅、精彩的连击战斗体验。
连击区域如何运作?
所有位于连击区域内的玩家都可以进行 PvP 连击,即使该区域未启用 PvP。您还可以在配置中为连击区域设置自定义音效。
- 自定义音效仅在您的服务器为 纯 1.7|1.8 或更低版本 或 纯 1.9 或更高版本 时才能激活(具体说明见 config.yml)。
- 现在,当玩家尝试在连击区域内食用 GApple 时,还会显示一条可配置的提示消息。
- 注意:在连击区域内,连击模式始终处于激活状态,玩家无需食用 GApple 即可获得连击效果。
命令列表
执行 /knockbackfixer(或 /kb、/knockback)可查看所有子命令和插件信息。
- 设置普通模式击退
/knockbackfixer setkbvel <数值>- 设置被击中时击退的力度(默认 0.45)。/knockbackfixer setkbheight <数值>- 设置被击中时击退的高度(默认 0.4)。/knockbackfixer setkbdelay <数值>- 设置服务器中非连击模式下的默认击中延迟(可在配置中启用/禁用)。
- 设置连击模式击退
/knockbackfixer setcombovel <数值>- 设置连击模式下的击退力度。/knockbackfixer setcomboheight <数值>- 设置连击模式下的击退高度。/knockbackfixer setcombodelay <数值>- 设置连击模式下的击中延迟。
如何调试自定义击退效果?
警告:此过程需要大量耐心!
- 使用
/knockbackfixer setkbvel和/knockbackfixer setkbheight命令,通过反复尝试并微调数值(例如从 0.45 增至 0.50),直到找到理想的普通击退效果。 - 同样,使用
setcombovel、setcomboheight和setcombodelay命令,通过多次尝试并调整各项数值,来平衡和创建您理想的连击模式体验。
如何创建连击区域?
- 配置区域名称:
- **免费版**:在 config.yml 的 `comboRegion` 项中填入您的单个区域名称(例如:`ComboRegion`)。- **高级版**:在 config.yml 的 `ComboRegions` 列表中添加任意数量的区域名称。- 在游戏中创建区域:
- 使用 WorldEdit 魔杖选定两个点。- 执行命令 `/rg define <区域名称>`(区域名称需与配置中设置的一致)。- 执行命令 `/rg flag <区域名称> invincible allow`。现在,您的连击区域已准备就绪!
免费版 vs 高级版
免费版功能
- 自定义服务器击退
- 连击模式
- 仅支持 1 个连击区域
- 开发者 API
高级版功能
- 包含免费版所有功能
- 创建无限个连击区域
- 可移除 KnockBackFixer 的加入提示消息
- 为所有地面实体配置自定义击退
- 支持开发者的工作
高级版获取:https://www.spigotmc.org/resources/knockbackfixer-premium-combo-mode-hit-delay.22900/
开发者 API
KnockBackFixer v4.0 引入了两种事件,您可以在自己的插件中调用以取消击退:
- PlayerKnockbackEvent(当玩家受到 KnockBackFixer 的自定义击退时调用)
- EntityKnockbackEvent(当非玩家实体受到自定义击退时调用,仅高级版可用)
事件方法
PlayerKnockbackEvent:
getPlayer()- 获取被击退的玩家。getDamager()- 获取造成伤害的玩家。
EntityKnockbackEvent:
getEntity()- 获取被击退的实体。getDamager()- 获取造成伤害的玩家。
使用说明
- 如需查看事件触发,只需在配置中启用调试模式,然后在游戏中击打玩家或实体。
- 请确保在您插件的
plugin.yml中添加:depend: [KnockBackFixer]
---
许可证声明
KnockBackFixer by EdoDev2_ 遵循知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议。
- 您不能重新分发此插件。
- 您不能出售此插件。
- 您不能反编译此插件。
- 仅在我同意的情况下方可修改此插件。