Перейти к контенту

[SoC] Ковыряемся в файлах


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

4 часа назад, Norman Eisenherz сказал:

спрашивал о модах на базовом движке.

А для кастомных клавиш и не нужно что-либо в движке ковырять, просто добавляешь их в конфиге в секцию custom_keyboard_action.

Ссылка на комментарий
15 часов назад, I am Dead сказал:

Дай угадаю, на апдейте?

на каком апдейте, ты куда смотришь? Там же выше идёт вызов таймера и по окончанию его выполняется раз этот вызов.

 

15 часов назад, Prophet13 сказал:

Ты чем смотришь?

в моем билде вылет при попытке установить данный set_callback, так что не лезь, если не разбираешься.

 

15 часов назад, I am Dead сказал:

от твое полотно, в более компактном и читабельном виде

ага тоже спец:), если сразу вызвать if outfit, то будет вылет, так как игра выдаст, что outfit не может индексировать, об это изначально и речь шла как о баге.

 

По сути, я в своём коде уменьшил таймаут до 50 мс, теперь вообще всё четко работает, даже ПНВ с некоторыми комбезами не моргает, тащем-то советы мне уже нужны, проблема решена.

Ссылка на комментарий
3 часа назад, Prophet13 сказал:

вот это явно не моя проблема)

ну так, а что ты вылез? Вот @Norman Eisenherz грамотно и полезно подсказывает, потому что читает с самого начала, а ты со своим братом-акробатом прочитали одну строчку в 5 предложении второго абзаца и делаете заключения.

 

И что коллбэки где-то в коде движка остались, это не значит что они зарегистрированы, вот код с гит-хаба, то бишь с последней версии движка.

Скрытый текст

calogsr.jpg

 

Добавлено  Купер,

Правила форума, п. 2.5 (правописание).
Рекомендуется к ознакомлению: здесь.

  • Нравится 1
Ссылка на комментарий

@I am Dead если бы ты читал с начала, то знал бы что outfit при подборе других комбезов почему то обращался в nil, хотя комбез надет и должно быть true, потому я сделал тайм-аут, который через долю секунду пропуская баговый колбэк проверяет одета ли броня после подъёма с земли из ящиков/снятия комбеза/замена комбеза по дабл клику мышкой, что бы не было вылетов по nil для гарантии , если нет комбеза сразу отключаем ПНВ и эффекты, потом дальше да, там когда игра нашла outfit в принципе без разницы что вперёд not или true, но сделал уже как сделал главное работает.

Ссылка на комментарий
56 минут назад, CiberZold сказал:

то знал бы что outfit при подборе других комбезов почему то обращался в nil

То есть, надо надеть костюм, потом поднять другой и переменная станет nil?

Ссылка на комментарий
24 минуты назад, I am Dead сказал:

То есть, надо надеть костюм, потом поднять другой и переменная станет nil?

да ,выполняется код, if not outfit и далее .... пнв отрубается, а если пытаться сразу индексировать например получить секцию костюма то будет вылет ,но это не самый последний билд ОГСР, возможно в последних поправили ,я говорю за то тот что у меня.

 

Ссылка на комментарий

@CiberZold Ну я проверил, выполняется все как надо, ищи в другом месте ошибку, вот пример

https://cdn.discordapp.com/attachments/932911708924682290/1247512987380617279/OGSR_Engine_2024-06-04_18-30-36.mp4?ex=66604c81&is=665efb01&hm=606b26bf93dfedfa97dd8be0742daf6125e5eab3ee74140a8a063c3c309d78da&

Код такой:

 

Скрытый текст
local function check_my_suit_hud()
    local outfit = db.actor:get_current_outfit()
    if outfit then
        local outfitname = outfit:section()
        local control = get_string(outfitname, "control")
        local intensity = get_string(outfitname, "intensity")

        cmd("r2_mask_control " .. control)
        cmd("r2_visor_refl_control " .. control)
        cmd("r2_visor_refl_intensity " .. intensity)
        cmd("r2_rain_drops_control " .. control)
        cmd("gasmask_inertia 0.6, 0.6, 0.6, 0.0")
    else
        cmd("r2_mask_control 0")
        cmd("r2_visor_refl_control 0")
        cmd("r2_visor_refl_intensity 0")
        cmd("r2_rain_drops_control 0")
    end
end

function attach(sm)
    sm:subscribe({signal = "on_first_update",                   fun = check_my_suit_hud})
    sm:subscribe({signal = "on_item_to_slot",                   fun = check_my_suit_hud})
    sm:subscribe({signal = "on_item_to_ruck",                   fun = check_my_suit_hud})
    sm:subscribe({signal = "on_drop",                           fun = check_my_suit_hud})
end

 

 

Ссылка на комментарий
2 часа назад, I am Dead сказал:

Ну я проверил, выполняется все как надо

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

 

кстати на видео интересный компас в стиле Фоллаута, но как по мне слишком казуально, аномалии на мини-карте ещё можно пережить, но когда жарки уже тупо на худе показываются)

Изменено пользователем CiberZold
Ссылка на комментарий
1 час назад, CiberZold сказал:

я же говорю у меня не последний билд

Этой переменной уже хрен знает сколько лет, врятли ее кто трогал недавно..

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

аномалии на мини-карте ещё можно пережить

Та та же карта, только в профиль

Ссылка на комментарий
6 часов назад, I am Dead сказал:

врятли ее кто трогал недавно..

эх вынудил ты меня проверять все скрипты что висят на коллбеках, item take, on_ruck , в итоге нашёл там

if outfit and outfit:id() ~= obj:id() then
       db.actor:transfer_item(outfit, db.actor)  -

какой-то визуальный фикс с таким кодом не помню уже за каким он нужен, но без него действительно ПНВ перестал отключаться при подборе, теперь и так и так работает.

Ссылка на комментарий

@I am Dead Через этот "омайгад" можно скриптово менять предметы в слотах (аналогично make_item_active в ЧН/ЗП), или скриптово подбирать предметы с пола. Полезная возможность.

  • Согласен 2
  • Сомнительно 1

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

Ссылка на комментарий

@Norman Eisenherz Если бы ты писал это лет 12 назад, я бы с тобой даже согласился. Ну даже 10 пожалуй.
Но сегодня :biggrin: все нормальные движки давным давно имеют адекватные методы для того чтобы это делать.

  • Согласен 2

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий
1 час назад, Zander_driver сказал:

Если бы ты писал это лет 12 назад, я бы с тобой даже согласился. Ну даже 10 пожалуй.

Как ни крути, а придётся согласиться и сегодня. ;) Ведь этим способом по-прежнему можно менять предмет в слоте. А методы в "нормальных" движках - всего лишь добавленная альтернатива, но не безусловная замена. :pardon:

Ссылка на комментарий
13 часов назад, Norman Eisenherz сказал:

можно скриптово менять предметы в слотах

Может быть, 100 лет назад. Зная, на каком движке работает человек, говорю что не нужно подпирать костылями.

  • Нравится 1
  • Согласен 1
Ссылка на комментарий

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

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...