Compatibility
Minecraft: Java Edition
Platforms
Creators
Details
Add holiday spirit to your Minecraft server with this customizable advent calendar! Reward your players with fun gifts and a unique holiday experience!

If you like this plugin, please consider supporting me! I code plugins and mods in my free time, and it would really help me out!
- Full customization for what commands run when a player claims a gift
- Customizable aliases for the base command
- Run as many commands as you want for each day
- Customizable time zone, gift claim message, expired claim material, GUI name, filler item, and more
- SQLite data storage
- Commands now have support for PlaceholderAPI placeholders!
/ac - Opens the advent calendar
/adventcalendar, /advent - Aliases for /ac
/ac force <player> - Allows an admin to open the calendar for a specific player
/ac admin preview - Opens a preview of the advent calendar GUI so that admins can test commands and GUI customization without affecting the regular calendar
/ac admin reload - Allows admins to reload the config without having to restart the server
/ac admin viewclaims <player> - Shows in chat which days of the calendar the specified player has claimed
/ac admin removeclaim <player> <day> - Removes the claim for the specified player on the specified day
/ac admin removeallclaims <player> - Removes all claims for the specified player
/ac help - Displays a help window with descriptions of each command
adventcalendar.open - Gives player permission to open the advent calendar for themselves, the calendar will still have a countdown timer until December begins.
adventcalendar.admin - Catch all for admin perms
adventcalendar.admin.reload - Lets you reload the config files
adventcalendar.admin.preview - Lets you open the preview calendar for testing
adventcalendar.admin.viewclaims - Lets you view the claims from the specified player
adventcalendar.admin.removeclaim - Lets you remove a claim from the specified player
adventcalendar.admin.removeclaimall - Lets you remove all claims from a specified player
If you encounter any issues instead of leaving a negative review, please join my development discord: https://discord.gg/GMkjWd2Kun I also welcome any suggestions for improving the advent calendar!
config.yml
####################################################################################################
# +----------------------------------------------------------------------------------------------+ #
# | __ ___ ___ | #
# | /\ | \ \ / |__ |\ | | | #
# | /~~\ |__/ \/ |___ | \| | | #
# | __ ___ __ __ | #
# | / ` /\ | |__ |\ | | \ /\ |__) | #
# | \__, /~~\ |___ |___ | \| |__/ /~~\ | \ | #
# | | #
# | | #
# | https://www.spigotmc.org/resources/advent-calendar.105930/ | #
# | https://modrinth.com/plugin/adventcalendar | #
# | | #
# | If you have any issues or suggestions please join my development discord! | #
# | https://discord.gg/GMkjWd2Kun | #
# | | #
# | New options are not added to this file automatically. The plugin may break if a config | #
# | option cannot be found. The latest config version can be obtained at the link above. | #
# +----------------------------------------------------------------------------------------------+ #
####################################################################################################
# Used to let the plugin determine if your config is up-to-date, so a
# warning can be printed in the server console. Only edit this if you
# know what you are doing, or have just updated your config to the
# newest version.
config-version: '1.4.0'
# +----------------------------------------------------------------------------------------------+ #
# | | #
# | LOCALIZATION SETTINGS | #
# | | #
# +----------------------------------------------------------------------------------------------+ #
# The timezone that the advent calendar uses to determine what day it is
# You can find a list of timezones here: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
time-zone: 'America/Los_Angeles'
# +----------------------------------------------------------------------------------------------+ #
# | | #
# | CUSTOMIZATION SETTINGS | #
# | | #
# +----------------------------------------------------------------------------------------------+ #
# What month the calendar uses as the claim month (the calendar is only able to be opened during this month)
calendar-month: '12'
# Whether to allow players to claim gifts for previous days
allow-expired-claims: false
# How many claims the calendar should allow from each unique IP address to prevent alt boosting.
# Set to -1 to disable the limit.
max-claims-per-ip: 3
# Whether to have the quantity of items match the day number or just have 1 item per day
display-numbers-on-gifts: true
# Whether the calendar will display in 24 or 25 day mode
25-day: false
# +----------------------------------------------------------------------------------------------+ #
# | | #
# | TEXT SETTINGS | #
# | | #
# +----------------------------------------------------------------------------------------------+ #
# Any minecraft color codes are supported, just use the & symbol
# You can also use %player% for the players username and %day% for the claimed day
# The title of the Advent Calendar GUI
title: '&cAdvent &2Calendar'
# The name that displays on each gift. You can specify a color code here or per item down in days-material
gift-name: 'Day %day%'
# The name that displays on each gift that has already been claimed, you can specify a color code here,
# or per item down in days-material
claimed-name: 'Day %day%'
# The name that displays on the close button.
close-name: '&cClose'
# +----------------------------------------------------------------------------------------------+ #
# | | #
# | GUI MATERIAL SETTINGS | #
# | | #
# +----------------------------------------------------------------------------------------------+ #
# The material for the filler item that goes around the outside of the GUI
filler-material: 'LIGHT_BLUE_STAINED_GLASS_PANE'
# The material used for the close button
close-material: 'BARRIER'
# The material used for each day in the advent calendar.
# If the material is PLAYER_HEAD, the head will be whatever is specified in texture
# day-color is the color that the gift-name text will appear in, if you want a different color
# for different days
# custom-model-data is used for applying custom models to items with texture packs, if set to 0
# it will be ignored.
# claimed-* is the same as above, but for the claimed / expired version of the item
# NOTE: for the texture field they MUST be textures.minecraft.net links, or the calendar will error out.
days-material:
"1":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"2":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"3":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"4":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"5":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"6":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"7":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"8":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"9":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"10":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"11":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"12":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"13":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"14":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"15":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"16":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"17":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"18":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"19":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"20":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"21":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"22":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"23":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"24":
color: '&a'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/81e42e3725c2b4ae6900580c4e2a6b830f6eca0211f7a3641433fc67fbc43d3f'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
"25":
color: '&c'
material: 'PLAYER_HEAD'
texture: 'http://textures.minecraft.net/texture/5726d9d0632e40bda5bcf65839ba2cc98a87bd619c53adf00310d6fc71f042b5'
custom-model-data: 0
claimed-color: '&c'
claimed-material: 'COAL_BLOCK'
claimed-texture: ''
claimed-custom-model-data: 0
# +----------------------------------------------------------------------------------------------+ #
# | | #
# | ADVENT CALENDAR COMMANDS | #
# | | #
# +----------------------------------------------------------------------------------------------+ #
# When typing commands, do not include the '/' before the command.
# To use the player as a placeholder use %player%
# An example command would be 'give %player% minecraft:diamond 10'
# If you want to give a player in game currency, and you have Essentials, you can do 'eco give %player% <amount>'
# slots-required is used for give commands to make sure the player has enough inventory space before claiming an item
# if you are not giving the player an item, set this to 0, if you are giving the player 3 stacks of items, set this to 3
rewards:
"1":
slots-required: 1
commands:
- 'say test'
"2":
slots-required: 1
commands:
- 'say test'
"3":
slots-required: 1
commands:
- 'say test'
"4":
slots-required: 1
commands:
- 'say test'
"5":
slots-required: 1
commands:
- 'say test'
"6":
slots-required: 1
commands:
- 'say test'
"7":
slots-required: 1
commands:
- 'say test'
"8":
slots-required: 1
commands:
- 'say test'
"9":
slots-required: 1
commands:
- 'say test'
"10":
slots-required: 1
commands:
- 'say test'
"11":
slots-required: 1
commands:
- 'say test'
"12":
slots-required: 1
commands:
- 'say test'
"13":
slots-required: 1
commands:
- 'say test'
"14":
slots-required: 1
commands:
- 'say test'
"15":
slots-required: 1
commands:
- 'say test'
"16":
slots-required: 1
commands:
- 'say test'
"17":
slots-required: 1
commands:
- 'say test'
"18":
slots-required: 1
commands:
- 'say test'
"19":
slots-required: 1
commands:
- 'say test'
"20":
slots-required: 1
commands:
- 'say test'
"21":
slots-required: 1
commands:
- 'say test'
"22":
slots-required: 1
commands:
- 'say test'
"23":
slots-required: 1
commands:
- 'say test'
"24":
slots-required: 1
commands:
- 'say test'
"25":
slots-required: 1
commands:
- 'say test'
strings.yml
####################################################################################################
# +----------------------------------------------------------------------------------------------+ #
# | __ ___ ___ | #
# | /\ | \ \ / |__ |\ | | | #
# | /~~\ |__/ \/ |___ | \| | | #
# | __ ___ __ __ | #
# | / ` /\ | |__ |\ | | \ /\ |__) | #
# | \__, /~~\ |___ |___ | \| |__/ /~~\ | \ | #
# | | #
# | | #
# | https://www.spigotmc.org/resources/advent-calendar.105930/ | #
# | https://modrinth.com/plugin/adventcalendar | #
# | | #
# | If you have any issues or suggestions please join my development discord! | #
# | https://discord.gg/GMkjWd2Kun | #
# | | #
# | New options are not added to this file automatically. The plugin may break if a config | #
# | option cannot be found. The latest config version can be obtained at the link above. | #
# +----------------------------------------------------------------------------------------------+ #
####################################################################################################
# +----------------------------------------------------------------------------------------------+ #
# | | #
# | STRINGS | #
# | | #
# +----------------------------------------------------------------------------------------------+ #
# Any minecraft color codes are supported, just use the & symbol
# Gradients are also supported in this version, see the syntax here:
# https://github.com/Iridium-Development/IridiumColorAPI/blob/master/README.md
# You can also use %player% for the players username and %day% for the claimed day
# This value will be inserted wherever you use %prefix%
prefix: "&aAdvent Calendar >>"
# Message that sends to the player after they claim the gift
claim-message: "&aGift Successfully Claimed! Happy Holidays, %player%!"
# Message that displays when a gift is expired
error-expired-message: "&cThis gift can no longer be claimed."
# Message that displays when the IP limit is reached
error-ip-message: "&cThe maximum number of gifts have been claimed from this IP."
# Message that displays when a gift is already claimed
error-claimed-message: "&cThis gift has already been claimed."
# Message that displays when a user's inventory is full when attempting to claim
error-inventory-message: "&cYou don't have enough space in your inventory to receive this gift!"
# Message that displays when the calendar is not unlocked yet
# Note: The %s get autofilled with the time, so don't touch them unless you know what you are doing.
error-calendar-message: "&cThe Advent Calendar doesnt open for %s days %s hours %s minutes %s seconds."
# Message that displays when a gift has not unlocked yet
# Note: The %s get autofilled with the time, so don't touch them unless you know what you are doing.
error-gift-message: "&cYou can claim this item in %s days %s hours %s minutes %s seconds."
# Message that displays when a user runs /reload
reload-message: "&aThe config has been successfully reloaded!"
# Message that displays when the %adventcalendar_claimed_today% placeholder is true
claimed-today-true: "&aAdvent Calendar not claimed today!"
# Message that displays when the %adventcalendar_claimed_today% placeholder is false
claimed-today-false: "&cAdvent Calendar already claimed today!"









