Бой по набору правил
На этой странице вы решаете, как ваш набор правил участвует в бою: блок battle передает боевой системе Marinara лист персонажа, а блок combat разрешает весь бой по собственным правилам набора, с его бестиарием, полем боя, реакциями и состязаниями. Она предназначена для авторов наборов правил. Прежде чем начать, прочитайте Создание наборов правил Game Mode.
Разделы этой страницы:
- Сражения: передача листа боевой системе Marinara
- Что передается в бой и что возвращается
- Как запись становится навыком
- Бой: сражение, которое разрешают ваши правила
- Все ключи
- Спасброски против состояний, урона или магии
- Бой пулами: dice-pool
- Бой на символьных костях: symbol-pool
- Минимум костей урона
- Оглушающее попадание
- Цель выбирает вид раны
- Инициатива, которую сдвигают атаки
- Что бой читает из mechanics
- Существа: бестиарий, который читает бой
- Позиции: бой на поле
- Что бой делает с вашим блоком на сервере
- На экране
- Состязания: захват, толчок, освобождение
- Окна: приостановка боя
- Пока нет
Сражения: передача листа боевой системе Marinara
По умолчанию сражение ничего не знает о листе. Оно создает бойцов как прежде, и персонаж может выйти из боя с неизменившимися очками здоровья в листе.
Необязательный блок battle меняет это только в одном направлении: передает бою числа листа и записывает результат обратно. Он не заставляет бой следовать вашим правилам. Математика костей остается за Marinara, как и определение того, кто кого поразил и на сколько. Поэтому здоровье переносится как доля максимума, а не ваше собственное число: персонаж с половиной здоровья в листе начинает бой с половиной полосы здоровья, которую построила для него Marinara. Ваш запас здоровья в 9 очков никогда не попадает напрямую в бой, где один удар наносит 12.
"battle": {
"health": { "pool": "grit" },
"energy": { "pool": "luck" },
"skills": [{ "list": "knacks" }]
}health: обязательно. Текущий запас, задающий очки здоровья персонажа в бою. Это должен быть один из запасов вsheet.live.pools, а не список, чьи строки служат запасами.energy: необязательно. Текущий запас, расходуемый в бою и становящийся полосой MP. Он должен отличаться отhealth, поскольку бой не может расходовать здоровье как топливо.slots: необязательно. Текущие запасы, которые бой расходует по одному, каждый сlevelот 1 до 9:[{ "pool": "slots_1", "level": 1 }]. Каждый уровень и каждый запас используются однократно.skills: необязательно, до восьми. Списки листа, чьи строки становятся боевыми навыками персонажа. Учитываются только строки из ваших каталогов и лишь когда исходная запись имеет блокmechanics: вручную набранная строка ничего не описывает в числах.onlyWhenуказывает логический столбец, который должен быть включен в строке, например подготовленное заклинание.alwaysWhenуказывает столбец и значение, пропускающие строку независимо от этого условия, например заклинания, не требующие подготовки. Это исключение изonlyWhen, поэтому без него оно отклоняется.
Что передается в бой и что возвращается
В бой, для каждого участника отряда, чей лист есть у игры: доля текущего запаса здоровья от максимума задает начальную точку на собственной полосе здоровья Marinara, запас энергии становится MP, каждый запас ячеек становится ячейками своего уровня, а отмеченные строки – навыками. Максимум здоровья, атака, защита, скорость и уровень остаются собственными числами Marinara. Персонаж с нулем здоровья в листе начинает бой поверженным, как указано в листе; персонаж со здоровьем выше нуля никогда не начинает с менее чем одним очком, поэтому округление малой доли не может вывести его из строя.
Из боя, после его окончания: оставшаяся бойцу доля полосы здоровья переводится обратно в шкалу его запаса, а разница с началом боя применяется как урон или лечение. Энергия и ячейки – количества, а не доли, поэтому записываются как есть. Все проходит по тем же правилам, что используют кнопки листа; изменение, отвергнутое листом, пропускается с сообщением, а не навязывается. Бой, не изменивший здоровье бойца, вообще не записывает изменения здоровья, поэтому две конвертации сами по себе никогда не меняют лист.
Ни в одну сторону: броски атаки, спасброски, концентрация и прибавка от более высокой цены. Они хранятся в mechanics, чтобы однажды их прочла полноценная боевая система; этот мост их не применяет, и набор правил не должен заявлять обратное.
Брошенное сражение ничего не записывает обратно. Если удалить сообщение, в котором бой начался, или бой так и не закончится, лист останется прежним: боя не было.
Как запись становится навыком
Блок mechanics записи каталога читается следующим образом:
kindстановится типом навыка. Записиutilityи все с отметкойreactionисключаются: в боевой системе Marinara для них нет места.amountзадает силу эффекта как множитель собственной атаки бойца, а не число урона. Более крупные кости никогда не дают более слабый удар, а множитель остается в диапазоне, уже используемом генерируемыми навыками.rangeиarea.sizeделятся наunits.distance.perCellкаталога для получения клеток сетки и никогда не округляются до нуля. Взрыв становится своим радиусом, конус – половиной этого значения, линия – одной клеткой. Эффект с областью выбирает всех покрытых ею врагов;friendlyFireсоблюдается.damageTypeстановится стихией навыка.targetsне переносится: боевая система Marinara определяет допустимые цели лечения, усиления или атаки по типу навыка.costзапаса энергии становится ценой MP, несколько затрат энергии суммируются.costровно одной ячейки расходует одну ячейку этого уровня. Боевая система Marinara берет одно количество энергии или одну ячейку, но не оба ресурса, поэтому запись ценой в две ячейки, ячейки двух уровней либо ячейку плюс энергию исключается из боя. То же касается затрат любого другого запаса, например здоровья или классового ресурса: иначе Engine выдавал бы эффект бесплатно.buffилиdebuffстановится собственным усилением или ослаблением Marinara. Другие обещания текста записи, например снятие состояния в листе, в бою не выполняются. Не добавляйтеmechanicsзаписи, чей эффект имеет смысл лишь вне сражения.
coverage.combat остается отдельным и сохраняет прежний смысл: включайте его, только если сражения следуют правилам вашей системы.