- Advancements
- Functions
- Predicates
- 9,358 views • 7 today
- 1,549 downloads • 0 today
10
Thirsty Datapack
Minecraft 1.21.4+
Minecraft 1.21.4+
📌 Overview
Thirsty is a vanilla-friendly datapack that introduces a hydration system into Minecraft, adding an extra layer of immersion and resource management to survival gameplay.
The datapack is designed to integrate smoothly with existing vanilla mechanics and with a strong focus on performance, clarity, and multiplayer stability.
It is suitable for survival worlds, hardcore gameplay, and servers that want deeper mechanics while remaining fully compatible with vanilla Minecraft.
⚙️ Requirements
- Minecraft Java Edition 1.21.4 or newer
- Singleplayer or multiplayer world with datapack support
- No mods required
📦 Installation and Update
- Download the datapack (.zip file)
- Place it inside your world folder:
<your_world>/datapacks/- Enter the world or run:
/reload- Verify that the datapack is loaded:
/datapack list
📦 Settings and Uninstall
Uninstall and configuration were redesigned in v1.3 to be server-friendly and safer:
Use the settings menu with:
Server operators can control whether the uninstall option appears for players using two functions:
These commands respectively lock or unlock the uninstall option in the settings menu for all players.
Use the settings menu with:
/trigger ThirstSettings Server operators can control whether the uninstall option appears for players using two functions:
/function uninstall_lock
/function uninstall_unlockThese commands respectively lock or unlock the uninstall option in the settings menu for all players.
💧 Thirst Mechanics
This datapack adds a hydration system that works alongside vanilla mechanics.
- Players have internal thirst and hydration values.
- Thirst and hydration only decrease through player actions, so AFK players won’t suddenly die of thirst.
- In Peaceful Mode, hydration and thirst are automatically replenished.
- Includes a custom advancement tree to track your progress.
- Drinking water bottles or potions.
- Eating water-rich foods.
- Sipping from natural sources.
📊 Detailed Values (click to expand)
How it works: Thirst is split into two parts, just like hunger+saturation.
When drinking or eating, hydration is filled first. Only when hydration reaches 0 does thirst begin to decrease.
Note: thirst decreases by actions such as sprinting, swimming, jumping, and combat. The “Thirst” status effect accelerates this drain.
- th_thirst = visible bar (0–20, starts at 20)
- th_hydration = hidden buffer (0–20, starts at 5)
When drinking or eating, hydration is filled first. Only when hydration reaches 0 does thirst begin to decrease.
| Category / Items | Thirst (Visible) | Hydration (hidden) |
| Drinks (Water Bottle, Potions) | 8 | 6 |
| Sipping from source (Every 80 ticks) | 2 | 1 |
| Stews (Beetroot, Mushroom, Rabbit, Suspicious) | 6 | 5 |
| Milk | 6 | 4 |
| Hearty Fruits (Melon Slice) | 4 | 2 |
| Fruits (Apple, Chorus Fruit, Glow Berries, Sweet Berries) | 3 | 1 |
| Special (Honey Bottle, Golden Apple) | 2 | 0 |
| Negative (Cause thrist effect, Dried Kelp) | 0 | 0 |
Note: thirst decreases by actions such as sprinting, swimming, jumping, and combat. The “Thirst” status effect accelerates this drain.
The system is designed to be immersive without being overly punishing, and can be expanded or rebalanced as needed.
💧 Sipping System
- sneak + look at a water block to drink directly from it
- Sips require 80 ticks (≈4s) to complete and restore +2 Thirst and +1 Hydration
- intentionally slow to balance risk vs. convenience.
- Disabled by default and can be enabled in the settings menu.
- Each player has their own independent sipping configuration.
💧 Thirst Status Effect
- Gained by eating dried kelp or being attacked by a drowned.
- Lasts 30s, making thirst drain faster.
- Visual effects: greenish HUD bar + particles.
- Can be cured instantly with Milk Bucket.
💧 Multiplayer & Language Support
- Built with multiplayer compatibility in mind (still experimental).
- v1.3 and v1.4 bring important optimizations to reduce lag and improve multiplayer stability.
- Available in English, Brazilian Portuguese, Spanish (Mexico), French, and German.
- Resource pack system makes it easy to add extra translations.
✨ Recent Updates
- v1.4.2: Stability changes
- v1.4.1: Bugfix, HUD Refresh and redirect download to Modrinth page
- v1.4: Hud change, more optimization and some bug fixes.
- v1.3.2: small bug fixes.
- v1.3.1: small bug fixes.
(See Update Logs for the full changelog)
⭐ Final Notes
Known limitation: Custom HUD may temporarily disappear when interacting with beds during daytime or when consuming potions, due to engine behavior in recent Minecraft versions.
If you enjoy this datapack:
- 👍 Leave a diamond
- 💬 Comment your ideas
- ⬆️ Share with friends
Every bit of feedback helps me keep improving it!
| Compatibility | Minecraft 1.21 |
| Tags |
11 Update Logs
Update v1.4.2 : by Heimder Rondart 01/09/2026 12:06:32 pmJanuary 9 @ 5:06 pm UTC
Thirsty v1.4.2 - Stability Update
- Menu system refactored to remove dependency on activation/deactivation functions.
- Item consumption detection migrated to minecraft:consume_item advancements.
- Hydration values rebalanced and consumables reorganized into clear categories.
- Reduced scoreboard usage and function calls, improving overall performance and stability.
- Timers adjusted to properly pause in Creative and Spectator modes.
LOAD MORE LOGS
5568500
119


![Veinbound: Solo Ascension [1 Player Version] {1.21.8}](https://static.planetminecraft.com/files/image/minecraft/project/2025/201/19158995-image_s.jpg)

Have something to say?
Or just: modrinth.com/datapack/thirsty-datapack/version/1.4.1
data/thirst/function/internal_clock/phase_0andphase_4respectively in a text editor, then remove only",gamemode=!creative"; after that, the bar should also appear in Creative mode. However, I should warn you that thirst does not decrease in Creative mode nor on Peaceful difficulty, so it is purely aesthetic. I will note your case as a suggestion to add options to the datapack menu to enable or disable the display in Creative mode, so this functionality can be added in future updates.But Mojang changed some things and the old system simply broke, so I removed it. Now I'm thinking of other ways to implement this, but by now I'm working in improve the core mechanics of the datapack.