Сповіщення
Очистити все
04.11.2023 00:07
Вступ
У цій статті ми навчимося редагувати NPC: змінювати вміст їх інвентарю, репліки, поведінку, ім'я та інші параметри.
Параметри
За параметри NPC відповідають файли:
gamedata\config\gameplay\character_desc_[назва локації].xml
Кожен із них розбитий на секції - по одній на NPC. Використовуються такі параметри:
- <name>...</name> - Ім'я (посилання на рядок у текстовому масиві).
- <icon>ui_npc_...</icon> - Иконка для диалогов/торговли/PDA.
- <bio>..._bio</bio> - Біографія (у грі не використовується).
- <class>...</class> - Клас (краще не чіпати). Imp 12:46, 12 серпня 2007 (EEST)Потрібно для того, щоб автоматичні респавнери могли сповнити трохи різних персонажів. Тобто наприклад у грі є опис восьми (здається може і більше) різних новачків і що б при автоматичному респавні не виходила купа братів-близнюків, респаунер налаштовується на клас персонажів і випадковим чином спавнить різних персонажів одного класу.
- <community>...</community> - Угруповання.
- <rank>...</rank> - Ранг.
- <reputation>...</reputation> - Репутація.
- <money min="..." max="..." infinitive="..."/> - Кількість грошей (infinitive="1" - нескінченні гроші).
- <snd_config>...</snd_config> - Набір звуків.
- <crouch_type>-1</crouch_type> - Тип присідання. Краще не чіпати.
- <visual>actors\...</visual> - Зовнішність. Впливає зовнішній вигляд костюма, але з його властивості. Вкажіть тут екзоскелет – і персонаж справді в ньому виявиться за зовнішністю, і за властивостями.
- <supplies>...</supplies> - Предмети, які у нього в інвентарі. Деякі з них у грі не відображаються, тому не дивуйтеся присутності тут предметів на кшталт рації чи ліхтарика.
У грі відображаються всі предмети, просто при торгівлі є обмеження на допустимі до торгівлі предмети, а при смерті персонажа "заборонені" предмети видаляються скриптом. Imp 12:46, 12 серпня 2007 (EEST)
- <start_dialog>...<start_dialog> - Вітальний діалог. Їх може бути кілька, із різними умовами появи.
- <actor_dialog>...</actor_dialog> - Діалоги з гравцем.
Практика
Змінимо, наприклад, параметри NPC на ім'я Вовк.
Відкриємо файл:
\config\gameplay\character_desc_escape.xml
І знайдемо в ньому поділ, йому відповідний:
<!----------------------esc_wolf---------------------> <specific_character id = "esc_wolf" team_default = "1" > <name > esc_wolf_name </name > <icon > ui_npc_u_stalker_neytral_balon_1 </icon > <bio > esc_wolf_bio </bio > <class > esc_wolf </class > <community > stalker </community > <terrain_sect > stalker_terrain </terrain_sect > <rank > 434 </rank > <reputation > 5 </reputation > <money min = "600" max = "2000" infinitive = "0" /> <snd_config > characters_voice\human_01\stalker\ </snd_config > <crouch_type > -1 </crouch_type > <visual > актори\neytral\stalker_neytral_balon_1 </visual > <supplies > [спаун] \n wpn_pm \n боєприпаси_9x18_fmj = 1 \n wpn_ak74u \n патрони_5,45x39_fmj \n факел_пристрою \n ручне_радіо \n </supplies > #include "gameplay\character_criticals_4.xml" // <start_dialog > escape_lager_volk_talk </start_dialog > <start_dialog > dm_hello_dialog </start_dialog > <actor_dialog > dm_cool_info_dialog </actor_dialog > <actor_dialog > dm_help_wounded_medkit_dialog </actor_dialog > < actor_dialog > tm_wolf_dialog </actor_dialog > <actor_dialog > tm_wolf_reward </actor_dialog > </ специфічний_символ >
Змінимо деякі параметри. Видамо йому FN2000 і Desert Eagle, візьмемо в "Долг" і зробимо необмежену кількість грошей:
<!----------------------esc_wolf---------------------> <specific_character id = "esc_wolf" team_default = "1" > <name > esc_wolf_name </name > <icon > ui_npc_u_stalker_neytral_balon_1 </icon > <bio > esc_wolf_bio </bio > <class > esc_wolf </class > <community > dolg </community > <terrain_sect > stalker_terrain </terrain_sect > <rank > 434 </rank > <reputation > 5 </reputation > <money min = "600" max = "2000" інфінітив = "1" /> <snd_config > characters_voice\human_01\stalker\ </snd_config > <crouch_type > -1 </crouch_type > <visual > актори\neytral\stalker_neytral_balon_1 </visual > <supplies > [спаун] \n wpn_deagle \n патрони_11,43x23_fmj = 1 \n wpn_fn2000 \n патрони_5,56x45_ap \n патрони_5,45x39_fmj \n факел_пристрою \n ручне_радіо \n </supplies > #include "gameplay\character_criticals_4.xml" // <start_dialog > escape_lager_volk_talk </start_dialog > <start_dialog > dm_hello_dialog </start_dialog > <actor_dialog > dm_cool_info_dialog </actor_dialog > <actor_dialog > dm_help_wounded_medkit_dialog </actor_dialog > < actor_dialog > tm_wolf_dialog </actor_dialog > <actor_dialog > tm_wolf_reward </actor_dialog > </ специфічний_символ >
Для введення нового NPC у симуляцію достатньо створити новий профіль.