Случайная подборка модов
Сюжетное продолжение Чистого неба
4.1
Another Zone Mod. Пролог
4.2
Lost World Condemned
3.5
Игра Душ: Эксельсиор
4.4
Плохая компания
4.0
Doomed to Eternal Torment
3.9
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: 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
    Российская Федерация  svi
    Вторник, 10.12.2019, 13:50 | Сообщение # 5281
    We Are Not Alone
    Статус:
    Неопытный:
    Сообщений: 482
    Награды: 8
    Регистрация: 14.01.2015

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

    А, и да. Где-то в момент ковыряния всей этой логики (точнее не могу сказать, т.к. делал всё большим блоком) при покидании игры и локации начала выскакивать ошибка



    88 строчка в моем _g.script:
    log(string.format(fmt,...))

    Есть какой-то вариант, как получить более внятную инфу, на каком моменте всё идёт не так?
      Злобная реклама
    Вторник, 10.12.2019, 13:50
    Статус:
    Сообщений: 666
    Регистрация: 14.01.2015
    Российская Федерация  Prostomod
    Вторник, 10.12.2019, 20:22 | Сообщение # 5282
    Статус:
    Новичок:
    Сообщений: 266
    Награды: 4
    Регистрация: 27.02.2018

    svi, лично я так поступил: в этом же скрипте в function abort в строке
    Код
    --error_log(reason)
    убрал "--". Логи стали более подробные при вылетах (помогает при создании логики), но должен сказать, что некоторые "безобидные" баги превратились в вылеты (возможно поэтому в оригинале это выключено).
    Сообщение отредактировал Prostomod - Вторник, 10.12.2019, 20:24
      Злобная реклама
    Вторник, 10.12.2019, 20:22
    Статус:
    Сообщений: 666
    Регистрация: 27.02.2018
    Российская Федерация  sergej5500
    Вторник, 10.12.2019, 20:55 | Сообщение # 5283
    Статус:
    Новичок:
    Сообщений: 290
    Награды: 4
    Регистрация: 09.01.2017

    svi,

    В схеме mob_walker нужно указывать точки:

    path_walk =
    path_look =

    У вас их не видно. Может вылет из за этого?
      Злобная реклама
    Вторник, 10.12.2019, 20:55
    Статус:
    Сообщений: 666
    Регистрация: 09.01.2017
    Российская Федерация  svi
    Среда, 11.12.2019, 05:26 | Сообщение # 5284
    We Are Not Alone
    Статус:
    Неопытный:
    Сообщений: 482
    Награды: 8
    Регистрация: 14.01.2015

    sergej5500, вылет идёт с другой локации вообще. Впрочем, попробую.
    UPD: к сожалению, не помогло.

    Prostomod, ОК, это вариант.
    UPD: попробовал, нашёл пару ошибок в смарт-террейнах, но конкретно данный вылет выдаёт всё то же.
    Сообщение отредактировал svi - Среда, 11.12.2019, 06:16
      Злобная реклама
    Среда, 11.12.2019, 05:26
    Статус:
    Сообщений: 666
    Регистрация: 14.01.2015
    Российская Федерация  Policai
    Среда, 11.12.2019, 08:53 | Сообщение # 5285
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Народ! Наблюдаю такой баг впервые. Не пойму в чём проблема. Посадил торговца, всё работает без проблем, спавниться, торгует, по логике отрабатывает как нужно, всё отлично. Но при спавне почему то смарт ковер разворачивается на 180 градусов.
    Сама логика поведения простейшая, торговец сидит на стуле, при подходе к окну торговли он встаёт и подходщит к окну, когда ГГ уходит он возвращается на стул.
    Баг в том что он спавнится не на стул а сидит на пустоте лицом к стулу, тоесть по оси провёрнут на 180 градусов. Подхожу к окну он встаёт и подходит, торгует всё нормально. после этого нормально работает логика, ГГ отходит и торговец возвращается на стул, и садится нормально как и должно быть...
    В чём баг, почему при спавне он так разворачивается? может кто сталкивался?
      Злобная реклама
    Среда, 11.12.2019, 08:53
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  denis2000
    Среда, 11.12.2019, 09:42 | Сообщение # 5286
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Policai, Сталкивались, знаем!
    Первая причина: Оригинальные анимации для анимпоинтов у GSC иногда развернуты на 180 градусов относительно ориентации смартковеров. Пример такого - самартковер Кардана на Скадовске. При этом НПС никогда не сядет по ориентации правильно. Решение - разворот смартковера, для правильной ориентации анимаций.
    Вторая причина: Стул НПС (или другой объект в непосредственной близости) - динамический объект. Ориентация смартковера и анимаций верная. В этом случае взаимодействие НПС с динамическим объектом приводит к подобным багам. При этом НПС может садиться рядом со стулом, на стул но развернувшись под углом 180, не садиться вообще или ... сесть нормально все зависит от располажения планет, мышки на коврике и подключения наушников. Решение - использование в окрестности смартковеров исключительно статических объектов.


    Цитата svi ()
    попробовал, нашёл пару ошибок в смарт-террейнах, но конкретно данный вылет выдаёт всё то же.

    Проблема в том, что сообщения выдаваемые при этом в лог определяются тем, что прописано в функцию abort скриптом инициировавший аварийное завершение выполнения. Не все скрипты не во всех случаях выдают такие аварийные сообщения. А это значит, что вам самому придется вспомнить все что вы накрутили в геймдате, досконально перепроверить все правки и найти таким образом причину, или просто забить на вылет при закрытии игры, надеясь, что например сейвы при этом у вас не ломаються.
    Сообщение отредактировал denis2000 - Среда, 11.12.2019, 10:01
      Злобная реклама
    Среда, 11.12.2019, 09:42
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Policai
    Среда, 11.12.2019, 10:49 | Сообщение # 5287
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    denis2000,

    Там нет рядом динамических обьектов, стул статика обычная. Смущает что он развёрнут только при первом спавне, потом то, достаточно отработать по логике хоть раз, он садится нормально, на своё место. И что самое подозрительное, такое впервые вижу, стандартная анимация ЗП, sit_normal, она много где используется у меня в моде, но такого нигде нет.
    Думаю может это связано с точкой телепорта? Смарт относительно далеко от точки, за пределами здания, и если сохраниться в этом месте и выйти из игры. То при воходе получится что торговец будет идти от смарта на работу. Что не есть красиво..)) Поэтому на месте ковера у меня стоит поинт, точка спавна для телепорта. И в логике приписана эта точка при спавне торговца, чтоб он сразу появлялся на месте работы...
    Вернее не в логике а в squad_descr_локация, точка эта поинт куда он встаёт при разговоре...



    Сообщение отредактировал Policai - Среда, 11.12.2019, 10:55
      Злобная реклама
    Среда, 11.12.2019, 10:49
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  denis2000
    Среда, 11.12.2019, 11:05 | Сообщение # 5288
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата Policai ()
    Поэтому на месте ковера у меня стоит поинт

    А вот так делать не стоит, если точка спавна (или одной из работ этого НПС) стоит внутри смартковера, то НПС может тупить при занятии этого смартковера при переходе с этой точки. Хотя это и редкое явление. Попробуйте вынести спавн поинт за пределы смартковера.
    Также проверьте АИ-сетку в этом месте и точность установки смартковера на сетку.
    Сообщение отредактировал denis2000 - Среда, 11.12.2019, 11:09
      Злобная реклама
    Среда, 11.12.2019, 11:05
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Policai
    Среда, 11.12.2019, 11:15 | Сообщение # 5289
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    В том то и дело, у меня у обычных НПС, со стандартной логикой а не многосекционной, сделанных на ковере, такие точки стоят, и телепорт прописан в логиках НПС, именно чтоб при сохранении и загрузке игры НПС сразу спавнились на точку работы а не шли на неё из смарта, но так как там сквады по нескольку НПС, одну точку общую не поставишь и не прпопишешь в squad_descr_локация , они спавнятся толпой в эту точку и стоят толкаются, поэтому у каждого отдельная и прописана в логике. И нигде нет проблем, а торгашу я эту точку не стал ставить и указал точку спавна из второй секции логики... и сразу этот баг вылез.
    Сейчас подумалось, может переделать логику на стартовую секцию на вей точки, а уж второй сделать секцию анимпоинта. может это исправить баг?
    Сообщение отредактировал Policai - Среда, 11.12.2019, 11:18
      Злобная реклама
    Среда, 11.12.2019, 11:15
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  svi
    Среда, 11.12.2019, 12:31 | Сообщение # 5290
    We Are Not Alone
    Статус:
    Неопытный:
    Сообщений: 482
    Награды: 8
    Регистрация: 14.01.2015

    Цитата denis2000 ()
    А это значит, что вам самому придется вспомнить все что вы накрутили в геймдате, досконально перепроверить все правки и найти таким образом причину, или просто забить на вылет при закрытии игры, надеясь, что например сейвы при этом у вас не ломаються.


    Как ни странно, проблему нашёл. Проблема была - внезапно - в секции торговли одного из торговцев, которую я недавно правил. Не очень понял, что именно там не так, временно поставил старую затычку. Но факт есть факт - это мешало выйти с локации без вылетов и использовать торговцу анимпоинт.
      Злобная реклама
    Среда, 11.12.2019, 12:31
    Статус:
    Сообщений: 666
    Регистрация: 14.01.2015
    Российская Федерация  denis2000
    Среда, 11.12.2019, 16:38 | Сообщение # 5291
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата Policai ()
    может это исправить баг?

    Вполне возможно.
    Цитата svi ()
    Проблема была - внезапно - в секции торговли одного из торговцев, которую я недавно правил.

    Никаких неожиданностей! Только вы знаете, что и где вы правили в последнее время и можете оценить источник проблемы.
      Злобная реклама
    Среда, 11.12.2019, 16:38
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Украина  N_merc
    Среда, 11.12.2019, 22:28 | Сообщение # 5292
    Статус:
    Зевака:
    Сообщений: 7
    Награды: 0
    Регистрация: 18.01.2017

    все решил проблему. стак трэйс в логе был

    Добавлено (11.12.2019, 22:33)
    ---------------------------------------------

    Цитата sergej5500 ()
    Многие сталкивались. Было бы неплохо, если бы вы показали лог вылета. Ясновидящих тут нет.


    все исправил. там только стакс трейс был. было бы что то другое на много проще бы пришлось искать проблему
      Злобная реклама
    Среда, 11.12.2019, 22:28
    Статус:
    Сообщений: 666
    Регистрация: 18.01.2017
    Российская Федерация  Policai
    Четверг, 12.12.2019, 07:48 | Сообщение # 5293
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    Народ! Подскажите, по какому принципу ведётся подсчёт статистики найденых тайников в ЗП? Интересует сама суть, все тайники для статистики нужно регистрировать где то? или достаточно присутствия в имени inventory_box?
      Злобная реклама
    Четверг, 12.12.2019, 07:48
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Российская Федерация  denis2000
    Четверг, 12.12.2019, 11:27 | Сообщение # 5294
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Policai, В оригинальном ЗП тайники в которых предметы связаны с inventory_box не учитываются в менеджере тайников. В нем учитываются предметы лежащие открыто. Для этого у каждого предмета из тайника в кастомдате прописано к какому тайнику он относиться:
    Код
    [secret]
    name = zat_hiding_place_1

    Также все тайники и все предметы в них описаны в конфигурационных файлах менеджера тайников secret_***.ltx (головной файл secrets.ltx)
    Эти же файлы указаны в рестрикторах тайников которые накрывают место тайника:
    Код
    section_name = space_restrictor
    name = zat_hiding_place_1
    custom_data = [secret]
    cfg = misc\secret_zaton.ltx

    Сам менеджер тайников treasure_manager.script отслеживает поднятие предметов по меткам secret из кастомдаты и согласно конфигу принимает решение все ли предметы из тайника поднял ГГ. Если подняты все предметы то информация о найденном тайнике отправляется в xr_statistic.script. А уж при отображении количества найденных тайников в ПДА информация берется именно из xr_statistic.script.
    Сообщение отредактировал denis2000 - Четверг, 12.12.2019, 11:31
      Злобная реклама
    Четверг, 12.12.2019, 11:27
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Policai
    Четверг, 12.12.2019, 11:42 | Сообщение # 5295
    Dead City Breakthrough
    Статус:
    Опытный:
    Сообщений: 2244
    Награды: 11
    Регистрация: 08.11.2011

    denis2000,

    А есть вариант принудительно заставить xr_statistic.script считать найденые inventory_box? У меня все тайники имеют имя ПРЕФИКС ЛОКИ_inventory_box_хххх, в общей сложности на всех локах примерно 350+ тайников. накрывать каждый спейсом как то не франтит... Я вроде начал это делать, но я спейсы хотел ставить на предмет проверки что ГГ был возле тайника, и предмет из тайника только в этом случае появится в инвентаре. Но потом отказался от этой идеи. После открытия тайника на нём остаётся метка на карте. Скрипты писал Дима (makdm). В логике каждого тайника в кастом дате



    Думаю есть какая то возможность сосчитать сколько раз скрипт поставил метку... Дима пока отсутствует, а спросить больше негде..))
    Сообщение отредактировал Policai - Четверг, 12.12.2019, 11:49
      Злобная реклама
    Четверг, 12.12.2019, 11:42
    Статус:
    Сообщений: 666
    Регистрация: 08.11.2011
    Поиск: