1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

Modified Time Battle

Автор: thenonsense · 16 фев 2026 в 18:17 ·
Концепция боевой системы развивающей механику Active Time Battle (ATB), что создавала впечатление динамической походовости в некоторых “классических” jrpg.
  1. [​IMG]

    ATB

    Система ATB появилась в серии Final Fantasy и классическими примерами подобной боёвки являются игры в промежутке от FF4 до FF9. Сюда же можно отнести некоторые прочие, например Chrono Trigger. Или более поздние Bravely Default 2 или та же FF 10-2.

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

    [​IMG]
    Final Fantasy 9. У каждого персонажа есть зелёная ATB-полоска справа от имени и параметров, заполняющаяся в реалтайме (красные полоски - это шкала транса, заполняются при получении повреждений и тогда дают персонажу супер-силы на пару ходов)

    Естественно, во всех этих играх с ATB - она является лишь частью всей общей боевой системы, реализована несколько по-разному, имеет разную визуализацию и настройки, сочетается с прочими боевыми элементами. Таким образом это не совсем одна и та же система, а скорее её вариации, заточенные под разные конкретные игры.

    Например в FF5 к ATB добавляется система профессий (которая сама по себе тоже по-разному реализована в разных частях FF, или в той же серии Bravely). В Trigger комбо-приёмы разных персонажей, необходимость правильно направлять приёмы и прочее. В FF9 на сражение влияют включаемые пассивные способности, способности изучаются с экипировки, иногда включается режим транса, бой может идти как в активном режиме так и в режиме ожидания (время не течёт пока игрок выбирает скилл в менюшках). FF7 дополняет бой системой материй, а в настройках боя имеется режим, при котором время не течёт пока участники сражения совершают действия (то есть идёт анимация атак). B FF 10-2 героини в бою могут менять классы на лету, и так далее. Одним словом вариантов использования и настраивания ATB довольно много.

    Прочие системы

    В иных партийных jrpg боевая система построена вокруг всевозможных вариаций более "традиционной" (вернее длительное время существующей) походовой механики или различных чисто экшен-механик, к которым всё чаще прибегают именно новые игры жанра (хотя, jrpg с всевозможными видами экшен боёвки выходили и раньше, например, серия Tales of). Встречаются и более экшен-подобные вариации той же ATB - например, Final Fantasy 12, где механика сражения начинает напоминать уже что-то вроде западных рпг с активной паузой.

    В своих разработках можно было бы пойти и в сторону такого мета-сражения, сместив фокус с выбора конкретных действий конкретного персонажа на указание основной цели и типа урона по ней (а персонажи далее уже исполняют это указание игрока как могут), но это уже эксперименты в области непрямого контроля и немного другая опера. Да и в разработке явно сложнее.

    В целом интересность игры зависит от реализации боевой и прочих систем, а не от того походовая она или экшен. Та же FF10 возвращает в серию банальную походовость, но позволяет менять персонажей в бою, показывает очерёдность действий, имеет прочие занятные механики, вроде прокачки через атлас Spheregrid и так далее.

    [​IMG]
    Final Fantasy 10. Чисто походовый геймплей, без ATB. Хотя разные действия всё-же дают персонажу новый ход раньше или позже.

    Серия Kingdom Herats занятно развивала некий динамичный гибрид ATB и экшена (который потом во все стороны развивался далее в прочих проектах), хотя ATB там по сути и нет, скорее сами команды выглядят как в финалках, но выбирать их надо динамически. А какие-то партийные jrpg уже откровенно становятся чуть ли не слэшерами, где и партия всё более условна.

    [​IMG]
    Kindgom Hearts 3 (мир Пиратов Карибского моря - красивая графика, но ужасный геймдизайн прохождения этого конкретного мира)

    В чём минус не-ATB систем - они предлагают всё-таки несколько иной опыт. Экшены предлагают слишком одноклеточный процесс, а чистые походовые не особо передают динамику (правда есть жанр тактик, но там сама по себе походовость намного полнее раскрывается).

    Та же FF 12 хороша, но автоматизация боевого процесса и выворачивание ATB наизнанку, превращающее её в самоиграющую игру с активной паузой - опыт по-своему специфический, удерживающий интерес за счёт смещения фокуса внимания на доску прокачки, настройку гамбитов, манипулирование партией, прожатие квикенингов (которое по сути лишь ухудшающий всю систему ультимейт, но за счёт разнообразия и хорошей подачи всё-таки не выглядят чем-то плохим) и ситуативных действий.

    [​IMG]
    Final Fantasy 12. Здесь ATB-шкалы жёлтые, перед именами персонажей, а над шкалой у каждого написано действие, которое персонаж запланировал.

    В FF 13 разработчики двинулись в сторону комплексного изменения подхода с сражению, добавив свой вариант некоего аналога концепции "пробития щитов" (одна из последних с элементами той же идеи - не особо мне импонирующая Sea of Stars) и развивая идею постоянной смены различных меняющих подход героя к сражению "стоек" в виде системы парадигм. Парадигмы представляют собой набор разных ролей - в одной парадигме группа, например наносит урон (партия из пары магов и милишника), а в другой защищается и восстанавливается (партия из танка и пары медиков). В качестве базы используется всё та же шкала ATB, но она как-бы “общая” для группы, а игрок может выбирать команды для основного героя прямо во время заполнения шкалы, чтобы они сразу выполнились уже когда шкала заполнится. Также здесь используются трюки с мгновенным заполнением ATB шкалы на максимум при смене парадигм - такой эффект срабатывает раз в 12 секунд, чем можно пользоваться. Или возможность досрочного выполнения команд, не дожидаясь заполнения ATB шкалы до конца.

    [​IMG]
    Final Fantasy 13. Шкала ATB по центру, пока она заполняется можно нажать автобой и команды выберутся автоматически (что игрок и нажимает чаще всего) или же можно успеть выставить какие-то команды вручную. Игрок тут больше сфокусирован на своевременной смене парадигм партии, чем на командах, как в играх с "классической" ATB.

    [​IMG]
    Final Fantasy 13. Шкала ATB заполнена и теперь она будет отматываться в 0, последовательно выполняя набранные команды - 4 Атаки.

    Chrono Cross практически пошаговый, однако предлагает некий свой гибридный подход - здесь время самого хода поделено на секции во время которых персонаж может совершать атаки и открывать ими доступ ко всё большему уровню ячеек с магией. Если же магию применить, то уровень доступных ячеек сбросится и возникнет небольшой откат, то есть герой получит ход чуть позже.

    ATB 1/2

    Конкретно мне из всего этого многообразия нравится реализация ATB в Final Fantasy 9 (здесь могла бы стоять какая-то из частей помладше, но мне нравится то, что тут это всё совмещено с 3д, с фэнтэзи, и прочие механики достаточно комплексны). Естественно, не всё в той боёвке было идеальным, но по сумме ощущений - это одна из отличных партийных jrpg, даже если брать одну только боевую часть. Её есть куда улучшать, например, тот же транс довольно рандомен для постоянной механики и лучше здесь смотрелись бы лимиты или овердрайвы из предыдущих частей. Не помешало бы значительное ускорение входа в сражение и сокращение времени некоторых анимаций (хотя, кроме призыва всё и так происходит довольно быстро). Настроек ATB тоже могло быть больше (как тот режим ожидания во время анимаций из 7-ки). Ну и прочие вещи, вроде той же системы профессий, более расширенной прокачки, как в FF 10 или 12.

    Что касается самой ATB-части, то её даже можно не улучшать - всё и так нормально работает. Например, в прототипе Микрокосм я делал ещё более простой вариант, который визуально похож на ATB (шкала скорости у каждого звездолётика-персонажа), но по факту она там урезанная: время сразу останавливается, когда шкала любого персонажа заполнилась и не движется дальше, пока ему не отдана команда. Это всё ещё не классическая походовость, так как у героев и врагов действительно разные скорости действия, а не единый порядок действий в порядке инициативы, когда за один условный раунд каждый участник боя получит ход 1 раз. Но от классической походовости мы тут имеем ограничение очередностью - выпал ход, значит что-то надо делать, хотя бы и пропустить (в то время как в полноценной ATB герой может подождать со своим действием, позволив кому-то действовать перед собой).

    [​IMG]
    Микрокосм. Цифра показывает прочность кораблика, фиолетовая цифра дополнительный дамаг при следующей атаке, синяя полоса - энергия, серая - шкала времени.

    Тем не менее, если добавить персонажу возможность откладывать принятие решения и не останавливать время при заполнении каждой шкалы, то я бы наверное хотел внести какие-то корректировки в стандартную ATB-формулу, если делать свои игры на её основе.

    Вариант с остановкой шкал, пока действуют анимации, кажется одним из простых в реализации и удобных. Ещё один простой способ - добавить автопаузу при каждом заполнении шкалы или при выборе заклинания, которую игрок может самостоятельно скипнуть. То есть когда герой заполнил шкалу - время останавливается, но игрок сам может скипнуть это и ждать когда пауза сработает от заполнения шкалы прочего героя. Или же войти в меню действий текущего героя с заполненной шкалой, тогда время тоже остановится. В целом это практически равноценно варианту дать игроку нажимать кнопку автопаузы в любой момент, но экономит чуть больше времени.

    Несколько иной подход предлагают относительно недавние современные околопоходовые - Bravely Default 2 (по сути ATB) или Octopath Traveler 2 (пошаговая). В первом герой может сделать аж до 4-х ходов в долг, но сразу же все или накапливать пропуски ходов, чтобы потратить их на что-то в дальнейшем. Это, наверное, занятно, но в таком виде скорее выглядит как явный эксплойт и узаконенный спам пачкой приёмов. В Octopath встречаем знакомую концепцию "пробития щитов" и накапливаемые боевые пункты, которые опять же можно спускать на лишние атаки - ну, хотя бы не такой неприкрытый спам как в Bravely.

    В принципе, если не брать экшены, то сейчас чаще выходят походовые jrpg, чем ATB (привет Персона 5, Honkai), но мне там мало что нравится или они совсем уж ультра-простые. А партийные jrpg экшены - уж проще взять нормальную экшен игру, где управляешь одним героем. Но я немного ушёл от темы.

    Другая мысль заключалась в добавлении механики времени каста к некоторым действиям. Такое есть в Final Fantasy Tactics или в Child of light. Это занятно, это добавляет возможность сбить каст, но некоторый минус такого подхода для игрока - ты лишнее время ждёшь исполнения эффекта.

    Но что если вместо заказа действия с большим временем каста мы просто будем стартовать восстановление шкалы скорости персонажа с более отложенного по времени значения, добавляя штраф-откат по времени, но уже после совершения действия, а не до. Вот из этого и появилась следующая концепция:

    Modified

    Поначалу думалось добавлять различную величину отката к шкале скорости, если персонаж использует умения имеющие такой откат. Затем я подумал, что кроме отката может быть и буст (когда герой совершает действие, имеющее небольшое влияние на бой, вроде снятия статуса предметом, например), быстрее возвращающий ход персонажу. Есть в этом что-то от системы экшен-поинтов из некоторых тактических игр, а конкретно сам буст похож на то, что было в Final Fantasy 10.

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

    Таким образом концепция стала выглядеть следующим образом: вместо того чтобы разные действия откатывали шкалу для следующего действия в некоторый плюс, или даже в минус - сделаем так, что некоторые действия просто накладывают на персонажа градации замедления или ускорения шкалы. При этом ускорение нивелирует замедление и наоборот. А также в норме герой каждый свой ход теряет градацию ускорения или замедления, приближаясь к своей “нормальной” скорости.

    И вот что получилось в итоге:

    [​IMG]
    1 градация красной модификации, полное здоровье, полная мана, шкала времени заполняется

    У каждого героя имеется до 5 градаций модификации шкалы времени. Вся модификация может быть либо красного цвета (степень замедления) либо жёлтого (степень ускорения). Различные совершаемые действия героев либо не имеют влияния на модификацию, либо добавляют к ней новые красные/жёлтые градации. Градации одного цвета складываются, но общая модификация не может уйти больше 5 в том или другом цвете. Градации разных цветов сокращаются - то есть если сейчас у персонажа жёлтая модификация на 1 градацию, а он совершает приём с откатом 3 (3 красных), то значения сокращаются и после приёма модификация его шкалы становится красной с градацией 2. Получая ход герой теряет 1 градацию модификации (хоть она красная, хоть, жёлтая - как бы постепенно возвращаясь к сбалансированному состоянию).

    Дополнительно: атаки определённых врагов в такой системе могут добавлять откат герою, ровно как и некоторые способности персонажей могут чистить им накопленные откаты или убавлять очки отката на прочих членах партии (или же давать им лишний буст). Какая-то магия может вообще похищать чужое значение модификации, отправлять другому значение свой модификации или менять модификации местами. Заклинание Haste в такой постановке вопроса может просто давать герою 5 жёлтых градаций (которые сложатся с текущими), или возможна некоторая продвинутая вариация (haste 2, alternative haste), которая принудительно устанавливает модификацию в жёлтое на 3 или 5 вне зависимости от её прошлого значения. Заклинание Slow тогда даёт 5 красных градаций. Таким образом заклинания ускорения/замедления становятся менее дискретными, самоослабляются со временем благодаря естественному ослаблению модификации каждый ход и выходят из роли узких и статусных заклинаний на позицию более вариативного инструмента.

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

    [​IMG]
    Действие героя добавило в замедленную красную модификацию степени 1 (шкала времени заполняется чуть медленнее стандарта) буст в виде 2 жёлтых, в результате модификация теперь жёлтая на 1 (шкала скорости заполняется чуть быстрее стандарта).

    [​IMG]
    Красная модификация степени 4 - заполнение шкалы времени у этого персонажа замедленно почти до максимума. Когда шкала заполнится, то модификация останется красной, но понизит степень замедления до 3.

    [​IMG]
    Жёлтая степень модификации 2 - заполнение шкалы времени у этого героя происходит быстрее чем обычно. При заполнении шкалы модификация останется жёлтой, но понизит степень ускорения до 1. Ещё через ход модификация исчезнет и станет 0, если её не менять.

    Disengage

    Для начала на подобном концепте я собрал мини-прототип походовой мобильной jrpg с партией на движке Godot (но в целом делать игры под мобилки мне потом расхотелось, поэтому впоследствии вместо продолжения проекта Disengage я задумал немного иную jrpg c ATB, делая её уже без оглядки на мобилки).

    [​IMG]

    Для 2д-проекта на смартфон я бы скорее взял Solana2d (или как он там сейчас называется), где код пишется на Lua. Ну а для 3д как обычно использовал Godot, и естественно, никакой не 4-й версии, где поддержка андроида тоже появилась, а давно адаптированной к нему 3х в варианте с простым gles2 рендером. 4-ка - это про показать уровень графики, а не про запускаться на максимальном количестве устройств.

    Помимо стандартного скачивания шаблонов экспорта под платформу, в случае с андроидом придётся установить ещё и Android Studio. Собственно, в Linux Mint, где я собирал проект, с этим всё было просто - достаточно поставить студию из магазина приложений. Внутри неё правда потребуется кое-что настроить, докачать и создать файл ключей, но это не слишком сложно, плюс мне достаточно было для одного проекта настроить это один раз (так как не собирался выкладывать получаемый в итоге apk файл в google play).

    Далее уже внутри редактора Godot потребовалось поменять/отключить некоторые глобальные настройки (связанные в основном со светом, материалами), чтобы на телефоне графика отображалась без артефактов. Источники света можно было вообще убрать, но после тестов я остановился на включенном во время сражения directional light, который не даёт теней + один omni light с включенными тенями. Материалы персонажей реагируют на свет и затенения, но, возможно, стоило отключить им эту настройку, чтобы цвета стали ярче.

    В данном прототипе я решил совместить походовые jrpg-сражения в стиле приблизительных Final Fantasy 7-9 с механикой забегов по веткам абстрактных подземелий, наподобие того как это было реализовано в файтинге FF: Dissidia - специальный режим с последовательным разбором/прохождением колоды карточек, среди которых попадаются сражения, предметы, сопартийцы и прочее.

    [​IMG]
    На начальном этапе просто тестировал 3д-сцену на телефоне с кнопками настройки освещения.

    [​IMG]
    Текстуры не сразу отображались корректно, в отличие от вида на ПК - нужно было выставить правильные настройки. При этом на примитивах текстуры уже лежали правильно, но не на моделях с костями.

    [​IMG]

    Затем, когда всё стало нормально с отображением, перешёл к созданию моделей героев разных классов:

    [​IMG]
    Low-poly персонажи разных классов, сделанные в Blender. Позже они пригодились и отправились в тактический проект - Radius TactiX

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

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

    Что касается накопления какого-то несгораемого прогресса между забегами, тут мне захотелось реализовать нечто вроде системы профессий, опять же время от времени фигурирующей в серии FF. Суть в следующем - есть некие браслеты/кристаллы профессий, внутри которых есть ветки прокачки. Каждый персонаж может экипировать до двух таких браслетов - первый определяет внешний вид героя, а оба они дают свои активные и пассивные способности, возможно, разрешения на использование определённой экипировки.

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

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

    Стоит отметить особенности разработки под тач-управление. Тут потребовалось переработать подход к интерфейсу, потому что варианты реализации из тех игр откуда брались основные концепты - не совсем подходили. Схема с классическими консольными менюшками из FF ещё более менее работала для мышиного управления (как я делал в проекте "Микрокосм" для походового сражения звездолётиков), но добавлять лишнюю кнопку перебора персонажей не хотелось. Удачно вспомнилась реализация из Chrono Trigger, где для каждого героя просто выползала своя отдельная менюшка команд, независимо - так я в итоге и сделал.

    На экране с вариантами действий в каждой фазе прохождения приключения на смартфоне тоже было бы неудобно щёлкать на каждую опцию и смотреть, что она делает (в референсной игре опции перебирались стрелками джойстика, а выбор шёл уже по нажатию кнопки), а затем ещё жать на какую-то отдельную кнопку для совершения выбора. Поэтому добавил надписи к каждой опции, а нажатие на кнопку её сразу активирует. И так далее.

    [​IMG]
    Экран прохождения приключения - слева доступные опции, сверху слева следующие опции, которые будут доступны после текущего выбора. Внизу количество накопленных ценностей, справа кнопки открывающие подменю изменения состава партии и смены класса.

    [​IMG]
    Сражение. Параметры и команды героев. Справа две кнопки для вращения камеры. Справа сверху кнопка досрочного выхода из боя.

    [​IMG]
    Зомблин наносит урон героям

    Демо

    В итоге в мини-демке были реализованы следующие вещи:

    Игрок получает одного стартового персонажа партии, которому для прохождения доступны два небольших сценария, заканчивающиеся порталом и сбросом прогресса. Внутри каждой фазы сценария игрок выбирает что-то из трёх вариантов: взять ещё одного героя в партию, сразиться с монстром, получить азуру, потратить азуру на предметы.

    Между сражениями можно добавить/убрать персонажей в партию, поменять их классы (странник или волшебник).

    В этом прототипе герои не умирали, а сражения не заканчивались с поражением монстра (нужно использовать кнопку выхода). Опция Enchantment не работала, а все команды в бою просто наносили фиксированный урон.

    Модификация ATB шкалы здесь тоже присутствовала, пусть и совсем условно - команда Magic даёт 2 градации замедления, в то время как команда Item даёт одну градацию ускорения.

    Вёб-версия и apk-файл доступны здесь:

    Disengage by NoNsense



    Прочее

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

    Поэтому систему профессий я стал развивать в тактическом проекте, а для jrpg c ATB завёл иной прототип, который по боёвке похож на то, что было в Микрокосме (но в улучшенном варианте), а вместо непосредственного перемещения по миру-космосу будут использоваться цепочки эвентов как в Disengage:

    [​IMG]
    Ungalaxy, режим сражения
    Метки:

Комментарии

Чтобы оставить комментарий просто зарегистрируйтесь и станьте участником!
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление