📄 How Event Files Work
Most EventForge events are controlled by one YAML file.
That file decides what the event is called, how long it runs for, what players need to do, how points are earned, what rewards are given, and what UI players see during the event.
Basic structure​
A typical event file looks like this:
id: mining_rush
display-name: "&bMining Rush"
duration: 10m
metadata:
version: 1.0.3
variables:
event_color: "&b"
participation:
mode: AUTOMATIC
objectives:
mining:
type: MINE_BLOCKS
display-name: "&bMining"
rewards:
participation:
enabled: true
You do not need every section in every event. Smaller events can stay simple, while advanced events can add voting, queues, schedules, milestones, custom actions, and more.
Common sections​
| Section | What it controls |
|---|---|
id | The internal event ID used by commands, placeholders, cooldowns, and storage. |
display-name | The name players see in messages, bossbars, sidebars, and GUIs. |
duration | How long the event lasts once it starts. |
metadata | Template/version information for easier updates and pack management. |
variables | Reusable values such as colours, arena names, reward names, or repeated text. |
participation | Whether players join automatically or through a queue. |
objectives | The scoring rules for the event. |
rewards | Commands/actions given for participation, leaderboard places, or bonus rolls. |
milestones | Optional rewards/actions when players reach score thresholds during the event. |
schedule | Optional per-event automation. |
bossbar, sidebar, titles | Optional player-facing UI. |
Simple events vs bigger events​
Simple events usually only need:
id
display-name
duration
objectives
rewards
Larger server events might also use:
variables
milestones
manual queues
manual voting
scheduled voting
custom actions
bossbars
sidebars
PlaceholderAPI displays
Tips for clean event files​
- Keep the
idshort and easy to type. - Use
display-namefor the pretty player-facing name. - Use variables for colours and repeated text.
- Start from a bundled template before building a large event from scratch.
- Use
/eventforge validateafter editing YAML. - Reload the plugin after making changes.