LOS check on retail menu

Shout-Out

User Tag List

Results 1 to 3 of 3
  1. #1
    goblin2kx's Avatar Member
    Reputation
    10
    Join Date
    Jun 2007
    Posts
    33
    Thanks G/R
    13/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    LOS check on retail

    Hi, is anyone successfully using Traceline or Intersect to check los between two points with retail? If so I need your help!

    There seems to be a number of Intersect functions, this is the Intersect() I'm using right now (build 57388) 0x2181540 (rebased) and GetCurrentWorldFrame() 0x23FB60 (rebased). Calling it like so:

    Code:
    bool check_los()
    {
      vec3 p1 = GetPlayerPos();
      vec3 p2 = GetTargetPos();
      vec3 res={0.0};
      float dist = 1;
      int flags = 0x100111; // also tried 0x900151
    
      p1.z = p1.z + 3;
    
      bool los = World_Intersect(GetCurrentWorldFrame(),&p1,&p2,&res,&dist,flags);
      return los 
    }
    I add some random height for now to check if it works, just getting 0 return the whole time - testing with position of target unit and my position + height offset. It looks like the reason maybe this check in Intersect function:

    Code:
      
    v11 = *(_QWORD *)(a1 + 8i64 * *(unsigned int *)(a1 + 32) + 16);
      if ( !v11 )
        return 0;
    I checked the address at GetCurrentWorldFrame() + 0x20 and it's NULL... I think I must be calling the wrong Intersect, Any hints are appreciated!

    LOS check on retail
  2. Thanks numerbo (1 members gave Thanks to goblin2kx for this useful post)
  3. #2
    numerbo's Avatar Active Member
    Reputation
    69
    Join Date
    Nov 2024
    Posts
    20
    Thanks G/R
    1/8
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Maybe @blue_silvi can share his spell LOS function that doesn't use traceline. But here's how you use this one.

    11.0.5.57534

    Code:
    		const uintptr_t WORLD_TRACELINE = 0x20244b0;
    		const uintptr_t GET_CUR_WORLD_FRAME = 0x238290;
    
    			uintptr_t* result = MEM::INVOKE<uintptr_t*>(
    				_GetCurWorldFrame
    			);
    
    			char result = MEM::INVOKE<char, uintptr_t*, float*, float*, Vector3*, float*, uintptr_t>(
    				_WorldTraceline,
    				curWorldFrame,
    				from,
    				to,
    				out,
    				distance,
    				flags
    			);

    For the version you referenced it was.
    const uintptr_t WORLD_TRACELINE = 0x21813d0;

  4. Thanks goblin2kx (1 members gave Thanks to numerbo for this useful post)
  5. #3
    goblin2kx's Avatar Member
    Reputation
    10
    Join Date
    Jun 2007
    Posts
    33
    Thanks G/R
    13/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Wow! I actually had a bug in my code, the original function I posted works just fine as well as the one numerbo posted.
    Just to update 578534 of the function i originally posted as address 0x2024620.

Similar Threads

  1. Make People DC on Retail.
    By justint7491 in forum World of Warcraft Exploits
    Replies: 31
    Last Post: 08-17-2008, 07:32 AM
  2. Hacker on Retail?
    By Relentlesserv in forum World of Warcraft General
    Replies: 10
    Last Post: 06-28-2008, 03:13 AM
  3. Head Start in arena (Not tested on retail)
    By bigbowservsbigl in forum World of Warcraft Exploits
    Replies: 7
    Last Post: 06-17-2008, 03:05 AM
All times are GMT -5. The time now is 04:26 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