Случайная подборка модов
Мод Змеелов v.2.17 Final
3.8
Равновесие 2.0
3.6
Priboi story
4.1
Хроники Кайдана. Вторая серия
4.0
AVS "Закон Меченого" 2 части
3.4
Контракт на плохую жизнь: Эффект бабочки
3.7
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: FanG, Аdmin, FantomICW, Overfirst  
[CoP] Модострой: вопросница
Российская Федерация  Overfirst
Воскресенье, 31.12.2017, 13:17 | Сообщение # 1
Статус:
Бывалый:
Сообщений: 1081
Награды: 19
Регистрация: 11.06.2015

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

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

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


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

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

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

  • Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
  •   Злобная реклама
    Воскресенье, 31.12.2017, 13:17
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  denis2000
    Пятница, 07.02.2020, 11:46 | Сообщение # 6091
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    sergej5500,




    Policai, Может если это для теста, лучше будет сделать скрипт периодически сохраняющий игру? Или обязательно нужно делать сохранения перед переходом?
    Сообщение отредактировал denis2000 - Пятница, 07.02.2020, 11:52
      Злобная реклама
    Пятница, 07.02.2020, 11:46
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Policai
    Пятница, 07.02.2020, 12:34 | Сообщение # 6092
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    denis2000,

    Да хотелось бы сделать на постоянку, хуже точно не будет от этого... в сдк то без проблем любая работа, а вот писанина кроме него в конфигах и скриптах для меня напрягающая..))) просто пока делать нечего больше, кроме доп квестов, а чтоб их делать нужно подготовить всё для тестирования не напрягающего, решил заняться автосохранениями... я прошёл через это когда делал первую версию, за 5 квестов я вписал в мозг наглухо на какой локации и какая травинка в какую сторону шевелиться..)))) проходя одно и тоже по 200 раз...
    С 1-2 шаговыми квестами одиночными без проблем. собрал в сдк отдельный спавн для локи, и доводи до ума, я так и делал, а вот линейки затрагивающие 4-5 локаций и имеющие хотябы 5-6 ходов это для меня смерть..((( как пример, я угробил квест длинный на Лиманск, чтоб его получить нужны 3 локации, лиманск янтарь и бар, я дошёл до него, но мне его не выдают, тупо не выходит диалог. хотя квест работал без проблем, и я тупо незнаю в каком месте я похерил линейку, а так как знаю весь мод наизусть, за 2 года то, просто тупо забывал сохраняться. и нет возможности откатиться и проверять всю цепочку изначально. там же была проблема не критичная и раньше, закрытие квеста не срабатывало, забирал предмет. но сообщение на следующий шаг не срабатывало, отдать предмет заказчику, НО, оно срабатывало когда уходил с локации , после перехода... Это я и пытался исправить. в итоге похерил всю линию...((( А что там и как у меня сделано я уже тупо не помню..
    Сообщение отредактировал Policai - Пятница, 07.02.2020, 12:36
      Злобная реклама
    Пятница, 07.02.2020, 12:34
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  Nesquik
    Пятница, 07.02.2020, 14:16 | Сообщение # 6093
    Статус:
    Отмычка:
    Сообщений: 112
    Награды: 1
    Регистрация: 29.10.2019

    Добрый день,кто знает,можно ли перенести худ(полоса здоровья) из модификации "Ветер Времени" в свой мод?
      Злобная реклама
    Пятница, 07.02.2020, 14:16
    Статус:
    Сообщений: 666
    Регистрация: 29.10.2019
    Российская Федерация  Hozar_2002
    Пятница, 07.02.2020, 14:46 | Сообщение # 6094
    Статус:
    Новичок:
    Сообщений: 347
    Награды: 7
    Регистрация: 22.04.2017

    Policai, Здравствуйте, вообщем - то попробуйте в файле bind_stalker.script заменить строчку get_console():execute("dump_infos") (если есть, если что то просто ищите строчку if not self.loaded then и после нее втыкайте следующее) на:
    Код
        if self.last_level_name and self.last_level_name ~= level.name() then
        local p = {}
        p[1] = tostring(level.name())
        xr_effects.scenario_autosave(db.actor,nil,p)
        end
        self.last_level_name = level.name()
    Сам я еще не тестировал код, ибо нету двух лок, но в теории работать должно, поправьте если не работает.
    Сообщение отредактировал Hozar_2002 - Пятница, 07.02.2020, 14:46
      Злобная реклама
    Пятница, 07.02.2020, 14:46
    Статус:
    Сообщений: 666
    Регистрация: 22.04.2017
    Российская Федерация  Крим
    Пятница, 07.02.2020, 15:05 | Сообщение # 6095
    Статус:
    Новичок:
    Сообщений: 231
    Награды: 1
    Регистрация: 21.04.2019

    Здравствуйте. Прописал в space_restrictore функцию воспроизведения звука.
    Проверка в игре показала, что звук не воспроизводится. Хотел разобраться сам, но толком нормальной инструкции по этому. Подскажите, почему звук не работает?
      Злобная реклама
    Пятница, 07.02.2020, 15:05
    Статус:
    Сообщений: 666
    Регистрация: 21.04.2019
    Российская Федерация  Policai
    Пятница, 07.02.2020, 15:15 | Сообщение # 6096
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Hozar_2002,

    Есть такая строчка, закоментил и вместо неё дописал... работает , но маленько не то Антон. Во первых создаётся 2 сохранения, autosave и второе имя локации куда переходишь... И они оба перезаписываются.
    Нахожусь в тёмной долине, перехожу в Тёмную лощину, заменяется имя - autosave с новым временем и создаётся имя - Тёмная лощина... перехожу обратно в долину, опять перезаписывается имя - autosave и появляется имя - Тёмная долина, опять перехожу в лощину, она перезаписывается, тоесть удаляется предыдущая версия сохранения и появляется новая с новым временем... тут походу никак без спейса..((
      Злобная реклама
    Пятница, 07.02.2020, 15:15
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  Hozar_2002
    Пятница, 07.02.2020, 15:33 | Сообщение # 6097
    Статус:
    Новичок:
    Сообщений: 347
    Награды: 7
    Регистрация: 22.04.2017

    Policai, Тогда попробуйте заменить ту бурду что выше предложил на это
    И в конц файла добавьте
    Код
    function AddTextDigit(str, dig)
        if (dig > 9) then
      str = str .. dig
        else
      str = str .. "0" .. dig
        end
        return str
    end
      Злобная реклама
    Пятница, 07.02.2020, 15:33
    Статус:
    Сообщений: 666
    Регистрация: 22.04.2017
    Российская Федерация  Lektorrr
    Пятница, 07.02.2020, 16:01 | Сообщение # 6098
    Статус:
    Новичок:
    Сообщений: 266
    Награды: 5
    Регистрация: 09.01.2013

    Пытаюсь тут сделать новую схему для НПС. Хочу сделать так, чтобы она срабатывала в том случае, если рядом с НПС находится какой-либо объект или мутант. В моде "Связь Времён" подсмотрел следующий код, проверяющий наличие рядом с неписем артефакта:



    Однако чуть позже меня предупредили, что парсинг всех 65535 объектов нагружает игру. Так ли это на самом деле? Есть ли альтернативные пути создания такой проверки?
    Сообщение отредактировал Lektorrr - Пятница, 07.02.2020, 16:03
      Злобная реклама
    Пятница, 07.02.2020, 16:01
    Статус:
    Сообщений: 666
    Регистрация: 09.01.2013
    Российская Федерация  denis2000
    Пятница, 07.02.2020, 20:47 | Сообщение # 6099
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Lektorrr,
    1. В данном коде нет проверки всего диапазона идентификаторов объектов, в этом коде объект передается в функцию из другой функции этого же скрипта, а точнее evaluator_look_for_art:evaluate проверяются объекты находившиеся в поле зрения НПС и о которых он еще "помнит":
    Код
    for o in self.object:memory_visible_objects() do
       if self:check_item( o ) then
        return true
       end
      end

    Как видно использован движковый метод memory_visible_objects, возвращающий список таких объектов.

    2. Да если заниматься проверкой всего диапазона идентификаторов объектов, тем более постоянно, то движек только этот и будет делать - нагрузка нереальная.
    Сообщение отредактировал denis2000 - Пятница, 07.02.2020, 21:06
      Злобная реклама
    Пятница, 07.02.2020, 20:47
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Ferveks
    Пятница, 07.02.2020, 20:54 | Сообщение # 6100
    Игра Душ: Начало
    Статус:
    Бывалый:
    Сообщений: 646
    Награды: 5
    Регистрация: 29.06.2017

    Lektorrr, можно один раз при старте отобрать объекты, которые следует проверять в update - это нормальная нагрузка, без перегруза
      Злобная реклама
    Пятница, 07.02.2020, 20:54
    Статус:
    Сообщений: 666
    Регистрация: 29.06.2017
    Российская Федерация  makdm
    Суббота, 08.02.2020, 01:32 | Сообщение # 6101
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    Цитата Ferveks ()
    можно один раз при старте отобрать объекты, которые следует проверять в update

    В оригинале разрабами специально для таких целей предусмотрен файл DB.script.
    Нужно внести в него свои необходимые таблицы и помещать в них ссылку на объекты при переходе объекта в онлайн. Тогда у вас всегда будет доступ как к серверной так и к клиентской части объекта.
    Сами ссылки на объекты помещать в таблицы из биндеров этих объектов. И удалять их оттуда же.
    В различных ситуациях ( а они в основном связаны с онлайновыми объектами, так как видеть игроку что творится за кадром не интересно ) достаточно будет перебрать нужную таблицу объектов.
    Никаких тормозов при этом в игре не будет.
    Например, когда я писал скрипт атаки турели, то в логику турели, можно было вписать в качестве цели не только actor или all, но и monster и stalker. В этом случае объекты брались из соответствующих таблиц из файла db.script и турель точно "валила" онлайновые объекты. Никаких переборов 65535 объектов, чтобы выбрать сталкеров или монстров, не было.
      Злобная реклама
    Суббота, 08.02.2020, 01:32
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Российская Федерация  Paradox27kms
    Суббота, 08.02.2020, 03:32 | Сообщение # 6102
    Статус:
    Новичок:
    Сообщений: 312
    Награды: 2
    Регистрация: 11.02.2019

    Nesquik, Разумеется... ведь это логично.
    Сообщение отредактировал Paradox27kms - Суббота, 08.02.2020, 03:45
      Злобная реклама
    Суббота, 08.02.2020, 03:32
    Статус:
    Сообщений: 666
    Регистрация: 11.02.2019
    Российская Федерация  Lektorrr
    Суббота, 08.02.2020, 14:41 | Сообщение # 6103
    Статус:
    Новичок:
    Сообщений: 266
    Награды: 5
    Регистрация: 09.01.2013

    Если обозначить смарт как укрытие, то будут ли НПС задействовать в нём уже имеющиеся работы и анимпоинты во время выброса, или нужно расставлять отдельные для этого пути (_surge_1_walk...)?
      Злобная реклама
    Суббота, 08.02.2020, 14:41
    Статус:
    Сообщений: 666
    Регистрация: 09.01.2013
    Российская Федерация  Policai
    Суббота, 08.02.2020, 15:25 | Сообщение # 6104
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Lektorrr,

    Расставлять отдельные... _surge_1_walk и _surge_1_look
    Сообщение отредактировал Policai - Суббота, 08.02.2020, 15:27
      Злобная реклама
    Суббота, 08.02.2020, 15:25
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  yobakun
    Суббота, 08.02.2020, 15:29 | Сообщение # 6105
    Статус:
    Новичок:
    Сообщений: 270
    Награды: 5
    Регистрация: 30.07.2016

    Как узнать кого в данный момент лутает ГГ? Нашел только проверку на открытое окно без указания цели.
    Код

    function dead_body_search_wnd_opened()
        --printf("---:>DeadBodySearch opened")
        dead_body_searching = true
    end
      Злобная реклама
    Суббота, 08.02.2020, 15:29
    Статус:
    Сообщений: 666
    Регистрация: 30.07.2016
    Поиск: