Случайная подборка модов
Время перемен v2.0
4.1
Сюжетное продолжение Чистого неба
4.1
Paradise Lost
3.7
Блудный сын
2.8
Dead Autumn
4.1
Опасный Вирус
2.4
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  А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
    Российская Федерация  Asfagan
    Воскресенье, 11.05.2014, 22:02 | Сообщение # 3046
    Статус:
    Бывалый:
    Сообщений: 929
    Награды: 12
    Регистрация: 01.02.2014

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

    Добавлено (11.05.2014, 22:02)
    ---------------------------------------------
    Как поменять мутанта у Ноя в Зов Припяти? Я хочу заменть псевдособаку на химеру, как это сделать???

      Злобная реклама
    Воскресенье, 11.05.2014, 22:02
    Статус:
    Сообщений: 666
    Регистрация: 01.02.2014
    Российская Федерация  ins33
    Воскресенье, 11.05.2014, 22:17 | Сообщение # 3047
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    Asfagan, Да. Даже если он умрёт не от рук ГГ. Если должен убить ГГ, то надо дописать
    Код
    on_death = death

    [death]
    on_info =  {=killed_by_actor} %+info%

    Только убедись, что в xr_conditions.script есть ф-ия killed_by_actor, в ТЧ она точно есть.

    Распакуй all.spawn, найди собаку, и поменяй её на химеру.
    section_name = pseudodog_weak -->> section_name = chimera_weak
    visual_name = monsters\pseudodog\pseudodog -->> visual_name = monsters\chimera\chimera
      Злобная реклама
    Воскресенье, 11.05.2014, 22:17
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Российская Федерация  Asfagan
    Воскресенье, 11.05.2014, 22:29 | Сообщение # 3048
    Статус:
    Бывалый:
    Сообщений: 929
    Награды: 12
    Регистрация: 01.02.2014

    ins33, спасибо, а я то пытался логику псины менять biggrin

    Добавлено (11.05.2014, 22:26)
    ---------------------------------------------
    ins33, а функция есть такая, нашел

    Добавлено (11.05.2014, 22:29)
    ---------------------------------------------
    а есть такая функция которая меняет нпс с нейтрала на врага? допустим я хочу сделать во время диалога с нпс чтобы он стал врагом

      Злобная реклама
    Воскресенье, 11.05.2014, 22:29
    Статус:
    Сообщений: 666
    Регистрация: 01.02.2014
    Российская Федерация  SG
    Воскресенье, 11.05.2014, 22:44 | Сообщение # 3049
    Статус:
    Новичок:
    Сообщений: 237
    Награды: 0
    Регистрация: 12.09.2013

    подскажите логику для вертолета чтоб днем он был в одном path_move а ночью в другом path_move
      Злобная реклама
    Воскресенье, 11.05.2014, 22:44
    Статус:
    Сообщений: 666
    Регистрация: 12.09.2013
    Российская Федерация  Arist
    Воскресенье, 11.05.2014, 22:54 | Сообщение # 3050
    Статус:
    Неопытный:
    Сообщений: 481
    Награды: 1
    Регистрация: 08.07.2012

    ins33, действительно, надо было раньше Notepad поставить.Но привык к блокноту.

    Добавлено (11.05.2014, 22:54)
    ---------------------------------------------
    SG, а проверка is_day не работает?
    [logic]
    active = heli_move

    [heli_move]
    path_move = heli_idle_move
    on_info = {=is_day} heli_move@day
    on_info2 = {!is_day} heli_move@night

    Попробуй.

      Злобная реклама
    Воскресенье, 11.05.2014, 22:54
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Российская Федерация  ins33
    Воскресенье, 11.05.2014, 23:28 | Сообщение # 3051
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    Asfagan, Посмотри ф-ию killactor в xr_effects.script

    Arist, Вроде всё ок, только может стоит or таблицей заменить?

    Сообщение отредактировал ins33 - Воскресенье, 11.05.2014, 23:32
      Злобная реклама
    Воскресенье, 11.05.2014, 23:28
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Российская Федерация  RICK
    Понедельник, 12.05.2014, 04:35 | Сообщение # 3052
    Статус:
    Опытный:
    Сообщений: 1205
    Награды: 4
    Регистрация: 10.05.2011


    FATAL ERROR

    [error]Expression : !m_error_code
    [error]Function : raii_guard::~raii_guard
    [error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
    [error]Line : 748
    [error]Description : ...all of pripyat\gamedata\scripts\smart_terrain.script:512: attempt to index field 'alife_task' (a nil value)


    stack trace:

    немогу понять почему вылетает не хочет эксклюзива в сталкер зп спавнить

    вот пример логики нпс

    [logic@rad_stalker_base_guard_1]
    suitable = {=check_npc_name(rad_stalker_base_guard_1)} true
    prior = 100
    active = Walker@post_guard1

    [Walker@post_guard1]
    path_walk = post_guarder_1_walk
    path_look = post_guarder_1_look
    out_restr = l01_a1_stalker_base_def_restr
    meet = meet@stalker_base_guards_meet
    gather_items_enabled = false
    help_wounded_enabled = true
    corpse_detection_enabled = false
    use_camp = false
    ;on_info = {+}

    [meet@stalker_base_guards_meet]
    ;meet_dialog = pri_a17_military_recon_squad_ambush_dialog_second
    close_snd_hello = jup_a6_freedom_leader_greeting
    close_snd_bye = jup_a6_freedom_leader_farewell
    close_anim = guard_na
    close_victim = actor
    far_anim = nil
    far_victim = nil
    close_distance = 0
    far_distance = 0
    close_snd_distance = 3
    use = {=actor_enemy} false, true
    abuse = true
    allow_break = false
    trade_enable = false
    meet_on_talking = false

    название точек в сдк l01_a1_stalker_base_smart_post_guarder_1_walk l01_a1_stalker_base_smart_post_guarder_1_look
      Злобная реклама
    Понедельник, 12.05.2014, 04:35
    Статус:
    Сообщений: 666
    Регистрация: 10.05.2011
    Российская Федерация  SG
    Понедельник, 12.05.2014, 15:14 | Сообщение # 3053
    Статус:
    Новичок:
    Сообщений: 237
    Награды: 0
    Регистрация: 12.09.2013

    Подскажите, как в ЗП добавить новую секцию в кпк, типа карта зоны или история сообщений
    smile
      Злобная реклама
    Понедельник, 12.05.2014, 15:14
    Статус:
    Сообщений: 666
    Регистрация: 12.09.2013
    Российская Федерация  saxar
    Понедельник, 12.05.2014, 19:00 | Сообщение # 3054
    Статус:
    Бывалый:
    Сообщений: 801
    Награды: 2
    Регистрация: 17.10.2012

    Люди ,если кто знает как ЭТО ЧУДО перенести из ТЧ в ЗП? smile

    Добавлено (12.05.2014, 19:00)
    ---------------------------------------------
    Я про грави-ган хочу узнать smile

      Злобная реклама
    Понедельник, 12.05.2014, 19:00
    Статус:
    Сообщений: 666
    Регистрация: 17.10.2012
    Российская Федерация  phuto
    Понедельник, 12.05.2014, 19:57 | Сообщение # 3055
    Статус:
    Зевака:
    Сообщений: 27
    Награды: 3
    Регистрация: 01.09.2013

    S.T.A.L.K.E.R. Clear Sky
    При апгрейде наводиш стрелочку на иконку.
    Описание мигнет и не успеваю прочитать что написано.

    Где копать подскажите?
      Злобная реклама
    Понедельник, 12.05.2014, 19:57
    Статус:
    Сообщений: 666
    Регистрация: 01.09.2013
    Российская Федерация  safra2011
    Понедельник, 12.05.2014, 20:26 | Сообщение # 3056
    Сообщений: 87
    Регистрация: 25.08.2012

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

    Часть логики ниже:
      Злобная реклама
    Понедельник, 12.05.2014, 20:26
    Статус:
    Сообщений: 666
    Регистрация: 25.08.2012
    Российская Федерация  ins33
    Понедельник, 12.05.2014, 20:30 | Сообщение # 3057
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    saxar, Попробуй >>её<< поставить в ЗП, дальше логи помогут. Если они будут.
      Злобная реклама
    Понедельник, 12.05.2014, 20:30
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Российская Федерация  RICK
    Понедельник, 12.05.2014, 21:02 | Сообщение # 3058
    Статус:
    Опытный:
    Сообщений: 1205
    Награды: 4
    Регистрация: 10.05.2011

    мне ответят нет ? angry
      Злобная реклама
    Понедельник, 12.05.2014, 21:02
    Статус:
    Сообщений: 666
    Регистрация: 10.05.2011
    Российская Федерация  ins33
    Понедельник, 12.05.2014, 21:08 | Сообщение # 3059
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    safra2011, Если будешь менять расстояние в конфиге, то это коснётся всех НПС. Как вариант, можешь воспользоваться ф-ей:
    Код
    function new_talk()
    local npc = level_object_by_sid(number) -- где number = story_id
    db.actor:run_talk_dialog(npc) -- тут будет читаться диалог нпс, из профиля нпс прописанный в dialogs_*.xml
    end
    Только тебе надо добавить прозрачного нпс с которым будешь говорить, на стандартном расстоянии.
    И вызвать ф-ию из логики нпс или рестриктора.
    П.С. По другому вроде никак. Гуру, поправьте, если есть альтернативный вариант.

    Если будешь вызывать из xr_effects.script то добавь в него:
    Код
    function new_talk(actor, npc, p)
       local nps = level_object_by_sid(p[1])
       db.actor:run_talk_dialog(nps)
    end
    Вызов из логики:
    =new_talk(story_id)
    N.B. Проверь наличие ф-ии level_object_by_sid в _g.script, если её нет, то замени на подобную из ЗП, или добавь:
    Код
    function level_object_by_sid( sid )
       local sim = alife()

       if sim then
        local se_obj = sim:story_object( sid )
        if se_obj then
         return level.object_by_id( se_obj.id )
        end
       end

       return nil
    end

    Это из ТЧ, но сработает и в ЗП.

    Добавлено (12.05.2014, 21:08)
    ---------------------------------------------
    RICK, Покажи секцию НПС.
    Полное название путей не помогло?
    Сообщение отредактировал ins33 - Понедельник, 12.05.2014, 21:10
      Злобная реклама
    Понедельник, 12.05.2014, 21:08
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Российская Федерация  RICK
    Понедельник, 12.05.2014, 21:13 | Сообщение # 3060
    Статус:
    Опытный:
    Сообщений: 1205
    Награды: 4
    Регистрация: 10.05.2011

    [smart_terrain];l01_a1_stalker_base_smart
    squad_id = 1
    def_restr = l01_a1_stalker_base_def_restr
    safe_restr = l01_rad_stalker_base_sr_light
    smart_control = smart_control
    max_population = 1
    arrive_dist = 65

    [smart_control]
    noweap_zone = l01_rad_stalker_base_noweap
    ignore_zone = l01_rad_stalker_base_sr_light
    alarm_start_sound = zat_a2_base_alarm
    alarm_stop_sound = zat_a2_base_relax

    [exclusive]
    rad_stalker_base_guard_1 = l01_radon\rad_stalker_base_post_guards.ltx

    [logic@rad_stalker_base_guard_1]
    suitable = {=check_npc_name(rad_stalker_base_guard_1)} true
    prior = 100
    active = Walker@post_guard1

    [Walker@post_guard1]
    path_walk = post_guarder_1_walk
    path_look = post_guarder_1_look
    out_restr = l01_a1_stalker_base_def_restr
    meet = meet@stalker_base_guards_meet
    gather_items_enabled = false
    help_wounded_enabled = true
    corpse_detection_enabled = false
    use_camp = false
    ;on_info = {+}

    [meet@stalker_base_guards_meet]
    ;meet_dialog = pri_a17_military_recon_squad_ambush_dialog_second
    close_snd_hello = jup_a6_freedom_leader_greeting
    close_snd_bye = jup_a6_freedom_leader_farewell
    close_anim = guard_na
    close_victim = actor
    far_anim = nil
    far_victim = nil
    close_distance = 0
    far_distance = 0
    close_snd_distance = 3
    use = {=actor_enemy} false, true
    abuse = true
    allow_break = false
    trade_enable = false
    meet_on_talking = false

    название точек в сдк l01_a1_stalker_base_smart_post_guarder_1_walk l01_a1_stalker_base_smart_post_guarder_1_look

    [error]Expression : !m_error_code
    [error]Function : raii_guard::~raii_guard
    [error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
    [error]Line : 748
    [error]Description : ...all of pripyat\gamedata\scripts\smart_terrain.script:512: attempt to index field 'alife_task' (a nil value)
    Сообщение отредактировал RICK - Понедельник, 12.05.2014, 21:17
      Злобная реклама
    Понедельник, 12.05.2014, 21:13
    Статус:
    Сообщений: 666
    Регистрация: 10.05.2011
    Поиск: