[theory] alt method to get object list via codecave menu

Shout-Out

User Tag List

Page 2 of 2 FirstFirst 12
Results 16 to 27 of 27
  1. #16
    JuJuBoSc's Avatar Banned for scamming CoreCoins Purchaser
    Reputation
    1019
    Join Date
    May 2007
    Posts
    922
    Thanks G/R
    1/3
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I don't understand why you don't want to use IDA, your arguments is invalid.

    [theory] alt method to get object list via codecave
  2. #17
    TOM_RUS's Avatar Legendary
    Reputation
    914
    Join Date
    May 2008
    Posts
    699
    Thanks G/R
    0/52
    Trade Feedback
    0 (0%)
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    I don't understand what is wrong with method of getting list of objects people has been using for years (objmgr, firstobject, nextobject offsets).

  3. #18
    abuckau907's Avatar Active Member
    Reputation
    49
    Join Date
    May 2009
    Posts
    225
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by TOM_RUS View Post
    I don't understand what is wrong with method of getting list of objects people has been using for years (objmgr, firstobject, nextobject offsets).
    nothing is wrong with it. But if I had to do it from from scratch without this huge knowledge base, this is how I would do it. And it worked. Just trying something. My first time making a codecave that complex. Once I understand the linked list better, I'll find the static route for FirstObjectAddress. until then i'm trying to learn the structure of the list myself. with comments from y'all The goal is staticClientConnection + offset 1 + offset2 = first object but I can't do that atm without waiting for someone to post the offsets in an info dump. In the long run, my way isn't good, but to learn the structure of the linked list..it's working :/


    2 steps away from figuring out NextObject offset - for myself. -4:26am..
    *black out the byte arrays cuz i'm not sure where guid is stored haha

    edit: would be funny if i'm actually patching EnumVisibleObjects. not sure :P

    I made a codecave (that actually did something) and got wow to run it. That's big to me. Someone could have maybe commented how I did my POP's wrong in the first post..but no..i looked at that damn asm for hours, and finally got it, and it works, and I'm happy. I crashed wow a dozen times but I finally got it working. Why are you still posting here?(Unless you have something nice to say...)
    Last edited by abuckau907; 11-09-2012 at 09:02 AM.

  4. #19
    abuckau907's Avatar Active Member
    Reputation
    49
    Join Date
    May 2009
    Posts
    225
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Confirmed. Checked out the addresses, about 60 bytes in there are pointers to the addresses in my listbox. coincidence? I think i just found NextObject offset excuse me, re-found*

    i saw right away there were pointers at the very beginning of the structure, tried following them but then j checked farther down the buffer for more pointers and voila, found some that were == to other object's .baseaddress.




    Cannon to kill a mosquito.*

    edit: I think I saw 'unit type' in there at the beginning..04 for local player and 03 for the new few objects. hmm.. Next is guid and targetguid.
    : obviously this is old news for the 1337 ..maybe i should post it in programming section? sorry?


    [Solved] won't update further.
    Last edited by abuckau907; 11-09-2012 at 10:18 AM.

  5. #20
    berlinermauer's Avatar Master Sergeant
    Reputation
    3
    Join Date
    Mar 2010
    Posts
    89
    Thanks G/R
    0/0
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Just a Hint: You could overwrite the last - (Length of retn) byte as a hook. So you know when the buffer has filled. And in that Moment you just read from Start to last - (Length of retn).

    My humble Opinion is just, that it is way harder to do it this way. Also keep in mind, that every Patching of Memory (In-Process) is dangerous. There are tons of ways to detect it, like Method Hashing, CallStack WriteProcessMemoryHook and at last but not at least: Crashing on errorneous Arguments (Try-Out) that could get you.

    It is just that, EndScene is impossible to detect (as a bot) because most things do it. Fraps, Many Other Recording Suites, XFire, I guess the G19 will use that too.
    As long as you stay private with this, what you hereby made impossible because Blizzard is surfing here (Hey Blizzard ), you could use this.
    But keep in mind that as soon as they see this, they could securely ban you, as no legit application simply shall hook that.
    To have some Proof they can also verify you by your method, your "Coding Signature" etc.

    If I were you, I would use as much OutProcess as possible, but as much as InProcess as necessairy.
    It is all the same with In-Process Reading. Nobody knows if their Hooks aren't surveilled. If, for example, they would look for the passing of the "AntiAFKAddress" and than see, that the Hook is dynamically writing/reading out of it, they could get you.

    Nobody knows (Ok they DO know that this isn't true but could happen anytime, maybe even _WHILE_ playing) if they don't just log your cave as soon as it changes and send it to Blizzards Analytics.

    If you are interessted I would moreover recommend to have some fun with hooking WoWFunctions like TargetUnit. Useless but funny to be asked every time If the Player should be able to Target that Unit
    Maybe you would even Turn the Tide (Is it the Correct English saying?) and surveil Blizzard :P How about Hooking Warden itself and get asked everytime if it is allowed to ban you

    Doing this, keep in mind the Blacklist of scanned adresses. Some People said, writing to them results in an instant ban. Well I tried on a trial account, nothing except an crash happend. Then I wrote 0xC3 which is retn (If I remember right) and everything worked out well? Anyways I would try to not relay on my findings

  6. #21
    homer91's Avatar Active Member CoreCoins Purchaser
    Reputation
    79
    Join Date
    Oct 2008
    Posts
    259
    Thanks G/R
    59/7
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I said i don't want to use ida so you give me two more program to use with it. super. *******
    He is offering a more known solution, don't be rude :P It's rare to see someone taking the time and explaining this nice about IDA. However it's nice to see you wanting to learn about all this from scratch
    Last edited by homer91; 11-09-2012 at 05:08 PM.

  7. #22
    Frosttall's Avatar Active Member
    Reputation
    64
    Join Date
    Feb 2011
    Posts
    261
    Thanks G/R
    16/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by homer91 View Post
    He is offering a more known solution, don't be rude :P It's rare to see someone taking the time and explaining this nice about IDA. However it's nice to see you wanting to learn about all this from scratch
    Well I told him the way right from scratch: Search the value with cheatengine and their crossreferences and browse the memory regions with IDA.

    The irony is just that he said that he has to wait for others to post their offsets in the dump thread, but doesn't want to be depended of others regarding the IDB....

  8. #23
    abuckau907's Avatar Active Member
    Reputation
    49
    Join Date
    May 2009
    Posts
    225
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    The irony is... ?

    I had a semi-working bot, but had to wait for someone to post staticclientconnection each patch. The irony is...the irony is...the irony is...the irony is. *******

  9. #24
    Apoc's Avatar Angry Penguin
    Reputation
    1388
    Join Date
    Jan 2008
    Posts
    2,750
    Thanks G/R
    0/13
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    It's a pretty standard linked list. I'm not sure why you even need to use IDA to figure it out. CE, MHS, Olly, etc will let you disasm the EnumObjects func. Plus, you can create a pattern to find the address yourself.

    I mean, good job for trying a new method, but damn, you're going way out of your way to make it harder for yourself in the long run. (And slower)

  10. #25
    abuckau907's Avatar Active Member
    Reputation
    49
    Join Date
    May 2009
    Posts
    225
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    "It's a pretty standard linked list" --didn't know, now I do


    Yeah, agreed. I got rid of that code now actually, now I use FirstObjAddr = GetRegisterOnce(0x******,regName) where 0x**** is some function which uses localplayer.baseaddress in a register. Not perfect, for example if wow window in minimized the codecave won't get run :P I only call it once on AttachToProcess(). Works well enough. Should find a static route, but, I can update this myself every patch maybe.

    IDA - no not needed for simply finding the list - but I thought it'd make learning the structs (basicObj, unit, player etc) easier, but since I only use a very select few of the offsets anyway, CE and manually figuring it out works well enough so far.

    Thanks Apoc.


    found so far:
    NextObject
    Type
    Guid
    TargetGuid
    health/energy/level
    position

    ^^ that is enough to make a very very basic bot. It can know all enemies near you, with health and level. Can't do complicated stuff, but enough for grinding. Thanks everyone.
    Last edited by abuckau907; 11-12-2012 at 04:06 AM.

  11. #26
    abuckau907's Avatar Active Member
    Reputation
    49
    Join Date
    May 2009
    Posts
    225
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    More info.


    objmgrBasicObject has 2 pointers at the beginning of it. one is 'UnitFields' ? Both point a static distance away from .baseAddress, so maybe basing offsets from unitFields will require less offset updating. depending on which classes change in wow.

  12. #27
    abuckau907's Avatar Active Member
    Reputation
    49
    Join Date
    May 2009
    Posts
    225
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by berlinermauer View Post
    Just a Hint: You could overwrite the last - (Length of retn) byte as a hook. So you know when the buffer has filled. And in that Moment you just read from Start to last - (Length of retn).
    I could have, but it would require me to constantly poll from my .net app to check if _memRead(codeCaveFilledMarkerLoc) != 0 . but it would work. There are imperfections, and fixes, for both our solutions. Thnx for the tip.

    @Apoc "CE, MHS, Olly, etc will let you disasm the EnumObjects func." -- true, i meant that I don't know how to *find the functions* except by setting breakpoints on memory locs where I think they *will probably access* and go from there --> I don't know enough about the compile process/compilers/oop to even use tools like IDA to help me :/
    I assume wow compiler exports it's structures into the .exe (standard compiler stuff?) so some of you are just reading the structure prototype from wow.exe to get your offsets for like.. UnitObjs, PlayerObjs etc. But I don't know, or know what I need to learn.
    Last edited by abuckau907; 11-13-2012 at 04:56 PM.

Page 2 of 2 FirstFirst 12

Similar Threads

  1. [Theory] A method to not get caught while autoclicking.
    By skyth in forum World of Warcraft General
    Replies: 2
    Last Post: 11-13-2010, 09:46 PM
  2. Easy way to get object sizes
    By crediar in forum WoW Memory Editing
    Replies: 8
    Last Post: 05-19-2008, 05:07 PM
  3. Funny method to get attention, without caps or spam.
    By raffe in forum World of Warcraft Guides
    Replies: 10
    Last Post: 12-14-2007, 04:40 PM
  4. Eumerating the object list.
    By raindog in forum WoW Memory Editing
    Replies: 4
    Last Post: 12-08-2007, 11:27 PM
  5. [INFO] Halloween Game Object List
    By Hellgawd in forum World of Warcraft Emulator Servers
    Replies: 3
    Last Post: 11-06-2007, 10:45 PM
All times are GMT -5. The time now is 04:15 AM. 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