01机制概览
每个营养组是一条独立的 0–100 数值轴。食物可同时影响多个组;饱食度下降时,各组按配置的衰减率减少。
同一份食物对不同组的贡献可以不同。例如苹果同时增加水果和糖分;食物之间的差异构成饮食结构。
营养面板示意
按 H 打开营养面板。组名、配色和阶段范围取自 Forge 主线内置 JSON;悬停或键盘聚焦每个阶段,查看其实际配置的加成预览。默认阶段没有手写名称或描述,因此提示仅显示区间、配置的加成与必要的点击指令提示。
nutrition_groups.json 与默认数据包中的 nutrition_stages/*.json、nutrition_bonuses/*.json;配色来自 color_schemes.json。例如默认蔬菜组的 initialValue 为 42、decayRate 为 6;图中 55% 只为展示 46–60 区间的加成。加成悬浮依据 HealthyDietScreen 与 BonusTooltipUtil,不是把任意描述写进默认配置。
02增加与衰减
进食增加与饱食度衰减是两条独立结算路径。
进食增加量约为:食物基础值 × 该组获取倍率;存在终身厌食时再乘以衰减系数。结算后按 0–100 夹取。管理员指令、自然衰减和初始值不经过获取倍率。
- 1范围固定为 0–100。营养值可保留小数,结算后按上下限夹取。
- 2阶段判定使用整数。当前值四舍五入后匹配阶段,例如 59.6 按 60 处理。
- 3死亡不会清空营养值。重生时数据随玩家能力复制。
/headiet 面板和服务器配置为准。
03阶段
阶段是营养值区间及其关联行为;阶段标题、描述和点击指令在阶段页编辑,跨组的持续效果与属性加成在独立效果页按区间条件配置。
阶段边界使用整数。编辑器会校验相邻区间,避免数值落在阶段之间的空档;判定时先四舍五入,再匹配区间。
阶段可配置项
游戏内 /hdui stage:阶段/指令/描述
需要 OP4;左侧只列启用的营养组。以下三张图分别固定展示一个 Tab 的结构;图中的标签链接可跳转到对应图,图中按钮和输入框是只读示意,不能替游戏保存。
StageManageScreen.buildContentTabs/buildEffectButton/buildStageBottomButtons、buildCommandRows/buildDescriptionRows 与当前 zh_cn 标签。04加成与联动
独立效果页可为一个或多个营养组的区间组合配置持续属性修饰器和药水效果;全部条件满足时触发联动加成。它不是食物吃下后的一次性药水效果编辑页。
独立效果与属性加成页
从 阶段页的绿色“效果”入口进入;仅展示启用组。点击某组进度条的阶段可填起止,手工输入后需点“自选”才提交范围。Shift 点击可追加/取消选中阶段;同时选择多个组时,对每个选中区间组合分别保存到 nutrition_bonuses,不能将这些条件理解为一张单组阶段表。
EffectManageScreen.buildGroupRangeControls/buildBottomButtons/saveEffectRows 与当前 zh_cn 标签。物品单次食用效果另见 食用药水效果。05条件规则
普通营养结算在进食时直接执行;条件规则在普通结算之后,根据营养区间决定额外变化或命令。
条件规则可同时检查多个营养组,全部满足后对任意组执行加减、运行命令,或同时执行两者。条件组与目标组可以不同。
一条条件规则 · 示意
两种常见配置
条件:肉类在 0–86。目标:肉类 +20。
当前 80 时进食,最多到 86;当前 90 时条件不成立,不增加。
条件:肉类在 86–100。目标:肉类 -30。
当前 95 时进食,降至 86 附近即停止,不会继续落入低值区。
06编辑器与变体
手持物品输入 /hdui,打开该物品的配置入口。
编辑器集成营养、厌倦、口渴、饱食度、堆叠、品质、保质期、效果、指令、条件与清除效果。下图为布局示意,并非实际截图。
另一个入口:/hdui create 的营养值 Tab
/hdui create 要求 OP4,创建/修改的是营养组定义,并非修改某位玩家当前数值。品质和品级位于同一编辑器的另外两个 Tab;品质图、品级图可直接跳转。
HdCreateScreen.buildGroupForm/buildHeaderButtons/groupErrors;注册新物品另见 注册管理器。NBT 变体:同名物品的独立配置
同一物品可按 NBT 划分为多个变体,每个变体保存独立配置;进食时使用命中变体的配置。例如同一药水的不同 NBT 可配置不同营养。
常用入口
/hdui create(OP4):创建/修改营养组、品质、品级定义;组 ID 创建后不可随意改,不注册独立物品。/hdui stage(OP4):打开阶段/指令/描述编辑,绿色“效果”通往独立加成页。/hdui groups [玩家](OP4):执行者打开自己或指定玩家的数值管理屏,不是普通营养面板,也不创建组定义。/hdui registry(OP4):打开注册管理器查看、刷新和删除注册项;新物品 ID 按启动流程生效。/hdui tooltip(OP4):手持物品的 Tooltip 编辑入口;详见Tooltip 编辑。
营养组定义由数据包承载;编辑器中的创建或修改会写入配置覆盖层。旧 /hdgroups 已删除。
07管理与命令
普通玩家可查看自身面板;修改其他玩家数值或暂停营养组需要相应权限。
| 命令 | 权限 / 用途与对象 |
|---|---|
/headiet 或 /headiet open | 玩家本人,无 OP 要求:把营养面板发给自己。 |
/headiet open <玩家> | OP2:把营养面板发给指定玩家,不是执行者查看该玩家的面板。 |
/headiet add <玩家> <组> <数值> | OP4:增加目标玩家对应组数值;输入 0–100,可带小数。 |
/headiet subtract <玩家> <组> <数值> | OP4:减少目标玩家对应组数值;输入 0–100,可带小数。 |
/headiet set <玩家> <组> <数值> | OP4:把目标玩家对应组设为指定值;输入 0–100,可带小数。 |
/hdui groups [玩家] | OP4:执行者打开自己或指定玩家的营养管理屏,可调数值或暂停组;并非组定义编辑。 |
08要点回顾
- 数值范围为 0–100。小数保留,阶段判定时四舍五入。
- 营养值随饱食度消耗按衰减率下降。饱和度不参与;死亡不清空。
- 阶段控制持续状态,条件规则控制单次进食结算。实际组、阈值与效果以服务器配置为准。