Skip to content

Season Config

File: config/reverie/seasons.conf

Seasons provide recurring competitive periods with leaderboard rankings. When a season ends, rewards are distributed and a new season can automatically begin.

FieldTypeDefaultDescription
enabledBooleanfalseEnable the seasonal system
modeString"duration"End trigger: "duration", "calendar", or "cron"
durationString"30 days"Duration when mode is "duration" (supports "X days", "X weeks")
calendarEndString""End date when mode is "calendar"
cronString""Cron expression when mode is "cron"
namingPatternString"Season {number}"Display name pattern
autoRollBooleantrueAuto-start next season when one ends
leaderboardSizeInt100Maximum leaderboard entries
historyRetentionInt12Number of past seasons to keep

Players are notified before a season ends at these intervals (in minutes):

60, 30, 10, 5, 1

Configure rewards by leaderboard placement:

endRewards {
1 = ["minecraft:netherite_ingot 5", "minecraft:nether_star 1"]
2 = ["minecraft:netherite_ingot 3"]
3 = ["minecraft:diamond 10"]
10 = ["minecraft:gold_ingot 5"] # Top 10 all receive this
}
  1. Server starts and loads persisted season
  2. If no active season and autoRoll = true, a new season begins
  3. During the season, contest results update leaderboard entries
  4. Remaining time is checked every 30 seconds
  5. Pre-end warnings are broadcast at configured intervals
  6. When the season ends: final leaderboard compiled, rewards distributed, history saved, broadcast sent
  7. Next season auto-starts if autoRoll = true
config/reverie/seasons/
current_season.json # Active season state
season_history/
season_001.json # Historical results
player_stats/
{seasonId}/
{playerId}.json # Per-player seasonal stats
  1. Seasons & Leaderboards — How seasons and leaderboards work
  2. Tournaments — Tournament results feed into seasons