Перейти до змісту

Підключення CivBot до сервера

Адміністратор сервера підключає CivBot до сервера Discord: додає бота, задає канал історії ігор, канал збору ігор і роль модератора. Після цього модератор ставить панель гри, і гравці створюють ігри.

Що потрібно

  • Право «Керувати сервером» — з ним додають бота на сервер і виконують /guild config, що задає канали й роль модератора.
  • Право «Адміністратор» або роль модератора сервера — потрібне одне з двох, щоб поставити панель гри командою /moderator panel. Власник сервера має всі права Discord одразу.
  • Посилання-запрошення CivBot — через нього бота додають на сервер.
  • Два текстові канали — один для карток зборів, другий для тредів ігор. Можна створити нові або взяти наявні.
  • Доступ гравців до каналів — гравці бачать канал, де стоїть панель гри, канал збору ігор і канал історії ігор. У треді гри вони надсилають Steam-посилання й завершують гру командою /гра завершити (/game finish); на сервері, з яким працює сайт CivBot, гравець гри може завершити її й на сайті — Завершення гри на сайті. Щоб писати в треді гри, гравцям потрібен дозвіл «Надсилати повідомлення в гілках» у каналі історії ігор.

Права бота в каналах

Бот працює в кількох каналах, і в кожному йому потрібні свої дозволи Discord. Дайте їх до першої гри в налаштуваннях каналу, на вкладці дозволів.

Канал Що там робить бот Які дозволи потрібні боту
Канал збору ігор Надсилає й оновлює картки зборів з емодзі націй «Переглядати канал», «Надсилати повідомлення», «Вбудовувати посилання», «Використовувати зовнішні емодзі»
Канал історії ігор Створює тред кожної гри, пише в ньому й прибирає повідомлення зі Steam-посиланням «Переглядати канал», «Створювати публічні гілки», «Надсилати повідомлення в гілках», «Вбудовувати посилання», «Читати історію повідомлень», «Керувати повідомленнями», «Використовувати зовнішні емодзі»
Канал, де стоїть панель гри Ставить панель і кожні 5 хв оновлює список ігор «Переглядати канал», «Надсилати повідомлення», «Читати історію повідомлень»
Канал, де виконують /guild config Оновлює поля картки налаштувань після вибору в меню «Переглядати канал», «Вбудовувати посилання», «Читати історію повідомлень»

Сейв у треді гри діє на сервері, з яким працює сайт CivBot: гравці кидають файл сейву в тред гри, і бот ставить під повідомленням реакції ⏳, а потім ✅ або ❌. Щоб реакції з'являлися, боту в каналі історії ігор потрібен ще дозвіл «Додавати реакції». Подробиці — Сейв у треді гри.

Кроки

  1. Додайте бота на сервер. Відкрийте посилання-запрошення CivBot і оберіть свій сервер. Бот реєструє сервер сам, окремої команди для цього немає. Якщо бота колись видаляли, він повертається з попередніми налаштуваннями, рейтингами й нумерацією ігор. Перевірка: бот з'явився в списку учасників сервера.

  2. Підготуйте два канали. У канал збору ігор бот надсилатиме картки зборів. У каналі історії ігор він створюватиме тред кожної гри після старту. Обидва канали мають бути звичайними текстовими: меню налаштувань пропонує лише такі. Дайте боту дозволи з таблиці Права бота в каналах. Перевірка: у дозволах обох каналів для бота ввімкнено все, що вказано в таблиці.

  3. Відкрийте картку налаштувань. Виконайте /guild config у текстовому каналі, де бот може переглядати канал і читати історію повідомлень. Бот публікує англійську картку «Configure your server!» з меню «Select what you want to configure ...» і кнопкою «Delete this message». Меню перестає відповідати через 3 хв без дій, тоді виконайте команду ще раз. Перевірка: угорі картки видно назву вашого сервера, а в полях, які ще не задано, стоїть «Not set».

  4. Задайте канал історії ігор. У меню під карткою оберіть «Channels». Бот приватно надішле меню вибору каналів, яке зникне через 60 с. У меню «History channel...» оберіть канал історії ігор. Перевірка: у полі «🏛️ Lobbies history channel:» на картці з'явився обраний канал.

  5. Задайте канал збору ігор. У тому самому приватному повідомленні, у меню «Active games channel...», оберіть канал збору ігор. Якщо повідомлення вже зникло, знову оберіть «Channels» під карткою. Перевірка: у полі «🚀 Lobbies active games channel:» з'явився обраний канал.

  6. Задайте роль модератора. У меню під карткою оберіть «Roles», а в приватному меню «Moderator role ...» — роль. Це меню теж зникає через 60 с. Модератором бот вважає власника сервера, учасників із правом «Адміністратор» і всіх, хто має цю роль. Учасникам роль видають так само, як будь-яку іншу роль Discord. Перевірка: у полі «Moderator:» з'явилася обрана роль.

  7. Поставте панель гри. Виконайте /moderator panel у каналі, де гравці створюватимуть ігри: для цього потрібне право «Адміністратор» або роль модератора. Бот публікує панель з кнопками «FFA», «Duel», «Статистика гравця», «Інформація» і списком останніх ігор, окремої відповіді на команду немає. Подробиці — Панель гри. Перевірка: натисніть «Інформація» на панелі, і в приватній картці будуть рядки «Каналу історії ігор: #…» і «Каналу збору ігор: #…». Цю картку бот пише мовою вашого клієнта Discord, тож в англійському клієнті рядки будуть англійською.

  8. Створіть пробний збір. Натисніть «FFA» на панелі. У приватному повідомленні «Оберіть тип гри» натисніть «Vanilla», «Patch» чи «KEK». Перевірка: у каналі збору ігор з'являється картка збору зі станом «Збір», а ви на ній — перший гравець.

  9. Скасуйте пробний збір. Натисніть 🗑️ на картці збору: збір зникне, а номера гра не отримає. Перевірка: картки збору більше немає в каналі збору ігор.

Що має бути готово

  • Бот є серед учасників сервера
  • Канал збору ігор і канал історії ігор — текстові канали, які бачать гравці
  • Бот має дозволи з таблиці «Права бота в каналах» у кожному своєму каналі
  • На картці /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 і видайте її тому, хто ставитиме панель.

Пов'язане