SRL Archive - Research & Development Lounge

Blue arrow map walking


I Am Legend

2011-12-11 05:05:27

Any ideas on how to make the person continiouslly follow the the blinking blue arrow on minimap ?



YoHoJo

2011-12-11 05:08:42

That is actually a pretty DAMN smart idea ROFL WOW!

We can have scripts click the world map which ALWAYS looks the same, and then have a function that types in city names/navigates to specific locations, and then simply follows the blue MM arrow to get there!

I think this idea has some real potential! Woo Woo!

E: Is that your username in the bottom picture? Might want to edit it.

I Am Legend

2011-12-11 05:09:46

haha nope i took a screen shot while messaging someone

euphemism

2011-12-11 05:20:12

Use FindColors, or FindColorsTolerance for the blue color, and get the middle of the resulting TPA. I don't figure that blue to actually show up elsewhere on the minimap, otherwise you will have to write a little bit more code to get just the arrow. Anyway, get the center of the resulting TPA and click, then wait a few seconds before finding and clicking again.

Flight

2011-12-11 05:33:26

http://villavu.com/forum/showthread.php?t=64368

I even posted a test script on the first page. Lots of people didn't like this idea, so I went no further.

YoHoJo

2011-12-11 05:41:03

From: Flight
http://villavu.com/forum/showthread.php?t=64368

I even posted a test script on the first page. Lots of people didn't like this idea, so I went no further.


That thread made me sad D: stop arguing everybody!
I still think it's a neato idea I don't see why everyone was shooting it down so much.
I'd love for someone to pick up on this, or any of the older projects!

sjlou

2011-12-11 06:14:20

ive made one for my green dragon slayer but switched to sps walking

procedure WalkMarker;
var
X,Y:integer;
begin
DTM1 := DTMFromString('mbQAAAHicY2VgYPBgZmBwA2IfIA4BYlsgDmNkYHCCYh8oZmNjY+CT+AnGIDYI8wP1o2NGLBgMAJnABbs=');
DTM := DTMFromString('mWAAAAHicY2FgYOhiYWDog+JJQHwGKHYOiE9AMbvAeRTMDxRDxoxoGAQAHa4JTw==');
repeat
if FindDTM(BA,x,y, MMX1, MMY1, MMX2, MMY2) then
begin
// Mouse(x,y,5,5,true);
MouseFlag(x,y,5,5,5);
end;
until FindDTM(BA1,x,y, MsX1, MsY1, MsX2, MsY2)
freeDTM(dtm);
freeDTM(dtm1);
end;

YoHoJo

2011-12-11 06:16:35

How was DTM made? What points on the arrow? (It's of the arrow right?)

sjlou

2011-12-11 06:19:45

From: YoHoJo
How was DTM made? What points on the arrow? (It's of the arrow right?)


cant remember :P
and yes of the blu arrow
but it works

Flight

2011-12-11 06:28:07

The blue of the arrow is pretty unique, maybe just simple color-searching in the MM region would be preferred over a DTM.

sjlou

2011-12-11 06:30:06

From: YoHoJo
That is actually a pretty DAMN smart idea ROFL WOW!

We can have scripts click the world map which ALWAYS looks the same, and then have a function that types in city names/navigates to specific locations, and then simply follows the blue MM arrow to get there!

I think this idea has some real potential! Woo Woo!

E: Is that your username in the bottom picture? Might want to edit it.


i dont think its a good idea cause you'll be walking in a straight line to the arrow and you might get stuck somewhere.


YoHoJo

2011-12-11 06:42:26

Oh. Yeah. True. Never Mind Then.
That's why walking with some sort of 'tiles' is better.

DaWu

2011-12-11 08:29:08

Even tho this isnt something viable for long walks, I think this has some potential for walks that pretty much just go in straight line.

omegaangelz

2011-12-11 08:42:33

From: DaWu
Even tho this isnt something viable for long walks, I think this has some potential for walks that pretty much just go in straight line.


I agree for the reasons stated this is not viable for long walks, but the implementation he is trying to use it for is a wilderness runite miner. I am curious if beginning from the proper location, if this would be a viable method for this script alone, considering the lack of obstacles in the wilderness. The lava maze may present a difficulty, but even to use the arrow to walk a majority of the way then possibly radial walking or SPS, this idea just might be genious for the script. I personally never would have thought about it

Yago

2011-12-11 19:35:02

From: sjlou
i dont think its a good idea cause you'll be walking in a straight line to the arrow and you might get stuck somewhere.


You'd walk around obstacles by walking to an area south of that then walking up north. Two different "walks"

Yakman

2011-12-15 13:29:15

A great way of finding the arrow is doing what RadialWalk does
If you read the source you may notice it uses polar coordinates (radius and angle) rather than x, y like FindColor.
Since the minimap is a circle and the blue arrow always appears around its edge (Except for the very end of the walk which is a special case), we should use some like out of radial walk.

Here's some pseudocode

This searches for the blue arrow only in the Annulus between 60 and 80 pixels in radius.
(map radius is 80 pixels iirc)

for radius:= 60 to 80 do
for angle:= 0 to 360 do
begin
x = radius * cos(angle)
y = radius * sin(angle)
if(FindColor(x, y, BlueArrowColor, x, y, x+1, y+1))then
break
end

Mouse(x, y, 3, 3, True);
FFlag(15);

weequ

2011-12-15 14:22:33

From: Yakman
A great way of finding the arrow is doing what RadialWalk does
If you read the source you may notice it uses polar coordinates (radius and angle) rather than x, y like FindColor.
Since the minimap is a circle and the blue arrow always appears around its edge (Except for the very end of the walk which is a special case), we should use some like out of radial walk.

Here's some pseudocode

This searches for the blue arrow only in the Annulus between 60 and 80 pixels in radius.
(map radius is 80 pixels iirc)

for radius:= 60 to 80 do
for angle:= 0 to 360 do
begin
x = radius * cos(angle)
y = radius * sin(angle)
if(FindColor(x, y, BlueArrowColor, x, y, x+1, y+1))then
break
end

Mouse(x, y, 3, 3, True);
FFlag(15);

If you are close to the flag you would want to search even the middle of the minimap.

PerryP

2011-12-15 14:24:49

The idea could be used to get to portal in GOP script, nice.

jakeyboy29

2011-12-15 14:33:08

 function RadialWalk(TheColor, StartRadial, EndRadial, Radius, Xmod, Ymod: Integer): Boolean;
var
TPA: TPointArray;
I: Integer;
begin
Result := False;
if RadialWalkEx(tpa, MMCX, MMCY, TheColor, 0, 0, 720, 72) then
for i := 0 to High(tpa) do
if MFNF(tpa[i].x, tpa[i].y, -1, 1) then //XMod YMod
begin
FFlag(10);
Result := True;
Exit;
end;
end;

EDIT: UNTIL; Find Red cape

kyocera

2011-12-16 08:05:07

This would only be useful for really simple things though…

jakeyboy29

2011-12-16 08:11:04

From: kyocera
This would only be useful for really simple things though…


like walking?

Gu3st...

2011-12-16 08:15:51

From: kyocera
This would only be useful for really simple things though…
This is very true indeed, and would not be the best thing to use for i.e world-walking, but in open areas (or areas that is not walled in like falador) it's great :)

DaWu

2011-12-16 08:58:39

From: Zyt3x
This is very true indeed, and would not be the best thing to use for i.e world-walking, but in open areas (or areas that is not walled in like falador) it's great :)


Not to mention areas with little to none landmarks to navigate with.
You could say, TPA walk or SPS walk till certain point and then start following the arrow.

Swatarianess

2011-12-16 12:12:16

Radial searching( or whatever its called) + Marker + Object DTM ? the DTM makes the path and Searching can keep account on route and marker is target also you can look on to Big map to "map out" where you want to go and script can find shortest/medium/longest distances ^^ if only some1 made this lol i wish i could but i am idea man

I Am Legend

2011-12-17 20:41:21



Uploaded with ImageShack.us

jakeyboy29

2011-12-17 21:28:37

you would use start gradient as 0, and end as 720 i believe, shouldnt hinder the process

Swatarianess

2011-12-18 01:58:55

From: I Am Legend


Uploaded with ImageShack.us


Maybe by using radial walking combined with symbol finding… In this tut is what I mean I can't reli explain it in massive detail but this guide should do

http://villavu.com/forum/showpost.php?p=618674&postcount=3

Just do "ctrl + F" (for finding title) and type " Symbol finding" I guess you'd have to add a blue arrow bitmap and voala should walk to the arrow hopefully along as the blue arrow isn inside a building or something then it'd prob spam click it :/


Ps. By gradient you mean distance of the character and the location of the blue arrow? Itd only help when you are nearing the location i think

Yakman

2011-12-18 21:21:50

Excellent observation with the gradient.

It could be a method of finding our position anywhere in the world.
Place the blue dot at a known position (say lumbridge) and use the gradient to tell how far away you are. Then place the blue to at another known position (say varrok) and use the gradient to tell how far away you are.
Knowing the distance between yourself and two known positions is enough to find your own position.

I haven't opened the game so maybe I've misunderstood the situation.
Also this relies on finding an accurate way of telling the distance using the gradient of the blue arrow.

m34tcode

2011-12-18 22:26:53

If we have scripts doing that though it may be a red flag for jagex.

Yakman

2011-12-20 09:32:27

Not really. I'm sure plenty of people use the world map.

legoace

2011-12-20 21:40:51

I'm sorry for missing something, but what gradient are you guys talking about? Like what are you seeing as a "gradient?" Do you mean slope or is there some color related to distance?

If you mean slope then this could be an awesome way to triangulate position, albeit of course bounded at maximum accuracy by pixel resolution.

SubiN

2011-12-26 19:23:49

hes probably talking about the slope.

Press Play

2011-12-27 17:34:31

I like the gradient idea^^

Like, for example.. if you were walking to a location that was north-east, you ccould walk north until the gradient is __, then east until gradient is __.. etc. It's it a bit tedious though.

Gu3st...

2011-12-27 17:41:58

It's still pretty doable… And if you leave the arrow at one spot, then you pretty much know where you are even if you start walking…. That's pretty smart if you ask me!