Station configuration
Station's settings.yml, messages.yml and menus.yml: hotbar items, cooldowns, queue cap, sidebar lines and menu layouts.
Files
Station writes three files to plugins/Station/ the first time it starts. Each file lists what every key does in its own comments.
| File | Contains |
|---|---|
settings.yml | Hotbar items, command cooldowns, the queue cap and the Profile item's command. |
messages.yml | Every chat line, action bar and sidebar line. |
menus.yml | The lobby switcher and the selector editor menus. |
Saving a file reloads it. Hotbar slot changes need a restart. Delete a line to get its default back.
The files are per server, so copy them to each hub. The game selector entries, spawn, join message and portals aren't in these files. You set those in game, and every hub shares them.
settings.yml
| Key | Default | Meaning |
|---|---|---|
spawnCooldownSeconds | 2.0 | Seconds between two uses of /spawn. |
visibilityCooldownSeconds | 3.0 | Seconds between two uses of /tpv. |
defaultQueueCap | 150 | Players per server before queues stop sending players there. See Queues and parties. |
profileCommand | profile | Command the Profile item runs as the player, without the /. |
hotbar | The hub hotbar items, below. |
Each hotbar item has material (a Minecraft item name), name, lore, glow and slot (0 is the left of the hotbar, 8 the right).
| Item | Default | Slot | Does |
|---|---|---|---|
selector | Compass | 0 | Opens the game selector. Also shown while queued. |
profile | Player head | 1 | Runs profileCommand. As a PLAYER_HEAD it shows the player's own head. |
cosmetics | Chest | 4 | Sends "Cosmetics are not available yet." |
playersShown | Lime dye | 7 | Hides other players. Shown while players are visible. |
playersHidden | Grey dye | 7 | Shows other players. Uses the slot of playersShown. |
switchLobby | Nether star | 8 | Opens the lobby switcher. |
leaveQueue | Red dye | 8 | Leaves the queue. Only shown while queued. |
spawnCooldownSeconds: 2.0
visibilityCooldownSeconds: 3.0
defaultQueueCap: 150
profileCommand: profile
hotbar:
selector:
material: COMPASS
name: '&aGame Selector &7(Right Click)'
lore: []
slot: 0
glow: falsemessages.yml
Messages accept & colour codes, hex like &#FFAA00 and MiniMessage tags. <primary> and <secondary> are the server colours from Kernel's kernel.yml. Words in braces, like {group}, are filled in by Station, and each message's comment lists the ones it gets.
The file has four sections:
| Section | Covers |
|---|---|
sidebar | The hub sidebar. |
queue | Queue messages and the queue action bar. |
lobby | Portals, the lobby switcher, player visibility and the selector's Close button. |
commands | Replies to /station and /spawn. |
Sidebar
The sidebar title is your network's server name. The lines are in sidebar:
| Key | Default | Meaning |
|---|---|---|
lines | 11 lines | Lines for clients that can show sprites, like :compass: icons and player heads. |
linesWithoutSprites | 11 lines | Lines for older clients. |
defaultRank | Default | Rank shown when a player's rank can't be loaded. |
dateFormat | dd/MM/yyyy | How the date is written, as a Java date pattern. |
domainFallback | scala.gg | Shown as the domain when your network has no domain set. |
Sidebar lines can use {player}, {online} (players on the whole network), {rank}, {region}, {server}, {date} and {domain}.
menus.yml
| Menu | Opened by |
|---|---|
lobbyPicker | The Switch Lobby item or /switchlobby. |
selectorEditor | /station editor. |
selectorEntry | Clicking an entry in the selector editor. |
Every menu has a title, its items, and customItems for your own items. A custom item can run commands when clicked:
lobbyPicker:
customItems:
discord:
material: PAPER
name: '&9Join our Discord'
slot: 4
close: true
commands:
- discordCommands run as the player. Start one with console: to run it from the console. {player} becomes the name of the player who clicked.
The lobby switcher uses a different item for the lobby the player is on (current), a full lobby (full) and a lobby that isn't online (whitelisted). Its items can use {lobby}, {number}, {online}, {max} and {status}.
The game selector itself isn't in menus.yml. Build it in game with /station editor, see Game selector.