Случайная подборка модов
Связной
4.2
История Конвона. Часть первая
3.1
STCS Weapon Pack 2.6
4.3
Another Zone Mod. Пролог
4.2
Oblivion Lost Remake
4.1
G.L.A.D.I.A.T.O.R. II Время Альянса
3.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
    Российская Федерация  denis2000
    Пятница, 04.12.2015, 15:50 | Сообщение # 8791
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата _S_k_i_F_ ()
    И разве на Затоне может быть проблема с сеткой?

    Ну а почему ее может не быть? Скриншот из SDK покажите, место хоженое или глухие дебри? Сетка в объекты не заглублена?
      Злобная реклама
    Пятница, 04.12.2015, 15:50
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  _Val_
    Пятница, 04.12.2015, 16:07 | Сообщение # 8792
    Ф.О.Т.О.Г.Р.А.Ф
    Статус:
    Бывалый:
    Сообщений: 1063
    Награды: 5
    Регистрация: 20.01.2012

    Абсолютно согласен с уважаемым denis2000.
    У самого сейчас на правке лежит несколько лок, причем от оригинала ТЧ. Вот смотришь на АИ-сетку и видишь вылеты, которые обычно называют "зверушка зашла не туда".
    Вообще конечно надо бы посмотреть и на точки лоок. Вдруг там косячок. Насчет вылета я лично без понятия, сейчас столько движковых правок, что люди даже вылета по неправильному вертексу избегают.
    Сообщение отредактировал _Val_ - Пятница, 04.12.2015, 16:17
      Злобная реклама
    Пятница, 04.12.2015, 16:07
    Статус:
    Сообщений: 666
    Регистрация: 20.01.2012
    Украина  _S_k_i_F_
    Пятница, 04.12.2015, 16:34 | Сообщение # 8793
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    del
    Сообщение отредактировал _S_k_i_F_ - Пятница, 04.12.2015, 17:31
      Злобная реклама
    Пятница, 04.12.2015, 16:34
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Российская Федерация  igi_vlad
    Пятница, 04.12.2015, 17:57 | Сообщение # 8794
    Статус:
    Неопытный:
    Сообщений: 552
    Награды: 4
    Регистрация: 04.08.2015

    Здесь тоже запощу, насчёт ОГСМ ЧН:
    Как мне ускорить появление артов в аномалиях после выброса (тайм-фактор 5, хочется всё-таки замедлить время ? - после ТДолины вернулся на Кордон, переждал второй выброс (или даже третий, на Свалке деньги уже отобрали, но на Агро ещё не ходил), пошёл на Свалку, вернулся в долину - нигде пока новых артов нет !
      Злобная реклама
    Пятница, 04.12.2015, 17:57
    Статус:
    Сообщений: 666
    Регистрация: 04.08.2015
    Соединенные Штаты  Joni_009
    Пятница, 04.12.2015, 19:05 | Сообщение # 8795
    Статус:
    Бывалый:
    Сообщений: 1008
    Награды: 14
    Регистрация: 25.05.2014

    Всем привет народ, такая проблема у меня метку ГГ не видно в ПДА на динамике, на статике все нормально работает. Платформа ЗП, что делать?
    Сообщение отредактировал Joni_009 - Пятница, 04.12.2015, 20:37
      Злобная реклама
    Пятница, 04.12.2015, 19:05
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2014
    Российская Федерация  castle
    Пятница, 04.12.2015, 20:05 | Сообщение # 8796
    Статус:
    Новичок:
    Сообщений: 262
    Награды: 2
    Регистрация: 11.01.2014

    На Вики для ЗП есть такое:

    actor_friendly = true ;Монстр не атакует актера до первой атаки на него.

    npc_friendly = true ;Монстр не атакует сталкеров и монстров до первой атаки на него.

    friendly = true ;Монстр не атакует никого до первой атаки на него.

    braindead = true ;Монстр игнорирует любые атаки.

    Но эти параметры ж не читаются о_0

    Решил восстановить их

    Добавил файл mob_alife_mgr.script

    Изменив его немного

    получилось как-то так

    Код
    ---------------------------------------------------------------------------------
    -- Mob alife manager
    ---------------------------------------------------------------------------------
    local params = {
           "braindead",
           "friendly",
           "actor_friendly",
           "npc_friendly"
    }

    function cfg_get_mode(ini, section, npc)
        local modes = {}
        for k, v in ipairs(params) do
      modes[v] = utils.cfg_get_bool(ini, section, v, npc, false)
        end
        return modes
    end

    function alife_control(obj, mode)
        -- Мертвые монстры сразу отпускаются под alife
        local active_scheme = db.storage[obj:id()].active_scheme
        local active_section = db.storage[obj:id()].active_section --' DEBUG
        printf("alife_control obj=[%s], sect=[%s], active_scheme=[%s] active_section [%s]", obj:name(), obj:section(), active_scheme, active_section)
        --local mode = db.storage[obj:id()][active_scheme].alife_mode
        if not (obj:alive() and mode) then
      xr_logic.mob_release(obj)
      return true
        end
        printf("alife_control: obj=[%s], sect=[%s] %s %s %s %s", obj:name(), obj:section(), mode.braindead, mode.friendly, mode.actor_friendly, mode.npc_friendly)
        if mode.braindead then
      -- Braindead монстры не уходят из под скрипта даже если их обстрелять
      xr_combat_ignore.fighting_with_actor_npcs[obj:id()] = nil --' Нужно-ли?
      return false
        end
        -- Монстры, у которых есть враг - также должны работать в alife
        local enemy = obj:get_enemy()
        if enemy then
      printf("_bp: got enemy")
      if not mode.friendly and
         (not mode.actor_friendly or enemy:id () ~= db.actor:id ()) and
         (not mode.npc_friendly or enemy:id() == db.actor:id()) then
       if db.storage[obj:id()].mob_combat then
        xr_logic.issue_event(obj, db.storage[obj:id()][active_scheme], "combat_callback")
       end
       xr_logic.mob_release(obj)
       return true
      end
        else
      xr_combat_ignore.fighting_with_actor_npcs[obj:id()] = nil --' На всякий случай :D
        end
        
        -- Отпускать в alife монстров, которых обстреляли
        local h = obj:get_monster_hit_info()
        if h.who and h.time ~= 0 then
      xr_logic.mob_release(obj)
      return true
        end

        -- Остальные монстры работают под схемой
        return false
    end


    Затем добавил в апдейт mob_home и mob_walker



    А также

    set_scheme

    storage.alife_mode = mob_alife_mgr.cfg_get_mode(ini, section, npc)

    затем в bind_monster в hit_callback добавляю это: (перенёс сюда из из функции alife_control)

    и добавил xr_logic.mob_release(victim) в death_callback

    И всё работает!

    Пытаюсь перенести вызов функции alife_control из mob_home и mob_walker в биндер монстров

    Как-то так:


    Но как-то не работает, вылетает attemp to index a nil value

    На этой вот строчке if mob_alife_mgr.alife_control(self.object, self.st[self.st.active_scheme].alife_mode) then

    вот все строчки из лога



    Что я неправильно делаю???
    Сообщение отредактировал castle - Пятница, 04.12.2015, 22:29
      Злобная реклама
    Пятница, 04.12.2015, 20:05
    Статус:
    Сообщений: 666
    Регистрация: 11.01.2014
    Украина  _S_k_i_F_
    Пятница, 04.12.2015, 20:43 | Сообщение # 8797
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    Сделал рестриктор с логикой таймера, при получении поршня и перехода рестриктора в активное состояние таймер запускается и выводится на экран. А как убрать вывод таймера на экран и чтобы он считал игровое время, а не реальное? Зараннее спасибо!
    Сообщение отредактировал _S_k_i_F_ - Пятница, 04.12.2015, 20:56
      Злобная реклама
    Пятница, 04.12.2015, 20:43
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Соединенные Штаты  Joni_009
    Пятница, 04.12.2015, 20:58 | Сообщение # 8798
    Статус:
    Бывалый:
    Сообщений: 1008
    Награды: 14
    Регистрация: 25.05.2014

    _S_k_i_F_, Попробуй так сделать
      Злобная реклама
    Пятница, 04.12.2015, 20:58
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2014
    Российская Федерация  makdm
    Пятница, 04.12.2015, 21:33 | Сообщение # 8799
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    Цитата _S_k_i_F_ ()
    А как убрать вывод таймера на экран и чтобы он считал игровое время, а не реальное?

    Чем вам on_game_timer в логике рестриктора sr_idle не нравится?
    Сообщение отредактировал makdm - Пятница, 04.12.2015, 21:34
      Злобная реклама
    Пятница, 04.12.2015, 21:33
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Украина  _S_k_i_F_
    Пятница, 04.12.2015, 21:46 | Сообщение # 8800
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    makdm, как в on_game_timer правильно высчитывать время? Зараннее спасибо!
    Сообщение отредактировал _S_k_i_F_ - Пятница, 04.12.2015, 22:12
      Злобная реклама
    Пятница, 04.12.2015, 21:46
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Российская Федерация  makdm
    Пятница, 04.12.2015, 22:15 | Сообщение # 8801
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    Цитата _S_k_i_F_ ()
    как в on_game_timer правильно высчитывать время?

    Не понял вопроса.
    В одном часе 60 минут, в минуте 60 секунд.
    Чего высчитывать будем???
      Злобная реклама
    Пятница, 04.12.2015, 22:15
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Украина  _S_k_i_F_
    Пятница, 04.12.2015, 23:10 | Сообщение # 8802
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    makdm, то есть если выставить 600 - то это будет 6 игровых минут?
      Злобная реклама
    Пятница, 04.12.2015, 23:10
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Российская Федерация  makdm
    Пятница, 04.12.2015, 23:22 | Сообщение # 8803
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    Цитата _S_k_i_F_ ()
    то есть если выставить 600 - то это будет 6 игровых минут?

    Зачем задавать вопросы, на которые можно получить ответ путём эксперимента?
    Что мешает это проверить в игре?
    ( Вообще-то 60 * 6 = 360. У нас ещё и с математикой проблемы? )
      Злобная реклама
    Пятница, 04.12.2015, 23:22
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Российская Федерация  BeeRsek
    Суббота, 05.12.2015, 08:13 | Сообщение # 8804
    Тайна Зоны: История Стрелка
    Статус:
    Опытный:
    Сообщений: 1308
    Награды: 7
    Регистрация: 24.01.2011

    Нужна помощь. Установил фотошоп, установил плагин для открытия dds, а он зараза не работает. Дома на компе тот же фотошоп и тот же плагин и всё работает. Правда дома 32битная система,а тут 64. Может из-за этого? И как теперь решить эту проблему?
      Злобная реклама
    Суббота, 05.12.2015, 08:13
    Статус:
    Сообщений: 666
    Регистрация: 24.01.2011
    Украина  _S_k_i_F_
    Суббота, 05.12.2015, 12:27 | Сообщение # 8805
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    Скажите, что за вылет? Вылетает в при юзании диалога


    Зараннее спасибо!
      Злобная реклама
    Суббота, 05.12.2015, 12:27
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Поиск: