Плагины чаще всего хранят свои настройки в YAML-файлах в папке plugins/<Плагин>/. YAML — это текстовый формат, структура которого строится на отступах из пробелов. Достаточно одного символа табуляции или пропущенной кавычки, чтобы плагин перестал читать файл. Каждый раздел ниже посвящён одному сообщению. Если ты попал сюда по ссылке «Узнать больше» из раздела Состояние сервера, ты уже в нужном месте.
Полный текст сообщения ты найдёшь в Консоль или в разделе Файлы в logs/latest.log. Почти всегда в нём указан файл, а часто также строка и столбец. Ниже нередко идёт stacktrace — список строк с отступом, начинающихся с at, который показывает, в каком месте программы возникла ошибка. Перед любым изменением файлов конфигурации или мира создай резервную копию в разделе Резервные копии. Лучше всего редактировать файлы при остановленном сервере, так как некоторые плагины перезаписывают свою конфигурацию при завершении работы.
Синтаксическая ошибка YAML в файле плагина
Как выглядит сообщение:
Cannot load plugins/<Plugin>/<File>.yml
Cannot load configuration from stream
org.bukkit.configuration.InvalidConfigurationException: while parsing a block mapping
В чём причина: Плагин не может прочитать свою конфигурацию YAML. YAML — это текстовый формат, структура которого зависит от отступов. Сообщения while parsing a block mapping и expected <block end> указывают на неверную структуру; sequence entries are not allowed here — на элемент списка в неположенном месте. В зависимости от плагина не работают отдельные настройки или весь плагин целиком.
Как это исправить:
- Открой в разделе Файлы указанный файл. Если в сообщении
Cannot load configuration from stream, поищи в окружающих строках лога нужный плагин и его конфигурацию, а не угадывай имя файла. - Проверь указанную строку и предшествующие ей записи.
lineиcolumnпоказывают строку и столбец; причина может находиться выше. - Замени табуляции в отступах на пробелы. Записи одного уровня должны иметь одинаковый отступ. Если под ключом находится список, каждый элемент, начинающийся с
-, должен стоять на отдельной строке. - Заключи текстовые значения, начинающиеся со специальных символов, например
&,{или обратного апострофа, в кавычки и корректно закрой все кавычки. Удали случайно скопированные markdown-рамки из трёх обратных апострофов. - Проверь исправленный файл с помощью YAML-валидатора и перезапусти сервер. Удали секретные значения, прежде чем передавать файл в онлайн-проверку.
Сохранённый предмет или сохранённая точка в файле плагина не читается
Так выглядит сообщение:
[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
В чём причина: Плагины хранят предметы (наборы, товары магазина, предметы меню) и места (дома, варпы, точки спавна) в виде блоков данных в своих YAML-файлах. Предмет, сохранённый в более старой версии Minecraft, иногда нельзя прочитать в актуальном формате предметов («Could not deserialize found primitive»). Если под сообщением указаны Location и unknown world, сохранённое место указывает на мир, которого больше нет или который не был загружен на момент чтения. Сервер продолжает работать, пропадают только эти записи.
Как это исправить:
- Найди затронутый плагин. Строки непосредственно до и после сообщения обычно называют плагин или его файл.
- Создай резервную копию, открой файл в разделе Файлы и удали или обнови проблемные записи предметов.
- После этого создай предметы в игре заново, например набор или товар магазина.
- При
unknown world: удали место или задай его заново командами плагина. Если мир ещё существует, убедись, что он загружен. - Перезапусти сервер и проверь Консоль.
Полезно знать: Если ты удалил или переименовал мир, старые дома и варпы ведут в пустоту. Сообщение исчезнет только после удаления этих записей.
DeluxeMenus: два меню используют одну и ту же команду
Так выглядит сообщение:
[DeluxeMenus] open_command specified for menu: <Menu> already exists for another menu!
Skipping menu: <Menu>
В чём причина: В DeluxeMenus у каждого меню может быть собственная команда, которой игроки его открывают. Она указана в файле меню в параметре open_command. Если в двух файлах меню указана одна и та же команда, DeluxeMenus пропускает второе меню, и в игре оно недоступно. Строка «Skipping menu» называет пропущенное меню. Все остальные меню и сервер работают в обычном режиме. Самая частая причина: файл меню скопировали как шаблон и не изменили команду.
Как это исправить:
- Открой в разделе Файлы папку
plugins/DeluxeMenus/gui_menus. - Найди файл пропущенного меню и файл, в котором используется тот же
open_command. - Задай пропущенному меню собственную, ещё не занятую команду.
- Сохрани и перезагрузи DeluxeMenus командой
/dm reload: в игре со слэшем, в Консоли без него. - Для проверки открой меню новой командой.
Полезно знать: Если меню открывается только из другого меню, собственная команда ему обычно не нужна. Тогда open_command можно просто не указывать.
„Failed to autoload world …“: Multiverse не загружает мир
Так выглядит сообщение:
[Multiverse-Core] Failed to autoload world '<World>': Failure{reason=WORLD_FOLDER_INVALID}
[Multiverse-Core] Failed to import world <World>: Failure{reason=WORLD_FOLDER_INVALID}
[Multiverse-Core] Failed to autoload world '<World>': Failure{reason=BUKKIT_NAMESPACED_KEY_MISMATCH}: Namespace mismatch detected! …
В чём причина: Multiverse-Core управляет мирами в файле plugins/Multiverse-Core/worlds.yml; если нет корректной папки мира, плагин не может загрузить этот мир. При BUKKIT_NAMESPACED_KEY_MISMATCH мир уже загружен, но под другим внутренним идентификатором, чем ожидает Multiverse. Проблемы с загрузкой также вызывают дважды добавленные миры Незера/Энда или импортированные, но не загруженные миры (WORLD_EXIST_UNLOADED); сервер и другие миры при этом продолжают работать.
Как это исправить:
- При
WORLD_FOLDER_INVALIDпроверь в разделе Файлы, полная ли папка мира и соответствует ли она структуре папок твоего серверного ПО. Восстанови недостающие данные из резервной копии. - Если мира больше нет, удали устаревшую запись командой
/mv remove <World>. - Если мир существует, но не загружен, используй
/mv load <World>. - При
BUKKIT_NAMESPACED_KEY_MISMATCHсравни два идентификатора в сообщении. Приведи соответствие в Multiverse в порядок по инструкции для твоей версии сервера. - Не добавляй Незер и Энд отдельно, если сервер загружает их через
server.propertiesилиbukkit.yml. - Перезапусти сервер и проверь Консоль.
Полезно знать: Старые советы про Chunkster замени восстановлением из резервных копий; см. Данные мира повреждены, устарели или не сохраняются.
DeluxeMenus: файл меню недействителен
Так выглядит сообщение:
[DeluxeMenus] Detected invalid configuration in file: <Menu>.yml
org.bukkit.configuration.InvalidConfigurationException: while scanning a simple key
in 'reader', line <Line>, column <Column>:
В чём причина: DeluxeMenus не может обработать указанный файл меню и не загружает это меню. Игроки при вводе соответствующей команды не увидят интерфейса, все остальные меню продолжают работать. Точную причину называют строки непосредственно под сообщением, чаще всего это ошибка YAML со строкой и столбцом. Типичный случай: нет пробела после двоеточия, то есть hide_attributes:true вместо hide_attributes: true.
Как это исправить:
- Прочитай строки под сообщением и запиши строку и столбец.
- Открой файл меню в разделе Файлы, обычно он находится в папке
plugins/DeluxeMenus/gui_menus. - Исправь это место: пробел после каждого двоеточия, для отступов только пробелы, тексты с
&или#в кавычках. - Если ошибки YAML нет, сверь параметры с руководством DeluxeMenus, например названия материалов или написание условий.
- Перезагрузи командой
/dm reloadи открой меню для проверки.
Полезно знать: # после пробела начинает в YAML комментарий. Без кавычек остаток строки пропадает, например в случае hex-цветов.
„FileNotFoundException“: файл плагина отсутствует или его не удаётся создать
Так выглядит сообщение:
java.io.FileNotFoundException: plugins/DigitalClockRemastered/terrainbackups/<Файл> (No such file or directory)
java.io.FileNotFoundException: plugins/AuctionHouse/auctions.dat (No such file or directory)
java.io.FileNotFoundException: plugins/MagicSpells/spellbooks/<Файл> (No such file or directory)
В чём причина: плагин не может прочитать или создать нужный файл в папке plugins/. Причиной может быть удалённый файл либо отсутствующая или переименованная вложенная папка; при первом запуске некоторых файлов данных ещё нет. FileOutputStream или FileWriter в стеке вызовов под ошибкой указывают на попытку записи, которая тоже завершается неудачей, если отсутствует родительская папка. В зависимости от плагина файл будет создан позже, часть функций перестанет работать или плагин отключится.
Как это исправить:
- Один раз перезапусти сервер и проверь, появляется ли сообщение снова.
- Проверь во вкладке Файлы весь путь, включая вложенные папки. Названия должны совпадать с сообщением, включая регистр букв.
- Если папки с данными или файлы по-прежнему отсутствуют, останови сервер и восстанови их из резервной копии во вкладке Резервные копии.
- Если это не помогло, сохрани папку плагина и установи плагин заново согласно его инструкции.
Полезно знать: заново созданный файл начинает работу с пустыми данными или значениями по умолчанию. Потерянные данные игроков можно вернуть из подходящей резервной копии.
Указанный генератор мира не установлен
Как выглядит сообщение:
Could not set generator for default world '<Мир>': Plugin '<Плагин>' does not exist
В чём причина: Генератор мира — это программа, которая создаёт новый ландшафт. В bukkit.yml или в конфигурации мира для этого мира указан генератор из плагина, но этот плагин не установлен или не был загружен. Тогда сервер создаёт новые области с помощью обычного генератора. Уже исследованные участки остаются как есть, но на границах ландшафт может продолжаться неподходящим образом.
Как это исправить:
- Открой в разделе Файлы файл
bukkit.ymlи найди разделworlds:. Под названием мира там указаноgenerator: <Плагин>. - Если хочешь сохранить генератор, установи указанный плагин в разделе Плагины в подходящей версии.
- Если он тебе больше не нужен, удали запись
generator. - Перезапусти сервер и проверь в Консоль, исчезло ли сообщение.
Полезно знать: Название после generator: должно точно совпадать с названием плагина. Опечатка приводит к тому же сообщению, даже если плагин установлен.
Конфигурация новее, чем плагин или серверное ПО
Как выглядит сообщение:
Warning: This command deletes or removes game content. Create a backup first and check the command’s target.
[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.
В чём причина: Конфигурация была записана более новой версией, чем та, которая запущена сейчас. Обычно это происходит при понижении версии, то есть при переходе на более старую версию плагина или Minecraft. Первое число в скобках — версия файла, второе — самая высокая версия, которую знает установленная программа. Более новые настройки игнорируются. Если в сообщении упоминается «global config file», оно исходит от самого Paper и обычно относится к config/paper-global.yml.
Как это исправить:
- Проверь, не понижал ли ты недавно версию плагина или версию сервера в разделе Версия.
- Либо: снова обнови до версии, которой соответствует конфигурация.
- Либо: восстанови конфигурацию в разделе Резервные копии из резервной копии, созданной на момент старой версии.
- Если подходящей резервной копии нет, скачай файл в разделе Файлы, удали его и перезапусти сервер. Будет создан новый файл, а свои настройки ты затем перенесёшь вручную.
Полезно знать: О том, как безопасно сменить версию, написано в Безопасная смена версии Minecraft и загрузчика модов.
MinecraftWarriors3 не находит папку с картой
Как выглядит сообщение:
[MinecraftWarriors3] [Offizielle Map] Quell-Ordner der Map nicht gefunden: ./plugins/MinecraftWarriors3/maps/<Map folder>
В чём причина: MinecraftWarriors3 берёт официальную карту из исходной папки, указанной в его конфигурации. Эта папка отсутствует. Поэтому карту нельзя ни скопировать, ни запустить, и всё, что на ней работает, не функционирует. Сам сервер продолжает работать.
Как это исправить:
- Открой в разделе Файлы путь из сообщения. Точка в начале (
./) обозначает главный каталог сервера. - Если папки нет, загрузи туда карту. Файлы мира должны лежать прямо в папке, а не в дополнительной вложенной папке, которая часто появляется при распаковке архива.
- Если карта находится в другом месте или папка называется иначе, исправь путь в конфигурации в
plugins/MinecraftWarriors3/. Регистр букв важен. - Перезапусти сервер и проверь Консоль.
Полезно знать: О том, как полностью загрузить мир, рассказано в Загрузка мира Minecraft и его безопасная смена.
Плагин не может загрузить меню, голограмму или текстовый файл
Как выглядит сообщение:
Failed to load hologram from file '<Файл>'
[YamlStorage] Failed to load npc file: <Файл>
Could not load messages.yml!
В чём причина: Плагин не смог прочитать один из своих файлов, например меню, языковой файл, голограмму или NPC (персонажа, которым управляет сервер). Обычно причина в ошибке форматирования файла, повторяющемся названии или условии с неверным написанием. В плагинах меню условия часто представляют собой небольшие выражения JavaScript, и тогда сообщение звучит как «Error in requirement javascript syntax». Затронутая часть в игре отсутствует, остальное работает.
Как это исправить:
- Прочитай строки под сообщением. В них часто указаны строка и причина.
- Открой файл в разделе Файлы и сравни его с примером из руководства к плагину.
- Если не можешь найти ошибку, переименуй файл вместо удаления, например в
messages.yml.alt. Для файлов конфигурации и языковых файлов плагин создаст новый при перезапуске. - Постепенно перенеси свои тексты и настройки из старого файла и снова перезапусти сервер.
Полезно знать: В файлах с голограммами, NPC или меню при создании нового файла их записи теряются. В таком случае лучше восстановить их из раздела Резервные копии.
Неверный отступ или двоеточие: файл плагина не читается
Как выглядит сообщение:
org.bukkit.configuration.InvalidConfigurationException: mapping values are not allowed here
Caused by: while parsing a block mapping
The file plugins/<Плагин>/<Файл>.yml is broken, it has been renamed …
В чём причина: YAML строит свою структуру из отступов и двоеточий. «mapping values are not allowed here» обычно означает, что в значении стоит двоеточие с последующим пробелом, а само значение не заключено в кавычки, либо что строка имеет неверный отступ. «while parsing a block mapping» указывает на строку, отступ которой больше или меньше, чем у соседних. Тогда плагин не использует файл и переходит на значения по умолчанию или вообще не запускается. EssentialsX переименовывает повреждённый файл и создаёт новый.
Как это исправить:
- Открой указанный файл в разделе Файлы и перейди к строке из сообщения. Посмотри также на строку выше.
- Делай отступы только пробелами, ключи одного уровня — с абсолютно одинаковым отступом.
- Тексты с двоеточием заключай в кавычки, например
message: "Achtung: Neustart". - Проверка YAML в браузере покажет тебе место ошибки. После этого перезапусти сервер.
Полезно знать: Если EssentialsX переименовал файл, твоя старая версия лежит рядом. Перенеси свои изменения в новый файл, вместо того чтобы копировать обратно повреждённый.
Недопустимая формула в конфигурации плагина
Как выглядит сообщение:
net.objecthunter.exp4j.tokenizer.UnknownFunctionOrVariableException: Unknown function or variable '<Выражение>' …
В чём причина: Некоторые плагины вычисляют значения по формулам в своей конфигурации, например цены, награды или время перезарядки. Используемая для этого математическая библиотека exp4j знает только числа, знаки операций, встроенные функции и переменные, которые предоставляет плагин. Если в формуле стоит что-то другое, например «100t» вместо «100», вычисление прерывается. Соответствующая функция плагина тогда работает не так, как задумано. Сервер продолжает работать.
Как это исправить:
- Запиши выражение в одинарных кавычках из сообщения.
- Найди плагин по стектрейсу, то есть по строкам
atс отступом под сообщением. Там обычно указано имя файла плагина, например<Плагин>.jar//. - Найди выражение в файлах конфигурации этого плагина. Если файлов много, поможет скачать папку по SFTP и выполнить поиск на своём компьютере.
- Замени его на число или допустимую формулу. Какие переменные разрешены, указано в руководстве к плагину.
- Перезагрузи плагин или перезапусти сервер.
Полезно знать: Как настроить доступ по SFTP, описано здесь: Редактирование файлов сервера в панели и подключение по SFTP.
FancyNpcs: действие NPC с пустым диапазоном случайного выбора
Как выглядит сообщение:
Exception in thread "FancyNpcs-ActionExecutor" java.lang.IllegalArgumentException: bound must be positive
В чём причина: Действие NPC из FancyNpcs должно случайным образом что-то выбрать, например одно из нескольких следующих действий. Если выбор пуст или числовой диапазон отрицательный, случайное число получить нельзя, и действие прерывается. Игроки замечают это по тому, что при клике на NPC ничего не происходит или выполняется только часть действий. Сервер и остальные NPC продолжают работать.
Как это исправить:
- Обнови FancyNpcs до актуальной версии для твоей версии сервера.
- Проверь действия затронутого NPC. В каждом случайном выборе должна быть минимум одна запись, а границы чисел должны быть положительными.
- Данные NPC лежат во вкладке Файлы в папке
plugins/FancyNpcs. Перед изменением создай резервную копию и редактируй файлы только при остановленном сервере. - Запусти сервер и кликни на NPC для проверки.
Полезно знать: В сообщении не указано, о каком именно NPC речь. Если у тебя несколько NPC со случайными действиями, проверяй их по очереди и следи за Консоль.
Текст со старыми цветовыми кодами в поле MiniMessage
Как выглядит сообщение:
Legacy formatting codes have been detected in a MiniMessage string …
В чём причина: MiniMessage — это способ форматирования текста с помощью тегов в угловых скобках, например <red> или <bold>. Многие современные плагины используют его для чата, заголовков и меню. Старые цветовые коды с & или § MiniMessage не понимает. Если такой код попал в текст, он отображается неправильно или не отображается вовсе. Сервер продолжает работать.
Как это исправить:
- Найди плагин. Обычно его название указано в строке перед сообщением или в стектрейсе под ним.
- Открой во вкладке Файлы его файл конфигурации или языковой файл и замени старые коды на теги:
&cменяется на<red>,&aна<green>,&eна<yellow>&lменяется на<bold>,&oна<italic>,&rна<reset>%FF00или§x§3§7…меняется на<#37FF00>
- Если в настройках плагина есть legacy-режим для старых кодов, можешь вместо этого включить его.
- Перезагрузи плагин или перезапусти сервер и проверь текст в игре.
Полезно знать: Никогда не смешивай оба способа записи в одном тексте. Даже одного оставшегося & достаточно для появления этого сообщения.
Paxel: отсутствует значение для уровня инструмента
Как выглядит сообщение:
[Paxel] Setting "<Setting>" for tier "<Level>" is not defined in the config!
В чём причина: Paxel — это инструмент, объединяющий кирку, топор и лопату. Плагин Paxel предлагает его в нескольких уровнях, и для каждого уровня в конфигурации нужны определённые обязательные значения. Для указанного уровня одного из них не хватает. Такой Paxel нельзя создать или выдать. Часто это случается после обновления, когда новая версия ожидает настройку, которой в старом файле ещё нет.
Как это исправить:
- Открой во вкладке Файлы конфигурацию в папке
plugins/Paxel. - Найди уровень из сообщения и добавь указанную настройку. В качестве образца используй полностью заполненный уровень из того же файла.
- Как вариант, переименуй файл и перезапусти сервер. Плагин создаст стандартную конфигурацию текущей версии, а ты перенесёшь свои изменения.
- Перезапусти сервер и проверь Консоль.
Полезно знать: При добавлении соблюдай тот же отступ, что и у остальных значений уровня, иначе возникнет ошибка YAML.
Недопустимое право в plugin.yml плагина
Как выглядит сообщение:
Permission node '<Plugin>.<Permission>' in plugin description file for <Plugin> v<Version> is invalid
В чём причина: Каждый плагин описывает в своём файле plugin.yml (он находится внутри JAR плагина) права, которые он предоставляет. Одно из этих описаний не удалось загрузить. При этом указанное имя может быть совершенно правильным. Часто не хватает какого-то свойства описания или оно неправильно оформлено. Обычно плагин всё равно запускается, но это право не создаётся со своими стандартными значениями.
Как это исправить:
- Посмотри в сообщении, какой плагин затронут.
- Обнови его до сборки, подходящей для твоей версии сервера. Заменяй JAR только при остановленном сервере.
- Если это твой собственный плагин, проверь весь блок
permissionsвplugin.ymlна соответствие формату Bukkit, а не только имя. Каждая запись — это раздел со свойствами вродеdescription,default(true, false, op или not op) иchildren. - Перезапусти сервер.
Полезно знать: Если ты и так выдаёшь права сам через плагин для прав, например LuckPerms, это сообщение обычно почти не влияет на твоих игроков.
SuntexSocial: SOCKS5-прокси без адреса
Как выглядит сообщение:
[SuntexSocial] … SOCKS5 proxy is enabled, but telegram.proxy.host is empty
В чём причина: SuntexSocial связывает твой сервер с Telegram-ботом. В конфигурации указано, что бот выходит в интернет через SOCKS5-прокси. Прокси — это промежуточный сервер, через который идёт соединение. Адрес этого прокси (telegram.proxy.host) при этом пуст. Из-за этого Telegram-бот не запускается, а сервер Minecraft продолжает работать в обычном режиме.
Как это исправить:
- Открой во вкладке Файлы конфигурацию в папке
plugins/SuntexSocial. - Если прокси тебе нужен, впиши в разделе
telegramиproxyв полеhostимя хоста и соответствующий порт. Оба значения можно получить у поставщика прокси. - Если прокси не нужен, отключи SOCKS5-прокси в той же конфигурации.
- Перезапусти сервер и проверь, отвечает ли бот.
Полезно знать: Прокси нужен, только если Telegram недоступен напрямую из сети сервера. Без такой причины оставь его выключенным.
Плагин генератора мира запускается слишком поздно
Как выглядит сообщение:
Could not set generator for default world '<World>': Plugin '<Plugin>' is not enabled yet
В чём причина: Для основного мира задан генератор из плагина, но плагин запускается только после того, как сервер загрузил миры. Тогда мир использует обычный генератор, и новые территории выглядят не так, как задумано. Уже созданные территории не меняются. Сервер работает в обычном режиме.
Как это исправить:
- Прочитай в инструкции плагина-генератора, как настроить его для основного мира.
- Обычно генератор указывается в
bukkit.ymlв разделеworlds:у имени основного мира. - Плагин должен загружаться при старте сервера, то есть до миров. Это задаёт разработчик в
plugin.ymlчерезload: STARTUP. Если сообщение всё равно появляется, проверь, подходит ли установленная версия к твоей версии сервера. - Перезапусти сервер и проверь Консоль.
Полезно знать: Территории, уже созданные обычным генератором, останутся прежними. Если хочешь, чтобы весь мир был создан новым генератором, понадобится новый мир. Заранее сохрани старый во вкладке Резервные копии.
LuckPerms не может прочитать файл импорта
Так выглядит сообщение:
[LuckPerms] Error whilst reading from the import file
В чём причина: При импорте LuckPerms переносит группы, права и данные игроков из файла, который ранее был создан экспортом, например при переезде с другого сервера. LuckPerms не смог прочитать выбранный файл или обработать его формат. Импорт прерывается. Сервер продолжает работать.
Как это исправить:
- Во вкладке Файлы проверь, что файл лежит в папке
plugins/LuckPermsи его имя точно совпадает с тем, что указано в команде. - Загрузи файл без изменений, в том виде, в котором его создал экспорт, то есть не распаковывай, не переименовывай и не редактируй его.
- Прочитай сообщение об ошибке прямо под этой строкой. В нём указано точное место, где чтение завершилось неудачей.
- После этого снова запусти импорт командой
/lp import <File>.
Полезно знать: О том, как настроить и проверить группы и права в LuckPerms, рассказывает Настройка LuckPerms: права и группы.
В настройках Paper указано неизвестное значение
Так выглядит сообщение:
Encountered an unexpected exception
org.spongepowered.configurate.serialize.SerializationException: [<Setting path>] <unknown value> …
В чём причина: Paper читает свои настройки из config/paper-global.yml, config/paper-world-defaults.yml и для каждого мира из paper-world.yml в папке мира. В одном из этих файлов указано значение, которое твоя версия сервера не знает, например предмет или компонент данных, который появился только в более новой версии или был переименован. Настройка не применяется. Обычно это случается после перехода на более старую версию или при копировании файлов с другого сервера.
Как это исправить:
- Прочитай сообщение: в квадратных скобках указан путь настройки, то есть ключи снаружи внутрь, а после него идёт неизвестное значение.
- Открой нужный файл во вкладке Файлы в папке
configили в папке мира и пройди по этому пути. - Исправь значение на имя, которое знает твоя версия, или удали его.
- Перезапусти сервер.
Полезно знать: Если удалить настройку целиком, Paper при следующем запуске снова запишет значение по умолчанию.
BMenu: идентификатор меню уже занят («key already exists»)
Как выглядит сообщение:
[BMenu] key already exists <Namespace>:<Menu>
В чём причина: BMenu управляет меню через уникальные идентификаторы. Если уже занятый идентификатор регистрируется повторно, плагин отбрасывает новую запись и оставляет существующую. Из-за этого изменения во втором определении меню могут не применяться, или может отображаться не то меню, которое ты ожидаешь. Сервер продолжает работать.
Как это исправить:
- Прежде чем редактировать файлы меню, создай в разделе Резервные копии копию своих настроек.
- Прочитай полный идентификатор в Консоль. В разделе Файлы сравни идентификаторы определений меню BMenu и проверь также импортированные меню на наличие дублирующихся определений.
- Удали лишнюю копию или задай второму меню уникальный идентификатор. Также обнови все ссылки на изменённый идентификатор.
- Полностью перезапусти сервер и проверь затронутые меню. Если сообщение остаётся, несмотря на уникальные определения, сообщи автору BMenu о проблеме и приложи полный лог запуска.
Полезно знать: Порядок регистрации определяет, какая запись сохранится. Поэтому не полагайся на определённый порядок файлов.
SCore: база данных голов отклоняет идентификатор головы
Как выглядит сообщение:
[SCore] Error when creating the Head: <Head value> invalid head database id ! (<Head value>)
В чём причина: SCore должен создать пользовательскую голову, но не может определить указанное значение через базу данных голов. Идентификатор базы данных указывает на хранящуюся в ней голову, а значение текстуры, напротив, описывает её внешний вид. Нужная голова отсутствует, при этом сервер продолжает работать.
Как это исправить:
- Проверь в Консоль, какой плагин SCore сейчас загружает эту голову. Открой его описание головы в разделе Файлы.
- Сравни указанный формат с инструкцией этого плагина. Используй корректный идентификатор головы; значение текстуры вноси только в поле, предусмотренное для этого в документации.
- Если подключена база данных голов, проверь её сообщения при запуске и дождись, пока она полностью загрузится. После этого снова протестируй голову.
- После исправления перезапусти сервер и проверь затронутое отображение или предмет.
Multiverse: имя основного мира конфликтует с другим миром
Как выглядит сообщение:
[Multiverse-Core] Unable to migrate default world's name caused by level-name change.
[Multiverse-Core] We have detected a clash between the default name '<World>' and an existing non-default world in your worlds.yml file.
[Multiverse-Core] Please change the level-name in server.properties to something else and restart the server.
В чём причина: После изменения level-name Multiverse должен принять новое имя основного мира. Однако это имя уже занято другим миром в его конфигурации миров. Поэтому перенос прерывается, и привязку основного мира нужно исправить.
Как это исправить:
- Создай резервную копию в разделе Резервные копии и останови сервер перед внесением изменений.
- В разделе Файлы сравни запись
level-nameвserver.propertiesс файлом Multiverseworlds.yml. Определи, какой из существующих миров на самом деле должен быть основным. - Если изменение было непреднамеренным, верни прежнее имя этого основного мира. Для запланированного переименования сначала устрани конфликт по инструкции Multiverse.
- Запусти сервер и проверь в Консоль, удалась ли привязка. Затем убедись, что попадаешь в нужный мир.
UltimateDonutSmp: команда награды из кейса завершается ошибкой
Как выглядит сообщение:
[UltimateDonutSmp] Failed to grant crate reward <Reward> from crate <Crate> to <Player>
org.bukkit.command.CommandException: Unhandled exception executing <Command>
В чём причина: Для награды из кейса UltimateDonutSmp выполняет команду. Эта команда завершается ошибкой, поэтому соответствующее действие выдачи награды не срабатывает. Сервер продолжает работать; конфигурация кейса и полная трассировка ошибки покажут, какая именно команда затронута.
Как это исправить:
- Открой полное сообщение в Консоль или в разделе Файлы в
logs/latest.log. Прочитай также следующие строки с причинами. - Проверь в разделе Файлы команду награды затронутого кейса. Сравни её написание и плейсхолдеры игрока с инструкцией для твоей версии UltimateDonutSmp.
- Обнови плагин в разделе Плагины до подходящей версии и перезапусти сервер после исправления.
- Проверь награду в контролируемых условиях. Перед повторной выдачей убедись, не были ли какие-то части уже выплачены или выданы, чтобы ничего не раздать дважды.
Безопасная настройка дашборда NovaSync и замена стандартных учётных данных
Так выглядит сообщение:
[NovaSyncPlugin] [CRITICAL] dashboard.creds: no OWNER account configured AND defaults still in vault
Что за этим стоит: В дашборде NovaSync отсутствует учётная запись владельца, то есть аккаунт для управления дашбордом. При этом в хранилище учётных данных плагина всё ещё лежат стандартные учётные данные. Безопасная первоначальная настройка, таким образом, не завершена, и её нужно довести до конца. Игровой сервер продолжает работать; предупреждение касается доступа к дашборду плагина.
Как это исправить:
- Прочитай сообщение полностью в Консоль или в разделе Файлы в
logs/latest.log. - Открой в своём дашборде NovaSync указанный путь
/dashboardи полностью пройди мастер настройки. При этом создай свою учётную запись владельца. - Замени стандартные учётные данные собственными, с надёжным паролем, который используется только здесь. Затем проверь, выводит ли NovaSync предупреждение снова.
Полезно знать: Учётным данным не место в тикете или в публично опубликованном фрагменте лога. Если не получается разобраться, открой тикет и укажи время появления сообщения.
DonutShop: команда покупки завершается ошибкой, шарды возвращаются
Так выглядит сообщение:
[DonutShop] Shard shop command failed for <Игрок> ("<Команда>"); refunding <Количество> Shard.
В чём причина: DonutShop пытается выдать купленную услугу с помощью заданной команды. Эта команда завершается ошибкой, и плагин сообщает о возврате шардов. Сервер продолжает работать; затронута только эта покупка.
Как это исправить:
- Прочитай в Консоль сообщения непосредственно перед командой покупки. В них может быть указана неизвестная команда или недопустимый параметр.
- Открой нужную запись магазина во вкладке Файлы. Сравни название команды, аргументы и плейсхолдеры игрока с документацией плагина, который отвечает за выполнение.
- Проверь, установлен ли выполняющий плагин во вкладке Плагины и успешно ли он загружен согласно Консоль.
- Внеси исправление по инструкции DonutShop. Затем протестируй одну покупку и проверь награду и баланс шардов.
ExecutableItems: в специальной команде не указано true или false
Так выглядит сообщение:
[ExecutableItems] INVALID COMMAND A SCommand contains an invalid boolean: <Значение> for command: <Команда>
В чём причина: ExecutableItems проверяет аргументы специальной команды. Булево значение — это ответ «да» или «нет», записываемый как true или false. В предусмотренном для этого месте указано другое значение. Из-за этого действие предмета недействительно; сервер продолжает работать.
Как это исправить:
- Открой сообщение в Консоль и найди указанную команду в конфигурации соответствующего предмета во вкладке Файлы.
- Перед редактированием сделай копию файла. Сравни всю последовательность аргументов с документацией установленной у тебя версии ExecutableItems.
- Впиши
trueилиfalseв предусмотренное место. Если аргументы сместились, проверь также позицию последующих команд. - После сохранения перезапусти сервер и протестируй именно это действие предмета.
ExecutableItems: мир в disableItemsPerWorld недействителен
Так выглядит сообщение:
[ExecutableItems] Invalid world: <Мир> in the option disableItemsPerWorld
В чём причина: ExecutableItems должен блокировать определённые предметы в отдельных мирах. Указанный для этого мир плагин не распознаёт как корректно загруженный. Поэтому правило блокировки для этой записи нельзя правильно сопоставить. Сервер продолжает работать.
Как это исправить:
- Проверь в Консоль, успешно ли загрузился нужный мир. Сначала устрани сообщённую там ошибку загрузки.
- Сделай копию конфигурации ExecutableItems во вкладке Файлы и найди опцию
disableItemsPerWorld. - Сравни запись с фактическим названием загруженного мира. Исправь написание и удали записи для миров, удалённых навсегда.
- Полностью перезапусти сервер. Проверь Консоль и протестируй, блокируются ли нужные предметы в соответствующем мире.
Твоего сообщения здесь нет?
Прочитай сообщение целиком в Консоль или в logs/latest.log, включая строки непосредственно перед ним. Часто там указано, файлы какого плагина загружаются в данный момент. В stacktrace ниже плагин можно определить по имени файла JAR или по папке plugins/<Плагин>/ в пути. Если в сообщении указан файл со строкой и столбцом, это почти всегда ошибка формата, как в разделах выше. Перед любым изменением создай резервную копию. Если не получается решить проблему, открой тикет и укажи время появления сообщения.