Plugins usually store their settings in YAML files in the plugins/<Plugin>/ folder. YAML is a text format that builds its structure through indentation with spaces. A single tab or a missing quotation mark is enough to stop a plugin from reading a file. Each section below covers one message. If you got here via "Learn more" in Server health, you're already in the right place.

You'll find the full text in the Console or under Files in logs/latest.log. It almost always names the file, and often the line and column too. Below that there's frequently a stack trace, a list of indented at lines that shows where in the program the error occurred. Before changing any configuration or world files, create a backup under Backups. It's best to edit files while the server is stopped, because some plugins overwrite their configuration when they shut down.

YAML Syntax Error in a Plugin File

What the message looks like:

Cannot load plugins/<Plugin>/config.yml
org.bukkit.configuration.InvalidConfigurationException: sequence entries are not allowed here
 in 'reader', line <Line>, column <Column>:

What's behind it: The plugin couldn't read the named YAML file while loading. YAML is a text format that builds its structure through indentation with spaces. Tabs are forbidden there, and some characters have a special meaning at the start of a value. The message names the file, line and column, and the ^ character below it points to the error location. Depending on the plugin, individual settings or the entire plugin will then be missing.

How to fix it:

  1. Under Files, open the file from the first line and go to the named line. The error is there or one line before.
  2. Put values that start with &, *, %, @, { or [ in quotation marks, for example prefix: "&8[&aShop&8] ". A backtick (`) isn't allowed at the start of a value at all.
  3. Replace tabs with spaces and indent entries of the same level by the same amount.
  4. Check the file with a YAML validator in your browser and restart the server.

Good to know: If the error is at line 1, column 1, text was often copied from a chat together with its Markdown frame. In that case, delete the lines with the three backticks at the beginning and end. List entries starting with - always begin on their own line below their key.

Saved Item or Location in a Plugin File Can't Be Read

What the message looks like:

[org.bukkit.configuration.serialization.ConfigurationSerialization] Could not call method 'public static org.bukkit.Location org.bukkit.Location.deserialize(java.util.Map)' of class org.bukkit.Location for deserialization
java.lang.IllegalArgumentException: unknown world

What's behind it: Plugins store items (kits, shop goods, menu items) and locations (homes, warps, spawn points) as data blocks in their YAML files. An item saved under an older Minecraft version sometimes can't be read in the current item format anymore ("Could not deserialize found primitive"). If Location and unknown world appear below the message, a saved location points to a world that no longer exists or hadn't been loaded yet when it was read. The server keeps running, only these entries are missing.

How to fix it:

  1. Find the affected plugin. The lines directly before and after the message usually name the plugin or its file.
  2. Create a backup, open the file under Files and remove or renew the affected item entries.
  3. Then recreate the items in-game, such as the kit or the shop item.
  4. For unknown world: delete the location or set it again using the plugin's commands. If the world still exists, make sure it's loaded.
  5. Restart the server and check the Console.

Good to know: If you deleted or renamed a world, old homes and warps point into nothing. The message only disappears once those entries are gone.

DeluxeMenus: Two Menus Use the Same Command

What the message looks like:

[DeluxeMenus] open_command specified for menu: <Menu> already exists for another menu!
Skipping menu: <Menu>

What's behind it: In DeluxeMenus, every menu can have its own command that players use to open it. It's set in the menu file under open_command. If two menu files use the same command, DeluxeMenus skips the second menu, and it can't be reached in-game. The "Skipping menu" line names the skipped menu. All other menus and the server keep running normally. The most common cause: a menu file was copied as a template and the command wasn't changed.

How to fix it:

  1. Under Files, open the folder plugins/DeluxeMenus/gui_menus.
  2. Find the file of the skipped menu and the file that uses the same open_command.
  3. Give the skipped menu its own command that's still free.
  4. Save and reload DeluxeMenus with /dm reload, with the slash in-game and without it in the Console.
  5. Open the menu with its new command as a test.

Good to know: If a menu is only opened from within another menu, it usually doesn't need its own command. In that case, you can simply leave out the open_command there.

Multiverse Can't Load a World

What the message looks like:

[Multiverse-Core] Failed to autoload world '<World>': Failure{reason=WORLD_FOLDER_INVALID}
[Multiverse-Core] Failed to import world <World>: Failure{reason=WORLD_FOLDER_INVALID}

What's behind it: Multiverse-Core remembers its worlds in plugins/Multiverse-Core/worlds.yml and loads them at startup. The message appears when a world is listed there whose folder is missing or doesn't contain a valid world (WORLD_FOLDER_INVALID), when the Nether or End are already loaded by the server itself ("already match a world that exists"), or when a world was imported but not loaded (WORLD_EXIST_UNLOADED). The affected world is then unreachable. The server and the other worlds keep running.

How to fix it:

  1. Under Files, check whether the world folder exists. A valid world contains, among other things, the file level.dat and the folder region.
  2. If the world no longer exists, remove the outdated entry with /mv remove <World>.
  3. If it exists but isn't loaded, load it with /mv load <World>.
  4. The server loads the Nether and End itself if they're enabled in server.properties or bukkit.yml. Don't additionally add them to Multiverse in that case.
  5. Restart the server.

Good to know: If the message recommends the Chunkster tool for repair, that hint dates from the old Bukkit days. Restore a backup of the world instead, see World Data Damaged, Outdated or Not Saveable.

DeluxeMenus: Menu File Is Invalid

What the message looks like:

[DeluxeMenus] Detected invalid configuration in file: <Menu>.yml
org.bukkit.configuration.InvalidConfigurationException: while scanning a simple key
 in 'reader', line <Line>, column <Column>:

What's behind it: DeluxeMenus can't process the named menu file and doesn't load that menu. Players see no interface when using the corresponding command, while all other menus keep working. The exact reason is given by the lines directly below the message, usually a YAML error with line and column. A typical cause is a missing space after the colon, i.e. hide_attributes:true instead of hide_attributes: true.

How to fix it:

  1. Read the lines below the message and note the line and column.
  2. Open the menu file under Files, usually in the folder plugins/DeluxeMenus/gui_menus.
  3. Correct the spot: one space after every colon, only spaces for indentation, and texts containing & or # in quotation marks.
  4. If no YAML error follows, check the options against the DeluxeMenus documentation, for example material names or the spelling of conditions.
  5. Reload with /dm reload and open the menu as a test.

Good to know: In YAML, a # after a space starts a comment. Without quotation marks, the rest of the line will be missing, for example with hex colors.

Plugin Can't Find an Expected File

What the message looks like:

java.io.FileNotFoundException: plugins/<Plugin>/<File> (No such file or directory)

What's behind it: The plugin wants to read a file from its folder under plugins/ that doesn't exist. On the very first start this is normal, because many plugins only create their data when they save something for the first time. If the message appears later, the file was deleted or the plugin folder was renamed. Depending on the plugin, it either recreates the file or shuts itself down.

How to fix it:

  1. Restart the server once. If the message disappears, the plugin created the file itself.
  2. Under Files, check whether the folder under plugins/ is named exactly as in the path of the message. Upper and lower case matter.
  3. If the file is still missing, restore it from a backup under Backups.
  4. If that doesn't help, reinstall the plugin.

Good to know: If the file contains player data, such as registrations or account balances, you can only get it back through a backup. A newly created file starts out empty.

Configured World Generator Isn't Installed

What the message looks like:

Could not set generator for default world '<World>': Plugin '<Plugin>' does not exist

What's behind it: A world generator is the program that creates new terrain. In bukkit.yml or in the world configuration, a generator from a plugin is set for the world, but that plugin isn't installed or wasn't loaded. The server then creates new areas with the default generator. Areas already explored stay as they are, but at the edges the terrain may continue in a mismatched way.

How to fix it:

  1. Under Files, open bukkit.yml and look for the worlds: section. Under the world name there is generator: <Plugin>.
  2. If you want to keep the generator, install the named plugin under Plugins in a suitable version.
  3. If you no longer need it, remove the generator entry.
  4. Restart the server and check in the Console whether the message has disappeared.

Good to know: The name after generator: must exactly match the plugin name. A typo leads to the same message even though the plugin is installed.

Configuration Is Newer Than the Plugin or Server Software

What the message looks like:

[Configurations] Loading a newer configuration than is supported (<File version> > <supported version>)! You may have to backup & delete your global config file to start the server.

What's behind it: The configuration was written by a newer version than the one currently running. A downgrade is typical, meaning a switch to an older plugin or Minecraft version. The first number in parentheses is the version of the file, the second is the highest one the installed program knows. Newer settings are ignored. If the message mentions the "global config file", it comes from Paper itself and usually means config/paper-global.yml.

How to fix it:

  1. Check whether you recently downgraded a plugin or, under Version, the server version.
  2. Either: update again to the version the configuration belongs to.
  3. Or: restore the configuration under Backups from a backup made at the time of the old version.
  4. If there's no suitable backup, download the file under Files, delete it and restart. A fresh file will be created, and you transfer your customizations by hand afterwards.

Good to know: How to switch versions safely is explained in Switching the Minecraft Version and Mod Loader Safely.

MinecraftWarriors3 Can't Find the Map Folder

What the message looks like:

[MinecraftWarriors3] [Offizielle Map] Quell-Ordner der Map nicht gefunden: ./plugins/MinecraftWarriors3/maps/<Map folder>

What's behind it: MinecraftWarriors3 fetches the official map from a source folder that is set in its configuration. This folder is missing. The map can therefore neither be copied nor started, and everything running on it fails. The server itself keeps running.

How to fix it:

  1. Under Files, open the path from the message. The dot at the beginning (./) stands for the server's root directory.
  2. If the folder is missing, upload the map there. The world files must lie directly in the folder, not in an additional subfolder, which often appears when extracting an archive.
  3. If the map is located elsewhere or the folder has a different name, correct the path in the configuration under plugins/MinecraftWarriors3/. Upper and lower case matter.
  4. Restart the server and check the Console.

Good to know: How to upload a world completely is shown in Uploading a Minecraft World and Switching Safely.

Plugin Can't Load a Menu, Hologram or Text File

What the message looks like:

Failed to load hologram from file '<File>'
[YamlStorage] Failed to load npc file: <File>
Could not load messages.yml!

What's behind it: A plugin couldn't read one of its files, for example a menu, a language file, a hologram or an NPC (a character controlled by the server). Usually a formatting error in the file, a duplicate name or a condition with the wrong syntax is behind it. In menu plugins, conditions are often small JavaScript expressions, in which case the message reads "Error in requirement javascript syntax". The affected part is missing in the game, the rest keeps running.

How to fix it:

  1. Read the lines below the message. They often name the line and the reason.
  2. Open the file under Files and compare it with the example from the plugin's documentation.
  3. If you can't find the error, rename the file instead of deleting it, for example to messages.yml.alt. For configuration and language files, the plugin creates a fresh one on restart.
  4. Transfer your texts and settings piece by piece from the old file and restart again.

Good to know: For files with holograms, NPCs or menus, their entries are lost with a fresh file. In that case, it's better to restore them from Backups.

Wrong Indentation or Colon: Plugin File Can't Be Read

What the message looks like:

org.bukkit.configuration.InvalidConfigurationException: mapping values are not allowed here
Caused by: while parsing a block mapping
The file plugins/<Plugin>/<File>.yml is broken, it has been renamed …

What's behind it: YAML builds its structure from indentation and colons. "mapping values are not allowed here" usually means that a value contains a colon followed by a space without the value being put in quotation marks, or that a line is indented incorrectly. "while parsing a block mapping" points to a line that is indented more or less than its neighbors. The plugin then doesn't use the file and falls back to default values or doesn't start at all. EssentialsX renames a broken file and creates a new one.

How to fix it:

  1. Open the named file under Files and go to the line from the message. Also look at the line above it.
  2. Indent only with spaces, with keys of the same level indented exactly the same amount.
  3. Put texts containing a colon in quotation marks, such as message: "Achtung: Neustart".
  4. A YAML checker in your browser shows you the error location. Then restart the server.

Good to know: If EssentialsX renamed the file, your old version is right next to it. Transfer your changes into the new file instead of copying the broken one back.

Invalid Calculation Formula in a Plugin Configuration

What the message looks like:

net.objecthunter.exp4j.tokenizer.UnknownFunctionOrVariableException: Unknown function or variable '<Expression>' …

What's behind it: Some plugins calculate values from formulas in their configuration, such as prices, rewards or cooldowns. The calculation library used for this, exp4j, only knows numbers, operators, built-in functions and the variables the plugin provides. If something else appears in the formula, for example "100t" instead of "100", the calculation aborts. The associated function of the plugin then doesn't work as intended. The server keeps running.

How to fix it:

  1. Note the expression in single quotes from the message.
  2. Find the plugin via the stack trace, the indented at lines below it. The plugin's file name usually appears there, such as <Plugin>.jar//.
  3. Search for the expression in this plugin's configuration files. With many files, it helps to download the folder via SFTP and search it on your own computer.
  4. Replace it with a number or a valid formula. Which variables are allowed is stated in the plugin's documentation.
  5. Reload the plugin or restart the server.

Good to know: You set up SFTP access like this: Editing Server Files in the Panel and Connecting via SFTP.

FancyNpcs: NPC Action with an Empty Random Range

What the message looks like:

Exception in thread "FancyNpcs-ActionExecutor" java.lang.IllegalArgumentException: bound must be positive

What's behind it: An action of an NPC from FancyNpcs is supposed to pick something at random, for example one of several follow-up actions. If the selection is empty or the number range is negative, no random number can be generated, and the action aborts. Players notice this because nothing or only part of it happens when clicking the NPC. The server and the other NPCs keep running.

How to fix it:

  1. Update FancyNpcs to the current version for your server version.
  2. Check the actions of the affected NPC. Every random selection needs at least one entry, and number limits must be positive.
  3. The NPC data is located under Files in the folder plugins/FancyNpcs. Create a backup before making changes and edit the files only while the server is stopped.
  4. Start the server and click the NPC as a test.

Good to know: The message doesn't name the NPC. If you have several NPCs with random actions, test them one after another while watching the Console.

Text with Old Color Codes in a MiniMessage Field

What the message looks like:

Legacy formatting codes have been detected in a MiniMessage string …

What's behind it: MiniMessage is a notation for text formatting using tags in angle brackets, such as <red> or <bold>. Many current plugins use it for chat, titles and menus. MiniMessage doesn't understand old color codes with & or §. If such a code is in a text, it appears incorrectly formatted or not at all. The server keeps running.

How to fix it:

  1. Find the plugin. The line before the message or the stack trace below it usually names it.
  2. Under Files, open its configuration or language file and replace the old codes with tags:
    • &c becomes <red>, &a becomes <green>, &e becomes <yellow>
    • &l becomes <bold>, &o becomes <italic>, &r becomes <reset>
    • &#37FF00 or §x§3§7… becomes <#37FF00>
  3. If the plugin offers a legacy mode for old codes in its settings, you can enable that instead.
  4. Reload the plugin or restart the server and check the text in-game.

Good to know: Never mix both notations in one text. A single leftover & is enough to trigger the message.

Paxel: Value for a Tool Tier Is Missing

What the message looks like:

[Paxel] Setting "<Setting>" for tier "<Level>" is not defined in the config!

What's behind it: A paxel is a tool that combines pickaxe, axe and shovel. The Paxel plugin offers it in several tiers, and each tier needs certain required values in the configuration. One of them is missing for the named tier. This paxel then can't be crafted or given out. This often happens after an update, when the new version expects a setting that is still missing in the old file.

How to fix it:

  1. Under Files, open the configuration in the folder plugins/Paxel.
  2. Find the tier from the message and add the named setting. A complete tier in the same file serves as a template.
  3. Alternatively, rename the file and restart. The plugin then writes the default configuration of the current version, and you transfer your customizations.
  4. Restart the server and check the Console.

Good to know: When adding it, use the same indentation as the other values of the tier, otherwise a YAML error will follow.

Invalid Permission in a Plugin's plugin.yml

What the message looks like:

Permission node '<Plugin>.<Permission>' in plugin description file for <Plugin> v<Version> is invalid

What's behind it: Every plugin describes the permissions it brings along in its plugin.yml, a file inside the plugin JAR. One of these descriptions couldn't be loaded. The name given can be entirely correct. Often a property of the description is missing or incorrectly formatted. Usually the plugin starts anyway, but this permission isn't created with its default values.

How to fix it:

  1. Read in the message which plugin is affected.
  2. Update it to a build that matches your server version. Replace the JAR while the server is stopped.
  3. If it's your own plugin, check the entire permissions block of the plugin.yml against the Bukkit format, not just the name. Each entry is a section with properties such as description, default (true, false, op or not op) and children.
  4. Restart the server.

Good to know: If you assign permissions yourself anyway with a permissions plugin such as LuckPerms, the message usually has little effect on your players.

SuntexSocial: SOCKS5 Proxy Without an Address

What the message looks like:

[SuntexSocial] … SOCKS5 proxy is enabled, but telegram.proxy.host is empty

What's behind it: SuntexSocial connects your server to a Telegram bot. The configuration specifies that the bot goes online through a SOCKS5 proxy. A proxy is an intermediary server through which the connection runs. However, the address of this proxy (telegram.proxy.host) is empty. The Telegram bot therefore doesn't start, while the Minecraft server keeps running normally.

How to fix it:

  1. Under Files, open the configuration in the folder plugins/SuntexSocial.
  2. If you need the proxy, enter the hostname under telegram and proxy at host, along with the matching port. You get both from your proxy provider.
  3. If you don't need a proxy, turn off the SOCKS5 proxy in the same configuration.
  4. Restart the server and check whether the bot responds.

Good to know: A proxy is only necessary if Telegram can't be reached directly from the server's network. Without that reason, leave it turned off.

World Generator Plugin Starts Too Late

What the message looks like:

Could not set generator for default world '<World>': Plugin '<Plugin>' is not enabled yet

What's behind it: A generator from a plugin is set for the main world, but the plugin only starts after the server has loaded the worlds. The world then uses the default generator, so new areas look different than planned. Nothing changes for areas that have already been generated. The server runs normally.

How to fix it:

  1. Check the generator plugin's documentation for how to set it up for the main world.
  2. Usually the generator belongs in bukkit.yml under worlds: at the name of the main world.
  3. The plugin must load at server startup, that is, before the worlds. The developer defines this in the plugin.yml with load: STARTUP. If the message still appears, check whether the installed version matches your server version.
  4. Restart the server and check the Console.

Good to know: Areas that were already created with the default generator stay that way. If you want the whole world to be created with the new generator, you need a new world. Back up the old one first under Backups.

LuckPerms Can't Read the Import File

What the message looks like:

[LuckPerms] Error whilst reading from the import file

What's behind it: With the import, LuckPerms takes over groups, permissions and player data from a file previously created with the export, for example when moving from another server. LuckPerms couldn't read the chosen file or couldn't process its format. The import aborts. The server keeps running.

How to fix it:

  1. Under Files, check whether the file is in the folder plugins/LuckPerms and whether its name matches the one in the command exactly.
  2. Upload the file unchanged, just as the export created it, meaning not extracted, renamed or edited.
  3. Read the error message directly below this line. It names the exact spot where reading failed.
  4. Then start the import again with /lp import <File>.

Good to know: How to build and check groups and permissions in LuckPerms is shown in Setting Up LuckPerms: Permissions and Groups.

Paper Setting Contains an Unknown Value

What the message looks like:

Encountered an unexpected exception
org.spongepowered.configurate.serialize.SerializationException: [<Setting path>] <unknown value> …

What's behind it: Paper reads its settings from config/paper-global.yml, config/paper-world-defaults.yml and, per world, from the paper-world.yml in the world folder. One of these files contains a value that your server version doesn't know, for example an item or a data component that only exists in a newer version or was renamed. The setting isn't applied. This is typical after switching to an older version or when files were copied from another server.

How to fix it:

  1. Read the message: in square brackets is the path of the setting, i.e. the keys from outside to inside, followed by the unknown value.
  2. Open the matching file under Files in the config folder or in the world folder and follow the path.
  3. Correct the value to a name your version knows, or remove it.
  4. Restart the server.

Good to know: If you remove an entire setting, Paper writes the default value back in at the next start.

BMenu: menu identifier is already taken (key already exists)

What the message looks like:

[BMenu] key already exists <Namespace>:<Menu>

What's behind it: BMenu manages menus using unique identifiers. If an identifier is registered again, the plugin discards the new entry and keeps the existing one. Changes in the second menu definition may therefore be missing, or a different menu may appear than expected. The server keeps running.

How to fix it:

  1. Create a backup of your settings under Backups before editing menu files.
  2. Read the complete identifier in the Console. Under Files, compare the identifiers in your BMenu menu definitions and check imported menus for duplicates too.
  3. Remove an unnecessary copy or give the second menu a unique identifier. Update references to an identifier if you change it.
  4. Fully restart the server and test the affected menus. If the message persists despite unique definitions, report the sequence of events to the BMenu author with the complete startup log.

Good to know: Registration order determines which entry is retained. Avoid relying on a particular file order.

Your message isn't listed?

Read the entire message in the Console or in logs/latest.log, including the lines right before it. Often it says which plugin is currently loading its files. In the stack trace below, you can recognize the plugin by the JAR file name or by the plugins/<Plugin>/ folder in the path. If the message names a file with a line and column, it's almost always a formatting error like those in the sections above. Create a backup before every change. If you get stuck, open a ticket and include the time of the message.