Yurushi
Мод Discord Integration Whitelist для Fabric. Упростите управление доступом на вашем сервере.
- Загрузчики
- Fabric
- Скачиваний на Modrinth
- 94
- Подписчиков на Modrinth
- 0
- версия
- 1
- Обновлён
- 7 февраля 20267 февр.
- Опубликован
- в 2026
Коротко о моде
Ставится только на сервер; игрокам ставить не нужно
Yurushi
Мод для Fabric с интеграцией Discord и вайтлистом. Упростите управление доступом на вашем сервере.
Возможности
- Интеграция с Discord: Игроки запрашивают доступ к вайтлисту через форму в Discord (модальное окно).
- Одобрение в один клик: Администраторы могут одобрить или отклонить запросы прямо из Discord одной кнопкой.
Автоматические уведомления:
- Отправляет игроку личное сообщение при одобрении или отклонении.
- Обновляет исходное сообщение с запросом, отражая решение.
- Настраиваемые сообщения: Полностью настраиваемый текст и стили эмбедов через
messages.toml. - Доступ по ролям: Ограничьте управление вайтлистом определёнными ролями Discord с помощью
whitelistRole. - Инструменты отладки: Просматривайте конфигурацию эмбедов с помощью
/debug embeds.
Конфигурация
Файлы конфигурации находятся в config/Yurushi/.
Yurushi.toml
Основная конфигурация мода.
| Параметр | Тип | Описание |
|---|---|---|
botToken | String | Токен вашего Discord-бота |
adminChannelId | String | ID текстового канала Discord, куда отправляются запросы |
whitelistRole | List | Список ID ролей, которым разрешено одобрять/отклонять запросы |
Yurushi.toml
toml
botToken = "YOUR_BOT_TOKEN_HERE"
adminChannelId = "123456789012345678"
whitelistRole = ["987654321098765432", "112233445566778899"]
{minecraft_username}, {reason} и т.д. (Могут быть доступны не во всех сообщениях). messages.toml
```toml [error] no_permission = "❌ У вас нет прав на выполнение этого действия." server_unavailable = "❌ Сервер недоступен. Пожалуйста, попробуйте позже." unexpected = "❌ Произошла непредвиденная ошибка." admin_channel_not_found = "Произошла ошибка. Пожалуйста, свяжитесь с администратором."[button] [button.approve] label = "Одобрить" success = "✅ Запрос на вайтлист для {minecraft_username} одобрен!\nUUID: {uuid}" already_whitelisted = "⚠️ {minecraft_username} уже в вайтлисте сервера." player_not_found = "❌ Игрок {minecraft_username} не найден на серверах Mojang.\nВозможно, имя указано неверно или не существует." failed = "❌ Не удалось добавить {minecraft_username} в вайтлист.\nОшибка: {error}"
[button.deny] label = "Отклонить" success = "Запрос на вайтлист для {minecraft_username} отклонён.\nПричина: {reason}"
[embed] [embed.request] title = "🕚 Запрос на вайтлист" footer = "ID пользователя: {user_id}" [embed.request.fields] discord_user = "Пользователь Discord" minecraft_username = "Имя в Minecraft" description = "Описание" description_empty = "Описание не указано"
[embed.approved] title = "✅ Запрос на вайтлист — одобрен" footer = "Теперь вы можете зайти на сервер!" [embed.approved.fields] approved_by = "Одобрил"
[embed.already_whitelisted] title = "⚠️ Запрос на вайтлист — уже в вайтлисте" footer = "Этот игрок уже в вайтлисте."
[embed.denied] title = "❌ Запрос на вайтлист — отклонён" footer = "Если у вас есть вопросы, свяжитесь с администратором." [embed.denied.fields] reason = "Причина" denied_by = "Отклонил"
[dm] [dm.approved] title = "✅ Запрос на вайтлист одобрен" description = "Поздравляем! Ваш запрос на вайтлист одобрен."
[dm.denied] title = "❌ Запрос на вайтлист отклонён" description = "К сожалению, ваш запрос на вайтлист отклонён."
[modal] [modal.register] title = "Регистрация в вайтлисте" success = "Ваш запрос на вайтлист отправлен!" [modal.register.inputs] username_label = "Имя в Minecraft" username_placeholder = "Введите ваше имя в Minecraft" description_label = "Описание (необязательно)" description_placeholder = "Расскажите немного о себе или почему хотите присоединиться..."
[modal.deny] title = "Отклонить запрос на вайтлист" [modal.deny.inputs] reason_label = "Причина отклонения" reason_placeholder = "Укажите причину отклонения запроса на вайтлист..." reason_empty = "Причина не указана"
</details>
## Как использовать
### Что нужно
- Сервер Minecraft на **Fabric** с установленным модом Yurushi.
- **Discord-бот** со следующим:
- Токен бота (из Discord Developer Portal)
- Включённый `Server Members Intent` (Privileged Gateway Intents)
- Приглашён на ваш Discord-сервер с областями `applications.commands` и `bot`
### Установка
1. Скачайте JAR-файл мода из [Releases](https://github.com/tantaihaha4487/Yurushi/releases).
2. Поместите его в папку `mods/` вашего сервера.
3. Запустите сервер один раз, чтобы создать файлы конфигурации по умолчанию в `config/Yurushi/`.
4. Остановите сервер и настройте `Yurushi.toml`, указав токен бота и настройки канала.
5. Перезапустите сервер — Discord-бот подключится автоматически.
### Настройка Discord-бота
1. Перейдите в [Discord Developer Portal](https://discord.com/developers/applications) и создайте новое приложение.
2. Перейдите в **Bot** → **Reset Token**, чтобы получить токен бота.
3. Включите **Server Members Intent** в разделе *Privileged Gateway Intents*.
4. Перейдите в **OAuth2** → **URL Generator**, выберите области `bot` и `Administrator`.
5. Скопируйте сгенерированную ссылку и пригласите бота на ваш сервер.
6. Вставьте токен бота в `Yurushi.toml` (`botToken`).
### Для игроков
Игроки могут запросить доступ к вайтлисту прямо из Discord:
1. Используйте слэш-команду `/register` в любом канале, который видит бот.
2. Появится модальное окно с полями:
- **Имя в Minecraft** (обязательно)
- **Описание** (необязательно) — представьтесь или объясните, почему хотите присоединиться.
3. После отправки появится подтверждение, а запрос уйдёт в админ-канал.
### Для администраторов
Администраторы с настроенной ролью `whitelistRole` могут управлять запросами:
1. Запросы на вайтлист появляются в настроенном `adminChannelId` с кнопками **Одобрить** и **Отклонить**.
2. Нажмите **Одобрить**, чтобы:
- Добавить игрока в вайтлист сервера Minecraft.
- Отправить игроку личное сообщение с уведомлением об одобрении.
- Обновить эмбед заявки, чтобы отобразить статус "Approved".
3. Нажмите **Deny**, чтобы:
- Открыть модальное окно для ввода причины отказа.
- Отправить игроку личное сообщение с причиной.
- Обновить эмбед заявки, чтобы отобразить статус "Denied".
### Команды
#### Слэш-команды Discord
| Команда | Описание |
|---------|-------------|
| `/register` | Открывает форму регистрации в вайтлисте для игроков |
| `/debug embeds` | Предпросмотр всех настроенных стилей эмбедов (только для админов) |
| `/ping` | Проверить, онлайн ли бот |
#### Команды Minecraft
| Команда | Права | Описание |
|---------|------------|-------------|
| `/yurushi reload` | `yurushi.command.reload` (OP Level 3+) | Перезагрузить файлы конфигурации без перезапуска сервера |
## Баг-репорты и предложения
Если вы нашли баги или у вас есть предложения по улучшению, пожалуйста, создайте issue на странице [GitHub Issues](https://github.com/tantaihaha4487/Yurushi/issues).Частые вопросы
Как установить Yurushi?
Установите Fabric под свою версию Minecraft, скачайте Yurushi под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть Yurushi?
У Yurushi есть сборки для Minecraft 1.21.11.
Нужен ли Yurushi на сервере?
Ставится только на сервер; игрокам ставить не нужно