跳到正文

No Death

作者:xjuunn

NoDeath is a Fabric server-first mod that controls the death rules of specific mobs and players.

收藏

截图

介绍

中文介绍正在准备中,下面暂时显示原文。

NoDeath

NoDeath is a Fabric server-first mod that controls the death rules of specific mobs and players.

The goal is intentionally narrow:

  • Any mob renamed to NoDeath with a name tag cannot die until it is renamed again
  • Protected players cannot die from normal causes
  • Protected players can only die through command kill or by falling into the void

Contents

Overview

  • Mobs named NoDeath do not die
  • Renaming the mob immediately removes the protection
  • Supports protecting a single player through commands
  • Supports protecting all players through commands
  • Protected players cannot die from combat, environmental damage, or other normal causes
  • Protected players can still die through vanilla /kill or by falling into the void
  • Protection settings are persisted to a config file
  • Core logic runs on the server, so multiplayer clients usually do not need the mod installed

Behavior Rules

Mob Rules

  • Protection is enabled only when the mob custom name is exactly NoDeath
  • The rule applies to vanilla mobs and mobs added by other mods, as long as they can be named
  • The protection blocks the final death step without relying on client-side logic
  • Renaming the mob to any other value removes the protection immediately

Player Rules

  • Protected players do not die from normal causes
  • Death is still allowed in exactly two cases:
  • vanilla command kill such as /kill
  • falling into the void
  • When global protection is enabled, the same rule applies to all players

Compatibility

| Item | Requirement |
| — | — |
| Minecraft | 1.21 to 1.21.11 |
| Fabric Loader | 0.16.0+ |
| Java | 21+ |
| Fabric API | Required |
| Fabric Language Kotlin | Required |

The project currently targets Minecraft 1.21.11.

Dependencies

Install the following dependencies into the target mods directory together with this mod:

| Dependency | Required | Notes |
| — | — | — |
| Fabric API | Yes | Provides Fabric events, commands, and runtime APIs |
| Fabric Language Kotlin | Yes | Required because this mod is written in Kotlin |

Installation

Server-first Usage

This mod is designed primarily as a server-side mod:

  • Dedicated server: normally only the server needs this mod and its dependencies
  • Singleplayer: local installation is still required because singleplayer uses an integrated server

Commands

All commands require administrator permission by default.

| Command | Description |
| — | — |
| /nodeath | Show the current protection overview |
| /nodeath list | Show the current protection overview |
| /nodeath reload | Reload the config file |
| /nodeath all <true|false> | Enable or disable protection for all players |
| /nodeath player <player> <true|false> | Set protection for a specific player |
| /nodeath status <player> | Show whether a player is currently protected |

Notes:

  • Use vanilla /kill when you intentionally want to kill a protected player
  • Command-based configuration only applies to players, not to the NoDeath name-tag rule

Configuration

Config file path:

config/no-death.json

Default config:

{
  "protectAllPlayers": false,
  "protectedPlayers": []
}

| Field | Default | Description |
| — | — | — |
| protectAllPlayers | false | Enables protection for all players |
| protectedPlayers | [] | UUID list of individually protected players |

Data Storage

Configuration and protection data are stored in:

config/no-death.json

Data characteristics:

  • Player protection is persisted
  • Individual protection uses UUIDs, so it survives name changes
  • Global protection is stored as a separate boolean flag

中文

NoDeath 是一个 Fabric 服务端优先模组,用于控制特定生物和玩家的死亡规则。

核心目标很简单:

  • 任何被命名牌命名为 NoDeath 的生物都不会死亡,直到被改名
  • 被管理员保护的玩家不会因普通方式死亡
  • 被保护玩家只能通过命令击杀或掉入虚空死亡

目录

功能概览

  • 命名为 NoDeath 的生物不会死亡
  • 生物一旦被改成其他名字,保护立即失效
  • 支持通过命令保护单个玩家
  • 支持通过命令保护所有玩家
  • 被保护玩家不会因普通战斗、环境伤害或其他常规方式死亡
  • 被保护玩家仍然允许通过原版 /kill 或掉入虚空死亡
  • 保护配置持久化保存到配置文件
  • 主逻辑在服务端运行,多人服务器通常只需服务端安装

行为规则

生物规则

  • 仅当生物的自定义名称严格等于 NoDeath 时启用保护
  • 该规则对原版生物和模组新增生物都生效,只要它们可以被命名
  • 保护会阻止最终死亡,而不要求客户端安装模组
  • 如果把名字改成其他内容,保护立即移除

玩家规则

  • 被保护玩家不会因普通方式死亡
  • 以下两种情况仍然允许死亡:
  • 原版命令击杀,例如 /kill
  • 掉入虚空
  • 开启“全体玩家保护”后,以上规则会应用到所有玩家

兼容性

| 项目 | 要求 |
| — | — |
| Minecraft | 1.21 到 1.21.11 |
| Fabric Loader | 0.16.0+ |
| Java | 21+ |
| Fabric API | 必需 |
| Fabric Language Kotlin | 必需 |

当前工程以 Minecraft 1.21.11 为主目标版本。

依赖

请确保以下依赖与本模组一起安装到对应环境的 mods 目录:

| 依赖 | 是否必需 | 说明 |
| — | — | — |
| Fabric API | 必需 | 提供 Fabric 事件、命令和运行时 API |
| Fabric Language Kotlin | 必需 | 本模组使用 Kotlin 编写,缺失时无法加载 |

安装方式

服务端优先

本模组优先按服务端模组使用:

  • 专用服务器:通常只需服务端安装本模组和依赖,客户端不需要安装
  • 单人游戏:仍需本地安装,因为单人模式本质上运行的是内置服务器

命令说明

所有命令默认要求管理员权限。

| 命令 | 说明 |
| — | — |
| /nodeath | 查看当前保护概览 |
| /nodeath list | 查看当前保护概览 |
| /nodeath reload | 重新加载配置文件 |
| /nodeath all <true|false> | 开启或关闭全体玩家保护 |
| /nodeath player <玩家> <true|false> | 设置指定玩家是否受保护 |
| /nodeath status <玩家> | 查看指定玩家当前是否受保护 |

说明:

  • 如需有意杀死受保护玩家,建议直接使用原版 /kill
  • 命令配置只控制玩家保护,不控制命名生物规则

配置说明

配置文件路径:

config/no-death.json

默认配置:

{
  "protectAllPlayers": false,
  "protectedPlayers": []
}

| 字段 | 默认值 | 说明 |
| — | — | — |
| protectAllPlayers | false | 是否让所有玩家进入保护状态 |
| protectedPlayers | [] | 单独受保护玩家的 UUID 列表 |

数据存储

配置和保护数据保存在:

config/no-death.json

数据特点:

  • 玩家保护状态会持久化保存
  • 单独保护使用 UUID 保存,避免玩家改名后失效
  • 全体保护使用单独布尔开关控制

常见问题

No Death 支持哪些 Minecraft 版本?

No Death 支持 Minecraft Java 版 1.21–1.21.11,共 12 个版本,可用的加载器:Fabric。下载时注意选择和你游戏版本一致的文件。

No Death 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:客户端 / 服务端。

评论

登录后评论和评分

xjuunn 的其他作品

查看全部 →