Команди бота¶
Команди CivBot, згруповані за тим, хто ними користується: гравці, модератори й адміністратори сервера. Біля кожної команди — що вона робить, які має параметри й хто може її виконати.
Як виконувати команди¶
Наберіть «/» у полі повідомлення на сервері, і Discord покаже команди CivBot. Оберіть команду, і Discord підкаже її параметри. Оберіть параметр, і Discord сам допише його назву з двокрапкою: вам лишається ввести значення, наприклад ходи:212.
Команди виконують на сервері, де працює CivBot, а не в особистих повідомленнях боту. Кожна команда працює з іграми, гравцями й налаштуваннями саме цього сервера.
Більшість відповідей бот надсилає приватно: їх бачите лише ви. Частина відмов зникає сама через 3–20 с. Для всіх у каналі бот публікує панель гри, таблиці лідерів з /leaderboard show і /leaderboard season, картку /stats show і картку налаштувань /guild config.
Українські назви мають лише група /гра та пункт меню «Профіль на сайті». В українському клієнті Discord команди групи називаються /гра завершити (/game finish) і /гра оновити (/game refresh). Їхні параметри теж українські: переможець, тип_перемоги, ходи і гра. Решта команд і параметрів має лише англійські назви. Підказки до /gametime, /leaderboard season і /search games_by_players Discord показує російською. Подробиці — Мова бота.
Команди для гравців¶
Ці команди може виконати будь-хто на сервері. Виняток — /гра завершити: результат гри записує її учасник або модератор.
| Команда | Що робить | Що вказати |
|---|---|---|
/гра завершити (/game finish) |
Записує переможця, тип перемоги й кількість ходів: гра отримує стан «Завершена», а у FFA змінюється рейтинг; виконує учасник гри або модератор | переможець, тип_перемоги, ходи; поза тредом гри ще гра |
/гра оновити (/game refresh) |
Перемальовує картку гри в треді за останніми даними; саму гру не змінює | гра — лише поза тредом гри |
/stats show |
Публікує в каналі картку статистики гравця мовою сервера | user — чия статистика; без нього — ваша |
| Пункт «Show Stats» | Приватно показує картку статистики гравця мовою вашого Discord | — |
| Пункт «Профіль на сайті» | Приватно дає кнопку-посилання на профіль гравця на сайті | — |
/nations stats |
Показує, скільки разів кожну націю банили й обирали в іграх сервера, де бани ставили щонайменше 3 гравці | period, status, private |
/gametime |
Малює теплову карту: у які дні тижня й години стартують ігри сервера | timezone, is_private, force_update |
/search games_by_players |
Показує ігри сервера, у яких разом грали всі вказані гравці | player1, player2, player3…player6, private |
Завершення й оновлення гри¶
У треді гри обидві команди самі визначають, про яку гру йдеться. Поза тредом номер гри вказують у параметрі гра. Номер видно в назві треду, наприклад «248 — FFA 6 Patch».
Команда /гра завершити завершує лише гру в стані «В процесі», і лише коли кожному гравцеві обрано націю або сайт прочитав її зі сейву. Переможцем може бути лише гравець цієї гри.
Гру можна завершити й на сайті кнопкою «Завершити гру»; це може зробити лише учасник гри, а результат і рейтинг ті самі. Подробиці — Завершення гри на сайті.
| Параметр | Що вказати |
|---|---|
переможець |
Гравця цієї гри, який переміг |
тип_перемоги |
Один тип зі списку: «Туристична 🎨», «Наукова 🧪», «Дипломатична 🕊️», «Військова 🗡️» чи «Визнання переможця 🤝» |
ходи |
Кількість ходів партії, ціле число від 1 до 330 |
гра |
Номер гри; потрібен лише поза тредом гри |
Гра отримує стан «Завершена» одразу: підтвердження інших гравців бот не просить. На /гра завершити бот приватно відповідає «Done!», а на /гра оновити — «Оновлено». Після завершення гри без сейву бот раз лишає в треді нагадування «Збережіть історію цієї гри» з кнопкою «На сайті»; це діє на сервері, з яким працює сайт CivBot. Подробиці — Завершення гри, Тред гри, Сейв у треді гри.
Статистика гравця¶
Картку з /stats show бачать усі в каналі. Перемкнути на ній вкладку чи період може кожен, хто її бачить. Пункт «Show Stats» показує таку саму картку лише вам. Його відкривають у меню застосунків, клацнувши правою кнопкою миші на гравці. Кнопки картки вимикаються після 3 хв без натискань. Подробиці — Статистика гравця.
Профіль на сайті¶
Це діє на сервері, з яким працює сайт CivBot. У меню застосунків клацніть правою кнопкою миші на гравці й оберіть «Профіль на сайті»: бот приватно згадає гравця й дасть кнопку «🌐 Профіль на сайті». Вона відкриває Профіль гравця цього гравця, а вхід на сайт іде через Discord. Якщо гравця бот ще не знає, він відповідає «У цього гравця ще немає ігор на сайті.». На іншому сервері відповідь — «Сайт не показує ігри цього сервера.».
Пошук ігор за гравцями¶
Команда /search games_by_players шукає ігри сервера, у яких грали разом усі вказані гравці. Обов'язкові player1 і player2, до чотирьох інших додайте в player3…player6. За замовчуванням відповідь приватна; щоб показати її всім у каналі, додайте private:False. Результат бот показує сторінками з кнопками перегортання, які вимикаються після 3 хв без натискань. Тексти відповідей російською: «Игры с участием указанных игроков не найдены». На сайті схожий пошук дають Ігри на сайті і пошук у верхній панелі.
Статистика націй і час ігор¶
Ці дві команди за замовчуванням відповідають приватно. Щоб показати відповідь усім у каналі, додайте private:False, а для /gametime — is_private:False.
Команда /nations stats рахує лише ігри, що стартували за обраний період і в яких бани ставили щонайменше 3 різні гравці. Тому ігор Duel у цій статистиці немає. Без параметрів команда бере такі завершені ігри за останні 30 днів.
Період задає параметр period:
period:week— 7 днів;period:month— 30 днів;period:season— 90 днів, а не сезон рейтингу;period:year— 365 днів;period:all— усі ігри.
Параметр status:active показує ігри в стані «В процесі».
Команда /gametime малює карту за київським часом. Інший пояс оберіть у параметрі timezone: почніть набирати назву міста англійською, і Discord запропонує відповідні пояси. Наприклад, з timezone:Europe/Berlin карта буде за берлінським часом. Числа для карти бот оновлює не частіше ніж раз на годину, а force_update:True оновлює їх одразу. Подробиці — Статистика націй і час ігор.
Команди для модераторів¶
Ці команди виконує лише модератор: власник сервера, учасник із правом Discord «Адміністратор» або з роллю модератора сервера. Роль модератора задає адміністратор сервера командою /guild config. Подробиці — Гравці, модератори й адміністратори.
| Команда | Що робить | Що вказати |
|---|---|---|
/moderator panel |
Ставить у поточному каналі панель гри: список останніх ігор і кнопки «FFA», «Duel», «Статистика гравця», «Інформація» | — |
/leaderboard show |
Публікує в поточному каналі таблицю лідерів поточного сезону, яку бот оновлює щогодини | — |
/leaderboard season |
Публікує в поточному каналі таблицю лідерів вказаного або попереднього сезону, яку бот не оновлює | season_id — номер сезону; без нього бот бере попередній сезон |
/season list |
Приватно показує перелік сезонів: до 10 сезонів із позначкою «🟢 Active» чи «⚫ Closed», номером і датами | — |
/season info |
Приватно показує картку активного сезону: «Status», «Початок», «Тривалість» у днях і номер сезону | — |
/guild steam_game_id |
Задає Steam Game ID сервера; бот відповідає «Done ✅» або «Failed ❌», а обране значення видно на картці з /guild config |
game_id — один зі списку: Civilization V чи Spacewar |
/guild log_channel |
Вмикає журнал подій у вказаному каналі або вимикає його | channel — канал журналу; без нього журнал вимикається |
/guild notifications configure |
Вмикає сповіщення про збір і задає їхні налаштування | channel, cooldown_minutes, role, restricted_role |
/guild notifications status |
Приватно показує налаштування сповіщень і те, чи готовий бот їх надсилати | — |
/guild notifications disable |
Вимикає сповіщення про збір | — |
Панель гри й таблиця лідерів¶
Панель гри й таблиця лідерів з'являються в каналі, де виконали команду. Бот оновлює на сервері лише одну панель гри й одну таблицю лідерів. Повторна команда /moderator panel чи /leaderboard show видаляє попереднє повідомлення, навіть якщо воно в іншому каналі. Так панель чи таблицю переносять в інший канал.
На /moderator panel бот окремо не відповідає: у каналі просто з'являється панель. Список ігор на ній бот оновлює кожні 5 хв, а також одразу після старту, завершення чи переривання гри. На /leaderboard show бот приватно відповідає «Leaderboard has been created!».
Команда /leaderboard season не змінює ні канал таблиці лідерів, ні таблицю поточного сезону. Номер сезону для її параметра season_id покаже /season list. Починає й закриває сезон лише власник бота, бо сезон спільний для всіх серверів. Подробиці — Панель гри, Таблиця лідерів, Сезони.
Журнал подій і сповіщення про збір¶
Команда /guild log_channel з параметром channel вмикає журнал подій у цьому каналі. Бот приватно відповідає «Log channel set to #… successfully.» Та сама команда без параметра вимикає журнал, і бот відповідає «Log channel cleared successfully.»
Команда /guild notifications configure щоразу задає всі налаштування сповіщень заново:
| Параметр | Що задає | Що буде без нього |
|---|---|---|
channel |
Текстовий канал для сповіщень | Discord не дасть надіслати команду |
cooldown_minutes |
Перерву між сповіщеннями однієї гри, від 3 до 60 хв | 15 хв |
role |
Роль, яку бот згадує над сповіщенням | Роль для сповіщень знімається |
restricted_role |
Роль, власники якої не можуть надсилати сповіщення | Обмежувальна роль знімається |
Щоб змінити один параметр, спершу подивіться решту командою /guild notifications status. Потім укажіть їх у /guild notifications configure ще раз: параметр, якого ви не вказали, бот скидає, як показано в таблиці. Подробиці — Журнал подій, Налаштування сповіщень про збір.
Команди для адміністраторів сервера¶
Адміністратор сервера — учасник із правом Discord «Керувати сервером». Власник сервера й учасники з правом «Адміністратор» мають це право автоматично.
| Команда | Що робить | Що вказати |
|---|---|---|
/guild config |
Публікує в каналі англомовну картку налаштувань сервера з меню «Select what you want to configure ...» | — |
Пункт «Channels» задає канал історії ігор (меню «History channel...») і канал збору ігор (меню «Active games channel...»). Пункт «Roles» задає роль модератора (меню «Moderator role ...»). Ці меню бот надсилає приватно, і вони зникають через 60 с.
Право «Керувати сервером» саме по собі модератором не робить. Щоб ставити панель гри й таблицю лідерів, потрібне право «Адміністратор» або роль модератора. Подробиці — Підключення CivBot до сервера.
Що може піти не так¶
- Команди
/gameнемає в списку. В українському клієнті Discord ця група називається/гра. Наберіть/грай оберіть/гра завершитичи/гра оновити. - Бот пише «Moderator role not set. Please contact server administrator.» Так відповідають
/moderator panel,/guild log_channelі/guild steam_game_id, коли на сервері не задано роль модератора, а у вас немає права «Адміністратор». Попросіть адміністратора сервера задати роль модератора й видати її вам. - Бот пише «You are not moderator.» Роль модератора на сервері задано, але у вас її немає, як і права «Адміністратор». Попросіть адміністратора сервера видати вам роль модератора.
- Бот пише «You must be a moderator to use this command.» Команди
/leaderboard show,/leaderboard season,/season listі/season infoвиконує лише модератор. Попросіть модератора сервера. - Команда сповіщень відповідає «У вас немає доступу до цієї дії.» Команди
/guild notificationsвиконує лише модератор. Попросіть адміністратора сервера видати вам роль модератора. - Бот не виконує
/guild configі пише «You don't have permissions to do that!» Ця приватна відповідь зникає за 3 с. Для/guild configпотрібне право Discord «Керувати сервером». Попросіть адміністратора сервера. /leaderboard seasonвідповідає «Предыдущие сезоны не найдены». Минулих сезонів ще немає. Таблицю поточного сезону публікує/leaderboard show./гра завершитивідповідає «You are not in this lobby.» У параметрігравказано номер гри, у якій ви не граєте, а ви не модератор. Перевірте номер у назві треду гри./гра завершитивідповідає «Game ID not found.» Команду виконано поза тредом гри без параметрагра. Виконайте її в треді гри або вкажіть номер гри./гра завершитивідповідає «Can't do this command in current lobby state.» Гра з номером у параметрігране в стані «В процесі»: її вже завершили чи перервали, або такого номера немає. Перевірте номер у назві треду гри./гра завершитивідповідає «Game was already finished by another player or not found. Please refresh to see results.» Гру вже завершили чи перервали, наприклад, поки ви набирали команду. Її стан видно на картці гри в треді./гра завершитивідповідає «Всі гравці мають вибрати нації перед завершенням гри!» Комусь із гравців ще не обрано націю, і сайт не прочитав її зі сейву. Оберіть її в треді гри або на сайті й повторіть команду./гра завершитивідповідає «Переможець має бути гравцем цієї гри.» У параметріпереможецьвказано того, хто не грає в цій грі. Оберіть гравця з картки гри./гра оновитивідповідає «Вкажіть game_id або викличте команду з треду гри». Команду виконано поза тредом гри без номера. Додайте параметрграабо виконайте команду в треді гри.- «Профіль на сайті» відповідає «Сайт не показує ігри цього сервера.» Цей пункт діє лише на сервері, з яким працює сайт CivBot.
- «Профіль на сайті» відповідає «У цього гравця ще немає ігор на сайті.» Бот ще не знає цього гравця; профіль з'явиться, коли він зіграє.
/search games_by_playersвідповідає «Необходимо указать минимум двух игроков». Вказано одного гравця або двічі одного й того ж. Оберіть щонайменше двох різних.- Discord не приймає число в параметрі. Параметр
ходиприймає ціле число від 1 до 330, аcooldown_minutes— від 3 до 60. - Напис російською. Команда
/gametimeвідповідає російською за будь-якої мови сервера. Шапка таблиці лідерів («Топ игроков») теж завжди російська. Подробиці — Мова бота.
Пов'язане¶
- Гравці, модератори й адміністратори
- Завершення гри
- Завершення гри на сайті
- Сейв у треді гри
- Профіль гравця
- Ігри на сайті
- Тред гри
- Статистика гравця
- Статистика націй і час ігор
- Таблиця лідерів
- Сезони
- Панель гри
- Журнал подій
- Налаштування сповіщень про збір
- Підключення CivBot до сервера
- Повідомлення бота
- Мова бота