[release] Path Runner (vb.net) menu

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 15 of 18
  1. #1
    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)

    [release] Path Runner (vb.net)

    Description: This tool lets you create paths and then later load them / run along them. (ie. Create paths for town-to-town travel)

    Written in: Vb.Net (MSVS 2008 Pro)
    Tested on: Windows XP Pro 32 only (I'm not sure if it works on x64, Windows 7, etc..as I don't have those machines, I won't answer questions about them -- with the exception of x64 --if it doesn't work I'll try to fix that soon)

    1) Wow MUST be the active app (ie. Open, not minimized) (preferably not full screen - makes it easier)
    2) It uses the mouse -> while the program is running, you CAN NOT use your computer (you can try..but it'll jerk the mouse around and you'll be angry)
    3) No fighting -- in fact, it doesn't even check if something is attacking you: it 100% ONLY RUNS from point to point
    4) So..if you're not OK with the program basically owning your mouse while it's running...stop reading - this is Not for everyone.
    5) (obviously..) it does NOT use Click To Move

    With that said..here is a basic 'tutorial' on how to use it.

    1) Log in and select your character --> go into game
    2) attach the program to wow (for mem_read) --> Do this by clicking "Attach To Wow -> Try " --> It will give a messagebox for success/failure
    3) Assign your run_forward key (default is 'w'...but I made an option for it)
    4) Assign your right_click location --> This is where the program right*clicks so it can turn (This can be anywhere on the wow screen, except for toolbars,nameplates etc --> I set it at around my toons head)
    5) THAT'S IT. Either create a path, or load one and run it.

    There are 2 buttons to run "To End" or "To Beginning" --> obvious.
    (when you create a new path..give it a descriptive name like redMesa_to_ThunderBluff or something --> that way you can remember if you want to run to the end, or beginning of the path.

    If at any time you want to stop the program before it's done, press (sometimes you have to hold it for a second) the 'Home' key (above the direction arrows usually) and it'll change the form's title to "STOPPING " & the time.

    Bugs: If you stop the program early, there is a chance it won't call the *UN*right click, and the next time you go to use the mouse it'll try to right click when you try to left click --> annoying, but easy to fix: just left/right click a few random times and this will auto-fix itsself --> shouldn't happen if you just let the program go.

    If you try to ctrl+alt+del to kill the program --> good luck, because it'll probably be jerking the mouse around too much (learn to use tab + arrow keys...)

    It stops when turning (ie. once you reach a point, and begin to turn to the next point -- it stops running for a moment while it turns) --> I admit this looks bottish, but the program should ONLY be used for travel and as such..I doubt you'll get 'bot bashed' while simply running. Easy fix, but not included in this version.

    Oo..pretty easy, but almost forgot --> When you go to set the right_click_location --> THIS program must be focused, not wow: tab until you're on the 'set loc' button --> then move your mouse over your toons head and hit {ENTER} --> the text near the 'mouse_loc' button should change. (If you forget this step..the mouse will constantly get moved to the Top Left of your screen and just sit there - important!)

    ...what a screen full ! Anyway, this was basically ripped in a hurry from my private bot --> I declare a lot of things public/global -- not good, but for such a small app/demo its easier to understand. I won't talk much about the programming unless anyone has questions..please feel free to ask.

    No Virus Scan: IT INCLUDES source code
    YES, it does use GetAsyncKeyState api --> check the source, the only time I use it is to check for the [Home] key to stop running a path. ( I recommend you compile yourself )

    for anyone not looking to compile themselves: just go into the folder
    KauPathRunner\KauPathRunner\bin\Debug and run KauPathRunner.exe <-- Are you scared...? You should be. Haha.
    (...included source)


    DOWNLOAD (all source included) MEGAUPLOAD - The leading online storage and file delivery service

    I hope someone finds this useful, but as it basically *owns* your mouse while its running, a lot of you won't.

    *also included a VERY basic 'radar' section to help in displaying the paths.

    Security Concerns: It only does mem_read, keybd_event, mouse_event: I'm guessing the chances of getting busted are slim-to-none..but i ignant, so..
    Last edited by abuckau907; 01-07-2010 at 10:24 PM.

    [release] Path Runner (vb.net)
  2. #2
    Zaibas's Avatar Member
    Reputation
    1
    Join Date
    May 2009
    Posts
    3
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Why you don't use Arrow keys to turn instead of mouse? In that case you could send keys directly to wow process, and bot would work in background mode (wow minimized)

  3. #3
    Mango Jerry's Avatar Banned
    Reputation
    192
    Join Date
    Jan 2008
    Posts
    1,244
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I believe this is Detectable.
    - Created in VB? O.o

  4. #4
    snigelmannen's Avatar Member
    Reputation
    27
    Join Date
    Jul 2007
    Posts
    318
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    All hacks or programs that are doing anything with wow are detectable

    ps afaik, as long as you compile it as 32 and not using a injected driver i dont think it will be a problem on 64 bit.
    Last edited by snigelmannen; 01-08-2010 at 11:32 AM.
    " Spy sappin mah sentry! "

  5. #5
    [Sadistic]'s Avatar Member
    Reputation
    42
    Join Date
    Sep 2009
    Posts
    247
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    can i get the source on this i am doing research it would be nice if u pmed this to me


    Edit nvm you posted it ty
    Last edited by [Sadistic]; 01-08-2010 at 02:19 PM.

  6. #6
    maclone's Avatar / Authenticator enabled
    Reputation
    2420
    Join Date
    Nov 2007
    Posts
    8,726
    Thanks G/R
    0/1029
    Trade Feedback
    0 (0%)
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Mango Jerry View Post
    I believe this is Detectable.
    - Created in VB? O.o
    It's not detectable by warden in its current state.
    It's coded in VB.Net and that's capable of doing nearly everything that can be done in C#
    Zomfg. And no, don't ask. - Dombo did it.

  7. #7
    [Sadistic]'s Avatar Member
    Reputation
    42
    Join Date
    Sep 2009
    Posts
    247
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    oh btw +rep for the source

  8. #8
    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)
    @Zaibas: Because it's harder to use arrows --> because it's a timeing thing (ie. only hold key down for xx seconds each time) where w/ the mouse it's mov xx pixels -- I guess keys *could* be as good, mouse just seems 75% easier: 2nd version will send directly to wow and not require it to be open.

    @MangoJerry: Detectable why? (mem_read only) & STFU: for most cases vb==c# --> CLR! :O (===8

    @snigelmannen: Thanks. Wasn't sure because I don't have access to a x64 machine and..just a lack of knowledge to be honest. I use Uint32 to store ram addresses and IntPtr when using them with api's. Just wasn't sure.

    @maclone: Thanks, I thought so too, but.. never know.

    @[Sadistic]: Rep--;

    Anyone actually *use* the program, or just commenting on my post?

  9. #9
    Zaibas's Avatar Member
    Reputation
    1
    Join Date
    May 2009
    Posts
    3
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by abuckau907 View Post
    @Zaibas: Because it's harder to use arrows --> because it's a timeing thing (ie. only hold key down for xx seconds each time) where w/ the mouse it's mov xx pixels -- I guess keys *could* be as good, mouse just seems 75% easier: 2nd version will send directly to wow and not require it to be open.
    Well maybe if in future you'll find this useful, here's a movement key based face code from LBbot(which was actualy publicly posted at forum, so i think i do nothing bad publishing part of it). I found it very useful, with some rewrites i adapted it to my code, and it works preaty well.
    Here it is:
    Code:
    public void facePOS(GLocation position)
            {
                GLocation localPlayerPosition = objectList.LocalPlayer.Location;
                //Find the facing we need to get
                float wowFacing = negativeAngle((float)Math.Atan2((double)(position.Y - localPlayerPosition.Y), (double)(position.X - localPlayerPosition.X)));
    
                float face;
                //Lets calculate the new facing against out current facing
                if (negativeAngle(wowFacing - objectList.LocalPlayer.Facing) < Math.PI)
                {
                    //The position we want to face is reached fastest by turning to the left
                    face = negativeAngle((wowFacing - objectList.LocalPlayer.Facing));
                    faceWithTimer(face, Post.ArrowKeys.Left);
                }
                else
                {
                    //Lets turn to the right
                    face = negativeAngle((objectList.LocalPlayer.Facing - wowFacing));
                    //Console.WriteLine("Right is the shortest way, lets face");
                    faceWithTimer(face, Post.ArrowKeys.Right);
                }
            }
    
            private void faceWithTimer(double face, Post.ArrowKeys key)
            {
                GSpellTimer timer = new GSpellTimer(face * 1000 * Math.PI);
                Post.ArrowKeyDown(Memory.WindowHandle, key);
                timer.Reset();
                while (!timer.isReady)
                {
                    Thread.Sleep(1);
                }
                Post.ArrowKeyUp(Memory.WindowHandle, key);
            }
    
            private float negativeAngle(float angle)
            {
                //if the turning angle is negative
                if (angle < 0)
                    //add the maximum possible angle (PI x 2) to normalize the negative angle
                    angle += (float)(Math.PI * 2);
                return angle;
            }
    Look at its Math, and you can simply rewrite it in VB

    P.S. facing must be done while standing still, otherwise it will be inaccurate

  10. #10
    kemkoi's Avatar Active Member
    Reputation
    15
    Join Date
    Oct 2008
    Posts
    70
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Nice work

  11. #11
    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 Zaibas View Post
    P.S. facing must be done while standing still, otherwise it will be inaccurate
    Depending: My bot uses path files (no fancy nav meshes yet) , so I do something like
    Code:
    Sub TurnToPoint(GPoint somePoint)
    if somePoint.DistanceFromLocalPlayer > 20 then
         if somePoint.TurnDistance > .75 then gps.StopRunningForward
    else
    gps.StopRunningForward()
    end if
    ...turn...
    .75= about 45 degrees, should be able to make a 'round turn': assuming the user made their path point not close to an object (and for when u need sharp turning, just make the points less than 20m apart and it'll auto-stop..path point files suck I know, but they can work very well and are uber easy)

    Q. how long does it take your arrow Turn() code to turn 180 degrees and 1) does it turn past the point / to what accuracy?

  12. #12
    Zaibas's Avatar Member
    Reputation
    1
    Join Date
    May 2009
    Posts
    3
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    To turn 180 degrees is about ~1sec (person who wrote that code did some tests, and wrote that it turns 360 degrees in 2,0159 sec)

    As for accuracy:
    while (!timer.isReady)
    {
    Thread.Sleep(1);
    }

    Thread.Sleep(1); means waiting (in milisec) bigger the number - less accuracy, but less lag. Personaly i use 100ms pauses(which makes not very accurate), but i re-face every 3sec while bot is moving (looks more relistic actualy when bot makes moves while runing instead of running straight foward )

  13. #13
    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)
    Re-face every 3 seconds?? At 50m distance, I turn to around .05rads and ..i'm not checking the math on this, but that shouldn't significantly change until you're pretty close (<10m) and if it's every 3 seconds..how much are you not-facing after 3 seconds? In My RunToPoint() I check if .TurnDistance > .2 then Re-Face and when Ido re-face, it's so small most ppl wouldn't notice. ?? (<.2)

  14. #14
    huffwin's Avatar Member
    Reputation
    4
    Join Date
    Apr 2008
    Posts
    82
    Thanks G/R
    2/3
    Trade Feedback
    8 (100%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    congrats man it looks simple enough

  15. #15
    Mr.Zunz's Avatar Contributor
    Reputation
    92
    Join Date
    Mar 2007
    Posts
    393
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Why dont use ctm mem writes, much easier


Page 1 of 2 12 LastLast

Similar Threads

  1. [Release][C#]WhiteMagic - Injected .NET Helper Library
    By Apoc in forum WoW Memory Editing
    Replies: 53
    Last Post: 01-23-2013, 09:58 AM
  2. [Release] Path to Emerald dream in Azeroth
    By vonkova in forum WoW Advanced Model Edits
    Replies: 40
    Last Post: 07-26-2011, 02:48 PM
  3. [Release]Custom Launcher[Vb.Net]
    By Emptie[Imp] in forum WoW EMU Programs
    Replies: 12
    Last Post: 10-13-2008, 01:13 PM
  4. [RELEASE] GamerzWoW Launcher - VB9.NET Source!
    By whitekidney in forum World of Warcraft Bots and Programs
    Replies: 9
    Last Post: 04-26-2008, 03:59 PM
  5. [RELEASE] GamerzWoW Launcher - VB9.NET Source!
    By whitekidney in forum WoW EMU Programs
    Replies: 0
    Last Post: 04-26-2008, 11:48 AM
All times are GMT -5. The time now is 02:36 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search