Skip to content

Releases: Doom-Flare/doom.virtual.health

doom.virtual.health v3.1.1 (Minecraft 1.21.5 – 26.3)

Choose a tag to compare

@Doom-Flare Doom-Flare released this 17 Oct 02:14

📦 doom.virtual.health - v3.1.1

🧹 署名与链接整理(重打包)
这一版不改玩法、不改命令:只把包内 README 的作者名与仓库链接从旧用户名更新为 Doom_Flare,再按规范重打 zip、重算 sha256。

  • ✅ 命令层与 v3.1.0 逐字节相同(63 个 mcfunction 一字未改)
  • 📝 包内 README.md 的作者行与 Issues 链接更新为新用户名
  • 📦 两份 zip 重新生成,sha256 随之更新(v3.1.0 已标为「已被取代」)

📥 下哪个

MC 版本 data pack format 用哪个包
1.21.5 – 26.2 71 – 107.1 doom.virtual.health-v3.1.1.zip
26.3 121.0 doom.virtual.health-v3.1.1-mc26.3.zip
1.21.4 及更低 ≤ 61 不支持

⚠️ 在 26.3 上装主用份会让服务器直接起不来(Registry loading errors: doom.virtual.health:vitality),26.3 请用 -mc26.3。

🔧 怎么装

  1. 下载对应你 MC 版本的那份 zip。
  2. 解压,把整个 doom.virtual.health/ 放进 <存档>/datapacks/(服务器放 world/datapacks/)。
  3. 进游戏 /reload,再 /function doom.virtual.health:__help__ 看命令表。

📦 资产与校验

文件 适用版本 sha256
doom.virtual.health-v3.1.1.zip 1.21.5 – 26.2 7de698051b48a820896d720ac6176f6de27735b3343dffd22cb489feb5ac12b6
doom.virtual.health-v3.1.1-mc26.3.zip 仅 26.3 92a6171b30ea1836e343dd66afc4f15d7ba059c6274f3743d1fab87f128e8e05

校验:sha256sum -c SHA256SUMS.txt(Windows:Get-FileHash <zip> -Algorithm SHA256)。

📖 源码在哪

仓库本体:doom.virtual.health/(zip 内每个条目与它逐字节相同)。
文档:README · CHANGELOG · docs/

Full Changelog: v3.1.0...v3.1.1

doom.virtual.health v3.1.0 (Minecraft 1.21.5 – 26.3)

Choose a tag to compare

@Doom-Flare Doom-Flare released this 05 Oct 02:01

⚠️ 已被 v3.1.1 取代 —— 新版修正了包内 README 的作者名与链接,命令层与本文完全相同。

📦 doom.virtual.health - v3.1.0

🎯 多版本支持更新!
本版本把 doom.virtual.health 从单版本扩展到 Minecraft 1.21.5 – 26.3。

doom.virtual.health 现已支持 Minecraft 1.21.5 – 26.3(共 12 个版本)。

  • ✨ 新增多版本变体(按版本边界拆成 2 份)
  • 🐛 修复 注册表 JSON schema(26.3):enchantment 注册表的 condition → type、
    requirements 数组 → 单体。这是本包唯一的真·硬破坏 —— 旧写法会让 26.3 服务器直接起不来。
  • 🐛 修复 pack.mcmeta 新规则(1.21.9 起):min_format/max_format 必需,区间已如实收窄。
  • ✅ 其余敏感点(属性 / 伤害来源 / 装备 NBT 路径 / bossbar 同步 / Health 探针时序 / 跨命名空间耦合)
    逐条核对后确认无需修改。
  • 📌 玩法行为与 v3.0.0 完全一致(63 个 mcfunction 一字未改)—— 本版改的是能不能装上去。
  • 📌 接口冻结契约一字未改,外部读者 doom.custom_mob 不受影响。

📊 支持的版本与对应包

MC 版本 data pack format 用哪个包
1.21.5 71 doom.virtual.health-v3.1.0.zip
1.21.6 80 doom.virtual.health-v3.1.0.zip
1.21.7 / 1.21.8 81 doom.virtual.health-v3.1.0.zip
1.21.9 / 1.21.10 88.0 doom.virtual.health-v3.1.0.zip
1.21.11 94.1 doom.virtual.health-v3.1.0.zip
26.1 / 26.1.1 / 26.1.2 101.1 doom.virtual.health-v3.1.0.zip
26.2 107.1 doom.virtual.health-v3.1.0.zip
26.3 121.0 doom.virtual.health-v3.1.0-mc26.3.zip
1.21.4 及更低 ≤ 61 ❌ 不支持

⚠️ 26.3 上必须用 -mc26.3 那份:26.3 改了 enchantment 注册表的 JSON 形状,
在 26.3 上装上面那份会启动失败。

✅ 真机验收(全部实测)

MC 版本 结果
1.21.5 ✅ 12/12 · 0 加载错误
1.21.6 ✅ 12/12 · 0 加载错误
1.21.7 ✅ 12/12 · 0 加载错误
1.21.8 ✅ 12/12 · 0 加载错误
1.21.9 ✅ 12/12 · 0 加载错误
1.21.10 ✅ 12/12 · 0 加载错误
1.21.11 ✅ 12/12 · 0 加载错误
26.1 ✅ 12/12 · 0 加载错误
26.1.1 ✅ 12/12 · 0 加载错误1
26.1.2 ✅ 12/12 · 0 加载错误2
26.2 ✅ 12/12 · 0 加载错误
26.3 ✅ 12/12 · 0 加载错误

📦 资产

文件 适用版本 sha256
doom.virtual.health-v3.1.0.zip 1.21.5 – 26.2 cd556d2b946fb4a8c24a37c242c4e0cedf6f9eb3d296614c0ad17af02032145b
doom.virtual.health-v3.1.0-mc26.3.zip 仅 26.3 51bcccbc04d4742c689140863c166aa50e13a683c587735f4e4f741344db8816

校验:sha256sum -c SHA256SUMS.txt(Windows:Get-FileHash <zip> -Algorithm SHA256)。

Full Changelog: v3.0.0...v3.1.0

doom.virtual.health v3.0.0

Choose a tag to compare

@Doom-Flare Doom-Flare released this 30 Sep 06:12

下哪个

你是 下载这个
所有人 —— 本包只有一个变体,不用挑 doom.virtual.health-v3.0.0.zip

zip 里装的是完整的 doom.virtual.health/ 数据包:91 个文件(63 个 .mcfunction + 24 个 .json + 3 个 .mcdoc 补全定义 + pack.mcmeta)。
它同时含两个命名空间:doom.virtual.health(虚拟血量核心)与 doom.bossbar(血条联动,可选,不接也不影响本体)。
不需要开启任何实验性玩法,也不依赖别的数据包。

版本对应关系:本版是 v3.0 这条线的规范三位版号。旧标签 v3.0 保留不动,但它从未附带任何产物(只有标签,没有 zip)——
想下载请用本页的 doom.virtual.health-v3.0.0.zip。两者是同一个版本,没有功能差别。

怎么装

  1. 解压 doom.virtual.health-v3.0.0.zip → 得到一个文件夹 doom.virtual.health/;
  2. 把它整个放进 saves/<你的存档>/datapacks/(服务器:world/datapacks/);
    最终路径必须是 .../datapacks/doom.virtual.health/pack.mcmeta —— 多套一层就不加载;
  3. 进游戏 /reload,打 /function doom.virtual.health:__help__,聊天栏有输出就是装上了。

给一只僵尸装上虚拟血量(auto_init 方式,第一 tick 自动初始化):

/summon minecraft:zombie ~ ~ ~ {data:{dvh:{max_health:40d, health:40d, on_death:"say died"}}, NoAI:1b}

传统方式(对任意实体):

/execute as @n run function doom.virtual.health:api/create {with:{max_health:21.5, health:20}}

再给已有虚拟血量的实体挂一条血条(可选):

/execute as @e[tag=virtual_health_entity] run function doom.bossbar:api/create {with:{name:'"Boss"',color:red,style:progress,visible:"true",targets:"@a"}}

卸载:先 /function doom.virtual.health:__unload__ 把虚拟血量实体摘干净,再删掉 datapacks/doom.virtual.health/ 并 /reload。
更细的安装、卸载与排错见仓库 docs/01-安装.md。

校验值

附件 sha256
doom.virtual.health-v3.0.0.zip d271d11b12752493c74bf2875146e84c106f261c4e3c2166a1e5a479cf47be93

GitHub 在每个附件右侧也会显示同一串,可直接对照。下载后自己算一遍:

Windows PowerShell:  (Get-FileHash doom.virtual.health-v3.0.0.zip -Algorithm SHA256).Hash
Linux / macOS:       sha256sum doom.virtual.health-v3.0.0.zip

仓库里 dist/SHA256SUMS.txt 存的是同一组值。

源码在哪

  • 源码就是数据包本体:仓库 doom.virtual.health/
    —— 63 个 .mcfunction,每个都能直接点开看。这个包是手写的,没有生成器,所以仓库里没有 src/。
  • 成品与源码是同一份东西:zip 内 91 个条目与仓库 doom.virtual.health/ 下的同名文件逐字节相同。
  • 玩家手册在 docs/(安装 · 用法与 API · 配置 · 兼容与版本 · 致谢与许可),
    图文文档站:https://doomdecapitator.github.io/doom.virtual.health/;逐版变更在 CHANGELOG.md。
  • 打包工具、结构门与验收脚本在私有开发仓库(不对外)。

这一版改了什么

  • 仓库形态改成玩家向:顶层重排为 README.md · LICENSE · CHANGELOG.md · dist/ · docs/ · doom.virtual.health/ · .github/,
    第一屏直接回答"这是什么 / 下哪个 / 怎么装 / 源码在哪";文档站(docs/index.html)继续在 GitHub Pages 上服务。
  • 包体同步工作区较新的一份(3 处):mcdoc/doom.virtual.health.mcdoc 用显式键名取代 [string]: any
    (拼错键当场报警,补全覆盖 doom.vh:ctx 的全部运行时槽位);pack.mcmeta 改为多行(值不变);
    __unload__.mcfunction 去掉行首 UTF-8 BOM。这三处都是无行为变化的工程整理(PATCH 级)。
  • 旧标签 v3.0 保留不动,其 Release 已标注"已被 v3.0.0 取代"。详细条目见
    CHANGELOG.md。

Doom Virtual Health v3.0

Choose a tag to compare

@Doom-Flare Doom-Flare released this 05 Aug 08:19

⚠️ 已被 v3.0.0 取代 —— 本标签(v3.0)从未附带任何产物(只有标签,没有 zip);请到 v3.0.0 下载。
两者是同一个版本,只是按新规则补上了规范的三位版号。

Doom Virtual Health v3.0 — 虚拟血量系统 + Bossbar 血条联动

为 Minecraft 实体注入独立于原版血量的虚拟血量系统,自动映射到 Bossbar。

✨ 核心特性

  • 独立虚拟血量:实体拥有 dvh.health / dvh.max_health(mHP,0.001 HP 精度),与原版血量完全解耦
  • auto_init:/summon 直接带 data:{dvh:{...}} NBT,第一 tick 自动初始化
  • 高频 tick 伤害检测:以原版 Health(512f)为探针,22 scale 采样,伤害/治疗精准换算
  • 死亡回调 on_death:血量归零时执行任意命令字符串(say / function / summon / playsound 等)
  • 正确的死亡归属:UUID int-array → hex 字符串 → damage ... by <uuid>,击杀 credit 归攻击者
  • 百分比判定:dvh.pp / dvh.pp_max 实体级阈值,7 个 predicate 函数(below/above/between × percentage/hp)
  • 无敌控制:set_invulnerable 一键免疫
  • 伤害倍率:set_damage_mult ×1000 标度,范围 [1, 100000]
  • 余数精度补偿:dvh.rem_damage / dvh.rem_heal 进位,长期累计不丢精度
  • 统计追踪:累计伤害 / 治疗 / 玩家伤害,可导出到任意计分板

📊 Doom Bossbar(联动模块)

  • 自动同步 VH 血量到 Bossbar(tick 驱动)
  • persist 支持实体死亡后保留血条
  • 自定义名称 / 颜色 / 样式 / 可见玩家

⚡ vitality 附魔触发器

  • 附魔 tick 驱动装备加成同步(attribute_modifiers → dvh.max_health),替代命令轮询
  • Riding 实体(猪/马/骡等)→ 主手槽,其余 → 鞍槽,api/apply_trigger 自动分配

🛠️ 技术亮点

  • 纯原版数据包,零外部依赖(1.21.6+)
  • mcdoc 支持:3 个 mcdoc 文件提供 Spyglass 自动补全
  • 治疗计算:delta × 50 × mult / 1000 / 22 → mHP(C1 修复)
  • trigger_death 实体 NBT 隔离(C5 修复),回调数据不污染全局 storage
  • 伤害倍率上限保护(H7 修复)

📚 文档

🚀 快速开始

# auto_init
/summon minecraft:zombie ~ ~ ~ {data:{dvh:{max_health:40d, health:40d, on_death:"say died"}}, NoAI:1b}

# 传统方式
/execute as @n run function doom.virtual.health:api/create {with:{max_health:21.5, health:20}}

# 绑定 Bossbar
/execute as @e[tag=virtual_health_entity] run function doom.bossbar:api/create {with:{name:'"Boss"',color:red,style:progress,visible:"true",targets:"@a"}}

Release notes 由 Deepseek AI 自动生成。