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

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


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

Вообще то, я спрашивал как исправить, а не как переводится, я и так отлично знаю.

Ааа...еще забыл добавить. Вместо character_items в логе может вылетать все что угодно, что записано в виде include "gameplay\character_items.xml.

Вопрос 2: что делает include "gameplay\character_items.xml?

Изменено пользователем Gandifil

Народ, у меня проблема-создал квест, но метка на созданного мной НПСя никак не хочет ставиться, что делать?

MustaNG это где?

Изменено пользователем ZeeK

Строгое предупреждение от администратора n6260
1. Тут тема создания НПС, а не скриптового спауна.

Сообщение от администратора n6260
2. По спауну есть отдельная тема.

3. По спауну предметов тоже где-то была информация.

Юзайте поисковую систему и чаще читайте раздел модинга.

Изменено пользователем n6260

Expression : no_assert

Function : CXML_IdToIndex<class CSpecificCharacter>::GetById

File : e:\stalker\patch_1_0004\xr_3da\xrgame\xml_str_id_loader.h

Line : 112

Description : item not found, id

Arguments : esc_unik_npc

 

У меня вот такой вылет. Что делать?

По такой статье создал 3 новых сталкера (Лесник, Лебедев, Зулус) Модели взяты с форума www.amk-team.ru

Всем доброго времени суток!

Перенёс с ЧН болота на ЗП, заспавнил туда непися вот так:

 

character_desc_*****

 

<specific_character id="mar_intro_guide" team_default = "1">

<name>Виця</name>

<icon>ui_inGame2_neutral_3</icon>

<map_icon x="1" y="0"></map_icon>

<bio></bio>

 

<class>mar_intro_guide</class>

<community>stalker</community>

 

<rank>400</rank>

<reputation>0</reputation>

 

<visual>actors\stalker_neutral\stalker_neutral_3</visual>

<snd_config>characters_voice\human_03\stalker\</snd_config>

<terrain_sect>stalker_terrain</terrain_sect>

<supplies>

[spawn] \n

wpn_ak74u \n

ammo_5.45x39_fmj \n

ammo_5.45x39_fmj \n

ammo_5.45x39_fmj \n

#include "gameplay\character_items.xml"

#include "gameplay\character_food.xml"

#include "gameplay\character_drugs.xml"

</supplies>

 

<actor_dialog>jup_b1_stalker_about_scrutiny</actor_dialog>

<actor_dialog>jup_b1_stalker_about_scrutiny_2</actor_dialog>

<actor_dialog>jup_b1_stalker_about_scrutiny_3</actor_dialog>

#include "gameplay\character_criticals_1.xml"

</specific_character>

 

 

 

npc_profile

 

<character id="mar_intro_guide">

<class>mar_intro_guide</class>

<specific_character>mar_intro_guide</specific_character>

</character>

 

 

 

spawn_sections_general

 

[mar_intro_guide]:stalker

$spawn = "respawn\mar_csky_guide_at_base"

character_profile = mar_intro_guide

spec_rank = novice

community = stalker

custom_data = scripts\marsh\mar_csky_guide_at_base.ltx

 

 

 

mar_csky_guide_at_base(файл логики)

 

[logic]

active = walker

danger = danger_ignore

 

[walker]

path_walk = tupoi_urod

meet = meet

 

[danger_ignore]

ignore_distance = 5

 

[meet]

meet_state = 3 | nil@nil

meet_state_wpn = 3 | nil@nil

victim = 0 | actor

victim_wpn = 0 | actor

use = true

use_wpn = true

allow_break = false

trade_enable = false

 

 

В all.spawn

alife_marsh.ltx

[6607]

; cse_abstract properties

section_name = stalker

name = mar_csky_guide_at_base

position = -160.641586303711,1.93363428115845,-299.781951904297

direction = 0,-0.962999999523163,0

 

; cse_alife_trader_abstract properties

money = 5000

character_profile = mar_intro_guide

 

; cse_alife_object properties

game_vertex_id = 934

distance = 15.3999996185303

level_vertex_id = 44730

object_flags = 0xffffffbf

custom_data = <<END

[logic]

cfg = scripts\marsh\mar_csky_guide_at_base.ltx

[smart_terrains]

none = true

END

 

; cse_visual properties

visual_name = actors\stalker_hero\stalker_hero_1

 

; cse_alife_creature_abstract properties

g_team = 0

g_squad = 0

g_group = 0

health = 1

dynamic_out_restrictions =

dynamic_in_restrictions =

 

upd:health = 1

upd:timestamp = 0

upd:creature_flags = 0

upd:position = -160.641586303711,1.93363428115845,-299.781951904297

upd:o_model = 0

upd:o_torso = -0.962999999523163,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 = 0,0,1,0,1

predicate4 = 2,0,1,2

 

; cse_ph_skeleton properties

 

upd:start_dialog =

 

; se_stalker properties

:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

way_marsh.ltx

[tupoi_urod]

points = p0,p1

p0:name = wp00

p0:position = -140.1017212677002,1.34724097728729,-272.503005371094

p0:game_vertex_id = 934

p0:level_vertex_id = -1

p0:links = p1(1)

 

p1:name = wp01

p1:position = -136.6575604553223,1.32885403156281,-277.260977539063

p1:game_vertex_id = 934

p1:level_vertex_id = 124839

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

 

 

Он появляется где и надо(база ЧН), но логика к ему не применяется, он начинает тупо ходить куда кривые ноги поведут. Поискал на форумах, и не нашёл лекарство от этого гемароя мозга непися :crazy: .

Пожалуйста подскажите как к нему в ЗП правильно присваивать логику!!?

Зарание огромное СПС.

Сообщение от администратора n6260
Юзайте "спойлер".

Если тебе нужно, чтобы он просто стоял на месте, сделай так:

[logic]
active = walker
danger = danger_ignore

[no_smart]

[walker]
meet = meet

[danger_ignore]
ignore_distance = 5

[meet]
meet_state = 3 | nil@nil
meet_state_wpn = 3 | nil@nil
victim = 0 | actor
victim_wpn = 0 | actor
use = true
use_wpn = true
allow_break = false
trade_enable = false

Изменено пользователем Jurok

Извините за такой вопрос:

 

создано 2 нпс на кардоне зделано так что эти нпс торговцы но как только захожу в игру и иду к ним рядом с ними лежит "могучая кучка" оружия! Продукты потроны костюмы нпс не выбрасывают а выбрасывают только оружие в чём может обстоять проблема ?

Изменено пользователем Snork_7171

У меня вот такой вопрос-есть у "инструкция для чайников" как создать гулаг?

Куфзук спасибо, и с наступающим Новым Годом!

Изменено пользователем @"StreloK"

@"StreloK", с наступающим Новым Годом!

Вот на wiki есть очень хорошие статьи: Как добавить новый тип гулага

позволю себе предположить, что твои торговцы выбрасывают оружие потомучто у них перегруз. Увелич ихний максимально переносимый вес

А как в ЗП создать мертвого сталкера

Взять шотган и выстрелить в голову.

Или в all.spawn тупо забить секцию npc без логики.

 

Добавлено через 46 мин.:

Ну

 

боранке гну.

А как в ЗП создать мертвого сталкера

Пропиши ему в логику мой пример:

 

[logic] 
active = remark

[remark]
on_info = {+твой инфопоршень} %=kill_npc%

Изменено пользователем Jurok

Jurok

allow_break = false

trade_enable = false

А если написать true в обоих случаях?можно будет с НПС торговать? Ни как не могу найти урок по созданию Торговца для ЗП, кто подскажет, может направит? :pooh_go:

Mihunchy, если нужно, чтобы НПС торговал, можно вообще не писать в логику строчку
trade_enable = false

Тогда, что-то я не могу понять, как же правильно создать торговца для ЗП...Предлагаю на моём(или на чьём либо ещё) примере создать и поместить в уроки, я думаю что многие голову ломают. Что не правильно тут, давайте соордим урок...

 

Выдержка из gamedata\configs\scripts\agroprom\smart\agr_sim_12.ltx

 

[smart_terrain]

squad_id = 2

max_population = 1

respawn_params = respawn@agr_sim_12

respawn_only_smart = true

respawn_radius = 150

 

 

[respawn@agr_sim_12]

spawn_duty@advanced

 

 

[spawn_duty@advanced]

spawn_squads = test_mishka_agr_dolg

spawn_num = 1

 

 

[exclusive]

agr_trader = zaton\duty_trader1.lxt

 

 

Выдержка из npc_profile.xml

 

<character id="agr_duty_base_trader">

<class>agr_duty_base_trader</class>

</character>

 

 

Выдержка из spawn_sections_agroprom.ltx

 

[agr_duty_base_trader]:stalker

$spawn = "respawn\agr_duty_base_trader"

character_profile = agr_duty_base_trader

is_trader = 1

max_item_mass = 10000.0

use_single_item_rule = false

 

 

Выдержка из алайф_уровень

 

[20233]

; cse_abstract properties

section_name = smart_cover

name = agr_trader_cover

position = -151.912643432617,1.10302996635437,-169.634323120117

direction = -0.56,0,-0.82

 

; cse_alife_object properties

game_vertex_id = 934

distance = 7

level_vertex_id = 275878

object_flags = 0xffffffbf

 

; cse_shape properties

shapes = shape0

shape0:type = sphere

shape0:offset = 0,0,0

shape0:radius = 2

 

; cse_smart_cover properties

cse_smart_cover__unk1_sz = animpoint_stay_wall

cse_smart_cover__unk2_f32 = 0

enter_min_enemy_distance = 15

exit_min_enemy_distance = 10

 

; se_smart_cover properties

last_description = animpoint_stay_wall

loopholes = animpoint_stay_wall,1

 

[20234]

; cse_abstract properties

section_name = agr_duty_base_trader

name = agr_duty_trader

position = -151.754821777344,1.10302996635437,-169.322494506836

direction = 0,-3.31610703468323,0

 

; cse_alife_trader_abstract properties

money = 5000

character_profile = agr_duty_base_trader

 

; cse_alife_object properties

game_vertex_id = 934

distance = 32.8999977111816

level_vertex_id = 275878

object_flags = 0xffffffbf

custom_data = <<END

[dont_spawn_character_supplies]

[logic]

cfg = scripts\agroprom\duty_trader1.ltx

 

[smart_terrains]

none = true

 

[spawn]

wpn_gauss

END

 

; cse_visual properties

visual_name = actors\stalker_hero\stalker_hero_1

 

; cse_alife_creature_abstract properties

g_team = 0

g_squad = 0

g_group = 0

health = 1

dynamic_out_restrictions =

dynamic_in_restrictions =

 

upd:health = 1

upd:timestamp = 0

upd:creature_flags = 0

upd:position = -151.754821777344,1.10302996635437,-169.322494506836

upd:o_model = 0

upd:o_torso = -3.31610703468323,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 = 0,1,2,1,2

predicate4 = 0,1,1,1

 

; cse_ph_skeleton properties

 

upd:start_dialog =

 

; se_stalker properties

 

 

сама логика, забыл про неё...

[logic]

active = walker

trade = misc\trade\trade_trader_agr_duty.ltx

prior = 200

can_select_weapon = false

level_spot = trader

inv_max_weight = 10000

 

[walker]

cover_name = agr_trader_cover

avail_animations = animpoint_stay_wall

meet = meet

combat_ignore_cond = true

combat_ignore_keep_when_attacked = true

invulnerable = true

gather_items_enabled = false

help_wounded_enabled = false

corpse_detection_enabled = false

no_move = true

 

[meet]

close_snd_hello = jup_a6_stalker_barmen_greeting

close_snd_bye = jup_a6_stalker_barmen_farewell

close_anim = nil

close_victim = nil

far_anim = nil

far_victim = nil

close_distance = 0

far_distance = 0

close_snd_distance = 3

use = {=actor_enemy} false, true

allow_break = false

meet_on_talking = false

 

Изменено пользователем Mihunchy
Mihunchy, так что тебе нужно? Создать торговца (с уникальным ассортиментом) или сделать, чтобы с НПС можно было просто торговать? :mellow: Я что-то малость не понял. Изменено пользователем Jurok

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

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

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

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

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

Войти

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

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

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