Dynamic Nutrition 1.0.0 [Fabric] [26.x]
Curse Maven Snippet
What's new
The first release. Five nutrients tracked from everything you eat, with values built from real nutritional composition.
Nutrients
Carbohydrates, protein, fat, vitamins and minerals, 0 to 100 each. Values come from real per-100g composition rather than from a category, so a carrot is worth 27 vitamins against cooked beef's 4, and cooked beef is worth 25 protein against a carrot's 1.
Each drains at its own rate, fastest for carbohydrates and slowest for fat, driven by the drop in food and saturation rather than by a timer. Cooking is worth a 25% bonus, applied from the recipe rather than written into the data.
Variety
Of your last 8 meals, every repeat of a food beyond the first costs 20% of its value, floored at 30%. Eight or more different foods costs nothing, three costs about a third, one food forever sits on the floor. Nutrition only; hunger is untouched.
Effects
Well Nourished grants 2 hearts of maximum health. Malnourished removes 1 and applies -10% movement speed and -15% attack damage, and names the nutrient you are short of. Both heart counts are configurable from 0 to 5.
Thresholds are per nutrient, low and target: 22/64 carbohydrates, 35/75 protein, 8/45 fat, 30/78 vitamins, 12/58 minerals. A 3 point deadband stops the status flickering between meals.
Unknown foods
Four stages: shipped data, then #dynamicnutrition:nutrient/* item tags, then the recipe graph, then
the c:foods/* convention tags both loaders provide. On a modded test instance 114 of 163 foods
resolved through the recipe graph or the convention tags, with no configuration.
The recipe walk is indexed and prewarmed at server start, so it costs about 9 ms instead of running inside a tick.
Interface
- Nutrition screen on N, or a 9x9 button in the inventory that can be moved or disabled
- A 56x5 strip beside the hunger bar, 10 pixels per nutrient, so 1 pixel is 10 points
- Nutrient values on food tooltips, cached per item; F3 and H shows which stage supplied them
- Both thresholds marked on every bar, turning white once passed
Commands
/dynamicnutrition getandvariety, open to everyone/dynamicnutrition unassignedlists any food that resolved to nothing/dynamicnutrition exportwrites the whole resolved table to a CSV, operators only
The rest
- Values persist across death and dimension changes, and sync to the owning client only
- 15 config options, through Cloth Config, which is optional
- Six advancements
- Resolution is server side; the client never walks recipes
One file covers 26.1, 26.1.1, 26.1.2 and 26.2. Fabric API is required; Cloth Config and Mod Menu are optional.
All Relations
- All Relations
- Embedded Library
- Optional Dependency
- Required Dependency
- Tool
- Incompatible
- Include