Журнал подій¶
Журнал подій — канал сервера, куди CivBot записує дії гравців і модераторів у зборах та іграх. Вмикає його модератор, а читають, щоб з'ясувати, хто кого вигнав, хто скасував збір чи перервав гру.
Що потрібно¶
До початку потрібні чотири речі:
- Права модератора — журнал вмикає власник сервера, учасник із правом Discord «Адміністратор» або з роллю модератора сервера; подробиці — Гравці, модератори й адміністратори.
- Канал — текстовий канал сервера для журналу; доступ до нього задають дозволи каналу в Discord, а бот їх не змінює.
- Дозволи бота — у каналі журналу боту потрібні дозволи «Переглядати канал», «Надсилати повідомлення» і «Вбудовувати посилання».
- Панель гри — на сервері вже стоїть панель гри: на ній створюють пробну гру в кроці 3; подробиці — Панель гри.
Кроки¶
- Підготуйте канал. Створіть текстовий канал для журналу або оберіть наявний. У налаштуваннях каналу дайте боту дозволи «Переглядати канал», «Надсилати повідомлення» й «Вбудовувати посилання». Перевірка: бот є в списку учасників цього каналу. Чи може бот туди писати, покаже крок 3.
- Увімкніть журнал. У будь-якому каналі сервера наберіть
/guild log_channelі в параметріchannelоберіть канал журналу, наприклад/guild log_channel channel:#журнал-подій. Перевірка: бот приватно відповідає «Log channel set to #журнал-подій successfully.» - Перевірте перший запис. Сама команда в журнал нічого не пише: записи з'являються з подіями. Створіть гру на панелі гри й одразу скасуйте збір кнопкою 🗑️ на картці збору. Перевірка: у журналі з'являються записи «🎮 Гру створено» і «🗑️ [Збір] Гру скасовано».
Що ще можна налаштувати¶
На сервері один журнал подій. Щоб перенести його в інший канал, виконайте /guild log_channel з новим каналом. Нові записи з'являтимуться в новому каналі, а старі лишаться в попередньому.
Щоб вимкнути журнал, виконайте /guild log_channel без параметра channel. Бот приватно відповість «Log channel cleared successfully.» Нових записів більше не буде, а вже надіслані лишаться в каналі.
Що записує бот¶
Бот записує в журнал вісім видів подій. Кожна подія — окреме повідомлення в каналі журналу.
| Подія | Коли з'являється | Що в записі |
|---|---|---|
| «🎮 Гру створено» | Гравець створив гру на панелі гри | «@Orion створив гру», де «гру» — посилання на картку збору; тип і режим гри |
| «➕ Гравець приєднався» | Гравець записався в збір | Хто приєднався, список «Були в лобі (2):», якщо в зборі вже хтось був, і рядок «Всього: 3» |
| «🚪 Гравець вийшов» | Гравець виписався зі збору | Хто вийшов, список «Залишились (2):», якщо в зборі хтось лишився, і рядок «Всього: 2» |
| «❌ Гравця вигнано» | Учасник гри або модератор вигнав гравця кнопкою «Вигнати» | Хто кого вигнав: «@Orion вигнав @Kai» |
| «🗑️ [Збір] Гру скасовано» | Учасник гри або модератор скасував збір кнопкою 🗑️ | Хто скасував збір: «@Orion скасував гру» |
| «🗑️ [Гра #248] Гру скасовано» | Учасник гри або модератор перервав гру кнопкою «Скасувати гру» в треді гри | Хто перервав гру і рядок «Причина: …», якщо причину вказали |
| «🔄 Обмін слотами» | Два гравці FFA обмінялися слотами за взаємним запитом | «@Orion та @Vega обмінялись слотами» і посилання «Перейти до гри» на картку гри |
| «📣 Сповіщення про збір» | Учасник гри або модератор надіслав сповіщення кнопкою «Сповістити про збір» | Хто надіслав, рядок на кшталт «Patch FFA6 · 4/6», «Канал: #…» і посилання «Перейти до гри» на картку збору |
Перервану гру запис називає скасованою, а номер гри стоїть у заголовку. Причину переривання бот показує лише в журналі. Подробиці — Переривання гри.
Журнал бот пише основною мовою сервера в Discord: українською, російською чи англійською. Якщо основна мова сервера інша, журнал ведеться англійською. Подробиці — Мова бота.
Будова запису¶
Записи складені за одним зразком:
- Час — перший рядок під заголовком, з точністю до секунди. Унизу запису стоїть ще й дата з часом. Обидва Discord показує у вашому часовому поясі.
- Хто що зробив — основний рядок зі згадками гравців; згадки в журналі нікого не сповіщають.
- Гра — останній рядок: тип і режим великими літерами та творець гри, наприклад «PATCH FFA | Автор: @Orion».
- Колір смуги — зелений для створення гри й входу, помаранчевий для виходу, червоний для вигнання й скасування, синій для обміну слотами й сповіщення.
- Аватар — праворуч угорі: того, хто виконав дію, а в записі про вигнання — вигнаного гравця; запис про обмін слотами аватара не має.
Номер гра отримує під час старту, тож у записах про збір його немає. У записах про стартовану гру номер стоїть на початку останнього рядка: «Гра #248 • PATCH FFA | Автор: @Orion». У записі «🎮 Гру створено» останній рядок має лише тип і режим, без автора: творця названо в основному рядку. Запис «📣 Сповіщення про збір» замість рядка з автором має рядок на кшталт «Patch FFA6 · 4/6»: тип гри, режим і найбільша кількість гравців у ньому (FFA6 — FFA до 6 гравців), а далі — скільки гравців уже записалося (4 із 6).
Чого немає в журналі¶
Журнал містить лише події з розділу Що записує бот. Бот не записує туди:
- старт гри, з драфтом чи без;
- завершення гри командою
/гра завершити(/game finish) чи на сайті; - збір, що зник сам, бо 3 години ніхто не натискав його кнопок;
- готовність, бани, вибір націй і Steam-посилання;
- оновлення гри командою
/гра оновити(/game refresh).
Стартовану гру шукайте за тредом у каналі історії ігор: на картці гри в треді написано її стан — «В процесі», «Завершена» чи «Перервана». Подробиці — Тред гри.
Що може піти не так¶
- У журналі порожньо. Сама команда
/guild log_channelу журнал нічого не пише: перший запис з'являється з першою подією, наприклад зі створенням гри. Якщо ігри вже створювали, а записів немає, боту бракує в каналі журналу дозволу «Переглядати канал», «Надсилати повідомлення» чи «Вбудовувати посилання». Дайте боту ці дозволи в налаштуваннях каналу. Команду повторювати не треба: записи з'являться з наступної події. - Записи раптом перестали з'являтися. Канал журналу видалили, у бота забрали дозволи в ньому, або хтось вимкнув журнал командою без параметра
channel. Поверніть боту дозволи або виконайте/guild log_channelз потрібним каналом. - Бот відповідає «Moderator role not set. Please contact server administrator.» На сервері не задано роль модератора, а у вас немає права «Адміністратор». Попросіть адміністратора сервера задати роль модератора й видати її вам. Подробиці — Гравці, модератори й адміністратори.
- Бот відповідає «You are not moderator.» Роль модератора на сервері задано, але у вас її немає, як і права «Адміністратор». Попросіть адміністратора сервера видати вам цю роль.
- Збір зник, а запису про скасування немає. Якщо гра стартувала, шукайте її тред у каналі історії ігор: старт у журнал не пишеться. Збір, у якому 3 години ніхто не натискав кнопок, бот прибирає сам і в журнал цього теж не пише. Запис «🗑️ [Збір] Гру скасовано» з'являється, лише коли збір скасовують кнопкою 🗑️.
- У журналі немає старту чи завершення гри. Ці події бот у журнал не записує. Шукайте тред гри в каналі історії ігор.
- Записи англійською чи російською. Журнал ведеться основною мовою сервера в Discord, а не мовою вашого клієнта. Подробиці — Мова бота.