
L'DieDiet
L'DieDiet是一个为Minecraft设计的食物厌倦系统,专门用于与Diet模组集成。它通过引入食物习惯化系统和自定义食物组,鼓励玩家多样化饮食。
🥗 L'DieDiet
L'DieDiet 是一个 Minecraft 的食物厌倦系统,专门设计用于与 Diet 模组集成。它通过引入食物习惯化系统和自定义食物组,鼓励玩家多样化饮食。
主要特性
- 厌倦阶段:你吃同一种食物越多,它带来的益处就越少。总共有 5 个阶段 —— 从“新鲜”到完全厌恶。
- 惩罚:在较高阶段,食物恢复的饥饿值和饱和度会减少,并且不再提供有益效果。
- Diet 模组集成:该模组会考虑你的 Diet 数据并对其进行调整。如果你反复吃同样的东西,你在 Diet 模组中的进度会变慢。
- 奖励系统:通过长期保持多样化的饮食,你可以获得独特的增益效果。
厌倦阶段
L'DieDiet 系统将每种食物的“厌倦等级”分为 5 个阶段(0-4)。进度取决于你连续(或在你的进食历史中)食用同一种物品的次数。
阶段机制(默认)
| 阶段 | 名称 | 特征与惩罚 |
|---|---|---|
| 0 | 新鲜 | 食物提供 100% 的益处。所有正面效果正常生效。 |
| 1 | 足够 | 饥饿值和饱和度恢复 -25%。你开始习惯这种味道。 |
| 2 | 无聊 | 饥饿值/饱和度 -50%。增益效果被禁用:来自该食物的任何魔法或加成不再生效。 |
| 3 | 恶心 | 饥饿值 -75%。Diet 模组属性增长 -50%。饱和度几乎不增加。 |
| 4 | 厌恶 | Diet 属性增长 -100%(属性完全不增长)。饥饿值恢复至最低限度。 |
阶段会随时间降低,这由 RECOVERY_TIME_TICKS + RECOVERY_MULT_2_STATS 调节。
动态阈值 - 阶段转换对 Diet 模组属性的依赖
示例:
普通苹果:在 Diet 中仅提供 1 点属性(水果)。模组使用基础阈值列表:[5, 12, 20, 30]。
复杂炖菜:在 Diet 中提供 3 点属性(谷物、蛋白质、蔬菜)。配置:THRESHOLDS_3_STATS - [8, 18, 28, 40]。
多样性加成 - 基于饮食多样性的更快阶段恢复
加成计算方式:模组查看你最近吃过的食物历史(历史长度在 REWARD_HISTORY_LENGTH 中设置)并计算其中独特物品的数量。
公式:倍率 = 1.0 + (独特物品数量 * VARIETY_RECOVERY_BONUS_PER_FOOD)。
假设每个独特产品的加成 = 0.1 (10%)。你吃了 5 种不同类型的食物。倍率 = 1.5。基础恢复时间为 10 分钟。饮食多样化时的恢复时间为 10 / 1.5 = 6.6 分钟。
你可以配置的所有内容:
基础阶段阈值
各阶段的饥饿值恢复倍率
以刻为单位的完全恢复时间
食物总是恢复的最小饥饿值
为奖励而记住的最近食用食物数量
是否将厌倦惩罚应用于饱和度
是否启用与 Diet 模组的集成
是否在阶段 3+ 将厌倦惩罚应用于 Diet 属性
是否为具有多种 Diet 属性的食物启用加成阈值
属性越多的食物阶段阈值越高
是否对具有多种 Diet 属性的食物启用恢复时间惩罚
属性越多的食物恢复越慢
按厌倦阶段划分的 Diet 属性倍率
阶段 3:正面 Diet 属性倍率
阶段 3:负面 Diet 属性倍率
阶段 4:正面 Diet 属性倍率
阶段 4:负面 Diet 属性倍率
具有多种 Diet 属性的食物的加成阶段阈值
具有 2 种 Diet 属性的食物的阈值:[阶段1, 阶段2, 阶段3, 阶段4]
具有 3 种 Diet 属性的食物的阈值
具有 4 种 Diet 属性的食物的阈值
具有 5 种 Diet 属性的食物的阈值
具有多种 Diet 属性的食物的恢复时间惩罚
具有 2 种 Diet 属性的食物的恢复时间倍率
具有 3 种 Diet 属性的食物的恢复时间倍率
具有 4 种 Diet 属性的食物的恢复时间倍率
具有 5 种 Diet 属性的食物的恢复时间倍率
多样性加成 - 多样化食物的加速恢复
阶段 1+ 每个独特产品的恢复速度加成
自定义食物组
默认有 17 个组来展示模组的功能:
最低限度 图标:🍞 (黄色) | 标志:-c (连续) 阈值:7 (任意物品) 效果:获得 2 分钟的舒适效果。 冲突:当神圣食物被激活时,此效果被立即移除。
地下室亚洲 图标:🥢 (红色) | 标志:-c (连续) 阈值:5 (独特物品) 效果:获得 3 分钟的再生和速度效果。 冲突:被神圣食物移除。如果尝试用牛奶(牛奶净化)冲掉,会引发恶心效果。
冠军早餐 图标:💪 (金色) | 标志:-c (连续) 阈值:3 (独特物品) 效果:获得 10 分钟的力量效果。 冲突:被神圣食物移除。使其更容易忍受“为食草动物”饮食(移除其负面效果)。
寒冷虚空 图标:❄ (青色) | 标志:-o (历史中) 阈值:7 (任意物品) 效果:获得 15 分钟的防冻效果。 冲突:与实体热量相互冲突(效果相互抵消)。被神圣食物移除。
快餐 图标:🍔 (金色) | 标志:-c (连续) 阈值:5 (任意物品) 效果:获得 10 分钟的缓慢效果。 依赖:如果“身体是圣殿”激活,额外引发周期性饥饿。
水果主义 图标:🍎 (红色) | 标志:-c (连续) 阈值:7 (独特物品) 效果:获得 +1 颗心(2.0 点生命值)的加成和 15 分钟的急迫效果(持续刷新)。
为食草动物 图标:🌿 (绿色) | 标志:-o (历史中) 阈值:5 (独特物品) 效果:持续的虚弱效果和周期性的恶心效果。 冲突:当冠军早餐或神圣食物被激活时,负面效果被移除。
高度数 图标:🍺 (金色) | 标志:-o (历史中) 阈值:7 (任意物品) 效果:周期性的恶心效果(持续,直到被净化)。 依赖:如果“身体是圣殿”激活,会对生命值造成大量伤害(-4.0 点生命值 / 2 颗心)。
液体五十度灰 图标:💧 (蓝色) | 标志:-o (历史中) 阈值:10 (任意物品) 效果:获得 5 分钟的舒适效果和持续的 +1 颗心(+2.0 点生命值)加成。
牛奶净化 图标:🥛 (白色) | 标志:-o (历史中) 阈值:1 (牛奶桶) 效果:如果食用了海鲜(海洋世界)或亚洲食物(地下室亚洲),会引发 3 分钟的恶心效果。 加成:如果在净化前“冠军早餐”处于激活状态,则获得 3 分钟的速度效果。
矿工的藏匿处 图标:⛏ (灰色) | 标志:-c (连续) 阈值:7 (任意物品) 效果:获得 5 分钟的夜视效果。
神圣食物 图标:✨ (金色) | 标志:-o (历史中) 阈值:1 (金制物品) 效果:解毒。移除几乎所有其他组的效果(水果主义和液体组除外)。 依赖:仅当“身体是圣殿”激活时,才给予 3 分钟的再生效果。
海洋世界 图标:🐟 (蓝色) | 标志:-o (历史中) 阈值:5 (任意物品) 效果:获得 10 分钟的水下呼吸 V 效果。 冲突:被牛奶(牛奶净化)“冲掉”时引发恶心效果。
甜食爱好者 图标:🍭 (浅紫色) | 标志:-c (连续) 阈值:10 (独特物品) 效果:将 Diet 模组中的糖分水平降低 0.5(针对糖分过量的治疗效果)。
实体热量 图标:🔥 (红色) | 标志:-o (历史中) 阈值:7 (任意物品) 效果:获得 15 分钟的防火效果。 冲突:取消寒冷虚空效果。被神圣食物移除。
身体是圣殿 图标:⛪ (白色) | 标志:-c (连续) 阈值:10 (独特物品) 效果:“脏食物”的组成员倍率。应用灰度视觉滤镜。 依赖:为快餐和酒精激活“隐藏”的负面效果。
被低估 图标:⭐ (黄色) | 标志:-o (历史中) 阈值:7 (任意物品) 效果:为所有 Diet 模组类别提供 +0.25 的加成(使你的饮食更加均衡)。
为 L'DieDiet 创建数据包的指南
数据包允许你配置食物组、激活它们时的奖励,以及厌倦系统的例外情况。
- 食物组
组配置文件位于:
data/<命名空间>/food_groups/<组ID>.json。
主要组参数:
| 字段 | 类型 | 描述 |
|---|---|---|
name |
字符串 | 组名称(显示在界面中)。 |
active_effect_text |
字符串 | 组激活时在 GUI 中可见的副标题。 |
flag |
字符串 | 计数模式:-o(总计 — 统计历史中的所有内容)或 -c(连续 — 食用连续次数)。 |
threshold |
整数 | 需要吃多少食物才能激活该组。 |
require_unique |
布尔值 | true — 仅计算不同的物品,false — 全部加起来。 |
hide_activation_message |
布尔值 | true — 隐藏快捷栏上方橙色的激活文本。 |
advancement |
字符串 | 激活时授予的进度的路径(例如,mod:folder/adv)。 |
tooltip_icon |
字符串 | 工具提示中的图标符号(例如,✨)。 |
tooltip_icon_color |
字符串 | 图标颜色(例如,gold、red、aqua)。 |
items |
数组 | 物品列表(minecraft:apple)或标签(#forge:fruits)。 |
- 效果
在
effects数组内部,你可以定义各种加成或惩罚。 常见效果字段:
duration_type(或type):"fixed"— 固定时间的效果。"until_death"— 持续到死亡为止的永久效果。"until_death_intermittent"— 永久,但会间歇性生效(闪烁)。"history_intermittent"— 只要玩家的历史中包含该组的食物,就会生效。
effect_type:"mob_effect"— 标准药水效果。"health"— 最大生命值加成。"diet"— 为 Diet 模组添加额外属性。"overlay"— 全屏视觉效果。
effect_id:效果 ID(例如,minecraft:regeneration)或 Diet 组名称。value:生命值、Diet 属性的值,或叠加纹理的路径。amplifier:效果等级(0 = 一级)。duration_ticks:以刻为单位的持续时间。
高级效果设置:
requires_active_groups:必须已经激活才能触发此效果的组 ID 列表。cancel_on_groups:激活后会取消此效果的组 ID 列表。interval_active_ticks:[最小, 最大]— 间歇模式下的活动时间。interval_pause_ticks:[最小, 最大]— 间歇模式下的暂停时间。duration_multipliers:对象{"其他组ID": 1.5},如果另一个组激活,则会增加效果的强度。
- 排除项
排除文件位于:
data/<命名空间>/exclusions/<文件ID>.json。
在这里,你可以为特定物品强制设置厌倦阶段(例如,让某种食物永远被认为是“无聊的”,或者相反,“新鲜的”)。
{
"overrides": {
"minecraft:rotten_flesh": 4,
"minecraft:golden_apple": 0
}
}
物品也可以通过物品标签完全排除:data/ldiediet/tags/items/excluded_foods.json。
进度
当你添加自己的自定义进度时,你可以将进度授予链接到某个组。为此,请使用此模板创建一个进度:
{
"parent": "........",
"display": {
"icon": {
"item": "..........."
},
"title": "..........",
"description": "............",
"frame": "task",
"show_toast": true,
"announce_to_chat": true,
"hidden": false
},
"criteria": {
"award": {
"trigger": "minecraft:impossible"
}
}
}
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。