Случайная подборка модов
Новое Время. Судьба наемника
2.3
Ночь Перед Рождеством 3
4.4
Absolute Nature 3
4.1
Белый отряд
3.7
Под прикрытием смерти. Клондайк 2.0
4.0
Paradise Lost
3.7
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  Wolfstalker
Понедельник, 22.10.2012, 14:58 | Сообщение # 1
Статус:
Легенда:
Сообщений: 2258
Награды: 15
Регистрация: 05.04.2010

В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга.

  • Не флудить
  • Предварительно просматривайте раздел. Ответ на ваш вопрос может быть там.
  • В своем вопросе указывайте платформу моддинга - Тень Чернобыля, Чистое небо или Зов Припяти.





    У кого есть желание, создать FAQ по основным вопросам моддинга - обращаемся в ЛС.


    Архив

    Архив#2
  •   Злобная реклама
    Понедельник, 22.10.2012, 14:58
    Статус:
    Сообщений: 666
    Регистрация: 05.04.2010
    Украина  GunnerShadow
    Вторник, 08.01.2013, 13:00 | Сообщение # 2071
    Статус:
    Неопытный:
    Сообщений: 577
    Награды: 0
    Регистрация: 18.09.2012

    В принципе разницы нет. Я нпс ставил в подвале в деревне новичков с этим параметром, на АТП с э\тим параметром - никто никуда не уходил.

    Добавлено (08.01.2013, 13:00)
    ---------------------------------------------
    А в ЗП - НПС в прачечной (своего я поставил) - стоял на месте и хоть бы хны.

      Злобная реклама
    Вторник, 08.01.2013, 13:00
    Статус:
    Сообщений: 666
    Регистрация: 18.09.2012
    Украина  BozKurt
    Вторник, 08.01.2013, 13:06 | Сообщение # 2072
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    GunnerShadow, "я однажды заспавнил НПС, вообще не прописывал ему логику, даже профиль для него не делал - а он стоял, никуда не уходил, выполнял разного рода действия, ну там, например, когда я подходил - он рукой махал, когда поговорю с ним - он выполнял анимацию рукопожатия..." Продолжать!? Согласись - бред!
    На словах я тебе могу целую поэму расписать - приведи пожалуйста доказательства того, что данный параметр считывается схемами и работает. В противном случае - это пустой трёп.
      Злобная реклама
    Вторник, 08.01.2013, 13:06
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Украина  GunnerShadow
    Вторник, 08.01.2013, 13:09 | Сообщение # 2073
    Статус:
    Неопытный:
    Сообщений: 577
    Награды: 0
    Регистрация: 18.09.2012

    ColR_iT, Тебе скрин дать? Или сразу видео?
      Злобная реклама
    Вторник, 08.01.2013, 13:09
    Статус:
    Сообщений: 666
    Регистрация: 18.09.2012
    Украина  BozKurt
    Вторник, 08.01.2013, 13:10 | Сообщение # 2074
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    Ты мне коды покажи. Причём не того, что ты понаписал, а того, что параметр считывается игрой и работает.
    Или ты мне видео или скрины кодов хочешь показать? :)
    Сообщение отредактировал ColR_iT - Вторник, 08.01.2013, 13:11
      Злобная реклама
    Вторник, 08.01.2013, 13:10
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Украина  GunnerShadow
    Вторник, 08.01.2013, 13:15 | Сообщение # 2075
    Статус:
    Неопытный:
    Сообщений: 577
    Награды: 0
    Регистрация: 18.09.2012

    ColR_iT, Я не знаю, какой скрипт в игре отвечает за файлы конфигурации логики, но когда я ставил в ремарке строчку но_муве - НПС не двигался. Не всегда, правда, поскольку если он попадал в кэмпы, рестрикторы некоторые, смарты - то он игнорировал у меня всю логику и выполнял то, что ему говорила сама логика кэмпа, смарта и прочего. Без этой строчки НПС шатался по околицах всегда. По логике можно ведь решить, читается этот параметр или нет?
      Злобная реклама
    Вторник, 08.01.2013, 13:15
    Статус:
    Сообщений: 666
    Регистрация: 18.09.2012
    Российская Федерация  Grey_Lord
    Вторник, 08.01.2013, 13:30 | Сообщение # 2076
    Статус:
    Отмычка:
    Сообщений: 125
    Награды: 0
    Регистрация: 07.03.2012

    ColR_iT, Признаю свою ошибку,спасибо большое! Проверил все как нужно.
    Пробовал логику:


    Выкидывает с логикой ,нужно в way прописывать точки?
      Злобная реклама
    Вторник, 08.01.2013, 13:30
    Статус:
    Сообщений: 666
    Регистрация: 07.03.2012
    Украина  GunnerShadow
    Вторник, 08.01.2013, 13:39 | Сообщение # 2077
    Статус:
    Неопытный:
    Сообщений: 577
    Награды: 0
    Регистрация: 18.09.2012

    Grey_Lord, Естественно вылетает. Истина по-буржуйски пишеться не tru а true. Банальная ошибка.
      Злобная реклама
    Вторник, 08.01.2013, 13:39
    Статус:
    Сообщений: 666
    Регистрация: 18.09.2012
    Российская Федерация  Kirk
    Вторник, 08.01.2013, 14:07 | Сообщение # 2078
    Статус:
    Новичок:
    Сообщений: 267
    Награды: 0
    Регистрация: 08.01.2012

    Цитата (ColR_iT)
    покажи саму логику, точки пути и как ты эту логику прописывал НПС.

    Пожалуйста:
    [Логика]

    Код


    [logic]   
    prior = 200   
    active = walker1
    danger = danger_ignore   

    [danger_ignore]   
    ignore_distance = 10

    [meet]   
    allow_break = false
    use= {=dist_to_actor_le(5)} self
    use_wpn= {=dist_to_actor_le(5)} self
    meet_talk_enabled=true
    trade_enable = false

    [walker1]
    combat_ignore_cond = true
    path_walk = zat_voron_spawn_point
    path_look = zat_voron_look
    invulnerable = true
    no_move = true
    meet = meet
    can_select_weapon = true
    on_info = {+voron_about_taynik_done =dist_to_actor_ge(50)} %=remove_npc(voron)%
    on_info2 = {=actor_enemy} %=actor_neutral%
    on_info3 = {=actor_has_item(voron_tainik)} %=remove_npc(voron)%

    [smart_terrains]   
    none = true


    [Way-point]
    Код


    [zat_voron_look]
    points = p0
    p0:name = wp00
    p0:position = 28.075,23.763637,-420.203521
    p0:game_vertex_id = 8
    p0:level_vertex_id = 993254

    [zat_voron_spawn_point]
    points = p0
    p0:name = wp00
    p0:position = 30.3866,27.72355,-426.047393
    p0:game_vertex_id = 8
    p0:level_vertex_id = 993254


    Что значит как прописывал логику НПС?
    Сообщение отредактировал Kirk - Вторник, 08.01.2013, 14:10
      Злобная реклама
    Вторник, 08.01.2013, 14:07
    Статус:
    Сообщений: 666
    Регистрация: 08.01.2012
    Украина  BozKurt
    Вторник, 08.01.2013, 14:10 | Сообщение # 2079
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    GunnerShadow, воооот... С этого и надо было начинать. Ты не знаешь механики и утверждаешь то, что сам себе придумал.
    Убери no_move из правильно составленной схемы remark и НПС и так никуда не пойдёт. Причина одна - для данной схемы не предусмотрены точки пути, как таковые, и НПС привязывается к точке, на которой он перешёл под управление данной схемы. На этой точке он может выполнять указанную анимацию, говорить какую-то фразу (проигрывать любой звук) - для этого параметры как раз есть. Их вообще-то не очень то и много:

    Игра читает в схемах только те параметры, которые ей предписаны, т.е. те, которые находятся в "управляющих" файлах отвечающие за ту или иную схему.

    Теперь на счёт механики работы логики...
    В файле xr_motivator.script, который отвечает за ВСЕХ НПС, в функции net_spawn, которая отрабатывает при выходе НПС в онлайн, вызывается функция setup_gulag_and_logic_on_spawn из файла xr_gulag.script. Эта функция (setup_gulag_and_logic_on_spawn) устанавливает для НПС логику из его custom_data, либо его собственную, либо из гулага, если он находится под каким-то смартом. В любом случае в дальнейшем происходит вызов функции activate_by_section из файла xr_logic.script, назначение функции понятно даже из названия - она активирует схему. Если активация происходит впервые, то название схемы берётся из поля active секции logic, если нет, то из storage ("хранилища") НПС. Самой интересной строкой в функции activate_by_section является вот эта:
    Код
    _G[filename].set_scheme(npc, ini, scheme, section, db.storage[npc_id]["gulag_name"])
    filename - это имя файла из которого нужно считывать параметры, имя определяется исходя из названия схемы считанное ранее, а set_scheme - это функция, в которой эти параметры инициализируются.
    Таким образом, игра будет определять ТОЛЬКО те параметры, которые прописаны в данной функции у каждой отдельной схемы, естественно для каждой схемы игра будет определять только её параметры.

    А теперь попробуй найти параметр no_move хотя бы в одном файле схем. Да, ты найдёшь его... в файле xr_zoneguard.script, но только учти, что этот файл - балласт и в игре не используется. Это что касается ТЧ. В ЗП ты вообще нигде не найдёшь упоминания об этом.

    Итого.
    Параметр в релизах всех частей НЕ РАБОТАЕТ. То, что ты якобы "видишь" работу данного параметра - это всего лишь особенности работы конкретно схемы remark (см. выше) и не более того.

    P.S. в последнем посте Grey_Lord вылет происходит из второй "версии" логики, т.к. не указаны точки пути в файле way_локация.ltx, о чём он сам и сказал. А ошибка значения параметра no_move, в рабочей версии, лишний раз доказывает, что параметр - не что иное, как мусор.



    Grey_Lord, разумеется нужно указывать точки для путей walker_stay_at_position_walk и walker_stay_at_position_look.
      Злобная реклама
    Вторник, 08.01.2013, 14:10
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Украина  GunnerShadow
    Вторник, 08.01.2013, 14:21 | Сообщение # 2080
    Статус:
    Неопытный:
    Сообщений: 577
    Награды: 0
    Регистрация: 18.09.2012

    ColR_iT, Хм.. То есть, если я укажу такую логику НПС в ЗП:

    И убрать но_муве - НПС все-равно будет стоять на месте?
      Злобная реклама
    Вторник, 08.01.2013, 14:21
    Статус:
    Сообщений: 666
    Регистрация: 18.09.2012
    Российская Федерация  Uyman358
    Вторник, 08.01.2013, 14:22 | Сообщение # 2081
    Закоулки Правды
    Статус:
    Бывалый:
    Сообщений: 1098
    Награды: 1
    Регистрация: 13.06.2012

    ins33, мне надо с первым НПС разобраться: поршень на его уход в офлайн забирается скриптом - поэтому он в офлайн не уходит.
      Злобная реклама
    Вторник, 08.01.2013, 14:22
    Статус:
    Сообщений: 666
    Регистрация: 13.06.2012
    Украина  BozKurt
    Вторник, 08.01.2013, 14:35 | Сообщение # 2082
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    Kirk
    Цитата
    Что значит как прописывал логику НПС?
    Ну ведь ты как-то указывал НПС логику? Через custom_data или может быть скриптами?


    GunnerShadow, да, но только до тех пор, пока находится под схемой remark, если его "спугнуть" то он отбежит, поскольку переключится на движковую схему боёвки, и назад уже не вернётся, останется там, где у него опять включится remark.
    Сообщение отредактировал ColR_iT - Вторник, 08.01.2013, 14:40
      Злобная реклама
    Вторник, 08.01.2013, 14:35
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Украина  GunnerShadow
    Вторник, 08.01.2013, 14:42 | Сообщение # 2083
    Статус:
    Неопытный:
    Сообщений: 577
    Награды: 0
    Регистрация: 18.09.2012

    ColR_iT, А как реализовать, что он возращаеться на место? Через инфопоршни и пути?
      Злобная реклама
    Вторник, 08.01.2013, 14:42
    Статус:
    Сообщений: 666
    Регистрация: 18.09.2012
    Российская Федерация  Kirk
    Вторник, 08.01.2013, 14:43 | Сообщение # 2084
    Статус:
    Новичок:
    Сообщений: 267
    Награды: 0
    Регистрация: 08.01.2012

    Цитата (ColR_iT)
    Через custom_data или может быть скриптами?

    Код

    [voron]:stalker
    $spawn                     = "respawn\voron"
    character_profile     = voron
    community = killer
    custom_data = scripts\voron.ltx
    story_id = voron

    Спавню его скриптом по условию. Профиль из character_desc_***.xml и npc_profile.xml нужны? а может и скрипт?
      Злобная реклама
    Вторник, 08.01.2013, 14:43
    Статус:
    Сообщений: 666
    Регистрация: 08.01.2012
    Украина  BozKurt
    Вторник, 08.01.2013, 14:50 | Сообщение # 2085
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    GunnerShadow, не маяться ерундой и использовать для этого схемы по назначению. Возьми walker, пропиши ему пути для path_walk и path_look состоящие из одной точки каждый, поставь флаг синхронизации и будет счастье.

    Добавлено (08.01.2013, 14:50)
    ---------------------------------------------
    Kirk, покажи функцию.

      Злобная реклама
    Вторник, 08.01.2013, 14:50
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Поиск: