Ошибка «received empty payload on channel fml handshake» появляется в консоли сервера или клиента Minecraft с модами на базе Forge и означает, что при рукопожатии (handshake) клиент отправил пустой пакет вместо списка установленных модов — чаще всего это происходит, когда на сервер с модами пытается зайти ванильный клиент без Forge. Сервер ждёт данные о модах по каналу fml:handshake, получает пустоту и разрывает соединение.
Проблема относится к этапу подключения, ещё до загрузки мира. Игрок видит сообщение об отключении, а в логах сервера фиксируется строка про empty payload. Хорошая новость: ошибка диагностируется быстро, потому что круг причин узкий — несовпадение модов, версий Forge или типа клиента.
Что означает канал fml handshake
При подключении к серверу с модами клиент и сервер обмениваются служебными пакетами по каналу fml:handshake. В этих пакетах передаётся список модов, их версии и другие данные, необходимые для синхронизации. Если клиент ванильный, он просто не знает о существовании этого канала и не отправляет ничего — сервер трактует это как пустой payload и обрывает handshake.
Та же ситуация возникает, если на клиенте установлен другой загрузчик модов — например, Fabric или NeoForge несовместимой версии. Каналы рукопожатия у них различаются, и сервер на Forge не получает ожидаемых данных.
Основные причины ошибки
- 🔌 Игрок заходит на модифицированный сервер с ванильного клиента без установленного Forge.
- 🧩 На клиенте установлен Fabric/Quilt вместо Forge — каналы handshake не совпадают.
- 🔢 Версия Forge на клиенте отличается от версии на сервере, из-за чего ломается формат пакетов.
- 📦 Набор модов на клиенте не совпадает с серверным: отсутствуют обязательные моды или лишние конфликтуют.
- 🌐 Между клиентом и сервером стоит прокси (BungeeCord, Velocity), который некорректно пересылает пакеты handshake.
Отдельный случай — подключение через прокси-сеть. Некоторые конфигурации прокси «съедают» или изменяют служебные пакеты Forge, и сервер получает пустые данные. Если вы используете BungeeCord или аналог, проверьте, включён ли режим поддержки Forge в его конфигурации (параметр зависит от конкретного прокси — сверьтесь с его документацией).
Диагностика: кто виноват — клиент или сервер
Первый шаг — посмотреть логи. На сервере откройте logs/latest.log и найдите строку с ошибкой: рядом обычно указан ник игрока, чьё подключение оборвалось. Спросите этого игрока, с какого клиента он заходит.
Проверка со стороны клиента тоже проста. Нужно открыть лог клиента (файл latest.log в папке logs внутри директории игры) сразу после неудачного подключения и найти строки, относящиеся к fml или handshake. Если клиент ванильный, упоминаний FML там не будет вовсе — это и есть подтверждение причины.
Пошаговое решение для игрока
Если ошибка возникает у вас при входе на сервер, действуйте в следующем порядке. Каждый шаг обратим и безопасен.
☑️ Проверка клиента перед подключением
Убедитесь, что запускаете именно профиль Forge, а не ванильную версию той же редакции игры — частая ошибка при наличии нескольких профилей в лаунчере. В левом нижнем углу главного меню игры с Forge отображается строка с версией загрузчика и количеством загруженных модов.
Далее синхронизируйте моды. Самый надёжный способ — скопировать папку mods с сервера (или получить готовую сборку от администратора) и заменить ею свою. Различия даже в версии одного мода могут рвать handshake.
⚠️ Внимание: не подменяйте и не редактируйте файлы модов вручную, чтобы «обмануть» проверку сервера. Это приведёт к рассинхронизации данных и вылетам уже в игре, а на некоторых серверах — к блокировке аккаунта.
Решение для администратора сервера
Если вы владелец сервера и игроки массово получают эту ошибку, начните с проверки собственной сборки. Убедитесь, что сервер действительно запущен на Forge, а не на ванильном ядре, — в консоли при старте должны быть строки инициализации FML.
Подготовьте для игроков готовый клиентский модпак: архив с папкой mods, файлом конфигураций config и указанием точной версии Forge. Это устраняет большинство обращений, потому что исключает «ручную» сборку с ошибками.
- 🛠️ Сверьте версию Forge сервера с рекомендуемой для ваших модов.
- 📁 Раздайте игрокам точную копию серверной папки
mods(кроме серверных-only модов). - 🔀 При использовании прокси проверьте настройки пересылки Forge-пакетов в его конфиге.
- 📋 Ведите список модов с версиями, чтобы быстро находить расхождения у игроков.
Сравнение сценариев ошибки
| Сценарий | Признак в логе | Решение |
|---|---|---|
| Ванильный клиент | Empty payload, нет данных FML | Установить Forge и моды сервера |
| Fabric вместо Forge | Нет ответа на канал fml:handshake | Переустановить клиент на Forge |
| Разные версии Forge | Ошибки парсинга пакетов handshake | Выровнять версии загрузчика |
| Расхождение модов | Отказ после обмена списками модов | Синхронизировать папку mods |
| Прокси-сеть | Ошибка только при входе через прокси | Настроить поддержку Forge в прокси |
⚠️ Внимание: точное содержимое логов и поведение handshake зависят от версии Forge и Minecraft. Если формулировки в вашем логе отличаются, ориентируйтесь на документацию вашей конкретной версии загрузчика.
Если ничего не помогло
Когда стандартные шаги не сработали, попробуйте чистый эксперимент: поднимите локальный тестовый сервер с тем же Forge и одним-двумя модами, затем подключитесь к нему своим клиентом. Если ошибка воспроизводится даже в минимальной конфигурации — проблема в самой установке Forge, и проще переустановить его начисто.
При подключении через хостинг с панелью управления проверьте, не подменяет ли панель ядро сервера при запуске. На некоторых хостингах выбор «ванильного» шаблона вместо Forge-профиля приводит именно к такой картине: сервер стартует без FML, а игроки с модами получают разрыв handshake.
Как найти папку с логами Minecraft
В стандартном лаунчере папка игры находится по пути .minecraft (в Windows — %appdata%\.minecraft). Внутри неё каталог logs содержит latest.log и архивы прошлых сессий. Откройте latest.log текстовым редактором и ищите строки со словами fml, handshake или disconnect.
Частые вопросы
Можно ли зайти на Forge-сервер с ванильного клиента?
Нет, если на сервере установлены моды, требующие наличия на клиенте. Handshake по каналу fml:handshake не пройдёт, и сервер разорвёт соединение с ошибкой пустого payload. Нужен клиент с Forge и серверной сборкой модов.
Ошибка появилась после обновления одного мода — что делать?
Верните прежнюю версию мода или обновите его одновременно на сервере и у всех игроков. Расхождение версий модов — типичная причина сбоя рукопожатия.
Совместимы ли Forge и Fabric на одном сервере?
Нет, это разные загрузчики с несовместимыми протоколами handshake. Клиент и сервер должны использовать один и тот же загрузчик одной версийной линейки.
Ошибка возникает только у одного игрока — сервер виноват?
Почти наверняка нет: если остальные подключаются нормально, проблема в клиенте этого игрока — версия Forge, набор модов или повреждённая установка. Попросите его прислать свой latest.log для сравнения.