Why are you checking if the game is ready for a hook in Present? That makes no sense, since your game would HAVE to be ready for a hook already if you've already hooked the Present function. That will do nothing, especially if this is your intended fix for hooking present.
Which brings me to the next point. You can hook present just fine using Gordon's VMT hook, however you cannot hook DIP because there is an 8byte check on the entire function. Therefore, it means your just adding useless shit to that hooked Present function when it would work whether you have or do not have that check.
I'm not claiming to know everything, I don't. I hope you don't take this too seriously or too lightly. Just be careful with your choice of words, you come out very arrogant. Wasn't meant to be a flame, though I realize it sounds that way, I wish you the best of luck in the future.
Well, a lot of us have the same problem, while others don't. Its really quite strange. All we know now is that there is an 8byte check on the DIP function and possibly even endscene. We also know that we cannot hook vtable, because HS compares it with its own copy in its own vtable.
The method we're trying is to use detours and use the vtable as an addressing reference. Though, it has not worked for us so far, probably cause of the aforementioned check on DIP.