Случайная подборка модов
Закон Дегтярева
3.5
SWTC
4.1
Зимний путь 1.2: Альтернатива
2.2
The Second Sun
2.9
Legend Returns 0.9.2
4.0
Путь Бандита
2.0
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: FanG, Аdmin, FantomICW, Overfirst  
Форум » S.T.A.L.K.E.R. Модификации » Помощь в моддинге » [CoP] Модострой: вопросница
[CoP] Модострой: вопросница
Российская Федерация  Overfirst
Воскресенье, 31.12.2017, 13:17 | Сообщение # 1
Статус:
Бывалый:
Сообщений: 1081
Награды: 19
Регистрация: 11.06.2015

[CoP] Модострой: вопросница

Тема посвящена моддингу на платформе Зов Припяти.

Соседние темы: Тень Чернобыля / Чистое небо.


  • Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.

  • Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.

  • Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).

  • Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
  •   Злобная реклама
    Воскресенье, 31.12.2017, 13:17
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Польша  BL00Der
    Воскресенье, 15.03.2020, 14:41 | Сообщение # 6346
    Статус:
    Гость:
    Сообщений: 33
    Награды: 0
    Регистрация: 26.11.2017

    Я создал мутанта на основе тушкана. Мутант, однако, не борется со мной и убегает. Какие параметры в его конфиге должны быть изменены, чтобы он не убежал от боя?
      Злобная реклама
    Воскресенье, 15.03.2020, 14:41
    Статус:
    Сообщений: 666
    Регистрация: 26.11.2017
    Российская Федерация  Dalavier
    Воскресенье, 15.03.2020, 16:00 | Сообщение # 6347
    Статус:
    Зевака:
    Сообщений: 8
    Награды: 0
    Регистрация: 27.02.2018

    Здравствуйте, подскажите простой скрипт на закрытие окна КПК во время выброса (не на CoP, а на CoC, но разницы нет). Что-то я по всякому пробую, не получается. Платформа СоС 1.4.22, если начался выброс, а в это время открыт КПК (карта) нужно ее просто автоматически закрыть.

    Зачем нужно: есть такой скрипт pda_off, который во время выброса вместо КПК показывает картинку. Так вот если открыть КПК ДО начала выброса, а потом его закрыть игра вылетит, потому что hud = nil,

    Вот кусок кода:


    Нужно или в Surge_manager добавить проверку на открытый ПДА и принудительно его закрыть или в этом коде дописать эту проверку. Подскажите решение пожалйуста.
      Злобная реклама
    Воскресенье, 15.03.2020, 16:00
    Статус:
    Сообщений: 666
    Регистрация: 27.02.2018
    Украина  molodoy_chelovek
    Воскресенье, 15.03.2020, 17:06 | Сообщение # 6348
    Статус:
    Новичок:
    Сообщений: 316
    Награды: 2
    Регистрация: 14.07.2019

    Цитата Dalavier ()
    открыт КПК (карта) нужно ее просто автоматически закрыть.

    карта открывается/закрывается консольной командой "map"(user.ltx). Вызвать консольную команду можно функцией get_console():execute("команда"). А по поводу hud = nil думаю можно сделать проверку перед вызовом hud функций:
    Цитата
    if hud ~= nil then
    вызов hud функции
    else
    повторяем действия с переменными hud и window из вашего куска кода (после первых проверок)
    .
    Сообщение отредактировал molodoy_chelovek - Воскресенье, 15.03.2020, 17:13
      Злобная реклама
    Воскресенье, 15.03.2020, 17:06
    Статус:
    Сообщений: 666
    Регистрация: 14.07.2019
    Российская Федерация  Dalavier
    Воскресенье, 15.03.2020, 17:29 | Сообщение # 6349
    Статус:
    Зевака:
    Сообщений: 8
    Награды: 0
    Регистрация: 27.02.2018

    Что-то ничего не получается, пробовал в surge_manager в список
    Код
        if (self.started == true) then
      xr_statistic.inc_counter("surges")
      self:kill_all_unhided()
      self:respawn_artefacts_and_replace_anomaly_zone()
      self:toggle_level_artefact_respawns()

    добавить команду закрытия ПДА - не работает, не закрывается, если на старте выброса он открыт

    Любые условия запихиваю в код подмены ПДА на картинку, скрипт просто перестает работать - открывается обычный ПДА, что-то я не так делаю. В скриптах я полный ноль, по аналогии могу что-то склепать, а тут прямо затык

    Нарисовал вот такое:
    Код
    if (pdaoff_blowpsi) then
        if actor then
      if info_id == "ui_pda" and (surge_manager.is_started() or psi_storm_manager.is_started()) then
       if hud ~= nil then
        get_hud():RemoveDialogToRender(hud)
        HUD = nil
        elseif info_id == "ui_pda" and (surge_manager.is_started() or psi_storm_manager.is_started()) then
        hud = get_hud()
       window = PdaNoiseWnd()
       hud:AddDialogToRender(window)
        elseif info_id == "ui_pda_hide" and (surge_manager.is_started() or psi_storm_manager.is_started()) then
       hud:RemoveDialogToRender(window)
       window = nil
       hud = nil
       end
      end
        end
    end

    Теперь вылета нет, открытый ПДА закрывается во время выброса, открывается окно window, но теперь ПДА не закрывается, окно висит все время, а повторное нажание на кнопку вызова ПДА открывает обычный ПДА поверх window. Что-то я намудрил
    Сообщение отредактировал Dalavier - Воскресенье, 15.03.2020, 18:31
      Злобная реклама
    Воскресенье, 15.03.2020, 17:29
    Статус:
    Сообщений: 666
    Регистрация: 27.02.2018
    Украина  molodoy_chelovek
    Воскресенье, 15.03.2020, 19:50 | Сообщение # 6350
    Статус:
    Новичок:
    Сообщений: 316
    Награды: 2
    Регистрация: 14.07.2019

    Цитата Dalavier ()
    get_hud():RemoveDialogToRender(hud)

    Я думаю эта строка должна выглядеть так
    Цитата Dalavier ()
    hud:RemoveDialogToRender(window)
      Злобная реклама
    Воскресенье, 15.03.2020, 19:50
    Статус:
    Сообщений: 666
    Регистрация: 14.07.2019
    Российская Федерация  Dalavier
    Воскресенье, 15.03.2020, 19:57 | Сообщение # 6351
    Статус:
    Зевака:
    Сообщений: 8
    Награды: 0
    Регистрация: 27.02.2018

    Цитата molodoy_chelovek ()
    Я думаю эта строка должна выглядеть так

    Так окно подмены window появляется единожды, закрываешь ПДА, и при следующих открытиях ПДА (во время выброса) уже открывается обычный.

    Уже много перепробовал разных вариантов, почти получилось, но все равно какие-то затыки есть. Может быть все-таки лучший вариант это принудительное закрытие ПДА при начале выброса, но опять-таки в surge_manager.script в том списке, где перечислены
    Код
    xr_statistic.inc_counter("surges")
      self:kill_all_unhided()
      self:respawn_artefacts_and_replace_anomaly_zone()
      self:toggle_level_artefact_respawns()

    как добавить это условие принудительного закрытия ПДА. Мне кажется это решило бы проблему на корню.
    Сообщение отредактировал Dalavier - Воскресенье, 15.03.2020, 20:40
      Злобная реклама
    Воскресенье, 15.03.2020, 19:57
    Статус:
    Сообщений: 666
    Регистрация: 27.02.2018
    Украина  molodoy_chelovek
    Воскресенье, 15.03.2020, 20:58 | Сообщение # 6352
    Статус:
    Новичок:
    Сообщений: 316
    Награды: 2
    Регистрация: 14.07.2019

    Цитата Dalavier ()
      if info_id == "ui_pda"

    это как я понимаю проверка на активное окно ПДА. Проверяется оно (опять же как я понял)апдейтом. В прошлом апдейте вы вывели на экран window, переменная худ не равна nil. Следующий апдейт проходит проверку hud ~= nil в связи с чем и удаляет с экрана window. И таким образом получается цикл - окно создаётся и мгновенно удаляется.

    Добавлено (15.03.2020, 21:02)
    ---------------------------------------------
    и вообще, почему вы ВНУТРИ этой проверки
    Цитата Dalavier ()
    if info_id == "ui_pda"
    проверяете еще и это?...
    Цитата Dalavier ()
    elseif info_id == "ui_pda_hide"
    Если по логике это должно быть отдельной проверкой
    Сообщение отредактировал molodoy_chelovek - Воскресенье, 15.03.2020, 21:03
      Злобная реклама
    Воскресенье, 15.03.2020, 20:58
    Статус:
    Сообщений: 666
    Регистрация: 14.07.2019
    Российская Федерация  Dalavier
    Воскресенье, 15.03.2020, 21:50 | Сообщение # 6353
    Статус:
    Зевака:
    Сообщений: 8
    Награды: 0
    Регистрация: 27.02.2018

    В общем, единственное до чего тупая бащка додумалась, это вот такая конструкция, хотя бы не вылетает, но и работает неправильно:
    Код
    if (pdaoff_blowpsi) then
        if actor then
      if info_id == "ui_pda" and (surge_manager.is_started() or psi_storm_manager.is_started()) then
       if hud ~= nil then
        hud = get_hud()
        hud:RemoveDialogToRender(hud)
        hud:RemoveDialogToRender(window)
        window = nil
        hud = nil
         elseif info_id == "ui_pda_hide" and (surge_manager.is_started() or psi_storm_manager.is_started()) then
          hud:RemoveDialogToRender(window)
          hud:RemoveDialogToRender(hud)
          window = nil
          hud = nil
       else
        if info_id == "ui_pda" and (surge_manager.is_started() or psi_storm_manager.is_started()) then
         hud = get_hud()
         window = PdaNoiseWnd()
         hud:AddDialogToRender(window)
          elseif info_id == "ui_pda_hide" and (surge_manager.is_started() or psi_storm_manager.is_started()) then
           hud:RemoveDialogToRender(window)
           hud:RemoveDialogToRender(hud)
           window = nil
           hud = nil
        end
       end
      end
        end
    end

    При начале выброса не вылетет, но каждое повторное нажатие кнопки вызова ПДА, сначала вылазит окно-заглушка, потом под ним появляется худ, потом открывается обычный ПДА с картой, а потом закрывается все. И так по циклу. Хрень какая-то.
      Злобная реклама
    Воскресенье, 15.03.2020, 21:50
    Статус:
    Сообщений: 666
    Регистрация: 27.02.2018
    Российская Федерация  Prostomod
    Воскресенье, 15.03.2020, 22:15 | Сообщение # 6354
    Статус:
    Новичок:
    Сообщений: 266
    Награды: 4
    Регистрация: 27.02.2018

    Всем здравствуйте. Вот захотелось мне восстановить систему лута из ящиков при их разбитии. Известно ли, какие скрипты из ТЧ или ЧН отвечают за эту систему. Думаю найти их и перенести в ЗП. Либо же в каком моде это уже восстановлено?
      Злобная реклама
    Воскресенье, 15.03.2020, 22:15
    Статус:
    Сообщений: 666
    Регистрация: 27.02.2018
    Российская Федерация  sergej5500
    Воскресенье, 15.03.2020, 23:28 | Сообщение # 6355
    Статус:
    Новичок:
    Сообщений: 290
    Награды: 4
    Регистрация: 09.01.2017

    Цитата Prostomod ()
    Вот захотелось мне восстановить систему лута из ящиков при их разбитии.


    Насколько я знаю, эту систему никто не трогал. Все настраивается в логике объектов. Например, так:

    [logic]
    active = nil
    [drop_box]
    items = medkit,1,bandage,3

    или

    [logic]
    active = nil
    [drop_box]
    community = small_box_generic

    Прописывайте это ящикам в алл.спавн. И все работает.
      Злобная реклама
    Воскресенье, 15.03.2020, 23:28
    Статус:
    Сообщений: 666
    Регистрация: 09.01.2017
    Российская Федерация  denis2000
    Понедельник, 16.03.2020, 10:23 | Сообщение # 6356
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    BL00Der, Насколько я помню параметр ef_creature_type отвечает за "смелость" мутанта. Чем выше тем активнее атакует.
      Злобная реклама
    Понедельник, 16.03.2020, 10:23
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Neptun
    Понедельник, 16.03.2020, 13:19 | Сообщение # 6357
    Связной
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 9
    Регистрация: 25.03.2012

    Добро. Новый артефакт на показывается на экранчике детектора Сварог, хотя детектор его засвечивает. Детектор Велес нормально показывает. Как сделать так, чтобы на экране детектора Сварог новый артефакт был отмечен маркером.
      Злобная реклама
    Понедельник, 16.03.2020, 13:19
    Статус:
    Сообщений: 666
    Регистрация: 25.03.2012
    Российская Федерация  Paradox27kms
    Понедельник, 16.03.2020, 14:26 | Сообщение # 6358
    Статус:
    Новичок:
    Сообщений: 312
    Награды: 2
    Регистрация: 11.02.2019

    Не по теме (по понятным причинам что тема по ТЧ не актуальна) , но как в ТЧ удалить бродящих симовых НПС с локаций? Обычных удаляю таким методом прописывая в логику в спавне:
    Цитата
    Цитата
    [spawner]
    cond = {+all_spawn}


    А вот с симами не могу разобраться... мб где-то алайф редактировать нужно?
      Злобная реклама
    Понедельник, 16.03.2020, 14:26
    Статус:
    Сообщений: 666
    Регистрация: 11.02.2019
    Российская Федерация  Prostomod
    Понедельник, 16.03.2020, 17:56 | Сообщение # 6359
    Статус:
    Новичок:
    Сообщений: 266
    Награды: 4
    Регистрация: 27.02.2018

    Всем снова здравствуйте.
    Вопрос: ванильные выдвижные ящики (tumba_village_50x120_ph_door.ogf, tumba_village_100x90_ph_01_door.ogf, tumba_village_100x90_ph_door_l.ogf, tumba_village_100x90_ph_door_r.ogf и tumba_village_140x60_ph_door.ogf) под логикой (оригинальный slide_box_small.ltx) вообще использовать возможно? Ловлю из-за них вылет, что-то похоже с костями, причём как ТЧ-новских, так и на ЗП-шных ящиках (ЧН-овские не проверял).
      Злобная реклама
    Понедельник, 16.03.2020, 17:56
    Статус:
    Сообщений: 666
    Регистрация: 27.02.2018
    Российская Федерация  yobakun
    Понедельник, 16.03.2020, 21:21 | Сообщение # 6360
    Статус:
    Новичок:
    Сообщений: 270
    Награды: 5
    Регистрация: 30.07.2016

    Как заставить сквад бежать на target_smart не меняя логику работы на смарте? То есть надо чтобы сталкеры появились в одной точке и сразу побежали на другую, а не плелись полчаса.
      Злобная реклама
    Понедельник, 16.03.2020, 21:21
    Статус:
    Сообщений: 666
    Регистрация: 30.07.2016
    Форум » S.T.A.L.K.E.R. Модификации » Помощь в моддинге » [CoP] Модострой: вопросница
    Поиск: