Modscraper Modscraper Minecraft
Spice of Life: Fabric Flavor logo

Spice of Life: Fabric Flavor

Mod

Encourage players to consume food by increasing maximum health, balancing game.通过增加血量上限鼓励玩家食用食物,平衡游戏难度。

Type

Mod

Modrinth Downloads

45,503

Modrinth ID

mkvFT6R6

Last Updated

Jul 25, 2026

Description

English

概述

我超威,spice of fabric还不更新?

————咸味闲鱼

mod 食用 指南

该指南的config和GUI说明部分为最新版本(3.2.0)维护,其他版本呢详情请参考游戏内配置页面提示。

关于配置

服务端配置

这些配置存放于 /config/spice-of-life-fabric-flavor.json。 这些配置在服务端生效,本地游戏版本的配置影响本地游戏存档。

生命增益系统

所有配置项以health计算,2health=1heart(红心)

  • 类型: int
  • 默认值: 5000
  • 取值范围: 2~5000
  • 说明: 设置本 Mod 能提供的最大额外生命值(玩家最终血量 = 原版血量 + 其他 Mod 增益 + 本 Mod 增益。此选项仅限制“本 Mod 增益”的上限,防止数值无限膨胀)
  • 类型: int
  • 默认值: 2
  • 取值范围: 0~20
  • 说明: 每发现一个食物的生命值增益(设置此为0则等于禁用)
  • 类型: boolean
  • 默认值: false
  • 说明: 启用后,玩家死亡时血量将重置为默认值,且删除所有已发现记录
  • 类型: int
  • 默认值: 0
  • 取值范围: 任意
  • 说明: 每次生命值增益时恢复血量数值,若大于上限则恢复到上限
  • 类型: boolean
  • 默认值: false
  • 说明: 每次生命值增益时恢复血量至上限
  • 类型: string
  • 默认值: 0
  • 说明: 写法详见下文函数编写指南 可用变量: uniqueFoods食用过的食物数
  • 类型: List
  • 默认值:
[ "minecraft:rotten_flesh", "minecraft:spider_eye" ],
  • 说明:列表中的食物不再会被记录(在黑名单修改后,玩家已发现的食物不受影响,未发现的食物不再计入统计) 相关机制和操作说明: 客户端的tooltip会显示所有已发现食物(不管是否存在于黑名单,机制应用于保存黑名单前已发现某一食物),未发现且处于黑名单内的食物不显示.修改后使用 /sol2f sync AllFoodList 同步数据以确保tooltip显示正常 客户端的GUI在修改配置后需要使用sync命令同步数据.包括: 在修改了血量增益计算相关配置后,血量概述在执行sync后会重新计算并显示在客户端;在重设黑名单后,执行同步以同步客户端GUI的食物概述. 客户端的食物概述显示的是所有已发现食物/非黑名单食物,而不是所有已发现食物/所有已发现食物+非黑名单食物的并集
  • 类型: List
  • 默认值:
[],
  • 说明:列表存在大于等于1项时,启用白名单,启用后则只有白名单内食物可提供增益,同时黑名单也会阻止白名单的项目,所以如果希望启用白名单建议同时删除所有黑名单项目(在黑白名单修改后,玩家已发现的食物不受影响,未发现的食物不再计入统计) 相关机制和操作说明: 客户端的tooltip会显示所有已发现食物(不管是否存在于黑名单,机制应用于保存黑名单前已发现某一食物),未发现且处于黑名单内的食物不显示.修改后使用 /sol2f sync AllFoodList 同步数据以确保tooltip显示正常 客户端的GUI在修改配置后需要使用sync命令同步数据.包括: 在修改了血量增益计算相关配置后,血量概述在执行sync后会重新计算并显示在客户端;在重设黑名单后,执行同步以同步客户端GUI的食物概述. 客户端的食物概述显示的是所有已发现食物/非黑名单食物,而不是所有已发现食物/所有已发现食物+非黑名单食物的并集

在修改血量配置后,食用未发现食物,或重生(未开启死亡重置配置)以重新计算血量增益值 机制: 在每次食用新食物、死亡重生时会按照最新配置计算血量增益值

饱食度衰减系统

所有配置项以FoodLevel(饱食度)计算,2 FoodLevel=1 小鸡腿图标

  • 类型: boolean
  • 默认值: false
  • 说明: 启用后,玩家会随时间损失饥饿值
  • 类型: int
  • 默认值: 1200
  • 说明: 配置值代表tick(游戏刻 ↗ 游戏刻-Minecraft Wiki),每达到一定配置的游戏刻,按照函数计算衰减
  • 类型: string
  • 默认值: "1"
  • 说明: 用于计算每次自然衰减值的函数(将玩家的饱食度减少此函数的结果,而非设置为此函数的结果),写法详见下文函数编写指南 可用变量 (Variables):
    • 动作: isSprinting (疾跑), isSwimming (游泳), isSneaking (潜行), isCrawling (爬行)
    • 环境: isTouchingWater (接触水), isBeingRainedOn (淋雨), isWet (潮湿(接触水或淋雨或接触气泡柱)), BrightnessAtEyes (玩家眼镜坐标的渲染亮度(0.0-1.0) ↗ 渲染亮度|Minecraft Wiki)
    • 状态: FoodLevel (当前饥饿值), Saturation (饱食度), Exhaustion (消耗度) ↗ 饥饿机制详解-Minecraft Wiki 注:所有布尔变量在公式中为 1.0 (真) 或 0.0 (假) 配方示例:
    1. 基础固定消耗: 每周期扣 0.5 点。
    "NaturalHungerExpression": "0.5"
    1. 环境动态消耗: 疾跑或游泳:扣 4 点,淋雨或站在水中:扣 2 点,其他情况:扣 1 点
    "NaturalHungerExpression": "if(or(isSprinting, isSwimming), 4, if(or(isBeingRainedOn, isTouchingWater), 2, 1))"
    1. 黑暗生存挑战: 在黑暗处 (BrightnessAtEyes < 0.1) 消耗加倍。
    "NaturalHungerExpression": "if(lt(BrightnessAtEyes, 0.1), 2, 1)"
  • 类型: boolean
  • 默认值: false
  • 说明: 启用后,玩家睡醒时会根据函数扣除一定饥饿值
  • 类型: int
  • 默认值: 1
  • 说明: 本mod的饥饿衰减(包括自然饥饿衰减和睡眠饥饿衰减)所能扣除到的最小值,若小于该值则不再扣除,若扣除后小于该值则扣除至该值,否则按照函数默认扣除
  • 你可以使用e和pi代表e和π

运算

  • 普通四则运算(加+减-乘*除/),用括号表示的优先级(例如 ( 1 + 2 ) * 3)
  • 幂运算 pow(底数, 指数)
  • 约数:
    • 向下取整数:floor(num)
    • 四舍五入数:round(num)
    • 向上取整数:ceil(num)
  • 取大小值
    • 取大值:max(num1, num2)
    • 取小值:min(num1, num2)
  • 对数:log(底数, 真数)

逻辑

  • 判断:if(condition, A, B) ,如果 condition > 0 返回 A ,否则返回 B
  • 逻辑与:and(A, B) ,两者都大于 0 返回 1 ,否则返回 0
  • 逻辑或:or(A, B) ,A或B任意一个超过 0 返回 1 ,否则返回 0
  • 逻辑非:not(A) ,大于 0 返回 0 ,否则返回 1

比较逻辑

  • 大于:gt(A, B) ,如果 A > B ,返回 1 ,否则返回 0
  • 小于:lt(A, B) ,如果 A < B ,返回 1 ,否则返回 0
  • 等于:eq(A, B) ,如果 A = B ,返回 1 ,否则返回 0
  • 不等于:neq(A, B) ,如果A ≠ B ,返回 1 ,否则返回 0

客户端配置

这些配置存放于 /config/spice-of-life-fabric-flavor-client.json。 这些配置仅影响本地客户端显示,服务端的该配置无效。

  • 类型: boolean
  • 默认值: true
  • 说明: 控制客户端的tooltip显示。
  • 类型: boolean
  • 默认值: true
  • 说明: 控制客户端的tooltip显示。

关于命令

/sol2f clearhealthy

重置当前玩家的生命值上限与所有食物摄入记录,需管理员权限。(版本:2.0+)

/sol2f getlist <player>

获取玩家已发现食物列表。

/sol2f sync

同步所有数据。

  • /sol2f sync PlayerData同步玩家数据。主要用于GUI显示和tooltip显示控制。
  • /sol2f sunc AllFoodList同步食物数据:最新的非黑名单食物数据,玩家最大血量上限数据。主要用于GUI显示和tooltip显示控制。

关于食物簿

在修改配置后请使用命令同步数据以确保GUI显示的数据为最新数据。

GUI_foodbook

  • 使用鼠标滚轮翻页。

GUI_overview

  • 血量概述:当前获得的mod增益 / 最大可获得的mod增益。

打开GUI的快捷键在minecraft的按键绑定中配置 GUI_keybinding

物品

通过合成"食物簿"打开食物簿: food book

依赖

中文

Notice: The translation is completed by AI and may be not correct.

Overview

This mod encourages players to try a variety of foods by rewarding them with a permanent maximum health bonus for each new food they eat. It's designed to give mod packs a reason to expand their food systems and provides a new way to balance game difficulty.

Mod Guide

Note: The configuration and GUI sections below are accurate for mod version 3.2.0. For other versions, please refer to in-game tooltips and config screens.

Configuration

Important: Health Values

All health-related values are in health points. 2 health points = 1 heart.

Server-Side Configuration (/config/spice-of-life-fabric-flavor.json)

These settings are controlled by the server. In a single-player world, they affect your local save.

Health Gain System

  • Type: int
  • Default: 5000
  • Range: 2 ~ 5000
  • What it does: Sets the absolute maximum bonus this mod can add to a player's health.
    • Final player health = (Base Health + Bonuses from other mods) + This Mod's Bonus.
    • This setting only caps "This Mod's Bonus" to prevent runaway scaling.
  • Type: int
  • Default: 2
  • Range: 0 ~ 20
  • What it does: The amount of health (in HP) granted for each new food discovered. Set to 0 to disable the base gain.
  • Type: boolean
  • Default: false
  • What it does: If true, dying resets your bonus to zero and erases your entire food discovery history. This is a hardcore option.
  • Type: boolean
  • Default: false
  • What it does: If true, whenever you gain a health bonus (by eating a new food), your current health is instantly filled to your new maximum.
  • Note: If this is true, the healthIncreaseOnIncrease setting below is ignored.
  • Type: int
  • Default: 0
  • Range: Any positive integer
  • What it does: Heals you by a specific amount whenever you gain a health bonus. If the heal amount would exceed your new max, it heals you to full instead.
  • Note: This only applies if healthToMaxOnIncrease is set to false.
  • Type: string
  • Default: "0"
  • What it does: A custom formula for calculating your health bonus. The result is added to the healthGain value.
  • Variable: uniqueFoods (the total number of unique foods you've eaten).
  • Syntax: See the Function Guide below.
  • Type: List
  • Default:
["minecraft:rotten_flesh", "minecraft:spider_eye"]
  • What it does: Foods in this list will not be counted towards your discovery progress.
  • How it works:
    • Existing data: Foods you already ate before they were added to the blacklist remain in your history (the mod doesn't erase your past meals).
    • New data: Foods on the blacklist that you haven't eaten yet will never count.
    • After changing the list: You must run /sol2f sync AllFoodList to update the client GUI and tooltips. This ensures the display matches the new blacklist.
  • GUI Display: The overview screen shows Discovered Foods / Total Non-Blacklisted Foods.
  • Type: List
  • Default:
[]
  • What it does: When the list contains 1 or more items, the whitelist is enabled. Only foods on the whitelist can grant health bonuses. Note that the blacklist can still block items on the whitelist, so if you want to use the whitelist, it's recommended to clear all items from the blacklist. (After changing the blacklist/whitelist, foods already discovered by players are not affected; undiscovered foods will no longer be counted.)
  • How it works:
    • Tooltips: Client-side tooltips show all discovered foods (even if they are now on the blacklist—this only applies if you discovered them before they were blacklisted). Undiscovered foods on the blacklist are not shown. After making changes, run /sol2f sync AllFoodList to ensure tooltips display correctly.
    • GUI Sync: After changing configs, you must use the sync command to update the client GUI. For example, if you modify health gain calculation settings, the health overview will be recalculated and updated on the client after running the sync command. If you reset the blacklist/whitelist, sync to update the food overview in the client GUI.
    • Food Overview Display: The client's food overview shows All Discovered Foods / Non-Blacklisted Foods. It does not show the union of all discovered foods and all non-blacklisted foods.

Applying config changes: After changing health-related settings, the new values will apply the next time you eat a new food or respawn (if resetOnDeath is false). The mod recalculates your bonus whenever your uniqueFoods count changes or on death/respawn.

Hunger Decay System

Note: Values here use the vanilla Food Level, where 2 Food Level = 1 chicken drumstick.

  • Type: boolean
  • Default: false
  • What it does: If true, the player will passively lose hunger over time.
  • Type: int
  • Default: 1200
  • What it does: How often (in game ticks, 20 ticks = 1 second) the "Natural Hunger" decay triggers. Each time it triggers, it subtracts the amount calculated by NaturalHungerExpression.
  • Type: string
  • Default: "1"
  • What it does: A custom formula that determines how much hunger (Food Level) is subtracted each decay interval.
  • Variables:
    • Actions: isSprinting, isSwimming, isSneaking, isCrawling
    • Environment: isTouchingWater, isBeingRainedOn, isWet, BrightnessAtEyes (render brightness at eye level, 0.0 - 1.0)
    • Status: FoodLevel (current hunger), Saturation, Exhaustion
    • Note: Boolean variables return 1.0 (true) or 0.0 (false).
  • Syntax: See the Function Guide below.
  • Example:
    • Basic fixed cost: Lose 0.5 hunger every period. "NaturalHungerExpression": "0.5"
    • Dynamic cost: Lose 4 if sprinting/swimming, 2 if in rain/water, otherwise 1. "NaturalHungerExpression": "if(or(isSprinting, isSwimming), 4, if(or(isBeingRainedOn, isTouchingWater), 2, 1))"
  • Type: boolean
  • Default: false
  • What it does: If true, the player loses hunger upon waking up after sleeping.
  • Type: string
  • Default: "SleepDuration / 3000"
  • What it does: A custom formula that determines how much hunger (Food Level) is subtracted when you wake up.
  • Variables:
    • Sleep: SleepDuration (time skipped in ticks)
    • Status: FoodLevel, Saturation, Exhaustion
  • Syntax: See the Function Guide below.
  • Type: int
  • Default: 1
  • What it does: The lowest your food level can be reduced to by this mod's hunger systems (both time-based and wake-up). Decay will stop when you hit this value.
  • Constants: You can use e and pi .

  • Arithmetic:

    • Basic: + , - , * , / , and parentheses () .
    • Power: pow(base, exponent)
    • Rounding: floor(num), round(num), ceil(num)
    • Min/Max: min(a, b), max(a, b)
    • Logarithm: log(base, argument)
  • Logic:

    • Conditional: if(condition, value_if_true, value_if_false) (condition > 0 is true)
    • AND: and(a, b) (returns 1 if both > 0, else 0)
    • OR: or(a, b) (returns 1 if either > 0, else 0)
    • NOT: not(a) (returns 1 if a <= 0, else 0)
  • Comparisons:

    • Greater Than: gt(a, b) (1 if a > b, else 0)
    • Less Than: lt(a, b) (1 if a < b, else 0)
    • Equal: eq(a, b) (1 if a == b, else 0)
    • Not Equal: neq(a, b) (1 if a != b, else 0)

Client-Side Configuration (/config/spice-of-life-fabric-flavor-client.json)

These settings only affect your local display. The server doesn't care about them.

  • Type: boolean
  • Default: true
  • What it does: Shows a tooltip on foods you've already discovered.
  • Type: boolean
  • Default: true
  • What it does: Shows a tooltip on foods you haven't discovered yet.

Commands

  • Usage: /sol2f clearhealthy
  • What it does: Resets your health bonus and food discovery list. Requires operator privileges. (Added in v2.0+)
  • Usage: /sol2f getlist <player>
  • What it does: Shows the list of foods a specific player has discovered.
  • Usage:
    • /sol2f sync PlayerData - Syncs player discovery lists. Use this if GUI tooltips seem wrong.
    • /sol2f sync AllFoodList - Syncs the global food list. You must run this after changing the blacklist to update the GUI and client displays.

The Food Book

After changing any config, run the appropriate /sol2f sync command to make sure the GUI shows the correct information.

GUI_foodbook

  • Browse your discoveries. Use the scroll wheel to flip pages.

GUI_overview

  • Health Summary: Shows Current Mod Bonus / Maximum Possible Bonus.

You can set a hotkey to open the Food Book in Minecraft's Controls menu. GUI_keybinding

The Food Book Item

Craft the "Food Book" to access the interface without using the keybind. food book

Dependencies

Compatibility

Mod Loaders

Fabric

Game Versions

1.20.1 1.20.2 1.20.3 1.20.4 1.21.1

Recommended Gear

Affiliate

Hardware and extras that pair well with this mod.

As an Amazon Associate I earn from qualifying purchases.

Similar Mods

External Resources