Content generated with AI — it may contain mistakes.

Configuring

Scheduling

Recurring events by time of day, weekday or interval, with player counts and gates.

Each event carries its own list of schedules, edited from the schedule screens in /captureadmin. The timetable itself is ExyliaLib's schedule module: the same editor, the same fields and the same rules as every other Exylia plugin that starts things on a clock.

What a schedule holds

FieldMeaning
nameA label for the entry. Blank shows the times instead.
enabledWhether it may fire at all. On by default.
daysWeekday names, or * for every day. An empty list also means every day.
timesThe HH:mm clock times it fires at, as a list. A single time is still read.
everyRepeat this often instead of at fixed times, such as 2h or 90m.
from / toThe window a repeat runs inside, as HH:mm.
min-playersPlayers who must be online for it to fire. 0 by default.
max-playersThe most players that may be online for it to fire. 0 is no limit.
conditionAn Exylia comparison that must hold, such as %server_tps% >= 18.
cooldownThe shortest gap between two fires of this entry.
requiresNamed gates, listed below.

An event can have as many schedules as you want: three times on weekdays and one on Saturday is two entries, one holding three times and one holding one. A repeat is anchored to its window's opening, not to when the server started: every two hours from 10:00 fires at 10:00, 12:00 and 14:00 whatever time it restarted.

How firing works

When an entry is due, every gate is checked and the start is skipped — not retried later — when any fails:

  • That event is already running. This is always checked, whatever requires says.
  • Fewer than min-players or more than max-players are online.
  • The condition does not hold, or the cooldown has not passed.
  • A gate in requires does not pass.

A fire more than two minutes late, after a frozen server, is skipped too. Skips are written to the console debug log rather than being silent.

The gates this plugin offers

GatePasses when
event-inactiveThe event this entry starts is not running.
nothing-runningNo capture event at all is running on the server.

nothing-running is what configuration alone cannot say: "start this one, but not while any other event is on". A gate name the plugin does not offer never passes, so a typo stops the entry from firing rather than being ignored.

Timezone

Every schedule is read against one clock:

config.yml
scheduler:
  timezone: ""

Empty — the default — uses ExyliaLib's own timezone setting, which is where a network sets it once for every plugin. Otherwise it takes a zone id such as America/New_York or Europe/Madrid, and overrides that for this plugin only.

An invalid zone id falls back

A value that is not a real IANA zone id — an abbreviation like CET, or a typo — is logged as an error on load, and ExyliaLib's timezone is used instead. Check the console after changing it.

Time until the next one

The time until an event's next fire across all its entries is what feeds:

  • %exyliacapture_<id>_time_until_start% for one event.
  • %exyliacapture_next_event_time_until_start% for the soonest event on the whole server.
  • The SCHEDULED state a hologram shows when an event is not running but has an upcoming schedule.

An event with no schedules reports nothing rather than zero, which is how a hologram tells "not running, but coming" apart from "not running at all".

Starting by hand

A schedule is not required. /captureadmin start <id> starts an event immediately, and it obeys the same rule about not starting one that is already running.

Something missing on this page? Tell us on Discord