Перейти к основному контенту

rpg40k-dicebot

Дискорд-бот для ролевых настольных игр. Поддерживаемые системы: Dark Heresy II + PH homerules, Imperium Maledictum, F.A.T.E., Звёздное веретено.

Наборы правил

Бот поддерживает установку разных наборов правил для каждого канала, в котором кидаются дайсы. Для установки какого-то набора нужно добавить к имени канала соответствующий суффикс. По-умолчанию, то есть без суффикса, используется набор правил DH2 + Pandhammer homerules.

Набор правил Суффикс Пример имени канала с суффиксом
Dark Heresy II _dh2 кубики_dh2
Imperium Maledictum _im кубики_im
F.A.T.E. _fate кубики_fate
Звёздное Веретено _zv кубики_zv

Команды

Все команды и параметры не зависят от регистра, то есть большие и маленькие буквы считываются всегда одинаково. В скобочках указаны дополнительные варианты записи, идентичные каноничному.

Check — проверка

Dark Heresy II

.c [.с] — команда для бросков d100 для проверок (check). Команда принимается как с английской C, так и с русской С. Дополнительно уведомляет о дублях при бросках, что может быть важно в ряде случаев.

  • .c 54 — бросок 1d100 против указанного значения, с вычислением количества степеней успеха и провала, с предположением насчёт возможного Пандарула
  • .c 32+10-40 — значение, против которого проводится бросок, может быть задано не только числом, но и набором модификаторов
  • .с 32 акробатика — к броску с указанным значением, или без него может быть добавлен комментарий, который будет перенесён в ответ бота

Imperium Maledictum

В наборе правил IM имеется дополнительная опция — указать на имеющееся превосходство или непотребство (advantage / disadvantage) при броске. Это делается при помощи добавления 1 буквы к последней цифре параметра. Буквы a (англ.) и п указывают на превосходство, а буквы d и н — на непотребство.

  • .c 54d — бросок 1d100 против указанного значения, с вычислением количества степеней успеха и провала, учитывающую возможность переворота броска из-за имеющегося непотребства
  • .c 54+10п — бросок 1d100 против указанного значения, с вычислением количества степеней успеха и провала, учитывающую возможность переворота броска из-за имеющегося преимущества

F.A.T.E.

Всегда бросается 4 кубика, на каждом из которых может быть один из трёх равновероятных результатов: +, -, 0. Указываемое параметром число является плюсами и минусами к броску.

  • — бросается 4 кубика
  • .с 3+1-2 — бросается 4 кубика, после чего к результату добавляется итоговый модификатор, в данном примере — +2. Сюда можно переносить как имеющуюся прокачку персонажа, так и накладываемые обстоятельства броска, так и сложность броска. Если добавляется сложность, то бросок всегда будет относительно 0.

Звёздное Веретено

Бросается указанное количество костей к20. Количество можно указывать через формулу.

  • .с 4 — бросается 4к20
  • .с 4+4-2 — бросается 6к20

Также можно бросить несколько к6х6, причём они не складываются, а конкатенируются. Указание количества делается через количество цифр 6

  • .с к66 — бросается 2 кости к6, где первый становится десятками, а второй — единицами.
  • опционально можно использовать модификатор успехов, вписав его в скобках.
  • .с 2+4(+2-1) - это бросок 6d20 со стандартным вычислением успехов, после чего к финальному числу успехов будет добавлен ещё 1 успех

Damage — урон

Команда, эксклюзивная для набора правил DH2

.d [.д .у] — команда для бросков d10 для урона (damage). Команда принимается как с английскими D и Y, так и с русскими Д и У. В случае, если на каком-либо из кубиков выпадает 10, добавляет к описанию напоминание о Righteous Fury.

  • .d +2 [.d 1+2] — добавляет 2 к значению броска. Идентично броску 1d10+2
  • .d +2+4 — дополнительные увеличения уровна могут быть переданы набором модификаторов, а не только целы числом. В данном примере персонаж с Силой 4 бьёт оружием Chainsword (1d10+2). Данный запрос аналогичен формуле 1d10+2+4
  • .d 2+0 — позволяет рассчитывать урон оружия, использующего Xd10 в качестве базы для урона. Бросок идентичен 2d10
  • .d 2+3 — комбинация предыдущих двух вариантов, дающая в результате 2d10+3
  • .d +2t [.д +2т] — добавление к расчёту свойства Tearing. Бросок идентичен 2d10dl+2, то есть добавляет 1 дополнительный 10 к броску, после чего убирает худший результат из всех d10
    • .d 2+4t — урон от оружия с показателями "2d10+4 Tearing" (например, Eviscerator у персонажа с Силой 4)
    • .d +4+2t — урон от оружия с показателями "1d10+6 Tearing" (например, Chainsword у персонажа с Силой 4)

Roll — бросок

.r [.р .б .к] — команда для бросков костей в формате XdY, где X — количество костей, а Y — количество граней каждой кости. Может быть записана как XdY, или XкY, или XдY, а также невосприимчива к регистру (принимает как большие, так и маленькие буквы). Максимальное число костей, которые будет обрабатывать бот — 30.

  • .r 1d5 — бросает одну пятигранную кость
  • .r 2d8 — бросает две восьмигранные кости
  • .r m — бросает одну двугранную кость, но результат даёт в формате "орёл или решка"
  • .к 5к10 — бросает пять десятигранных костей

Version — информация о версии бота

  • .version [.v .ver .в .вер] — вывод информации о текущей версии бота

Фейт

  • fate [f reroll ф фейт фейта реролл]
  • .f - команда для повторения последнего значащего броска, такого как Check (.c), Damage (.d), Roll (.r), Scatter (.scatter)

Генератор персонажа

  • generate [gen chargen ген генератор чарген]
  • .gen - генерирует 10 инкрементов параметров для нового персонажа по формуле 11*(2d10), после чего убирает наименьшее значение

Initiative — инициатива

  • initiative [i init и инит]
  • .i — выстраивает линейку инициативы для боев

Обрабатываемые субкоманды:

  • .i reset (.и сброс): сбрасывает текущий сбор данных для построения линейки инициативы. Все команды .i, введенные до .i reset, будут проигнорированы при построении линейки инициативы. При корректном вводе бот отмечает сообщение пользователя реакцией :glaz: (Глаз).

  • .i stop (.и стоп): останавливает сбор данных и запускает процесс подсчёта инициативы участников боя и построения линейки инициативы, затем выводит упорядоченный по убыванию значения инициативы список участников боя.

  • .i %initModifier [%comment] (.и %initModifier [%comment]): принимает от пользователя модификатор инициативы и (опционально) имя / название участника боя, проверяет корректность введенных данных. В качестве модификатора может быть введено число или формула. Возможен постфикс d ( д ), если участник боя имеет возможность бросить два кубика для определения инициативы и выбрать лучший результат. Если имя / название не введено, в качестве него используется никнейм пользователя на дискорд-сервере. При корректном вводе бот отмечает сообщение пользователя реакцией :glaz: (Глаз).

  • Примеры использования:

    • .i 6d: при построении линейки инициативы будет совершен бросок 2d10kh+6 (с выбором лучшего результата из 2к10), участник боя будет обозначен в линейке никнеймом пользователя;
    • .и 5+2+2: при построении линейки инициативы будет совершен бросок 1d10+9, участник боя будет обозначен в линейке никнеймом пользователя;
    • .init 4 NPC1: при построении линейки инициативы будет совершен бросок 1d10+4, участник боя будет обозначен в линейке как NPC1.

Рулсеты

Работает в режимах DARK_HERESY_II и ZVYOZDNOE_VERETENO. В режиме ZV отсутствует опция суффикса d(д) и кидается кубик d20 вмето d10, действующего для DHII.

Возможные ошибки

  • В синтаксисе команды допущена ошибка и бот не будет её обрабатывать ни в момент получения, ни после.

    Не понимает бот этот запроса такого

  • Имеющаяся в недавней истории текстового канала последовательность введённых команд не позволяет построить линейку инициативы, например:

    • отсутствуют запросы с модификаторами
    • команды перепутаны местами
    • нужные запросы были удалены из чата

    В инициативы порядке беспорядок царит

Пример построения линейки инициативы:

  • ввод:
    .и 6д
    .и 4 Персонаж 2
    .и 5
    .и 4+4+2 Персонаж 4
    .и 3 Монстр 1
    .и 3 Монстр 2
    .и 3 Монстр 3
    .и 3 Союзник 1
    .и 3 Союзник 2
    .и 3 Союзник 3
    .и стоп
    
  • вывод:
    16 — Никнейм_пользователя_1 (6 + [4, 10])
    14 — Персонаж 4 (4+4+2 + [4])
    13 — Союзник 1 (3 + [10])
    12 — Монстр 1 (3 + [9])
    12 — Союзник 3 (3 + [9])
    09 — Монстр 3 (3 + [6])
    06 — Персонаж 2 (4 + [2])
    06 — Никнейм_пользователя_3 (5 + [1])
    06 — Монстр 2 (3 + [3])
    04 — Союзник 2 (3 + [1])
    

Справочник

Справочник позволяет находить и получать по команде различную информацию из книг правил в английской и русской версии. Также применена система подсказок, сообщающая о том, как правильно задавать команды.

Общая конструкция вызова справки выглядит следующим образом:

/{глава_справочника} {дополнительные_параметры}

Главы справочника:

Глава Глава (EN) Поддерживаемые рулсеты
/генератор /generator Dark Heresy 2, Imperium Maledictum
/разброс /scatter Все
/криты /critical Dark Heresy 2
/дивинации /divinations Dark Heresy 2, Imperium Maledictum
/крахи /fumbles Imperium Maledictum
/галлюциногены /hallucinogenic Dark Heresy 2
/помехи /haywire Dark Heresy 2
/места-попадания /hit-locations Dark Heresy 2, Imperium Maledictum
/малигнации /malignancies Dark Heresy 2, Imperium Maledictum
/мутации /mutations Dark Heresy 2, Imperium Maledictum
/перила /perils Dark Heresy 2, Imperium Maledictum
/феномены /phenomena Dark Heresy 2, Imperium Maledictum
/шок /shock Dark Heresy 2
/травмы /traumas Dark Heresy 2
/громкость /volume Dark Heresy 2

Команды глав описаны в подразделах ниже.

Версия по-умолчанию - русская; для вызова английской версии в опциях главы нужно выбрать английский язык.

Справочник содержит ряд разделов. В настоящий момент доступны следующие:

Пси-феномены

  • /феномены (синоним для английской версии Discord - /phenomena) - команда для отображения описаний пси-феномен из табл. 6-2 Основной книги правил Dark Heresy 2nd edition.
    • аргументы:

      • бросок (roll): результат броска на определение пси-феномены. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d100 ботом и использования результата для определения пси-феномены;
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания пси-феномены. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /феномены 55 - отображает описание пси-феномены, получаемой при значении 55, в русском неофициальном переводе;
      • /феномены 35+20 - отображает описание пси-феномены, получаемой при значении 55 в русском неофициальном переводе;
      • /феномены 55 English - отображает описание пси-феномены, получаемой при значении 55, на английском языке;
      • /феномены r (/феномены к) - совершает бросок 1d100 и отображает описание пси-феномены, получаемой на результат совершенного броска.
      • /феномены r+20 (/феномены к+20) - совершает бросок 1d100 с модификатором +20 и отображает описание пси-феномены, получаемой на результат совершенного броска с учетом модификатора.

Превратности Варпа

  • /перила (синоним для английской версии Discord - /perils) - команда для отображения описаний Опасностей Варпа из табл. 6-3 Основной книги правил Dark Heresy 2nd edition.
    • аргументы:

      • бросок (roll): результат броска на определение Опасности Варпа. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d100 ботом и использования результата для определения Опасности Варпа;
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания Опасности Варпа. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /перила 55 - отображает описание Опасности Варпа, получаемой при значении 55, в русском неофициальном переводе;
      • /перила 35+20 - отображает описание Опасности Варпа, получаемой при значении 55 в русском неофициальном переводе;
      • /перила 55 English - отображает описание Опасности Варпа, получаемой при значении 55, на английском языке;
      • /перила r (/перила к) - совершает бросок 1d100 и отображает описание Опасности Варпа, получаемой на результат совершенного броска.
      • /перила r+20 (/перила к+20) - совершает бросок 1d100 с модификатором +20 и отображает описание Опасности Варпа, получаемой на результат совершенного броска с учетом модификатора.

Критический урон

  • /криты (синоним для английской версии Discord - /critical) - отображает описание эффектов критического урона для выбранного типа, зоны попадания и уровня.
    • аргументы:

      • тип_урона (damage_type): выбрать тип урона, которым нанесен критический удар. Зависит от использованного при атаке оружия или психосилы.
        • Список типов урона:
          • Энергетический (Energy);
          • Кинетический (Impact);
          • Режущий (Rending);
          • Взрывной (Explosive).
      • часть_тела (body_part): выбрать часть тела (элемент машины), по которому нанесен критический удар. Определяется по перевернутому значению броска на атаку нанесшего критический удар (27 -> 72).
        • Список частей тела:
          • Рука (Arm);
          • Тело (Body);
          • Голова (Head);
          • Нога (Leg);
          • Орудие (Weapon);
          • Ходовая (Motive systems);
          • Корпус машины (Hull);
          • Башня (Turret).
      • бросок (roll): результат броска на определение уровня критического урона. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d5 ботом и использования результата для определения уровня критического урона.
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания Опасности Варпа. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /криты Кинетический Тело 5 - отображает описание эффектов критического урона при Ударном воздействии в Тело с количеством урона - 5 в русском неофициальном переводе;
      • /криты Кинетический Тело 5 English - отображает оригинальное (англоязычное) описание эффектов критического урона при Ударном воздействии в Тело с количеством урона - 5;
      • /криты Кинетический Тело к (/криты Кинетический Тело r) - совершает бросок 1d5 и отображает русскоязычное описание эффектов критического урона при Ударном воздействии в Тело с количеством урона, равным результату броска.

Эффекты галлюцинаций

  • /галлюциногены (синоним для английской версии Discord - /hallucinogenic) - вывод описания эффектов галлюцинаций (таблица 5-3 Основной книги правил Dark Heresy 2nd edition)
    • аргументы:

      • бросок (roll): результат броска на определение эффекта галлюцинаций. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d10 ботом и использования результата для определения Опасности Варпа;
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания эффекта галлюцинаций. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /галлюциногены 5 - отображает описание эффекта галлюцинаций при броске 5, в русском неофициальном переводе;
      • /галлюциногены 5 eng - отображает оригинальное (англоязычное) описание эффекта галлюцинаций при броске 5;
      • /галлюциногены к (/галлюциногены r) - совершает бросок 1d10 и отображает русскоязычное описание эффекта галлюцинаций для результата броска.

Эффекты поля машинных помех (ЭМИ, Haywire)

  • /помехи (синоним для английской версии Discord - /haywire) - отображает описание эффектов поля машинных помех (таблица 5-4 Основной книги правил Dark heresy 2nd edition).
    • аргументы:

      • бросок (roll): результат броска на определение эффекта поля машинных помех. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d100 ботом и использования результата для определения эффекта поля машинных помех;
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания эффекта поля машинных помех. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /помехи 5 - отображает описание эффекта помех при броске 5 в русском неофициальном переводе;
      • /помехи 5 English - отображает оригинальное (англоязычное) описание эффекта помех при броске 5;
      • /помехи к (/помехи r) - совершает бросок 1d10 и отображает русскоязычное описание эффекта помех для результата броска.

Распространение шума

  • /громкость (синоним для английской версии Discord - /volume) - отображает таблицу распространения звука (таблица 5-5 Основной книги правил Dark Heresy 2nd edition).
    • аргументы:

      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод таблицы. По умолчанию используется русский язык, для вывода на английском нужно добавить English.
    • примеры использования:

      • /громкость - отображает таблицу с примерами распространения звука в русском неофициальном переводе;
      • /громкость English - отображает оригинальную английскую таблицу с примерами распространения звука.

Малигнации

  • /малигнации (синоним для английской версии Discord - /malignancies) - команда для отображения описаний Малигнаций из табл. 8-15 Основной книги правил Dark Heresy 2nd edition.
    • аргументы:

      • бросок (roll): результат броска на определение Малигнации. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d100 ботом и использования результата для определения Малигнации;
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания Малигнации. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /малигнации 55 - отображает описание Малигнации, получаемой при значении 55, в русском неофициальном переводе;
      • /малигнации 35+20 - отображает описание Малигнации, получаемой при значении 55 в русском неофициальном переводе;
      • /малигнации 55 English - отображает описание Малигнации, получаемой при значении 55, на английском языке;
      • /малигнации r (/малигнации к) - совершает бросок 1d100 и отображает русскоязычное описание Малигнации, получаемой на результат совершенного броска.
      • /малигнации r+20 (/малигнации к+20) - совершает бросок 1d100 с модификатором +20 и отображает русскоязычное описание Малигнации, получаемой на результат совершенного броска с учетом модификатора.

Мутации

  • /мутации (синоним для английской версии Discord - /mutations) - команда для отображения описаний Мутаций из табл. 8-16 Основной книги правил Dark Heresy 2nd edition.
    • аргументы:

      • бросок (roll): результат броска на определение Мутации. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d100 ботом и использования результата для определения Мутации;
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания Мутации. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /мутации 55 - отображает описание Мутации, получаемой при значении 55, в русском неофициальном переводе;
      • /мутации 35+20 - отображает описание Мутации, получаемой при значении 55 в русском неофициальном переводе;
      • /мутации 55 English - отображает описание Мутации, получаемой при значении 55, на английском языке;
      • /мутации r (/мутации к) - совершает бросок 1d100 и отображает русскоязычное описание Мутации, получаемой на результат совершенного броска.
      • /мутации r+20 (/мутации к+20) - совершает бросок 1d100 с модификатором +20 и отображает русскоязычное описание Мутации, получаемой на результат совершенного броска с учетом модификатора.

Психические травмы

  • /травмы (синоним для английской версии Discord - /traumas) - команда для отображения описаний Психических травм из табл. 8-13 Основной книги правил Dark Heresy 2nd edition.
    • аргументы:

      • бросок (roll): результат броска на определение Психической травмы. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d100 ботом и использования результата для определения Психической травмы;
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания Психической травмы. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /травмы 55 - отображает описание Психической травмы, получаемой при значении 55, в русском неофициальном переводе;
      • /травмы 35+20 - отображает описание Психической травмы, получаемой при значении 55 в русском неофициальном переводе;
      • /травмы 55 English - отображает описание Психической травмы, получаемой при значении 55, на английском языке;
      • /травмы r (/травмы к) - совершает бросок 1d100 и отображает русскоязычное описание Психической травмы, получаемой на результат совершенного броска.
      • /травмы r+20 (/травмы к+20) - совершает бросок 1d100 с модификатором +20 и отображает русскоязычное описание Психической травмы, получаемой на результат совершенного броска с учетом модификатора.

Шок

  • /шок (синоним для английской версии Discord - /shock) - команда для отображения описаний эффектов Шока из табл. 8-11 Основной книги правил Dark Heresy 2nd edition.
    • аргументы:

      • бросок (roll): результат броска на определение эффекта Шока. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d100 ботом и использования результата для определения эффекта Шока;
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания эффекта Шока. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /шок 55 - отображает описание эффекта Шока, получаемой при значении 55, в русском неофициальном переводе;
      • /шок 35+20 - отображаает описание эффекта Шока, получаемой при значении 55 в русском неофициальном переводе;
      • /шок 55 English - отображает описание эффекта Шока, получаемой при значении 55, на английском языке;
      • /шок r (/шок к) - совершает бросок 1d100 и отображает русскоязычное описание эффекта Шока, получаемой на результат совершенного броска.
      • /шок r+20 (/шок к+20) - совершает бросок 1d100 с модификатором +20 и отображает русскоязычное описание эффекта Шока, получаемой на результат совершенного броска с учетом модификатора.

Дивинации

  • /дивинации (синоним для английской версии Discord - /divinations) - команда для отображения описаний Предсказаний из табл. 2-9 Основной книги правил Dark Heresy 2nd edition.
    • аргументы:

      • бросок (roll): результат броска на определение Предсказания. Вводится число или формула. Также формула может содержать r (R, к, К) для совершения броска 1d100 ботом и использования результата для определения Предсказания;
      • язык (language) (необязательный аргумент): язык, на котором будет осуществлен вывод описания Предсказания. По умолчанию используется русский язык, для вывода описания на английском нужно добавить English.
    • примеры использования:

      • /дивинации 55 - отображает описание Предсказания для броска 55 в русском неофициальном переводе;
      • /дивинации 55 English - отображает оригинальное (англоязычное) описание Предсказания для броска 55;
      • /дивинации r (/дивинации к) - совершает бросок 1d100 и отображает русскоязычное описание Предсказания, получаемого на результат совершенного броска.

Авторы