JemDeaths

JemDeaths

在玩家死亡时,在聊天中显示死亡信息和位置。

生活质量

这是一个 Hytale 服务器插件,当玩家死亡时,会在聊天中显示死亡信息。该插件向所有玩家(或仅向死者玩家)广播死亡信息,并将死亡位置发送给死亡玩家。

功能

  • 死亡信息广播:在聊天中显示死亡信息,格式为“玩家名 死于 [原因]”
  • 可配置显示:选择是否在聊天中显示死亡信息,以及是广播给所有玩家还是仅显示给死者玩家
  • 死亡位置追踪:在玩家死亡后自动发送其死亡位置坐标
  • 热重载:使用 /jemdeaths-reload 无需重启服务器即可重新加载配置
  • 简单配置:易于使用的配置文件,带有合理的默认值

安装

  1. 发布页面下载最新版本
  2. JemDeaths-x.x.x.jar 文件放入你的 Hytale 服务器的 mods 文件夹中
  3. 启动服务器以生成配置文件
  4. (可选)编辑 Jemsire_JemDeaths/DeathConfig.json 文件以自定义设置
  5. 在游戏中输入 /jemdeaths-reload,如果你修改了配置,则会重新加载配置

配置

首次启动后,将在 Jemsire_JemDeaths/DeathConfig.json 创建配置文件:

{
  "ShowDeathMessage": true,
  "ShowPosition": true,
  "DeathAnnouncementFormat": "<red>{player} {deathCause}",
  "DeathLocationFormat": "<gold>Your last death position: <white>X:{x} Y:{y} Z:{z}",
  "DeathCauseReplacement": "was"
}

配置选项

  • ShowDeathMessage(默认值:true):启用向所有人发送死亡信息

    • 当为 true 时:死亡信息会广播给所有在线玩家
    • 当为 false 时:死亡信息被禁用
  • ShowPosition(默认值:true):启用仅向玩家发送其死亡位置

    • 当为 true 时:玩家会收到一条包含其死亡坐标的私密消息
    • 当为 false 时:位置通知被禁用
  • DeathAnnouncementFormat(默认值:"{player} {deathCause}"):自定义死亡公告信息的格式

    • 支持占位符:{player}{playerName}{deathCause}{rawDeathCause}{position}{x}{y}{z}
    • 示例:"[DEATH] {player} died: {deathCause}""Cant believe {player} {deathCause}"
  • DeathLocationFormat(默认值:"<gold>Your last death position: <white>X:{x} Y:{y} Z:{z}"):自定义发送给玩家的死亡位置信息的格式

    • 支持占位符:{player}{playerName}{deathCause}{rawDeathCause}{position}{x}{y}{z}
    • 示例:"Your death location: {x}, {y}, {z}""Died at: {position}"
  • DeathCauseReplacement(默认值:"was"):用于替换死亡原因中“You were”的内容

    • 游戏自带的死亡信息通常以“You were”开头,此设置将其替换
    • 示例:"was"(默认)、"got""perished from"

颜色格式化

DeathAnnouncementFormatDeathLocationFormat 都支持使用颜色格式化,可以使用标签或传统的颜色代码。插件会自动检测并应用颜色(如果存在)。

支持的颜色格式:

  • 命名颜色标签<red><blue><green><yellow><gold>
  • 十六进制颜色标签<#FF0000>(用于自定义颜色)
  • 传统颜色代码&a&c&e 等(Minecraft/Hytale 格式)

可用的命名颜色:

  • blackdark_bluedark_greendark_aquadark_reddark_purple
  • goldgraydark_graybluegreenaqua
  • redlight_purpleyellowwhite

示例:

{
  "DeathAnnouncementFormat": "<red>{player} <gray>{deathCause}</gray>",
  "DeathLocationFormat": "<gold>Your last death position: <#00FF00>X:{x} Y:{y} Z:{z}</#00FF00>"
}

或使用传统代码:

{
  "DeathAnnouncementFormat": "&c{player} &7{deathCause}",
  "DeathLocationFormat": "&6Your last death position: &aX:{x} Y:{y} Z:{z}"
}

可用占位符

占位符可用于 DeathAnnouncementFormatDeathLocationFormat

  • {player}{playerName} - 玩家的显示名称
  • {deathCause} - 格式化后的死亡原因(已替换“You were”)
  • {rawDeathCause} - 未经替换的原始死亡原因
  • {position} - 完整位置,格式为“x, y, z”(例如:"123.4, 64.0, -567.8")
  • {x} - 仅 X 坐标(例如:"123.4")
  • {y} - 仅 Y 坐标(例如:"64.0")
  • {z} - 仅 Z 坐标(例如:"-567.8")

配置示例

默认配置:

{
  "ShowDeathMessage": true,
  "ShowPosition": true,
  "DeathAnnouncementFormat": "<red>{player} {deathCause}",
  "DeathLocationFormat": "<gold>Your last death position: <white>X:{x} Y:{y} Z:{z}",
  "DeathCauseReplacement": "was"
}

自定义格式化消息:

{
  "ShowDeathMessage": true,
  "ShowPosition": true,
  "DeathAnnouncementFormat": "Cant believe {player} {deathCause}",
  "DeathLocationFormat": "Your death location: X:{x} Y:{y} Z:{z}",
  "DeathCauseReplacement": "got"
}

命令

  • /jemdeaths-reload - 无需重启服务器即可重新加载插件配置
    • 权限jemdeaths.reload
    • 使用方式:修改 DeathConfig.json 后使用此命令以应用更改

此项目是开源的:

欢迎贡献代码或将其改编到你自己的系统中!查看 GitHub

想获取我所有项目的更新吗?

加入 Discord!立即加入