▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/Nourished
Nourished

Nourished

Nourished is a nutrition mod for NeoForge 1.21.1 that tracks 5 food groups, rewards a varied diet, and applies balance buffs and neglect penalties. Includes an on-screen HUD, diet screen, and configurable modules for servers and modpacks.

Оцените первым
3.3K
31

!Banner

I got sick of Minecraft's food system, so I built Nourished a nutrition mod for NeoForge 1.21.1 that tracks five food groups, rewards a varied diet, and applies balance buffs and neglect penalties when you neglect them.

Eat a balanced diet, watch your bars on the HUD, open the diet screen for the full picture, and tune every module for your server or modpack.


💾 Interfaces

Mini HUD

!In-Game HUD

Press your configured Keybind in-game to enter edit mode. Drag the HUD anywhere, resize it, and anchor it to any corner. Zero-value bars hide automatically so the HUD never feels cluttered.

Five color-coded bars sit on screen while you play, so you always know where you stand without opening another screen.

Old UI

!Main GUI

The Old UI is Nourished's legacy interface system used by earlier versions of the mod. It provides the original HUD and Diet Screen interaction and layout functionality from before the introduction of the modular dynamic UI system.

The system relies on the original interaction-based controls for configuring UI elements and is retained primarily for compatibility with older implementations.

Features:

  • Legacy Nourished HUD interface
  • Original Diet Screen layout system
  • Interaction-based UI controls
  • Original UI positioning and sizing functionality
  • Compatibility with older Nourished implementations

The Old UI is maintained as a legacy system and is gradually being replaced by the more flexible Dynamic UI framework.

Press your configured Keybind in-game to enter edit mode. Drag elements anywhere and resize them as needed.

Dynamic UI

!Dynamic UI

The image above shows the new UI introduced in 0.2.7-beta.1.

Dynamic UI is Nourished's modular interface system, designed to make the HUD and diet screen highly configurable without relying on hardcoded layouts.

UI elements are organized into independent modules that can be customized individually, including their position, size, colors, and other visual properties. This allows the interface to be adjusted to fit different screen resolutions, UI layouts, and player preferences.

The system is designed to be extensible, making it possible to add new UI modules and customization options without rebuilding the entire interface.

Features:

  • Modular UI components
  • Movable UI elements
  • Adjustable module sizes
  • Configurable colors
  • Independent module configuration
  • Reusable UI architecture
  • Designed for future customization options
  • Used by both the Nourished HUD and Diet Screen

Dynamic UI replaces Nourished's older interaction-based UI controls with a proper modular editing system, providing a cleaner foundation for expanding UI customization over time.

📸 Screenshots were taken with the PureBDCraft resource pack. The UI works with vanilla textures, but will appear in the default Minecraft style.

Diet Screen

What you seeWhat it means
Trend arrowsWhether each group is rising or falling
Balance scoreHow evenly distributed your nutrition is
Active effectsWhat your current diet is doing to you
Calorie trackingDaily calorie intake at a glance
Recently eatenWhat you've eaten recently
Neglected categoriesWhat you should probably eat next

🏆 Milestones & Achievements

Eating consistently pays off over time. Nourished tracks cumulative intake for each food group and grants milestone rewards as you build healthy habits.

!Milestone Tree

Each food group has its own three-tier progression:

  • Beginner
  • Journeyman
  • Master

There is also a hidden Perfectly Balanced milestone for maintaining all five food groups at once.

Milestones grant temporary buffs and unlock entries in your Advancements tab.

Milestone goals, reward effects, and durations are fully configurable. Modpack authors can also register entirely custom milestones through datapacks.


❤️ What You Gain

When all five food groups are above 75%, you receive:

  • Health Boost I: passively while balanced
  • Regeneration I: passively while balanced

Let any single group drop below 25%, and a neglect penalty kicks in:

GroupNeglect Penalty
🌾 GrainsWeakness I
🥦 VegetablesSlowness I
🥩 ProteinsMining Fatigue I
🍎 FruitsUnluck I
🥛 Dairy

Dairy has no penalty effect by default. It is still tracked and contributes to your overall balance score.

This behavior is configurable, and a Sugars group is planned for a future update.


🏃 Activity-Driven Nutrients

At the moment, the Activity and Calorie HUD screens may overlap when you first install the new version. You can easily adjust their positions using the keybind.

The next release will be a follow-up focused on further UI improvements.

Your body doesn't just burn energy from being hungry; it burns energy from doing things now.

Nourished tracks your actual activity and factors it into your nutrient needs.

Activity Costs

  • Sprinting & swimming drain nutrients faster the longer you keep them up.
  • Mining costs a small amount of nutrients per block broken.
  • Combat costs nutrients per kill.
  • Starvation applies a one-time penalty when a nutrient drops into a critical range.

Every activity module is independently toggleable. Turn off combat costs, disable starvation penalties, or run the entire system; it's up to you.

Each module's cost and HUD color are configurable.

Everything is backed by real per-player tracking:

  • Distance sprinted
  • Distance swum
  • Blocks mined
  • Kills
  • Starvation events

Activity data is recorded day-by-day rather than simply estimated.

Activity Log HUD

The Activity Log HUD is a draggable and resizable overlay showing your recent activity at a glance.

Each statistic includes a live bar relative to your own personal best.

Milestones can also be set on activity trackers through datapacks or KubeJS, allowing modpack authors to reward goals such as the following:

  • Sprint 10,000 blocks
  • Swim 5,000 blocks
  • Mine 10,000 blocks
  • Land 500 kills

This option can be turned off in the configs.


🔥 Calories

Calories are the backbone of Nourished's nutrition system.

Every food you eat adds to or subtracts from your daily calorie total, and staying within your calorie goal matters alongside hitting your nutrient targets.

Live Tracking

Your calorie total updates in real time and persists across sessions, with complete history retained for previous days.

Calorie HUD Panel

A compact, draggable overlay displays the following:

  • Today
  • Yesterday
  • Previous days

Each day is shown as a percentage of your calorie goal, with the display changing once you go over your target.

Eat-Food Notifications

Eating something that changes your calorie total now produces a quick on-screen notification showing the food's name and calorie change.

You can see exactly what just happened without opening a menu.

Diet Screen Integration

The diet screen ties everything together with:

  • Full calorie breakdown
  • Recent meals
  • Daily calorie balance
  • Foods you may want to eat to round out your diet

Every panel can be independently repositioned, resized, and scaled.

Like everything else in Nourished, calorie goals and thresholds are configurable, and the system is datapack- and KubeJS-friendly for modpack authors who want to tune it further. This option can also be turned off in the configs.


🍽️ Variety Is Always Rewarded

Eating the same food repeatedly becomes less effective over time, so rotating what you eat always pays off.

Nourished uses a memory system that naturally fades over time. Foods you've avoided recover their full nutritional value as your food memory fades.

The result is simple:

The more varied your diet, the more effective it becomes.


🍽️ Eating at Full Saturation

Vanilla Minecraft prevents you from eating when your hunger and saturation are already full.

Nourished allows you to continue eating for nutritional purposes even when your saturation bar is full.

Light foods such as berries and snacks can be eaten for their nutrients without restoring saturation, while heavier meals follow vanilla eating rules by default.

Both behaviors are configurable through:

  • enableBlockHeavySources
  • enableBlockLightSource

Server administrators have full control over how these eating restrictions behave.


🥩 Raw Food & Gut Health

Eating raw or undercooked food has consequences.

Nourished tracks a gut health value for every player. Gut health degrades when you eat raw food and recovers over time through cooked food and dietary variety.

Raw Food Tiers

Raw foods are classified into four tiers:

TierEffect
FineNo penalty
MildMinor debuff, short duration
MediumModerate debuff, longer duration
SevereStrong debuff, extended duration

Eating the same raw food repeatedly within its memory window increases your sensitivity to it. The more you repeatedly eat the same raw food, the worse the penalty becomes.

Gut health recovers passively and recovers faster when you:

  • Eat cooked food
  • Maintain dietary diversity

Resistance can also be built over time, reducing the scale of raw-food penalties.

Everything is configurable, including:

  • Raw-food tiers
  • Effect durations
  • Nutrient penalties
  • Recovery rates
  • Resistance
  • Module behavior

Configuration is handled through:

config/nourished/raw_food.json


🤝 Mod Compatibility

Nourished works with modded food items that use vanilla FoodProperties.

You do not need to write integration code for basic nutrition tracking.

Bundled compatibility data helps foods from popular farming and cooking mods appear on your nutrient bars out of the box.

For edge cases, server owners can adjust behavior through configuration files and tags.

ModStatus
Farmer's Delight✅ Supported
Pam's HarvestCraft 2✅ Supported
Create: Food✅ Supported
Croptopia✅ Supported
Farmer's Croptopia✅ Supported
Croptopia Delight✅ Supported
Farm & Charm✅ Supported
Ender's Delight✅ Supported
L_Ender's Delight✅ Supported
Ars Delight✅ Supported
Autochef's Delight✅ Supported
KubeJS✅ Scripting hooks
JEI / REI / EMI✅ Tooltips in recipe viewers
Other mods with edible food items✅ Works with standard food items

🔧 Configurable for Your Server

Everything ships with sensible defaults.

Server owners and modpack authors can tune Nourished without touching Java.

Module Controls

  • Toggle individual modules on or off
  • Enable or disable the HUD
  • Configure nutrient decay
  • Configure activity-driven costs
  • Enable or disable effects
  • Enable or disable gut health

Nutrient Configuration

  • Adjust decay rates
  • Adjust thresholds
  • Configure critical values
  • Configure low and excess thresholds

Effects

Add, remove, or replace effects through:

config/nourished/effects.json

Eating Rules

Configure:

  • enableBlockHeavySources
  • enableBlockLightSource

Data & Overrides

Customize:

  • Food values
  • Food overrides
  • Nutrient colors
  • Scanner specifications
  • Compatibility settings
  • Presets
  • Module locks

All configuration lives under:

config/nourished/

Config Sharing

Save and share complete configuration snapshots using a single share code.


🔍 The Food Scanner

Use:

/nourished scan_analysis

to analyze all loaded food items and generate classification reports under the following:

config/nourished/scanner_analysis/

Scanner Output

The scanner produces:

  • multi_value_recommendations.json: foods confidently assigned to one or more nutrient groups
  • unassigned_sources.txt: foods that could not be classified automatically and need manual review
  • scanner_metrics.txt: summary statistics across the full item registry

Recommended tag entries can be copied into your datapack to make classifications permanent.

Unassigned items can be manually tagged using the example below.


📁 Data & Overrides

Most customization happens inside:

config/nourished/

after the first launch.

This includes:

  • Effects
  • Food values
  • Food overrides
  • Colors
  • Presets
  • Module locks
  • Scanner configuration
  • Compatibility settings

Nourished also ships bundled defaults under:

data/nourished/

These include nutrient tags, compatibility entries, and presets.

Advanced pack authors can override supported data through datapacks where applicable. Configuration files remain the primary method for server-side tuning.

The in-game food scanner can help inspect and assign foods in singleplayer and write generated tag files into the world's datapack folder for manual review.

Example: Adding a Food to a Nutrient Tag

Create the following file inside your datapack:

your_datapack/
└── data/
    └── nourished/
        └── tags/
            └── item/
                └── nutrients/
                    └── vegetables.json
{
  "replace": false,
  "values": [
    {
      "id": "pamhc2foodextended:honeyglazedcarrotsitem",
      "required": false
    }
  ]
}

"replace": false means your entries are merged with Nourished's defaults rather than replacing them.


📜 KubeJS Support

Nourished provides optional KubeJS integration for modpack authors.

KubeJS must be installed separately.

Scripts go in:

kubejs/server_scripts/
kubejs/startup_scripts/

KubeJS support is split across two layers:

  • MarieLib provides generic value-tracking events through MarieEvents.*.
  • Nourished provides nutrition-specific aliases through NourishedEvents.*.

Server Scripts: Nutrition Events

NourishedEvents.nutrientChanged(event => {
    if (event.nutrientKey === 'proteins' && event.newValue < 0.25) {
        event.player.tell('Eat some protein!')
    }
})

NourishedEvents.nutrientModifier(event => {
    if (event.nutrientKey === 'vegetables') {
        event.amount *= 2
    }
})

NourishedEvents.foodEaten(event => {
    event.nutrientDeltas.forEach((value, key) => {
        console.log(key + ': ' + value)
    })
})

Also available:

  • nutrientCritical
  • nutrientExcess
  • rawFoodPenalty
  • gutHealthChanged

Important: sourceConsumed is a generic MarieLib event and does not expose nutrientKey or newValue. Use nutrientChanged when you need nutrition-specific information.

Server Scripts: Generic MarieLib Events

MarieEvents.valueChanged(event => {
    console.log(event.playerId + ' ' + event.valueKey + ': ' + event.newValue)
})

MarieEvents.valueDeltaModifier(event => {
    if (event.valueKey === 'proteins') {
        event.amount *= 1.5
    }
})

Also available:

  • valueCritical
  • valueExcess
  • sourceConsumed
  • decayTick
  • playerSynced

Startup Scripts: Register Custom Nutrients

NourishedAPI.registerNutrient({
    id: 'omega3',
    displayName: 'Omega-3',
    color: 0x4AA3FF,
    decayRate: 0.0012,
    critical: 0.12,
    low: 0.30,
    excess: 0.90
})

See API.md on GitHub for the full event and binding reference.


⚙️ Requirements

RequirementVersion
Minecraft1.21.1
NeoForge21.1.x
Marie's Libv0.1.0-beta.4+
Cloth ConfigRequired at runtime
PatchouliOptional — in-game guide
Java21

Important: Marie's Lib is now a required dependency. See the dependency note above for details.


🛠️ Support & Feedback

Found a bug, have a suggestion, or need help?

  • GitHub Issues: report bugs and feature requests
  • Discord: support and development updates

Please include logs, screenshots, or reproduction steps when reporting an issue.


📜 License

MIT License

Nourished is free to use in modpacks, forks, and addons.

Партнёрский материал

Как поиграть с друзьями с модом Nourished?

Мод Nourished куда интереснее в компании: поднимите сервер Майнкрафт с уже установленным модом, позовите друзей и играйте по своим правилам. Хостинг Майнкрафт для мода Nourished будет готов за пару минут - BungeeHost сделает всё за вас.

Часто задаваемые вопросы

Совместимость

Minecraft: Java Edition

1.21.x

Платформы

Поддерживаемые окружения

Клиент и сервер

Зависимости

Ссылки


Создатели

Детали

Лицензия:
Опубликован:4 месяца назад
Обновлён:2 недели назад
Главная