Skip to content
STUTTEFRFIXPublic

About

企图在我的世界里面还原真实的医疗体系 为游戏添加难度 目前版本为1.21.1nofo

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

🌐 中文 · English

ICU

在 Minecraft 中还原真实的身体损伤与医疗体系。

平台 Minecraft 1.21.1 + NeoForge 21.1.252
构建 ModDevGradle 1.0.24 · Gradle 8.14.3 · Java 21
mod id icu
当前版本 0.2.2
许可证 Apache-2.0(允许修改与再分发)
已实现 4 个玩法模块 + 1 个物品 + JEI 集成

安装

必需

组件 版本
Minecraft 1.21.1
NeoForge 21.1.252 或更高的 21.1.x
本模组 icu-Mod-0.2.2.jar(从 Releases 下载)

把 icu-Mod-0.2.2.jar 放进实例的 mods/ 文件夹即可。

⚠️ 只下载带 -Mod 的 .jar。 Release 里另有 icu-<版本>-src.zip,那是源码压缩包(.zip 格式,装不进 mods/)。 不要下载任何 -sources.jar:它是 jar 格式、且含 neoforge.mods.toml, 装进 mods/ 后模组会显示在列表里但代码完全不会执行,等于没装。

可选:JEI(想看到绷带信息页与 ICU 分类页才需要)

组件 版本
Just Enough Items (JEI) jei-1.21.1-neoforge-19.57.0.450 或更高的 19.x

从 modrinth.com/mod/jei 下载 1.21.1 + NeoForge 那个文件,放进 mods/ 即可。

不装 JEI 完全没问题:ICU 照常运行,只是少两个 JEI 页面。 ICU 的 mods.toml 把 JEI 声明为 optional,所以两者顺序、有无都不影响加载。


这是什么

ICU 把「受伤」和「救治」做成一套写实的机制。玩法以独立模块形式添加,一个功能一个包,互不干扰。

模块 内容
大出血 被刀斧重创后持续失血,可用绷带救治
血容量 隐藏血量;出血时每秒 −5%,归零即死;非出血时缓慢自然恢复
疼痛值 出血与崴脚共用的疼痛计量;满值会强制倒下
摔落崴脚 高处摔落有概率扭伤脚踝;护甲附魔可减免
绷带 3 纸 + 1 线 + 1 羊毛;按住 3 秒止血
JEI 集成(可选) JEI 存在时:绷带信息页 + ICU「大出血流程」分类页

心跳音效尚未实现:设计已定稿,等音频素材。 JEI 是可选的:不装 JEI 也能正常玩,ICU 不会因此报错。


30 秒看懂代码

src/main/java/com/icu/icu/
├── IcuMod.java                  ← 起点:模组入口,只做注册
├── IcuAttachments.java          ← 全部玩家状态(血容量/疼痛/崴脚…)
├── IcuItems.java                ← 物品注册
├── item/BandageItem.java        ← 绷带
└── gameplay/                    ← ★ 所有玩法的家,一个功能一个子包
    ├── bleeding/                ← 大出血 + 恢复期
    ├── blood/                   ← 血容量
    ├── pain/                    ← 疼痛值
    └── sprain/                  ← 摔落崴脚

想改玩法 → 只动对应的 gameplay/<模块>/。 想加新玩法 → 在 gameplay/ 下新建一个包(如 fracture/)。 详见 docs/DEVELOPMENT.md。


文档地图

文档 什么时候看
本文件 第一次接触项目
docs/CHANGELOG.md 想知道「实现了什么功能、改了什么」
docs/PROJECT_STRUCTURE.md 想知道每个文件具体干什么
docs/DEVELOPMENT.md 要加新功能、改代码之前
docs/PROJECT_REPORT.md 项目管理、问题分析、接手总览
docs/HANDOVER.md 接手项目,想快速了解全貌与当前状态

怎么构建

方式一:直接下载(普通玩家用这个)

见上方「安装」章节 —— 从 Releases 下载 icu-Mod-0.2.2.jar 丢进 mods/。

方式二:自己编译

build.bat

产物:build/libs/icu-Mod-0.2.2.jar。

本机有沙箱限制,build.bat 已内置所需环境变量(JDK 21 路径等)。 在没有限制的普通机器上,直接 gradlew.bat build 即可。 细节与踩坑记录见 docs/PROJECT_REPORT.md 与 docs/HANDOVER.md。

方式三:云端自动构建(推荐,本机编译不了时用这个)

推送到 main 会自动编译检查;推一个 v* 标签会自动编译并发布 Release:

git tag v0.1.0
git push origin v0.1.0

标签即版本号:v0.1.0 → mod 版本 0.1.0(workflow 自动写入 gradle.properties)。 编译失败会记录在 BUILD_FAILURES.md。


当前功能一览

大出血

被剑/斧类武器命中、且护甲+附魔结算后最终伤害 > 7 点 时触发。

行为 数值
出血层数 每命中一次 +1,无上限
失血 血容量 每秒 −5%(100% → 0% = 20 秒)
致死 只有血容量归零会致死
强制趴下 游泳姿态 + 锁移动 + 禁跳 + 锁击退
附加效果 反胃 + 黑暗(持续刷新)
表现 血粒子、中文死亡消息

创造 / 旁观 / 无敌玩家不会出血:出血状态会被清除,致死路径对这类玩家不可达。

血容量

规则 数值
初始 / 上限 100%
大出血期间 每秒 −5%
归零 立即死亡
自然恢复 非出血期间每 10 分钟 +5%
绷带治疗 不重置,保留当前数值

绷带

3 纸 + 1 线 + 1 羊毛,堆叠 16。右键按住 3 秒;期间出血照常每秒扣 5% 血容量。

⚠️ 绷带只在血容量 ≥ 15% 时有效。 低于这个值说明你已经流得快死了,绷带救不回来: 会提示「绷带没用——血已经流干了」,出血继续到归零。 判定发生在按住 3 秒结束的那一刻,所以血不够时你会先缠满 3 秒、然后才失败 (绷带照常消耗,不能反复试)。

疼痛值(共用)

来源 每秒
大出血 +10%
崴脚·行走 +5%
崴脚·奔跑 +10%
崴脚·跳跃 +15%(一次性)
趴下状态 −5%

满 100% → 强制趴下 + 弹 3 次「我好疼 我好疼」(仅自己可见);降至 80% 恢复行动。

大出血恢复期

治疗后 5 分钟。期间跑 >15 秒或第 4 跳 → 伤口复发(血容量不重置)。任何跑/跳会重置计时。

摔落崴脚

摔落高度 概率
≤ 5 格 不触发
> 5 且 < 10 35%
≥ 10 且 < 15 50%
≥ 15 且 < 20 90%
≥ 20 100%

干草块 −20 个百分点;保护/摔落保护附魔每级 −8,4 级完全免除。 入水、缓降、鞘翅、紫颂果、抗火自动豁免。


许可证

本项目采用 Apache License 2.0。三处声明完全一致:

位置 内容
LICENSE Apache License 2.0 全文
gradle.properties mod_license=Apache-2.0(会写入模组元数据,游戏内模组列表可见)
本文件 你正在看的这一节

你可以:自由使用、修改、分发本项目,包括商业用途与二次开发。 条件:保留版权与许可证声明,并标明你做出的修改(见 LICENSE 第 4 条)。 不提供担保:见 LICENSE 第 7 条。

About

企图在我的世界里面还原真实的医疗体系 为游戏添加难度 目前版本为1.21.1nofo

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages