schedules.yml
When KOTHs start automatically - days, times, random picks and which KOTHs each schedule runs.
Every schedule lives in schedules.yml under Schedules. Each key is one schedule, and the key is its
name. After editing, run /kothadmin reload. A walkthrough is in
Scheduling KOTHs.
One example ships, disabled, so nothing starts on its own until you set it up:
Schedules: evening: Enabled: false Days: - MONDAY - WEDNESDAY - FRIDAY Times: - "18:00" - "21:30" Random: false Koths: - spawnUnlike config.yml, this file has no fallback to shipped values: a schedule you delete stays deleted.
Schedule fields
Section titled “Schedule fields”| Key | Required | Default | Description |
|---|---|---|---|
Enabled |
no | true |
false keeps the schedule in the file without running it. Disabled schedules do not count for {next}. |
Days |
no | every day | Days of the week it runs on: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY. Empty or missing runs every day. |
Times |
yes | Start times as HH:mm, 24-hour clock ("08:00", "21:30"). At least one. Quote them. |
|
Random |
no | false |
false starts every listed KOTH. true starts one of them, picked at random. |
Koths |
yes | KOTH ids to start. At least one. |
Times are read in Settings.Timezone from config.yml.
When a schedule fires
Section titled “When a schedule fires”- Every listed KOTH that exists, is enabled and is not already running is a candidate. With no candidates, nothing happens.
- With
Random: falseevery candidate is started; withRandom: trueone random candidate is. - Before each start, the KOTH’s
Settings.Minimum-Playersis compared with the online player count. If too few are online, it is not started andMINIMUM-PLAYERS-NOT-METis announced.
Validation
Section titled “Validation”These skip the schedule with a console error naming it (other schedules still load):
- No
Times, or a time that is notHH:mm - No
Koths - A day name that is not one of the seven above
A Koths entry that does not match any KOTH is not an error, but it is reported in the console when the
file loads (for enabled schedules) and every time the schedule fires.
