Ice Age
Ice Age creates dangerous cold conditions with increasing exposure, a blue screen effect, health loss, and stumbling. Players can escape the cold by entering a vehicle or a recognized interior. Nearby exposed NPCs also take damage and flee.
The resource includes a standalone command and Disaster Hub integration. Optional ox_lib text warnings tell players when they are freezing; damage and visual effects still run without those warnings.
POPULAR LINKS
- DISASTER HUB — Combined disasters and weather triggers
- HAIL STORM — Hail Storm documentation
- FLASH FLOOD — Flash Flood documentation
- EARTHQUAKE — Earthquake documentation
- WEATHER — Big Daddy Weather documentation
- EAS — Emergency Alert System documentation
- ACE PERMISSIONS — Permission setup guide
- LOG COLLECTION — Gathering logs for support
{:links-list}
INSTALLATION
- Copy the inner
BigDaddy-IceAgeresource folder into your server's resources folder. - Enter your own product key from your account as
key1under[licensing]insettings.ini. - Start your weather resource first if you use one. Start
ox_libif you want freezing warnings, andBigDaddy-EASif you want emergency alerts. - Add
ensure BigDaddy-IceAgetoserver.cfg. If you use Disaster Hub, start Ice Age beforeBigDaddy-DisasterHub.
DO NOT RENAME THE FOLDER. Configuration and integration calls use the exact name
BigDaddy-IceAge.
{:is-danger}
Disaster Hub, EAS, and ox_lib are optional integrations.
Example start order
If you use Big Daddy Weather, EAS, ox_lib, and Disaster Hub together, put them in this order in server.cfg:
ensure BigDaddy-Weather
ensure BigDaddy-EAS
ensure ox_lib
ensure BigDaddy-IceAge
ensure BigDaddy-DisasterHub
Include only the resources you have installed. If you use another weather provider, start that resource before Ice Age instead.
CONFIGURATION
settings.ini
| Section | Setting | Supplied / fallback | Description |
|---|---|---|---|
[licensing] |
key1 |
Your product key | Enter your own product key here. |
[settings] |
UseEAS |
true / false |
Enables standalone emergency alerts when BigDaddy-EAS is started. |
[settings] |
EASTitle |
EMERGENCY ALERT SYSTEM / same |
Title passed to the standalone alert. |
[settings] |
EASMessage |
See below | Standalone cold-weather warning text. |
[settings] |
UseAcePermissions |
Not supplied / false |
Enables the command's permission gate, subject to the shared-flag limitation below. |
[settings] |
AcePermission |
Not supplied / command |
ACE object checked during player initialization when permission checking is enabled. |
[settings] |
debug |
true / false |
Enables additional resource diagnostic messages where implemented. |
[settings] |
DesyncKey |
Supplied by the package | Internal synchronization value. Leave it unchanged. |
Permissions
UseAcePermissions=true
AcePermission=bigdaddy.iceage
An administrator-group grant for that object would be:
add_ace group.admin bigdaddy.iceage allow
COMMANDS
| Command | Purpose |
|---|---|
/starticeage |
Starts a standalone cold event after successful resource initialization. No supported arguments. |
The command selects a random duration from 45,000 to 119,999 milliseconds.
The standalone server handler requests weather suspension through its bridge and broadcasts the selected duration. Clients transition to BLIZZARD over ten seconds. That transition counts toward the event duration; the player's exposure checks begin after the transition.
At the end of the duration, player exposure checks stop and the blue effect fades. Once the fade finishes, the client requests a ten-second transition to OVERCAST. The server resumes its weather bridge at the end of the selected duration, so the provider can resume before the visual fade and final client weather request finish.
SURVIVING THE COLD
Exposure and damage
Being outside a vehicle with no recognized interior adds one exposure point per check. These are accumulated exposure points, so returning outside before fully recovering resumes from the remaining value.
| Exposure | Effect while outside |
|---|---|
| Below 10 | Exposure builds without scripted cold damage. |
| 10 and above | Applies the glasses_Darkblue screen effect. Its strength starts at zero at 10 points and increases by 0.05 per point, capped at full strength at 30. |
| 20–29 | Removes 1 health per exposure check and requests the warning “You are freezing! Find shelter soon!” |
| 30 and above | Removes 3 health per exposure check and requests “You are freezing to death! Find shelter soon!” |
| 40 and above | Continues the health loss and adds a 30% chance per check of a three-second ragdoll. |
Cold damage directly reduces entity health;
Shelter and recovery
Any vehicle or recognized interior counts as shelter. An outdoor roof or canopy alone does not. Whether a custom building counts depends on its interior setup.
While sheltered, the scripted player cold damage and ragdoll checks stop immediately. The warning is hidden, exposure falls over time to a minimum of zero, and the blue effect weakens with exposure. Lost health is not restored by shelter or by the storm ending.
When the event ends, the screen effect fades before being cleared. A strong effect can therefore remain briefly after the server's event timer expires.
Warning messages
Warnings use ox_lib TextUI at the bottom center of the screen, with white text on a cyan background. Ice Age checks that ox_lib is started before showing or hiding text. Without it, the cold effects still apply but these messages are skipped.
Nearby NPCs
After more than 15 seconds have elapsed from the client event's start, nearby NPCs experience affects within 100 meters of the player.
Eligible NPCs outside vehicles and recognized interiors lose a random 1–3 health per pass and are told to flee. They do not use the player's gradual exposure thresholds. The NPC loop remains active through the end-of-event visual fade, then stops.
DISASTER HUB INTEGRATION
Start BigDaddy-IceAge before BigDaddy-DisasterHub, then select Ice Age in /DisasterHub. The Hub can also request Ice Age during eligible BLIZZARD weather checks. Configure IceAgeChance and weather monitoring in the Hub, not in Ice Age's settings.
The Hub calls BigDaddy-IceAge:StartIceAgeHub with a duration in seconds. This path starts the cold routine without Ice Age forcing its own weather, calling its own weather bridge, or sending its standalone EAS alert. The exposure checks can begin immediately because Ice Age skips its own ten-second weather transition.
In the Hub menu, Ice Age can run alone or with Hail Storm and/or Blackout. It cannot combine with Tornado, Sea Storm, Flash Flood, or Earthquake. See the Disaster Hub documentation for its weather and alert handling.
WEATHER BRIDGE
Edit Config.WeatherBridge at the top of bridge/weather.server.lua.
| Option | Default | Description |
|---|---|---|
Enabled |
true |
Enables bridge suspend/resume handling. Disabling it does not prevent standalone clients from requesting BLIZZARD and OVERCAST. |
Provider |
'auto' |
Detects the first started provider in the order below, or uses an explicit identifier. |
RestorePreviousWeather |
true |
Used by the QB resume handler to request saved weather when available. |
Debug |
false |
Enables [WeatherBridge] diagnostics, including failed export calls. |
| Detection order / resource | Identifier | Implemented behavior |
|---|---|---|
BigDaddy-Weather |
bigdaddy |
Reads GetWeather; sends weather-sync suspend/resume events. |
qb-weathersync |
qb-weathersync |
Reads weather/dynamic state; attempts to disable dynamic weather and restore saved state on resume. |
cd_easytime |
cd_easytime |
Reads GetAllData; suspend/resume hooks are placeholders. |
Renewed-Weathersync |
renewed |
Reads GlobalState.weather; suspend/resume hooks are placeholders. |
vSync |
vsync |
Detection only; no stock weather getter or working suspend/resume hooks are supplied. |
vMenu |
vmenu |
Detection only; no stock weather getter or working suspend/resume hooks are supplied. |
This table describes the local bridge implementation, not tested compatibility with every provider version. With no detected resource, the provider is none. You can also explicitly select none.
For another integration, select Provider='custom' and fill the Custom fields:
SuspendEventandResumeEvent: server events called with(enabled, reason).SuspendExportResourceandSuspendExportName: optional server export called on suspend with the same arguments.ResumeExportResourceandResumeExportName: optional server export called on resume with the same arguments.CurrentWeatherExportResourceandCurrentWeatherExportName: getter called without arguments, returning a weather string or a table with a recognized weather field.
If both an event and export are configured for an action, both run. The getter does not add automatic cold events; Ice Age has no weather watcher.
The bridge exposes server exports Suspend(enabled, reason), Resume(reason), IsSuspended(), GetSuspendedReason(), GetProvider(), and GetCurrentWeather(). Pass true to Suspend to request suspension. State and success results describe bridge handling, not proof that the provider paused: some handlers are placeholders and export failures are caught. The getter returns nil when weather is unavailable.
EMERGENCY ALERTS
The supplied settings enable standalone alerts:
UseEAS=true
EASTitle=EMERGENCY ALERT SYSTEM
EASMessage=Very dangerous sub-frigid temperatures affecting the area. Take shelter immediately.
Approximately ten seconds after the standalone server trigger, Ice Age sends the title and message to BigDaddy-EAS:BuildEAS, with an empty alert-type argument. It only sends the alert if EAS is started.
Hub-triggered events skip this standalone alert. Configure the Hub's Ice Age EAS settings for that path instead.