Мод для Майнкрафт на Fabric для сервера, который связывает игровой чат, Discord и REST API. Игрокам не нужны моды на клиенте: к серверу можно подключаться с обычного ванильного клиента.
Возможности
- Передаёт сообщения между игровым чатом и каналом Discord в обе стороны, а также отправляет уведомления о входе и выходе игроков, смертях с настоящей причиной, достижениях и запуске либо остановке сервера.
- Позволяет получать сведения об игроках: здоровье, голод, опыт, режим игры, координаты, инвентарь по слотам, время последнего входа, статус лицензионного или офлайн-аккаунта и скин.
- Даёт инструменты модерации: кик, бан и бан по IP, временный бан с автоматическим снятием, муты, предупреждения, очистку предупреждений, управление белым списком и кик всех игроков. Муты, предупреждения и временные баны сохраняются в
viperbridge_punishments.json. - Пересылает консоль сервера в Discord, показывает число игроков в названии канала, меняет статус бота и может синхронизировать роли Discord с командами Майнкрафт.
- REST API умеет проверять состояние сервера, получать список и сведения об игроках, а также выполнять команды сервера.
Как пользоваться
Игрок связывает аккаунты командой /link <имя_игрока> в Discord, затем вводит полученный код в игре: /viperbridge link <code>. Связка нужна для персональных разрешений и работает с офлайн-аккаунтами.
Команды Discord доступны как слеш-команды и текстовые команды с префиксом !. Среди них: /players, /player <name>, /coords <name>, /inventory <name>, /profile <name>, /skin <name>, /kick <name> [reason], /ban <name> [reason], /tempban <name> <dur> [reason], /mute <name> [dur], /warn <name> [reason], /give <player> <item> [count], /tp <player> <target>, /gamemode <mode> [player], /weather <type> [sec], /status, /tps и /seed.
На сервере используются /viperbridge reload для перезагрузки настроек, /viperbridge status для проверки состояния и /viperbridge discord reconnect для переподключения к Discord.
Настройки
Файл настроек создаётся по пути world/viperbridge/viperbridge.json. В нём указывают токен бота discordBotToken, ID сервера discordGuildId, ID каналов в channels, префикс commandPrefix, роли и пользователей в allowedRoles и allowedUsers.
Для каждой команды можно отдельно включить её, назначить разрешённые роли, пользователей и связанные игровые имена через commandPermissions.<cmd>. Параметр privacyMode скрывает IP-адреса и запрещает получать координаты и инвентарь игроков не в сети.
Требования и совместимость
Мод устанавливается только на сервер Fabric и требует Fabric API. Для работы бота в Discord нужно включить разрешения MESSAGE CONTENT INTENT и SERVER MEMBERS INTENT.
