Перейти к контенту
SCRIPT

Создание нового НПС

Рекомендуемые сообщения

1 проблема: Создал НПС всё работает, сделал ему новый диалог, прописал в его в секцию к нпс. В игре диалог не появился. В чём ошибка?

 

Как создал? Куда прописал? Здесь нет экстрасенсов, чтобы увидеть, что ты и куда написал. Просишь помощи - предоставляй и всю информацию для этого.

P.S. вопрос кстати не в эту тему... надо бы её вообще прикрыть.

ColR_iT

Изменено пользователем ColR_iT
Ссылка на комментарий

Доброго времени суток!
Ребят прошу помощи, как новичок в моддинге, решил создать по-инструкциям нового НПС в S.T.A.L.K.E.R Clear Sky.
И соответственно столкнулся с ошибкой... :(
Код при использовании:

 


 

character_desc_marsh:

 



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

<class>test_npc</class>
<community>csky</community>
<terrain_sect>stalker_terrain</terrain_sect> 
<snd_config>characters_voice\human_01\csky\</snd_config>

<rank>400</rank> 
<reputation>0</reputation>

<visual>actors\stalker_nebo\stalker_nebo_1</visual>
<supplies>
[spawn] \n 
wpn_ak74 \n 
#include "gameplay\character_items.xml" 
#include "gameplay\character_food.xml" 
#include "gameplay\character_drugs.xml" 
</supplies> 
#include "gameplay\character_criticals_4.xml" 
#include "gameplay\character_dialogs.xml" 
</specific_character> 

npc_profiles:



<character id="test_npc">
<class>test_npc</class> 
</character> 

spawn_sections_marsh:



[test_npc]:stalker
$spawn = "respawn\test_npc" 
character_profile = test_npc

alife_marsh в all.spawn:



[1417] 

; cse_abstract properties 
section_name = stalker
name = test_npc
position = -168.11999511719,0.48540517687798,-290.10437011719
direction = 0,0,0
id = 65535
version = 124
script_version = 8
spawn_id = 8310

; cse_alife_trader_abstract properties 
money = 5000 
character_profile = test_npc

; cse_alife_object properties 
game_vertex_id = 136
distance = 7
level_vertex_id = 58768
object_flags = 0xfffff7bf 
custom_data = <<END
[logic]
active = walker@mar_test_npc

[walker@mar_test_npc] 
path_walk = mar_test_npc_walk 
path_look = mar_test_npc_look
danger = danger_condition@mar_test_npc

[danger_condition@mar_test_npc] 
ignore_distance = 0

[smart_terrains] 
none = true
END 

; cse_visual properties 
visual_name = actors\stalker_nebo\stalker_nebo_1 

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

upd:health = 0 
upd:timestamp = 0 
upd:creature_flags = 0 
upd:position = -168.11999511719,0.48540517687798,-290.10437011719
upd:o_model = 0 
upd:o_torso = 1.57079601287842, 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,0,2,2,1 
predicate4 = 1,1,0,0 

; cse_ph_skeleton properties 

upd:start_dialog = 

; se_stalker properties 

way_marsh в all.spawn:



[mar_test_npc_look]
points = p0 
p0:name = wp00 
p0:flags = 0x1 
p0:position = -168.11999511719,0.48540517687798,-290.10437011719
p0:game_vertex_id = 136 
p0:level_vertex_id = 58768 

[mar_test_npc_walk] 
points = p0 
p0:name = wp00 
p0:flags = 0x1 
p0:position = -168.11999511719,0.48540517687798,-290.10437011719
p0:game_vertex_id = 136 
p0:level_vertex_id = 58789 

После этого, вылетает с ошибкой:

 



FATAL ERROR
 
[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_error
[error]File          : E:\priquel\sources\engine\xrServerEntities\script_engine.cpp
[error]Line          : 180
[error]Description   : <no expression>
[error]Arguments     : LUA error: ....Р. - Чистое Небо\gamedata\scripts\se_stalker.script:257: attempt to index field 'exclusives' (a nil value)

Такого файла в моей геймдате нету, но после добавление из другого мода, ошибка та-же, только в другой строке...

Сама строка :257:



function se_stalker:fill_exclusives()
	self:get_ini()
	self.smart_terrain_conditions             = smart_terrain.read_smart_terrain_conditions( self )

	if self.smart_terrain_conditions then
		for name, condlist in pairs(self.smart_terrain_conditions) do
Строка 257: --			smart_terrain.exclusives[name] = (smart_terrain.exclusives[name] or 0) + 1
		end
	end
end

После удаление этой function, оно указывает на тот же exclusive, только в другой строке, после того как удалить и её, вылетает без точной ошибки, а именно:

 



Создание новой игры...
* Creating new game...
* Loading spawn registry...
* 10232 spawn points are successfully loaded
 stack trace:

 

 

Заранее спасибо Вам за помощь, буду очень благодарен!
 

P.S Прошу прощения, если написал не в ту тему.

Изменено пользователем ColR_iT
Ссылка на комментарий

Ребят, с ошибкой в файле se_stalker. разобрался, в all.spawn, alife_marsh, не надо было прописывать тег - [smart_terrains].

Но после вылетает с такой ошибкой:
 

Сервер: Старт...
* phase time: 149 ms
* phase cmem: 98896 K
Настройка скриптов...
* phase time: 1 ms
* phase cmem: 98896 K
Создание новой игры...
* Creating new game...
* Loading spawn registry...
* 10232 spawn points are successfully loaded
stack trace:

0023:035C883B xrGame.dll

Если не трудно, помогите разобраться, пожалуйста.

Ссылка на комментарий

Надеюсь темой не ошибся...

Перенёс Шрама из ЧН в ТЧ-SDK, сделал ему такой "черновой" профиль профиль:

"Шрам"

Опытный наёмник.
naemnik_shram
stalker
90
-30
actors\stalker_hero\stalker_hero_1
[spawn] \n
wpn_desert_eagle \n
ammo_11.43x23_hydro = 1 \n
wpn_sig550 \n
ammo_5.56x45_ap = 1 \n 

hello_dialog

 

Прописал в:

	<character id="naemnik_shram">
		<class>naemnik_shram</class>
	</character>

 

Ну и в:

[profiles]
;список xml файлов, содержащих профили сталкеров и торговцев
files = npc_profile
;список xml файлов, содержащих описания конкретных сталкеров и торговцев
specific_characters_files = character_desc_general, character_desc_simulation,character_desc_escape, character_desc_garbage, character_desc_agroprom, character_desc_darkvalley, character_desc_deadcity, character_desc_bar, character_desc_yantar, character_desc_military, character_desc_radar, character_desc_pripyat, character_desc_aes, character_desc_kishka, character_desc_sarcofag, character_desc_nebo

 

В SDK на тестовой локе неписю хотел присвоеить визуал Шрама (так как, если я всё правильно понял, визуал в СДК прописывать бесполезно, визуаль у непися всё равно будет согласно его nps profile) и не получилось:b0f05cfc0d0ec8dadef821402267483f.png

af30f315a294815697b8f1b70ccc19f5.png

3fb37c46c5d93ebeda53e9b2ebcbd5b4.png

acccd6f626bf8d64744bd4327214f541.png

 

Может не везде прописал профиль? Подскажите где ещё , кроме system.ltx, надо прописать?

 

Избавился от вылета, в npc_profile.xml добавил:

<character id="naemnik_shram">
		<class>naemnik_shram</class>
		<specific_character>naemnik_shram</specific_character>
	</character>
Но теперь другой вылет нарисовался, связанный с отсутствием секции "stalker_hero_1", думаю разберусь откуда...

h-264.jpg

Ссылка на комментарий

Подскажите по такому нюансу... По данному уроку, новой модели можно назначить до 4-х анимок...

Но после экспорта в ogf и подгрузке локации, на которой находится данная модель нпс, в логе появляется ругань на анимации...
Если назначить одну - stalker_animation.omf, то всё нормально.

h-264.jpg

Ссылка на комментарий

@Меченый12, это неплохая статья по зачаткам логики (чтоб НПС не бегал по локации), а так она уже устарела морально, после выхода программ для создания НПС.

Интересно, а чем же устарела статья?
ColR_iT


@CuJIbBEP
Видимо, это проблема конвертера модели...(( Насколько я знаю, анимации в стандартных моделях хранятся в отдельном OGF, а не идут вместе с полигонами.

Изменено пользователем ColR_iT
Ссылка на комментарий

Приветствую, сталкеры!

 

Уроку большой плюс у меня всё получилось сразу...только почему-то не могу прописать своему нпс диалог, разжуйте мне пожалуйста как сделать чтобы я не только ему говорил "До встречи" ) (прописывал свой диалог как старт_диалог и как актор_диалог - одна фигня((( :(

 

Форум большой. Поиск никто не отменялhttp://www.amk-team.ru/forum/index.php?showtopic=6458

BFG

Ссылка на комментарий

Всем привет! У меня проблема в том что при подходе к точке где заспавнен НПС происходит безлоговый вылет, вот я и непойму в чем ошибка.

Можете показать на примере как у вас прописаны точки в all.spawn?

 

Пробовал написать вот так, словил вылет без лога.

 

[esc_walker_stay_at_position_walk]


points = p0
p0:name = wp00
p0:flags = 0x1
p0:position = 147.83474731445,0.042493581771851,339.35610961914
p0:game_vertex_id = 231
p0:level_vertex_id = 452767


[esc_walker_stay_at_position_look]
points = p0
p0:name = name00
p0:flags = 0x1
p0:position = 162.13391113281,1.1681514978409,338.474609375
p0:game_vertex_id = 230
p0:level_vertex_id = 466726

 

Изменено пользователем Xbcord
Ссылка на комментарий

Приветствую! 

 

Коротко: Решил отредактировать профиль Сидоровича, т.е. убрать у него все диалоги. Игра запустилась нормально но поговорить с сидоровичем нельзя.

<specific_character id="escape_trader" no_random = "1">
<name>escape_trader_name</name>
<icon>ui_npc_u_trader</icon>
<bio>escape_trader_bio</bio>
 
<class>trader</class>
<community>trader</community>
<visual>actors\trader\trader</visual>
 
<rank>330</rank>
<reputation>23</reputation>
<money min="100000" max="100000" infinitive="1"/> 
<supplies>
[spawn] \n
wpn_knife \n
</supplies>
               <start_dialog>dm_hello_dialog</start_dialog>
 
</specific_character>

 

 

 

При создании нового нпс с такой же проблемой сталкивался, но после смены ему группировки с ним можно было говорить. А вот с торговцем такой фокус не помогает. Что делать? 

Изменено пользователем MGS
Ссылка на комментарий

@MGS, как понять поговорить нельзя. Вот скрин, я заблокировал полностью все диалоги, говори, только не о чем.

ebfe12015d8fad56c435fbcd2c9f51cb5f209918

Также и при создании нпс, как это с ним нельзя говорить, ерунда. Ни разу такого не было, если только в логике не стоит no_meet.

Intrel Core i5 9400F, msi gtx 1660 super ventus, RAM 16g-DDR4, HD 2000g, Win 10x64, SSD 256g, SSD m2 500g.

Ссылка на комментарий

@MGS, как понять поговорить нельзя. Вот скрин, я заблокировал полностью все диалоги, говори, только не о чем.

ebfe12015d8fad56c435fbcd2c9f51cb5f209918

Также и при создании нпс, как это с ним нельзя говорить, ерунда. Ни разу такого не было, если только в логике не стоит no_meet.

 

Если ты не сталкивался с такой проблемой - это не значит что это ерунда! Вот:

http://i-fotki.info/16/ae666a7a2b2644fe5fe363ba7197a0e9025d7f180640383.jpg.html

У меня нету Говорить (KF)

Ссылка на комментарий

Добрый день всем, у меня вопрос, в самом сдк есть, кошка, химера, излом, скажите как отразить их в панели сдк, у меня их нет в панели, что бы заспавнить, обьясните пожалуйста, вот такие файлы есть: http://SSMaker.ru/b442340e/ чего то наверно не хватает для спавна этих мутантов, пытался ковертировать в object, после попытался заспавнить, но костом дата отсутствует, (это где логику в sdk прописывать), вот тут:http://SSMaker.ru/e911ea50/ , сама модель в ogf текстуры есть тут: http://SSMaker.ru/a5e1fe8e/ ,но почему то не вижу ее, помогите пожалуста разобраться!!Заранее благодарен за чью либо помощь в столь нелегком вопросе!!!
 
Так и будем постить поток сознания во все темы подряд ? Один раз поправил, и предупредил. Теперь пошло в шкалу. Пост здесь немного пусть повисит, для вразумления, потом снесу. dc


Создаете темы непонятно для чего, тема извените называется "Создание нового НПС", чем 'это, что я спросил не относится к этой теме, знаете уважаемый куратор темы, делайте что хотите, хоть забаньте, я гляжу вам не потрафиш, накушался спасибо, действительно кто заслуживает уважения так это ColR_iT и Comandor, свой проект размещу на другом, более дружественном форуме!!!А теперь прощайте !!

Вот здесь: http://www.amk-team.ru/forum/index.php?showtopic=9009&p=840601 - Вам уже попытались ответить, но, очевидно, не угадали, раз Вы запостили тот же самый вопрос уже сюда (и еще в менее читаемом виде).
Было бы хотя-бы понятно, ЧТО Вы хотите - вопрос был бы просто перенесен в соответствующую тему, и все. Возможно, там бы ответили по существу.
Ну, Вам виднее, как дальше быть.

Изменено пользователем Dennis_Chikin
Ссылка на комментарий

Ребят, я создал непися через all.spawn  вот с такой логикой:

[logic]  
active = walker  
 
[walker]  
path_walk = vovan_walk
path_look = vovan_look
END
Да, он смотрит, туда куда надо и стоит, там где надо. Но когда я уйду на другую локацию и вернусь обратно - он пропадает! (Спавнил на Кордоне в деревне новичков). Помогите плиз!
Изменено пользователем BoBaH_671

Ранее был известен под ником BoBaH_671.

Ссылка на комментарий

Если это действительно вся логика НПСа - то ничего удивительного. Нет запрета на "принятие" в гулаги, вот его соответственно в какой-то гулаг и затягивает. Попробуй добавить:

[smart_terrains]
none = true

И посмотришь результат.

Изменено пользователем AndreySol
Ссылка на комментарий

AndreySol, спасибо, всё работает.


Ах, еще хотел спросить:
Как сделать НПС бессмертным?

Изменено пользователем BoBaH_671
  • Не нравится 1

Ранее был известен под ником BoBaH_671.

Ссылка на комментарий

Народ, киньте ссыль как сделать бессмертного НПС не на ЗП, а на ТЧ. Заранее спасибо.

  • Не нравится 1

Ранее был известен под ником BoBaH_671.

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    Ни один зарегистрированный пользователь не просматривает эту страницу.

AMK-Team.ru

×
×
  • Создать...