Завершение игры¶
После партии участник игры или модератор записывает результат командой /игра завершить (/game finish), и игра получает состояние «Завершена». Бот сохраняет победителя, тип победы и количество ходов, а в FFA ещё и меняет рейтинг игроков.
Участники¶
- Игрок — любой участник игры: после партии записывает её результат командой
/игра завершить. - Модератор — может завершить любую игру своего сервера командой
/игра завершить, даже если сам в ней не играл. - Бот — проверяет условия, записывает результат, обновляет карточку игры в треде и список последних игр на панели игры, а в FFA меняет рейтинг.
Шаги¶
sequenceDiagram
participant G as Игрок
participant B as Бот
G->>B: выполняет /игра завершить в треде игры
alt у кого-то нет нации
B-->>G: отвечает «Все игроки должны выбрать нации перед завершением игры!»
else победитель не играет в этой игре
B-->>G: отвечает «Победитель должен быть игроком этой игры.»
else нация есть у каждого игрока
Note over B: игра получает состояние «Завершена»
B-->>G: обновляет карточку игры и убирает с неё меню и кнопки
B-->>G: в FFA показывает изменение рейтинга у каждого игрока
B-->>G: отвечает «Done!»
end
- Проверьте, что у каждого игрока есть нация. Нация засчитывается, если она выбрана. Значок рядом с порядковым номером игрока на карточке игры показывает, что нация есть. Если значка нет, выберите нацию: после старта с драфтом — в меню «Выбрать кто за какую нацию играет», после старта без драфта — в сообщениях «Назначение наций». Подробнее — Выбор наций и обмен слотами.
- Откройте тред игры. Здесь бот сам определяет, какую игру завершают. Над карточкой игры стоит подсказка с командами: нажмите
/игра завершитьрядом с «Завершить игру», и Discord подставит команду в поле сообщения. В другом канале укажите номер игры в параметреигра: его видно в названии треда, например «248 — FFA 6 Patch». - Наберите команду. Заполните три обязательных параметра:
победитель,тип_победыиходы. Вне треда добавьте четвёртый —игра. Что указать в каждом, объясняет раздел Параметры команды. - Отправьте команду. Бот сразу завершает игру и приватно отвечает по-английски «Done!».
- Проверьте карточку игры. Карточка в треде получает состояние «Завершена» и золотую полосу. Что ещё на ней меняется, описывает раздел Что меняется после завершения.
Параметры команды¶
| Параметр | Что указать | Когда нужен |
|---|---|---|
победитель |
Игрока этой игры, который победил | Всегда |
тип_победы |
Один тип победы из списка | Всегда |
ходы |
Количество ходов партии, целое число от 1 до 330 | Всегда |
игра |
Номер игры | Только вне треда игры |
В параметре победитель Discord предлагает всех участников сервера: выберите игрока с карточки игры.
В параметре тип_победы Discord показывает пять типов: «Туристическая 🎨», «Научная 🧪», «Дипломатическая 🕊️», «Военная 🗡️» и «Признание победителя 🤝». Выбрать можно только один тип из списка, свой текст вписать нельзя.
Пример для треда игры: Orion одержал научную победу на 212-м ходу.
Вне треда тот же результат записывают с номером игры:
Что меняется после завершения¶
Бот обновляет карточку игры в треде:
- в заголовке карточки стоит состояние «Завершена», а полоса становится золотой;
- под заголовком появляются 🥇 с типом победы и 🏇 с количеством ходов;
- рядом с победителем стоит 🏆;
- в FFA рядом с каждым игроком видно изменение рейтинга, например «+15» или «-10», а ниже — звёзды его ранга после игры;
- в Duel рейтинг не меняется, и рядом с игроками стоят звёзды их ранга;
- пропадают подсказка с командами над карточкой, а также меню и кнопка «Отменить игру» под ней;
- Steam-ссылка с карточки пропадает.
Если игру стартовали без драфта, бот удаляет из треда сообщения «Назначение наций». Список последних игр на панели игры тоже обновляется. Подробнее — Панель игры.
Это действует на сервере, с которым работает сайт CivBot. Заголовок карточки завершённой игры ведёт на её страницу на сайте, а под карточкой есть кнопка «Результаты на сайте». Если к игре ещё не прикреплён сейв, бот один раз отправляет в тред сообщение «Сохраните историю этой игры» с текстом «Бросьте сюда файл сейва (.Civ5Save): сайт покажет графики и историю игры.» и кнопкой «На сайте». Подробнее — Сейв в треде игры.
Если на сервере есть таблица лидеров, новый рейтинг появится в ней при ближайшем ежечасном обновлении. Завершённая игра любого режима попадает в статистику игрока. Подробнее — Таблица лидеров и Статистика игрока.
Правила и исключения¶
Завершить игру может участник игры или модератор¶
Команду выполняет любой игрок этой игры, не только победитель или создатель игры. Модератор завершает любую игру своего сервера, даже если сам в ней не играл. Если в параметре игра указать номер игры, в которой вы не играете, а вы не модератор, бот отвечает по-английски «You are not in this lobby.» Подробнее — Игроки, модераторы и администраторы.
Завершить можно только игру в состоянии «В процессе»¶
У сбора ещё нет номера, поэтому завершить его нельзя: сбор отменяют кнопкой 🗑️ на карточке сбора. Завершённую или прерванную игру завершить уже нельзя. Если указать номер такой игры в параметре игра, участнику игры или модератору бот отвечает по-английски «Can't do this command in current lobby state.» Подробнее — Создание игры и сбор игроков и Прерывание игры.
Перед завершением у каждого игрока должна быть нация¶
Нация игрока засчитывается, если она выбрана. На сервере, с которым работает сайт CivBot, она засчитывается и тогда, когда её прочитали из сейва, прикреплённого к игре: Сейв в треде игры или Сейвы игры на сайте. Пока хотя бы у одного игрока нет нации, бот игру не завершает. Он отвечает на языке вашего Discord: «Все игроки должны выбрать нации перед завершением игры!» Если Discord у вас не на русском и не на украинском, ответ английский: «All players must pick their nations before finishing!» Подробнее — Выбор наций и обмен слотами.
Победителем может быть только игрок этой игры¶
Discord предлагает в параметре победитель всех участников сервера, но победителем может быть только игрок этой игры. Выбирайте его среди игроков на карточке игры. Если указать человека, который не играет в этой игре, бот приватно отвечает на языке вашего Discord: «Победитель должен быть игроком этой игры.» Если Discord у вас не на русском и не на украинском, ответ английский: «The winner must be a player of this game.» Игра при этом не завершается.
Остальных игроков отдельно не отмечают¶
Команда /игра завершить записывает победителя, тип победы и количество ходов. Параметров, чтобы отметить, кто из остальных игроков выжил, а кто вышел из партии раньше, у неё нет.
Результат записывается сразу¶
В списке команд Discord рядом с /игра завершить стоит описание «Записать результаты и отправить на подтверждение». Отдельного подтверждения нет: игра получает состояние «Завершена» сразу после команды. Кнопки «Отменить игру» после этого нет, поэтому прервать завершённую игру нельзя.
Проверьте результат, прежде чем отправлять команду
Команда завершает игру сразу, и изменить победителя, тип победы или количество ходов потом нельзя. Сверьте параметры с итогом партии. Подробнее — Параметры команды.
Рейтинг меняют только игры FFA¶
После завершения игры FFA бот меняет рейтинг каждого её игрока и показывает изменение на карточке игры. Игра Duel записывает победителя, тип победы и количество ходов, но рейтинг не меняет. Подробнее — Как считается рейтинг и Ранги и звёзды.
Завершить можно и на сайте¶
Это действует на сервере, с которым работает сайт CivBot. Игрок игры, который вошёл на сайт, завершает игру кнопкой «Завершить игру» на странице игры. Результат и рейтинг такие же, как после /игра завершить, а карточка игры в треде обновляется. На сайте завершает только игрок этой игры: модератор, который не играет в ней, там только просматривает, а в Discord завершает командой. Подробнее — Завершение игры на сайте.
Рейтинг за игру меняется один раз¶
Если игру уже завершил кто-то другой, в Discord или на сайте, повторная команда в её треде ничего не меняет. Бот отвечает по-английски «Game was already finished by another player or not found. Please refresh to see results.» Рейтинг второй раз не меняется. Если карточка игры выглядит по-старому, обновите её командой /игра обновить (/game refresh).
На сервере, с которым работает сайт, закрытие игры на сайте может переписать изменения рейтинга, но только когда подтверждена замена игрока: тогда рейтинг считается по тем, кто действительно играл. Без подтверждённых замен рейтинг остаётся таким, как его записал бот. Подробнее — Страница игры.
Что может пойти не так¶
- Ответ бота пропал, прежде чем вы его прочитали. Ответы на
/игра завершитьвидите только вы. Отказы «You are not in this lobby.», «Can't do this command in current lobby state.» и «Game ID not found.» пропадают через 20 с. Повторите команду, чтобы увидеть ответ снова. - Бот пишет «Все игроки должны выбрать нации перед завершением игры!» У кого-то из игроков не выбрана нация, и сейв её не показывает: рядом с его номером на карточке игры нет значка нации. Выберите нацию в треде игры или, на сервере, с которым работает сайт, прикрепите сейв, а затем повторите команду.
- Бот пишет «Победитель должен быть игроком этой игры.» В параметре
победительуказан человек, который не играет в этой игре. Выберите победителя среди игроков на карточке игры и повторите команду. - Бот пишет «You are not in this lobby.» Вы не играете в игре с указанным номером и не являетесь модератором. Проверьте номер в названии треда игры. Если номер правильный, попросите завершить игру кого-нибудь из её игроков или модератора.
- Бот пишет «Can't do this command in current lobby state.» Игра с указанным номером не в состоянии «В процессе»: её уже завершили или прервали, или игры с таким номером нет. Проверьте номер в названии треда игры.
- Бот пишет «Game ID not found.» Команда выполнена в канале, а не в треде, и без параметра
игра. Выполните её в треде игры или укажите номер игры. - Бот пишет «Укажите game_id или вызовите команду из треда игры». Команда выполнена в треде, который не относится ни к одной игре. Выполните её в треде игры или укажите номер игры в параметре
игра. - Бот пишет «Game was already finished by another player or not found. Please refresh to see results.» Игру уже завершили. Повторное завершение ничего не меняет, и рейтинг второй раз не меняется. Если карточка выглядит по-старому, выполните
/игра обновить. - Discord не принимает количество ходов. Параметр
ходыпринимает только целое число от 1 до 330. - Под карточкой игры пропали меню и кнопки. Игра завершена: после этого нации не меняют, слотами не обмениваются, а прервать игру уже нельзя.
См. также¶
- Игра
- Выбор наций и обмен слотами
- Тред игры
- Прерывание игры
- Создание игры и сбор игроков
- Как считается рейтинг
- Ранги и звёзды
- Таблица лидеров
- Статистика игрока
- Панель игры
- Завершение игры на сайте
- Сейв в треде игры
- Сейвы игры на сайте
- Страница игры
- Игроки, модераторы и администраторы
- Команды бота
Эта страница переведена с помощью ИИ и сверена с терминами бота.