Просмотр полной версии : AmazingRP / d3d9 hook
Хочу рисовать поверх окна Амазинг РП (КРМП).
Проблема в том, что оверлей Стима / Дискорда почему-то там не работает (монопольный режим мб какой-то, я хз)
Я хочу сделать .dll-ку, чтобы хукнуть d3d9 EndScene
Это мне вообще чё надо делать? Искать адреса что хукать? Или какой метод...
Если да, то как его искать. Заранее благодарю за помощь
* с графикой ни разу не работал, поэтому можно МАКСИМАЛЬНО ПОДРОБНО, а не просто иди в угол
Лови сурс моего вх, делал в декабре 22 года, думаю для твоего вопроса найдется там ответ, т.к. там есть хук d3d9 для ImGui.
Был в привате, пока на амазинге не сказали что это всё зуйня, ну окей.
GitHub - VadimBoev/AmazingMinerWH (https://github.com/VadimBoev/AmazingMinerWH)
Contribute to VadimBoev/AmazingMinerWH development by creating an account on GitHub.
github.com
Всё что тебе нужно, это для решения твоего вопроса:
1. функции хука
2. адреса для хука d3d9 (тащишь его с гта, в примере всё есть)
С графикой на тот момент я тоже не работал, всего лишь нужен был рабочий imgui.
В нём нет деструктора, если захочешь коннектить и дисконнектить библиотеку, придется поискать как это реализовать
В нём нет деструктора
Да он нахер и не нужен мне на первое время)
2. адреса для хука d3d9 (тащишь его с гта, в примере всё есть)
окей. а в общем случае его как искать? или это уже отдельный разговор...
Лови сурс моего вх, делал в декабре 22 года
он же рабочий?
и еще. как ты обходил эту дурацкую систему выхода при виде cheat engine?
я помню какой то костыль делал с названием окна, но уже забыл...
Да он нахер и не нужен мне на первое время)
окей. а в общем случае его как искать? или это уже отдельный разговор...
он же рабочий?
и еще. как ты обходил эту дурацкую систему выхода при виде cheat engine?
я помню какой то костыль делал с названием окна, но уже забыл...
Искать адрес для хука d3d9 тебе в принципе не придется, в примере вх всё есть, там есть адреса.
Он был точно рабочим, сейчас думаю также всё должно работать, т.к. всё зависило только от библиотеки samp r3 которую они юзают и соответственно gta_sa.exe
и еще. как ты обходил эту дурацкую систему выхода при виде cheat engine?
На дворе был 2022 год, декабрь. У них тогда была какая-то защита от всей чепушни. Я просто инжектил DLL в момент авторизации и всё.
Т.е. заходил в игру, был какой-то инжектор, авторизация, сворачивал, инжектил, разворачивал и снова в игре и всё
вайега52
21.02.2024, 23:01
я помню какой то костыль делал с названием окна, но уже забыл...
вроде как оно и ищет по названию окна (антидебаггер, все дела)
F0RQU1N and
22.02.2024, 08:06
Хочу рисовать поверх окна Амазинг РП (КРМП).
так же как и всегда? просто создаешь топмост окно ,контекст и рисуешь
Я хочу сделать .dll-ку, чтобы хукнуть d3d9 EndScene
так ты хочешь В окне рисовать или ПОВЕРХ окна?
waparabka
22.02.2024, 08:29
https://github.com/AnWuPP/ImGui-Scoreboard здесь есть всё что тебе нужно
так ты хочешь В окне рисовать или ПОВЕРХ окна?
Значит, сама игра открывается в полноэкранном режиме. Я хочу, чтобы поверх игры рисовалось мое меню.
Как это будет реализовываться - поверх окна или в окне после того, как все остальное нарисуется - мне не важно.
Лови сурс моего вх, делал в декабре 22 года, думаю для твоего вопроса найдется там ответ, т.к. там есть хук d3d9 для ImGui.
Был в привате, пока на амазинге не сказали что это всё зуйня, ну окей.
GitHub - VadimBoev/AmazingMinerWH (https://github.com/VadimBoev/AmazingMinerWH)
Contribute to VadimBoev/AmazingMinerWH development by creating an account on GitHub.
github.com
Всё что тебе нужно, это для решения твоего вопроса:
1. функции хука
2. адреса для хука d3d9 (тащишь его с гта, в примере всё есть)
С графикой на тот момент я тоже не работал, всего лишь нужен был рабочий imgui.
В нём нет деструктора, если захочешь коннектить и дисконнектить библиотеку, придется поискать как это реализовать
https://github.com/AnWuPP/ImGui-Scoreboard здесь есть всё что тебе нужно
Ребят.
Спасибо за решения, но уж очень быстро вы ответили)
Работаю, не успеваю проверить. Когда проверю - отпишу, лучший ответ поставлю 😁
Если у кого-то ещё тоже есть примеры - скидывайте) чем больше, тем лучше
@0xFF (https://www.blast.hk/members/90962/), скажи пожалуйста, что это за функции (вкратце):
1.
C++:
std
::
uintptr_t
find_device
(
std
::
uint32_t
Len
)
;
2.
C++:
void
*
get_function_address
(
int
VTableIndex
)
;
Хуки ставятся по адресам, которые находит эта функция.
Эти адреса записаны в массиве с индексами 16 и 17.
Значит, что такое 16 и 17.
И что такое 0x128000 (аргумент find_device)?
вайега52
22.02.2024, 17:32
скажи пожалуйста, что это за функции
они взяты с этого гайда: link (https://www.blast.hk/threads/113060/)
первая, вроде как, ищет девайс по сигнатуре, а вторая получает адрес ифункции из вмт (virtual method table)
manukhov
22.02.2024, 18:01
Значит, что такое 16 и 17.
16 - Reset
17 - Present
Здесь полный список https://www.unknowncheats.me/forum/direct3d/66594-d3d9-vtables.html (https://www.blast.hk/redirect/aHR0cHM6Ly93d3cudW5rbm93bmNoZWF0cy5tZS9mb3J1bS9kaX JlY3QzZC82NjU5NC1kM2Q5LXZ0YWJsZXMuaHRtbA)
Можешь также найти у себя в DirectX SDK файл d3d9.h и смотреть это там
И что такое 0x128000 (аргумент find_device)?
Объем памяти, по которой будет происходить поиск методов D3D9
resetScene зачем хукать?
Пригодится если захочешь отцепить dll от процесса и чтобы очистить imgui из памяти
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot