Приветствую Вас Отмычка
Меню сайта
Категории раздела
Утилиты от нашей команды. [6]
Скачать мод. [0]
Здесь вы можете скачать наш мод.
Утилиты. [1]
NoDvD. [1]
Фиксы к VlaMax mod. [0]
Аддоны к VlaMax mod. [0]
Mp карты. [2]
Фан-рассказы. [0]
Статьи [8]
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » Файлы » Статьи

Урок по созданию НПС в ЗП от Stalker 56
31.08.2010, 06:40
Создание НПС
Автор : Сталкер 56
Приступим:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Пункт №1 пропись НПС
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*************************************
*************************************


И так вот те файлы которые нам нужны :
npc_profile.xml
character_desc_zaton.xml

character_desc_****.xml вместо *** название локации
в нашем случае character_desc_zaton.xml

эти файлы находятся в дириктории:
C:\Program Files\S.T.A.L.K.E.R. - Зов Припяти\gamedata\configs\gameplay\
*************************************
*************************************

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Пункт №1,1 создание НПС
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

открываем файл character_desc_zaton.xml

и в конце файла перед </xml> пишем :

;Чувак ;Это просто коментарий делать их можно для себя чтобы не путаться,перед коментарием обезательно ставим знак ;
<specific_character id="new_nps_test" team_default = "1"> ;Айди перса (id должен отличаться от класса)(может быть любым)
  <name>Чувак</name> ;Имя нпс
<icon>ui_inGame2_Soldier_3</icon> ;Иконка нпс (портрет при диалоге)
<map_icon x="1" y="0"></map_icon>
<bio>Опытный сталкер. Детальная информация отсутствует.</bio>
<class>test_nps</class> ;Класс нпс(должен отличаться от айди)(может быть любым)
<community>freedom</community> ;группировка нпс (у нас свобода)
<terrain_sect>stalker_terrain</terrain_sect>
<snd_config>characters_voice\human_02\military\</snd_config>
<rank>40</rank> ;Его ранг
<money min="5000" max="5000" infinitive="0"/> ;Сколько денег будит у нпс(min.max. ставим одинакывыми)
<reputation>0</reputation> ;Его репутация
<visual>actors\stalker_soldier\stalker_soldier_3</visual> ;Его визуал
<supplies>  ;Закрытие секции описание открытие секции SPAWN


[spawn] \n ;Секция SPAWN
wpn_abakan = 1, scope \n ;Спавним абакан с прицелом
ammo_5.45x39_ap = 1 \n ;Патроны
wpn_binoc = 1 \n ;Для прикола бинокль
detector_advanced = 1 \n ;Детектор артефактов самой 1 модели


</supplies> ;Закрытие секции спавна открытие секции добавления файлов и диалогов
#include "gameplay\character_food_army.xml" ;Добавляем файл character_food_army.xml который в папке gameplay заметим что дириктория начинается с папки configs схема добавления : #include "путь к файлу\файл с расширением" это нужно для того чтобы каждому нпс по многу раз непрописывать одно и тоже
#include "gameplay\character_drugs_2.xml" ;Добавление файла
#include "gameplay\character_drugs_mil.xml" ;Добавление файла
<actor_dialog>actor_break_dialog</actor_dialog> ;Добавление диалога (точнее пропись айди диалога схема прописи: <actor_dialog>айди диалога</actor_dialog>)

</specific_character> ;Завершение прописи НПС

Закрываем файл предвалительно его сохранив

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Пункт №1,2 создание НПС как личность
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Открываем файл npc_profile.xml
и в конце перед </xml> пишем :

<character id="new_nps_test"> ;Айди нашего нпс
<class>test_nps</class> ;Класс нашего нпс
</character>
Закрываем файл предвалительно его сохранив
Всё пропись НПС закончена идём дальше...

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Пункт №2 логика НПС
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*************************************
*************************************
дириктория:
C:\Program Files\S.T.A.L.K.E.R. - Зов Припяти\gamedata\configs\scripts\
*************************************
*************************************
Создаём там файл скажем...test_nps_logik.ltx
и пишем в него :

[logic]
active = remark1
invulnerable = true
inv_max_weight = 1
combat_ignore = combat_ignore
danger = danger_ignore

[remark1] no_move = true


[danger_ignore] ignore_distance = 5






[meet]

use = true
use_wpn = true
meet_talk_enabled = true

Тут НПС будет тупо стоять (это логика идет как стандартная)
Про логику можно почитать тут http://stalkerin.gameru.net/wiki/index.php/%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BB%D0%BE%D0%B3%D0%B8%D0%BA%D0%B8._%D0%A7%D0%B0%D1%81%D1%82%D1%8C_0
Там всё ясно и подробно изложено если что будет непонятно пишите мне на ящик Vladimirgorbane@mail.ru Ну или оброщяйтесь в раздел на нашем форуме "Модостроение от А до Я"

Сейчас мы прописали логику
Закрываем файл предвалительно его сохранив

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Пункт №3 спавн НПС
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*************************************
*************************************
файлы :
all.spawn
После распаковки нам нужен будет файл
alife_zaton.ltx
Дириктория:
C:\Program Files\S.T.A.L.K.E.R. - Зов Припяти\gamedata\spawns\
*************************************
*************************************
Приступим...
Распаковываем all.spawn
Распаковщик качаем сдесь http://stalkers-clan.3dn.ru/load/zov_pripjati/programmy/raspkovshhik_zapakovshhik_all_spawn/6-1-0-199
Для распаковщика нужна программа ActivePerl 5.8.8 качаем её отсюда http://download.chip.eu/ru/ActivePerl-for-Windows-5.8.8_42267.html
И так после распаковки открываем файл alife_zaton.ltx (Для снятия кардинат используйте программу Stalkera 56 informer by stalker 56 ссылка http://smk-team.3dn.ru/load/utility_ot_nashej_komandy/informer_by_stalker_56/1-1-0-6
После пишем туда в конец файла (в самый конец) это:


[1866] ;НОМЕР ОБЪЕКТА КОТОРЫЙ СПАВНИТСЯ. обязательно должени быть следуюшим! на пример, 1 объект [1] за ним должен быть 2 объект [2] и так далее не нарушая последовотельности
; cse_abstract properties
section_name = stalker ;что спавним сейчас у нас stalker это сначит что заспавнится нпс а не мутант или стол или ещё там чтонибудь но это не группировка!
name = new_nps_test ;айди нпс
position = 124.706726074219,-7.32147789001465,178.627746582031 ;позиция спавна
direction = 0.999868869781494,0,0.0161941237747669 ;это куда он смотрит тоесть градус яво поворота

; cse_alife_trader_abstract properties
character_profile = new_nps_test ;айди нпс (не класс!)

; cse_alife_object properties
game_vertex_id = 316 ;Вертекс игры
distance = 0 ;дистанция на сколько метров появится объект от точки спавна
level_vertex_id = 1180496 ;вертекс уровня
object_flags = 0xfffffffb
custom_data = <<END ;кустом дата (Ето логика)
[logic]
cfg = scripts\test_nps_logik.ltx ;ну вот впринцапи сам файл с логикой (наш файл) и указанный путь к нему
[spawn]

END


; cse_visual properties
visual_name = actors\novice\green_stalker_2

; cse_alife_creature_abstract properties
g_team = 0
g_squad = 0
g_group = 0
health = 2
dynamic_out_restrictions =
dynamic_in_restrictions =

upd:health = 2
upd:timestamp = 0
upd:creature_flags = 0
upd:position = 124.706726074219,-7.32147789001465,178.627746582031 ;тут необходимо повторить позицию(это проверка если она не совпадёт с той что выше то присвоит позиции вот ето значение)
upd:o_model = 0
upd:o_torso = 0,0,0
upd:g_team = 0
upd:g_squad = 0
upd:g_group = 0

; cse_alife_monster_abstract properties

upd:next_game_vertex_id = 65535
upd:prev_game_vertex_id = 65535
upd:distance_from_point = 0
upd:distance_to_point = 0

; cse_alife_human_abstract properties
predicate5 = 2,2,1,2,0
predicate4 = 2,2,1,2

; cse_ph_skeleton properties

upd:start_dialog =

; se_stalker properties

После таго как вы это прописали удаляем коментарии (это короче все слова после ; все это удоляем)


Вот впринцапи и всё сохраняем, закрываем файл и запаковываем all.spawn (там может появится all.spawn.new или new.spawn)
Кидаем его в папку SPAWNS переименовываем в all.spawn

И пробуем запустить игру поидее наш нпс появится рядом с Бородой и он будет из свободы в армейском бронежелете.

----------------------------------------------

С уважением Stalker 56 (SMK-Team)


Категория: Статьи | Добавил: Koba
Просмотров: 5281 | Загрузок: 0 | Комментарии: 14 | Рейтинг: 0.0/0
Всего комментариев: 3
3 artem999  
0
stalker 56 --- помоги!!! сделай мне 1npc скайп-artem03082000

2 awcccc  
0
спасибо!слушай а можешь еще написать как из этого нпс сделать барыгу?)

1 conterterr  
0
stalker 56,плиз сделай мне 2-х нпс!Пиши в личку-artemsizov999@mail.ru smile

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск
Календарь
Часы
Радио

Партнёры


© SmK-Team 2010