Language
Chat messages come from one language file in plugins/MythicSeasons/lang/, picked with language in config.yml.
Choosing a language
language: de
In
config.yml: messages come fromlang/de.yml.
- Only
en.ymlis shipped. Missing keys are added back to it at each start and/ms reload. - A
languagewithout a matching file falls back to English and logslanguage: <code> has no lang/<code>.yml, falling back to English. Available: <codes>. - Every player gets the server's language, not their client's.
File format
SEASON-CHANGED: "<prefix><gray>Season set to <white>$season$"
HELP-SET: "<#5EEAD4>/$label$ set \\<season> [world] <dark_gray>- <gray>set the season"
A placeholder, the command's name and a literal
<.
- Messages use MiniMessage tags (
<red>,<bold>,<#RRGGBB>). Legacy&colour codes are not converted. - Only the
$placeholders$listed for a key are filled in. PlaceholderAPI placeholders are not. $label$is the name of the command the message is about, as set incommands.yml.- Write a literal
<as\\<inside double quotes or\<inside single quotes, or MiniMessage reads it as a tag. - A key can hold a YAML list, one line per entry.
- Keep the quotes: YAML reads unquoted
onoroffas true and false, and a value that is not text or a list is ignored (the English text shows). - Key names are fixed and unknown keys are ignored. A missing key uses the English text.
Prefix
PREFIX: "<#5EEAD4>MythicSeasons <dark_gray>» "
NO-PERMISSION-MESSAGE: "<prefix><#F87171>No permission"
The shipped prefix, and a message that starts with it.
<prefix>shows thePREFIXtext. Its colours end with the prefix.PREFIX: ""hides it everywhere. To hide it on one message, delete<prefix>there.<prefix>also works in a season'stransition-messageand in an event's chat lines.- In the shipped file, every one-line command reply and the four season change messages start with
<prefix>, and a reply of several lines has it on the first line only (SEASONSCOMMAND-CURRENTSEASONin/ms getinfo).SEASONS-DISABLED-ENABLE-HINT,RELOAD-BIOME-RESTART,NOT-A-NUMBER,EVENT-LIST-OTHER, help lines,ENABLED,DISABLEDandCONSOLE-ONLYgo without it. - A language file made before the prefix existed gets the
PREFIXkey at the next start, but you add<prefix>to its messages yourself.
Message types
Season changes
Sent to everyone in the world when its season changes, only while send-message-on-season-cycle is on and the new season's transition-message is empty (as in all four shipped seasons). No placeholders.
| Key | Season |
|---|---|
SEASON-TO-SPRING |
spring |
SEASON-TO-SUMMER |
summer |
SEASON-TO-FALL |
fall |
SEASON-TO-WINTER |
winter |
Custom seasons have no such key, so with an empty transition-message they stay silent.
Season info
/ms getinfo [world] shows these lines in this order, leaving out those that do not apply (see Season information). An empty text hides its line, except SEASONCOMMAND-DISABLED.
| Key | Line | Placeholders |
|---|---|---|
SEASONCOMMAND-DISABLED |
The world has no season, or is the Nether or the End. /ms event start and stop also send it there |
|
SEASONSCOMMAND-CURRENTSEASON |
The season | $current_season$ its display name |
SEASONCOMMAND-CURRENTDATE |
The date | $current_weekday$, $current_month$, $current_day$, $current_year$ |
SEASONSCOMMAND-DAYSUNTILNEXTSEASON |
When the season has a next one in the cycle | $next_season$ display name, $days_until_next_season$ |
SEASONCOMMAND-TIME |
The time of day, in the time.format of calendar.yml |
$time$ |
SEASONCOMMAND-EVENTS |
The running events, - for none |
$events$ |
SEASONSCOMMAND-DAYSUNTILNEXTEVENT |
Only when an event is coming up | $next_event$, $days_until_next_event$ |
SEASONSCOMMAND-AIRTEMPERATURE |
The air temperature | $air_temperature$: colour tag, number and the player's unit. A °C or °F typed into this message is removed |
Player commands
| Key | Sent when | Placeholders |
|---|---|---|
TOGGLESEASONSCOMMAND-MESSAGE |
/toggleseasoncolors |
$status$ |
TOGGLETEMPERATURECOMMAND-MESSAGE |
/toggletemperature for yourself |
$status$ |
TOGGLE-TEMP-OTHER |
/toggletemperature <player>, from the console or with mythicseasons.toggletemperature.others |
$status$, $player$ |
TOGGLE-TEMP-USAGE |
The console runs /toggletemperature without a player |
$label$ |
TOGGLEPARTICLESCOMMAND-MESSAGE |
/toggleseasonparticles |
$status$ |
TOGGLEFAHRENHEITCOMMAND-TOFAHRENHEIT, TOGGLEFAHRENHEITCOMMAND-TOCELCIUS |
/togglefahrenheit switched the player to that unit |
|
CLOUDQUALITYCOMMAND-MESSAGE |
/cloudquality <preset> |
$quality$ |
CLOUDQUALITY-USAGE |
/cloudquality without a valid preset |
$quality$ the current preset, $presets$ the names joined by /, $label$ |
CLOUDQUALITY-UNAVAILABLE |
Not sent in normal use (/cloudquality works with clouds on or off) |
|
TOGGLECLOUDLAYERCOMMAND-MESSAGE |
/togglecloudlayer <name> |
$layer$, $status$ |
TOGGLECLOUDLAYER-USAGE |
/togglecloudlayer without a known name |
$layers$ every name with its state, $label$ |
TOGGLECLOUDLAYER-NONE |
No loaded cloud layer has a toggle name |
|
NO-PERMISSION-MESSAGE |
A command is refused for lack of permission | |
CONSOLE-ONLY |
A command that needs a player runs from the console |
ENABLED and DISABLED are the on and off words for $status$, the $value$ of DEBUG-MODE and the /ms atmosphere output.
Admin commands
| Key | Sent when | Placeholders |
|---|---|---|
SEASON-CHANGED |
/ms set changed the season |
$season$ display name |
CHOOSE-SEASON |
/ms set without a season |
$seasons$ the season ids |
UNKNOWN-SEASON |
/ms set with an unknown id |
$season$ as typed, $available$ the ids |
SEASON-NO-CALENDAR |
/ms set for a season without a usable length in calendar.yml (the season is still set) |
$season$ |
CANT-HAVE-SEASONS |
/ms set, disable or nextseason in the Nether or the End |
|
SEASONS-DISABLED-IN-WORLD |
/ms disable |
|
SEASONS-DISABLED-NO-NEXT, SEASONS-DISABLED-ENABLE-HINT |
/ms nextseason in a world without a season, as two lines |
$label$ and $seasons$ in the hint |
DATE-CHANGING |
/ms setdate set the date |
$date$ |
DATE-FORMAT-AMERICAN, DATE-FORMAT-EUROPEAN |
/ms setdate without a date or without three parts, by american-date-format in calendar.yml |
$label$ |
DATE-FORMAT-AMERICAN-EXAMPLE, DATE-FORMAT-EUROPEAN-EXAMPLE |
/ms setdate with parts that are not numbers |
$label$ |
MONTH-MAX |
/ms setdate beyond the last month |
$max$ |
PAUSE-ONLY-OVERWORLD |
/ms pausetime in the Nether or the End |
|
PAUSE-SYNC-CONFLICT |
/ms pausetime in a world with a season while sync-time-with-real-world is on |
|
TIME-PAUSED, TIME-RESUMED |
/ms pausetime |
|
TEMPERATURE-WORLD-ENABLED, TEMPERATURE-WORLD-DISABLED |
/ms temperature toggle |
|
TEMP-MODIFY-SUCCESS |
/ms temperature modify applied a change, except in the FIXED(...) form |
$change$, $player$, $duration$, all as typed |
TEMP-MODIFY-USAGE |
/ms temperature modify with wrong arguments |
$label$ |
NOT-A-NUMBER |
A number for /ms temperature modify is not a whole number |
$value$ |
TEMP-CLEAR-SUCCESS |
/ms temperature clear |
$player$ display name |
TEMP-INFO |
/ms temperature info <player> |
$player$, $status$, $body$ and $air$ (coloured, in the sender's unit, Celsius for the console), $change$ (total of the running timed changes, degrees C) |
PLAYER-NOT-FOUND |
A named player is not online | $player$ as typed |
WORLD-NOT-FOUND |
A named world does not exist | |
CONSOLE-NEEDS-WORLD |
The console runs a world command without a world | $label$, $command$ |
RELOAD-SUCCESS, RELOAD-BIOME-RESTART |
After every successful /ms reload |
|
RELOAD-FAILED |
/ms reload stopped at a file error |
$error$ |
DEBUG-MODE |
/ms debug |
$value$ |
BIOMELIST-LOGGED |
A player runs /ms biomelist (the list goes to the console) |
|
ATMOSPHERE-OVERWORLD-ONLY |
/ms atmosphere toggle for a Nether or End world |
|
UNKNOWN-SUBCOMMAND |
/ms with an unknown subcommand |
$label$, $subcommand$ |
Weather and events
| Key | Sent when | Placeholders |
|---|---|---|
WEATHER-SET |
/ms weather clear, rain or storm |
$weather$, $radius$, $minutes$ |
WEATHER-RESET |
/ms weather reset |
|
WEATHER-UNAVAILABLE |
The weather where the player stands is not simulated, or the atmosphere is off | |
EVENT-LIST-RUNNING, EVENT-LIST-OTHER |
/ms event list |
$events$ the event ids, - for none |
EVENT-SET |
/ms event start or stop worked |
$event$, $status$ |
EVENT-UNCHANGED |
The event already runs, or is already stopped | $event$, $status$ |
EVENT-UNKNOWN |
An unknown event id | $available$ |
EVENT-OFF-IN-WORLD |
Starting an event that is off in that world | $event$ |
EVENT-CANCELLED |
Another plugin cancelled the start or stop | $event$ |
Help
/ms help and /ms alone show these lines. Player lines show only to players, admin lines only to the console and players with mythicseasons.admin. A command switched off in commands.yml gets no line.
| Keys | Lines |
|---|---|
HELP-HEADER ($version$), HELP-WIKI, HELP-DISCORD, HELP-NORMAL-HEADER, HELP-GETINFO |
The header and /ms getinfo, for everyone |
HELP-TOGGLESEASONCOLORS, HELP-TOGGLETEMPERATURE, HELP-TOGGLEPARTICLES, HELP-TOGGLEFAHRENHEIT, HELP-CLOUDQUALITY, HELP-TOGGLECLOUDLAYER |
The player commands |
HELP-ADMIN-HEADER, HELP-SET ($seasons$), HELP-SETDATE-AMERICAN or HELP-SETDATE-EUROPEAN, HELP-NEXTSEASON, HELP-DISABLE, HELP-TEMPERATURE-TOGGLE, HELP-TEMPERATURE-MODIFY, HELP-TEMPERATURE-CLEAR, HELP-TEMPERATURE-INFO, HELP-PAUSETIME, HELP-WEATHER, HELP-EVENT, HELP-ATMOSPHERE, HELP-BIOMELIST, HELP-HEALTH, HELP-DEBUG, HELP-RELOAD, HELP-HELP |
The admin commands, in this order |
Some help lines double as usage hints, for example HELP-WEATHER after wrong /ms weather arguments and the four HELP-TEMPERATURE- lines after /ms temperature alone.
Adding a language
- Copy
lang/en.ymltolang/<code>.yml, for examplelang/de.yml. - Translate the values. Keep the keys, the
$placeholders$and the quotes. - Set
language: <code>inconfig.ymland run/ms reload.
Text outside the language file
| Text | Where it is set |
|---|---|
| Season names and season change messages | display-name and transition-message in seasons/<id>.yml, see Season Options |
| Temperature readout and warnings | The actionmessage and message lines of skills/TemperatureReadout.yml in the bundled pack, see Packs. The unit text is display.temperature in temperature.yml |
| Event names | display-name in events/<id>.yml, see Event Options |
Fixed English that cannot be translated: the /ms getinfo hint for admins in a world without a season, the welcome note for admins on a fresh install, the output of /ms health, and the /ms atmosphere subcommands apart from their on and off words.
Season, month, weekday and event names and the time go into the season info lines as written. A $ in one of them breaks /ms getinfo, and a \ is dropped or breaks it. Leave both out of display names.