Случайная подборка модов
SZM CoP 0.2
3.9
Путь Человека
4.0
Dead Autumn
4.1
Зимний путь
3.4
Время Перемен 2.5
4.0
Новое Время
3.2
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  Аdmin
Воскресенье, 03.11.2013, 19:36 | Сообщение # 1
Статус:
Опытный:
Сообщений: 1538
Награды: 11
Регистрация: 28.03.2011

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

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





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


    Архив

    Архив#2
  •   Злобная реклама
    Воскресенье, 03.11.2013, 19:36
    Статус:
    Сообщений: 666
    Регистрация: 28.03.2011
    Украина  FantomICW
    Понедельник, 30.06.2014, 19:45 | Сообщение # 3571
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    saxar, алл.спавн? Ничего, что НПС через алл.спавн создавали где-то так в позапрошлом столетии? Можно что угодно говорить о ЗП, но разработчики сделали большой подарок - убрали к чертям привязанность НПС к алл.спавну. Впрочем, это сделали, по-моему, еще в ЧН.
    Вот скажи, почему нужно обязательно не делать удобно через сквады и не через СДК, на крайняк, а изобретать трехколесный велосипед в лучших традициях нубостроя? smile wink
    Дружище, учись лучше делать правильно, а не через...аномалию.
    Цитата saxar ()
    Так

    Так.
      Злобная реклама
    Понедельник, 30.06.2014, 19:45
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Российская Федерация  saxar
    Понедельник, 30.06.2014, 20:22 | Сообщение # 3572
    Статус:
    Бывалый:
    Сообщений: 801
    Награды: 2
    Регистрация: 17.10.2012

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

    Добавлено (30.06.2014, 20:21)
    ---------------------------------------------
    И кстати для таких делов очень хороший брат сталкер по прозвищу stalker 56 создал программу и комплектующие к ней чтоб не мучится с созданием непися и при этом не засорять all.spawn cool

    Добавлено (30.06.2014, 20:22)
    ---------------------------------------------
    Крутой чувак вообщем happy

      Злобная реклама
    Понедельник, 30.06.2014, 20:22
    Статус:
    Сообщений: 666
    Регистрация: 17.10.2012
    Российская Федерация  Stalker_AleX333
    Понедельник, 30.06.2014, 23:42 | Сообщение # 3573
    AleX Mod
    Статус:
    Гость:
    Сообщений: 65
    Награды: 0
    Регистрация: 07.12.2010

    Цитата ins33 ()
    Stalker_AleX333, Покажи тексты.
    А ещё лучше, для наглядности выложи диалоги с текстом, и за одно поршни. У себя посмтрю. И закомменть ф-ии, кроме закрытия диалога.


    Ок.

    Текущее состояние файлов (диалоги работающие некорректно помечены в комментах):

    Профили НПС:


    Структура диалогов НПС:
    НПС-1:

    НПС-2:


    Текстовый массив для диалогов:
    НПС-1:

    НПС-2:


    Логика НПС:
    НПС-1:

    НПС-2:


    Инфопоршни:


    И на всякий случай, квесты:


    З.Ы. Никто, случаем не знает, возможно ли дать нпс бессмертие на некоторое время? Допустим до выдачи определенного инфопоршня. Способ не важен, хоть скриптами хоть через логику.

    upd: был скопирован не весть текстовый массив для НПС-1. Подправил.
    Сообщение отредактировал Stalker_AleX333 - Вторник, 01.07.2014, 14:11
      Злобная реклама
    Понедельник, 30.06.2014, 23:42
    Статус:
    Сообщений: 666
    Регистрация: 07.12.2010
    Российская Федерация  saxar
    Вторник, 01.07.2014, 05:32 | Сообщение # 3574
    Статус:
    Бывалый:
    Сообщений: 801
    Награды: 2
    Регистрация: 17.10.2012

    Stalker_AleX333, через логику можно smile
    Если ЗП ,то в логике прописать в нужной тебе секции:

    [walker@test_1]
    path_walk = zat_ecolog_1_walk
    path_look = zat_ecolog_1_look
    commander = true
    combat_ignore_cond = true
    combat_ignore_keep_when_attacked = true
    meet = meet
    on_info = {+1} walker@test_2

    [walker@test_2]
    path_walk = zat_ecolog_1_walk
    path_look = zat_ecolog_1_look
    invulnerable = true - как раз таки отвечает за бессмертие непися
    commander = true
    combat_ignore_cond = true
    combat_ignore_keep_when_attacked = true
    meet = meet
    on_info = {-1} walker@test_2 - обратно становится смертным

    Добавлено (01.07.2014, 05:18)
    ---------------------------------------------
    Люди как прописать правильно музыку в sound_theme.script?

    Добавлено (01.07.2014, 05:32)
    ---------------------------------------------
    Expression : !m_error_code
    Function : raii_guard::~raii_guard
    File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
    Line : 748
    Description : .... - Зов Припяти\gamedata\scripts\xr_motivator.script:344: attempt to index field 'object' (a nil value)

    Вот моя обновленная логика:
    [logic]
    active = walker@1

    [walker@1]
    path_walk = zat_mag_1_walk
    path_look = zat_mag_1_look
    invulnerable = true
    commander = true
    combat_ignore_cond = true
    combat_ignore_keep_when_attacked = true
    meet = meet
    on_info = {+1} walker@2

    [walker@2]
    path_walk = zat_mag_2_walk
    path_look = zat_mag_2_look
    invulnerable = true
    commander = true
    combat_ignore_cond = true
    combat_ignore_keep_when_attacked = true
    snd = zat_ecolog_3

    [meet]
    use = {=actor_enemy} false, true
    meet_talk_enabled = true

    Вот что я прописал в sound_theme.scripts^
    --'-------------------------------------------------------------------------------------------------------------------
    --' Схема озвучки
    --' автор: Диденко Руслан (Stohe)
    --'--------------------------------------------------------------------------------------------------------------------
    nstl = 64
    theme = {}

    ph_snd_themes = {}
    ph_snd_themes["zat_ecolog_3"] = {"soundi\\zat_ecolog_3"}


    local sounds_base = stalker_ids.sound_script + 10000

    function id()
    sounds_base = sounds_base + 1
    return sounds_base - 1
    end
    --function printf()

      Злобная реклама
    Вторник, 01.07.2014, 05:32
    Статус:
    Сообщений: 666
    Регистрация: 17.10.2012
    Российская Федерация  ins33
    Вторник, 01.07.2014, 05:35 | Сообщение # 3575
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    Подскажите, как правильней настраивать условия работы смарта, в скрипте, логике или по барабану? К примеру день\ночь.

    Stalker_AleX333, Как добавить invulnerable в ТЧ посмотри в моей подписи. Там рабочий вариант, но пока работает также коряво, как и в ЗП. Точнее, ели нужно отловить хит этого нпс, то он будет реагировать на любой выстрел. Ну, а если нужен танк (Сахаров), который не будет обращать внимание ни на, что, то это то, что тебе надо.

    saxar, Так посмотри в примере из скрипта. Кстати, она также прописывается в script_sound.ltx.

    Добавлено (01.07.2014, 05:35)
    ---------------------------------------------
    Ты её в script_sound.ltx зарегистрировал?

      Злобная реклама
    Вторник, 01.07.2014, 05:35
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Украина  BozKurt
    Вторник, 01.07.2014, 12:18 | Сообщение # 3576
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    Цитата ins33 ()
    Подскажите, как правильней настраивать условия работы смарта, в скрипте, логике или по барабану? К примеру день\ночь.
    А что именно тебе не ясно?
      Злобная реклама
    Вторник, 01.07.2014, 12:18
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  ins33
    Вторник, 01.07.2014, 15:58 | Сообщение # 3577
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    BozKurt, Не понятно, какой способ вызова ф-ий более корректный, или где корректней прописать вызов условий. В логике:
    on_info = {!is_day}
    или в скрипте:м
    if level.get_time_hours()>= 8 and levev.get_time_hours <=23 then
    return 0

    По сути, это одна и та же ф-ия, и тут то, как раз меня заморочило, как правильней её вызывать, из логики или скрипта гулага.

    Добавлено (01.07.2014, 15:42)
    ---------------------------------------------
    Stalker_AleX333, Посмотреть пока не могу, нет времени всё это дело подключать. Надо было "мод" с диалогами этих 2 нпс выложить. Где нибудь рядом с стартом. Ну да ладно...
    Цитата Stalker_AleX333 ()

    ins33, я знаю, в чем разница между start_dialog и actor_dialog

    И ты хочешь сказать, что если gen_alex_taurus_dead_dialog будет стартовым, то косяк останется?
    И ещё раз словами объясни, что значит работает некорректно?

    Добавлено (01.07.2014, 15:58)
    ---------------------------------------------
    Ты на ТЧ работаешь?
    Сообщение отредактировал ins33 - Вторник, 01.07.2014, 15:58
      Злобная реклама
    Вторник, 01.07.2014, 15:58
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Украина  BozKurt
    Вторник, 01.07.2014, 16:41 | Сообщение # 3578
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    ins33, это совершенно разный подход.
    Код
    on_info = {!is_day}
    работает только для одной работы - той, в которой данный параметр прописан.
    Код
    if level.get_time_hours()>= 8 and levev.get_time_hours <=23 then
    - для всего населения гулага и если для работ не прописаны соответствующие кондиции: state = {0,1,... и т.д.}, то получиться совсем не то, чего хотелось.
    Да и вообще, у этих двух... опций разное назначение. Первое - локально, например, когда нужно сменить место патрулирования в зависимости от времени суток. Второе - это для смены состояния всего лагеря: атака, оборона и т.д. в том числе и смена караула день-ночь, но опять же таки для всего гулага или основной его части.
    Сообщение отредактировал BozKurt - Вторник, 01.07.2014, 16:43
      Злобная реклама
    Вторник, 01.07.2014, 16:41
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  Arist
    Вторник, 01.07.2014, 16:59 | Сообщение # 3579
    Статус:
    Неопытный:
    Сообщений: 481
    Награды: 1
    Регистрация: 08.07.2012

    Цитата
    и если для работ не прописаны соответствующие кондиции: state = {0,1,... и т.д.}
    . Спасибо,что когда-то ткнул меня носом в эти state. ins33, можно комбинировать.Кому то прописать state = {0} и state = {1} и вызывать из скрипта гулага
    if level.get_time_hours()>= 8 and levev.get_time_hours <=23 then

    А кому то state = {0,1} и вызывать из логики:
    on_info = {!is_day}
      Злобная реклама
    Вторник, 01.07.2014, 16:59
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Российская Федерация  saxar
    Вторник, 01.07.2014, 17:45 | Сообщение # 3580
    Статус:
    Бывалый:
    Сообщений: 801
    Награды: 2
    Регистрация: 17.10.2012

    idle = 0,0,100 - за что отвечает этот параметр в script_sound_zaton.ltx?

    Добавлено (01.07.2014, 17:45)
    ---------------------------------------------
    Можете расписать поподробней за что каждая из цифр отвечает.

      Злобная реклама
    Вторник, 01.07.2014, 17:45
    Статус:
    Сообщений: 666
    Регистрация: 17.10.2012
    Украина  FantomICW
    Вторник, 01.07.2014, 17:49 | Сообщение # 3581
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    saxar,
    1 - минимальный интервал между звуками
    2 - максимальный интервал
    3 - вероятность проигрывания с макс. значением 100.
    http://stalkerin.gameru.net/wiki....und_***
      Злобная реклама
    Вторник, 01.07.2014, 17:49
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Украина  BozKurt
    Вторник, 01.07.2014, 17:54 | Сообщение # 3582
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    Цитата Arist ()
    Кому то прописать state = {0} и state = {1} и вызывать из скрипта гулага
    Только нужно не забыть, что если в гулаге присутствуют хотя бы два состояния, а в какой-либо работе будет прописано только одно, то при переходе на другое - эта работа будет недоступна.
      Злобная реклама
    Вторник, 01.07.2014, 17:54
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  saxar
    Вторник, 01.07.2014, 18:10 | Сообщение # 3583
    Статус:
    Бывалый:
    Сообщений: 801
    Награды: 2
    Регистрация: 17.10.2012

    И ещё теперь когда я добавил 2 песни в его логику он первую уже не поет ,а вторую только с самого первого диалога с 1 раза ,а после заводится раза с 20.Что мне делать?

    Вот его логика:
    [logic]
    active = walker@1
    meet = meet

    [walker@1]
    path_walk = zat_mag_1_walk
    path_look = zat_mag_1_look
    invulnerable = true
    commander = true
    combat_ignore_cond = true
    combat_ignore_keep_when_attacked = true
    meet = meet
    on_info = {+1} %-1 =play_sound(zat_mag_sounds_1)%
    on_info = {+2} %-2 =play_sound(zat_mag_sounds_2)%

    [meet]
    use = {=actor_enemy} false, true
    meet_talk_enabled = true

    Вот диалог:
    В dialogs_zaton:
    <dialog id="1">
    <phrase_list>
    <phrase id="0">
    <text>1_0</text>
    <next>1</next>
    </phrase>
    <phrase id="1">
    <text>1_1</text>
    <next>2</next>
    <next>3</next>
    </phrase>
    <phrase id="2">
    <text>1_2</text>
    <give_info>1</give_info>
    </phrase>
    <phrase id="3">
    <text>1_3</text>
    <give_info>2</give_info>
    </phrase>
    </phrase_list>
    </dialog>
    </game_dialogs>

    В st_dialogs_zaton:
    <?xml version="1.0" encoding="windows-1251" ?>
    <string_table>
    <string id="1_0">
    <text>Здорова давайка музычку забацай!</text>
    </string>
    <string id="1_1">
    <text>Выбирай...</text>
    </string>
    <string id="1_2">
    <text>Тони Раут Мертвые Души</text>
    </string>
    <string id="1_3">
    <text>Помнишь Девочка?</text>
    </string>

    Где тут ошибка ума не приложу sad

    Добавлено (01.07.2014, 18:09)
    ---------------------------------------------
    Ещё в script_sound_zaton вот что прописал:

    zat_ecolog_1
    zat_ecolog_2
    zat_mag_sounds_1
    zat_mag_sounds_2

    [zat_ecolog_1]
    type = npc
    path = scenario\zaton\zat_ecolog_1
    shuffle = rnd
    idle = 0,0,100

    [zat_ecolog_2]
    type = npc
    path = scenario\zaton\zat_ecolog_2
    shuffle = rnd
    idle = 0,0,100

    [zat_mag_sounds_1]
    type = npc
    path = scenario\zaton\zat_mag_sounds_1
    shuffle = rnd
    idle = 0,0,100

    [zat_mag_sounds_2]
    type = npc
    path = scenario\zaton\zat_mag_sounds_2
    shuffle = rnd
    idle = 10,15,300

    Добавлено (01.07.2014, 18:10)
    ---------------------------------------------
    Кажется понял в чем тут дело dry

      Злобная реклама
    Вторник, 01.07.2014, 18:10
    Статус:
    Сообщений: 666
    Регистрация: 17.10.2012
    Российская Федерация  Stalker_AleX333
    Вторник, 01.07.2014, 18:10 | Сообщение # 3584
    AleX Mod
    Статус:
    Гость:
    Сообщений: 65
    Награды: 0
    Регистрация: 07.12.2010

    ins33, смотри - есть стартовый диалог у каждого из нпс и он, конечно, отображается адекватно. А есть остальные диалоги с тегом <actor_dialog> и по идее они все должны начинаться с фраз гг. А так-как необходимо, чтобы все диалоги начинали произносить нпс, я пытался использовать затычку:
    Код
       <phrase id="0">    
                      <text/>     
          <next>1</next>
                  </phrase>
    - которая не сработала. НО! Каким-то образом несколько диалогов отображаются верно, без плясок с бубном и при этом не являясь стартовыми! Отсюда и вопросы: почему так и как повторить это для всех диалогов?
    Сообщение отредактировал Stalker_AleX333 - Вторник, 01.07.2014, 18:12
      Злобная реклама
    Вторник, 01.07.2014, 18:10
    Статус:
    Сообщений: 666
    Регистрация: 07.12.2010
    Российская Федерация  saxar
    Вторник, 01.07.2014, 18:25 | Сообщение # 3585
    Статус:
    Бывалый:
    Сообщений: 801
    Награды: 2
    Регистрация: 17.10.2012

    Нет ,теперь только вторую поет когда я захочу ,а первую пластинку видимо испортил sad

    Добавлено (01.07.2014, 18:25)
    ---------------------------------------------
    Все ,разобрался smile Тут вот в чем дело было:

    on_info = {+1} %-1 =play_sound(zat_mag_sounds_1)%
    on_info2 = {+2} %-2 =play_sound(zat_mag_sounds_2)%

    on_info повторятся не должны иначе будет молчать biggrin

      Злобная реклама
    Вторник, 01.07.2014, 18:25
    Статус:
    Сообщений: 666
    Регистрация: 17.10.2012
    Поиск: