Offset для получения координат чекпоинта с расстояния? (вне зоны прорисовки)

Статус
В этой теме нельзя размещать новые ответы.

0xNull_Dll

Известный
Автор темы
143
20
Приветствую. В собейте есть такая фича - брать чекпоинт с расстояния. Все собейты просмотрел, ничего не нашёл...

Пожалуйста, подскажите оффсеты, пожалуйста) P.S Нужно без SF, samp lua и других, именно адрес памяти

Нужны оффсеты типа X,Y,Z и цвет чекпоинта.

Пробовал через обычные адреса памяти типа таких:

0xC7DD58 - Начало блока маркеров. Количество элементов - 32. Размер одного элемента - 160 байт.
  • +0 = [64 байта] Матрица поворота и позиции
  • +48 = [float] Позиция X
  • +52 = [float] Позиция Y
  • +56 = [float] Позиция Z
    • +88 = [byte] R
    • +89 = [byte] G
    • +90 = [byte] B
    • +91 = [byte] A
Но координаты и цвет берётся только тогда, когда чекпоинт появляется в зоне прорисовки.
 

FYP

Известный
Администратор
1,758
5,718
В собейте есть такая фича - брать чекпоинт с расстояния. Все собейты просмотрел, ничего не нашёл...
BlastHackNet/mod_s0beit_sa(https://github.com/BlastHackNet/mod_s0beit_sa/blob/master/src/cheat_generic.cpp#L1135)
BlastHackNet/mod_s0beit_sa(https://github.com/BlastHackNet/mod_s0beit_sa/blob/master/src/cheat_funcs.cpp#L744)

0xC7DD58 - Начало блока маркеров. Количество элементов - 32. Размер одного элемента - 160 байт.
это квадратики на радаре, а не чекпоинты
 

hnnssy

Известный
Друг
2,684
2,745
Lua:
function getMarkerPos()
    local mem1 = memory.getint32(sampGetBase() + 0x21A10C, false)
    local enabled = memory.read(mem1 + 0x24, 4, true)
    if enabled == 1 then
        local mposX = memory.getfloat(mem1 + 0xC, false)
        local mposY = memory.getfloat(mem1 + 0x10, false)
        local mposZ = memory.getfloat(mem1 + 0x14, false)
        return mposX, mposY, mposZ
    end
    return nil, nil, nil
end
 

0xNull_Dll

Известный
Автор темы
143
20
Lua:
function getMarkerPos()
    local mem1 = memory.getint32(sampGetBase() + 0x21A10C, false)
    local enabled = memory.read(mem1 + 0x24, 4, true)
    if enabled == 1 then
        local mposX = memory.getfloat(mem1 + 0xC, false)
        local mposY = memory.getfloat(mem1 + 0x10, false)
        local mposZ = memory.getfloat(mem1 + 0x14, false)
        return mposX, mposY, mposZ
    end
    return nil, nil, nil
end

Хм, а можно ли обойтиесь без sampGetBase? Типа, юзать только сам процесс gta_sa? Ибо в одиночке (в миссиях) спавнятся точно такие же чекпоинты
 

Revalto

Известный
532
225
Хм, а можно ли обойтиесь без sampGetBase? Типа, юзать только сам процесс gta_sa? Ибо в одиночке (в миссиях) спавнятся точно такие же чекпоинты
Найди SAMP_INFO_OFFSET, вроде его ставят заместо sampGetBase(), если я не ошибаюсь...
 
Статус
В этой теме нельзя размещать новые ответы.