Узлы: Память процесса
Присоединяйтесь к запущенной игре и читайте/пишите значения напрямую из памяти.
Memory Attach
Подключается к процессу по имени (или проверяет, что уже подключён).
In: Process Name:String
Out: Attached:Bool, Pid:Int
PRO. Должен выполниться раньше остальных узлов памяти.
Memory Attach(game.exe) → Memory Read(...).
Memory Read
Читает значение по адресу. Тип выбирается: целое, дробное, байты или текст.
In: Address:String, Type:String, Size:Int
Out: Value:Any, Ok:Bool
PRO.
Memory Read(hp_addr, int) → Compare < 30.
Memory Resolve Chain
Проходит по цепочке указателей (модуль плюс смещения) до конечного адреса.
In: Module:String, Base Offset:String, Offsets:String
Out: Address:String, Ok:Bool
PRO. Работает и после перезапуска игры.
Resolve Chain(game.exe, 0x1234, [0x18, 0x20]) → Memory Read.
Memory Write
Пишет значение в адрес.
In: Address:String, Type:String, Value:Any
Out: Ok:Bool
PRO. Используйте осторожно.
Memory Write(speed_addr, float, 2.0).
Memory AOB Scan
Ищет байтовый паттерн в процессе и возвращает адрес совпадения.
In: Pattern:String, Mask:String, Region:String
Out: Address:String, Found:Bool
PRO. Полезно, когда адреса сдвигаются после обновлений игры.
AOB Scan("48 8B 05 ?? ?? ?? ??") → Memory Read.
Memory Object List
Читает массив объектов из памяти в список, по которому можно пройти циклом.
In: Base Address:String, Count:Int, Stride:Int
Out: List:Any, Count:Int
PRO. Подавайте список в For Each Memory Object.
Object List(entities, 64, 0x100) → For Each Memory Object.
Memory Object Field
Читает одно поле объекта в памяти.
In: Object:Any, Offset:Int, Type:String
Out: Value:Any
PRO.
Memory Object Field(entity, 0x40, float) → HP.