Сейв у треді гри¶
На сервері, з яким працює сайт CivBot, гравець гри кидає файл сейву Civilization V (.Civ5Save) у тред своєї гри, і бот передає його сайту. Сайт прикріплює сейв до гри, сам розставляє очевидних гравців і, якщо все готово, закриває гру, а бот відповідає карткою й реакцією під повідомленням.
Учасники¶
- Гравець гри — кидає файл у тред гри; сайт приймає сейви лише від тих, хто має місце в цій грі. Акаунт на сайті для цього не потрібен.
- Бот — ставить реакції, віддає файл сайту й показує відповідь карткою.
- Сайт — читає сейв, прикріплює його до гри, зіставляє гравців і закриває гру, коли можна.
Кроки¶
Це діє на сервері, з яким працює сайт CivBot. На інших серверах бот файли в тредах не опрацьовує і нічого не відповідає.
sequenceDiagram
participant G as Гравець
participant B as Бот
participant S as Сайт
G->>B: кидає файл .Civ5Save у тред гри
B-->>G: ставить ⏳ на повідомлення
B->>S: передає файл
S-->>B: прикріплює сейв, зіставляє гравців, за потреби закриває гру
B-->>G: показує картку відповіді й ставить ✅ або ❌
B-->>G: перемальовує картку гри в треді
- Киньте файл у тред гри. Надішліть у тред гри повідомлення з файлом, назва якого закінчується на .Civ5Save. Якщо файлів кілька, бот бере перший такий.
- Зачекайте на ⏳. Поки сайт читає файл, під вашим повідомленням стоїть реакція ⏳.
- Прочитайте картку. Бот відповідає на ваше повідомлення карткою, не згадуючи вас. Під карткою є кнопка «Відкрити гру», яка веде на сторінку гри на сайті. Мова картки — основна мова сервера.
- Подивіться на реакцію. Реакція ✅ означає, що сейв прикріплено до гри, а ❌ — що ні.
- Перегляньте картку гри. Після прикріплення бот перемальовує картку гри в треді, щоб вона показувала поточний стан.
Які картки показує бот¶
| Картка | Текст | Реакція |
|---|---|---|
| «Сейв прийнято» (зелена) | «Сейв прикріплено до гри.» | ✅ |
| «Хід N прийнято» (зелена) | «Сейв прикріплено до гри.» — коли відомий хід | ✅ |
| «Сейв уже прийнято» (синя) | «Цей файл уже завантажували раніше.» | ✅, якщо сейв прикріплено до гри, інакше ❌ |
| «Сейв не підходить до цієї гри» (червона) | «Гравці або нації у файлі відрізняються від цієї гри.» | ❌ |
| «Сейв отримано, але не прикріплено» (помаранчева) | пояснення, чому сейв не прикріплено | ❌ |
| «Сейв не прийнято» (червона) | причина відмови | ❌ |
Під карткою «Сейв не підходить до цієї гри» є ще одна кнопка, «Інспектор сейвів». Вона веде до перегляду сейву, який нічого не прикріплює; подробиці — Інспектор сейвів.
Що відбувається на сайті далі¶
Прийнятий сейв прикріплюється до гри одразу, окремої кнопки натискати не треба. Сайт сам зіставляє з місцями в грі гравців, у яких не лишається сумнівів, від імені того, хто надіслав файл. Якщо гру вже завершено і все розставлено, сайт закриває її сам. Решту видно на сторінці гри: що бракує і кого ще треба зіставити, можна вирішити там. Подробиці — Сейви гри на сайті і Сторінка гри.
Результат той самий, що й після додавання сейву на сторінці гри: обидва шляхи ведуть до однакового стану гри.
Правила й винятки¶
Сейв приймає лише гравець цієї гри¶
Файл від людини без місця в грі бот відхиляє карткою «Сейв не прийнято» з текстом «Завантажити сейв можуть лише гравці цієї гри.» Модератор, який у цій грі не грає, теж отримує таку відповідь. Якщо потрібно, гравець гри може кинути сейв замість нього.
Сейв гри не більший за 15 МБ¶
Межа та сама, що на сторінці гри. Більший файл не прикріплюється: на повідомлення бот відповідає червоною карткою «Сейв не прийнято» з поясненням. Подробиці — Сейви гри на сайті.
Не більше 10 спроб на добу¶
Для одного гравця в одній грі сайт приймає до 10 спроб за 24 години. Далі бот відповідає «Забагато завантажень. Спробуйте трохи пізніше.»
Закрита або перервана гра сейвів не приймає¶
Для гри, яку вже закрито, відповідь така: «Рейтинги цієї гри остаточні, нові сейви не приймаються.» Для перерваної: «Цю гру скасовано або закрито для сейвів.»
Сейв без гравців не прикріплюється¶
Якщо у файлі ще немає гравців, схоже на початковий автосейв, бот показує картку «Сейв отримано, але не прикріплено» з порадою кинути сейв із пізнішого моменту гри, найкраще після її завершення.
Мовчазні випадки¶
У цих випадках бот не відповідає взагалі:
- назва файлу не закінчується на .Civ5Save;
- повідомлення надіслано поза тредом гри;
- повідомлення надіслано на сервері, з яким сайт не працює;
- файл надіслав інший бот.
Бот підказує кинути сейв¶
Це діє на сервері, з яким працює сайт CivBot; на інших серверах цих підказок немає.
- При старті гри. У першому повідомленні треду, після згадок гравців, стоїть рядок «💡 Киньте сюди файл сейву (.Civ5Save) після гри, щоб графіки гри лишилися на сайті.»
- Після завершення гри. Якщо гру завершено, а сейва до неї ще не прикріплено, бот один раз надсилає в тред картку «Збережіть історію цієї гри» з текстом «Киньте сюди файл сейву (.Civ5Save): сайт покаже графіки та історію гри.» і кнопкою «На сайті». Картка з'являється і коли гру завершують командою
/гра завершити(/game finish), і коли її завершують на сайті; подробиці — Завершення гри і Завершення гри на сайті. Якщо така картка вже є серед останніх повідомлень треду, нову бот не надсилає.
Картка гри веде на сайт¶
На сервері, з яким працює сайт, заголовок картки гри в треді веде на сторінку гри на сайті. Під карткою гри в процесі та перерваної гри є кнопка «На сайті», а під карткою завершеної гри — «Результати на сайті». Картка гри перемальовується і тоді, коли гру змінили на сайті: прикріпили сейв, зіставили гравців, обрали націю чи завершили гру. Подробиці — Тред гри.
Що може піти не так¶
- Бот не відповів на файл. Перевірте, що назва закінчується на .Civ5Save, що ви в треді гри і що це сервер, з яким працює сайт. В інших випадках бот мовчить.
- Під повідомленням довго стоїть ⏳. Сайт ще читає файл. Зачекайте відповіді; якщо сайт не встиг, бот скаже «Сайт не відповів. Спробуйте пізніше.»
- Бот пише «Сайт не зміг прочитати цей файл.» Сайт не розібрав файл. Киньте сейв Civilization V ще раз або перегляньте його в інспекторі.
- Бот пише «Сайт не встиг прочитати цей файл.» Файл читався надто довго. Спробуйте ще раз пізніше.
- Бот пише «Сайт зараз читає інші сейви. Спробуйте за хвилину.» Сайт зайнятий. Повторіть через хвилину.
- Бот пише «Завантаження тривало надто довго. Спробуйте ще раз.» Надішліть файл знову.
- Сейв прийнято, але гра не закрилась. Гра закривається сама, лише коли її завершено, усіх гравців розставлено й жодна заміна не лишилась відкритою. Що саме бракує, видно на сторінці гри.