Лучшая модификация месяца
Всего ответов: 202
Главная » Статьи » Сталкер Зов Припяти » Уроки по модостроению

Спавн НПС через скрипты в ЗП
Открываем файл
D:\S.T.A.L.K.E.R. - Зов Припяти\нпс\configs\creatures\spawn_sections_zaton
В самое начало добавляем это:

Code
[my_stalker]:stalker
$spawn = "respawn\my_stalker"
character_profile = my_stalker
spec_rank = master
community = stalker
custom_data = scripts\zaton\my_stalker_npc_logic.ltx

Дальше идем в папку

D:\S.T.A.L.K.E.R. - Зов Припяти\нпс\configs\gameplay

Открываем character_desc_zaton
В самый конец добавляем, но перед <\xml>!

Code
<specific_character id="my_stalker" team_default = "1">
<name>Johann</name>
<icon>ui_inGame2_neutral_4</icon>
<map_icon x="1" y="0"></map_icon>
<bio>Опытный сталкер. Детальная информация отсутствует.</bio>

<class>my_stalker</class>
<community>stalker</community>
<terrain_sect>stalker_terrain</terrain_sect>
<snd_config>characters_voice\human_01\stalker\</snd_config>

<rank>65</rank>
<reputation>0</reputation>
<money min="2500" max="5000" infinitive="0"/>

<visual>actors\stalker_neutral\stalker_neutral_4</visual>
<supplies>
[spawn] \n
wpn_beretta = 1 \n
ammo_9x19_fmj = 1 \n
grenade_rgd5 = 1 \n
#include "gameplay\character_items.xml"
#include "gameplay\character_food.xml"
#include "gameplay\character_drugs.xml"
</supplies>

#include "gameplay\character_criticals_4.xml"
</specific_character>

И открываем npc_profile
После строчки добавляем

Code
<character id="my_stalker">
<class>my_stalker</class>
</character>

А теперь создадим логику для него
D:\S.T.A.L.K.E.R. - Зов Припяти\нпс\configs\scripts тут создаем папку new а там файл my_stalker_npc_logic
И пишим там
Если ты хочешь бесмертного то

Code
[logic]
active = remark1
danger = danger_ignore
invulnerable = true

[danger_ignore]
ignore_distance = 5

[remark1]
no_move = true
anim = choose
on_actor_dist_le = 2| remark@hello
invulnerable = true
meet = meet_guide

[meet_guide]
abuse = false
use = true
allow_break = false
meet_on_talking = false

[remark@hello]
no_move = true
invulnerable = true
meet = meet_guide
on_actor_dist_le = 10| remark1

А если смертного то
Code
[logic]
active = remark1
danger = danger_ignore
invulnerable = false

[danger_ignore]
ignore_distance = 5

[remark1]
no_move = true
anim = choose
on_actor_dist_le = 2| remark@hello
invulnerable = false
meet = meet_guide

[meet_guide]
abuse = false
use = true
allow_break = false
meet_on_talking = false

[remark@hello]
no_move = true
invulnerable = false
meet = meet_guide
on_actor_dist_le = 10| remark1

Открываем D:\S.T.A.L.K.E.R. - Зов Припяти\нпс\scripts
И создаем скрипт sniper_add.script
И пишим там (открываем с помощью блокнота)

Code
function start_add_spawn()--\\
--\\
--
spawn_sniper_one()
end

function spawn_sniper_one()
local x= 111.75521087646
local y= -3.9362425804138
local z= 185.2212677022
local level_vertex= 1158851
local game_vertex_id= 316
alife():create("my_stalker",vector():set(x,y,z),level_vertex,game_vertex_id)
end

function save_variable(variable_name, value)
xr_logic.pstor_store(db.actor, variable_name, value)
end
function load_variable(variable_name, value_if_not_found)
return xr_logic.pstor_retrieve(db.actor, variable_name, value_if_not_found)
end

И открываем скрипт тут же bind_stalker.script

Ищим строку

Code
function actor_binder:update(delta)
object_binder.update(self, delta)

if string.find(command_line(), "-designer") then
return
end

И после неё пишим это
Code
if sniper_add.load_variable("spawn_sniper",false)==false then
sniper_add.start_add_spawn()
sniper_add.save_variable("spawn_sniper",true)
end

Всё, мы сделали нпс, он появится около сыча слева от стойки.
Удачи!

P.S. когда я делаю нпс смертным,то он просто шляется без дела по локации


Категория: Уроки по модостроению | Добавил: Блэк☭ (19.06.2017)
Просмотров: 234 | Теги: зп, через, НПС, спавн, Скрипты | Рейтинг: 5.0/1
Всего комментариев: 0
Внимание! Прочтите для ознакомления!
Правила написания коментария: В комментариях запрещено - Писать сообщение прописными буквами (Caps Lock). Рекламировать какие-либо сайты. Использовать более двух смайлов в одном комментарии. Оскорблять пользователей сайта. Выражаться некультурными словами. Комментарии, в которых содержатся предложения по обмену баннерами, лишние вопросы, или просто не несущие никакого смысла будут незамедлительно удаляться, а пользователи, написавшие их, будут строго наказаны.

avatar
Приветствую, Гость!

-Ну что,Бродяга?
Мне тебе мозги парить,как я со всеми новичками делаю,или с тобой как с опытным сталкером обращатся?


-Давай как с новичком..

-Давай как с опытным!!!
Рейтинг@Mail.ru
Онлайн всего: 1
Бродяг: 1
Сталкеров: 0

[ Сегодняшние посетители ]