DeathMessages - 自定义死亡消息
高度可配置的死亡消息自定义插件
Bukkit / Spigot
作者 GerhartStudios
支持版本 1.12 - 1.21
服务器使用量
9
服务玩家数
97
下载量
159,861
插件详细介绍
DeathMessages 是 @CosmoConsole 开发的 DeathMessagesPrime 插件的重制版。它是一款简单易用、高度可定制的死亡消息插件,允许你通过配置文件完全修改 Minecraft 中的所有死亡消息,支持到最新版本。
重要提示
- 本页面部分描述可能已过时,即将更新。
- 不推荐使用 Spigot,建议至少使用 Paper 或其分支服务端。
兼容性与依赖
核心依赖
- 需要 BungeeCord Chat API,因此 CraftBukkit 不受支持。
- 建议使用 Paper 或其分支服务端以获得最佳体验。
插件联动
PlaceholderAPI
- 安装后可在死亡消息中使用任何占位符。
- 可用占位符:
%deathmessages_messages_enabled%%deathmessages_is_blacklisted%%deathmessages_victim_name%%deathmessages_victim_display_name%%deathmessages_killer_name%%deathmessages_killer_display_name%
WorldGuard
- 需在
settings.yml中启用。 - 可为区域设置自定义标志,所有标志默认为
ALLOW。 - 当前可用标志:
broadcast-deathmessage-playerbroadcast-deathmessage-mobsbroadcast-deathmessage-naturalbroadcast-deathmessage-tameable- 将任一标志设置为
DENY可在指定区域内禁止广播对应类型的死亡消息。
MythicMobs
- 需要安装 MythicMobs。
- 配置文件已包含预格式化的部分,请查看
PlayerDeathMessages.yml和EntityDeathMessages.yml的底部。
DiscordSRV
- 需要安装 DiscordSRV。
- 在
settings.yml中配置频道并启用钩子后,重启服务器即可。
主要特性
- 十六进制颜色支持:可使用
&#c39bd3或#c39bd3格式。 - Bungee 支持:支持跨服全局消息。
- 多配置文件:配置文件附带详细注释,便于配置。
- 群体击杀判定:当玩家周围特定半径内存在一定数量的同类生物时,可判定为群体击杀(可配置)。
- 文本组件消息:所有消息均为文本组件,可自定义悬停文本和点击动作。
- 完全自定义:可完全自定义生物和伤害类型的死亡消息。
- 伤害过期配置:可配置生物伤害过期时间,超时后视为自然死亡。
- 武器消息处理:可自定义无自定义名称武器的击杀消息,或使用默认配置。
- 世界组自定义:支持世界分组。
- 禁用世界列表:可指定不广播死亡消息的世界。
- 每世界消息:支持为不同世界设置不同的死亡消息。
- 可驯服生物击杀消息:例如“玩家X杀死了玩家Y的狗”,并支持悬停显示生物名称。
- 多消息随机选择:每个死亡原因可配置多条消息,随机选择。
- 内置占位符:插件自带大量占位符,详见
PlayerDeathMessages.yml。 - 更多功能:请探索配置文件。
命令与权限
/dmsg- 重载插件配置。
- 权限节点:
deathmessagesprime.reload /toggledeathmsg- 玩家切换是否为自己显示死亡消息。
- 权限节点:
deathmessagesprime.toggle(默认仅OP可用,请注意调整) /dmsg(无参数)- 显示插件版本和可用命令。
- 权限节点:
deathmessagesprime.version
常见问题与解答
如何报告漏洞或请求新功能?
- 报告漏洞:请前往 GitHub Issues 提交,并提供尽可能多的信息(版本、日志、截图等)。
- 功能请求:同样通过 GitHub Issues 提出,开发者会进行评估。
出现“invalid character, unacceptable code point...”错误?
- 必须将配置文件保存为 UTF-8 编码(无 BOM)。请根据你使用的文本编辑器查找保存为 UTF-8 的方法。
出现“ClassNotFoundException: net.md_5.bungee.api...”错误?
- 你正在使用不受支持的 CraftBukkit。请迁移到 Spigot 或 Paper 等分支。
占位符 `%weapon_name%`、`%weapon%` 显示为“???”?
- 这些占位符仅在特定的“Custom”类型消息中受支持。对于非自定义名称的武器,可在配置中启用
show-custom-death-msg-on-all-weapons选项来使用 Custom 消息。
死亡消息中显示心形符号而非生物名称?
- 在配置文件中将
heart-compat-mode从false改为true。
如何为同一死因添加多条随机消息?
- 在配置文件中对应死因下,以相同的“- ”前缀格式添加多条消息即可,插件会随机选择一条。
与其他插件冲突?
- 如果你是插件开发者,请在
PlayerDeathEvent中使用低于HIGHEST的优先级。 - 如果你是服主,请尝试联系相关插件的开发者。DeathMessages 具有冲突检测机制,但并非完美。
API 参考
事件
BroadcastDeathMessageEvent(当死亡消息即将广播时触发)getPlayer()- 返回受害者玩家getLivingEntity()- 返回杀手实体getTextComponent()- 返回死亡消息的文本组件isGangDeath()- 返回是否为群体击杀getBroadcastedWorlds()- 返回消息将广播到的世界列表getMessageType()- 返回消息类型 (PLAYER,MOB,NATURAL,TAMEABLE)BroadcastTameableDeathMessageEvent(当可驯服生物死亡消息即将广播时触发)getPlayer()- 返回杀手玩家getOwner()- 返回可驯服生物主人的用户名getTameable()- 返回被击杀的可驯服生物getTextComponent()- 返回死亡消息的文本组件getBroadcastedWorlds()- 返回消息将广播到的世界列表getMessageType()- 返回消息类型
工具类
PlayerManager- 提供玩家相关信息player,uuid,username,displaynamemessagesEnabled- 布尔值isBlacklisted- 布尔值getLastDamage-DamageCausegetLastEntityDamager-EntitygetLastExplosiveEntity-EntitygetLastProjectileEntity-ProjectilegetLastClimbing-MaterialgetLastLocation-LocationDeathMessages.getEventPriority()- 返回settings.yml中设置的事件优先级
社区翻译
- 西班牙语:PlayerDeathMessages.yml
- 荷兰语:PlayerDeathMessages.yml
- 波兰语(由 Pan123 翻译):PlayerDeathMessages.yml
- 意大利语(含十六进制颜色):
- PlayerDeathMessages.yml
- EntityDeathMessages.yml
支持与反馈
- 支持 Discord:请加入开发者 Discord 获取帮助。
- 提交漏洞报告时请务必提供:
- 详细的错误信息
- 截图(如果可能)
- 你的 DeathMessages 插件版本
- 相关日志或错误记录
- 请勿仅报告“xxx 不工作”而不提供任何细节,此类反馈可能被忽略。
测试支持版本
版本分布
基本信息
插件名称
DeathMessages
作者
GerhartStudios
平台
Bukkit / Spigot
支持版本
1.12 - 1.21
点赞数
23
Modrinth 下载
134
最近版本
5
8
26.1
1