Блог Хайтола/Введение в написание поведения существ

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

Время выхода статьи: Четверг, 4 апреля 2019 года в 13:05UTC
 (1759 дней назад)

Блог Хайтола | ← Созидание находок в своде приключений | Осмотр Северии →

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

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

Устройство изпользует написи на языке JSON, которые вызывают сборные части поведения, позволяющие нам указать, как существо возпринимает мир и как оно откликается в различных случаях. Эти написи могут вызывать движения, изменения состояния и многое другое — крайне простым примером этого может быть напись, определяющая то, побежит ли существо при угрозе нападения или попытается защититься. Более сложные написи могут посылать существ в погоню за игроками или заставлять их искать то, что им нравится, например, костры или пищу.

>
>
>
> | *Мы изпользуем блоки написей для создания существа с нуля. У нас есть датчики, отвечающие за то, как существо возпринимает мир вокруг него, и именно так оно решает, как оно хочет действовать. Далее у нас есть действия и движения, которые отвечают за то, как существа будут взаимодействовать с миром или их целью, или тем, на чем они сосредотачивают внимание. Мы объединяем эти значения для создания значений и установок, из которых можно легко и быстро получить варианты поведения.*
> | — говорит разработчик Йозеф Гриффит
>
>

В примере выше вы можете видеть отрывок написи, который заставляет вступать трорка в действие, когда он видит игрока. Напись обрабатывает несколько частей этого взаимодействия. Он вызывает «тревожное» движение, которое помогает игроку понять, что он был замечен. А ещё он создаёт отвед в виде «маяка», который оповещает других трорков в пределах определённого радиуса о присутствии игрока. Точные подробности данного взаимодействия можно настроить, но общее воплощение основана на установках верхнего уровня, которые являются общими для большинства существ в игре. Данный сборный подход к поведению упрощает воплощение совершенно новых NPC или существ.

>
>
>
> | *Когда вы пишите существо, вам не нужно указывать такие вещи, как “размах мечом” или “переместить разстояние X вправо”. Достаточно просто применить общую составную часть вроде 'бежать' или 'искать' — затем устройство поведения обрабатывает основы выполнения желаемого действия.На самом основоположном уровне, наиболее простой способ создать NPC — изпользовать существующие установки. Эти установки состоят из составных значений, которые мы созидаем из датчиков, действий и движений, чтобы упростить повторное изпользование поведения существа в нескольких разных написях. Одной из примеров составных частей является обнаружение и опознавание звука. Она изпользует сочетания датчиков, которое позволяет сушеству возпринимать своё окружение. Когда вы добавляете существо в мир, оно должно быть в состоянии справляться с окружениями, для которых оно не было заведомо написано, по крайней мере, в какой-то степени.*
> | — объясняет Йозеф Гриффит
>
>

>
>
>
> | *Важной особенностью всего этого устройства является возможность многоразового изпользования. Существующие поведения легко изменить, заменить части, и так же легко создать что-то новое. Для тех, кто хочет изменять вещи или созидать своё содержие, преимущество в том, что легко вносить простые изменения, но оно позволяет изменятелям и изменять всё до мельчайших подробностей.*
> | — говорит разработчик Эрик Райнхарт
>
>

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

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

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

>
>
>
> | *Какие-то небольшие части добавляются в самом ходе разработки. К примеру, у трорков есть частица поведения “закалки”, когда они начинают драться друг с другом. Когда я это продумывал, побеждённый трорк изменял состояние. Иногда они сразу же переходили в состояние “дремоты” — это было забавно, потому что выглядело так, будто их вырубили. В итоге я сделал всё правильно, и в настоящее время в миг закалки троки будут вырубать друг друга после боя.*
> | — говорит Йозеф Гриффит
>
>

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

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

>
>
>
> | *Я создал напись для трорка-лучника и пытался проверить, насколько хорошо лучник стреляет. Это был первый раз, когда у нас появилась возможность переключить оружие для NPC. Было удивительно пытаться преследовать этого лучника, а затем, когда вы уже достаточно близко, он поворачивался и нападал на вас с оружием ближнего боя. Объединение этих действительно простых действий оказалось очень плодотворным.*
> | — говорит Эрик Райнхарт
>
>

В видео выше вы можете видеть пример нескольких простых частей поведения трорка, работающих вместе. Трорк спит на улице в миг, когда начинается дождь. Это вызывает изменение состояния от “спящего” к “бодрствующему”, и в это мгновение трорк решает найти себе тёплое укрытие. Затем он подходит ко ближайшему костру и садится. В создании данного мгновения участвуют несколько различных частей написи поведения трорка, но вместе они создают ощущение личности существа. Цель, которой мы хотим достичь с нашим устройством поведения — наполнить приключение игрока захватывающими мгновениями, как этот, и мы рады видеть, что изменятели могут придумать, когда они получают её в свои руки!

Вот ещё пара примеров поведения существ, которые вы можете встретить, изследуя Орбис:

Предыдущая статья* Созидание находок в своде приключений
Следующая статья* Осмотр Северии