AlphaEventDocs v3.3.0
AlphaEventReferenceConfiguration

Configuration

Everything you can tune in the configuration files.

On this page

Files

FileWhat it holds
config.ymlGlobal defaults: timing, points, rewards, protection, sounds, update notice and the panel.
events/<id>.ymlOne file per event: its own rules, plus optional overrides of settings, points and rewards. See Events for every key.
lang/messages.ymlEvery chat line, title and event description.
lang/gui.ymlThe join menu and the admin menu.
lang/bossbars.ymlThe five boss bars.
arenas/<event>/<name>.ymlArenas, written by the setup commands. Arena setup
backup/2.x/Your 2.x files, kept when the plugin upgraded itself.

/aevent reload re-reads all of these except the jar. When a newer jar adds a key to a file, the key is added to your copy on start, with its comment; nothing you changed is touched.

Settings and timing

Under settings in config.yml. Any event can override any of these under its own settings.

KeyDefaultMeaning
settings.rounds3Total rounds per event.
settings.min-players2Minimum participants to leave the joining phase. Below this the event is cancelled with a broadcast.
settings.max-players50Hard cap on participants.
settings.join-duration60sLength of the join phase.
settings.waiting-duration20sLobby countdown before each round.
settings.round-start-countdown10sFrozen countdown once players are on their spawns.
settings.countdown-switch-to-title3At this many seconds left, the countdown switches from the action bar to a full-screen title.
settings.results-display-duration200 ticksHow long the final results stay before players are sent out.

Points

points:
  1: 3
  2: 2
  3: 1

Points awarded for each placement in a round. Players who tie share the placement, and every player in a tie gets that placement's points. Placements not listed score nothing. The final ranking adds the points up and uses the event score (kills, catches, ...) to break ties.

Rewards

rewards:
  enabled: true
  final:
    1: ["money give {player} 500"]
    2: ["money give {player} 250"]
    3: []
  participation: ["money give {player} 25"]
  round-win: []

Console commands, run when an event ends. final is by final placement, participation is for everyone who finished the event and round-win is for each round's winner or winners. Placeholders: {player}, {uuid}, {event} (the id), {place} and {points}. A leading / is optional. An event file can replace any of these lists for that event only; rewards.enabled: false there switches rewards off for it.

Protection

protection.lobby

prevent-building, prevent-breaking, prevent-dropping, prevent-pickup, prevent-damage, prevent-pvp, prevent-hunger, prevent-commands (all default true), plus allowed-commands:, the command prefixes that stay usable (default event, event join, event leave, spawn).

protection.arena

prevent-dropping, prevent-pickup, prevent-hunger (default true). What a player may break, place or hit in the arena is decided by each event's rules, not by keys here.

spectator.teleport-to-alive-on-elimination (default true) sends an eliminated player to watch a random player who is still alive. Both the lobby prevent-building and prevent-breaking keys and this one are read now; they were ignored before 3.0.

Sounds

One block per moment: event-start, player-join, player-leave, countdown-tick, countdown-3, countdown-go, elimination, round-win, event-end, block-break, each with sound (a Bukkit sound name), volume and pitch. An invalid name is skipped.

Update notice

update-checker:
  enabled: true
  repo: "alpha-m19/alphaevent-plugin"
  notify-ops-on-join: true

Every six hours the plugin asks GitHub for the latest release of repo and logs a line if it is newer than the running version. Operators also get a message when they join. A newer release is a higher version number; running a newer build than the release never warns. If the repo is private or unreachable, nothing happens.

Panel

panel:
  api-url: "https://alphastudio-licensing.onrender.com"
  check-interval-minutes: 10

See Server approval.

Event files

Every events/<id>.yml starts with the same keys, then has the rules of its own event (documented per event on the Events pages).

enabled: true        # false = /aevent start refuses this event
round-time: 90       # seconds, 0 = no limit

settings:            # optional: replaces config.yml for this event only
  rounds: 5
  max-players: 8

points:              # optional
  1: 1

rewards:             # optional
  final:
    1: ["give {player} diamond 3"]

When round-time runs out the round ends and the survivors (or the leaders, for score events) take the placements.

Text files

Everything players read is in lang/. The default look is the AlphaStudio pink theme: accent #E619E6, white body text, #555555 separators, green only for success, red for danger, and &8 menu titles. Static text is in small-caps letters.

TokenMeaning
{prefix}The AlphaEvent prefix. Every chat line starts with it.
{event} / {objective}The running event's name and one-line goal (events.<id>.name / objective).
{player}, {round}, {countdown}, ...Filled in by the line that uses them; the default file shows which.

Colours are &#RRGGBB (or the old &f, &8 codes). MiniMessage tags work too, for example a clickable <click:run_command:/event join>. Each event has its own block under events: in messages.yml with its name, goal, the line shown under GO and any lines only it uses.

Menus

lang/gui.yml holds two menus, both 27 slots with no filler panes and titles in &8.

KeyMeaning
join-guiWhat players see when an event opens. Items have slot, material, name, lore and action (JOIN, SPECTATE, CLOSE; anything else does nothing). Tokens: {event}, {objective}, {participants}, {max}, {round}, {total_rounds}. The item in slot 13 shows the running event's icon.
admin-menuThe menu /aevent opens: the five categories, then the events in a category. Back is slot 21 and Close is slot 22.

The join menu opens for everyone online when joining starts, and for anyone who joins the server during the announcement.

Boss bars

lang/bossbars.yml defines five bars, each with text, color and style:

BarShown during
joining-countdownThe join phase
waiting-countdownThe lobby countdown
round-activeFrom the round-start countdown through the live round
round-endingRestoring the arena after a round
event-endingThe final results

Tokens: {event}, {countdown}, {round}, {total_rounds}, {alive} and {time} (empty for rounds without a time limit). color accepts PINK, PURPLE, BLUE, GREEN, YELLOW, RED or WHITE (RED if unrecognised). style accepts SOLID or NOTCHED_6, 10, 12 or 20.

Upgrading from 2.x

The first start of 3.x does this, once:

  1. Copies messages.yml, gui.yml, bossbars.yml, config.yml and arena.yml to backup/2.x/.
  2. Writes the new config.yml, keeping your values for settings, points, protection, spectator, sounds and panel.
  3. Moves the Spleef tool, floor blocks and elimination Y into events/spleef.yml. A tool name or lore you never edited is not carried over, so the new pink look applies.
  4. Converts arena.yml into arenas/spleef/main.yml.
  5. Creates the new lang/ files from the defaults.
Message, menu and boss bar edits are not merged: the text, colours and keys all changed. Open the file in backup/2.x/ next to the new one and copy over what you want. Spleef players can now hit each other only if pvp: true is set in events/spleef.yml; it was open by accident before.