Перейти к содержимому

Устранение неполадок

Строка в логе: [SM] Unable to load plugin "rookhelm.smx"

Проверьте, что:

  • SourceMod 1.12 (stable) установлен в addons/sourcemod/. Более старые версии не поддерживаются, и SourceMod 1.13 пока тоже не поддерживается — см. Расширение не загружается из-за ошибки версии ниже.
  • Вы распаковали весь пакет так, что его папка addons/ слилась с вашей установкой SourceMod: расширение (addons/sourcemod/extensions/rookhelm.ext.so) и сопутствующий плагин (addons/sourcemod/plugins/rookhelm.smx) должны присутствовать оба.
  • Файлы не повреждены. Скачайте пакет из панели управления заново и сверьте его с SHA256SUMS.

Расширение не загружается из-за ошибки версии

Section titled “Расширение не загружается из-за ошибки версии”

Строка в логе: <FAILED> file "rookhelm.ext.so": Extension version is too old to load (8, max is 9) (или ... too new to load).

Это означает, что ваша сборка SourceMod и расширение RookHelm собраны под несовместимые версии ABI расширений. SourceMod загружает только расширение, чья заявленная версия попадает в диапазон, который принимает запущенная сборка, а SourceMod 1.13 изменил этот ABI: расширение, собранное для 1.12, заявляет более старую версию, чем принимает 1.13 (too old), и наоборот (too new). Metamod:Source здесь ни при чём — это исключительно загрузчик расширений SourceMod.

RookHelm сейчас поставляет одно расширение, собранное для SourceMod 1.12 (stable). Чтобы исправить:

  • Используйте стабильную ветку 1.12 SourceMod (и Metamod:Source). Dev/master-сборки — это 1.13, и они отклонят текущее расширение.
  • Если вы намеренно тестируете на 1.13, обходного пути пока нет: один бинарный файл расширения не может удовлетворить и 1.12, и 1.13, поэтому сборку для 1.13 придётся публиковать отдельно. Она в планах.

Когда расширение не загружается, сопутствующий плагин (rookhelm.smx) тоже не может загрузиться — он требует расширение, — поэтому сервер никогда не подключается и остаётся в статусе Never connected («ни разу не подключался») в вашей панели. Исправление версии SourceMod решает обе проблемы.

Сервер не появляется в ожидающих после перезапуска

Section titled “Сервер не появляется в ожидающих после перезапуска”

После того как вы закинули пакет и перезапустили сервер, он должен появиться в разделе Pending servers («Ожидающие серверы») вашей панели примерно в течение минуты. Если этого не произошло:

  1. Убедитесь, что обе настройки на месте. Если вы использовали пакет из панели, они уже заполнены в cfg/sourcemod/rookhelm.cfg, который плагин загружает автоматически; если настраивали вручную, проверьте, что rookhelm_api_url и rookhelm_enrollment_token заданы и не пусты в server.cfg.
  2. Убедитесь, что значения совпадают с вашей страницей Servers. Повторная загрузка пакета — самый простой способ получить корректный предзаполненный конфиг.
  3. Убедитесь, что сервер может достучаться до RookHelm. Сервер открывает исходящий защищённый WebSocket к rookhelm_api_url; файрвол, блокирующий исходящий 443, остановит регистрацию. Большинство хостеров разрешают это по умолчанию.
  4. Просмотрите лог сервера около момента запуска: строка RookHelm объяснит, почему соединение было отклонено (например, неизвестный токен регистрации).

Если токен был сменён из панели управления, токен из старого пакета больше не работает — скачайте свежий пакет.

Сервер в ожидающих, но не выходит в онлайн

Section titled “Сервер в ожидающих, но не выходит в онлайн”

Ожидающий сервер заявил о себе, но ещё не получил доверия. Откройте страницу Servers и нажмите Adopt («Принять») на его карточке. Принимать могут только администраторы и владельцы. Принятие доставляет ключ подписи сервера автоматически — копировать нечего.

Имя и адрес на карточке ожидающего сервера сообщены самим сервером и не проверяются до принятия, поэтому перед принятием убедитесь, что адрес совпадает с сервером, который вы ожидаете.

Принятый сервер показывает офлайн

Section titled “Принятый сервер показывает офлайн”

Что вы видите: сервер был онлайн, а теперь его статус — офлайн (нет heartbeat более двух минут).

Сервер переподключается сам и заново подтверждает свой ключ после перезапуска, смены карты или сетевого сбоя, так что короткий офлайн обычно проходит сам. Если офлайн затянулся:

  • Убедитесь, что процесс игрового сервера запущен и доступен.
  • Убедитесь, что исходящий 443 по-прежнему открыт (см. выше).
  • Если ключ подписи сервера утерян или машина была пересобрана, откройте страницу сервера и используйте Reissue keys («Перевыпустить ключи»). Новый ключ дойдёт до сервера при следующем переподключении — вручную его копировать не нужно.