Редактирование: Профили персонажей
Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
− | Под '''профилем персонажа''' ('''''character profile''''') подразумевается описание в виде шаблона некоторых | + | Под '''профилем персонажа''' ('''''character profile''''') подразумевается описание в виде шаблона некоторых харктеристик персонажа. |
− | Под '''конкретным персонажем''' ('''''specific character''''') подразумевается чёткое и исчерпывающее описание сталкера, торговца или | + | Под '''конкретным персонажем''' ('''''specific character''''') подразумевается чёткое и исчерпывающее описание сталкера, торговца или актера. Профиль персонажа задается в [[Level Editor]] во вкладке "npc_profile" для свойств объекта. |
Профиль нужен для того, чтобы рандомизировать тех персонажей, которые появляются в игре, но тем самым не нарушить сценарий игры (т.е. персонажи хоть и появляются случайно, но соответствуют заданным характеристикам). | Профиль нужен для того, чтобы рандомизировать тех персонажей, которые появляются в игре, но тем самым не нарушить сценарий игры (т.е. персонажи хоть и появляются случайно, но соответствуют заданным характеристикам). | ||
− | + | XML-файлы шаблонов профилей задаются в секции <code>[profiles]</code> файла '''system.ltx''': | |
<syntaxhighlight lang="ini">[profiles] | <syntaxhighlight lang="ini">[profiles] | ||
;список xml файлов, содержащих профили сталкеров и торговцев | ;список xml файлов, содержащих профили сталкеров и торговцев | ||
Строка 29: | Строка 29: | ||
<code>team_default="1"</code> должен быть задан '''ОБЯЗАТЕЛЬНО''' хотя бы один на команду — он будет использован, если вдруг (чего не должно случиться практически) израсходуются все профили. Профили без данного флажка, будучи единожды выбраны, больше не используются. | <code>team_default="1"</code> должен быть задан '''ОБЯЗАТЕЛЬНО''' хотя бы один на команду — он будет использован, если вдруг (чего не должно случиться практически) израсходуются все профили. Профили без данного флажка, будучи единожды выбраны, больше не используются. | ||
− | |||
− | |||
<syntaxhighlight lang="xml"><specific_character id="ivan_ivanych" no_random="1" team_default="1"> <!-- Уникальный id персональной информации --> | <syntaxhighlight lang="xml"><specific_character id="ivan_ivanych" no_random="1" team_default="1"> <!-- Уникальный id персональной информации --> | ||
− | |||
− | |||
<icon x="14" y="4"></icon> <!-- Иконка, которая отображается при общении. Берётся с текстуры ui_icons_npc. Отсчитывается с верхнего левого угла, но не по пикселям, а по позициям, равным одной иконке. --> | <icon x="14" y="4"></icon> <!-- Иконка, которая отображается при общении. Берётся с текстуры ui_icons_npc. Отсчитывается с верхнего левого угла, но не по пикселям, а по позициям, равным одной иконке. --> | ||
− | |||
<map_icon x="3" y="2"></map_icon> <!-- Иконка, отображаемая на карте. Берётся с текстуры ui_icons_map. Отсчитывается с верхнего левого угла, но не по пикселям, а по позициям, равным одной иконке. --> | <map_icon x="3" y="2"></map_icon> <!-- Иконка, отображаемая на карте. Берётся с текстуры ui_icons_map. Отсчитывается с верхнего левого угла, но не по пикселям, а по позициям, равным одной иконке. --> | ||
− | < | + | <rank>10</rank> |
− | + | <reputation>0</reputation> | |
+ | |||
+ | <panic_threshold>0.1</panic_threshold> <!-- Порог паники. Значение может изменяться от 0 до 1. Если функция оценки вероятности победы падает ниже указанного порога, то сталкер впадает в панику. Если вы установится 0 — в панику он впадать вообще не будет, если в 1 — то будет бегать от крысы. --> | ||
− | <class> | + | <class>Bandit_master</class> <!-- Список классов для profiles, к которым может принадлежать персонаж. То, что связывает этот профиль с идентификатором персонажа. --> |
<community>bandit</community> <!-- Имя группировки данного персонажа. По ней определяется отношение к актору и другим персонажам. --> | <community>bandit</community> <!-- Имя группировки данного персонажа. По ней определяется отношение к актору и другим персонажам. --> | ||
− | < | + | <name>Неизвестный бандит</name> <!-- Высвечиваемое имя, должно прогоняться через стрингтейбл. --> |
− | < | + | <bio>Опытный бандит. Детальная информация отсутствует.</bio> <!-- Биография персонажа, должна прогоняться через стрингтейбл. В релизе не используется. --> |
− | < | + | <start_dialog>hello_dialog</start_dialog> <!-- Стартовый диалог этого персонажа. Более подробно в описании диалогов. --> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | <actor_dialog></actor_dialog> <!-- Диалоги актера (может быть много), которые будут доступны только при встрече с данным персонажем. В принципе не сильно обязательно, но было бы очень удобно. --> | ||
<visual>actors\bandit\stalker_bandit_8</visual> <!-- Имя ogf-модели (без расширения) --> | <visual>actors\bandit\stalker_bandit_8</visual> <!-- Имя ogf-модели (без расширения) --> | ||
Строка 98: | Строка 87: | ||
</supplies> | </supplies> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</specific_character> </syntaxhighlight> | </specific_character> </syntaxhighlight> | ||
− | Для некоторых персонажей требуется | + | Для некоторых персонажей требуется четкое соответствие тип персонажа – персонаж. Например для уникальных квестовых или сюжетных персонажей. В таком случае делаем так, чтобы соответствующему классу персонажа соответствовал только один профиль. В качестве примера класс и профиль Волка: |
<syntaxhighlight lang="xml"> <character id="stalker_esc_wolf"> | <syntaxhighlight lang="xml"> <character id="stalker_esc_wolf"> | ||
<class>stalker_esc_wolf</class> <!-- уникальный класс для Волка --> | <class>stalker_esc_wolf</class> <!-- уникальный класс для Волка --> | ||
Строка 143: | Строка 124: | ||
<actor_dialog>escape_lager_volk_dynamite_done</actor_dialog> | <actor_dialog>escape_lager_volk_dynamite_done</actor_dialog> | ||
</specific_character></syntaxhighlight> | </specific_character></syntaxhighlight> | ||
− | Обратите внимание: хоть класс Волка и отличается от класса сталкера-новичка, оба они | + | Обратите внимание: хоть класс Волка и отличается от класса сталкера-новичка, оба они относится к той же группировке. |