Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
daxmagex

[Dax] WebWalker

Recommended Posts

For the past week, I've been on my own webwalker since Tribot's Webwalker is lacking functionality and accuracy.

Here are some images of my current work in progress.

Wizards Tower (Different Planes)

  • Simple demonstration of pathfinding from different planes. Jagex tends to put dungeons not on the the plane directly below, but really far away coordinates, which is pretty annoying.

m6F3yt9.gif

 

Stronghold of Security (Level 1)

  • Haven't really collected all the data yet for dungeons, since I have to edit nodes by hand to remove door collision data.
  • Here's a path generated from the first floor of the dungeon. My Walker Engine will be handling the stronghold doors.

zQBAIVv.png

 

Semi-Far Distances (Lumbridge -> Grand Exchange)

  • So far, semi-long paths are being computed pretty quickly. Will see how it'll do when I map P2P areas to calculate longer distances.

plnpygM.png

ff8atme.png

 

Here's a visual of how it finds the path slowed down (By a LOT).

NaSeBKz.gif

 

 

Path Requirements

  • Currently, I assume all paths are accessible to you. But once I incorporate the code into tribot, it should be pretty simple.

aB4QxTn.png

 

One-Direction Paths

  • An example of a directional path is the main door of Draynor Manor. You can only enter it one way.
  • Here's a small demonstration of how the walker will act in these cases.

 

From outside -> inside

2B2MyZ8.png

 

From inside -> Outside

Ne2Ydy1.png

 

Walker Engine

  • 0% done
Edited by daxmagex
  • Like 12

Share this post


Link to post
Share on other sites
23 hours ago, Butta said:

@daxmagex will you give other scripters access to it?

I'm thinking of open source but that depends on how far I get with it. All wayports has to be done by hand (Areas that lead to another that are not implied through collision.)

 

 

Lumbridge -> Ardougne

Finding Path from (3215,3219,0) to (2582,3300,0)...!
We will be limiting the search to 45 regions.
We could not find path within the limit. Expanding limit.
We will be limiting the search to 135 regions.
Path took took 217ms to generate.
Finding Path from (3215,3219,0) to (2582,3300,0) FINISHED!

Zp1nydg.png

Share this post


Link to post
Share on other sites

mCg3L4l.png

 

Guided path are fixed so that wayports don't mess with A* move cost calculations.

 

Lumb bank -> ardy bank looking good.

 

Looks like it decided to

Port Sarim "Pay Fare" to Karamja. Karamja "Charter" to the other port of karamja, then "Pay Fare" to Ardy

 

 

Edited by daxmagex
  • Like 2

Share this post


Link to post
Share on other sites
6 hours ago, Sphiinx said:

@daxmagex How is it looking in terms of resource usage when the path is being generated in that short amount of time?

When you call the webwalker from point a to point b, it'll use the guided path to decide which regions to load, which you see on the images. They are the highlighted blue lines. 

Those regions will be the limit of our A* search. Each region file is 36 kb, and should be a lot less when loaded into memory since I use strings to store boolean values in the file.

A very long path from lumbridge to castlewars for example loads 56 regions into memory.

y10dJQ8.png

Edited by daxmagex
  • Like 2

Share this post


Link to post
Share on other sites

zCtYOCk.png

 

HnJXGtN.png

 

I've finished nearly everything done on the back end. Currently implementing the walker engine which will be making smart interpretations for object handling/navigation jumps depending on the path. Tribot webwalker seems to have problems with handing objects interfering with the path.

 

The real time minimap collision debugger is also completed. It's very inexpensive to paint since it is a cached image that only updates when needed.

Edited by daxmagex
  • Like 1

Share this post


Link to post
Share on other sites

Path Analyzer is finally finished. Walker Engine works until it hits the first object obstructing its way.Development will slow down the next couple of days in preparation for finals weeks but I expect this project to be available in BETA to public before the end of this month.

qkasehM.png

Edited by daxmagex
  • Like 1

Share this post


Link to post
Share on other sites
34 minutes ago, daxmagex said:

Path Analyzer is finally finished. Walker Engine works until it hits the first object obstructing its way.Development will slow down the next couple of days in preparation for finals weeks but I expect this project to be available in BETA to public before the end of this month.

qkasehM.png

This will be a 100% free resource? also what areas will be premapped?

Share this post


Link to post
Share on other sites

No ETA yet.

I've decided on a Web-Based Walker.  I'll be hosting a server with multiple computation instances. The instances will split the load the server has, and can scale depending on how good the server cpu is.

Benefits:

  • No memory consumption for calculating paths.
  • Little to no CPU 
  • No dependancies

Cons:

  • May be slower due to server latency
  • Downtimes (Should be rare since I'll be looking for a reliable server)

 

I've done some local stress testing and it looks like even my CPU (6600k) can handle a lot of requests.

http://i.imgur.com/Um9W6GT.gifv

  • Like 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By daxmagex
      Source over at GitHub

       
      Example:

       
      Debug Paint:

       
      Api-Access
      How to use Api-Key
      WebWalkerServerApi.getInstance().setDaxCredentialsProvider(new DaxCredentialsProvider() { @Override public DaxCredentials getDaxCredentials() { return new DaxCredentials("API-KEY", "SECRET-KEY"); } });  
       
       


       
      Map Preview

       
  • Our picks

    • This release will:

      Add new internal framework for capturing exceptions


      Fix issue with not selecting the last column in world hopper (Thanks @Todd)


      Add a message about pin usage in Banking#openBank (Thanks @Todd)


      Disable the firewall by default (Thanks @Todd)


      Fix handling of the welcome screen after login (Thanks @Encoded)


      Fix wrong amount bank withdrawal (Thanks @Encoded)


      Fix Screen#isInViewport


      Fix Game#isInViewport (Thanks @Encoded)


      Call onBreakEnd for ListenerManager Breaking Listeners (Thanks @Encoded)


      Fix Prayer#getPrayerPoints NumberFormatException (Thanks @JoeDezzy1)



      Note: If you are using LG, please restart both the RS client and TRiBot.
        • Thanks
        • Like
      • 19 replies
    • This release will:

      Fix LG for both OSBuddy and RuneLite


      Fix issue where the resizable client isn't able to be made smaller (Thanks @JoeDezzy1)


      Fix detection of the logout game tab when resizable mode and side panels are enabled (Thanks @JoeDezzy1)


      Add initial support for Sentry to allow us to identify and easily debug exceptions happening with all TRiBot users


      Add methods to determine if the bank is actually loaded, and not just the overarching interface (Thanks @wastedbro)



      Upcoming updates:

      Improved CLI support


      Full Sentry support


      Much more
        • Like
      • 64 replies
    • This release will:

      Fix NPE in Camera API (Thanks @wastedbro)


      Update deposit box interface ids (Thanks @Encoded)


      Add various bank methods (Thanks @wastedbro)


      Banking#getWithdrawXQuantity


      Banking#getDefaultWithdrawQuantity


      Banking#arePlaceholdersOn




      Fix resizeable minimap bug (Thanks @wastedbro)


      Remove Java 8 requirement


      Please note: TRiBot is not yet fully compatible with Java 10+




      Fix the break handler issues by ensuring the break handler thread never gets paused


      Fix broken settings hooks



      Upcoming updates:

      Improved CLI support


      Much more



      Note: If you are using LG, please restart both the RS client and TRiBot
        • Like
      • 68 replies
    • This release will:

      Add support for using custom F key bindings to switch between game tabs (Thanks @erickho123)


      Fix tab opening for "Skills" and "Kourend Tasks" (Thanks @erickho123)



      Note: If you are using LG, please restart both the RS client and TRiBot
        • Like
      • 34 replies
    • This release will:

      Fix an issue where breaks would stop firing


      Fix Combat#getWildernessLevel, use dynamic search for text and cache ID for later calls


      Fix an NPE in the Combat API


      Fix Mouse#leaveGame bug where the mouse wouldn't actually leave the game screen
        • Like
      • 21 replies
  • Recently Browsing   0 members

    No registered users viewing this page.

×