Messages
You can change almost every message in Plex. This page shows the messages.yml file. The file is at
/plugins/Plex/messages.yml.
Default file
Section titled “Default file”Below is the default messages.yml file.
# Plex Messages File# This file uses the MiniMessage system.# Documentation available at https://docs.adventure.kyori.net/minimessage/format.html
# Messages in here will be placed in for certain commands, actions, etc.# Warning: not all commands have customizable messages
# Variables {number} - these are code-defined replacements for things that should be inserted into messages. (e.g. names, statuses, numbers)# If any of these variables are supposed to be used within a message, some documentation is provided to give more context to what the variables indicate.# If you are wishing to change these messages it's recommended you use the same amount of variables as stated in the documentation, however it's not required.
# 0 - Appeal URL# 1 - Reason# 2 - Expiry# 3 - PunisherbanMessage: "<red>You have been banned! You may appeal at <gold>{0}.\n<red>Reason: <gold>{1}\n<red>End date: <gold>{2}\n<red>Banned by: <gold>{3}"# 0 - Reason# 1 - PunisherkickMessage: "<red>You have been kicked! \n<red>Reason: <gold>{0}\n<red>Kicked by: <gold>{1}"# 0 - The type of indefinite ban# 1 - Appeal URLindefBanMessage: "<red>Your {0} is indefinitely banned! You may appeal at <gold>{1}."# 0 - The type of indefinite ban# 1 - Appeal URL# 2 - The reasonindefBanMessageReason: "<red>Your {0} is indefinitely banned! You may appeal at <gold>{1}.\n<red>Reason: <gold>{2}"playerNotFound: "<red>Player not found!"specifyPlayer: "<red>You must specify a player!"worldNotFound: "<red>World not found!"correctUsagePrefix: "<yellow>Correct Usage: "# This will always be used for punishments where the sanctioning administrator has not provided a reason. Will ignore MiniMessage tags.noReasonProvided: "No reason provided."# 0 - The world you have been teleported toplayerWorldTeleport: "<aqua>You have been teleported to {0}."# 0 - The person who is freezing# 1 - The person who has been frozenfrozePlayer: "<red>{0} - Froze {1}"# 0 - The person who is unfreezing# 1 - The person who has been unfrozenunfrozePlayer: "<aqua>{0} - Unfroze {1}"# 0 - The command sender# 1 - The person who has been mutedmutedPlayer: "<red>{0} - Muted {1}"# 0 - The command sender# 1 - The person who has been unmutedunmutedPlayer: "<aqua>{0} - Unmuted {1}"invalidTimeFormat: "<red>Invalid time format. Use s, m, h, d, w, mo, or y (e.g., 1h30m)."timeMustBeFuture: "<red>The specified time must be in the future."# 0 - The command sender# 1 - The person who has been muted# 2 - The time that the person is muted fortempMutedPlayer: "<red>{0} - Muted {1} for {2}"maxTimeExceeded: "<red>The specified time must be under a week."# 0 - The person who is locking up# 1 - The person who has been locked uplockedUpPlayer: "<aqua>{0} - Locking up {1}"# 0 - The person who is unlocking# 1 - The person who has been unlockedunlockedPlayer: "<aqua>{0} - Unlocking {1}"# 0 - The permission node required to use the commandnoPermissionNode: "<red>You must have the permission: {0} <red>to use this command!"noPermissionInGame: "<red>You must be in console to use this command!"noPermissionConsole: "<red>You must be in-game to use this command!"# 0 - The gamemodegameModeSetTo: "<gray>Your gamemode has been set to {0}."# 0 - The player's name# 1 - The gamemodesetOtherPlayerGameModeTo: "<gray>You set {0}'s gamemode to {1}."# 0 - The command sender# 1 - The gamemodeplayerSetOtherGameMode: "<gray>{0} set your gamemode to {1}."# 0 - The command sender# 1 - The gamemodesetEveryoneGameMode: "<aqua>{0} - Changing everyone's gamemode to {1}"consoleMustDefinePlayer: "<red>You must define a player since you are running this command from console."# 0 - The world nameteleportedToWorld: "<aqua>You have been teleported to the {0}."higherRankThanYou: "<red>This player is an admin or a higher rank than you."consoleOnly: "<red>This command can only be executed by the console."# 0 - The command sender# 1 - The playerbanningPlayer: "<red>{0} - Banning {1}"# 0 - The command sender# 1 - The playerunbanningPlayer: "<aqua>{0} - Unbanning {1}"playerNotBanned: "<red>That player is not banned!"playerNotFrozen: "<red>That player is not frozen!"playerNotMuted: "<red>That player is not muted!"playerBanned: "<red>That player is already banned!"playerFrozen: "<red>That player is already frozen!"playerMuted: "<red>That player is already muted!"muted: "<red>You are currently muted - STFU!"pvpDisabled: "<red>PVP has been disabled!"chatIsOff: "<red>Chat is currently toggled off!"# 0 - The command sender# 1 - The set value of the chat togglechatToggled: "<red>{0} - Toggled chat {1}"# 0 - The command sender# 1 - The playerkickedPlayer: "<red>{0} - Kicking {1}"teleportedToWorldSpawn: "<aqua>Teleporting to the local spawn"toggleCommandSpy: "<gray>CommandSpy has been"enabled: "<gray>enabled."disabled: "<gray>disabled."# 0 - The player# 1 - The commandcommandSpyFormat: "<gray>{0}: {1}"# 0 - The admin / staff member# 1 - The player's group's prefix if any# 2 - The messageadminChatFormat: '<dark_gray>[<blue>AdminChat<dark_gray>] <dark_red>{0} {1} <gray>» <gold>{2}'# 0 - Whether it was toggled on or offadminChatToggled: '<gray>AdminChat was toggled {0}'stateEnabled: "<green>enabled"stateDisabled: "<red>disabled"stateEnabledUnsafe: "<red>enabled"stateDisabledSafe: "<green>disabled"stateOn: "<green>on"stateOff: "<red>off"# 0 - Maximum length, configured in config.ymlmaximumPrefixLength: "<red>The maximum length for a tag may only be {0}."prefixCleared: "<aqua>Your prefix has been cleared."# 0 - The player nameotherPrefixCleared: "<aqua>You have cleared {0}'s prefix."# 0 - The new prefixprefixSetTo: "<aqua>Your prefix has been set to {0}"# 0 - The action (blocked / unblocked)# 1 - The amount of playersblockeditSize: "<gray>{0} all block modification abilities for {1} players."blockeditListEntry: "<gray>- {0}"blockeditListNone: "<gray>- none"blockeditAllPlayers: "all players"blockeditAllNonAdmins: "all non-admins"blockeditBlockedAction: "Blocked"blockeditUnblockedAction: "Unblocked"blockeditBlockedState: "blocked"blockeditUnblockedState: "unblocked"# The action (blocked or restored)editsModified: "<gray>Your block modification abilities have been {0}."listOfPlayersBlocked: "<gray>The following have block modification abilities restricted:"# 0 - The player nameeditsBlocked: "<gray>Blocked block modification abilities for {0}"# 0 - The command sender# 1 - The player nameblockingEdits: "<red>{0} - Blocking block modification abilities for {1}"# 0 - The command sender# 1 - The playerunblockingEdits: "<aqua>{0} - Unblocking block modification abilities for {1}"# 0 - The player nameeditsUnblocked: "<gray>Unblocked block modification abilities for {0}"# 0 - The command sender# 1 - Number of entities removedremovedEntities: "<red>{0} - Removed {1} entities"# 0 - The command sender# 1 - Number of entities removed# 2 - Entity type(s) removedremovedEntitiesOfTypes: "<red>{0} - Removed {1} entities of type(s) {2}"# 0 - Entity type that is invalidinvalidEntityType: "<gray>Notice: Entity type {0} is invalid!"noRemovedEntities: "<gray>No entities were removed."# 0 - Number of mobs removed# 1 - Type of mob removedamountOfMobsRemoved: "<gray>{0} {1} removed."mobSingular: "mob"mobPlural: "mobs"notAValidMob: "<red>That is not a valid mob."notAValidMobButValidEntity: "<red>That is a valid entity, but is not a valid mob."# 0 - The command sender# 1 - Number of mobs removedremovedMobs: "<red>{0} - Removed {1} mobs"# 0 - The boolean for whether the limit is enabled or disabledmobLimitToggle: "<gray>The mob limit has been {0}"# 0 - The amount that the mob limit has been set tomobLimitSet: "<gray>The mob limit has been set to: <em><white>{0}"# 0 - The boolean for whether the limit is enabled or disabled# 1 - The current amount of mobs in the world# 2 - The current set mob limit# 3 - Chunk x value# 4 - Chunk z valuemobLimitStatus: "<gray>({0}<gray>) <em><white>{1} <reset><gray>/ <em><white>{2} <reset><gray>per chunk (<em><white>Chunk<gray>: <reset>{3}, {4}<gray>)"# 0 - The max set limit in configmobLimitCeiling: "<gray>The limit you have entered is too high. Defaulting to the ceiling value from config"mobLimitEnabled: "<green>Enabled"mobLimitDisabled: "<red>Disabled"# 0 - The command sender# 1 - The message being saidsayMessage: "<blue>[Server: {0}] {1}"# 0 - The command sender# 1 - The message being saidconsoleSayMessage: "<gray>[Console: {0}] <white>{1}"# 0 - The number attempted to be parsedunableToParseNumber: "<red>Unable to parse {0} as a number!"noNotes: "<red>This player has no notes!"noteAdded: "<green>Note added."noteNotFound: "<red>A note with this ID could not be found."# 0 - The ID of the note removedremovedNote: "<green>Removed note with ID: {0}"# 0 - The number of notes clearedclearedNotes: "<green>Cleared {0} notes."invalidToggle: "<red>That is not a valid toggle."toggleAvailable: "<gray>Available toggles:"# 0 - The toggle name# 1 - The toggle statustoggleListItem: "<gray> - {0}<gray> ({1}<gray>)"# 0 - The toggle name# 1 - The toggle statustoggleCommandResult: "<gray>Toggled {0}<gray> ({1}<gray>)"# 0 - The toggle nametoggleToggled: "<gray>Toggled {0}."toggleMenuTitle: "<green><bold>Toggles"toggleExplosions: "Explosions"toggleExplosionsLower: "explosions"toggleFluidSpread: "Fluid spread"toggleFluidSpreadLower: "fluid spread"toggleDrops: "Drops"toggleDropsLower: "drops"toggleRedstone: "Redstone"toggleRedstoneLower: "redstone"togglePvp: "PVP"togglePvpLower: "PVP"toggleChat: "Chat"toggleChatLower: "chat"specifyLoginMessage: "<red>Please specify a login message."# 0 - The login messagesetOwnLoginMessage: "<gray>Your login message is now:<newline><gray>> <reset>{0}"# 0 - The player# 1 - The login messagesetOtherPlayersLoginMessage: "<gray>{0}'s login message is now:<newline><gray>> <reset>{1}"removedOwnLoginMessage: "<gray>Your login message has been removed."# 0 - The playerremovedOtherLoginMessage: "<gray>You removed {0}'s login message."nameRequired: "<red>Policy requires that you must state your player name in your login message. You can either do this by inserting your name or %player%."playerHasNoLoginMessage: "<red>This player does not have a login message."# 0 - The material name# 1 - The players who have the material in their inventoryplayersWithMaterial: "<gray>Players with {0} in their inventory: {1}"# 0 - The material name# 1 - The players who have the material in their inventoryplayersMaterialCleared: "<gray>{0} has been removed from the following players: {1}"nobodyHasThatMaterial: "<gray>No one online has that in their inventory."# 0 - The attempted material namematerialNotFound: "<red>{0} is not a valid item/block name."# 0 - The players nameloginMessage: "<yellow><translate:multiplayer.player.joined:{0}>"# 0 - The string that wasn't a valid integernotANumber: "<red>{0} is not a valid number!"# 0 - Players currently online# 1 - Max playerslistHeader: "<gray>There is currently <yellow>{0}<gray> player online out of <yellow>{1}<gray> players."# 0 - Players currently online# 1 - Max playerslistHeaderPlural: "<gray>There are currently <yellow>{0}<gray> players online out of <yellow>{1}<gray> players."# 0 - Player who is having their notes fetchednotesHeader: "Player notes for: <green>{0}"# 0 - Note ID# 1 - Author of the note# 2 - TimestampnotePrefix: "<gold><!italic>{0} - Written by: {1} on {2}"# 0 - The content of the notenoteLine: "<newline><yellow># {0}"# 0 - The player# 1 - The number of notes logged for said playerplayerNoteAlert: "<gold>{0} has {1} note. <click:run_command:/notes {0} list><underlined>Click here to view their note."# 0 - The player# 1 - The number of notes logged for said playerplayerNoteAlertPlural: "<gold>{0} has {1} notes. <click:run_command:/notes {0} list><underlined>Click here to view their notes."smiteTitleHeader: "<red>You've been smitten."# 0 - The reason for the smite. Will default to noReasonProvided if no reason is specified.# 1 - The admin / staff membersmiteTitleMessage: "<yellow>Be sure to follow the rules!"# 0 - The player# 1 - The reason for the smite. Will default to noReasonProvided if no reason is specified.# 2 - The admin / staff membersmiteBroadcast: "<red>{0} has been a naughty, naughty boy.<newline><red> - Reason: <yellow>{1}<newline><red> - Smitten by: <yellow>{2}"# 0 - The playersmittenQuietly: "<gray>Smitten {0} quietly."# 0 - The reason for being smittensmitten: "<red>You've been smitten. Reason: <yellow>{0}"nukerKickMessage: "Please turn off your nuker!"nukerTempbanReason: "You are temporarily banned for five minutes for using a Nuker."antiSpamMessage: "<gray>Please refrain from spamming messages."# 0 - The playerbanExpiredBroadcast: "Plex - Automatically unbanning {0}"# 0 - The playerredisResetSuccessful: "<yellow>Successfuly reset {0}'s Redis punishments!"redisResetPlayerNotFound: "Couldn't find player in Redis punishments."reappliedGamerules: "<aqua>All game rules have been re-applied!"commandNotFound: "<red>That command could not be found!"# 0 - The command# 1 - A list of aliases foundcommandAliases: "<aqua>Aliases for {0} are: {1}"# 0 - Number of activities found to rollbackprismRollbackMessage: "<gray>Rolled back {0} activities"# 0 - Error message returned from PrismprismRollbackError: "<red>Rollback failed: {0}"prismNoResult: "<gray>No activities have been rolled back"punishmentMenuTitle: "<aqua><bold>Punishments"# 0 - The playerpunishedPlayerMenuTitle: "<red><bold>Punishments - {0}"punishmentPlayerNotFound: '<red>This player does not exist. Try doing /punishments \<player> instead.'# 0 - The amount of active bans# 1 - The active ban listactiveBansList: "<gold>Active Bans ({0}): <yellow>{1}"# 0 - The amount of players unbannedunbannedPlayers: "<gold>Unbanned {0} players."updateUpToDate: "<green>Plex is up to date on the {0} channel."# 0 - The version# 1 - The channelupdateAvailable: "<red>Plex {0} is available on the {1} channel."updateRunCommand: "<red>Run: /plex update"# 0 - The file nameupdateDownloading: "<green>Downloading latest JAR file: {0}"updateDownloaded: "<green>New JAR file downloaded and verified successfully."# 0 - The directory pathupdateDirectoryFailed: "<red>Unable to create update directory: {0}"# 0 - The artifact nameupdateDownloadFailed: "<red>Something went wrong while downloading {0}. Please check the log for more information."# 0 - The channelupdateMetadataNotFound: "<red>No compatible update is available on the {0} channel."# 0 - The Plex version# 1 - The channel# 2 - The supported Minecraft versions# 3 - The running Minecraft versionupdateRequiresMinecraftVersion: "<yellow>No Plex build exists for Minecraft {3}. Plex {0} on the {1} channel supports Minecraft: {2}."# 0 - The Plex version# 1 - The channel# 2 - The oldest supported Minecraft version# 3 - The running Minecraft version# 4 - The supported Minecraft versionsupdateRequiresNewerMinecraft: "<yellow>Your server is running Minecraft {3}, which is older than any version supported by Plex {0} on the {1} channel (oldest supported: {2}). Supported versions: {4}."# 0 - The Plex version# 1 - The channel# 2 - The newest supported Minecraft version# 3 - The running Minecraft version# 4 - The supported Minecraft versionsupdateUnsupportedNewerMinecraft: "<yellow>No Plex build exists yet for Minecraft {3}. Plex {0} on the {1} channel supports up to Minecraft {2}. Supported versions: {4}."# 0 - The error messageupdateMetadataError: "<red>There was an error checking update metadata: {0}"moduleUpdateDisabled: "<yellow>Skipping {0}; module updates are disabled."moduleRestartRequired: "<yellow>Module changes applied. Restart the server if module commands do not appear or disappear."MiniMessage
Section titled “MiniMessage”The messages.yml file uses MiniMessage for colors. For example, <aqua> colors the text aqua. This is not like HTML,
so you do not close the tag with </aqua>. MiniMessage also has special tags, such as <rainbow>. The default color is
gray. For the full MiniMessage guide, see
https://docs.advntr.dev/minimessage/format.html.
Numbers in braces, such as {0} and {1}, are replacement values. Plex fills each one with a value, such as a player
name or a number. The comment above each message explains what each value holds.
Modules can ship their own message files. A module reads its own messages.yml first, then falls back to the Plex
messages for any key that it does not define.
Troubleshooting
Section titled “Troubleshooting”If a command shows No message., your messages.yml file may be missing a key. Plex adds missing keys to your file when
it starts, so a restart usually fixes this. You can also compare your file with the default file on
GitHub.
