Почему пошаговые мили-игры теряют главное и как я переношу ядро XCOM в ближний бой
Привет. Я в соло делаю Sons of the Arena, пошаговую тактику про гладиаторскую школу в Риме. Этот текст про боёвку: почему, на мой взгляд, пошаговые игры про ближний бой массово теряют самое ценное, и что я с этим делаю. Внутри гифки из билда и немного дизайнерской теории.
В XCOM меня всегда держала одна вещь, и это не пришельцы и не проценты попадания. Это вечный вопрос каждого хода: «Вот отсюда идеальный выстрел. Но укрытие хреновое, и меня простреливают с фланга. Куда встать?»
Причём идеальной клетки обычно не существует вовсе. Ты выбираешь наименее поганую, осознанно принимаешь конкретный риск и дальше выстраиваешь под него порядок ходов: этот идёт первым и ловит овервотч на себя, этот заходит во фланг вторым, а гранату придерживаем на случай, если всё пойдёт не так. Ты не просто встаёшь. Ты делаешь ставку и ведёшь её несколько ходов, а потом платишь по счетам. По-моему, именно это и есть кор XCOM. Не отряд и не пошаговость, а цепочка компромиссов, за которые ты потом отвечаешь.
А теперь посмотрите, что происходит в пошаговых играх про ближний бой. Этот вопрос там почти всегда умирает, и его заменяют три вещи:
- Уникальные герои. Тактика подменяется способностями: у этого перса ульта, у того комбо. Решает билд, а не позиция.
- Сравнение статов. Встали друг напротив друга и тыкаем. Кто толще, тот и победил. Клетки просто расстояние до врага.
- Макро-слой. Заработал больше золота, воины сильнее, бой выигран ещё до боя.
У всех трёх один корень. Интерес в бою назначается заранее: разработчик сам решает, что именно будет любопытного в этой конкретной драке, и выдаёт это игроку. Вот босс с механикой, вот скриптовая засада, вот проверка на собранный билд. Так сделаны отличные игры, вопросов нет. Но у подхода есть цена: каждый интересный бой приходится изготавливать руками. Поэтому такие бои редко хочется переигрывать ради них самих, и держать игрока приходится чем-то другим: сюжетом, кампанией, менеджментом отряда, экономикой. Это прекрасно работает, тут не поспоришь. Просто бой в такой конструкции становится не целью, а поводом.
XCOM устроен наоборот. Карты там тоже собраны из шаблонов, но интересным бой делает не сценарист, а стечение обстоятельств: как легли укрытия, куда побрёл патруль, кого ты подранил два хода назад и кто теперь не может держать фланг. Интерес не назначен, он возникает сам. Поэтому боёв может быть сколько угодно, и они не превращаются в повторение одного и того же.
Мне ближе второй путь. Не потому что первый плохой, а потому что при нём напряжение рождается из правил, а не выдаётся по расписанию, и его хватает на любое количество боёв. Способности, статы и экономика при таком раскладе никуда не деваются, просто перестают быть главным блюдом и становятся приятным гарниром.
С этим вопросом я и полез в ближний бой. Хотелось не набор заготовленных ситуаций, а боёвку, которую не страшно рандомить: состав отряда, экипировку, местность, число бойцов с обеих сторон. Чтобы каждая такая нарезка сама рождала свою историю. Для этого правила должны быть достаточно ёмкими, чтобы позиция решала и тогда, когда все уже сошлись вплотную. Вот как я перевожу язык укрытий на язык ближнего боя:
- Полуукрытие: стойка защиты.
- Полное укрытие: защита со щитом.
- Простреливаемая позиция: дерёшься один против двоих и больше, ловишь жёсткие дебаффы.
- Фланговый обход: зайти сбоку или сзади, где щит не спасает.
- Цена ошибки позиции: толчок. Упал, и тебя добивают.
- Наступление перебежками: движение строем, клин и стена щитов.
Звучит как простое переименование, но именно здесь ближний бой обычно и ломается. Стоит всем сойтись вплотную, и дистанция перестаёт быть валютой: позиция схлопывается в «кого фокусим», «в каком порядке бьём» и «какую способность тратим». Чтобы она снова начала работать, само соседство должно стать механикой. Дальше на гифках то, что из этого выросло.
Из всего этого складывается правило, которое въедается за пару боёв.
Ходить порознь опасно. Одиночку окружают, задавливают числом и добивают, и никакие статы тут не помогают: как раз про это первая гифка. Мне кажется, это тот случай, когда механика просто совпадает с тем, что человек и так знает. Никто, каким бы крутым он ни был, не хочет оказаться один против троих: на вопрос «что делать против толпы» любой тренер отвечает «убегать». А рыцаря в полном доспехе обычно не пробивали, его валили на землю всей кучей и добивали кинжалом в щель между пластин. Численный перевес в ближнем бою решает не потому, что так придумал дизайнер, а потому что иначе не бывает.
Но сбиться в кучу опасно ровно так же. Толпа без формы это костяшки домино: один толчок в передний ряд, и повалились все, а дальше вас режут лежачими. Стоять в толпе и стоять в строю это очень разные вещи.
Работает третье. Собрать строй, где бойцы закрывают друг другу фланги, и поставить его с оглядкой на арену. Колонна за спиной превращает обычный толчок в нокдаун, поэтому жаться к ней опасно, а вот загнать к ней врага наоборот полезно. Строй это не анимация, а оружие: клин с разгона проламывает линию, стена держит фронт и не даёт себя растащить.
Поэтому вопрос из XCOM здесь просто меняет число. Не «куда встать мне», а «куда встать нам».
Как это выглядит в живом бою
Типичный бой на текущем билде. Четверо врагов со щитами собираются в стенку и идут на меня синхронными блок-шагами. В лоб эту линию не взять: фронтальный толчок отскакивает от цепи строя, а первый, кто сунется в одиночку, поймает прессинг один против четырёх. Дальше начинается та самая игра с позицией. Крайнего в линии можно выдернуть: зайти сбоку, где щит не работает, толкнуть, и стенка уже из троих, а один лежит. Можно отдать центр и прижимать их фланг к колонне: толчок у колонны валит с ног, и враг сам боится туда вставать. А можно собрать свой клин и с разгона расколоть линию пополам, пока лучник расстреливает их с дистанции. Ни одна из этих историй не прописана сценаристом. Они складываются из правил, состава отряда и того, как легла арена.
Отдельно про ИИ. Враги не бегут на игрока гурьбой: у вражеских отрядов есть строевые профили. Стена щитов собирается и давит фронтом, волчья стая выжидает и заходит с флангов, застрельщики держат дистанцию. Поэтому вопрос «куда встать нам» работает в обе стороны: чужой строй приходится читать так же, как свой.
Над боёвкой растёт слой гладиаторской школы: календарь турниров с записью на бои, тренировки, травмы. Проиграл позицию в бою, и боец не погиб, но выбыл на неделю, а контракт на послезавтра уже подписан, и за отказ платишь неустойку. Ошибки позиции конвертируются в решения менеджера. Но это тема для отдельного поста.
Дальше пласт строёв растёт вглубь: тип строя будет определяться его составом. Стенка из копейщиков встречает кавалерийский чардж не так, как стенка щитов, и контрится тоже иначе. Это следующий большой кусок, покажу, когда доедет.
Анимации черновые, показываю как есть: мне важнее подход, чем полировка. Если знаете игру, где позиционное ядро в мили сделано именно системой, а не парой фич, киньте ссылку, правда интересно посмотреть.
Я Дима, делаю Sons of the Arena один. Девлог веду в телеге: https://t.me/SonsOfTheArena Steam (демо до конца года, вишлист очень помогает): https://store.steampowered.com/app/4686840/Sons_of_the_Arena_Pollice_Verso/