Перейти к содержанию

Рекомендуемые сообщения

 

1491319448148138184.png

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

 

Правила темы:

  • Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть.
  • Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.
  • Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).
  • Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться.
  • Так же, если вы модифицируете готовый мод, обязательно указывайте какой. Некоторые модификации очень сильно отличаются от Call of Chernobyl. 
  • Лайк 4
  • Хабар 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vader_33 сама система, не требующего прописи иконок под каждый контейнер с иконкой артефакта.

  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Только что, vader_33 сказал:

А про контейнеры не понял, что именно нужно, в разных сборках контейнеры есть, не только в дед эире

Перенести контейнеры из Dead Air. За них отвечают некоторые скрипты. И написал, что система контейнеров в DA отличается от Мизеривской.

Только что, vader_33 сказал:

Как сделано в мизери - не знаю, это тема кока, а не зп

Call of Misery

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Misery напишу про дэд эир, насчет колл оф мизери не знаю.

В коке можно присоединить иконку так:

        1icon_layer = секция

        1icon_layer_x = x

        1icon_layer_y = y

это смещение как у обвесов оружия

Откройте секцию с каким-нибудь контейнером в дед эире (например, "af_aac"). Там будет только:

       1icon_layer_x           = 0
       1icon_layer_y              = 60
       1icon_layer_scale       = 0.45

без секции. 

Функции, отвечающие , грубо говоря,  за"добавление "   "1icon_layer = секция" идут ниже в конфиге:

       use1_functor             = itms_manager.container_fill_menu
       use1_action_functor     = itms_manager.container_fill
       use2_functor             = itms_manager.container_remove_menu
       use2_action_functor     = itms_manager.container_remove

Это то, что отвечает за действия в контекстном меню. И уже в этих функциях удаляется арт, контейнер, и спавнится новый контейнер, отдельно прописанный для этого арта (например, "af_night_star_af_aac"), в котором прописано "1icon_layer = секция". Всё равно придется плодить секции с контейнерами (но зато без иконок)

Изменено пользователем vader_33
  • Жму руку 1
  • Спасибо 1

В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vader_33 щас попробую вытащить контейнер из DA.


Дополнено 50 минуты спустя

Помню, где-то видел урок по созданию области точки на карте в ПДА.

Например, "Аномалия Коготь", "Аномалия Железный Лес".

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


Дополнено 52 минуты спустя
Только что, Misery сказал:

щас попробую вытащить контейнер из DA

Уже чуть позже, я устал. Я обнаружил работу гейгера и военных карт, этим нужно заняться позже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Misery в моде лотишен вегас имеется функция по скрытую этих точек до посещения игрока. 

  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Hoperise а на инглише как мод называется?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Misery Lotions from Vergas


Дополнено 31 минуты спустя

 Misery 

В 09.07.2021 в 17:28, Misery сказал:

Помню, где-то видел урок по созданию области точки на карте в ПДА.

 урок .

  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Я не понимаю, в чём проблема и как её устранить.

Expression    : <no expression>
Function      : CScriptEngine::lua_error
File          : ..\xrServerEntities\script_engine.cpp
Line          : 189
Description   : fatal error
Arguments     : LUA error: ...- call of chernobyl\gamedata\scripts\itms_manager.script:414: attempt to call method 'set_radiation_detector' (a nil value)

stack trace:

001B:0056399C xrCore.dll, xrDebug::fatal()
001B:04292FB5 xrGame.dll, CDialogHolder::IgnorePause()
001B:0427C7A9 xrGame.dll, CDialogHolder::IgnorePause()
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Misery или метода "set_radiation_detector" нет в игре или он применяется не к тому объекту, к которому предназначается

  • Спасибо 1

В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vader_33 спасибо. Видимо идея перенести itms_manager.script из DA была плохой.

Мне нужно перенести функции из DA для работы гейгера, контейнеров.

Постараюсь перенести всё удачно и правильно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Misery у контейнеров функции точно работают на обычном коке, там всего 5 функций перенести надо, а вот set_radiation_detector я не встречал, наверно новое в движок добавили


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 минуту назад, vader_33 сказал:

наверно новое в движок добавили

Хм, в Стасоне движок ванильный, но там тоже гейгер есть.

Но увы на руках Стасика нету, а места и так мало.


Дополнено 0 минут спустя

В CoM тоже движок ванильный, почти, попробую из CoMa взять.


Дополнено 2 минуты спустя

В CoM только такое есть в itms_manager.script

    -- Geiger
    if (obj:section() == "geiger_dead") then
        local text = game.translate_string("st_rad_level")..": "..math.floor(db.actor.radiation*10000*0.387).." "..game.translate_string("st_msv")
        SetHudMsg(text,3)
    end

В то время, как в DA у гейгера три упоминания.


Дополнено 3 минуты спустя
2 минуты назад, Misery сказал:

В то время, как в DA у гейгера три упоминания.

Использование с разрядкой повербанка с set_radiation_detector

Второе, почти как в CoM

Третье, разборка гейгера на запчасти.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Misery такое ощущение, что это отвечает за возможность отображать уровень радиации на экране. Но зачем для этого добавлять метод. А может неправильно понял


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vader_33 не знаю

Эти самые три упоминания

    if (db.actor:object("geiger")) then
        local upd = db.actor:object("wpn_upd")
        if (axr_main.config:r_value("mm_options","enable_use_battery",1,false) == false) or    (upd and (upd:condition() > 0.05)) then
            db.actor:set_radiation_detector(true)
        else
            db.actor:set_radiation_detector(false)
        end
    else
        db.actor:set_radiation_detector(false)
    end
end

 

    -- Geiger
    if (obj:section() == "geiger") then
        local upd = db.actor:object("wpn_upd")
        if (axr_main.config:r_value("mm_options","enable_use_battery",1,false) == false) or    (upd and (upd:condition() > 0.05)) then
            local text = game.translate_string("st_rad_level")..": "..math.floor(db.actor.radiation*10000*1).." "..game.translate_string("st_msv")
            SetHudMsg(text,3)
            if (upd) and (axr_main.config:r_value("mm_options","enable_use_battery",1,false) == true) then
                upd:set_condition(upd:condition() - 0.005)
            end
        else
            axr_battery.show_message("st_upd_low",25)
        end
    end

 

    elseif (section == "geiger") then
        if (math.random() < 0.75) then alife():create("capacitors", pos, lvid, gvid, actor) end
        if (math.random() < 1.0) then alife():create("batteries", pos, lvid, gvid, actor) end

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 минуту назад, Misery сказал:

if (db.actor:object("geiger")) then
        local upd = db.actor:object("wpn_upd")
        if (axr_main.config:r_value("mm_options","enable_use_battery",1,false) == false) or    (upd and (upd:condition() > 0.05)) then
            db.actor:set_radiation_detector(true)
        else
            db.actor:set_radiation_detector(false)
        end
    else
        db.actor:set_radiation_detector(false)
    end
end

можно попробовать для теста это закомментировать, если что - заменить на инфопоршни или метку в псторе


Дополнено 1 минуту спустя

Misery а блин, зачем метки, в выводе на экран есть проверка


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
7 минут назад, vader_33 сказал:

псторе

PS Store? xD


Дополнено 1 минуту спустя

vader_33 попробую без set_radiation_detector

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Misery есть такой вариант для чистого зова припяти, но нет отображения в зивертах, только проценты и нет привязки к потреблению энергии.

https://disk.yandex.ru/d/EtV7oOCzhqmuhA

  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Hoperise ща пощупаю


Дополнено 4 минуты спустя

Hoperise ну такое, но буду иметь ввиду если ничего не выйдет с CoMовским.


Дополнено 4 минуты спустя

Всё равно спасибо.


Дополнено 0 минут спустя

Не работает из Misery, не работает из DA

1 час назад, Misery сказал:

 local text = game.translate_string("st_rad_level")..": "..math.floor(db.actor.radiation*10000*1).."

Но судя по этой строке должно выводится. Ссылка на текст st_rad_level: уровень радиации db.actor.radiation*10000*1

Но даже с db.script из DA ни-че-го.


Дополнено 29 минуты спустя

Перенёс я значит контейнеры. Я и функции перенёс, но что-то ничего нету.

ss-07-11-21-19-51-38-l01-escape.jpg


Дополнено 30 минуты спустя

vader_33 


Дополнено 31 минуты спустя

Переносил контейнеры из DA


Дополнено 42 минуты спустя

Если не получился, то попробую вариант из CoM с задействованием "контейнер тула".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
2 часа назад, Misery сказал:

Перенёс я значит контейнеры. Я и функции перенёс, но что-то ничего нету

значит что-то не так сделали. Вот попробовал, нормально работает, для 1.4.22. В архиве сохранка с уже заспавненным контейнером и двумя артами, которым прописаны контейнеры

https://disk.yandex.ru/d/KsHV3qos3l4jSw


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vader_33 о спасибо конечно.

Я удалил функцию одну и начало работать, но при извлечении арта вылет

Expression    : <no expression>
Function      : CScriptEngine::lua_error
File          : ..\xrServerEntities\script_engine.cpp
Line          : 189
Description   : fatal error
Arguments     : LUA error: ...- call of chernobyl\gamedata\scripts\itms_manager.script:710: attempt to perform arithmetic on field 'weight' (a nil value)

stack trace:

001B:0056399C xrCore.dll, xrDebug::fatal()
 


Дополнено 0 минут спустя

Я бы нажал на "Спасибо" но лимит по реакциям.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Misery я просто закомментил строчки с изменением параметров (всякие new_se_obj.condition = ..., new_se_obj.offline_condition  = ...), мне лень было разбираться с ними). Если нужен просто контейнер, а не вешать его на пояс с сохранением свойств артов - это не надо


Дополнено 3 минуты спустя
3 часа назад, Misery сказал:

Не работает из Misery, не работает из DA

3 часа назад, Misery сказал:

 local text = game.translate_string("st_rad_level")..": "..math.floor(db.actor.radiation*10000*1).."

Но судя по этой строке должно выводится. Ссылка на текст st_rad_level: уровень радиации db.actor.radiation*10000*1

Но даже с db.script из DA ни-че-го.

правленые файлы выложите (все, гляну у себя)


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

vader_33 

11 минут назад, vader_33 сказал:

Если нужен просто контейнер, а не вешать его на пояс с сохранением свойств артов - это не надо

А теперь понятно почему Ломоть Мяса в ПМК был без свойств. Тогда разкомментировать?

Спасибо огромное, неловко, потому-что хотел сам, а в итоге ты скинул.

12 минут назад, vader_33 сказал:

правленые файлы выложите (все, гляну у себя)

Я уже удалил. Ща сделаю и кину.


Дополнено 7 минуты спустя

vader_33 itms_manager.script

Задействована батарея и повербанк. Их не удаляй, я их добавил, но повербанк не разряжается, это я потом исправлю.

Нужно ещё, чтобы арты в рюкзаке фонили.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
12 минут назад, Misery сказал:

Тогда разкомментировать?

если раскомментить - будет вылетать. Надо разбираться, что игре не нравится

13 минут назад, Misery сказал:

неловко, потому-что хотел сам, а в итоге ты скинул

так было проще, чем в куче сообщений по кускам строчек пытаться понять, в чем была причина, а я итак сегодня замахался)

14 минут назад, Misery сказал:

Задействована батарея и повербанк. Их не удаляй, я их добавил, но повербанк не разряжается, это я потом исправлю

а модели, секции? Мне всё сразу, чтобы просто закинуть в игру и проверять без поиска везде моделей и конфигов


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
10 минут назад, vader_33 сказал:

а модели, секции? Мне всё сразу, чтобы просто закинуть в игру и проверять без поиска везде моделей и конфигов

сейчас, секунду


Дополнено 4 минуты спустя

powerbank.zip


Дополнено 4 минуты спустя

только без иконок

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Misery завтра гляну


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу