воскресенье, 28 марта 2021 г.

ИИ в RPG Maker. Базовые настройки.

Разбираем возможные настройки ИИ для пошаговых рпг на примере RPG Maker.

Если ваша игра ориентирована в том числе и на боевку, то стоит задуматься об интеллекте противников. Посмотрим, что для этого нам может предложить мейкер.


1. Базовые настройки.

Все их знают, но стоит быстро повторить. В настройках врага есть список, каждый пункт которого открывает подобное окно.



Выбираем скилл, его рейтинг от 1 до 10, он определяет вероятность применения скилла если по настройками несколько скиллов могут использоваться в этот ход; чем выше рейтинг - тем больше шанс.

Далее, ставим условие (к сожалению, выбирается только одно). 
- always (всегда) - каждый ход
- turn no. (на определенном шаге битвы) - вид a + bx, например, 1+3х означает на 1, 4, 7 и так далее ходах.
условия по HP, MP (от и до в процентном соотношении) - удобно для разного рода лечения и восстановления маны.
- state (статус) - когда наложен статус, например, полезно, если надо снять яд
- party level (уровень партии) - тут берется наисвысший уровень персонажа в пати
- switch (от условия, флажка) - например, в процессе битвы после 5го хода или сюжетного диалога в настройках группы врагов (troops) можно сменить флажок и теперь босс будет применять сильное заклинание.

Небольшой хинт для пункта turn no. По умолчанию он работает так, что настройка 0+4х заставит срабатывать скилл только с 4го хода, а не с нулевого. Поэтому заменяем код в 
class Game_Enemy (# закоментированный старый), либо дописываем где-нибудь alias.
def conditions_met_turns?(param1, param2)
    n = $game_troop.turn_count
    if param2 == 0
      n == param1
    else
      #  n > 0 && n >= param1 && n % param2 == param1 % param2
      n >= param1 && n % param2 == param1 % param2
    end
  end


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

Немаловероятно, это и будет авторской задумкой - найти подход к боссу. В противном случае можно допускать небольшую случайность (например, иногда на ход босса вешать 2-3 альтернативных скилла, а не жестко определенный один, да и сюжетные ходы "по условию" тоже не отменял никто).

Сюжетные ходы удобно настраивать в условиях группы врагов (читай, битвы), что представлены в окне ниже:


Здесь возможности побогаче, например, можно проверить, что помощник босса умер (Enemy HP < %0), и воскресить его, или диалогом пожаловаться на дерзость героя и жахнуть заклинанием вне очереди, или превратиться в кого-либо, и даже просто сменить флажок для того, чтобы применять новые заклинания (полный список см. в events, особенно на странице 3, раздел Battle).

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


Под конец этой базовой статьи приведу живой пример настроек босса Тэнгу из ДДД:

Настройки врага. Как видите, все расписано по ходам с зацикленным на 4 шаблоном. Последний пункт (обычная атака с рейтингом 5) оставлен на случай, если у него закончится мана. Чтобы она случайно не вызвалась (или вызвалась в крайне редких случаях), ставим у предопределенных скиллов рейтинг 10.


Настройки группы (битвы) босса Тэнгу. В начале битвы босс произносит речь и атакует героев заклинанием Ураган, не тратя на это ход. 



Комментариев нет:

Отправить комментарий