Season Skills
Skills that run only in a season, a phase of a season, on a date or at a time of day, with the Season, SubSeason, SeasonProgress, IsDate, Month, Weekday and TimeRange conditions. To react when a season starts or ends, see Event Skills.
Before you copy an example
- Skills under
skill-triggersrun only in worlds that have a season./ms set wintergives your world one and answersSeason set to Winter. The season conditions never match in the Nether or the End. isdate,month,weekdayandseasonprogressneed the calendar (enabled: trueincalendar.yml, the default).- Run
/mm reloadafter editing a skill file and/ms reloadafter editing a season file, see Common Examples.
Almanac
Tells a player the time, the date, the season, its phase and progress, and when the next season comes.
Season_Almanac:
Skills:
- message{m="<gold>It is <white><mythicseasons.time></white> on <white><mythicseasons.weekday></white>, <white><mythicseasons.month.name> <mythicseasons.day></white>, year <white><mythicseasons.year></white>."} @Self
- message{m="<gold>Season <white><mythicseasons.season></white>, phase <white><mythicseasons.subseason></white>, <white><mythicseasons.progress></white> percent through."} @Self
- message{m="<gold>Next season is <white><mythicseasons.nextseason.id></white>, in <white><mythicseasons.daysuntilnextseason></white> days."} @Self
Almanac_Keeper:
Type: VILLAGER
Display: '<gold>Almanac Keeper'
Skills:
- sudoskill{s=Season_Almanac} @Trigger ~onInteract
sudoskillmakes the player who right-clicks the Almanac Keeper the caster, so the placeholders read that player's world.
A winter-only mob
Gives a mob an effect that only exists while its world is in winter.
Frost_Zombie:
Type: ZOMBIE
Display: '<aqua>Frost Zombie'
Health: 30
Skills:
- potion{type=SLOWNESS;duration=60;lvl=0} @Trigger ~onAttack ?season{s=winter}
- effect:particles{p=SNOWFLAKE;amount=10;hSpread=0.5;ySpread=1;speed=0.02} @Self ~onTimer:20 ?season{s=winter}
The inline
?season{s=winter}tests the zombie, so in every other season it is an ordinary zombie.
To spawn a mob only in winter, put season{s=winter} in the Conditions: of a MythicMobs spawner. Conditions that test an entity, such as playertemp or atmosphere, never pass in a spawner, which then never spawns. Check those in the mob's skills, as above.
Spring blossoms
Shows cherry blossom petals around the player during the first three phases of spring.
Spring_Blossoms:
Cooldown: 1
Conditions:
- season{s=spring}
- subseason{p=START,EARLY,MIDDLE}
- outside
Skills:
- effect:particles{p=CHERRY_LEAVES;amount=6;hSpread=8;ySpread=3;speed=0.02;yOffset=3;audience=self} @Self
skill-triggers:
player-tick-particles:
- Spring_Blossoms
List it in
seasons/spring.yml. Theplayer-tick-particleslist skips players who turned particles off with/toggleseasonparticles.
subseason is false while sub-seasons.enabled is false in config.yml. The phase limits come from sub-season-thresholds in the season file, see Sub-Seasons.
Season progress
Reacts to how far through the season the calendar is, in percent.
Winter_Ending_Soon:
Cooldown: 600
Conditions:
- season{s=winter}
- comparevalues{value1=<mythicseasons.daysuntilnextseason>;operator=LTE;value2=3}
Skills:
- message{m="<aqua>Winter ends in <mythicseasons.daysuntilnextseason> days."} @Self
Deep_Winter:
Cooldown: 2
Conditions:
- season{s=winter}
- seasonprogress{min=40;max=60}
Skills:
- modifytemp{id=deepwinter;amount=-6;duration=3} @Self
skill-triggers:
player-tick:
- Winter_Ending_Soon
- Deep_Winter
List both in
seasons/winter.yml.daysuntilnextseasonanswers0in a world without a season, so keep theseasonline in front of it.
seasonprogress takes named min and max values only. A bare argument such as seasonprogress >40 is ignored.
Valentine's Day
Shows hearts above every player on one date of the calendar.
Valentines_Hearts:
Cooldown: 2
Conditions:
- isdate{d=14-2}
Skills:
- effect:particles{p=HEART;amount=3;hSpread=0.6;ySpread=0.6;yOffset=2.3;audience=self} @Self
skill-triggers:
player-tick-particles:
- Valentines_Hearts
List it in every season whose dates contain the day:
seasons/winter.ymlin the shipped calendar.
A weekend fair
Reminds the whole world of a fair on summer weekends during the day.
Summer_Fair:
Cooldown: 600
Conditions:
- month{m=June,July,August}
- weekday{d=Saturday,Sunday}
- timerange{from=10;to=18}
Skills:
- message{m="<yellow>The summer fair is open until sunset."} @PlayersInWorld{targetself=true}
- effect:sound{s=entity.firework_rocket.shoot;v=0.6;p=1.2;audience=target} @PlayersInWorld{targetself=true}
skill-triggers:
world-tick:
- Summer_Fair
List it in
seasons/summer.yml, and inseasons/spring.ymltoo for the weekends of June 1 to 3, which are still spring in the shipped calendar.
month takes names or numbers (m=6,7,8 is the same list), and weekday the day names of week-days in calendar.yml. A world-tick skill is cast once per world by its first player, and its cooldown counts for that player.
A midwinter night
Combines a season, a phase and a time of day.
Midwinter_Night:
Cooldown: 120
Conditions:
- season{s=winter}
- subseason{p=MIDDLE}
- timerange{from=20;to=4}
Skills:
- effect:sound{s=entity.breeze.idle_air;v=0.5;p=0.7;audience=self} @Self
- message{m="<aqua>The midwinter night is bitterly still."} @Self
List it under
player-tickinseasons/winter.yml.MIDDLEis 18 to 84 percent of the season with the default thresholds.
timerange takes whole hours of the in-game clock, counts both end hours, and wraps past midnight when from is larger than to.
Good to know
Related pages
- Seasons and Sub-Seasons: seasons and their phases.
- Calendar: the date, the clock and the weekdays.
- Conditions: every condition with its attributes and aliases.
- Placeholders: every placeholder with its fallback value.
- Triggers:
player-tick,player-tick-particlesandworld-tick.