EzSeasons
Claim this plugin
This plugin was imported from Spiget and is currently unclaimed.
Plugin Information
Description
EzSeasons
EzSeasons is a standalone season reset scheduler for Minecraft servers.
It runs timed season resets, sends reminder broadcasts, and provides /season so players can check the time until the next reset.
This README is written for server owners first. API details are included near the end for plugin developers.
EzSeasons >= 2.0.0 is build for Minecraft 26.1 & Java 25 EzSeasons < 2.0.0 is build for Minecraft 1.8-26.1 & Java 17
Download
- Download EzSeasons from Modrinth: https://modrinth.com/plugin/ezseasons
- Optional companion plugin: EzLifesteal
- Supported server software: Paper / Bukkit-compatible server
- Requires: Java 25, Minecraft 26.1+
- Plugin version: 2.1.2
Quick setup (server owners)
- Stop your server.
- Put
EzSeasons-<version>.jarin yourplugins/folder. - (Optional) Install
EzLifestealif you want Lifesteal-specific behavior. - Start the server once to generate config files.
- Edit
plugins/EzSeasons/config.yml. - Restart the server.
What EzSeasons does
- Schedules automatic season resets
- Supports either explicit
start/endwindows or duration-based scheduling (length-days) - Supports one-time or recurring explicit windows (
recurring) - Broadcasts a reset message when a reset occurs
- Sends reminder messages before reset (
reminder-minutes) - Provides
/season(and/season admin ...) for status and runtime admin controls
Commands & permissions
/season- Permissions accepted:
lifesteal.season,lifesteal.season.admin, orlifesteal.admin
- Permissions accepted:
/season admin <reload|reset [reason]|setnext <unixMillis>|clear-next|status>- Permission required:
lifesteal.season.adminorlifesteal.admin
- Permission required:
Main config options
File: plugins/EzSeasons/config.yml
messages:
language: "en"
prefix: "&c[EzSeasons]&r "
season:
enabled: false
start: 0
end: 0
recurring: false
length-days: 30
check-interval-minutes: 60
broadcast-message: "&7A new season has begun! Hearts have been reset."
reminder-minutes: []
reminder-message: "&7The season will reset in &c%time%&7."
last-reset: 0
next-reset: 0
Notes
- Set
season.enabled: trueto activate scheduling. season.startandseason.endare Unix epoch milliseconds.season.recurringapplies to valid explicitstart/endwindows.reminder-minutesdefines countdown offsets in minutes.- Language files are in
plugins/EzSeasons/messages/. messages.languagesupports:en,es,fr,zh,ru,nl.
Documentation
- Documentation index
- Getting started
- Configuration reference
- Command reference
- Permissions reference
- API overview
- Security policy
Troubleshooting
- Plugin loads but nothing happens: ensure
season.enabledistrue. - No reminders: ensure
season.reminder-minutesis not empty. - Command says no permission: grant
lifesteal.seasonfor status, andlifesteal.season.admin(or legacylifesteal.admin) for admin subcommands. - Integration not active: verify the companion plugin registers against the
SeasonsApiBukkit service.
For developers (optional)
EzSeasons exposes a Bukkit service API (SeasonsApi) for integrations. The API artifact is pure Java — it has no Bukkit/Paper dependency, so it stays compatible regardless of server version.
Integrated plugins receive lifecycle callbacks (onRegister, onUnregister, onSeasonReset) via the SeasonsIntegration interface, and can also listen to Bukkit events (SeasonResetEvent, etc.) which are included in the plugin JAR.
Dependency options
You can consume the API artifact in two ways:
- GitHub Packages (official)
- JitPack (fallback)
GitHub Packages
<repositories>
<repository>
<id>github-ezseasons</id>
<url>https://maven.pkg.github.com/ez-plugins/EzSeasons</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.skyblockexp.lifesteal</groupId>
<artifactId>ezseasons-api</artifactId>
<version>2.1.2</version>
<scope>provided</scope>
</dependency>
</dependencies>
JitPack
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.github.ez-plugins.EzSeasons</groupId>
<artifactId>ezseasons-api</artifactId>
<version>v2.1.2</version>
<scope>provided</scope>
</dependency>
</dependencies>
Obtain API via Bukkit Services
RegisteredServiceProvider<SeasonsApi> registration =
Bukkit.getServicesManager().getRegistration(SeasonsApi.class);
if (registration != null) {
SeasonsApi api = registration.getProvider();
api.registerIntegration(new MyIntegration());
}
Minecraft Plugin Badges
Use these badge images in docs, README files, or forum posts.