Підключення CivBot до сервера¶
Адміністратор сервера підключає CivBot до сервера Discord: додає бота, задає канал історії ігор, канал збору ігор і роль модератора. Після цього модератор ставить панель гри, і гравці створюють ігри.
Що потрібно¶
- Право «Керувати сервером» — з ним додають бота на сервер і виконують
/guild config, що задає канали й роль модератора. - Право «Адміністратор» або роль модератора сервера — потрібне одне з двох, щоб поставити панель гри командою
/moderator panel. Власник сервера має всі права Discord одразу. - Посилання-запрошення CivBot — через нього бота додають на сервер.
- Два текстові канали — один для карток зборів, другий для тредів ігор. Можна створити нові або взяти наявні.
- Доступ гравців до каналів — гравці бачать канал, де стоїть панель гри, канал збору ігор і канал історії ігор. У треді гри вони надсилають Steam-посилання й завершують гру командою
/гра завершити(/game finish); на сервері, з яким працює сайт CivBot, гравець гри може завершити її й на сайті — Завершення гри на сайті. Щоб писати в треді гри, гравцям потрібен дозвіл «Надсилати повідомлення в гілках» у каналі історії ігор.
Права бота в каналах¶
Бот працює в кількох каналах, і в кожному йому потрібні свої дозволи Discord. Дайте їх до першої гри в налаштуваннях каналу, на вкладці дозволів.
| Канал | Що там робить бот | Які дозволи потрібні боту |
|---|---|---|
| Канал збору ігор | Надсилає й оновлює картки зборів з емодзі націй | «Переглядати канал», «Надсилати повідомлення», «Вбудовувати посилання», «Використовувати зовнішні емодзі» |
| Канал історії ігор | Створює тред кожної гри, пише в ньому й прибирає повідомлення зі Steam-посиланням | «Переглядати канал», «Створювати публічні гілки», «Надсилати повідомлення в гілках», «Вбудовувати посилання», «Читати історію повідомлень», «Керувати повідомленнями», «Використовувати зовнішні емодзі» |
| Канал, де стоїть панель гри | Ставить панель і кожні 5 хв оновлює список ігор | «Переглядати канал», «Надсилати повідомлення», «Читати історію повідомлень» |
Канал, де виконують /guild config |
Оновлює поля картки налаштувань після вибору в меню | «Переглядати канал», «Вбудовувати посилання», «Читати історію повідомлень» |
Сейв у треді гри діє на сервері, з яким працює сайт CivBot: гравці кидають файл сейву в тред гри, і бот ставить під повідомленням реакції ⏳, а потім ✅ або ❌. Щоб реакції з'являлися, боту в каналі історії ігор потрібен ще дозвіл «Додавати реакції». Подробиці — Сейв у треді гри.
Кроки¶
-
Додайте бота на сервер. Відкрийте посилання-запрошення CivBot і оберіть свій сервер. Бот реєструє сервер сам, окремої команди для цього немає. Якщо бота колись видаляли, він повертається з попередніми налаштуваннями, рейтингами й нумерацією ігор. Перевірка: бот з'явився в списку учасників сервера.
-
Підготуйте два канали. У канал збору ігор бот надсилатиме картки зборів. У каналі історії ігор він створюватиме тред кожної гри після старту. Обидва канали мають бути звичайними текстовими: меню налаштувань пропонує лише такі. Дайте боту дозволи з таблиці Права бота в каналах. Перевірка: у дозволах обох каналів для бота ввімкнено все, що вказано в таблиці.
-
Відкрийте картку налаштувань. Виконайте
/guild configу текстовому каналі, де бот може переглядати канал і читати історію повідомлень. Бот публікує англійську картку «Configure your server!» з меню «Select what you want to configure ...» і кнопкою «Delete this message». Меню перестає відповідати через 3 хв без дій, тоді виконайте команду ще раз. Перевірка: угорі картки видно назву вашого сервера, а в полях, які ще не задано, стоїть «Not set». -
Задайте канал історії ігор. У меню під карткою оберіть «Channels». Бот приватно надішле меню вибору каналів, яке зникне через 60 с. У меню «History channel...» оберіть канал історії ігор. Перевірка: у полі «🏛️ Lobbies history channel:» на картці з'явився обраний канал.
-
Задайте канал збору ігор. У тому самому приватному повідомленні, у меню «Active games channel...», оберіть канал збору ігор. Якщо повідомлення вже зникло, знову оберіть «Channels» під карткою. Перевірка: у полі «🚀 Lobbies active games channel:» з'явився обраний канал.
-
Задайте роль модератора. У меню під карткою оберіть «Roles», а в приватному меню «Moderator role ...» — роль. Це меню теж зникає через 60 с. Модератором бот вважає власника сервера, учасників із правом «Адміністратор» і всіх, хто має цю роль. Учасникам роль видають так само, як будь-яку іншу роль Discord. Перевірка: у полі «Moderator:» з'явилася обрана роль.
-
Поставте панель гри. Виконайте
/moderator panelу каналі, де гравці створюватимуть ігри: для цього потрібне право «Адміністратор» або роль модератора. Бот публікує панель з кнопками «FFA», «Duel», «Статистика гравця», «Інформація» і списком останніх ігор, окремої відповіді на команду немає. Подробиці — Панель гри. Перевірка: натисніть «Інформація» на панелі, і в приватній картці будуть рядки «Каналу історії ігор: #…» і «Каналу збору ігор: #…». Цю картку бот пише мовою вашого клієнта Discord, тож в англійському клієнті рядки будуть англійською. -
Створіть пробний збір. Натисніть «FFA» на панелі. У приватному повідомленні «Оберіть тип гри» натисніть «Vanilla», «Patch» чи «KEK». Перевірка: у каналі збору ігор з'являється картка збору зі станом «Збір», а ви на ній — перший гравець.
-
Скасуйте пробний збір. Натисніть 🗑️ на картці збору: збір зникне, а номера гра не отримає. Перевірка: картки збору більше немає в каналі збору ігор.
Що має бути готово¶
- Бот є серед учасників сервера
- Канал збору ігор і канал історії ігор — текстові канали, які бачать гравці
- Бот має дозволи з таблиці «Права бота в каналах» у кожному своєму каналі
- На картці
/guild configзаповнено поля «🏛️ Lobbies history channel:», «🚀 Lobbies active games channel:» і «Moderator:» - Роль модератора видано тим, хто керуватиме іграми
- Панель гри стоїть у каналі, який бачать гравці
- «Інформація» на панелі показує обидва канали
- Пробна картка збору з'явилася в каналі збору ігор, а потім зникла після 🗑️
Що ще можна налаштувати¶
- Таблиця лідерів — модератор виконує
/leaderboard showу каналі, де має висіти таблиця лідерів поточного сезону. Бот оновлює її щогодини, а нова команда прибирає попередню таблицю. Боту в цьому каналі потрібні «Переглядати канал», «Надсилати повідомлення», «Вбудовувати посилання», «Читати історію повідомлень» і «Використовувати зовнішні емодзі». Перевірка: бот відповідає «Leaderboard has been created!», а в каналі з'являється таблиця «Топ игроков». Подробиці — Таблиця лідерів. - Журнал подій — модератор виконує
/guild log_channelз параметромchannel, і бот записує туди події зборів та ігор. Та сама команда без параметра вимикає журнал. Боту в цьому каналі потрібні «Надсилати повідомлення» і «Вбудовувати посилання», інакше записи не надходять. Перевірка: бот відповідає «Log channel set to #… successfully.», а коли хтось створює гру на панелі, у журналі з'являється запис «🎮 Гру створено». Подробиці — Журнал подій. - Сповіщення про збір — щоб учасники гри могли кликати нових гравців кнопкою «Сповістити про збір» на картці збору, модератор виконує
/guild notifications configureз параметромchannel. Необов'язкові параметри:cooldown_minutes— перерва між сповіщеннями однієї гри, 3–60 хв, типово 15 хв;role— роль, яку згадує бот;restricted_role— роль, з якою не можна надсилати сповіщення. Перевірка: бот відповідає «Сповіщення про збір налаштовано.», а/guild notifications statusпоказує «Готовий». Подробиці — Налаштування сповіщень про збір. - Мова бота — картки зборів, панель і журнал бот пише основною мовою сервера; її змінюють у налаштуваннях спільноти сервера Discord. Підтримуються українська, російська й англійська, для інших мов бот пише англійською. Приватні відповіді панелі гри бот пише мовою клієнта Discord того, хто натиснув кнопку. Написи кнопок панелі лишаються мовою, що була під час
/moderator panel, тож після зміни мови поставте панель знову. Подробиці — Мова бота.
Поля картки налаштувань¶
Поля «🏛️ Lobbies history channel:», «🚀 Lobbies active games channel:» і «Moderator:» задають кроки 4–6. Ще чотири поля картки описані в таблиці.
| Поле | Що показує | Як задати |
|---|---|---|
| «Steam Game (ID) for manage SteamLinks:» | Гру Steam із її номером; типово — Civilization V. Поле не змінює того, як бот читає Steam-посилання: він завжди приймає посилання steam://joinlobby/… гри Civilization V |
Модератор виконує /guild steam_game_id з параметром game_id; бот відповідає «Done ✅» або «Failed ❌» |
| «🏆 Lobbies leaderboard channel:» | Канал таблиці лідерів; «Not set», якщо таблицю не ставили | Команда /leaderboard show у потрібному каналі |
| «Autobans:» | Список націй, який бот задає серверові під час реєстрації; на бани в іграх сервера він не впливає | У меню налаштувань пункту для нього немає |
| «Autobans count:» | Число з налаштувань сервера (типово 2); на кількість банів у грі не впливає | У меню налаштувань пункту для нього немає. Ліміти банів задає тип гри, див. Створення гри |
Що може піти не так¶
- «Інформація» на панелі відповідає «History channel is not set». На сервері не задано канал історії ігор. Задайте його в
/guild config→ «Channels» → «History channel...». - Картка
/guild configмає заголовок «Guild not configured». Бот ще не зареєстрував сервер. Він робить це, коли його додають, а якщо бот тоді не працював — під час наступного запуску. Зачекайте кілька хвилин і виконайте команду ще раз. /guild configвідповідає «You don't have permissions to do that!». Для цієї команди потрібне право Discord «Керувати сервером». Ця відповідь зникає через 3 с./moderator panelвідповідає «Moderator role not set. Please contact server administrator.» або «You are not moderator.». У вас немає ні права «Адміністратор», ні ролі модератора. Задайте роль модератора в/guild configі видайте її тому, хто ставитиме панель.