Table of Contents
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Обзор
Практически все строки, которые использует бот, хранятся в файле с форматом TOML (обычно strings.toml).
Эти строки, в зависимости от контекста, могут содержать различные теги.
Теги используются для подстановки данных в строку во время работы программы.
Как правило, строки используются для ответа на команду.
Контекст и теги
В зависимости от выполняемой команды, форматировщик строк может обладать различным контекстом.
Передаваемый контекст предоставляет различные теги для использования в строках.
Глобальный контекст
Глобальный контекст может использоваться во всех строках и предоставляет следующие теги:
{n}: Переход на новую строку (\n){v}: Версия программы (напр.0.10.0){url}: Строкаurlиз файла строк (предполагается, что это ссылка на веб карту){pt}: Строкаpointsиз файла строк. Название "валюты" для очков, автоматически подставляется в контексте награды или баланса
Контекст квеста
Предоставляет теги для доступа к полям квеста:
{q.id}: Идентификатор квеста (напр.#0){q.difficulty}: Сложность квеста, значение подставляется из таблицыdifficultyв файле строк в зависимости от самой сложности{q.reward}: Награда за квест (напр.50 {pt}){q.name}: Название квеста{q.description}: Описание квеста{q.answer}: Ожидаемый ответ на квест, следует использовать только в командах администратора{q.limit}: Лимит количества ответов на квест
Контекст выполнения квеста
Предоставляет тег для получения текущего количества пользователей, выполнивших квест
{q.completions}: Количество пользователей, выполнивших квест
Контекст пользователя
Предоставляет теги для обращения к пользователю:
{u.mention}: Пинг пользователя (напр.@Second Beam){u.name}: Глобальное имя пользователя (напр.Second Beam)
примечание: {u.name} не учитывает имя пользователя в гильдии
Контекст текущего баланса
Предоставляет тег текущего баланса пользователя, то есть без учёта разблокированных комнат:
{b.current}: Текущий баланс пользователя (напр.50 {pt})
Контекст полного баланса
Предоставляет теги баланса пользователя с учётом разблокированных комнат:
{b.current}: Текущий баланс пользователя (напр.50 {pt}){b.rooms}: Суммарная стоимость разблокированных пользователем комнат (напр.50 {pt}){b.full}: Сумма текущего баланса пользователя и стоимости комнат (напр.100 {pt})
Контекст сообщения
Предоставляет теги для получения доступа к сообщению:
{m.link}: Ссылка на сообщение{m.id}: Идентификатор сообщения, используемый в социальных командах{m.channel}: Канал, в который было отправлено сообщение
Частный контекст
Иногда команды предоставляют теги {value} и/или {text}, которые могут содержать любое значение. Для работы с ними необходимо прочитать документацию строки, в которой используется тег.
Строки
Значения по умолчанию можно найти здесь.
Также есть пример со строками, переведёнными на русский язык.
url:
Строка, передаваемая в тег {url}
Контекст: глобальный
Пример: https://2ndbeam.ru/sq/map
points:
Строка, передаваемая в тег {pt}
Контекст: глобальный
Пример: points
info:
Ответ на команду /info (/инфо)
Контекст: глобальный
Пример: SquadQuest version {v}{n}Find the map here: {url}
init_reply:
Ответ на команду /init (/инит)
Контекст: глобальный
Пример: Updated linked channels and guild.
timer_reply:
Ответ на команду /timer (/таймер)
Контекст:
- глобальный
{value}: Время, на которое выставлен таймер (напр.9:00:00)
Пример: Set daily timer on {value}.
примечание: строки ниже находятся во вложенных таблицах и обращение к ним в документации осуществляется как таблица.строка, напр. account.reset.
[account]
reset:
Ответ на команду /reset (/сброс)
Контекст:
- глобальный
- пользователь, чей аккаунт был сброшен
Пример: Reset {u.name} account
give_pt:
Ответ на команду /balance give (/баланс передать)
Контекст:
- глобальный
- пользователь, которому были переданы очки
- текущий баланс текущего пользователя
{value}: количество переданных очков
Пример: Given {value} {pt} to {u.name}{n}Your current balance: {b.current}
set_pt:
Ответ на команду /balance set (/баланс установить)
Контекст:
- глобальный
- пользователь, чей баланс был изменён
- текущий баланс пользователя
Пример: Set {u.name} balance to {b.current}
[answer]
from:
Шаблон ответа: кто прислал ответ (см. команда /answer)
Контекст:
- глобальный
- пользователь, отправивший ответ
- квест, на который отправлен ответ
Пример: ## From: {u.mention}{n}
quest:
Шаблон ответа: информация о квесте (см. команда /answer)
Контекст:
- глобальный
- пользователь, отправивший ответ
- квест, на который отправлен ответ
Пример: ### Quest {q.id}: {q.name}{n}
expected:
Шаблон ответа: ожидаемый ответ (см. команда /answer)
Контекст:
- глобальный
- пользователь, отправивший ответ
- квест, на который отправлен ответ
Пример: ### Expected answer:{n}||{q.answer}||
text:
Шаблон ответа: текст ответа (см. команда /answer)
Контекст:
- глобальный
- пользователь, отправивший ответ
- квест, на который отправлен ответ
{text}: текст ответа
Пример: {n}### Passed answer:{n}{text}
attachment_notice:
Шаблон ответа: примечание о том, что ответ содержит вложение (см. команда /answer)
Контекст:
- глобальный
- пользователь, отправивший ответ
- квест, на который отправлен ответ
Пример: {n}Passed answer has attachments.
accepted_by:
Форматирует текст ответа с указанием администратора, подтвердившего ответ
Контекст:
- глобальный
- пользователь, подтвердивший ответ
{text}: предыдущий текст сообщения с ответом
Пример: {text}{n}Accepted by: {u.mention}
rejected_by:
Форматирует текст ответа с указанием администратора, отклонившего ответ
Контекст:
- глобальный
- пользователь, отклонивший ответ
{text}: предыдущий текст сообщения с ответом
Пример: ~~{text}~~{n}Rejected by: {u.mention}
[answer.reply]
initial:
Ответ на команду /answer (/ответить)
Контекст:
- глобальный
- пользователь, отправивший ответ
- квест, на который отправлен ответ
Пример: Your answer has been posted.
accepted:
Сообщение, приходящее пользователю в ЛС, если его ответ на квест был принят
Контекст:
- глобальный
- выполненный квест
- пользователь, подтвердивший ответ
- текущий баланс пользователя
Пример: Your answer to the quest {q.id} has been approved.{n}You gained: {q.reward}{n}Your current balance is {b.current}
rejected:
Сообщение, приходящее пользователю в ЛС, если его ответ на квест был отклонён
Контекст:
- глобальный
- пользователь, отклонивший ответ
- квест, на который был отправлен ответ
- текущий баланс пользователя
Пример: Your answer to the quest {q.id} has been rejected.
error:
Сообщение, приходящее пользователю в ЛС, если его ответ приняли, но возникла ошибка.
Контекст:
- глобальный
- пользователь, подтвердивший ответ
- квест, на который был отправлен ответ
- текущий баланс пользователя
Пример: Your answer to the quest {q.id} has been approved, but some server error happened. Please contact administrator for details.
[difficulty]
easy:
Текст лёгкой сложности
Контекст:
- глобальный
Пример: Easy
normal:
Текст средней сложности
Контекст:
- глобальный
Пример: Normal
hard:
Текст тяжёлой сложности
Контекст:
- глобальный
Пример: Hard
secret:
Текст секретной сложности
Контекст:
- глобальный
Пример: Secret
[map]
room_unlocked:
Ответ на команду /unlock (/открыть)
Контекст:
- глобальный
- пользователь, открывший комнату
- полный баланс пользователя
{value}: идентификатор открытой комнаты
Пример: Unlocked room #{value}. Your balance: {b.current}
moved_to_room:
Ответ на команду /move (/пойти)
Контекст:
- глобальный
- переместившийся пользователь
{value}: идентификатор новой комнаты
Пример: Moved to room #{value}
[scoreboard]
header:
Заголовок таблицы лидеров
Контекст:
- глобальный
Пример: Current scoreboard:
line_format:
Строка таблицы лидеров
Контекст:
- глобальный
- пользователь
- полный баланс пользователя
Пример: {n}{u.name}: **{b.full}** (**{b.current}** on balance+ **{b.rooms}** unlocked rooms networth)
you_format:
Форматирование строки в таблице лидеров, если это строка пользователя, вызвавшего команду
Контекст:
- глобальный
- пользователь
- полный баланс пользователя
{text}: текст строкиline_format
Пример: __{text}__ << You
[social]
sent_channel:
Ответ на команду /social msg channel (/сообщение отправить канал)
Контекст:
- глобальный
- отправленное сообщение
Пример: Sent {m.link} ({m.id}) to {m.channel}
sent_dm:
Ответ на команду /social msg user (/сообщение отправить пользователь)
Контекст:
- глобальный
- отправленное сообщение
- пользователь, кому было отправлено сообщение
Пример: Sent {m.link} ({m.id}) to {u.mention}
edited:
Ответ на команду /social edit (/сообщение редактировать)
Контекст:
- глобальный
- изменённое сообщение
Пример: Edited message {m.id}
deleted:
Ответ на команду /social undo (/сообщение удалить)
Контекст:
- глобальный
- удалённое сообщение
Пример: Deleted message {m.id}
[quest]
list:
Заголовок ответа на /quest list (/квест список)
Контекст:
- глобальный
{value}: количество квестов
Пример: Listing {value} quests:
list_item:
Строка квеста в ответе на /quest list (/квест список)
Контекст:
- глобальный
- квест
Пример: {n}{q.id}: {q.name}{n} Description: {q.description}
create:
Ответ на команду /quest create (/квест создать)
Контекст:
- глобальный
- созданный квест
Пример: Created quest {q.id}
update:
Ответ на команду /quest update (/квест обновить)
Контекст:
- глобальный
- обновлённый квест
Пример: Updated quest {q.id}
publish:
Ответ на команду /quest publish (/квест опубликовать)
Контекст:
- глобальный
- опубликованный квест
- сообщение квеста
Пример: Published quest {q.id}: {m.link}
delete:
Ответ на команду /quest delete (/квест удалить)
Контекст:
- глобальный
{q.id}: идентификатор удалённого квеста
Пример: Deleted quest {q.id}
примечание: помимо {q.id}, другие теги контекста квеста недоступны в этой команде
message_format:
Формат сообщения квеста в канале квестов
Контекст:
- глобальный
- квест
- количество выполнений квеста
Пример: ### `{q.id}` {q.name} (+{q.reward})[{q.completions}/{q.limit}]{n}Difficulty: *{q.difficulty}*{n}{q.description}
message_not_found:
Предупреждение в команде /quest update (/квест обновить), если он был опубликован и его сообщение не было найдено
Контекст:
- глобальный
- опубликованный квест без сообщения
Пример: Warning: quest {q.id} message not found