[WoW] 1.12.1.5875 Info Dump Thread menu

User Tag List

Page 39 of 42 FirstFirst ... 3536373839404142 LastLast
Results 571 to 585 of 619
  1. #571
    Jadd's Avatar 🐸 Premium Seller
    Reputation
    1515
    Join Date
    May 2008
    Posts
    2,433
    Thanks G/R
    81/336
    Trade Feedback
    1 (100%)
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by tutrakan View Post
    because they are all the same
    That's a negative. Light's Hope has additional detection for movement cheats etc. And it's closed source, so no, I can't link you a reference.

    [WoW] 1.12.1.5875 Info Dump Thread
  2. Thanks Saridormi (1 members gave Thanks to Jadd for this useful post)
  3. #572
    Saridormi's Avatar Contributor
    Reputation
    307
    Join Date
    Mar 2007
    Posts
    556
    Thanks G/R
    19/17
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by tutrakan View Post
    because they are all the same:
    this isn't true at all, you can't just look at open source emulator code to figure out what a specific server is doing


  4. #573
    dreadcraft's Avatar Member
    Reputation
    12
    Join Date
    Jun 2018
    Posts
    33
    Thanks G/R
    30/11
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Hey gents, quick question I was hoping you all could help out with.

    For 1.12 - I'm writing an out of process bot in python for shits and gigs.
    I am using the red error text aka CGGameUI__s_lastErrorString to see when I have certain UI issues going on.
    But the game leaves the last string sitting at that address until the next error occurs, so it's hard to tell if this error is relevant.
    Without hooking into any functions, would you know a way to make that determination?
    I see that WoW!Sharp used the same address to detect ui errors but it would wipe it down afterwards by writing an arbitrary string to it ("You are Dead").
    Is writing over the address after I have grabbed the error a safe solution?
    Would elysium's warden detect me writing an empty byte string to CGGameUI__s_lastErrorString ?

    Thanks in advance

  5. #574
    tutrakan's Avatar Contributor
    Reputation
    134
    Join Date
    Feb 2013
    Posts
    175
    Thanks G/R
    124/52
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Saridormi View Post
    this isn't true at all, you can't just look at open source emulator code to figure out what a specific server is doing
    I was talking about the open source ones that have a lot of similarities.

    Beside that, you both have a very good point, i didn't think about these custom anti cheats when i asked my question.
    Last edited by tutrakan; 06-09-2018 at 05:12 PM.

  6. #575
    Saridormi's Avatar Contributor
    Reputation
    307
    Join Date
    Mar 2007
    Posts
    556
    Thanks G/R
    19/17
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by dreadcraft View Post
    Hey gents, quick question I was hoping you all could help out with.

    For 1.12 - I'm writing an out of process bot in python for shits and gigs.
    I am using the red error text aka CGGameUI__s_lastErrorString to see when I have certain UI issues going on.
    But the game leaves the last string sitting at that address until the next error occurs, so it's hard to tell if this error is relevant.
    Without hooking into any functions, would you know a way to make that determination?
    I see that WoW!Sharp used the same address to detect ui errors but it would wipe it down afterwards by writing an arbitrary string to it ("You are Dead").
    Is writing over the address after I have grabbed the error a safe solution?
    Would elysium's warden detect me writing an empty byte string to CGGameUI__s_lastErrorString ?

    Thanks in advance
    If you're writing memory you're not exactly "out of process" anymore :P

    That said, if WoW never writes an empty string there then they *could* detect it, but I'd be surprised if they bothered seeing as they'd essentially have to track changes to it.


  7. #576
    dreadcraft's Avatar Member
    Reputation
    12
    Join Date
    Jun 2018
    Posts
    33
    Thanks G/R
    30/11
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Right you are Saridormi, none of my code currently does any memory writes, just reading.
    For this occasion only I was considering it but I would rather not have to.
    I just haven't come up with a better solution yet.
    Thank you for your input.

  8. #577
    Saridormi's Avatar Contributor
    Reputation
    307
    Join Date
    Mar 2007
    Posts
    556
    Thanks G/R
    19/17
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by dreadcraft View Post
    Right you are Saridormi, none of my code currently does any memory writes, just reading.
    For this occasion only I was considering it but I would rather not have to.
    I just haven't come up with a better solution yet.
    Thank you for your input.
    I don't have anything off the top of my head but if I were to try and track it down, I'd maybe look for the timeout that gets set when the error message is shown.

    Red errors appear on screen and fade out after a certain amount of time, so my guess is there's a member somewhere that tracks that.


  9. #578
    badusername1234's Avatar Active Member
    Reputation
    26
    Join Date
    Apr 2017
    Posts
    47
    Thanks G/R
    18/6
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    char __fastcall CGWorldMap::GetWorldPosition(float* inPos, int mapid, float *outX, float* outY) is at 0x4a7360, it converts world coordinates (inPos) to 0-1 range map coordinates

    does anyone have the function that does the inverse to this?

    Edit: Oh I think I've found it at 0x4a7100 - the coordinates are weird though... I think I'm gonna need to read the area dbc to get this working?
    Last edited by badusername1234; 06-17-2018 at 02:36 PM.

  10. Thanks tutrakan, Saridormi (2 members gave Thanks to badusername1234 for this useful post)
  11. #579
    tutrakan's Avatar Contributor
    Reputation
    134
    Join Date
    Feb 2013
    Posts
    175
    Thanks G/R
    124/52
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by badusername1234 View Post
    char __fastcall CGWorldMap::GetWorldPosition(float* inPos, int mapid, float *outX, float* outY) is at 0x4a7360, it converts world coordinates (inPos) to 0-1 range map coordinates

    does anyone have the function that does the inverse to this?

    Edit: Oh I think I've found it at 0x4a7100 - the coordinates are weird though... I think I'm gonna need to read the area dbc to get this working?
    I couldn't find such a func. It seems that you have to calculate it by yourself:
    Code:
    [StructLayout(LayoutKind.Sequential)]
    public unsafe struct WowClientDB_Zone
    {
        public Zone* m_records;
        public int m_numRecords;
        public Zone** m_recordsById;
        public int m_maxID; 
        public int m_loaded;
    };
    
    [StructLayout(LayoutKind.Sequential)]
    public unsafe struct Zone
    {
        public int Id;
        public int MapId;
        public int AreaId;
        public sbyte* InternalName;
        public float Left;
        public float Right;
        public float Top;
        public float Bottom;
    };
    
    [UnmanagedFunctionPointer(CallingConvention.StdCall)]
    public delegate int GetMapAreaFromPos(float x, float y);
    public static GetMapAreaFromPos _getMapAreaFromPos = Marshal.GetDelegateForFunctionPointer<GetMapAreaFromPos>((IntPtr)0x004A6EC0);
    
    public static C3Vector MapToWorld(C2Vector map)
    {
      	var ret = new C3Vector();
    
    	var zoneid = _getMapAreaFromPos(map.X, map.Y);
    
    	var zonedb = (WowClientDB_Zone*)0x00C0D5B4;
    
    	if (zoneid >= 0 && zoneid <= zonedb->m_maxID)
    	{
    		var zone = zonedb->m_recordsById[zoneid];
    		if (zone != null)
    		{
    			ret.X = zone->Top + map.Y * (zone->Bottom - zone->Top);
                            ret.Y = zone->Left + map.X * (zone->Right - zone->Left);
                            ret.Z = 25f;   // todo - FindMeshHeight
    		}
    	}
    	return ret;
    }
    Last edited by tutrakan; 06-18-2018 at 02:41 PM.

  12. Thanks DarkLinux, Saridormi, badusername1234 (3 members gave Thanks to tutrakan for this useful post)
  13. #580
    badusername1234's Avatar Active Member
    Reputation
    26
    Join Date
    Apr 2017
    Posts
    47
    Thanks G/R
    18/6
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Not sure what the full enum is but some flags I've just found:

    7 = yellow ? mark (you can hand in a quest)
    5 = yellow ! mark (npc has a quest for you)
    3 = silver ? mark (you have a quest in progress here)
    1 = silver ! (quest too high level)

  14. #581
    youyanruyu's Avatar Member
    Reputation
    1
    Join Date
    Jul 2011
    Posts
    13
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I try to implement superfly hack with click-to-move in my bot, then find out that the pitch of character isn't used while walking. So it will only walk horizontally in air.
    Looking for a solution to make it walk in air properly as if it is on a slope. Any ideas?
    (Using air-swim hack with some fixes works fine, except it's slow speed.)

  15. #582
    danwins's Avatar Contributor
    Reputation
    189
    Join Date
    Mar 2013
    Posts
    143
    Thanks G/R
    6/62
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by youyanruyu View Post
    I try to implement superfly hack with click-to-move in my bot, then find out that the pitch of character isn't used while walking. So it will only walk horizontally in air.
    Looking for a solution to make it walk in air properly as if it is on a slope. Any ideas?
    (Using air-swim hack with some fixes works fine, except it's slow speed.)
    Can't you just modify the swim speed to match your walking speed? I'm pretty sure setting swim state is the only way to "fly" properly on 1.12.1, check on the last page i posted a CETable with the movement struct including swim speed..

  16. #583
    youyanruyu's Avatar Member
    Reputation
    1
    Join Date
    Jul 2011
    Posts
    13
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by danwins View Post
    Can't you just modify the swim speed to match your walking speed? I'm pretty sure setting swim state is the only way to "fly" properly on 1.12.1, check on the last page i posted a CETable with the movement struct including swim speed..
    Pretty agree with your opinion that setting swim state is the only proper way. I realized that classic wow client itself doesn't implement any free fly function locally.
    Why didn't I try to change swim speed? Some posts had mentioned that local speed of player is scanned by warden so I'm not sure if it's safe to do that.
    Anyway, I'm trying to do more modifications to make it swim locally at running speed, and change swim packets to run packets before sending them.
    Last edited by youyanruyu; 07-11-2018 at 05:33 AM.

  17. #584
    danwins's Avatar Contributor
    Reputation
    189
    Join Date
    Mar 2013
    Posts
    143
    Thanks G/R
    6/62
    Trade Feedback
    1 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    They may scan the static speed presets to make sure you have not modified them but i don't believe they scan the global speed variable, or if they do there is some wiggle room for how strict it is, for example, the default value is 7.5, but you can set it to about 10-12 before you get disconnected.

    Also I've not seen any servers ban for this, tho things may have changed, usually they will just disconnect you.

  18. #585
    dreadcraft's Avatar Member
    Reputation
    12
    Join Date
    Jun 2018
    Posts
    33
    Thanks G/R
    30/11
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Indoors Offset

    Indoors Offset:
    Code:
    // offset is boolean, 1 == local player is indoors, 0 == local player might be outdoors but isn't necessarily so
    // where WoW.exe = 0x400000 or your wow module base address
    WoW.exe + 0x468608
    WoW.exe + 0x706D44
    WoW.exe + 0x8EAA60
    WoW.exe + 0x7C8300
    Just thought I would share this quick tidbit lads. I couldn't find an equivalent for 1.12 by searching so I thought I would share.
    I'm using it to allow my bot to mount in BG's.
    It's not perfect for this but if you add some additional checks, eg. track the distance you've covered since you were last indoors, it can be useful.
    You can probably also use it for casting entangling roots and using travel form, etc.

    Unfortunately I don't have any version of IDA or HexRays so I can't tell you exactly which of these offsets relates to what, but personally I am using 0x468608 as it is updated most frequently by the client in my tests. If someone has a better alternative to these or more information from an IDB please feel free to piggy-back.

Similar Threads

  1. [WoW][3.3.5.12340] Info Dump Thread
    By Nesox in forum WoW Memory Editing
    Replies: 97
    Last Post: 2 Weeks Ago, 08:59 AM
  2. [WoW][4.0.3.13329] Info Dump Thread
    By TOM_RUS in forum WoW Memory Editing
    Replies: 73
    Last Post: 02-06-2011, 06:37 AM
  3. [WoW][4.0.1.13164] Info Dump Thread
    By Seifer in forum WoW Memory Editing
    Replies: 29
    Last Post: 01-18-2011, 09:14 AM
  4. [WoW][4.0.1.13205] Info Dump Thread
    By DrGonzo in forum WoW Memory Editing
    Replies: 12
    Last Post: 11-11-2010, 02:34 PM
  5. [WoW][3.3.3.11723] Info Dump Thread
    By miceiken in forum WoW Memory Editing
    Replies: 2
    Last Post: 03-27-2010, 04:42 PM
All times are GMT -5. The time now is 10: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