Berserker
Posts: 16449
|
Не увидил хуков. Увидел только выделение памяти под новые структуры (такая функциональность есть, malloc, ffi.new и иже с ним из стандартной поставки luajit) и замена старых адресов новыми с глобальным реестром (?) структур по имени. Возможно, у Сергея был ещё какой-то побочный функционал.
Что касается перехватчиков/хуков в коде, то таковые поддерживаются. Реальный пример из era.lua:
Code:
-- установили перехватчик по адресу, когда окно уже создано и базовые ресурсы загружены
era.bridge(0x4EEEA5, function (context)
-- Redirect message boxes to native game dialog system
era.msg = nativePrint
era.ask = era.showNativePrompt
_G.print = era.msg
era.trigger('OnGuiStart') -- сгенерировали новое именованное событие
return 1 -- выполнили код по умолчанию
end)
Будет реальный запрос на модуль с синтаксисом вроде 3.59, добавлю. Глобальная таблица расширенных структур и несколько удобных методов для патчинга адресов.
Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
|
|
06.01.2018 01:13 |
|