Progress counts only when the hydration of the player performing the action
is within the specified bounds at that instant. This is the water number on
the vitals HUD, which runs from 0 to 250.
The thirsty warning shows at low hydration, around 25 and below.
Dehydration damage starts at 20 or below, and sprinting locks at exactly
0. So “while thirsty” is maxHydration: 25.
The abundance direction works too: “while fully hydrated” is something like
minHydration: 200.
Running hot (temperature above 40) drains hydration, so desert-themed
contracts can combine this with
Player Temperature.
Either bound can be null (or omitted entirely) for “no limit on that
side”, but at least one bound is required. A condition with neither
bound would always be satisfied, so it is invalid and the contract will not
load.
If minHydration is greater than maxHydration, the plugin swaps them and
logs a warning.