Случайная подборка модов
В западне
3.9
Золотой Обоз 2
3.0
Зона обр.2010г.
3.1
Dream Reader - Dangerous Area
4.1
Вариант Омега 2
3.6
Хроники Зоны: Viam Fata
3.0
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  А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
    Пятница, 19.02.2016, 19:53 | Сообщение # 9871
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Sikorskyi, Тег <w> закрывайте. Если не знаете стнтаксиса XML используйте программу с его подсветкой, так будет проще.
    Сообщение отредактировал denis2000 - Пятница, 19.02.2016, 19:56
      Злобная реклама
    Пятница, 19.02.2016, 19:53
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Украина  _S_k_i_F_
    Пятница, 19.02.2016, 20:25 | Сообщение # 9872
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    Такая проблема: НПС на смарт коврах слепые, реагируют на ГГ только если близко подойти. Монолит на точках пути видит ГГ издалека, как надо. Как сделать ГГ более заметным? Зараннее спасибо!
    makdm, спасибо!
    Сообщение отредактировал _S_k_i_F_ - Суббота, 20.02.2016, 10:41
      Злобная реклама
    Пятница, 19.02.2016, 20:25
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Российская Федерация  makdm
    Суббота, 20.02.2016, 09:38 | Сообщение # 9873
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    Цитата _S_k_i_F_ ()
    НПС на смарт коврах слепые, реагируют на ГГ только если близко подойти

    _S_k_i_F_, откройте файл xr_combat_ignore.script

    В методе action_process_enemy:enemy_callback( obj, enemy ) ( в файле два раза встречается такая строчка ) Перед строчкой :

    local se_enemy = alife():object(enemy:id())

    напишите:

    if enemy:id() == db.actor:id() then return end

    Смотрите что получится.
    Сообщение отредактировал makdm - Суббота, 20.02.2016, 09:49
      Злобная реклама
    Суббота, 20.02.2016, 09:38
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Украина  _S_k_i_F_
    Суббота, 20.02.2016, 11:44 | Сообщение # 9874
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    makdm, враги теперь на меня вообще не реагируют.
    Сообщение отредактировал _S_k_i_F_ - Суббота, 20.02.2016, 11:44
      Злобная реклама
    Суббота, 20.02.2016, 11:44
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Российская Федерация  makdm
    Суббота, 20.02.2016, 12:00 | Сообщение # 9875
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    Цитата _S_k_i_F_ ()
    враги теперь на меня вообще не реагируют.

    Это потому что вы торопитесь и не вникаете в смысл того, что я вам пишу.
    Читаем внимательно:

    Цитата makdm ()
    В методе action_process_enemy:enemy_callback( obj, enemy ) ( в файле два раза встречается такая строчка )


    А вы куда вписАли строчку ??? Подозреваю что в функцию is_enemy(obj, enemy, st, not_check_sim)
    Сообщение отредактировал makdm - Суббота, 20.02.2016, 12:02
      Злобная реклама
    Суббота, 20.02.2016, 12:00
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Украина  _S_k_i_F_
    Суббота, 20.02.2016, 15:52 | Сообщение # 9876
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    makdm, нет, в функцию action_process_enemy:enemy_callback( obj, enemy )
    Код
    function action_process_enemy:enemy_callback( obj, enemy )
    --'    local obj_pos = self.object:position()
    --'    local ene_pos = enemy:position()
    --'    printf("FOUND ENEMY [%s](%s,%s,%s) -> [%s](%s,%s,%s)", self.object:name(), obj_pos.x, obj_pos.y, obj_pos.z,
    --'                                 enemy:name(), ene_pos.x, ene_pos.y, ene_pos.z)
        if enemy:id() == db.actor:id() then
      fighting_with_actor_npcs[obj:id()] = true
        end

        local is_obj_enemy = is_enemy( obj, enemy, self.st, false )
        if is_obj_enemy == true then
      local se_obj = alife():object(obj:id())
      if se_obj and se_obj.m_smart_terrain_id ~= 65535 then
       local smart_obj = alife():object(se_obj.m_smart_terrain_id)
       smart_obj:set_alarm()

       if enemy:id() == db.actor:id() and smart_obj.base_on_actor_control ~= nil then
        smart_obj.base_on_actor_control:actor_attack()
       end
      end
                     if enemy:id() == db.actor:id() then return end
      local se_enemy   = alife():object(enemy:id())
      if se_obj and se_enemy then
       local sim_obj_registry  = simulation_objects.get_sim_obj_registry()
       if  se_obj.group_id ~= 65535  and sim_obj_registry.objects[se_obj.group_id] ~= nil and
        se_enemy.group_id ~= 65535  and sim_obj_registry.objects[se_enemy.group_id] == nil and
        se_obj.position:distance_to_sqr(se_enemy.position) > 900 then
        return false
       end
      end
        end

        return is_obj_enemy
    end
      Злобная реклама
    Суббота, 20.02.2016, 15:52
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Российская Федерация  makdm
    Суббота, 20.02.2016, 16:03 | Сообщение # 9877
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    _S_k_i_F_, вау, это я накосячил.

    Напиши:

    if enemy:id() == db.actor:id() then
    return is_obj_enemy
    end
      Злобная реклама
    Суббота, 20.02.2016, 16:03
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Российская Федерация  [Qvt]
    Суббота, 20.02.2016, 17:42 | Сообщение # 9878
    Статус:
    Отмычка:
    Сообщений: 154
    Награды: 3
    Регистрация: 19.02.2016

    Цитата strchi ()
    Ну помогите, пожалуйста) Как в ЗП отрубить КПК на время, чтоб не открывался?)

    Без правок движка - никак.
    В файле UIGameSP.cpp (xrGame)
    case kACTIVE_JOBS:
    {
    if ( !pActor->inventory_disabled() )
    ShowPdaMenu();
    break;
    }

    Заменяешь на:

    case kACTIVE_JOBS:
    {
    if (!Actor()->HasInfo("blocked_pda_info")) {
    if ( !pActor->inventory_disabled() )
    ShowPdaMenu();
    break;
    }
    }

    Компилируешь

    Можно в любое время выдавать инфопоршень blocked_pda_info и при его наличии клавиша вызова пда не будет работать.
      Злобная реклама
    Суббота, 20.02.2016, 17:42
    Статус:
    Сообщений: 666
    Регистрация: 19.02.2016
    Украина  _S_k_i_F_
    Суббота, 20.02.2016, 19:28 | Сообщение # 9879
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    makdm, огромное спасибо! Теперь все норм.
      Злобная реклама
    Суббота, 20.02.2016, 19:28
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Российская Федерация  DukeKAn
    Суббота, 20.02.2016, 20:00 | Сообщение # 9880
    Статус:
    Неопытный:
    Сообщений: 491
    Награды: 8
    Регистрация: 25.11.2012

    Цитата [Qvt] ()
    Без правок движка - никак.

    Ну уж никак. Можно в скрипте, get_console():execute("bind map km") назначает кнопку открытия карты на m. Как дальше делать - ну может в апдейте отрубать эту и другие клавиши КПК, в оригинале
    Активные задания в КПК — active_jobs — kP (P)
    Карта в КПК — map — kM (M)
    Контакты в КПК — contacts — kH (H)

    Цитата denis2000 ()
    Временно сменить кнопку вызова ПДА?

    denis2000, всё верно сказал.
      Злобная реклама
    Суббота, 20.02.2016, 20:00
    Статус:
    Сообщений: 666
    Регистрация: 25.11.2012
    Украина  _S_k_i_F_
    Суббота, 20.02.2016, 23:52 | Сообщение # 9881
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    Назначил тайнику spawn_story_id в СДК

    Распаковал all.spawn чтобы проверить, а там вместо единицы ноль
    Код
    [story_object]
    story_id = red_askold_document

    [logic]
    cfg = scripts\treasure_inventory_box.ltx

    [spawn]
    red_askold_document = 1
    medkit_complex_4 = 1
    END
    spawn_story_id = 0

    Вот что в game_spawn_story_ids написано
    Код
    [spawn_story_ids]
    red_askold_document = 1


    Попробовал сделать несолько спаун стори айди, и вибирается в СДК только mo_spaen_story либо самый верхний и все.
    В чем проблема? Зараннее спасибо!
    Сообщение отредактировал _S_k_i_F_ - Воскресенье, 21.02.2016, 10:11
      Злобная реклама
    Суббота, 20.02.2016, 23:52
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Российская Федерация  Sikorskyi
    Воскресенье, 21.02.2016, 00:21 | Сообщение # 9882
    Статус:
    Опытный:
    Сообщений: 2129
    Награды: 16
    Регистрация: 30.12.2012

    Цитата denis2000 ()
    Тег <w> закрывайте.
    Закрыл. Не получается:
    FATAL ERROR

    [error]Expression : xml_doc.NavigateToNode(path,index)
    [error]Function : CUIXmlInit::InitStatic
    [error]File : ui\UIXmlInit.cpp
    [error]Line : 156
    [error]Description : XML node not found
    [error]Argument 0 : MGame_WhereBall:background
    [error]Argument 1 : ui\ui_mini_games.xml

    stack trace:

    0023:04EA5452 xrGame.dll, CDialogHolder::IR_UIOnKeyboardHold()
    0023:04D4E05D xrGame.dll, CxIOFile::Open()

    Сам файл http://rghost.ru/8Pf49CJvb
      Злобная реклама
    Воскресенье, 21.02.2016, 00:21
    Статус:
    Сообщений: 666
    Регистрация: 30.12.2012
    Казахстан  riper
    Воскресенье, 21.02.2016, 12:21 | Сообщение # 9883
    Статус:
    Бывалый:
    Сообщений: 612
    Награды: 6
    Регистрация: 11.08.2013

    Решил выложить свою идею,
    мне ее реализовать врят ли получится знаний просто не хватит.
    а из за не хватки времени заниматься этим просто не когда.
    Приходится просто просматривать новости
    изредка пробуя что-то особенное.
    Идея вот в чем - приключение на кордоне и свалке без сюжета.
    Стартуем в деревне новичков в всем знакомом подвальчике.у нас нет клички мы просто новичок.
    Бандиты и сталкеры нейтральны по отношению к другу другу и к гг.
    выходим из подвала натыкаемся на такую картину, Волк говорит с бандитом (бек),
    двое сталкеров замочили братка, но сбежать не сумели теперь заложники на базе за насыпью.
    Бек предлагает выкупить их за 20 косарей за каждого иначе их грохнут.
    Братки возможно что и сами нарвались
    без мозгов совсем были, но отпустить сталкеров не может -братва не поймет.
    за выкуп вроде согласны.
    Деньги нужно собрать к вечеру Бек сам придет и сталкеров приведет.
    Бек уходит.
    Волк предлагает задание нужно собрать арты в аномальных зонах в туннели и за деревней можно на свалке для выкупа .
    соглашаться или нет решать гг.
    насыпь и проход под мостом , также туннель на свалку и переход, контролируют бандиты .
    Под мостом пройти можно, но за плату причем в обе стороны .
    Чтобы попасть на свалку тоже нужно заплатить .
    На свалке бандиты тоже нейтральны нет сценки гоп стоп возле камаза и также нет атаки бандитов на участок с
    брошенной техникой и нет атаки в депо все мирно .
    если соглашаемся на предложение Волка и приносим арты получаем кличку ( фартовый ).
    если просто свалим дальше в зону -будет считаться что Волк заплатил бандитам выкуп .
    Бандиты остаются нейтральны .
    если останемся до вечера Волк попросит о помощи в разборке с бандитами , мало ли что может случится .
    Забираемся на чердак ( аля rma исправленная разборка с наемниками ) вся сцена происходит у костра .
    Вместо Бека приходит Косой нервный и дерганый требует выкуп , заложники здесь жи на коленях и руки за головой .
    гг ждет если мы не стреляем то Волк отдает выкуп .
    гг стреляет в бандита .засада срабатывает сталкеры выигрывают, но один бандит сбегает на атп.
    Волк дает задание зачистить атп . Присоединяемся к людям Волка они теперь не в кустах на холме а под мотом у костра .
    зачищаем атп . но все становиться известно бандитам , бандиты теперь враждебны к сталкерам и гг .
    на свалке срабатывает сценка с гоп стопом возле камаза , просьба о помощи отбить атаку возле брошенной техники и депо.
    есть еще вариант
    когда гг стреляет не в бандита, а в Волка , бандиты нейтральны к гг, а сталкеры враждебны.
    бандиты выигрывают засада провалена ,Косой подзывает гг получаем кличку (баклан ).
    при переходе на свалку застаем сценку гоп стоп уже в оконченном виде сталкер мертв , атакуем брошенную технику одновременно
    с двух сторон . дпо тоже самое .
    есть еще и другой вариант , гг нападаем на конвой который ведет заложников в деревню , бандиты враждебны к гг но нейтральны к сталкерам ,
    Сидорыч дает кличку ( меченный ) , теперь на нас объявлена охота ,бандиты платят за нашу голову .
    зачем все это нужно ? затем что я не понимаю зачем начинать игру изначально выбирая специализацию снайпер или штурмовик ....
    с со странным набором оружия которое потом придется поменять ...
    я не понимаю зачем начинать игру заранее выбирая группировку почему это не сделать в процессе игры .
    я не понимаю зачем начинать игру со странной кликухой которая ну никак не может понравится , кличку обычно получают за поступки или за черты внешности .
    все должно зависеть от гг от его действий . за поступки гг в той или иной группировки он и получает кличку .
    Сюжет думаю здесь будет лишним , а вот ситуации интересные были бы весьма кстати .если кому интересно можно пообщаться в личке , если кто-то решит сделать нечто подобное
    прошу дать поиграть ))))).ЗОНА ЭТО ПРИКЛЮЧЕНИЕ .
      Злобная реклама
    Воскресенье, 21.02.2016, 12:21
    Статус:
    Сообщений: 666
    Регистрация: 11.08.2013
    Российская Федерация  denis2000
    Воскресенье, 21.02.2016, 16:27 | Сообщение # 9884
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата Sikorskyi ()
    Закрыл. Не получается

    А вы не заметили, что причина вылета уже другая? Не найдет тег MGame_WhereBall:background в файле ui\ui_mini_games.xml.
      Злобная реклама
    Воскресенье, 21.02.2016, 16:27
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  [Qvt]
    Воскресенье, 21.02.2016, 16:41 | Сообщение # 9885
    Статус:
    Отмычка:
    Сообщений: 154
    Награды: 3
    Регистрация: 19.02.2016

    _S_k_i_F_, может лучше расскажешь, что требуется в целом?
      Злобная реклама
    Воскресенье, 21.02.2016, 16:41
    Статус:
    Сообщений: 666
    Регистрация: 19.02.2016
    Поиск: