ModsJava
DynamicSeasons ⌛ Bringing Seasons Back to Your World ✅
season, seasons, many features, customizable, survival experience, enhancement. Free Minecraft Java mod for 1.20.6.
⬇ Download on SpigotDynamicSeasons is a feature-rich and immersive plugin that brings the beauty and realism of changing seasons to your Minecraft server. With DynamicSeasons, players will experience the dynamic shifts in weather, plant growth, animal behavior and several more features as the world transitions through the four distinct seasons - Spring, Summer, Fall and Winter.
- Fast & anonymous feedback reporting | Not for support!
- Update Feature | Keep this plugin up-to-date with just a command
- [Applies for versions below 2.3.2] This feature works approximately 20 minutes after a new version has been posted.
- World whitelist | Seasons only work in those worlds
- PlaceholderAPI support
- Placeholders | Display the remainingtime & current season
- Weather | Allow specific weather types during the season
- RandomTickSpeed | Control the growth of plants
- CreatureAttributes | Control the attributes of creatures
- Animal Spawning | Control the animal spawn chance
- Animal Growing | Control the growing time for animal children
- Prevent Crop Growing | Prevent crops from growing
- Potion effects | Give players potion effects
- Loot drops | Control custom loot on a creatures death
- XP bonus | Customize the bonus experience
- Particles | Showing particles to the player
- Boss Spawning | Spawn mobs as bosses
- Command Execution | Execute commands when the season changes
Spoiler: Reporting
Spoiler: RandomTickSpeed
Spoiler: AnimalSpawning
Spoiler: AnimalGrowing
Spoiler: PreventCropGrowing
Spoiler: PotionEffects
Spoiler: LootDrops
Spoiler: XPBonus
Spoiler: Particles
Spoiler: BossSpawning
Spoiler: Command Execution
- /dynamicseasons
- alias: /dseasons; /dynseasons
- permission: dynamicseasons.command.use (Customizable in config.yml)
- description: The main command for DynamicSeasons
- /dynamicseasons disableparticles
- permission: none
- description: Players can turn off the season particles
- /dynamicseasons setseason <season>
- description: Change the season manually
- /dynamicseasons setremainingtime <number>
- description: Set the remaining time
- /dynamicseasons spawnboss <season> <boss name>
- description: Spawn a boss of any season
- /dynamicseasons reload
- description: Reloads the config files
- /dynamicseasons update
- description: Updates the plugin to the newest version
- /dynamicseasons report <type> <message>
- description: Sends an anonymous feedback to me
Spoiler: Config
Code (YAML):
# The duration of the season in seconds.
# 3600 = 1 hour -> every 1 hour the season will change.
season_duration : 3600
# Specify the worlds where the seasons will work.
# A world not in this list will not be affected by any season changes.
worlds :
- world
# Customize the PlaceholderAPI placeholders from this plugin.
# Will be disabled if PAPI is not installed.
# Please do not use '%', '{}' or '_'
placeholders:
duration :
# The name of the placeholder which will be used ingame
# Example: 'duration' -> usable by using '%duration%' ingame.
placeholderName : duration
# The format of how the time will be displayed when using the placeholder
# Example: 'HH:mm:ss' -> will be displayed as '01:59:59'
# You can include normal text as well.
# In order to do that you have to do the following:
# You can escape from the actual format by using this character: "\'"
# You can see this character as a toggle.
# Example: "HH\' hours \'mm\' minutes \'ss\' seconds\'"
format : HH:mm:ss
currenseason :
# The name of the placeholder which will be used ingame
# Example: 'currentseason' -> usable by using '%currentseason%' ingame.
placeholderName : currentseason
# The replacement text that will be shown when using this placeholder.
text :
# The text that will be displayed when the currentseason is changed to this season.
spring : Spring
summer : Summer
fall : Fall
winter : Winter
seasonchange:
broadcast :
# If true, a broadcast will be sent when the season changes.
enabled : true
title :
# If true, a title will be shown when the season changes.
enabled : true
# Here you can set the animation duration. Time in seconds.
option:
fadein : 1
stay : 4
fadeout : 1
# Customize the main command of this plugin.
command :
# The name of the command to interact with this plugin.
name : dynamicseasons
# The description of the command.
description : Main DynamicSeasons command
# The permission to interact with this command.
permission : dynamicseasons.cmd.use
# The aliases for this command.
alias :
- dynseasons
- seasons
showWarningsOnReload : true
# 3600 = 1 hour -> every 1 hour the season will change.
season_duration : 3600
# Specify the worlds where the seasons will work.
# A world not in this list will not be affected by any season changes.
worlds :
- world
# Customize the PlaceholderAPI placeholders from this plugin.
# Will be disabled if PAPI is not installed.
# Please do not use '%', '{}' or '_'
placeholders:
duration :
# The name of the placeholder which will be used ingame
# Example: 'duration' -> usable by using '%duration%' ingame.
placeholderName : duration
# The format of how the time will be displayed when using the placeholder
# Example: 'HH:mm:ss' -> will be displayed as '01:59:59'
# You can include normal text as well.
# In order to do that you have to do the following:
# You can escape from the actual format by using this character: "\'"
# You can see this character as a toggle.
# Example: "HH\' hours \'mm\' minutes \'ss\' seconds\'"
format : HH:mm:ss
currenseason :
# The name of the placeholder which will be used ingame
# Example: 'currentseason' -> usable by using '%currentseason%' ingame.
placeholderName : currentseason
# The replacement text that will be shown when using this placeholder.
text :
# The text that will be displayed when the currentseason is changed to this season.
spring : Spring
summer : Summer
fall : Fall
winter : Winter
seasonchange:
broadcast :
# If true, a broadcast will be sent when the season changes.
enabled : true
title :
# If true, a title will be shown when the season changes.
enabled : true
# Here you can set the animation duration. Time in seconds.
option:
fadein : 1
stay : 4
fadeout : 1
# Customize the main command of this plugin.
command :
# The name of the command to interact with this plugin.
name : dynamicseasons
# The description of the command.
description : Main DynamicSeasons command
# The permission to interact with this command.
permission : dynamicseasons.cmd.use
# The aliases for this command.
alias :
- dynseasons
- seasons
showWarningsOnReload : true
Spoiler: Messages File
# All messages have to be in MiniMessage format.
# Guide for MiniMessages: https://docs.advntr.dev/minimessage/index.html
# Using legacy color won't work.
# The default message will be used if legacy color codes are found.
#
# Available placeholders:
# %lastSeason% -> will be replaced with the last season
# %newSeason% -> will be replaced with the new season
# %remainingTime% -> will be replaced with the season duration
prefix : <gradient: #55C156:#FFFF00:#FFA500:#87CEFA>DynamicSeasons</gradient> <dark_gray>|
seasonchange:
broadcast : ' %prefix% <gray>The season was changed from <yellow>%lastSeason% <gray>to
<green> %newSeason%<gray>.'
title : <yellow>Season Change
subtitle : <italic><dark_gray>-> <green> %newSeason%
command:
usage :
- ' '
- ' %prefix% <yellow>Command Usage'
- ' '
- <yellow>/dynseasons <dark_gray>| <gray>Shows the usage message
- <yellow>/dynseasons setseason <New Season> <dark_gray>| <gray>Changes the current
season
- <yellow>/dynseasons setremainingtime <New Remaining Time> <dark_gray>| <gray>Changes
the remaining time for the next season
- <yellow>/dynseasons reload <dark_gray>| <gray>Reloads the config files
- <yellow>/dynseasons update <dark_gray>| <gray>Updates the plugin to the newest
version
- <yellow>/dynseasons spawnboss <Seasons> <BossName> <dark_gray>| <gray>Spawns a
boss from any season
- ' '
playerOnly : ' %prefix% <red>This command can only be executed by players.'
noPermission : ' %prefix% <gray>You don''t have the permission to execute this command.'
invalidSeasonInput : ' %prefix% <red>Invalid season!'
invalidNumberInput : ' %prefix% <red>Invalid number!'
setSeasonSuccess : ' %prefix% <green>You changed the season to %newSeason%.'
setRemainingTimeSuccess : ' %prefix% <green>You set the remaining time to %remainingTime%.'
reloadSuccess : ' %prefix% <green>You successfully reloaded the configurations.'
update:
noUpdatesAvailable : ' %prefix% <green>There are no updates available.'
started : ' %prefix% <green>Updating...'
success : ' %prefix% <green>Update was successful. Restart server to use the update.'
failure : ' %prefix% <red>Update failed. See console for the detailed error.'
reloadWarnings : ' %prefix% <red>The following warnings and erros occured when reloading:'
spawnBoss:
unknownBoss : ' %prefix% <red>Unknown boss!'
success : ' %prefix% <green>You spawned the %boss% boss.'
feedback:
cooldown : ' %prefix% <red>You are allowed to send one feedback per minute.'
invalidFeedbackType : ' %prefix% <red>Invalid feedback type. (Available: Feedback/Bugreport)'
sending : ' %prefix% <green>Sending feedback...'
success : ' %prefix% <green>Your feedback has been sent. Thanks!'
failure : ' %prefix% <red>There was an error while sending your feedback. Check console for more information.'
Code (YAML):
# All messages have to be in MiniMessage format.
# Guide for MiniMessages: https://docs.advntr.dev/minimessage/index.html
# Using legacy color won't work.
# The default message will be used if legacy color codes are found.
#
# Available placeholders:
# %lastSeason% -> will be replaced with the last season
# %newSeason% -> will be replaced with the new season
# %remainingTime% -> will be replaced with the season duration
prefix : <gradient: #55C156:#FFFF00:#FFA500:#87CEFA>DynamicSeasons</gradient> <dark_gray>|
seasonchange:
broadcast : ' %prefix% <gray>The season was changed from <yellow>%lastSeason% <gray>to
<green> %newSeason%<gray>.'
title : <yellow>Season Change
subtitle : <italic><dark_gray>-> <green> %newSeason%
command:
usage :
- ' '
- ' %prefix% <yellow>Command Usage'
- ' '
- <yellow>/dynseasons <dark_gray>| <gray>Shows the usage message
- <yellow>/dynseasons setseason <New Season> <dark_gray>| <gray>Changes the current
season
- <yellow>/dynseasons setremainingtime <New Remaining Time> <dark_gray>| <gray>Changes
the remaining time for the next season
- <yellow>/dynseasons reload <dark_gray>| <gray>Reloads the config files
- <yellow>/dynseasons update <dark_gray>| <gray>Updates the plugin to the newest
version
- <yellow>/dynseasons spawnboss <Seasons> <BossName> <dark_gray>| <gray>Spawns a
boss from any season
- ' '
playerOnly : ' %prefix% <red>This command can only be executed by players.'
noPermission : ' %prefix% <gray>You don''t have the permission to execute this command.'
invalidSeasonInput : ' %prefix% <red>Invalid season!'
invalidNumberInput : ' %prefix% <red>Invalid number!'
setSeasonSuccess : ' %prefix% <green>You changed the season to %newSeason%.'
setRemainingTimeSuccess : ' %prefix% <green>You set the remaining time to %remainingTime%.'
reloadSuccess : ' %prefix% <green>You successfully reloaded the configurations.'
update:
noUpdatesAvailable : ' %prefix% <green>There are no updates available.'
started : ' %prefix% <green>Updating...'
success : ' %prefix% <green>Update was successful. Restart server to use the update.'
failure : ' %prefix% <red>Update failed. See console for the detailed error.'
reloadWarnings : ' %prefix% <red>The following warnings and erros occured when reloading:'
spawnBoss:
unknownBoss : ' %prefix% <red>Unknown boss!'
success : ' %prefix% <green>You spawned the %boss% boss.'
feedback:
cooldown : ' %prefix% <red>You are allowed to send one feedback per minute.'
invalidFeedbackType : ' %prefix% <red>Invalid feedback type. (Available: Feedback/Bugreport)'
sending : ' %prefix% <green>Sending feedback...'
success : ' %prefix% <green>Your feedback has been sent. Thanks!'
failure : ' %prefix% <red>There was an error while sending your feedback. Check console for more information.'
Spoiler: Season Config File
weather:
enabled : true
weatherType:
clear : true
storm : true
# This will be disabled if Storm is set to false.
thunder : true
randomTickSpeed:
enabled : true
# Default value for RandomTickSpeed is 3.
# Higher value -> plants grow faster
value : 10
xpBonus:
enabled : true
# Bonus XP in percentage.
# For example: 10 means 10% -> the player will get 10% more xp.
value : 10
animalSpawning:
enabled : true
entries:
cow : 75
chicken : 25
# List of attributes can be found here: https://jd.papermc.io/paper/1.20.6/org/bukkit/attribute/Attribute.html#enum-constant-summary
# For more explanation, default values and so on you should visit this site: https://minecraft.fandom.com/wiki/Attribute#Attributes_available_on_all_living_entities
creatureAttributes:
enabled : true
entries:
zombie:
generic_max_health : 40.0
animalGrowing:
enabled : true
# Growing time of babies in seconds
# Default growing time is 24 minutes.
entries:
cow : 120
sheep : 120
# Every crop that is in this list will not grow.
# To prevent trees, you must choose the correct name from this list: https://jd.papermc.io/paper/1.20.6/org/bukkit/TreeType.html#enum-constant-summary
preventCropGrowing:
enabled : true
entries :
- wheat
- birch
# List of all potion effects: https://jd.papermc.io/paper/1.20.6/org/bukkit/potion/PotionEffectType.html#field-summary
# Entry format:
# potion_effect: potion_amplifier
potionEffects:
enabled : true
entries:
regeneration : 1
speed : 1
# You can add infinite amount of items to an entitytype or to a block (as an example: zombie, diamond_ore, etc.).
# List of EntityTypes: https://jd.papermc.io/paper/1.20.6/org/bukkit/entity/EntityType.html#enum-constant-summary
# List of MaterialTypes: https://jd.papermc.io/paper/1.20.6/org/bukkit/Material.html#enum-constant-summary
# List of EnchantmentTypes: https://jd.papermc.io/paper/1.20.6/org/bukkit/enchantments/Enchantment.html#field-summary
#
# Format:
# entity_type/block_type:
# SomeRandomName:
# (options): (values)
lootDrops:
enabled : true
entries:
zombie:
ExampleSword:
material : diamond_sword
displayname : <yellow>Tomas' Legendary Sword
lore :
- <gray>This sword
- <gray>is <red>dangerous</red>!
amount : 1
dropChance : 10
enchantments:
sharpness : 3
unbreaking : 5
particles:
enabled : true
offset:
x : 5.0
y : 10.0
z : 5.0
# Time in ticks (20 ticks = 1 second)
spawnTime : 5
# Speed of the particles
speed : 0.0
entries:
snowflake:
minSpawnAmount : 10
maxSpawnAmount : 50
bossSpawning:
enabled : true
entries :
# The name of the boss entry. Used to specify all the entries.
# will be used in the spawnboss subcommand
EasyZombie :
# false = boss will not spawn
enabled : true
mobType : zombie
displayname : <green>E-Tier BOSS <gray>| <green> %health%<gray>/<red>%maxhealth%
# The chance that this boss will spawn
# 0 - 100
spawnChance : 80
itemInHand :
# false = boss wont have any item in his hand
enabled : true
material : IRON_SWORD
displayname : <green>E-Tier Sword
dropChance : 70
lore :
- <gray>The sword of a fallen E-Tier boss.
enchantments:
sharpness : 1
unbreaking : 1
attributes:
generic_max_health : 30
generic_attack_damage : 3
lootDrops:
enabled : true
entries:
ExampleItem:
material : golden_apple
displayname : <green>Golden Apple
dropChance : 60
amount : 1
lore :
- <gray>Dropped by <green>E-Tier bosses
enchantments:
mending : 1
commandExecution:
enabled : true
events :
# Add commands when the season changes
# p -> all players will run this command
# c -> the console will run this command
#
# %player% will be replaced with the players name.
# You can add commands to the events without a limit
onSeasonChange:
p :
- say Im %player%
- say this is the second command
c :
- say Im the console
- say this is the second command
afterSeasonChange:
group1:
enabled : true
runAfter :
# Here you can set the min and max value of the generated value.
# It will run after the generated value in seconds has elapsed.
min : 5
max : 10
commands:
p :
- say Im %player%
- say this is the second command
c :
- say Im the console
- say this is the second command
Code (YAML):
weather:
enabled : true
weatherType:
clear : true
storm : true
# This will be disabled if Storm is set to false.
thunder : true
randomTickSpeed:
enabled : true
# Default value for RandomTickSpeed is 3.
# Higher value -> plants grow faster
value : 10
xpBonus:
enabled : true
# Bonus XP in percentage.
# For example: 10 means 10% -> the player will get 10% more xp.
value : 10
animalSpawning:
enabled : true
entries:
cow : 75
chicken : 25
# List of attributes can be found here: https://jd.papermc.io/paper/1.20.6/org/bukkit/attribute/Attribute.html#enum-constant-summary
# For more explanation, default values and so on you should visit this site: https://minecraft.fandom.com/wiki/Attribute#Attributes_available_on_all_living_entities
creatureAttributes:
enabled : true
entries:
zombie:
generic_max_health : 40.0
animalGrowing:
enabled : true
# Growing time of babies in seconds
# Default growing time is 24 minutes.
entries:
cow : 120
sheep : 120
# Every crop that is in this list will not grow.
# To prevent trees, you must choose the correct name from this list: https://jd.papermc.io/paper/1.20.6/org/bukkit/TreeType.html#enum-constant-summary
preventCropGrowing:
enabled : true
entries :
- wheat
- birch
# List of all potion effects: https://jd.papermc.io/paper/1.20.6/org/bukkit/potion/PotionEffectType.html#field-summary
# Entry format:
# potion_effect: potion_amplifier
potionEffects:
enabled : true
entries:
regeneration : 1
speed : 1
# You can add infinite amount of items to an entitytype or to a block (as an example: zombie, diamond_ore, etc.).
# List of EntityTypes: https://jd.papermc.io/paper/1.20.6/org/bukkit/entity/EntityType.html#enum-constant-summary
# List of MaterialTypes: https://jd.papermc.io/paper/1.20.6/org/bukkit/Material.html#enum-constant-summary
# List of EnchantmentTypes: https://jd.papermc.io/paper/1.20.6/org/bukkit/enchantments/Enchantment.html#field-summary
#
# Format:
# entity_type/block_type:
# SomeRandomName:
# (options): (values)
lootDrops:
enabled : true
entries:
zombie:
ExampleSword:
material : diamond_sword
displayname : <yellow>Tomas' Legendary Sword
lore :
- <gray>This sword
- <gray>is <red>dangerous</red>!
amount : 1
dropChance : 10
enchantments:
sharpness : 3
unbreaking : 5
particles:
enabled : true
offset:
x : 5.0
y : 10.0
z : 5.0
# Time in ticks (20 ticks = 1 second)
spawnTime : 5
# Speed of the particles
speed : 0.0
entries:
snowflake:
minSpawnAmount : 10
maxSpawnAmount : 50
bossSpawning:
enabled : true
entries :
# The name of the boss entry. Used to specify all the entries.
# will be used in the spawnboss subcommand
EasyZombie :
# false = boss will not spawn
enabled : true
mobType : zombie
displayname : <green>E-Tier BOSS <gray>| <green> %health%<gray>/<red>%maxhealth%
# The chance that this boss will spawn
# 0 - 100
spawnChance : 80
itemInHand :
# false = boss wont have any item in his hand
enabled : true
material : IRON_SWORD
displayname : <green>E-Tier Sword
dropChance : 70
lore :
- <gray>The sword of a fallen E-Tier boss.
enchantments:
sharpness : 1
unbreaking : 1
attributes:
generic_max_health : 30
generic_attack_damage : 3
lootDrops:
enabled : true
entries:
ExampleItem:
material : golden_apple
displayname : <green>Golden Apple
dropChance : 60
amount : 1
lore :
- <gray>Dropped by <green>E-Tier bosses
enchantments:
mending : 1
commandExecution:
enabled : true
events :
# Add commands when the season changes
# p -> all players will run this command
# c -> the console will run this command
#
# %player% will be replaced with the players name.
# You can add commands to the events without a limit
onSeasonChange:
p :
- say Im %player%
- say this is the second command
c :
- say Im the console
- say this is the second command
afterSeasonChange:
group1:
enabled : true
runAfter :
# Here you can set the min and max value of the generated value.
# It will run after the generated value in seconds has elapsed.
min : 5
max : 10
commands:
p :
- say Im %player%
- say this is the second command
c :
- say Im the console
- say this is the second command
- Recode the plugin | 2.0 Update
- 2.1 Update | Boss Spawning feature
- 2.2.0 Update | Mining LootDrops feature
- 2.3.0 Update | Report feature
- 2.5.0 Update | Command execution feature
- Custom Recipes feature
-
Spoiler: DescriptionWith this feature you can add shaped or shapeless crafting recipes during a season.
-
Java 25 is required for version 2.5.3+!
DynamicSeasons ⌛ Bringing Seasons Back to Your World ✅ is a free Minecraft Java mod. Compatible with Minecraft 1.20.6. Downloaded 17,153 times (via Spigot). Download it and open it directly in the game.