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

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


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

korshyn-3, это ты так думаешь, а не деле получается, что по прибытию хотя бы одного из трёх на место, твой "командир" переходит на схему remark не дожидаясь остальных, ведь так!?

Повторюсь ещё раз: как ты понимаешь цитату приведённую тобою со Stalker Inside, по поводу флага syn? Ты понимаешь как он работает?

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

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

Понял я про флаг так : что если сталкерам прописать в точках флаг syn после сигнала , то данный сигнал выдастся когда все сталкеры у которых прописан в точках сигнал с флагом syn прийдут на точки , где прописан сигнал с syn.

А насчет team я понял ее прописывать надо в all.spawn в этой строке : upd:g_team = 18.

 

по прибытию хотя бы одного из трёх на место, твой "командир" переходит на схему remark не дожидаясь остальных

 

У меня так было когда я прописал сигнал и syn в walk , а не в look . А когда прописал в look не происходит ничего ...

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

Ребята, подскажите пожалуйста, как отключить перепаковщик патронов в bind_stalker.script? Адаптировал для себя ammo_on_belt, но вылетает с логом [error]Description : e_parent && e_entity при шмоне трупов, которые выдают тайники. Попробовал сам отключить, но без результатов, хотя в папке скриптов не было duning_ammo в помине. Каким боком перепаковщик влез в пояс патронами, без понятий.

Не ценим то-что имеем, ценим то-что потеряли...

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

Подскажите: Почему при использовании схемы "General Lair" появляется лишний НПС? И он не попадает под смарт, тупо уходит куда-то.

Жить – значит делать вещи, а не приобретать их.

 

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

korshyn-3, всё верно, за исключением того, что team прописывается в custom_data твоих НПС, что ты и сделал: team = mar_task_stalkers.

Я несколько раз пере глянул приведённые тобою логику и точки путей и не заметил ничего, чтобы не позволило бы перейти на схему remark твоему НПС, честно сказать, я даже озадачен.

Попробуй всё же не при помощи инфопорции переводить, а при помощи сигнала в активной схеме твоего НПС:

[walker@mar_task_stalkers_shkyrka2]
path_walk = shkyrka_walk3
path_look = shkyrka_look3
commander = true
meet = no_meet
team = mar_task_stalkers
on_signal = go_noobs|%+mar_go_noobs%
on_signal2 = gotov|remark@mar_task_stalkers_shkyrka3

Только измени для него точку path_look (я для примера написал shkyrka_look3) и также впиши в неё два флага:

name = name00|sig=gotov|syn

Если это не поможет, то можно выдать три инфопорции, по одному от каждого НПС, по прибытию их в точки назначения, а уже "командиру" вписать условие:

on_info = {+info_1 +info_2 +info_3} remark@mar_task_stalkers_shkyrka3

В таком случае флаг syn будет без надобности.

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

ColR_iT, Спасибо помогло :) В прошлый раз я просто командиру не прописывал look с сигналом , вот и не работало ...

 

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

Ссылка на комментарий
korshyn-3, вопрос несколько противоречивый. Несоответствие во фразах: "... но реагировал на шум который актор издает" и "... подкравшись без шума". Так, что именно должен игнорировать НПС? В принципе он и так будет игнорировать ГГ, если не будет его видеть, но при этом среагирует на шум (если быть точным, то на звук удара ножом). Изменено пользователем ColR_iT
Ссылка на комментарий

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

 

Поправьте меня, если я ошибаюсь, но разве в оригинале это не так? :blink:

ColR_iT

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

(опять возвращаясь к прошлому вопросу: см. #8683 и http://www.amk-team.ru/forum/index.php?sho...st&p=704064)

 

Т.к. ошибка в алгоритме оттаскивания трупов в схеме 'kamp' может возникать во многих модах, использующих коды by xStream, и в ЛС просят поделиться решение проблемы, решил привести его тут:

 

1. Алгоритм отттаскивания трупов является встроенным в схему кампа, но при активизации собственно процесса оттаскивания менеджер состояния тел (state_mgr.script) не блокируется/переназначается, а перебивается постоянными апдейтами на новые значения для состояния тела. Смотрим в xr_kamp.script (взят из NLC6):

function action_moving_deadman:execute()
  action_base.execute(self)
  --/...
  -- смотри мне в глаза!
  local dir=gi:position():sub(npc:position())
  dir.y=0
  npc:set_movement_type(move.walk) --/ принуждаем неспешно идти
  npc:set_mental_state(anim.danger) --/ принуждаем "опасливо"
  npc:set_body_state(move.crouch) --/ принуждаем присесть
  npc:movement_enabled(true)
  npc:set_sight(look.direction,dir,true) --/ принуждаем посмотреть и ожидать сигнала
  --/...
end

 

Обычно все проходит нормально и труп оттаскивается, но ... Порою (не всегда и не часто) возникают ситуации, когда тело/труп по какой-то причине "застревает" (уткнулся в порог, попал в яму, ...) и непись начинает "дергаться", постоянно возвращаясь в дефолтное для кампа состояние ("def_state_moving" - идти к точке посиделок) и вновь получая другие состояния для оттаскивания. В основном именно "встать-присесть" и приводит вероятно к переполнению менеджера состояний и движек рушит игру с сообщением типа:

! error in stalker with visual actors\bandit\stalker_bandit_5

- т.е. ошибка с визуалом некоего сталкера, который занимается оттаскиванием.

 

2. Решение довольно простое. Зачем постоянно дергать визуал, заставляя то вставать то приседать? Раз решил непись заниматься оттаскиванием - то и состояние тела нужно именно переключить/изменить, а не дергать из дефолтного в "рабочее".

Заменяем указанные строки на такие:

function action_moving_deadman:execute()
  action_base.execute(self)
  --/...
  -- смотри мне в глаза!
  if state_mgr.get_state(npc) ~= "sneak_no_wpn" then --/ если еще/уже не в состоянии "тащить"
    --/ состояние: тащить неспешно, убрав оружие, с опаской, в присяде, смотря на труп
    state_mgr.set_state(npc, "sneak_no_wpn", nil, nil, {look_object = gi}, {animation = true})
  end
  --/...
end

 

Т.е. исходное состояние для схемы kamp заменяем на нужное нам. Взято уже имеющиееся в игре состояние "sneak_no_wpn", которое и задает телу непися требуемые параметры (move.walk,anim.danger,move.crouch), но желающие могут подобрать что-то "свое" ... Теперь стейт-менеджер не будет дергаться, а будет именно отслеживать "тащит" или нет и вмешиваться только при необходимости.

По окончанию процесса оттаскивания трупа для НПС вернетсяи его дефолтное соостояние, чтобы мог проследовать к точке кампа и заняться своими делами, т.к. в action_moving_deadman:finalize() уже имеется возврат к self.a.def_state_moving.

 

Данное решение пригодно для всех модов использующих дополнение по оттаскиванию трупов в схеме kamp.

 

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

P.S. Данная ошибка с визуалами может возникать не только в схеме модифицированной 'kamp', но и в других аналогичных (добавленных) схемах, где возникает 'конкуренция' задаваемых различными активными схемами состояний тела для управляемого об'екта (непися). Следует или недопускать периодических переключений или фильтровать подобные переключения по некоему периоду (~1sec).

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

"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени

Ссылка на комментарий
ColR_iT, так то оно так , но при загрузке сейва или при спавне гг рядом с противником ( у меня как раз так и будет) нпс обычно замечает актора . Ну да ладно, это не так важно . Сделаю игнорирование актора, и проверку на хит .
Ссылка на комментарий

Делаю функцию смены часа.

Был такой код -

local hour = level.get_time_hours()
function time()
hour = 5
end

Функция конечно не рабочая.

Возможно ли сделать смену часа по скрипту?

Нет, сменить скриптом время(час) в игре невозможно, только "перемотать". --/Artos

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

https://www.youtube.com/embed/U0no-6tCxhU

Канал на "Трубе"

Ссылка на комментарий
Morder07, измени профиль борова и все

S.T.A.L.K.E.R 1.004, Народная..Солянка от 19.04.10, дополнение 14.08.10, патч 3.09.10, DMX 1.3.5, Saruman addon 1.1

Vkontakte

Добавление нового транспорта в сталкер

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

Всем здасте, кто-нибудь знает как вывести слот на инвентарь?

К примеру детектор

 

Читаем ФАКи иль юзаем поиск на предмет секции [inventory] в system.ltx и, например, строки: slot_persistent_9 = true|false. --/Artos

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

Artos , да это я уже сделал поставил false, и в inventory_new( также и в 16) добавил эту функцию

<dragdrop_detector x="30" y="490" width="380" height="130"

cell_width = "50" cell_height="50" rows_num="1" cols_num="1"

custom_placement="0"/>

но он все-равно не работает(AMK inventory)

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

Есть вопрос.

Хочу сделать в своем моде побольше интересных квестов (как в ЗП). Не по типу "поговорить-принести-найти"

Вот такой вопрос

Решил сделать квест по типу Глухаря (с кровососами)

Какую логику надо прописать кровососам, чтобы стрельбе и при близком подходе они атаковали?

 

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

(по стрельбе- я имею ввиду по звуку выстрела)

К20

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

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

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

Morder07, и обычное будет так-же я вроде гитару поставил она целая, посмотри на Wiki(Ссылка),

Ага нашел почему он у него в профиле заспавнен, если хочешь чтобы он у него был просто заспамь в профиле.

<!-------------------------------------soldier_commander----------------------------------------------------->

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

<name>esc_soldier_commander_name</name>

<icon>ui_npc_u_soldier_beret_1</icon>

<bio>esc_soldier_commander_bio</bio>

 

<class>esc_soldier_commander</class>

<community>military</community> <terrain_sect>stalker_military_terrain</terrain_sect>

 

<rank>764</rank>

<reputation>-15</reputation>

 

<snd_config>characters_voice\human_02\military\</snd_config>

<crouch_type>0</crouch_type>

 

<visual>actors\soldier\soldier_beret_1</visual>

<supplies>

[spawn] \n

wpn_fort_m1 \n

ammo_9x18_fmj \n

wpn_ak74u \n

ammo_5.45x39_fmj = 1 \n

device_torch \n

#include "gameplay\character_food.xml"

</supplies>

 

#include "gameplay\character_criticals_5.xml"

 

<start_dialog>esc_bridge_soldiers_start</start_dialog>

<start_dialog>dm_hello_dialog</start_dialog>

<actor_dialog>dm_help_wounded_medkit_dialog</actor_dialog>

</specific_character>

 

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

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

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

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

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

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

Войти

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

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

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