ESX Installation

Install oxide-weather on ESX Legacy — checking for an added weather script, command replacements and how ESX admin groups pass the permission check.

ESX-specific steps for oxide-weather. Follow Installation first — this page only covers what is different on ESX.

Requirements

  • es_extended
  • oxmysql
  • ox_lib
  • o-link (1.8.0 or newer)
  • oxide-weather
  • oxide-tablet (optional, adds the weather app and widget)

Check for an Existing Weather Script

Good news: ESX Legacy does not ship a weather or time script of its own. There is nothing in [core] or [esx_addons] to disable.

That said, almost every ESX server has added one, so check your resources folder before you start. Common names:

  • cd_easytime
  • vSync or vsync
  • Renewed-Weathersync (sometimes spelled renewed-weathersync)
  • qb-weathersync
  • night_natural_disasters
  • anything else with weather, time or sync in its name

You must turn off whichever one you have. oxide-weather replaces it completely. If you leave one running you get two problems at once:

  • Both scripts push weather to players every few seconds, so the sky flickers between two states.
  • If the old script registers a /weather command, whichever one wins is unpredictable and your Oxide subcommands stop working.

If you start resources one line at a time in server.cfg, delete or comment out the line:

server.cfg
# ensure cd_easytime

If you start a whole folder (ensure [standalone], ensure [esx_addons]), removing a line is not enough. The resource starts because it sits inside that folder. Move the folder out:

resources/[standalone]/cd_easytime   ->   resources/[disabled]/cd_easytime

Do not add ensure [disabled] to your config. Anything in there stays off.

Commands your old script had

Most weather scripts register some combination of /weather, /time, /freezetime, /blackout, /morning, /noon, /evening and /night. Once the old script is off, use the Oxide equivalents:

Old commandUse this instead
/weather <type>/weather set <type>
/time <hour> <minute>/weather time <hour> <minute>
/freezetime/weather freeze
/blackout/weather blackout
/morning/weather time 9 0
/noon/weather time 12 0
/evening/weather time 18 0
/night/weather time 23 0

Tell your admin team about this before you switch, so nobody thinks the server is broken.

Also turn off weather and time options in any admin menu you run (vMenu and similar), and stop using txAdmin's weather buttons.

Startup Order

server.cfg
ensure oxmysql
ensure ox_lib
ensure es_extended
ensure o-link
ensure oxide-tablet     # optional
ensure oxide-weather

o-link must start after es_extended and before oxide-weather.

If you start whole folders, make sure the effective order still puts o-link before oxide-weather.

Database (nothing to do)

oxide-weather creates its own tables the first time it starts. There is nothing to import. If your host does not let the database user create tables, run resources/[oxide]/oxide-weather/sql/install.sql by hand. Full details are in Installation → Database.

Admin Permission

/weather is admin-only. On ESX, the check passes in either of two ways:

  1. Your ESX admin group. If you are in an ESX group that ESX itself treats as an admin (admin and superadmin on a stock install), you pass automatically. Nothing to configure.
  2. A server permission. Holding the admin or command permission also passes.

If your ESX admin group is not being recognised, add the server permission explicitly:

server.cfg
add_principal identifier.license:YOUR_LICENSE_HERE group.admin
add_ace       group.admin                          admin allow

To find your license identifier, join your server and look at the console line printed when you connect, or run status in the live server console.

The server console always counts as an admin.

Nothing Else Is Framework-Specific

oxide-weather does not use jobs, items, money or inventories. There are no items to register and no job names to line up. Everything it needs from ESX, it gets through o-link automatically.

Verification on ESX

Your old weather script is not running. Check the txAdmin Resources page.
The console prints [INFO][oxide-weather][lifecycle] Weather synchronization ready.
Server starts with no dependency errors and no repeating persistence errors.
The in-game clock is moving.
/weather opens the admin panel.
/weather set rain starts rain for every player within a few seconds.
/weather time 2 30 moves everyone's clock to 02:30.
Wait out one weather interval (15 real minutes by default) and confirm the weather changes on its own.
Run restart oxide-weather in the console, then rejoin. The time and weather come back where they were.

Next Steps