 |
Cheat Engine The Official Site of Cheat Engine
|
| View previous topic :: View next topic |
| Author |
Message |
FerrisBuellerYourMyHero Master Cheater
Reputation: 0
Joined: 14 Feb 2007 Posts: 401 Location: Inside your <kernel>
|
Posted: Fri Nov 21, 2008 4:22 pm Post subject: |
|
|
| tombana wrote: | | _void_ wrote: | | tombana wrote: | My code is not a proxy dll. AFAIC a proxy dll is a dll which has the complete original interface rewritten and forwards all the functions.
My dll only changes some of the addresses in the interface to point to my own functions. There is no hooking involved with inline jumps. (Only in the very beginning, but that hook is removed right away).
As I said, the code I posted is not detected by gameguard. |
It's not detected by GameGuard because it's already prevented by GameGuard. You're detouring the CreateDevice to you're own function, that isn't proxying? |
Yes it's proxying but it's only proxying one function. I think that normally speaking, a proxy dll means that every function is proxied.
And how do you mean it's already prevented by gameguard? It works completely fine... |
No its not proxying... proxying refers to a "proxy dll" which is a replacement dll which you put in the same folder as the game, so it loads that dll instead of the original... but yes your right, "proxying" replaces all the functions, so its like all functions are hooked... Its unnecessary to hook all functions because you aren't going to put code in all functions, only ones that you need... Like EndScene for example, by drawing (whatever you want to draw) in EndScene it successfully draws over the game because your drawing is drawn after the game draws all the shit its going to draw... If you drew in a BeginScene hook after calling BeginScene you wouldn't see what you drew because the game would draw over it!! Things are drawn in order from first to last, whatever is drawn last will be on top of whatever was drawn first... get it?
HOOKING is what tombana is doing... He's just hooking the functions he needs, not everything!! And it also doesn't use a proxy dll, he's injecting his dll instead of placing it in the same folder as the dx app as "d3d9.dll"
So thats why hooking is alot better than proxying...
tombana do you know a way to hook the directx functions you desire (like EndScene) after Direct3DCreate8/9 is called and after Create Device is called? Currently my method is the same as yours, you have to inject your dll so that Direct3DCreate(x) is hooked before the game calls it...
I would like my directx hook to work even if its injected after that. Let me know if you find a way that it can be done. I'll do the same
_________________
You know, life moves pretty fast. If you don't stop and look around once in a while, You could miss it!
 |
|
| Back to top |
|
 |
tombana Master Cheater
Reputation: 2
Joined: 14 Jun 2007 Posts: 456 Location: The Netherlands
|
Posted: Fri Nov 21, 2008 4:54 pm Post subject: |
|
|
| Quote: |
tombana do you know a way to hook the directx functions you desire (like EndScene) after Direct3DCreate8/9 is called and after Create Device is called? Currently my method is the same as yours, you have to inject your dll so that Direct3DCreate(x) is hooked before the game calls it...
I would like my directx hook to work even if its injected after that. Let me know if you find a way that it can be done. I'll do the same  |
That's also what I was searching for Because with some injection methods it injects 'too late' and then Direct3DCreateX is already called.
If the hack is only for a specific game and only for a specific version of the game, you might be able to find some static address/pointer to where the game stores the interface-pointer. Other than that, I have no clue on how to do it.
By the way, the method I use doesn't do hooking as in replacing the first 5 bytes of the function with a jump, because that's detected I think (never tried it) but it 'hooks' by changing only the pointer in the interface. And GG can't detect that because the interface is made up the way it is to be dynamic, so the addresses could change from time to time.[/quote]
|
|
| Back to top |
|
 |
dnsi0 I post too much
Reputation: 0
Joined: 04 Jan 2007 Posts: 2674
|
Posted: Sun Nov 23, 2008 9:53 am Post subject: |
|
|
| I solved that... It is really easy. All you ahve to do is check for the process. Get all of its threads. Suspend it, Inject the dll. Run all threads.
|
|
| Back to top |
|
 |
horschtl How do I cheat?
Reputation: 0
Joined: 14 Dec 2008 Posts: 1
|
Posted: Sun Dec 14, 2008 3:43 pm Post subject: |
|
|
| dnsi0 wrote: | | I made a delphi directx overlay in delphi. If you really want It will give it to you... |
I know it's not good to ask for something on the first post, but:
Would you give it to me? I'm looking a very long time for a Delphi Demo / Tutorial / Code Snippet.
Thanks
|
|
| Back to top |
|
 |
pedropmp Cheater
Reputation: 0
Joined: 17 Jan 2010 Posts: 27
|
Posted: Mon Feb 01, 2010 5:45 pm Post subject: |
|
|
dnsi0, if you can provide the tutorial to me as well I'll be grateful
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
|
|