Skip to content

作用

NoDamageIndicator 用于移除原版实体受伤时的 DAMAGE_INDICATOR 伤害提示粒子,避免高频战斗时在目标周围刷出大量伤害粒子。

它适合 RPG、PVP、Boss 战、刷怪场景较密集、希望战斗画面更干净的服务器。

默认配置:GroovyConfig/NoDamageIndicator.yml

如果你在 config.yml -> feature-scripts.config-directory 中改过脚本配置目录,请以实际目录为准。

配置示例

yml
# 是否启用该脚本
enabled: true

# 生效世界列表
# 留空 [] 表示所有世界都生效
worlds: []

# 该脚本依赖 ProtocolLib 拦截原版 DAMAGE_INDICATOR 粒子包
# 缺少依赖时是否输出警告
warn-on-missing-protocollib: true

关键项说明

worlds

限定哪些世界需要移除伤害提示粒子。

  • []:所有世界都生效
  • 指定列表:只在命中的世界里拦截

如果你只想让 RPG 世界、竞技场或副本地图变干净,建议明确写世界名。

warn-on-missing-protocollib

这个脚本依赖 ProtocolLib

  • true:当服务器缺少 ProtocolLib 时输出警告
  • false:缺少依赖时静默跳过

对大多数服来说,建议保持 true,这样部署时更容易第一时间发现为什么脚本没接上。

它不会改什么

这个脚本只处理:

  • 原版客户端的 DAMAGE_INDICATOR 粒子显示

不会改变:

  • 实际伤害数值
  • 无敌帧
  • 击退
  • 原版生命值变化
  • 其他战斗逻辑

也就是说,它更像是一个“战斗画面降噪脚本”,而不是战斗机制改写脚本。

实际行为

当前实现依赖 ProtocolLib 拦截相关粒子包。

因此:

  • 安装了 ProtocolLib:脚本可以正常注册并生效
  • 没安装 ProtocolLib:脚本会跳过注册;如果 warn-on-missing-protocollib=true,控制台会给出提示

启用与重载

修改这个脚本的配置文件后,通常执行:

text
/hncore reload scripts

如果你改的是 config.yml 中脚本系统总开关、目录名等核心配置,则应执行:

text
/hncore reload

推荐使用场景

RPG / 副本 / Boss 战

适合在:

  • 怪物密集
  • 多段伤害频繁触发
  • 技能特效本来就比较多

的场景中减少视野干扰。

PVP / 竞技场

适合想保留原版打击结算,但不想让大量伤害粒子遮挡目标轮廓和技能特效的服务器。

刷怪塔 / 练级区

如果这里战斗密度很高,也可以考虑开启,减少客户端观感上的噪点。

联动说明

  • 想整体理解脚本系统:看 GroovyScripts 总览
  • 如果你还用了自定义伤害显示或 RPG 战斗系统,这个脚本通常可以与之并存,因为它只处理原版伤害粒子
  • 想看全部脚本索引:看 GroovyScripts 总览

注意事项

  • 这个脚本依赖 ProtocolLib,未安装时不会生效
  • 它不会影响真正的伤害判定,只影响粒子显示
  • 如果你的目标是改伤害机制、改数值结算或改击退,这个脚本帮不上忙
  • 如果你担心“为什么开了也没反应”,先确认:脚本自身 enabled=true、脚本系统已开启、且服务器已经安装 ProtocolLib

HN 系列插件文档