Случайная подборка модов
Двойники - Разлом Времени
3.5
Lost World Requital
3.9
Lost World 3.0
3.9
Игра Душ: Эксельсиор
4.4
Shoker Weapon Mod 2.1
4.1
STALKER: [O.F.F.L.I.F.E.]
4.1
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  А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
    Беларусь  UX-3000
    Воскресенье, 02.03.2014, 00:25 | Сообщение # 1981
    Статус:
    Бывалый:
    Сообщений: 623
    Награды: 5
    Регистрация: 07.06.2013

    Нашёл ошибку - там надо было написать this.функция, но вылет всё-равно есть:

    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 : .... - Зов Припяти\gamedata\scripts\bind_stalker.script:209: attempt to index global 'aa_art_rad' (a nil value)


    stack trace:

    Добавлено (02.03.2014, 00:25)
    ---------------------------------------------
    Хе, там ещё одна ошибка была - спешил побыстрее сделать. Ну спасибо.

    Карпов, я посмотрю конфиги, но быстро не обещаю, что найду.

      Злобная реклама
    Воскресенье, 02.03.2014, 00:25
    Статус:
    Сообщений: 666
    Регистрация: 07.06.2013
    Украина  [Karpov_SK]
    Воскресенье, 02.03.2014, 00:27 | Сообщение # 1982
    Exclusion Zone Mod
    Статус:
    Бывалый:
    Сообщений: 600
    Награды: 12
    Регистрация: 26.08.2013

    UX-3000, Я не спешу, спасибо мил человек smile
      Злобная реклама
    Воскресенье, 02.03.2014, 00:27
    Статус:
    Сообщений: 666
    Регистрация: 26.08.2013
    Беларусь  UX-3000
    Воскресенье, 02.03.2014, 00:32 | Сообщение # 1983
    Статус:
    Бывалый:
    Сообщений: 623
    Награды: 5
    Регистрация: 07.06.2013

    Игра запустилась, но при взятии антиарта вылет:

    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 : ....Р. - Зов Припяти\gamedata\scripts\aa_art_rad.script:26: attempt to call global 'play_snd_at_actor' (a nil value)

    stack trace:

    Скорее всего, дело в ..... ( в Послушнике был play_snd_at_actor([[actor\pain_5]]), у нас был звук счётчика гейгера (привязанный к самому аппарату??), не подумал - поставил play_snd_at_actor([[device\pda\pda_alarm]]) , актор же не может пищать))) Да, всё одновременно учитывать сложно...
    Сообщение отредактировал UX-3000 - Воскресенье, 02.03.2014, 00:38
      Злобная реклама
    Воскресенье, 02.03.2014, 00:32
    Статус:
    Сообщений: 666
    Регистрация: 07.06.2013
    Украина  FantomICW
    Воскресенье, 02.03.2014, 00:52 | Сообщение # 1984
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    UX-3000, а у вас в _g.script есть функция play_snd_at_actor?
      Злобная реклама
    Воскресенье, 02.03.2014, 00:52
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Беларусь  UX-3000
    Воскресенье, 02.03.2014, 01:15 | Сообщение # 1985
    Статус:
    Бывалый:
    Сообщений: 623
    Награды: 5
    Регистрация: 07.06.2013

    FantomICW.... , получилось, сейчас дам скрины:


    Нет, я заменил нашими (звуки счётчика гейгера, но теперь получается, что актор получает хит при подъёме арта и сообщение о его вреде, текст выходит только один раз на экран. Это есть хорошо - получился расширенный гибрид скрипта из Послушника и АА, но самой радиации в рюкзаке (накопления) теперь нет - она же раньше была завязана на нахождении антиартов в рюкзаке (в нашей старой версии скрипта). Есть идея сделать в разных скриптах - в основном - оставить всё как есть, но для общего списка артефактов и пустышек (на подбор), восстановить старый скрипт (частично - на нахождение в рюкзаке) и выделить его только для антиартефактов. Тогда будет учитываться и подбор артов (удар для всех) и нахождение в рюкзаке (только для вредных). Как думаете - не будет пересечения скриптов друг с другом? Нужно поэкспериментировать, но я уже всё - выпадаю в осадок. Завтра посмотрю погоду и скрипты переделаю как надо.

    Добавлено (02.03.2014, 01:15)
    ---------------------------------------------
    Ещё бы к этому ко всему бы сделать контейнеры для артефактов изолирующие (для переноски - я пока ограничился ящиками для скидывания вреднятины, но неплохо было бы и им сделать скрипт вроде скрипта уборщика трупов, но для артефактов и скрипт старения оных - положил в контейнер и ага через время......). Даже знаю где эта идея лежит нереализованная - можно переделать скрипты Клондайк-мода на ЗП, чтобы артефакты были динамические, со своим временем "жизни"...., но это уже хардкор....

    Сообщение отредактировал UX-3000 - Воскресенье, 02.03.2014, 01:11
      Злобная реклама
    Воскресенье, 02.03.2014, 01:15
    Статус:
    Сообщений: 666
    Регистрация: 07.06.2013
    Украина  FantomICW
    Воскресенье, 02.03.2014, 01:29 | Сообщение # 1986
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    UX-3000, думаю, можно поставить как-то так:
    Код
    if (obj:section()=="артефакт"...and db.actor:object("предмет") then
      Злобная реклама
    Воскресенье, 02.03.2014, 01:29
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Российская Федерация  saxar
    Воскресенье, 02.03.2014, 08:53 | Сообщение # 1987
    Статус:
    Бывалый:
    Сообщений: 801
    Награды: 2
    Регистрация: 17.10.2012

    Короче ,пойти я его заставил на первую точку ,а на вторую он просто смотрит.Развернулся и смотрит в её направлении.Стоит как вкопанный.Почему?
    И ещё как через логику кнопки выдать ГГ какой-нибудь предмет?Ну в смысле он нажал кнопку и тут у его в рюкзаке появилась ну тушенка например.

    Добавлено (02.03.2014, 08:53)
    ---------------------------------------------
    Ах да ,платформа ЗП.

      Злобная реклама
    Воскресенье, 02.03.2014, 08:53
    Статус:
    Сообщений: 666
    Регистрация: 17.10.2012
    Казахстан  riper
    Воскресенье, 02.03.2014, 13:42 | Сообщение # 1988
    Статус:
    Бывалый:
    Сообщений: 612
    Награды: 6
    Регистрация: 11.08.2013

    скажите пожалуйста , звуки окружения тоже нужно регистрировать если да то где ? или достаточно sound_theme script .
      Злобная реклама
    Воскресенье, 02.03.2014, 13:42
    Статус:
    Сообщений: 666
    Регистрация: 11.08.2013
    Российская Федерация  Asfagan
    Воскресенье, 02.03.2014, 14:53 | Сообщение # 1989
    Статус:
    Бывалый:
    Сообщений: 929
    Награды: 12
    Регистрация: 01.02.2014

    FantomICW, Как прописать функцию, чтобы ветка диалог появлялся тогда и только тогда, когда у Гг в инвентаре имеется какой-либо предмет необходимый при взаимной передачи предмета?
      Злобная реклама
    Воскресенье, 02.03.2014, 14:53
    Статус:
    Сообщений: 666
    Регистрация: 01.02.2014
    Украина  FantomICW
    Воскресенье, 02.03.2014, 14:55 | Сообщение # 1990
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Asfagan, в диалог добавить precondition, в скрипт диалога - проверку:
    Код
    function название_функции(first_speaker, second_speaker)
      return db.actor:object("предмет") ~= nil
    end
      Злобная реклама
    Воскресенье, 02.03.2014, 14:55
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Российская Федерация  Asfagan
    Воскресенье, 02.03.2014, 15:44 | Сообщение # 1991
    Статус:
    Бывалый:
    Сообщений: 929
    Награды: 12
    Регистрация: 01.02.2014

    FantomICW, че то не так, не получается. вот сам диалог:
    Код
    <dialog id="hello_dialog_my_stalker">   
              <dont_has_info>hello_dialog_my_stalker</dont_has_info>      
              <phrase_list>
                  <phrase id="0">
                      <text>О, даров, не подскажешь, где найти гаусс-пушку?</text>
                      <next>1</next>
                  </phrase>     
                  <phrase id="1">   
                      <text>Тебе повезло парень. У меня как раз завалялась... Только вот отдам я её за гранату ф-1. Согласен?</text>
                      <next>2</next>
                      <next>22</next>
                  </phrase>   
                  <phrase id="2">   
                      <text>А то! Давай меняться...</text>
                      <action>dialogs_zaton.zat_wpn_transfer_gauss</action>
                      <next>3</next>
                  </phrase>
                  <phrase id="22">   
                      <text>Нет..не пойдет.</text>
                      <next>33</next>
                  </phrase>
                  <phrase id="3">
                      <text>Вот и славно...</text>
                      <precondition>dialogs_zaton.zat_wpn_transfer_gauss</precondition>
                      <give_info>hello_dialog_my_stalker</give_info>
                      <next>4</next>
                  </phrase>
                  <phrase id="33">   
                      <text>Ну и пошел отсюда...жадюга!</text>
                      <give_info>hello_dialog_my_stalker</give_info>
                  </phrase>
                  <phrase id="4">
                      <text>Ну мин кайтым.</text>
                      <next>5</next>
                  </phrase>
                  <phrase id="5">
                      <text>Вот это круто!</text>
                      <give_info>hello_dialog_my_stalker</give_info>
                  </phrase>
              </phrase_list>
          </dialog>

    а вот сам скрипт:
    Код
    -- Zaton Gauss

    function relocate_item_section_from_actor(first_speaker, second_speaker)   
       return db.actor:object("grenade_f1") ~= nil   
    end

    function zat_wpn_transfer_gauss(first_speaker, second_speaker)
       dialogs.relocate_item_section_from_actor(first_speaker, second_speaker, "grenade_f1")
       dialogs.relocate_item_section_to_actor(first_speaker, second_speaker, "wpn_gauss")
       dialogs.relocate_item_section_to_actor(first_speaker, second_speaker, "ammo_gauss")
    end
    Шо не так?

    Ошибка нашлась! Просто прописал не ту функцию biggrin а теперь все работает прекрасно yahoo
    Сообщение отредактировал Asfagan - Воскресенье, 02.03.2014, 16:23
      Злобная реклама
    Воскресенье, 02.03.2014, 15:44
    Статус:
    Сообщений: 666
    Регистрация: 01.02.2014
    Российская Федерация  saxar
    Воскресенье, 02.03.2014, 16:00 | Сообщение # 1992
    Статус:
    Бывалый:
    Сообщений: 801
    Награды: 2
    Регистрация: 17.10.2012

    Expression : error handler is invoked!
    Function : invalid_parameter_handler
    File : D:\prog_repository\sources\trunk\xrCore\xrDebugNew.cpp
    Line : 815
    Description :
    D:\prog_repository\sources\trunk\xrCore\xrDebugNew.c

    С чем это может быть связано?

    Добавлено (02.03.2014, 15:57)
    ---------------------------------------------
    Платформа ЗП.

    Добавлено (02.03.2014, 16:00)
    ---------------------------------------------
    Вылета не происходит если я ставлю все на низкие настройки.Происходит это при подключении к серверу.

      Злобная реклама
    Воскресенье, 02.03.2014, 16:00
    Статус:
    Сообщений: 666
    Регистрация: 17.10.2012
    Япония  HellRatz
    Воскресенье, 02.03.2014, 16:17 | Сообщение # 1993
    Оставшийся умирать
    Статус:
    Опытный:
    Сообщений: 1416
    Награды: 12
    Регистрация: 19.02.2011

    saxar, вот я зашел в google, скопировал нижнюю строчку лога, и сразу все нашлось. Когда же научитесь поисковиком пользоваться? wink

    Цитата
    Данный вылет бывает когда у какого либо из объектов установлено некорректное значение (возможно) Или же если данный вылет происходит при вызове конструктора класса, то проблема в том что в методе __init() класса прописано super().
    Подобный вылет говорит ещё о том, что в игре инициализируется некий объект у которого в параметрах присутствует некорректное значение (например нулевое).
    Лечение:
    Искать в конфигах некорректно прописанную строку. Ошибка очень редка и без раб.сэйва, на котором эта ошибка воспроизводится, устранить ее не представляется возможным.


    Так же эта ошибка обсуждалась тут (Тоже беда с МП), и судя по всему, проблему решили.
    Сообщение отредактировал HellRatz - Воскресенье, 02.03.2014, 16:19
      Злобная реклама
    Воскресенье, 02.03.2014, 16:17
    Статус:
    Сообщений: 666
    Регистрация: 19.02.2011
    Российская Федерация  Asfagan
    Воскресенье, 02.03.2014, 16:26 | Сообщение # 1994
    Статус:
    Бывалый:
    Сообщений: 929
    Награды: 12
    Регистрация: 01.02.2014

    FantomICW, а чтобы диалог повторялся, а не был одноразовым, с теми же условиями наличия предмета, что необходимо прописать или же удалить?
      Злобная реклама
    Воскресенье, 02.03.2014, 16:26
    Статус:
    Сообщений: 666
    Регистрация: 01.02.2014
    Украина  FantomICW
    Воскресенье, 02.03.2014, 16:30 | Сообщение # 1995
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Asfagan,
    1. Ты в precondition вызываешь функцию, в не проверку (не ту функцию, которую надо).
    2. Предполагаю, precondition стоит не там, где надо.
    3. Функция relocate_item_section_from_actor названа весьма нехорошо. Зачем дублировать название стандартной функции диалогов?
      Злобная реклама
    Воскресенье, 02.03.2014, 16:30
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Поиск: