Sub Season

Description

Matches when the season of the world is in one of the listed phases. Inside a season area the phase is always MIDDLE.

This condition checks the spot of the entity or location. It never matches in the Nether or the End.

Each season file sets where the phases end, in percent of the season, under sub-season-thresholds (Sub-Seasons):

Phase Ends at (setting) Default
START start-end 9
EARLY early-end 18
MIDDLE middle-end 84
LATE late-end 92
END the end of the season 100

The condition is always false while sub-seasons are off (sub-seasons.enabled: false in config.yml), even for MIDDLE.

Attributes

Attribute Aliases Description Default
phase p Phases, separated by commas, any one is enough: START, EARLY, MIDDLE, LATE or END. Not case sensitive. required

An unknown phase is reported in the console and skipped. With no valid phase left, the condition never matches.

Examples

LateSeasonNotice:
  Conditions:
  - subseason{p=LATE} true
  Skills:
  - message{m="The season is drawing to a close."} @Self

Runs between the middle-end and late-end thresholds.

MidSeasonBonus:
  TargetConditions:
  - phase{p=MIDDLE} true
  - season{s=disabled} false
  Skills:
  - message{m="Peak of the season."}

BonusForNearbyPlayers:
  Skills:
  - skill{s=MidSeasonBonus} @PlayersInRadius{r=30}

The second condition rules out worlds without a season.

EarlySeasonHint:
  Skills:
  - message{m="A new season is beginning."} @Self ?subseason{p=START,EARLY}

Inline, it tests the caster.

Aliases

  • seasonphase
  • phase
Updated Nov 11, 2026