Случайная подборка модов
АльтернативА 1.3.2
3.2
Lost World Condemned
3.5
Absolute Nature 3
4.1
Хроники Зоны: Viam Fata
3.0
Ф.О.Т.О.Г.Р.А.Ф
4.2
Смерти вопреки. В центре чертовщины
4.1
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: 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
    Четверг, 21.05.2020, 13:15 | Сообщение # 6991
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    OP_artovod, AziatkaVictor, Как же вы странно анекдоты рассказываете. Один рассказчик - начало, второй - середину, а мне что концовку самому придумывать? Как же весь анекдот от оного рассказчика услышать? Как в школе учили: вступление—основная часть—заключение: Что хочу сделать, что сделал и что не получается?
    Сообщение отредактировал denis2000 - Четверг, 21.05.2020, 13:21
      Злобная реклама
    Четверг, 21.05.2020, 13:15
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  RoboCat
    Четверг, 21.05.2020, 13:18 | Сообщение # 6992
    Статус:
    Новичок:
    Сообщений: 300
    Награды: 9
    Регистрация: 07.01.2017

    OP_artovod, Создай нескольких NPC в character_desc, но с одинаковым классом в npc_profile
    Сообщение отредактировал RoboCat - Четверг, 21.05.2020, 13:19
      Злобная реклама
    Четверг, 21.05.2020, 13:18
    Статус:
    Сообщений: 666
    Регистрация: 07.01.2017
    Украина  AziatkaVictor
    Четверг, 21.05.2020, 13:21 | Сообщение # 6993
    Статус:
    Опытный:
    Сообщений: 1313
    Награды: 4
    Регистрация: 30.08.2018

    denis2000, ну, как я понял, он хочет сделать НПС с одинаковыми визуалами, но разным снаряжением (у одного АК, у второго ТОЗ). Он пытался сделать на подобии sim_default_группировка, но либо не знает как, либо делает так же как и sim_default_stalker, но оно не работает.
      Злобная реклама
    Четверг, 21.05.2020, 13:21
    Статус:
    Сообщений: 666
    Регистрация: 30.08.2018
    Российская Федерация  Neptun
    Четверг, 21.05.2020, 14:03 | Сообщение # 6994
    Связной
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 9
    Регистрация: 25.03.2012

    Добро. Дайте пример таблицы и счётчика, то есть в таблице прописано 20 доступных объектов, игрок должен хоть раз за игру подержать в руках 15 объектов из этой двадцатки (НЕобязательно, чтобы у игрока одновременно было 15 объектов), соответственно, когда счётчик достигает 15, происходит действие. Написал такую функцию, но она не работает:
    Сообщение отредактировал Neptun - Четверг, 21.05.2020, 14:04
      Злобная реклама
    Четверг, 21.05.2020, 14:03
    Статус:
    Сообщений: 666
    Регистрация: 25.03.2012
    Российская Федерация  denis2000
    Четверг, 21.05.2020, 14:07 | Сообщение # 6995
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Neptun, Если объявление переменной
    Код
    local pda_counter = 0

    в теле функции, то при каждом вызове вы будете ее обнулять. Эту переменную в обязательном порядке нужно сохранять в сейв и восстанавливать при загрузке, иными словами обнулять ее стоит только если из сейва ее не считали.
    Я думаю нет необходимости в проверке через функцию из xr_conditions, можно вписать такое условие:
    Код
    db.actor:object( v ) ~= nil

    Проверка в цикле сама по себе ущербна! Есть же колбек на получение объекта ГГ (actor_binder:on_item_take), вот там и нужно проверять входящие объекты на совпадение с таблицей.
    Лучше всего через Динамическое подключение/отключение функций.
    Сообщение отредактировал denis2000 - Четверг, 21.05.2020, 14:19
      Злобная реклама
    Четверг, 21.05.2020, 14:07
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  OP_artovod
    Четверг, 21.05.2020, 14:31 | Сообщение # 6996
    Статус:
    Отмычка:
    Сообщений: 125
    Награды: 0
    Регистрация: 28.03.2020

    Гаспада с нпс я разобрался и кажется начал разбираться с атмосфером переустановил его проблема не решилась, точнее решилась но частично, на оргиналах зп всё работает но на кардоне и болотах нет и я вот думаю может надо локации куда то в скрипт в писать погодный или нет?
      Злобная реклама
    Четверг, 21.05.2020, 14:31
    Статус:
    Сообщений: 666
    Регистрация: 28.03.2020
    Украина  AziatkaVictor
    Четверг, 21.05.2020, 14:33 | Сообщение # 6997
    Статус:
    Опытный:
    Сообщений: 1313
    Награды: 4
    Регистрация: 30.08.2018

    OP_artovod, да, надо прописать локации в скриптах и конфигах.
      Злобная реклама
    Четверг, 21.05.2020, 14:33
    Статус:
    Сообщений: 666
    Регистрация: 30.08.2018
    Российская Федерация  OP_artovod
    Четверг, 21.05.2020, 14:37 | Сообщение # 6998
    Статус:
    Отмычка:
    Сообщений: 125
    Награды: 0
    Регистрация: 28.03.2020

    AziatkaVictor, нет вы неправильно поняли я имею в виду скрипты атмосфера, потому что как и куда вписывать новые локи я знаю AziatkaVictor,

    Добавлено (21.05.2020, 14:38)
    ---------------------------------------------
    AziatkaVictor, к примеру вот какая то проверка

    function WeatherManager:get_level_name()
    local level_name=level.name()
    if level_name~="jupiter" and level_name~="pripyat" then
    level_name="zaton"
    end
    return level_name
    end

      Злобная реклама
    Четверг, 21.05.2020, 14:37
    Статус:
    Сообщений: 666
    Регистрация: 28.03.2020
    Украина  AziatkaVictor
    Четверг, 21.05.2020, 14:41 | Сообщение # 6999
    Статус:
    Опытный:
    Сообщений: 1313
    Награды: 4
    Регистрация: 30.08.2018

    OP_artovod, нет, это ты не так понял. Я про скрипты и говорю. И конфиг тоже править надо, в котором игрок выбирает погоду на уровнях. Я не про подключение локации к игре, а к атмосфиру.
    Сообщение отредактировал AziatkaVictor - Четверг, 21.05.2020, 14:42
      Злобная реклама
    Четверг, 21.05.2020, 14:41
    Статус:
    Сообщений: 666
    Регистрация: 30.08.2018
    Российская Федерация  Winsor
    Четверг, 21.05.2020, 14:43 | Сообщение # 7000
    Статус:
    Отмычка:
    Сообщений: 163
    Награды: 0
    Регистрация: 22.04.2020

    Цитата RoboCat ()
    У меня такое было, у моего NPC также стояла метка, но на карте так и не было метки, если отойти от NPC на расстояние где он пропадает и вернутся то метка появится

    Значит в начале игры буду телепортировать актёра в конец карты, потом обратно.
      Злобная реклама
    Четверг, 21.05.2020, 14:43
    Статус:
    Сообщений: 666
    Регистрация: 22.04.2020
    Российская Федерация  OP_artovod
    Четверг, 21.05.2020, 14:43 | Сообщение # 7001
    Статус:
    Отмычка:
    Сообщений: 125
    Награды: 0
    Регистрация: 28.03.2020

    AziatkaVictor, ну выбор погоды на уровнях не обязателен а в какие скрипты надо локи вписывать?

    Добавлено (21.05.2020, 14:45)
    ---------------------------------------------
    пока только вот что нашёл
    function CAtmosFear:save(packet)
    set_save_marker(packet, "save", false, "AtmosFear")
    packet:w_stringZ(self.opt_weather_balance_presets)
    packet:w_stringZ(self.opt_weather_length_presets)
    packet:w_stringZ(self.opt_zaton_period_good)
    packet:w_stringZ(self.opt_zaton_period_bad)
    packet:w_u32(self.opt_zaton_period_good_length)
    packet:w_u32(self.opt_zaton_period_bad_length)
    packet:w_stringZ(self.opt_jupiter_period_good)
    packet:w_stringZ(self.opt_jupiter_period_bad)
    packet:w_u32(self.opt_jupiter_period_good_length)
    packet:w_u32(self.opt_jupiter_period_bad_length)
    packet:w_stringZ(self.opt_pripyat_period_good)
    packet:w_stringZ(self.opt_pripyat_period_bad)
    packet:w_u32(self.opt_pripyat_period_good_length)
    packet:w_u32(self.opt_pripyat_period_bad_length)
    packet:w_u32(self.opt_enable_blowout)
    packet:w_u32(self.opt_blowout_freq)
    packet:w_stringZ(self.opt_blowout_fate)
    packet:w_stringZ(self.opt_blowout_warning)
    packet:w_stringZ(self.opt_blowout_task)
    packet:w_u32(self.opt_enable_fallout)
    packet:w_u32(self.opt_fallout_freq)
    packet:w_stringZ(self.opt_fallout_fate)
    packet:w_stringZ(self.opt_fallout_warning)
    packet:w_stringZ(self.opt_fallout_task)
    packet:w_u32(self.opt_enable_psi_storm)
    packet:w_u32(self.opt_psi_storm_freq)
    packet:w_stringZ(self.opt_psi_storm_fate)
    packet:w_stringZ(self.opt_psi_storm_warning)
    packet:w_stringZ(self.opt_psi_storm_task)
    packet:w_stringZ(self.opt_moon_phase)
    packet:w_stringZ(self.opt_night_brightness)
    set_save_marker(packet, "save", true, "AtmosFear")
    end

    function CAtmosFear:load(packet)
    set_save_marker(packet, "load", false, "AtmosFear")
    self.opt_weather_balance_presets = packet:r_stringZ()
    self.opt_weather_length_presets = packet:r_stringZ()
    self.opt_zaton_period_good = packet:r_stringZ()
    self.opt_zaton_period_bad = packet:r_stringZ()
    self.opt_zaton_period_good_length = packet:r_u32()
    self.opt_zaton_period_bad_length = packet:r_u32()
    self.opt_jupiter_period_good = packet:r_stringZ()
    self.opt_jupiter_period_bad = packet:r_stringZ()
    self.opt_jupiter_period_good_length = packet:r_u32()
    self.opt_jupiter_period_bad_length = packet:r_u32()
    self.opt_pripyat_period_good = packet:r_stringZ()
    self.opt_pripyat_period_bad = packet:r_stringZ()
    self.opt_pripyat_period_good_length = packet:r_u32()
    self.opt_pripyat_period_bad_length = packet:r_u32()
    self.opt_enable_blowout = packet:r_u32()
    self.opt_blowout_freq = packet:r_u32()
    self.opt_blowout_fate = packet:r_stringZ()
    self.opt_blowout_warning = packet:r_stringZ()
    self.opt_blowout_task = packet:r_stringZ()
    self.opt_enable_fallout = packet:r_u32()
    self.opt_fallout_freq = packet:r_u32()
    self.opt_fallout_fate = packet:r_stringZ()
    self.opt_fallout_warning = packet:r_stringZ()
    self.opt_fallout_task = packet:r_stringZ()
    self.opt_enable_psi_storm = packet:r_u32()
    self.opt_psi_storm_freq = packet:r_u32()
    self.opt_psi_storm_fate = packet:r_stringZ()
    self.opt_psi_storm_warning = packet:r_stringZ()
    self.opt_psi_storm_task = packet:r_stringZ()
    self.opt_moon_phase = packet:r_stringZ()
    self.opt_night_brightness = packet:r_stringZ()
    set_save_marker(packet, "load", true, "AtmosFear")
    end

      Злобная реклама
    Четверг, 21.05.2020, 14:43
    Статус:
    Сообщений: 666
    Регистрация: 28.03.2020
    Украина  AziatkaVictor
    Четверг, 21.05.2020, 14:46 | Сообщение # 7002
    Статус:
    Опытный:
    Сообщений: 1313
    Награды: 4
    Регистрация: 30.08.2018

    OP_artovod, используй поиск по файлам, пиши, например, zaton и правь что нужно.
      Злобная реклама
    Четверг, 21.05.2020, 14:46
    Статус:
    Сообщений: 666
    Регистрация: 30.08.2018
    Российская Федерация  OP_artovod
    Четверг, 21.05.2020, 14:47 | Сообщение # 7003
    Статус:
    Отмычка:
    Сообщений: 125
    Награды: 0
    Регистрация: 28.03.2020

    AziatkaVictor, нет ну это всё понятно просто я в скриптах не силён и может что ненужное сделаю вот в чём беда

    Добавлено (21.05.2020, 15:02)
    ---------------------------------------------
    Expression : !m_error_code
    Function : raii_guard::~raii_guard
    File : ..\xrServerEntities\script_storage.cpp
    Line : 748
    Description : ...call of pripyat\gamedata\scripts\bind_stalker.script:504: attempt to concatenate field '?' (a nil value)
    что за вылет

    Добавлено (21.05.2020, 15:04)
    ---------------------------------------------
    get_console():execute("g_game_difficulty "..game_difficulty_by_num[game_difficulty])
    вот строка на которую ссылается лог

      Злобная реклама
    Четверг, 21.05.2020, 14:47
    Статус:
    Сообщений: 666
    Регистрация: 28.03.2020
    Российская Федерация  Winsor
    Четверг, 21.05.2020, 18:48 | Сообщение # 7004
    Статус:
    Отмычка:
    Сообщений: 163
    Награды: 0
    Регистрация: 22.04.2020

    OP_artovod, Мб новую сложность создал, или что-то редактировал со сложностями, или добавлял. Игра не может выслать это в консоль. Можешь попробовать перед строчкой написать -- , это может устранить вылет

    Добавлено (21.05.2020, 18:58)
    ---------------------------------------------
    У тебя вылетает игра при загрузке актёра. Может что-то правил/добавлял неизвестное для игры значения?

      Злобная реклама
    Четверг, 21.05.2020, 18:48
    Статус:
    Сообщений: 666
    Регистрация: 22.04.2020
    Российская Федерация  Stalker54
    Четверг, 21.05.2020, 22:04 | Сообщение # 7005
    Статус:
    Зевака:
    Сообщений: 29
    Награды: 0
    Регистрация: 20.05.2020

    Пытаюсь поменять имя на основе мода SZA Freemode. Меняю GENERATE_NAME_stalker в character_desc_general на st_actor_name. Результатов 0, если кто-то сталкивался с этим дайте знать.
    Цитата

    <specific_character id="actor" no_random = "1">
    <name>GENERATE_NAME_stalker</name>
    <icon>ui_inGame2_neutral_1</icon>
    <map_icon x="2" y="5"></map_icon>

    <team>Actor</team>
    <supplies>
    [spawn] \n
    device_torch \n
    wpn_binoc \n
    wpn_knife \n
    detector_simple \n
    helm_respirator \n
    stalker_outfit \n

    grenade_rgd5 = 2 \n

    wpn_pm_actor \n
    ammo_9x18_fmj = 3 \n

    wpn_ak74u \n
    ammo_5.45x39_fmj = 3 \n

    bandage = 2 \n
    antirad = 1 \n
    medkit = 4 \n

    bread = 1 \n
    kolbasa = 1 \n
    conserva = 2 \n
    </supplies>

    Еще вопрос, можно в квесте на поиск предметов поставить метку на нужный предмет с помощью story_object'a или каким-то другим способом ?
    Сообщение отредактировал Stalker54 - Четверг, 21.05.2020, 22:08
      Злобная реклама
    Четверг, 21.05.2020, 22:04
    Статус:
    Сообщений: 666
    Регистрация: 20.05.2020
    Поиск: