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

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

 
 
2 часа назад, ian98 сказал:

как регать-то остальные? Они ж все по одному принципу регаются, правильно?

Да, одинаково регаются. На примере on_key_press: В net_destroy()

self.object:set_callback(callback.on_key_press, nil)

В reinit()

self.object:set_callback(callback.on_key_press, self.on_key, self) -- on_key - название функции, в которой будешь свои действия вписывать

Ну и создаешь где-нибудь функцию

function actor_binder:on_key(key, bind)

...

end

Какие аргументы в скобках смотришь или в других модах (если где-нибудь есть) или в исходниках

2 часа назад, ian98 сказал:

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

Без просчитывания расстояния до игрока, без подбегания к игроку когда он отбежит? Ну лан, тогда и так пойдет

2 часа назад, ian98 сказал:

Работает, только если без отсебятины, которую я с мисс и таргет придумал)

db.actor:position() возвращает vector, а не чисто координаты. target тоже как vector нужен

local pos = db.actor:position()

local target = vector():set(pos.x + miss, pos.y, pos.z)

2 часа назад, ian98 сказал:

он же и добавляет еще, актуальную луахелп?

Походу нет, много нового там нету

Изменено пользователем N42
  • Мастер! 1

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


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

как зарегать калбек на выстрел в огср? Я не знаю)

OGSR свернул не туда, в зависимости от того какой у тебя билд движка, придётся тебе идти на поклон к его разрабам)

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


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

N42 

Проблема с регистрацией калбека, опять, на этот раз с мотиватором.

Есть себе такой калбек на перезарядку у нпс. Попробовал зарегать.

Где надо, вместе с другими подобными строками записал так:

    self.object:set_callback(callback.on_npc_weapon_reload, motivator_binder.on_npc_weapon_reload, self)

Дальше так:

    self.object:set_callback(callback.on_npc_weapon_reload, nil)

Функция так:

function motivator_binder:on_npc_weapon_reload(obj, who)

end

Пробовал еще так:

function motivator_binder:on_npc_weapon_reload(victim, who)

end

Но все равно вылет. Лог: 

Спойлер

 

[27.02.23 10:15:23.700] ********************************************************************************
[27.02.23 10:15:23.700] *********************************************************************************
[27.02.23 10:15:23.700] [print_output([CScriptEngine::lua_pcall_failed])] SCRIPT RUNTIME ERROR:
[luabind::detail::class_rep::function_dispatcher] Caught unhandled exception!
stack traceback:
    [C]: at 0x7ff67bf95694
    [C]: in function 'set_callback'
    ...shadow of chernobyl\gamedata\scripts\xr_motivator.script:84: in function <...shadow of chernobyl\gamedata\scripts\xr_motivator.script:65>
[27.02.23 10:15:23.700] *********************************************************************************
[27.02.23 10:15:23.700] 
FATAL ERROR

[error]Expression    : FATAL ERROR
[error]Function      : CScriptEngine::lua_pcall_failed
[error]File          : D:\a\OGSR-Engine\OGSR-Engine\ogsr_engine\COMMON_AI\script_engine.cpp
[error]Line          : 46
[error]Description   : [CScriptEngine::lua_pcall_failed]: [luabind::detail::class_rep::function_dispatcher] Caught unhandled exception!


[27.02.23 10:15:23.700] ***************************[ScriptCrashHandler]**********************************

 

Что это? и этого калбека уже нет? Или я просто неправильно сделал? 

Да и on_actor_weapon_fire в bind_stalker выбивает с ошибкой. не может зарегать. Прямо уже теряюсь. Где я косячу-то.

on_actor_weapon_switch_gl тоже не регается. Зато on_item_use прошел. Я в печали... 


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

CiberZold последний самый. Прифигел с луж, прикольно сделали. Пульки конечно не отмечаются если стрелять, но это мелочь как по мне, все равно красота. Обидно правда, что дайретикс оставили только 11.

Изменено пользователем ian98

76561198152189716.png

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


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

Прифигел с луж, прикольно сделали

лужи это не фишка ОГСР, они были ещё в ОГСЕ вставках в движок, надо в ОГСЕ поставить отражения на асфальте и будут тебе лужи во время дождя с отражения в воде, сам ОГСР из графики внёс только капли на стекле, которые в половине адаптаций не работают)

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


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

CiberZold какой можно на замену движку огср в тч поставить? Я просто не знаю даже.


76561198152189716.png

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


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

какой можно на замену движку огср в тч поставить?

ну в ОГСЕ есть графика того же ОГСР плюс готовая скриптовая база, движки X-ray Extensions и движок Макрона много улучшений имеют по сравнению с дефолтным ТЧ, в том числе по работе с памятью, увеличение буфера, вот про них как раз много инфы есть в Сети, по движку Макрона даже здесь на сайте, а там уже сам смотри под свои задачи.

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


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

CiberZold как раз графика меня мало волнует. Мне бы всякие приколы с тайм фактором, гравитацией и так далее. Ну и чтоб игра была оригинальная, чистый движок. ОГСЕ, движок Макрона? Это так и ищется? Я попробую.

Что-то гугл мне выдает какие-то укозовские сайты мертвые, вк и гитхаб ОГСР.

Изменено пользователем ian98

76561198152189716.png

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


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

ian98 вот здесь https://github.com/OGSR/OGSR-Engine/releases/  скачай исходники к своей версии и поиском поищи нужный коллбек, есть ли вообще какое-то упоминание. Если нету - значит уже нету. Можно старой версией пользоваться, где они еще есть

Изменено пользователем N42

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


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

N42 исходники это source_code? Первый раз качаю и имею с этим дело? Там нужно освоить кучу софта прекрасного стороннего? Как с сдк например... Моя стихия - блокнот) Причем самый дефолтный

Изменено пользователем ian98

76561198152189716.png

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


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

ian98 просто в notepad++ поищи поиском по файлам, надо просто посмотреть, есть ли в файлах этот коллбек

Изменено пользователем N42

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


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

N42 image.png.e8c6490fd8f79b342fc97377ce638156.png

это все, что я нашел в файлах исходников по запросу on_actor_weapon...

А что-то типо луахелперки тут есть?

ну и даже on_actor_weapon_jammed НЕ ЗАВЕЛСЯ. Я не понимаю. Все равно ошибка.

Изменено пользователем ian98

76561198152189716.png

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


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

А что-то типо луахелперки тут есть?

Где?


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

ну и даже on_actor_weapon_jammed НЕ ЗАВЕЛСЯ

Это с _g.script? В исходниках смотри, а не в скриптах

Изменено пользователем N42

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


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

N42 в исходниках, которые я скачал. Погуглил lua_help ничего такого не нашел очевидного. Какие-то файлы с .срр

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

Изменено пользователем ian98

76561198152189716.png

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


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

ian98 это не коллбек, прописываемый в биндере, просто хлам в _g.script для подсказок на экране. Раз только его показало, значит нету

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


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

N42 

Спойлер

image.png.f8a1bc842894c6656766a5c60f80a428.png

а это? там тоже только _jammed упоминается

image.png


76561198152189716.png

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


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

ian98 это для _g.script. Если нужно что-то, что работает при заклинивании у актора оружия - можешь и в _g.script прописать, но никуда его больше не денешь

  • Пост еще тот... 1

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


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

N42 да вот этот калбек мне как раз и не нужен... Обидно, что повырезали все, что нужно, а еще вчера ты думал "та щас легко повешу на этот калбек и на этот. Все схвачено."


76561198152189716.png

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


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

ian98 просто скачай старую версию. Или X-Ray extensions глянь, в движке от Макрона новых функций нету https://github.com/KD87/xray-extensions 

  • Мастер! 1
  • Пост еще тот... 1

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


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

N42 ай, какой он сложный) собирать его разбирать. будем костылить тогда огсрку уже) Хотя проглядываю вики екстеншн, очень удобная все подписано, и приколы интересные имеются.


76561198152189716.png

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


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

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

ну приколы со сменой тайм-фактора на лету и гравитацией это только в ОГСР есть, придётся тебе тогда с ним разбираться, по ОГСР вообще мало инфы в сети, только ковырять вот те самые исходники cpp файлы из 100500 строк, как говорится вот тебе и дружелюбный подход разрабов движка к мододелам, теперь они по сути делают движок для себя и своих друзей)

  • Жму руку 1
  • Печаль 1

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


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

Как сделать старт. диалог для НПС при определенном инфопоршне, а потом пропадал при другом инфопоршне. Если проще я хочу сделать  чтобы сразу диалог показывался стартовый при квесте,  а после квеста - пропадал.

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


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

Как сделать старт. диалог для НПС при определенном инфопоршне, а потом пропадал при другом инфопоршне. Если проще я хочу сделать  чтобы сразу диалог показывался стартовый при квесте,  а после квеста - пропадал

создаёшь два диалога (dialog1и dialog2 во втором диалоге выдаешь инфопоршень info), в логике нужного непися в секции [meet] пишешь

meet_dialog = {+info} dialog1, dialog2

тогда когда нет инфопоршня стартовая реплика и диалог в целом будет из dialog2, после того как прокликаешь этот диалог и получения инфы, при следующем разговоре с этим персом стартовая реплика и сам диалог будет из dialog1, также можно менять условия, чтоб второй диалог был только при отсутствии инфы {-info} или другого поршня.

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

Изменено пользователем CiberZold
  • Жму руку 1

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


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

И снова здравствуйте. Есть "небольшая" проблема: игра при сохранении не сохраняет брошенные гранаты, а в моём случае (очень) желательно, чтобы сохраняла - на их биндерах вся логика висит, и изменено это не будет. Вопрос: можно ли принудить игру запоминать брошенные гранаты?

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


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

band1tov посмотри стартовый диалог Кузнецова

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


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

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

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


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

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

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

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

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

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

Войти

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

Войти

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

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