
调味得当
受《旷野之息》启发的食物系统
精心调味
《精心调味》用直接治疗和数据驱动的食物效果取代了 Minecraft 的饥饿系统。其灵感来源于《塞尔达传说:旷野之息》和 Matcha Flavoured 数据包中基于配料的烹饪系统。
该模组提供食物系统。整合包和数据包提供食物档案。
改动内容
- 饥饿值 HUD 被隐藏。
- 饥饿值、消耗度、饥饿伤害和基于饥饿值的生命恢复被禁用。
- 玩家可以随时疾跑和进食。
- 未配置的食物将恢复生命值而非饥饿值。
- 数据包可以为任何现有的食物物品设置治疗效果、状态效果和制作等级。
- 食物提示框显示最终的心数值和已配置的状态效果。
- 相同的数据适用于原版物品和其他模组的物品。
未配置的食物会恢复其原版营养价值一半的生命值,最低恢复 1 点生命值。2 点生命值等于 1 颗心。
支持目标
| Minecraft | 模组加载器 | Java |
|---|---|---|
| 1.21.1 | Fabric | 21 |
| 1.21.1 | NeoForge | 21 |
Fabric 版本还需要 Fabric API。请在客户端和服务器端都安装此模组。
数据包设置
将烹饪目录(catalog)放置在此目录中:
<datapack>/
└── data/
└── <namespace>/
└── well_seasoned/
└── cooking/
└── <catalog>.json
每个目录都是一个 JSON 对象。它可以包含一个 intrinsics 数组、一个 foods 数组,或两者都包含。定义可以引用其他目录文件中的定义。
这个完整示例定义了一个固有属性并将其分配给一种食物:
{
"intrinsics": [
{
"id": "example:fortifying",
"effects": [
{
"id": "minecraft:resistance",
"duration": 240,
"amplifier": 0,
"maximum_duration": 4800,
"maximum_amplifier": 1,
"ambient": false,
"show_particles": true
}
]
}
],
"foods": [
{
"item": "example:pumpkin_jam",
"tier": "preserved",
"healing": 3,
"mode": "append",
"intrinsics": [
"example:fortifying"
]
}
]
}
一个食物条目可以选择一个物品标签中的所有食物物品。使用 tag 代替 item:
{
"foods": [
{
"tag": "example:fruit",
"tier": "simple",
"healing": 2,
"intrinsics": [
"example:refreshing"
]
}
]
}
该标签使用标准的数据包物品标签格式。对于上述示例,请在 data/example/tags/item/fruit.json 处定义标签。不要在标签 ID 前添加 #。缺失和空的标签是允许的。标签中的非食物物品会被忽略。
一个明确的 item 条目会覆盖匹配的 tag 条目。如果两个配置的标签包含相同的食物且没有明确的物品条目,则重新加载将失败。
更改目录后运行 /reload。《精心调味》会将所有目录作为一个整体进行验证。如果任何目录无效,重新加载将失败,并保持上次有效的集合生效。固有属性 ID、明确的食物物品 ID 和食物标签 ID 在整个集合中必须唯一。
制作等级
等级会改变基础治疗效果和效果持续时间。特殊餐食还会增加一级效果等级。配置的最大值仍然适用。
| 等级 | 治疗 | 效果持续时间 | 效果等级 |
|---|---|---|---|
simple |
1.00x | 1.00x | +0 |
preserved |
1.35x | 2.50x | +0 |
meal |
1.75x | 5.00x | +0 |
special_meal |
2.00x | 8.00x | +1 |
例如,一个 healing: 3 的腌制食物(preserved)会恢复 4.05 点生命值。
目录参考
固有属性字段
| 字段 | 必需 | 默认值 | 描述 |
|---|---|---|---|
id |
是 | — | 该固有属性的唯一命名空间 ID。 |
effects |
是 | — | 一个或多个效果对象。 |
效果字段
| 字段 | 必需 | 默认值 | 描述 |
|---|---|---|---|
id |
是 | — | 命名空间的生物效果 ID。 |
duration |
否 | 1 |
基础持续时间(单位:刻)。必须为正数。 |
amplifier |
否 | 0 |
基础效果等级,其中 0 为 I 级。 |
maximum_duration |
否 | 24000 |
持续时间上限(单位:刻)。 |
maximum_amplifier |
否 | 2 |
效果等级上限,其中 2 为 III 级。 |
ambient |
否 | false |
使用环境效果样式。 |
show_particles |
否 | true |
显示效果粒子。 |
每秒有 20 刻。等级倍率在应用到持续时间和效果等级上限之前生效。
如果玩家已经拥有相同等级的同种效果,食用该食物会增加一半的新持续时间,最少增加 20 刻。结果不能超过 maximum_duration。较弱的食物效果不会替换较强的已生效效果。
当多个食物来源提供相同效果时,最高的效果等级生效。具有相同效果等级的效果会累加持续时间。结果不能超过这些来源中最大的 maximum_duration。内置的物品效果概率会被保留。
食物字段
| 字段 | 必需 | 描述 |
|---|---|---|
item |
条件性 | 现有食物物品的命名空间 ID。使用 item 或 tag 其中之一。 |
tag |
条件性 | 物品标签的命名空间 ID。使用 tag 或 item 其中之一。 |
tier |
是 | 四种制作等级之一。 |
healing |
是 | 基础生命值点数,范围从 0 到 40。 |
mode |
否 | append 保留内置的物品效果。replace 移除它们。默认值为 append。 |
intrinsics |
是 | 一个或多个固有属性 ID。 |
计划功能
路线图分为两个系统。以下功能是计划中的,除非其他部分说明它们已经支持,否则不属于当前版本。
食物效果兼容性
- 为效果组合行为添加可配置的全局默认值。
- 公开物品标签和数据格式,以便与其他模组兼容。
- 提供防火食物的示例数据。
菜品效果继承
- 检测菜品的配料或配方组件,包括来自农夫乐事(Farmer's Delight)及其扩展模组的食物。
- 当菜品没有特定的食物条目时,允许它们继承并组合配料效果。
- 允许整合包作者为特定菜品覆盖、禁用或替换继承的效果。
- 为重复效果以及持续时间和效果等级的缩放添加可配置规则。
- 为组合菜品添加单独的持续时间和强度倍率。允许高于
1.0的值。例如,0.75的倍率使每个继承的效果具有 75% 的效率。 - 支持数据驱动的强化配料,使制作出的餐食比简单食物更强或持续时间更长。例如,土豆汤可能比烤土豆提供更多的抗火效果。
- 公开配料标签和数据格式,以便与其他模组兼容。
- 验证配料数据并为组合餐食提供示例数据。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。