Overview
Access viaStatus on both server and client.
Built-in Statuses
Hunger, Thirst, Stress, Drunk
Custom Statuses
Register your own status types
Visual Effects
HUD display, blur, shake effects
Persistence
Saved to character data
Server-Side Methods
Status:Register (Server)
Register a status type on the server.string
required
Status identifier (e.g.,
'PLAYER_HUNGER')number
required
Maximum value
string
required
Icon identifier
function
Callback for tick logic
function
Callback for modification logic
Status.Get:All (Server)
Get all registered status definitions.table
All registered status definitions
Status.Get:Single (Server)
Get a single status definition.string
required
Status name
Status:Set (Server)
Set a status value for a player and sync to client.number
required
Player server ID
string
required
Status name
number
required
New value
Status.Modify:Add (Server)
Add to a status value via client callback.number
required
Player server ID
string
required
Status name
number
required
Amount to add
boolean
Add cooldown after modification
boolean
Force the modification (bypass checks)
Status.Modify:Remove (Server)
Remove from a status value via client callback.For inverted statuses like Stress and Drunk (where higher = worse),
Remove decreases the value and Add increases it. Use Remove to reduce these statuses.Client-Side Methods
Status:Register (Client)
Register a status with visual properties for the HUD.string
required
Status identifier
number
required
Maximum value
string
required
FontAwesome icon name
string
required
Hex color code for HUD display
boolean
required
Enable flash animation when low
function
required
Callback for value changes:
function(change, force)table
required
Display options (see Options below)
Status.Get:All (Client)
Get all statuses with their current values.table
All statuses with current values from
LocalPlayer.stateStatus.Get:Single (Client)
Get a single status with current value.Status.Set:All (Client)
Set all statuses to a specific value.Status.Set:Single (Client)
Set a single status to a specific value.Status.Modify:Add (Client)
Add to a status value on the client.Status.Modify:Remove (Client)
Remove from a status value on the client.Status:Reset
Reset all resettable statuses to their maximum value.Statuses with
noReset = true (like Stress and Drunk) are not affected by Reset.Status:Toggle
Toggle the status system on or off.Status:Check
Check if the status system is currently enabled.boolean
true if status system is activeOptions Structure
Status Storage
- Character Data:
Character:SetData("Status", { PLAYER_HUNGER = 100, ... }) - State Variables:
LocalPlayer.state["status:PLAYER_HUNGER"] - HUD Display: Registered via
Hud:RegisterStatus()
Best Practices
Use Server Methods for Persistence
Use Server Methods for Persistence
Understand Inverted Statuses
Understand Inverted Statuses
Next Steps
Status - Defaults
Built-in status types and effects
HUD API
HUD display system
Characters API
Character data access