Другое С/С++ Вопрос - Ответ

yoonost

Известный
62
3

есть какой то тутор по установке? я вроде сделал все правильно, билд был без ошибок но ничего не работает
пробовал менять пути но нет разницы
 
Последнее редактирование:

ARMOR

011110000111100101101001
Модератор
4,970
6,897
Посмотреть вложение 245040
есть какой то тутор по установке? я вроде сделал все правильно, билд был без ошибок но ничего не работает
пробовал менять пути но нет разницы
Тут юзается
 
  • Влюблен
  • Нравится
Реакции: whyega52 и yoonost

yoonost

Известный
62
3
Тут юзается
спасибо большое, думал что нужно его скачивать и билдить но оказалось все проще чем я думал

В чем проблема? Во время прорисовки радара крашит игру, пробовал сделать многое но результат один. В коде сейчас стандартный код gta_sa.exe но даже при этом происходит краш

1719817726125.png

1719817971038.png
 
Последнее редактирование:

Andrinall

Известный
701
518
спасибо большое, думал что нужно его скачивать и билдить но оказалось все проще чем я думал

В чем проблема? Во время прорисовки радара крашит игру, пробовал сделать многое но результат один. В коде сейчас стандартный код gta_sa.exe но даже при этом происходит краш

Посмотреть вложение 245068
Посмотреть вложение 245069
Там не void (бредовая тема но да)


1719821345268.png
 

Andrinall

Известный
701
518
не-а, я хз в чем проблема (я его тоже пробовал)

обновлю ка я код


Посмотреть вложение 245072Посмотреть вложение 245073
У меня кншн щас нет визуалки чтоб протестить конкретно твой код на крестах, но накидал хук на луа и у меня всё работает!
Может ты как-то не так изменяешь данные, что у тебя крашит?

1719822744336.png

Lua:
local ffi = require 'ffi'
local hook = require 'hooks'
local sw, sh = getScreenResolution()
local RsGlobals = {
    maximumWidth = sw,
    maximumHeight = sh,
}
ffi.cdef[[
    typedef struct CVector2D { float x, y; } CVector2D;
    typedef struct RwV2d { float x, y; } RwV2d;
]]
function radar_position(out, _in)
    out[0].x = 0.5 * (94.0 * (RsGlobals.maximumWidth * 0.0015625)) + RsGlobals.maximumWidth * 0.0015625 * 40 + 94 * (RsGlobals.maximumWidth * 0.0015625) * _in.x * 0.4
    out[0].y = RsGlobals.maximumHeight - 0.002232143 * RsGlobals.maximumHeight * 104 + 76 * (0.002232143 * RsGlobals.maximumHeight) * 0.5 - 76 * (0.002232143 * RsGlobals.maximumHeight) * _in.y * 0.5
    return ffi.cast('RwV2d*', _in)
end
function main()
    transformhook = hook.jmp.new('RwV2d*(__cdecl*)(CVector2D* out, CVector2D* in)', radar_position, 0x583480)
end
 

yoonost

Известный
62
3
y
У меня кншн щас нет визуалки чтоб протестить конкретно твой код на крестах, но накидал хук на луа и у меня всё работает!
Может ты как-то не так изменяешь данные, что у тебя крашит?

Посмотреть вложение 245076
Lua:
local ffi = require 'ffi'
local hook = require 'hooks'
local sw, sh = getScreenResolution()
local RsGlobals = {
    maximumWidth = sw,
    maximumHeight = sh,
}
ffi.cdef[[
    typedef struct CVector2D { float x, y; } CVector2D;
    typedef struct RwV2d { float x, y; } RwV2d;
]]
function radar_position(out, _in)
    out[0].x = 0.5 * (94.0 * (RsGlobals.maximumWidth * 0.0015625)) + RsGlobals.maximumWidth * 0.0015625 * 40 + 94 * (RsGlobals.maximumWidth * 0.0015625) * _in.x * 0.4
    out[0].y = RsGlobals.maximumHeight - 0.002232143 * RsGlobals.maximumHeight * 104 + 76 * (0.002232143 * RsGlobals.maximumHeight) * 0.5 - 76 * (0.002232143 * RsGlobals.maximumHeight) * _in.y * 0.5
    return ffi.cast('RwV2d*', _in)
end
function main()
    transformhook = hook.jmp.new('RwV2d*(__cdecl*)(CVector2D* out, CVector2D* in)', radar_position, 0x583480)
end
не фурычит, какие у тебя значения в RsGlobals потому что у меня они нулевые
 

Andrinall

Известный
701
518
y

не фурычит, какие у тебя значения в RsGlobals потому что у меня они нулевые
Вообще это значения screen resolution, установленного в настройках игры, должны быть.
Конкретно у меня это 1600x900

(у меня там кстати очепятка, в PluginSdk это RsGlobal, а не RsGlobals... чисто на 1 символ опечатался у себя в коде. В любом случае я сам задаю значение, а не беру из игры)
 

yoonost

Известный
62
3
Вообще это значения screen resolution, установленного в настройках игры, должны быть.
Конкретно у меня это 1600x900

(у меня там кстати очепятка, в PluginSdk это RsGlobal, а не RsGlobals... чисто на 1 символ опечатался у себя в коде. В любом случае я сам задаю значение, а не беру из игры)
оооочень странно, не работают оба варианта, я думал оно не работает из-за того что в RsGlobal нулевые переменные но нет...


1719824817415.png
 

yoonost

Известный
62
3
Че за хуйня, оригинал функции верни вместо этих rwssssGloball288, ты же не логику описываешь , а входные данные меняешь
не много не понял, можешь дать пример? если я верну ориг функции то как он тогда будет данные менять