Случайная подборка модов
Радиоактивное мясо. Схватка
3.0
SZM CoP 0.2
3.9
Clear Sky Complete
4.1
Shadows Addon 0.8
4.1
The Second Sun
2.9
R.M.A mod 1.1.5
4.2
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: 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
    Российская Федерация  Asfagan
    Пятница, 24.08.2018, 08:52 | Сообщение # 2041
    Статус:
    Бывалый:
    Сообщений: 929
    Награды: 12
    Регистрация: 01.02.2014

    Policai, Hex редактор вот ссылка:

    Добавлено (24.08.2018, 08:56)
    ---------------------------------------------
    Policai,

    Цитата Policai ()
    потом в конфигах заплутаешься с новым названием. много путаницы....

    достаточно поменять одну букву.
    Сообщение отредактировал Asfagan - Пятница, 24.08.2018, 08:54
      Злобная реклама
    Пятница, 24.08.2018, 08:52
    Статус:
    Сообщений: 666
    Регистрация: 01.02.2014
    Российская Федерация  Policai
    Пятница, 24.08.2018, 09:01 | Сообщение # 2042
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Цитата Asfagan ()
    достаточно поменять одну букву.


    Да это понятно, но там есть то что нельзя менять, то есть анимации, звуки, худ, у меня хоть и 4 глаза но с одной буквой я уверен, заплутаюсь... biggrin biggrin Квестовые предметы я в актор эдиторе делал, экспортировал оттуда, но там нет таких больших анимаций как на стволах, костей меньше, они без проблем в игре работают..
      Злобная реклама
    Пятница, 24.08.2018, 09:01
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  Zmey9l_63
    Пятница, 24.08.2018, 09:33 | Сообщение # 2043
    Статус:
    Новичок:
    Сообщений: 369
    Награды: 2
    Регистрация: 14.02.2017

    Так не меняй то что не нужно менять. Меняй название текстуры.
    Частенько прокатывает даже замена через Нотепад++ одной буквы. Допустим i на l.
    А вообще есть прога типа просмотрщика огф, но там можно менять название текстур, шейдеров и материалов.
    Покапаться?
    Во -OGF Data Changer 2.4
    Сообщение отредактировал Zmey9l_63 - Пятница, 24.08.2018, 09:37
      Злобная реклама
    Пятница, 24.08.2018, 09:33
    Статус:
    Сообщений: 666
    Регистрация: 14.02.2017
    Российская Федерация  nasar75
    Пятница, 24.08.2018, 09:36 | Сообщение # 2044
    Статус:
    Бывалый:
    Сообщений: 870
    Награды: 10
    Регистрация: 22.07.2013

    Policai, замена текстур в моделе "на коленке":
    OGF Data Changer 1.5 https://www.amk-team.ru/forum....1117900
    OGF Data Changer 2.4 https://yadi.sk/d/yhTRMqOH3Wxvz5/OGF%20DC
      Злобная реклама
    Пятница, 24.08.2018, 09:36
    Статус:
    Сообщений: 666
    Регистрация: 22.07.2013
    Российская Федерация  Policai
    Пятница, 24.08.2018, 10:03 | Сообщение # 2045
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Спасибо всем. Но наверно не возьмусь, ((( покопался в конфигах. много позиций незнакомых мне никак и в конфиге ствола и в конфигах абгрейда, много мелких нюансов. Боюсь больше гемороя добавлю чем пользы... Доделаю что смогу в моде и подарю кому нибудь, пусть доделывают... Вчера отдал на тестирование другу собраную игрушку, тест на предмет вылетов, багов, нестыковок, баланса сложности.... Без сюжета, чисто тест, расписал текстовый документ ему как будет в описании в сюжете в квестах поиск нужного, пусть проверяет и ищет.
    Наверно последний вопрос по конфигам. Файлы торговли всем сделал как надо у барменов только еда у медиков мед препараты и так далее, но пока без поршней, то есть сразу все варианты торговли открыты. Нужно настроить варианты торговли от прогресса в игре.
    Пример оригинала Зов припяти.
    buy_supplies = {+jup_a9_tech_way_info =counter_greater(jup_a6_actor_help_freedom:3) =wealthy_functor}sci_supplies_freedom_wealthy_tier_2,............................

    Мне нужно вместо выделенного поршня, или условия, незнаю как он там правильно обзывается поставить свои, по принципу:
    у меня есть 12 предметов уникальных по сюжету, разбросанных по всем локам, мне нужно разделить варианты торговли на 4 этапа. Найдены 3 любых предмета из 12, открывается первый добавочный пункт в торговле, найдены 6 открывается второй... и так далее...
    Как это правильно реализовать?
    Сообщение отредактировал Policai - Пятница, 24.08.2018, 10:04
      Злобная реклама
    Пятница, 24.08.2018, 10:03
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  Overfirst
    Пятница, 24.08.2018, 10:14 | Сообщение # 2046
    Статус:
    Бывалый:
    Сообщений: 1081
    Награды: 19
    Регистрация: 11.06.2015

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

    Это первое, что пришло в голову. Можно проще.
      Злобная реклама
    Пятница, 24.08.2018, 10:14
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  denis2000
    Пятница, 24.08.2018, 10:18 | Сообщение # 2047
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата stalker00 ()
    Нужно в gamedata\configs\creatures в файл monsters.ltx выставить меньшее количество часов до исчезновения тел.К примеру,в ванили стоит 65535 часов,поменять значение на скажем 12 часов.Но насколько этот способ эффективен?.И не сломает ли он игру( в смысле,не будут глючить квесты,не будет ли проблем с переходами на другие локации ),ну и так далее?.

    Да изменение параметра stay_after_death_time_interval работает, но удаление происходит когда игрок переходит с другой локации на локу с трупом у которого истек срок годности. У вас есть квестовые трупы мутантов?

    По сталкерам работает скрипт release_body_manager.script, ключевой параметр self.body_max_count = 15 (максимальное количество трупов) и IDLE_AFTER_DEATH = 40000 (время после смерти в течении которого труп не удаляется). Этот же скрипт иногда заставляют убирать и тела мутантов, прописав в bind_monster.script в колбек на смерть строку:
    Код
    release_body_manager.get_release_body_manager():moving_dead_body(self.object)
    Сообщение отредактировал denis2000 - Пятница, 24.08.2018, 10:28
      Злобная реклама
    Пятница, 24.08.2018, 10:18
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Policai
    Пятница, 24.08.2018, 10:23 | Сообщение # 2048
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Цитата Overfirst ()
    Можно при помощи счётчика. В коллбеке на взятие предмета проверять взятый предмет и добавлять единицу к счётчику. В зависимости от значения счётчика выдавать инфопоршни для регулирования твоих этапов. Если ничего не понятно, покажу.


    Если не сложно, как это будет выглядеть визуально? предметы прописаны везде где нужно в игре и разложены, всё работает отлично,
    имеют имена от dcb_01_префикс до dcb_12_ префикс
      Злобная реклама
    Пятница, 24.08.2018, 10:23
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  Overfirst
    Пятница, 24.08.2018, 10:30 | Сообщение # 2049
    Статус:
    Бывалый:
    Сообщений: 1081
    Награды: 19
    Регистрация: 11.06.2015

    Policai, так. Сделай им такие имена: dcb_item_1 - dcb_item_12. Мне так удобнее будет сделать тебе твою хотелку.
      Злобная реклама
    Пятница, 24.08.2018, 10:30
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  Policai
    Пятница, 24.08.2018, 10:36 | Сообщение # 2050
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Overfirst,

    Как удобней так и делай, а имена я подправлю как надо. сейчас у меня dcb_01_doc - dcb_12_doc
    Сообщение отредактировал Policai - Пятница, 24.08.2018, 10:38
      Злобная реклама
    Пятница, 24.08.2018, 10:36
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  Overfirst
    Пятница, 24.08.2018, 10:46 | Сообщение # 2051
    Статус:
    Бывалый:
    Сообщений: 1081
    Награды: 19
    Регистрация: 11.06.2015

    Ну, что-то такое:
    Код
    function actor_has_items_different_equal(actor, npc, p)
         if db.actor then
              local item_section = p[1]
              local need_count = tonumber(p[2])
              local has_count = 0

              local function calc(temp, item)
                   if string.find(item:section(), item_section) ~= nil then
                        has_count = has_count + 1
                   end
              end
              
              db.actor:iterate_inventory(calc, db.actor)
              
              return has_count >= need_count
         end
         return false
    end

    Функция проверяет у актора указанное количество предметов, у которых начало названия секции совпадает с переданной строкой.

    Проще говоря:
    Код
    buy_supplies = {=actor_has_items_different_equal(dcb_item:3) !actor_has_items_different_equal(dcb_item:6)} supplies_1, {=actor_has_items_different_equal(dcb_item:6)} supplies_2

    Можешь назвать предметы dcb_doc_1 - dcb_doc_12.

    Ты поэкспериментируй. Я даже немного засомневался, что постоянно будет итерироваться инвентарь из-за такой вот проверки. Если не прокатит, не будет нормально работать, сделаем через счётчик.
      Злобная реклама
    Пятница, 24.08.2018, 10:46
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  Policai
    Пятница, 24.08.2018, 11:40 | Сообщение # 2052
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Цитата Overfirst ()
    Можешь назвать предметы dcb_doc_1 - dcb_doc_12.


    Overfirst,

    Играет роль dcb_doc_1 или dcb_1_doc..??? Просто для проверки в конфигах то исправить без проблем, а на локах у меня уже под именами разложены dcb_1_doc - dcb_12_doc, не проблема открыть в сдк локи и переложить, вопрос стоит это делать или нет, или всё таки цифра должна быть в конце обязательно?
      Злобная реклама
    Пятница, 24.08.2018, 11:40
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  Overfirst
    Пятница, 24.08.2018, 12:11 | Сообщение # 2053
    Статус:
    Бывалый:
    Сообщений: 1081
    Награды: 19
    Регистрация: 11.06.2015

    Цитата Policai ()
    Играет роль dcb_doc_1 или dcb_1_doc..?

    Да.
      Злобная реклама
    Пятница, 24.08.2018, 12:11
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  Policai
    Пятница, 24.08.2018, 12:27 | Сообщение # 2054
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Не помогло

    [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 : ...d city breakthrough\gamedata\scripts\xr_logic.script:612: attempt to call field '?' (a nil value)

    Изменил
    название моделей на dcb_doc_01 - 12
    названия в файлах на dcb_doc_01 - 12
    \configs\misc\quest_items.ltx
    \configs\text\rus\st_items_quest.xml
    \scripts\spawn_quest_items.script
    \scripts\ui_si.script

    и в файле торговли
    buy_supplies = {=actor_has_items_different_equal(dcb_item:8)} supplies_tier_4, {=actor_has_items_different_equal(dcb_item:6)} supplies_tier_3, {=actor_has_items_different_equal(dcb_item:3)}supplies_tier_2, supplies_start

    Убираю эти поршни вылета нет.

    Добавлено (24.08.2018, 12:36)
    ---------------------------------------------
    Незнаю играет ли это роль, на локах ещё не менял, так как испытываю всё на отдельной локе на кордоне с отдельным олл спавном, а не на общем олл спавне для игры. На кордоне нет этих предметов.

    Добавлено (24.08.2018, 12:50)
    ---------------------------------------------
    Нет, не играет, закинул все предметы на локу, пересобрал спавн, вылет не поменялся.... что то не так с поршнями..

    или....

    Цитата
    function actor_has_items_different_equal(actor, npc, p)
    if db.actor then
    local item_section = p[1]
    local need_count = tonumber(p[2])
    local has_count = 0

    local function calc(temp, item)
    if string.find(item:section(), item_section) ~= nil then
    has_count = has_count + 1
    end
    end

    db.actor:iterate_inventory(calc, db.actor)

    return has_count == need_count
    end
    return false
    end


    это мне нужно вносить в скрипты или уже там есть???
      Злобная реклама
    Пятница, 24.08.2018, 12:27
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  makdm
    Пятница, 24.08.2018, 13:12 | Сообщение # 2055
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    Policai, вот так попробуй:

    Пишешь в xr_conditions.script фунукцию:



    Условие в торговлю:

    buy_supplies = {=actor_has_need_docs(12)} supplies_tier_4, {=actor_has_need_docs(8)} supplies_tier_3, {=actor_has_need_docs(4)}supplies_tier_2, supplies_start
      Злобная реклама
    Пятница, 24.08.2018, 13:12
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Поиск: