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

[SoC] Ковыряемся в файлах


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

@AndrewMor

Расположи объект inventory_box ящика где-то по координатам, не совпадающим с координатами physic_object-а ящика.

Рядом, над, под - не важно. Всё равно он не видим. Там какая-то коллизия возникает при пересечении координат, и наблюдается перемещение physic_object.

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

Нет необходимости создавать физический объект и потом на него накладывать невидимый inventory_box. Создайте секцию в аллспавне inventory_box, сразу с визуалом item_box_01_visual и всё.

 

 

при условии, что никого не будет бесить ящик, сквозь который можно проходить

Это да, есть такое.

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

Вообще-то я белая и пушистая...

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

@lsclon

Так можно делать при условии, что никого не будет бесить ящик, сквозь который можно проходить, даже не споткнувшись.

А полноценный вариант получиться только с использованием двух объектов.

 

 

Это да, есть такое.

Дык, было дело. Наступал уже на эти грабли :)

Изменено пользователем Nazgool
  • Согласен 1
Ссылка на комментарий

 

 

полноценный вариант получиться только с использованием двух объектов

Тогда спавнить невидимый inventory_box плоский(такие заспавненны в электрощитках) и положить его сверху физического объекта, а не внутрь.

Вообще-то я белая и пушистая...

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

@lsclon,

Ну а я про что? 

 

....по координатам, не совпадающим с координатами....Рядом, над, под - не важно......Там какая-то коллизия возникает при пересечении координат

 

 

а не внутрь

Естественно не внутрь. Это же и есть пересечение координат.

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

 

 

Расположи объект inventory_box ящика где-то по координатам, не совпадающим с координатами physic_object-а ящика. Рядом, над, под - не важно. Всё равно он не видим. Там какая-то коллизия возникает при пересечении координат, и наблюдается перемещение physic_object-а.

А ведь мне такая мысль в голову приходила. Заспавнить физис_объект, потом на него залезть и снять координаты.

 

 

 

Нет необходимости создавать физический объект и потом на него накладывать невидимый inventory_box. Создайте секцию в аллспавне inventory_box, сразу с визуалом item_box_01_visual и всё.

А вот пробовал. Создал инвентори_бокс с визуалом item_box_01_visual. Он конечно спавнится, но как тайник - не отображается. При наведении курсора - надпись "Обыскать тайник" не высвечивается. Хотя с рюкзаком такой номер прокатывает.

  • Нравится 2

Сталкер - наше всё!

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

 

Это физбокс, а не инвбокс, конечно он не будет работать. Туда же всякие сейфы, контейнеры, коробки и прочее. Их как раз и надо спавнить связкой, о которой я выше писал (для физбокса надо создавать его копию инвбокса, и спавнить физбокс по выходу инвбокса в онлайн).

 

@AndrewMor, вот гляди, я тебе наглядно сделал связку двух объектов:

 

6099360m.jpg 6155683m.jpg

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

Ребят, я пришел в стоплро...

Какой файл отвечает за смену картинок локаций, то есть иду на свалку и в загрузке появляется картинка локации свалки, не могу догнать, все перерыл, надо изменить размер картинки, локации...

Которые лежат в папке textures/intro

Изменено пользователем Wolkodav
Ссылка на комментарий
вот гляди, я тебе наглядно сделал связку двух объектов:

О том и речь. Так и делал, именно связкой. Сначала физик_бокс, потом инвентори_бокс. Все нормуль, но физик_бокс взлетал. А вот про смещение координат не знал. Буду пытать. Спс.

 

PS: а все-таки за мануал буду премного благодарен. И не я один. Если сделаешь, выложи ссыль.!!!

 

 

Это физбокс, а не инвбокс, конечно он не будет работать.

То есть, все-таки зависит от модели? Если в инвентори_бокс прописать visual_name = equipments\item_rukzak, он прекрасно отображается, и работает, как тайник. Почему с другой моделью (item_box_01_visual) он не хочет работать тайником, хотя прекрасно отображается?

 

Причем это все без спавна физик_бокс!!! Одной секцией! Выходит, в модели дело?

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

Сталкер - наше всё!

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

Добрый вечер господа!!!

Вот уже сколько времени не могу понять в чем проблема:

Сделал сценку на Кордоне между ГГ, Волком и сталкером из группировки Бандиты-зомбированные. Задание дает Волк типа поговорить с бандюками что бы не приходили в лагерь новичков. Бандюк в обмен на это предлагает ГГ принести ноутбук который находится у убиенног братка на локации!!!

Создал секцию братка в all.spawn:

[875]


; cse_abstract properties
section_name = stalker
name = stalker_bandit_esc_kvest
position = -15.0970001220703,2.72000002861023,66.9509963989258
direction = 0,0,0

; cse_alife_trader_abstract properties
money = 5000
character_profile = stalker_bandit_esc_kvest

; cse_alife_object properties
game_vertex_id = 88
distance = 9.80000019073486
level_vertex_id = 261717
object_flags = 0xffffffbf
custom_data = <<END

[spawner]
cond = {+stalker_bandit_started}

[logic]
cfg = scripts\moy_logic\esc_bandit_kvest.ltx
END
story_id = 5500

; cse_visual properties
visual_name = actors\bandit\stalker_bandit_2

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

upd:health = 1
upd:timestamp = 0x617a6b75
upd:creature_flags = 0x6b
upd:position = -15.0970001220703,2.72000002861023,66.9509963989258
upd:o_model = 0
upd:o_torso = 0.00316426996141672,0.062321275472641,0
upd:g_team = 0
upd:g_squad = 1
upd:g_group = 5

; 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,0,1,1
predicate4 = 0,2,0,2

; cse_ph_skeleton properties

upd:start_dialog =

; se_stalker properties

 

А это логика братка:

[smart_terrains]
none = true

[logic]
active = walker@bandit_kvest
combat_ignore = combat_ignore@bandit_kvest
on_hit = hit@bandit_kvest
on_death = death@bandit_kvest

[walker@bandit_kvest]
path_walk = bandit_kvest_walk
path_look = bandit_kvest_look
combat_ignore_cond = {-bandit_kvest =fighting_actor}
on_actor_dist_le_nvis = 10 | remark@bandit_kvest
meet = meet@bandit_kvest

[remark@bandit_kvest]
no_move = true
target = actor
combat_ignore_cond = {-bandit_kvest =fighting_actor}
on_actor_dist_ge_nvis = 10 | walker@bandit_kvest
meet = meet@bandit_kvest

[meet@bandit_kvest]
meet_enabled = true
meet_talk_enabled = true
meet_state = 20| hello@talk_hello| 15| wait@wait| 10| ward@wait
meet_state_wpn = 30| hello@talk_hello| 20| threat@threat_weap
victim = 30| actor
victim_wpn = 30| actor
use = true
use_wpn = true


[combat_ignore@bandit_kvest]
combat_ignore_cond = {-bandit_kvest =fighting_actor}

[hit@bandit_kvest]
on_info = {=hit_by_actor} %+bandit_kvest%

[death@bandit_kvest]
on_info = {=killed_by_actor} %+bandit_kvest +stalker_bandit_esc_kvest%

 

Это логика братков-помощников в квесте:

[smart_terrains]
none = true

[spawner]
cond = {+stalker_bandit_started}

[logic]
active = walker@bandit_kvest1
combat_ignore = combat_ignore@bandit_kvest1
on_hit = hit@bandit_kvest1
on_death = death@bandit_kvest1

[walker@bandit_kvest1]
path_walk = bandit_kvest_1_walk
path_look = bandit_kvest_1_look
combat_ignore_cond = {-bandit_kvest =fighting_actor}

[combat_ignore@bandit_kvest1]
combat_ignore_cond = {-bandit_kvest =fighting_actor}

[hit@bandit_kvest1]
on_info = {=hit_by_actor} %+bandit_kvest%

[death@bandit_kvest1]
on_info = {=killed_by_actor} %+bandit_kvest%

 

В чем собственно вопрос??? Разом квест запускается, отрабатывается без проблем. При новом запуске игры главный браток может самостоятельно покинуть место спавна и пойти гулять по локации, при виде ГГ начинает в него стрелять хотя и не должен если ГГ не нанес ему или его помощникам хита... Ну и соот. диалоги с ним не активируются. Бойцы же, его помощники при этом остаются на месте и свою логику отрабатывают. В чем может быть проблема???

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

Жизнь следует измерять поступками, а не временем...

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

@losiara

custom_data = <<END

[smart_terrains]
none = true

[spawner]
cond = {+stalker_bandit_started}
[logic]
cfg = scripts\moy_logic\esc_bandit_kvest.ltx
END

Если спавнишь нпс через алл.спаун по условию, то запрет на смарты прописывай.  Помощники через скрипт спавнятся? Если да, то все нормально. Если также как и основной бандюк через алл.спаун, то каждому участнику сценки также прописывай в секции алл.спаун запрет на смарты.

  • Нравится 1
Ссылка на комментарий

 

 

В чем может быть проблема???

В путях, прописанных глюкавому братку. Если движок не сможет их правильно прочитать\построить, то НПС будет просто отпущен под движковое управление, со всеми вытекающими...

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

Вопрос по логике НПСов: к примеру имеем непися, который работает в каком-то гулаге. Если уйти от этого непися подальше, чтоб он ушел в офф-лайн а затем вернуться - с какого места, по возврату в он-лайн, будет работать логика непися ? С самого начала(т.е. от секции [logic@......]) или же с той секции, в которой непись был на момент ухода в офф-лайн ?


В общем случае - с начала. Можно посмотреть на Шустрого, для примера. dc

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

Оказалось что дело было в этом:

[smart_terrains]
none = true

 

Я прописал это в логике ltx. файла, а надо было в секции самого непися в all.spawn. 

А помощники да через скрипт спавнятся с ними проблем нет...

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

Жизнь следует измерять поступками, а не временем...

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

Что-то я не пойму,  что происходит. Есть нпс, спавнен через скрипт, в логике none = true. НПС долговец, все бы ничего, но как только на Росток идет группа сталкеров, он уходит  с ними. Пока ГГ на локе нпс на месте, но стоит ГГ уйти на другую локацию, то нпс уходит на Росток. Не могу понять, почему его затягивает гулаг.

[smart_terrains]


none = true


[logic]
active = walker@chibis
combat_ignore = combat_ignore


[walker@chibis]
path_walk = chibis_bar_walk
path_look = chibis_bar_look
meet = meet@chibis
danger = danger_condition@chibis
on_actor_dist_le_nvis = 3 | {-chibis_sound}remark@chibis

[remark@chibis]
target = actor
snd = chibis
meet = no_meet
combat_ignore_cond = always
danger = danger_condition@chibis
on_signal = sound_end | walker@chibis1 %+chibis_sound%

[walker@chibis1]
path_walk = chibis_bar_walk
path_look = chibis_bar_look
meet = meet@chibis
danger = danger_condition@chibis

[danger_condition@chibis]
ignore_distance = 0
ignore_distance_corpse = 0

[meet@chibis]
use = true
use_wpn = false
meet_talk_enabled = true

логику как только не менял, уходит и всё, и главное именно только после того как группа идет на Росток, до этого сидит спокойно.

Изменено пользователем Хемуль36рус

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

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

Всем привет,в создании квестов столкнулся с проблемой : создал непися с диалогами и квестами(диалоги, квесты  и инфопоршни работают) НПС на примере Кости, т.е. с такой логикой в кастом.дата :

custom_data = <<END
[smart_terrains]

bar_kornet_camp = true
esc_kornet_brigada = true
road_kornet_brigada = true
road_kornet_brigada_end = true

bar_kornet_camp = {-kornet_esc}
esc_kornet_brigada = {+kornet_esc -kornet_road}
road_kornet_brigada = {+kornet_road -kornet_road_kamp}
road_kornet_brigada_end = {+kornet_road_kamp}

[spawner]
cond = {+kornet_bar}
END
story_id = 10009
spawn_story_id = 10009

 

 

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

 

Мать: ASRock X470 Master SLI. Процессор: AMD Ryzen 9 3900X 12-Core(4200 MHz).
Память: Patriot Memory 3200 C16 Series. DDR4-3200(1600МГц), 16Гбх2(32Гб).
Видео: GeForce GTX 1060 6GB. Блок питания: CoolerMaster 750 Вт. Корпус: Zalman i3 Edge.

Химера конечно сильный хищник, а все держится дома. Чего же ты пришел к ней домой и пытаешься её убить? © Болотный Доктор

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

Насчет синих ящиков - выяснил вот что. Спавнить можно и нужно две секции: физик_объект и инвентори_бокс. Координаты и вертексы пишутся одинаковые, только Y-координата инвентори_бокса должна быть на 20 см выше, чем у физик_объекта. Тогда сам ящик никуда не взлетает и остается на месте.

 

А совет сделать инвентори_бокс ниже на метр - не работает, надпись "Обыскать тайник" не отображается.


Вот еще вопрос назрел: при спавне на Свалке в вагончике долговцев укрытия от выброса они ни в какую не хотят туда бежать, хотя в Ангар бегут легко. Это значит, что в вагончике нет АИ-сетки?

 

Пробовал прямо на улице сделать им укрытие - мигом укрываются, а в вагончик - не хотят.

Сталкер - наше всё!

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

В SDK посмотрел: сетка в вагончике есть, только проход через дверь - всего одна AI-клетка и визуально есть разрыв между этой клеткой и клетками снаружи вагончика. Может в этом причина ? Проверь: сделай какому-нить долговцу стандартно путь в вагончик и глянь - зайдет нормально или нет.

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

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

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

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

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

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

Войти

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

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

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