EnumVisibleObjects problem menu

User Tag List

Page 7 of 8 FirstFirst ... 345678 LastLast
Results 91 to 105 of 113
  1. #91
    skra's Avatar Member
    Reputation
    1
    Join Date
    Apr 2009
    Posts
    33
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    are you using the same function he does? "0x0047BBC0" is with the filter isn't it?

    EnumVisibleObjects problem
  2. #92
    Cromon's Avatar Legendary


    Reputation
    840
    Join Date
    Mar 2008
    Posts
    714
    Thanks G/R
    0/7
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Im using the same:
    Code:
    typedef void (__cdecl* tEnumVisibleObjects)(void*, INT);
    typedef DWORD (__cdecl* tGetObjectByGUID)(UINT64);
    
    tEnumVisibleObjects EnumVisibleObjects = (tEnumVisibleObjects)0x0047B940;
    tGetObjectByGUID GetObjectByGUID = (tGetObjectByGUID)0x0047BBC0;
    
    int __cdecl EnumObject(UINT64 guid, INT)
    {
    	FILE* fGuidLog = fopen("C:\\GUIDLog.txt", "a");
    	DWORD dwAddr = GetObjectByGUID(guid);
    	UINT typeid_ = 0.0f;
    	ReadProcessMemory(GetCurrentProcess(), (LPCVOID)(dwAddr + 0x14), &typeid_, 4, 0);
    	fprintf(fGuidLog, "Type: %u\n", typeid_);
    	fclose(fGuidLog);
    	return 1;
    }

  3. #93
    YetiHunter's Avatar Member
    Reputation
    6
    Join Date
    Aug 2006
    Posts
    57
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    unfortunately that doesn't work either. perhaps the problem lies somewhere else... =/

  4. #94
    adaephon's Avatar Active Member
    Reputation
    76
    Join Date
    May 2009
    Posts
    167
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by YetiHunter View Post
    unfortunately that doesn't work either. perhaps the problem lies somewhere else... =/
    The problem lies somewhere else. I could run your code fine (using a memory reader that is pretty much same as Apoc's WhiteMagic and replacing your Offsets.Whatever with 0xDEADBEEF). Double check your offsets.

    A few comments though:
    Code:
                if (Me == IntPtr.Zero)
                {
                    Me = ClntObjMgrGetWoWLocalPlayerWow();
                    ObjectList.Add(Me);
                }
    is incorrect. ObjectList is the result of a LINQ query, so anything you add to it will not be maintained when you next query it.

    Code:
    Main._frameCounter % 10 == 0
    I'm assuming you're incrementing that frame counter elsewhere. Otherwise, you will either remove invalid entries every frame, or no frames (depending on _frameCounter's initial value).

  5. #95
    YetiHunter's Avatar Member
    Reputation
    6
    Join Date
    Aug 2006
    Posts
    57
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    strange. i just replaced the Offsets enum with "0x0047BBC0" (just checked it again and according to the infodump thread "0047BBC0 ClntObjMgrObjectPtr
    " is correct) but it still doesn't work.
    i also changed the "me-updater" to "Me.UpdateObjectPointer(GetActivePlayerPtr)" and yes i'm incrementing the "_framecounter" somewhere else.

  6. #96
    adaephon's Avatar Active Member
    Reputation
    76
    Join Date
    May 2009
    Posts
    167
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    And your other offsets? EnumVisibleObjects: 0x0047B940, GetActivePlayer: 0x0047A5C0? Have you logged information out to file or whatever to ensure that you are actually getting to where you are calling GetObjectByGUID? Peraps there is something else in your code that is causing the method to exit before even getting there?

    My assumption would be that you have something else in your code that is causing a problem - either a non-fatal exception that stops the method running, a semantically incorrect if-statement that stops the method running, or some other error in some location. Try to log stuff out to files to get a better idea of the flow of your program and what is getting called where/when etc.

    Also, it wasn't the Me = ClntObjMgrGetWoWLocalPlayerWow(); line that had the problem - it was the ObjectList.Add(Me); -this doesn't make sense, as ObjectList is a LINQ expression that is built from a separate collection on every get operation, meaning anything you add to it is not persistent.

  7. #97
    YetiHunter's Avatar Member
    Reputation
    6
    Join Date
    Aug 2006
    Posts
    57
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    yes those offsets are fine too =/ i'll log the stuff and report back thank you very much for your help

  8. #98
    YetiHunter's Avatar Member
    Reputation
    6
    Join Date
    Aug 2006
    Posts
    57
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    ok i now know the problem ^^ thanks alot again for the brilliant idea of logging stuff tu a text file xD

  9. #99
    adaephon's Avatar Active Member
    Reputation
    76
    Join Date
    May 2009
    Posts
    167
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Brilliant idea? That should be your first step! I assumed you had already done that to some extent

  10. #100
    YetiHunter's Avatar Member
    Reputation
    6
    Join Date
    Aug 2006
    Posts
    57
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    i tried it via debugging and gui, but a file is far better than both and i did't have that idea

  11. #101
    draco1219's Avatar Sergeant
    Reputation
    -6
    Join Date
    Jan 2011
    Posts
    45
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I know it's been a while since a post was made to this thread, but since it is related I didn't want to spawn a new thread.

    This is running against WoW version 4.0.6.

    I am calling EnumVisibleObjects (passing a pointer to the callback function) from my EndScene hook.

    The odd thing is, is that it hits my callback function once with a valid GUID and then it never hits it a second time it simply crashes the client with no error message or crash screen it just simply closes it.

    Right now my callback is doing nothing but returning 1 (to indicate to keep enumerating).

    I know I am using the correct offset since it is atleast calling it once and I am using the correct delegates since it is calling the function and then calling my callback.

    The only difference is, is that my object manager is not static.

    I cannot for the life of me figure out what the issue could be.

    Does anyone have any ideas why it would hit it once then close WoW? I do not get any access violations or anything else.

    Thanks!

  12. #102
    MaiN's Avatar Elite User
    Reputation
    335
    Join Date
    Sep 2006
    Posts
    1,047
    Thanks G/R
    0/10
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by draco1219 View Post
    I know it's been a while since a post was made to this thread, but since it is related I didn't want to spawn a new thread.

    This is running against WoW version 4.0.6.

    I am calling EnumVisibleObjects (passing a pointer to the callback function) from my EndScene hook.

    The odd thing is, is that it hits my callback function once with a valid GUID and then it never hits it a second time it simply crashes the client with no error message or crash screen it just simply closes it.

    Right now my callback is doing nothing but returning 1 (to indicate to keep enumerating).

    I know I am using the correct offset since it is atleast calling it once and I am using the correct delegates since it is calling the function and then calling my callback.

    The only difference is, is that my object manager is not static.

    I cannot for the life of me figure out what the issue could be.

    Does anyone have any ideas why it would hit it once then close WoW? I do not get any access violations or anything else.

    Thanks!
    If the delegate you pass is an instance function, it will not work. You can wrap whatever arg you would like to pass in a GCHandle, and the second arg in the callback/third arg in EnumVisibleObjects is a userarg.
    [16:15:41] Cypher: caus the CPU is a dick
    [16:16:07] kynox: CPU is mad
    [16:16:15] Cypher: CPU is all like
    [16:16:16] Cypher: whatever, i do what i want

  13. #103
    Azzie2k8's Avatar Member
    Reputation
    11
    Join Date
    Apr 2009
    Posts
    190
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by draco1219 View Post
    I know it's been a while since a post was made to this thread, but since it is related I didn't want to spawn a new thread.

    This is running against WoW version 4.0.6.

    I am calling EnumVisibleObjects (passing a pointer to the callback function) from my EndScene hook.

    The odd thing is, is that it hits my callback function once with a valid GUID and then it never hits it a second time it simply crashes the client with no error message or crash screen it just simply closes it.

    Right now my callback is doing nothing but returning 1 (to indicate to keep enumerating).

    I know I am using the correct offset since it is atleast calling it once and I am using the correct delegates since it is calling the function and then calling my callback.

    The only difference is, is that my object manager is not static.

    I cannot for the life of me figure out what the issue could be.

    Does anyone have any ideas why it would hit it once then close WoW? I do not get any access violations or anything else.

    Thanks!
    edit: nvm main was faster---

  14. #104
    draco1219's Avatar Sergeant
    Reputation
    -6
    Join Date
    Jan 2011
    Posts
    45
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by MaiN View Post
    If the delegate you pass is an instance function, it will not work. You can wrap whatever arg you would like to pass in a GCHandle, and the second arg in the callback/third arg in EnumVisibleObjects is a userarg.
    Thank you again for your response.

    Hmmm, that makes sense.... So as long as the delegate/callback function is static it should work?

    The odd thing is, is that it calls it once (somehow).

    On a side note, the EndScene detoured function I have is not a static function but it works fine. (or so I think). Should the EndScene detour also be static or does it have to be? Right now my ObjectManager is not static.

  15. #105
    lanman92's Avatar Active Member
    Reputation
    50
    Join Date
    Mar 2007
    Posts
    1,033
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    If you're in process, why not make it static? It's not like you can have multiple instances of the game's object manager.

Page 7 of 8 FirstFirst ... 345678 LastLast

Similar Threads

  1. Problem with CE.
    By Eldretch in forum World of Warcraft General
    Replies: 1
    Last Post: 08-08-2006, 06:49 PM
  2. realm list problem
    By robtuner in forum World of Warcraft General
    Replies: 2
    Last Post: 07-21-2006, 09:08 AM
  3. I have problem with BHW 3.0
    By sunrize1 in forum World of Warcraft General
    Replies: 1
    Last Post: 07-17-2006, 08:49 AM
  4. wow emu problem
    By bezike in forum World of Warcraft General
    Replies: 0
    Last Post: 07-09-2006, 04:45 PM
  5. Site problems
    By Shanaar in forum Community Chat
    Replies: 10
    Last Post: 05-14-2006, 01:15 AM
All times are GMT -5. The time now is 04:27 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search