Hooking DirectX9

Поділитися
Вставка
  • Опубліковано 27 жов 2024

КОМЕНТАРІ • 133

  • @TheKapei22
    @TheKapei22 6 місяців тому

    I tried this tutorial last year to no avail. Gave a break and tried it today. Works like a charm. Thanks a lot.

  • @redwing8725
    @redwing8725 3 роки тому +1

    this is amazing thank you! most tutorials on this subject don't properly explain the concepts, just tell you to copy and paste some 'magic' code

  • @giacomoarienti
    @giacomoarienti 4 роки тому +1

    I fall in love with your videos, they're just amazing.

  • @jamesking2439
    @jamesking2439 4 роки тому +6

    This is really cool! I used your hooking technique to make a texture extraction tool.

  • @SophiaNhya
    @SophiaNhya Рік тому

    Wow! Such a great tutorial tbh

  • @finlayhutchinson7370
    @finlayhutchinson7370 2 роки тому

    You are so good at giving tutorials. This was very helpful.

  • @Underkirby
    @Underkirby Рік тому +1

    Where can I go to reinstall the Microsoft Visual C++ 2010 Redistributable

  • @alieeeeennnnnn
    @alieeeeennnnnn 4 роки тому +1

    Hey, mate, you are back, and the video is good, useful for some games

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      Hey :) yea i felt bad for a while already not posting anything... finally made time for it.

  • @nyatsuri
    @nyatsuri 3 роки тому +3

    how to know if a game is using directx 9 or other engine??

  • @aronkovacs7515
    @aronkovacs7515 3 роки тому +2

    Hey! I downloaded DirectX and my d3dx9 file missing. Help please!

  • @matt2517
    @matt2517 2 роки тому

    This tutorial was really useful for me, thank you

  • @Aedcre
    @Aedcre 3 роки тому

    Thanks man awesome tutorial works fine :)

  • @overkiller1373
    @overkiller1373 2 роки тому +1

    I wrote everthing the same like you did and even copied the source code but still getting error... I even changed DetourFunction and DetourFunction to DetourAttach and DetourDetatch but now I got an error that the arguement ""PBYTE"" is incompatible with ""PVOID*""
    Edit: I gotta try the old detour files you have linked

  • @alphahex99
    @alphahex99 6 місяців тому

    How do I prevent the game from crashing when I resize it in Windowed mode after injecting DLL? This resize crashing persists even after the DLL is unloaded with Numpad0.

  • @alphahex99
    @alphahex99 2 роки тому +2

    07:55 If anyone's return value isn't matching the function type (E0120) be sure to change __stdcall* to __stdcall
    That was a pretty sneaky cut xd

    • @casualgamer1791
      @casualgamer1791  2 роки тому +1

      U can always use the code linked in the desc. Sometimes I fk up while recording

    • @alphahex99
      @alphahex99 2 роки тому +1

      @@casualgamer1791 Thanks. Awesome channel btw! Only a question of time before you hit 100k with quality like this ;)

  • @coldblackice
    @coldblackice 2 роки тому +1

    AWESOME tutorial! Major props for actually explaining the nitty-gritty of things, including the "Why"s of what you're doing.
    So many other UA-cam tutorial channels don't do this, they just silently record themselves typing code, or even worse, copying and pasting. Those kind of tutorials are *useless* for anyone wanting to actually learn about this vs. just looking for a quickie copy/paste end result.
    You have a great talent as a teacher. Awesome job!

    • @casualgamer1791
      @casualgamer1791  2 роки тому

      Thank you for the kind words. That is exactly the goal. Who if not us should realy understand what's going on below the surface.

  • @TukeShark
    @TukeShark 4 роки тому +1

    AYYYY he is back

    • @casualgamer1791
      @casualgamer1791  4 роки тому +1

      Hey :) Yea ... sorry about the long break. ll try to stay more consistent

    • @TukeShark
      @TukeShark 4 роки тому

      CasualGamer no problem sorry for my late response lmfao

  • @cybersec0x004
    @cybersec0x004 3 роки тому

    Holy shit, great tutorial

  • @alexfallas3219
    @alexfallas3219 2 роки тому

    The hook worked i believe, and pressing numpad closes it but its not beeing displayed. The Game is using DirectX7 but i read somewhere on GH that DirectX9 works also with lower versions. Ideas? The Game is a bit old so there is no fullscreen borderless but i still made it work and neither in window or borderless its displayed

  • @yanis_9267
    @yanis_9267 4 роки тому

    700th subscribers
    BEST TUTORIALS

  • @birdhunyar2327
    @birdhunyar2327 2 роки тому +1

    and what if a game runs on dirext8?

  • @f41nT
    @f41nT 2 роки тому

    Hook is successfully done but I can't see the drawing on my screen. I debugged the code and everything works fine, but as I said no graphics. Any idea why?

  • @tunguyen-wt5ck
    @tunguyen-wt5ck 2 роки тому

    i tried void** vTable = *reinterpret_cast(pDevice) and it still work but if i close my app it still remain in task list. what is the diffrent between (void**)(pTable) and (void***)(pTable)

  • @TailsFinance777
    @TailsFinance777 3 роки тому

    with your code made a hook to dx11 and it works

  • @TailsFinance777
    @TailsFinance777 3 роки тому

    thank man, easy coding for use I would like to see more comments

  • @Jerryyyy
    @Jerryyyy 2 роки тому

    Can I use this tutorial w DirectX11 games also? What is needed to change?

  • @binaryteam5448
    @binaryteam5448 4 роки тому +2

    dudeeee ur videossss are amazing by any chance could you do a tutorial with directx 11 imgui a hook and how we could draw an esp

  • @stellar4677
    @stellar4677 2 роки тому

    is there any way to draw like on the go? because it seems like you can only draw whats in the function and the only way to communicate between that function and the main cheat is through variables with a scope that reaches both... i'd like to make a function like DrawBox() or something so i can just draw boxes wherever i want (and call that function inside the main cheat and not the hookedEndScene func) but im not really too sure about how to do that ..

    • @casualgamer1791
      @casualgamer1791  2 роки тому

      short answer: No.
      Longer: The drawing needs to happen inside the EndSceene hook but you can get creative ofc. you can create and call functions/classes wich will lead to drawing outside the hook.

  • @hundowayve
    @hundowayve 4 роки тому

    hey man nice video do you think you can make a tutorial on drawing to a external transparent overlay

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      Thank you. Yes can and probably should do since that option works for all games

    • @hundowayve
      @hundowayve 4 роки тому

      @@casualgamer1791 hey thanks man fr i been looking everywhere for a cpp overlay window hack tutorial do u think if u make the tutorial you can show us how to draw esp and a menu to the overlay because i am trying to make my own apex legends cheat out of all the tutorials i have watched if so that would be amazing thanks

    • @hundowayve
      @hundowayve 4 роки тому

      @@casualgamer1791 and i subbed with notifs on btw

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      It will take a while until i'll have everything you are looking for.
      Here is some source code for an overlay which can be used for both esp and menu.
      guidedhacking.com/threads/direct2d-overlay-for-almost-any-application.8945/
      I will cover all those things eventually but will take time
      Edit: you do have to register to download it but its free so w/e

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      I probably should also mention the tutorial series by the all mighty fleep ^^
      ua-cam.com/video/06PpBTzVNts/v-deo.html

  • @CrashedCrash
    @CrashedCrash 4 роки тому

    Ur tutorials are one point 👌🏻 maybe a combination with a ring0 driver?

  • @Cr4ntz
    @Cr4ntz 2 роки тому

    Could someone explain the pointer hell going on at void ** vTable = *reinterpret_cast(pDevice);

    • @Cr4ntz
      @Cr4ntz 2 роки тому

      Figured it out, The VMT is usually located at the start address of the created object. Another way of writing it:
      uintptr_t* vTable = (uintptr_t*)(*(uintptr_t*)pDevice) // basically just dereference the object pointer, Voila there's the VMT
      // and for EndScene:
      uintptr_t* EndScene = vTable + 168; // 42 x 4

    • @casualgamer1791
      @casualgamer1791  2 роки тому

      @@Cr4ntz gj!

  • @PubgGamer-sz1in
    @PubgGamer-sz1in 5 місяців тому +1

    Unfortunately the code is giving me an erro "unresolved symblo external_Direct3DCreat9@4 and D3DXCreateFontA@48. I don't know why and I did everything correctly.Can someone help me here.
    Am actually a begginer but that much. Actually this video is the only video that explains everything very well for beginners. Anyways thumbs up my friend

    • @logarithmmm
      @logarithmmm 12 днів тому

      you might be compiling under x64 instead of x86, I had this error and it went away so lmk if it helps. I did manage to get everything to compile but sadly it's not displaying anything with the game I'm running

  • @ajinkyax
    @ajinkyax 3 роки тому

    subscribed :)

  • @trippy9865
    @trippy9865 3 роки тому +1

    Would this get us VAC banned?

  • @SF-eg3fq
    @SF-eg3fq 3 роки тому

    Hi, whats the differences between an external and an internal "hook"? in both scenarios we are injecting a dll into the process to "execute" our functions.

    • @casualgamer1791
      @casualgamer1791  3 роки тому +1

      External referns to a standalone application used to read/manipulate the game memory usually using RPM and WPM. Internal means using a dll injected into the process

  • @ViralVibesReal
    @ViralVibesReal 4 роки тому

    Ok so am an Android Hacker and now I want to learn PC game hacking too, where do I start/what do I do first?
    I have knowledge in Assembly Language, C++, Hex Patching, and some Smali. For PC, so far I know Cheat Engine, and Basic Read/Write Memory

    • @casualgamer1791
      @casualgamer1791  4 роки тому +1

      hello :) this could be a starting point: guidedhacking.com/threads/start-here-beginners-guide-to-learning-game-hacking.5911/

  • @mac6417
    @mac6417 3 роки тому

    every video i watch its like if u dont understand this watch this and this is like the 50th video ive had to watch to understand the first one lol, but its a process

  • @mattrosette1494
    @mattrosette1494 3 роки тому

    I love it

  • @hodayfa000h
    @hodayfa000h 9 днів тому

    *sigh* time to learn direct3d... i already know opengl so that is a plus

  • @oraclematon9277
    @oraclematon9277 3 роки тому +1

    d3d11 hook tutorial plz , there are no d3d11 tutorials on the internet

  • @johndoe14988
    @johndoe14988 4 роки тому

    awesome!

  • @TailsFinance777
    @TailsFinance777 3 роки тому

    how to clear drawing on every call so that memory does not clog? if(GetKeyState(VK_DOWN)) /* key switch color text
    font->DrawText(...); /* on */
    /*memory clog*/
    else
    font->DrawText(...) /* off */
    /*memory clog*/

    • @TailsFinance777
      @TailsFinance777 3 роки тому +1

      it's okay. Type: const D3DRECT*
      Pointer to an array of D3DRECT structures that describe the rectangles to clear. Set a rectangle to the dimensions of the rendering target to clear the entire surface. Each rectangle uses screen coordinates that correspond to points on the render target. Coordinates are clipped to the bounds of the viewport rectangle. To indicate that the entire viewport rectangle is to be cleared, set this parameter to NULL and Count to 0.

    • @casualgamer1791
      @casualgamer1791  3 роки тому

      gj

  • @kusczak3234
    @kusczak3234 Рік тому

    I imagined if I can call from spesific NumVertices and primCount to load

  • @nkroggames7459
    @nkroggames7459 4 роки тому

    i have 2 error E0020 identifier "DetourFunction" is undefined and Severity cannot open source file "detours.h"

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      Severity is an IDE? Must be a linker issue. Make sure the detours file is linked properly

  • @logarithmmm
    @logarithmmm 12 днів тому

    HRESULT result = pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, d3dparams.hDeviceWindow, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dparams, &pDevice);
    this part is what fails for me, the dll is able to be injected and all but nothing is shown

  • @stryder12345
    @stryder12345 4 роки тому

    Hi, could you explain how to set rectangle in the right bottom of corner?

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      you just have to change the values of these coordinates: rectx1, rectx2, recty1, recty2, (depending on the window size of the game)

  • @jaolmu
    @jaolmu 4 роки тому

    the game crashes when i eject the dll, i assume its to do with the detour but i dont really know much about hooking as ive only just started coding internals, any idea why this could be? great video btw :)

    • @casualgamer1791
      @casualgamer1791  4 роки тому +1

      Your assumtion is correct i noticed this issue after releasing the video :/ one has to unhook the directX stuff. Ill see if i can find how to do that

    • @jaolmu
      @jaolmu 4 роки тому

      @@casualgamer1791 okay cool, I'll look into it myself at some point, thanks!

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      Here we go:
      DetourRemove((PBYTE)pEndScene, (PBYTE)hookedEndScene);
      Ima add it to the linked code aswell

    • @jaolmu
      @jaolmu 4 роки тому

      @@casualgamer1791 great thanks! I took it upon myself to learn more about detours so I figured it out a while back. But thank you anyways!

  • @harliepole4862
    @harliepole4862 2 роки тому

    Please I'm begging you🙏🙏 If possible could you make a content to show us how to make a d3d menu using memory addresses. If possible😭😭

  • @DeSibyl
    @DeSibyl 4 роки тому

    Can you possible make a video on how to hook different versions of DirectX? Some games (most now-a-days) use Dx11... Also, is there any way to get this to work for 64bit dll's? I always get an error with Detours when I try it with 64bit

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      regarding X11: yes will do
      About 64bit dlls: I think the version I linked is 1.5 which does not support x64. Have a look at minhook

    • @DeSibyl
      @DeSibyl 4 роки тому

      @@casualgamer1791 I tried minhook, but anytime I try and inject it says it fails to load minhook.64.dll or minhook.86.dll depending if I'm building 64 or 32... Apparently, minhook is broken or something... I even took the example project they provide and it fails to compile saying "failed to load minhook.lib"... If I manually add minhook.86.lib and minhook.64.lib then it says the respective dll's are missing. I add those, and it wont inject, probably because for whatever reason minhook wants to inject its minhook dll with the dll I'm trying to inject...

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      Sounds more like a project settings issue

  • @hieupc1307
    @hieupc1307 3 роки тому

    How to make it working on the game does not supports DirectX?

    • @casualgamer1791
      @casualgamer1791  3 роки тому +1

      You can only hook things that the game uses. Maybe it uses opengl? Then you gotta look into how to hook that. Whatever graphics lib it uses is the one u gotta hook.

    • @hieupc1307
      @hieupc1307 3 роки тому

      @@casualgamer1791 thanks you

  • @あまね-y6t
    @あまね-y6t 4 роки тому

    How would it be like if you use latest version of MSDetour. DetourFunction is no longer valid, but there is DetourAttach instead. I tried to do so, but my game crashes everytime.

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      No clue :/ why use the latest version?

    • @Cr4ntz
      @Cr4ntz 2 роки тому

      Did you use DetourTransactionBegin() before DetourAttach() and finally DetourTransactionCommit()? Otherwise it won't work.
      "The attach, detach, and thread operations do not take effect until the program commits the transaction using the DetourTransactionCommit or DetourTransactionCommitEx API. Alternatively, the program can abort the transaction using the DetourTransactionAbort API."

    • @あまね-y6t
      @あまね-y6t 2 роки тому

      @@Cr4ntz Thanks for answering the question with well explanation. I've already figured it out and even replaced it with minhook in my hack.
      Ive been struggling with the assembly thesedays but it's another story...
      Anyway thank you so much. I appreciate your kindness! I would've been very happy if I got this answer at that time. Please help other people like me too!

    • @Cr4ntz
      @Cr4ntz 2 роки тому

      @@あまね-y6t No problem bro, remember, always read the documentation it's always worth your time (:

  • @keyboardk9
    @keyboardk9 4 роки тому

    quick question
    for some reason when i try to include d3dx9.h, it cant open the source file even though i have the include and library directories set.
    screenshot: prnt.sc/t13z5x
    any tips?
    edit: i have the version of the sdk found in the video, and can even find the d3dx9 header file in the include file through windows explorer prnt.sc/t146h2, but for some reason, it still won't allow me to include it into the project.

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      In the Project Setting > VC++ Directories > Include Directories. The path has to be wrong/missing

  • @harliepole4862
    @harliepole4862 2 роки тому

    Hi Bro, does making d3d menu required hooking directx?

    • @casualgamer1791
      @casualgamer1791  2 роки тому +1

      Id recommend it. But tecnically not necessary. If you do not want to hook look at external overlay

  • @Cat-wh6gm
    @Cat-wh6gm 3 роки тому

    is this like how some cheats use discord overlay for their cheats?

    • @uwu-pq1om
      @uwu-pq1om 3 роки тому

      what the...

    • @casualgamer1791
      @casualgamer1791  3 роки тому

      Actually not a stupid question imo. Those cheats hook the discord overlay instead of creating their own

  • @ЭдЛесничий-щ8т
    @ЭдЛесничий-щ8т 4 роки тому

    🙏 thank u

  • @brendonbone1459
    @brendonbone1459 4 роки тому

    do you have detours 1.5 .h and .lib for x64

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      Solution ripped from UC:
      github.com/Microsoft/Detours/wiki/FAQ#where-can-i-find-detourslib-and-detoursh
      You have to build detours.lib from the source at: github.com/Microsoft/Detours/tree/master/src
      1. Clone the Detours repo to your computer.
      2. Open "x64 Native Tools Command Prompt"
      3. Change directory to the src/ folder of the Detours repo
      4. Enter "nmake"
      5. The detours.lib should be in the ../lib.X64, one folder above the src/

  • @apthecal2045
    @apthecal2045 4 роки тому

    How can i inject it to a 64 bit game?

  • @الحمدلله-ح2س2ر
    @الحمدلله-ح2س2ر 3 роки тому

    is this hook hack can work in emulator like memu with freefire

  • @-king1-rus210
    @-king1-rus210 4 роки тому +1

    Hello, how do I add a menu open / close?

    • @casualgamer1791
      @casualgamer1791  4 роки тому +1

      One option would be:
      1. Add global variable: bool showMenu = false;
      2. your main loop:
      while (true) {
      //code here
      if (GetAsyncKeyState(VK_NUMPAD1)) {
      showMenu = !showMenu;
      }
      //more code here
      }
      3. in your hooked function put everything into a if:
      if (showMenu) {
      //your pDevice->Clear etc here
      }

    • @-king1-rus210
      @-king1-rus210 4 роки тому +1

      @@casualgamer1791 Please help me! Did as you wrote, but when I press a key, the program shuts down

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      This code tested and working for me: pastebin.com/Tbr6FbaL

    • @-king1-rus210
      @-king1-rus210 4 роки тому

      @@casualgamer1791 Thanks no longer needed, I did a great job! But I got another one, for some reason Ks go crashes

    • @-king1-rus210
      @-king1-rus210 4 роки тому

      @@casualgamer1791 And it became crash after I wrote a function to draw text

  • @jorgemontecillo3715
    @jorgemontecillo3715 4 роки тому

    Is it similar to dgvoodoo software?

  • @alisavitar2284
    @alisavitar2284 Рік тому

    this is the most unfriendly video for people who have no idea how to make a cheat and want to start making one
    i understood nothing after downloading directx sdk

  • @lopo8000
    @lopo8000 2 роки тому

    how in hell do u memorize all those inputs?

  • @tiantian9074
    @tiantian9074 3 роки тому

    thank u

  • @user-jf9bx
    @user-jf9bx 4 роки тому +1

    Why are u using the light-theme for VS?! Are you the devil or something???

    • @casualgamer1791
      @casualgamer1791  4 роки тому

      ^^ never even considered changing it tbh. any theme you would recommend?

    • @TukeShark
      @TukeShark 4 роки тому +1

      CasualGamer the dark theme one

  • @_WitchKing_
    @_WitchKing_ 2 роки тому

    So, does it work in fullscreen?

    • @casualgamer1791
      @casualgamer1791  2 роки тому +1

      Generally speaking yes it should

    • @_WitchKing_
      @_WitchKing_ 2 роки тому

      @@casualgamer1791 thank U for the answer, im tryin to make an internal overlay to LoL, but first im learning diffrent options on a diffrent games ;)

  • @kiminotoriko6178
    @kiminotoriko6178 3 роки тому

    Can I have subtitle please

  • @anonymousk5899
    @anonymousk5899 4 роки тому

    plz make video more
    i like this video

  • @wajidkhan-ns7ed
    @wajidkhan-ns7ed 3 роки тому

    Bro make a video for ios pub g esp hack

  • @uliveulearnandregret
    @uliveulearnandregret Рік тому

    anyone else get dllinject failed finding address of msvp140D!?cout@std@@3V?$basic_ostream@DU?$c...