SRL Archive - Research & Development Lounge

Walking Techniques


Kevin

2013-04-15 13:17:01

Nothing is currently in development, but I am pondering techniques to work on and would like input (as well as current verifications on older walking techniques).

So the current walking techniques people use consist of (this may be incomplete?):
  • SPS - simple to use and fairly accurate. I think its logic is based off minimap bitmap tolerance comparisons(verification desired).
  • ObjDTM - fairly simple to use and fairly accurate. Its logic is based on localizing your position based on visible symbols (DTM symbols like trees, not bmp symbols like lodestones) on the screen and traveling in relation to them. Does the path work if you start running a path and you are currently standing somewhere in the middle of the path (not visible from the beginning)?
  • TPA walking - fairly simple to use and accuracy is dependent on location. Its logic is based on TPAs (if that wasn't obvious). Long distances are inaccurate and accuracy is only in relation to a given TPA being very unique to an area.
  • Symbol walking - extremely simple to use but also fairly inaccurate. Its logic is based on using bitmaps of small portions of the related minimap symbols. Since Minimap symbols have inconsistent locations on the minimap and are easily covered up by a number of other objects on the minimap, this is sadly inaccurate despite being so easy for beginners.
  • RadialWalking - harder to use and can be inaccurate depending on usage, but can be useful for traveling shorter distances. Its logic is based on sectioning the minimap (based on the radius/section you tell it) and looking for an area matching the color you wish to walk to (similar to TPA walking).
  • DDTMs - Extremely accurate but one of the hardest walking methods. Based on Dynamic Deformable Template Models (DDTMs), these are consistent shapes that contain only the same given color as the edges (that was a note I had to discover on my own and never learned from any of the tutorials). Commonly used for walking along roads, this is also useful in other situations that contains many available DDTMs. Extremely useful as an anchor point to keep you within a given area.

And then there are the couple of manners of walking I'm considering to work on:
  • A designated Edge Walker - I'm not sure what else to call it, but the idea fits most accurately along edges of static areas such as Roads, Lakes, or Rivers. Similar to SPS, you would make a path following the edges of the road you wish to follow, with the addition of the road color for the road (to allow for longer paths that change road colors such as north of falador, a second path would need to be made at the transition point). DTMs and DDTMs have "main points" that are used for all their connecting points, whereas this would find the designated road color and create an outline of it (using FindTPAOutline by Beginner5 - at least I think he wrote it) to use for determining location along the path, treating each point along the path as its own "main point" in reference, allowing for you to be anywhere along the path at runtime and still have no problem determining your location and how to walk along the path. Furthermore, by having a high concentration of points, you could designate the ability to have points be hidden by symbols/NPC/players and so long as the majority of a section matched the pattern, you'd still be fine.
  • Following the example of objDTM, you can use DTMs to travel as well. Buildings and other unique immovable landmarks are quite capable of accurate walking, so why not create DTMs of them and designate related paths based off of them? The developer setup for a path using this would be difficult as you would need to create several DTMs to be in relation to for each node along the path as well as a given offset to be from each DTM. However, given some time in creating a tool, it could be simplified almost to the extent of the current ObjDTM path setup (although instead of clicking a button to grab DTMs, you would be creating them on the fly for each node). It would still take a lot of developer time to work on for implementing in any script, but it could be a fairly accurate walking technique.

Thoughts/additions to this little compilation?

Edited definition of the "Road walker" to be more generic like it can be.

John

2013-04-16 06:20:25

When I needed to Walk anywhere I used SPS + a custom map due to it being so accurate. I have tried ObjDTM but it only ever stayed accurate for ~a day or two.
Your second type of walking you're considering developing would work but keeping all of the ObjDTMs updated would be hard due to the minimap shape variants.

Kevin

2013-04-16 08:37:45

From: John
When I needed to Walk anywhere I used SPS + a custom map due to it being so accurate. I have tried ObjDTM but it only ever stayed accurate for ~a day or two.
Your second type of walking you're considering developing would work but keeping all of the ObjDTMs updated would be hard due to the minimap shape variants.


I never have a problem with ObjDTM outdating, so I'm not entirely sure what your problem is with that. As for SPS, mine tends to have a lot of issues in heavily populated areas, even with custom maps. My second type of walking I'm considering wouldn't be ObjDTM related as much as simple DTM as it would apply to universally unique situations like buildings (as well as possible objDTM in addition) - because buildings don't look like each other.

omfgjosh

2013-04-16 12:51:34

From: John
When I needed to Walk anywhere I used SPS + a custom map due to it being so accurate. I have tried ObjDTM but it only ever stayed accurate for ~a day or two.
Your second type of walking you're considering developing would work but keeping all of the ObjDTMs updated would be hard due to the minimap shape variants.

are custom maps more accurate than the ones in simba already like the '5_7' type maps

Kevin

2013-04-16 13:05:28

From: omfgjosh
are custom maps more accurate than the ones in simba already like the '5_7' type maps


Custom maps are usually more accurate as the ones already in place are based off the main map of the game and do not include important things (or are not necessarily as up to date) as a custom map can. So USUALLY custom maps are more accurate.

King

2013-04-16 16:41:54

I actually use building dtms in my Waterfiend script to walk out and into the bank accurately. It works great and if the DTM is well made, it doesn't degrade so fast( I have to replace like maybe once a few months from past scripts) so yeah I'd be down to help on the second method if you like since I already use it. Just make a DTM of the buildings in areas, then make a function that uses the middle of the DTM as the point and then uses offsets with randomness thrown in to walk around the buildings? I use it mostly for accurate bank walking. Can be done with TPAs as well easily.

tealc

2013-04-16 17:03:03

radial walk works decent for walking along roads. Idk if the roads are unique enough for the designated road, especially with straight parts on some paths.

Kevin

2013-04-16 17:07:33

From: SRLKing
I actually use building dtms in my Waterfiend script to walk out and into the bank accurately. It works great and if the DTM is well made, it doesn't degrade so fast( I have to replace like maybe once a few months from past scripts) so yeah I'd be down to help on the second method if you like since I already use it. Just make a DTM of the buildings in areas, then make a function that uses the middle of the DTM as the point and then uses offsets with randomness thrown in to walk around the buildings? I use it mostly for accurate bank walking. Can be done with TPAs as well easily.


I think it would be quite beneficial to implement as a possible extension enhancing the current ObjDTM setup even to include current ObjDTM symbols and add on custom DTMs per path. I'm looking into it a little now, but I think I'll put off starting on it officially until after the competitions are over in a couple weeks if you want to join me then? :)

From: tealc
radial walk works decent for walking along roads. Idk if the roads are unique enough for the designated road, especially with straight parts on some paths.


I just edited how I define the road setup* But even still, while radialwalk does work fine, especially for straight portions, this could allow for curved or even splitting roads while still following the correct path and even allow for smooth adjustments to other "edges" such as lakes, rivers, other roads, or whatever else is consistent like them.

King

2013-04-16 17:38:36

From: Kevin
I think it would be quite beneficial to implement as a possible extension enhancing the current ObjDTM setup even to include current ObjDTM symbols and add on custom DTMs per path. I'm looking into it a little now, but I think I'll put off starting on it officially until after the competitions are over in a couple weeks if you want to join me then? :)



I just edited how I define the road setup* But even still, while radialwalk does work fine, especially for straight portions, this could allow for curved or even splitting roads while still following the correct path and even allow for smooth adjustments to other "edges" such as lakes, rivers, other roads, or whatever else is consistent like them.


Sure(: Pm me whenever you want to start!

tealc

2013-04-16 17:42:25

I actually saw someone asking if their was a method to walk along varrock castle wall, this was a few weeks ago iircc. It wouldn't even be that hard to make.

Kevin

2013-04-16 21:10:02

From: King
Sure(: Pm me whenever you want to start!

Will do, btw, are you in your relative competition?

From: tealc
I actually saw someone asking if their was a method to walk along varrock castle wall, this was a few weeks ago iircc. It wouldn't even be that hard to make.

Making the actual walker wouldn't be that hard, but I wanna make a tool for ease of creating new paths. That's where the difficulty comes in moreso :)

King

2013-04-16 21:46:36

From: Kevin
Will do, btw, are you in your relative competition?


Making the actual walker wouldn't be that hard, but I wanna make a tool for ease of creating new paths. That's where the difficulty comes in moreso :)


Yeah, I might not finish due to IRL circumstances/:

Itankbots

2013-04-17 03:45:22

SPS has always Done me well. i use TPA's alot also, for short distances.

ObjDtm i just never got the right concept to make a good path i guess :/

Always love trying out new walking methods tho :D

Sir R. M8gic1an

2013-04-18 08:34:03

There is one technique you didn't mention but that was extremely accurate, MSI used it before SPS came into full power - Kyle developed it.

The idea was very simple. You get a color and it's point and you walk to it. This is a bit like radial walking except instead of searching the color from MMC outwards, you search for the color at (x,y) with a tolerance and walk to it.

so you'd be walking to MMC + (10, 10), color green tolerance 10. It's hard to believe how accurate this actually was. It will probably need some autocoloring. If you start somewhere in the middle of the path it could EASILY result in a mistaken walk. I'd overcome this by being able to check each location like in a DDTM. Of course this would make it more bulky, then again, you don't always need to be able to just start anywhere.

xtrapsp

2013-04-18 08:38:58

From: Sir R. M8gic1an
There is one technique you didn't mention but that was extremely accurate, MSI used it before SPS came into full power - Kyle developed it.

The idea was very simple. You get a color and it's point and you walk to it. This is a bit like radial walking except instead of searching the color from MMC outwards, you search for the color at (x,y) with a tolerance and walk to it.

so you'd be walking to MMC + (10, 10), color green tolerance 10. It's hard to believe how accurate this actually was. It will probably need some autocoloring. If you start somewhere in the middle of the path it could EASILY result in a mistaken walk. I'd overcome this by being able to check each location like in a DDTM. Of course this would make it more bulky, then again, you don't always need to be able to just start anywhere.


Look who's back!!! :D

Anyway, I don't think this is as possible as before. With Jagex Meshing colours together better and making them more solid everywhere…

Apart from paths I suppose