Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
# Scheduled commands simply run at the time(s) defined by their cron.
# Unlike events these don't have a concept of a start/end, phases, etc.
# They simply just execute at the determined times.
commands=[
{
# The command to be executed.
# Commands will be executed by the console and will effectively have OP permissions.
command="say example scheduled command"
# Configure the execution time(s) of this command using cron syntax.
# Here is a good crontab generator: https://www.freeformatter.com/cron-expression-generator-quartz.html
# Times are always based on the timezone of the machine the server is running on.
# The example cron runs every minute.
cron="0 * * ? * * *"
# Enable or disable this command. When disabled, it will never run.
enabled=true
}
]
# Enable plugin debug mode. Produces extra logging to help diagnose issues.
debug=false
# Displays are used to notify players of an event phase.
# Here you can customize the format of broadcasts, title/subtitles,
# and more. These are global and will be used for every event
# configured to use the display types unless the event overrides
# the display template itself.
displays=[
{
# Enable or disable this message type. (Will prevent all events from using this type)
enabled=true
# Use this display on event 'START', 'ACTIVE', 'END', or any combination.
phases=[
START
]
# Template(s) to use during the defined phases for an event
# (applicable only if event uses this display type)
# Formatting code reference: https://docs.adventure.kyori.net/minimessage
# For chat display, one template entry = one line.
# For titles, the first template is the title and second is the subtitle.
templates=[
"<#00ff00><eventName> <white>Has Begun!"
]
# Display type(s)
types=[
chat,
title
]
},
{
# Enable or disable this message type. (Will prevent all events from using this type)
enabled=true
# Use this display on event 'START', 'ACTIVE', 'END', or any combination.
phases=[
END
]
# Template(s) to use during the defined phases for an event
# (applicable only if event uses this display type)
# Formatting code reference: https://docs.adventure.kyori.net/minimessage
# For chat display, one template entry = one line.
# For titles, the first template is the title and second is the subtitle.
templates=[
"<#00ff00><eventName> <white>Has Ended!"
]
# Display type(s)
types=[
chat,
title
]
}
]
# Configure a list of events.
events=[
{
# Configure what happens when this event IS ACTIVE (event started and has not yet ended)
# Note: This phase configuration is ONLY used when a player joins
# during an active event. Displays or commands are triggered per-player per-join
active {
# List all commands that will be executed when this phase is activated.
# Commands will be executed by the console and will effectively have OP permissions.
commands=[
"effect give %player_name% levitation 3 0"
]
# List all display types (by name) this phase will use.
use-displays=[
title
]
}
# Set the event name. This is used in event messages and lists.
description="This event applies levitation for 3 seconds."
# Overrides displays for this event only. Leave empty to use global defaults.
displays=[]
# Enable or disable this event. When disabled, no schedules can become active.
enabled=true
# Configure what happens when this event ENDS (a schedule's end time is reached)
end {
# List all commands that will be executed when this phase is activated.
# Commands will be executed by the console and will effectively have OP permissions.
commands=[
"effect give %player_name% levitation 3 0"
]
# List all display types (by name) this phase will use.
use-displays=[
title
]
}
# Set the event key. This MUST be unique and is used to uniquely identify
# this event through commands and the API.
key="example_event"
# Set the event name. This is used in event messages and lists.
name="Example Event"
# Set a permission node this event applies to.
# Set value to 'false' to apply to all players.
# If a permission is set, your command(s) need the %player_name% placeholder
# otherwise they'll be executed once without a player arg,
# potentially applying to every player.
permission="false"
# You can set multiple schedules for an event, even beyond what cron offers.
# Here is a good crontab generator: https://www.freeformatter.com/cron-expression-generator-quartz.html
# Times are always based on the timezone of the machine the server is running on.
schedules=[
{
# Enable or disable this schedule. When disabled, it will never become active.
enabled=true
# Set the ending time(s). Uses cron syntax.
# This example ends the event every Wednesday at midnight.
# This means the event was "active" all day Tuesday.
ends="0 0 0 ? * WED *"
# Set the starting time(s). Uses cron syntax.
# This example starts the event every Tuesday at midnight.
starts="0 0 0 ? * TUE *"
}
]
# Configure what happens when this event STARTS (a schedule's start time is reached)
start {
# List all commands that will be executed when this phase is activated.
# Commands will be executed by the console and will effectively have OP permissions.
commands=[
"effect give %player_name% levitation 3 0"
]
# List all display types (by name) this phase will use.
use-displays=[
title
]
}
}
]
# Determines which language configuration file will be loaded from the 'langs' directory
language="en_us"
# Configure the format of command output.
output {
# Configure active event entry formats when used in list output.
active-event-list-entry="<green><eventName>\n <yellow><eventDescription>\n <gray>Ends: <white><nextEnd>"
# Configure the date format used in output where are used. Refer to java's DateFormatter for syntax.
date="eee MMMM dd yyyy hh:mm a Z"
# Used for all "error" messages.
error="<prefix><red><message>"
# Configure event entry formats when used in list output.
event-list-entry="<green><eventName>\n <yellow><eventDescription>\n <gray>Starts: <white><nextStart>\n <gray>Ends: <white><nextEnd>"
# Used for the heading message before outputting a list (of events, etc).
heading="<prefix><white><heading> <underlined><#0ccfcb><bold><message>"
# Used for all "info" messages.
info="<prefix><white><message>"
# Used to prefix any other messages with <prefix> placeholders.
prefix="<dark_gray>(<#ffbb6e>!<dark_gray>) <#ffbb6e>Quartz<gray> 》"
# Used for all "success" messages.
success="<prefix><green><message>"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment