Community listing page, reviews here may not be monitored by the author.
HungerDial
No reviews yet
Makes vanilla hunger drain slower or faster by one config multiplier applied to every exhaustion source: sprinting, mining, combat, damage, and natural regen. Default 35% slower. Optional on clients.
Community voices
Reviews
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
Resources
External Links
About
Description
What it does
Vanilla tracks a hidden "exhaustion" counter per player. Sprinting, jumping, mining, attacking, swimming, taking damage, and regenerating health all add to it; every 4.0 points of exhaustion costs one saturation point, and once saturation runs out, one half-shank of food.
Hunger Dial multiplies every amount added to that counter by one number you control. In Minecraft 1.21.1, every source of player exhaustion funnels through a single method:
Player#causeFoodExhaustion(float)— the entry point vanilla and other mods use for movement, combat, mining and damage — forwards straight toFoodData#addExhaustion(float).FoodData#tick(Player)charges the two natural-regeneration costs (saturated healing and the slow 80-tick heal) by callingaddExhaustionas well.
Hunger Dial scales the argument of FoodData#addExhaustion(float) right at the start of that
method, so every source is scaled exactly once and nothing is scaled twice — including
exhaustion added by other mods, as long as they go through the vanilla methods above. Zero,
negative and non-finite amounts pass through untouched.
What it does not change:
- Food items — nutrition and saturation values stay exactly as the pack defines them.
- The vanilla exhaustion cap (40.0) and the 4.0-per-food-point conversion.
- Anything a mod does by writing
FoodData#setExhaustion(float)directly instead of adding to it (see Known limitations below).
Why
Vanilla's hunger pace is a fixed difficulty knob every player experiences the same way. Some modpacks make survival much more demanding — more traveling, more combat, more building — without touching food supply to match, and hunger ends up feeling like a chore rather than a challenge. Hunger Dial gives the pack (or the server operator) one number to retune that pace, in either direction, without reworking every food item's values by hand.
Example values
| Multiplier | Effect |
|---|---|
0.0 |
never hungry — exhaustion never accumulates |
0.5 |
hunger drains at half speed |
0.65 |
35% less hunger (the shipped default) |
1.0 |
vanilla, unchanged |
2.0 |
hunger drains twice as fast |
The allowed range is 0.0–10.0.
Configuration
config/hungerdial.json, created with defaults the first time the mod starts:
{
"_comment": "1.0 = vanilla, 0.65 = 35% less hunger, 0.5 = half, 0.0 = never hungry, 2.0 = double; range 0.0-10.0; change in game with /hungerdial set <value>",
"exhaustionMultiplier": 0.65
}
exhaustionMultiplier must be a finite number between 0.0 and 10.0. A value out of range, a
wrong type, or malformed JSON produces exactly one warning in the server log, falls back to
0.65, and leaves the file on disk untouched — a hand-edit is never silently overwritten by a
typo elsewhere in the file. The effective multiplier is also logged once at startup, e.g.
Exhaustion multiplier 0.65 (35% less hunger).
Commands
/hungerdial, permission level 2 (operators), and it also works from the server console.
| Command | Effect |
|---|---|
/hungerdial |
show the current multiplier |
/hungerdial get |
same |
/hungerdial set <0.0-10.0> |
apply immediately and write it to the config file |
/hungerdial reload |
re-read the config file from disk |
set keeps whatever _comment the file already had. All feedback is plain literal text rather
than translation keys, so a client without the mod installed still reads the response correctly
instead of seeing a raw, unresolved translation key.
Server / client requirements
- Required on the server, and in singleplayer (which runs its own integrated server).
- Optional on clients — Hunger Dial registers no packets, no registries and no client-side code, so a vanilla or unmodded client can join a server running it and will simply see the correct, already-scaled food bar.
- Requires Fabric API (used only for command registration), Fabric Loader
>=0.19.1, and Java 21.
Compatibility
- Works with AppleSkin. AppleSkin reads the real, live exhaustion and saturation values from
FoodData; since Hunger Dial changes those real values rather than only how they're displayed, AppleSkin's overlay shows accurate, already-scaled numbers with no special integration needed. - Scales other mods' exhaustion too, as long as they add exhaustion the vanilla way — through
Player#causeFoodExhaustion(float)orFoodData#addExhaustion(float)directly. A mod's custom action (e.g. a special ability that costs hunger) is scaled exactly like a vanilla one would be. - Known limitation: a mod that calls
FoodData#setExhaustion(float)directly — replacing the exhaustion value outright instead of adding to it — bypasses Hunger Dial's scaling entirely, since nothing is added through the scaled method in that case.
FAQ
Does it change food or saturation values? No. Item nutrition and saturation are untouched; only the rate exhaustion accumulates at is scaled.
Do players need it installed? No. It's optional on clients — only the server (or singleplayer world) needs it, and unmodded clients can join normally.
Can I make hunger harder instead of easier?
Yes. Set exhaustionMultiplier above 1.0 (up to 10.0) — 2.0 doubles the drain, for example.
Can I change the multiplier without restarting the server?
Yes. /hungerdial set <value> applies instantly and saves to the config file; /hungerdial reload re-reads the file from disk if you'd rather hand-edit it.
Will editing the config file by hand ever get overwritten?
Only if the value you write is invalid (wrong type, malformed JSON, or outside 0.0–10.0). A
valid hand-edit picked up by /hungerdial reload (or the next server start) is respected as-is.
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers
Statistics
Resources