SRL Archive - OSR Help

Finding minimap colors


blother

2012-07-08 16:40:01

I am using RadialWalk as a backup for my DTM_Walk. My problem is Getting the road colors around Draynor. Since the colors change, I tried using ACA autocolor function, but it doesn't always work. The area I am doing the walking seems to continually have problems with DTM_Walk, and I need a reliable method/backup.

Should I try getting more road colors as they change?
Should I try another method to backup the radialwalk?

The path is from the bank to clay mine if anyone is wondering.

Wreck

2012-07-08 16:41:16

Check out the mapwalk include!

EDIT: As a backup you could check out using SPS/ ObjDTM for your walking.

Runaway

2012-07-08 16:44:08

I believe there is a special autocolor function for road colors. Also, just continue to grab more colors / up the tolerance a bit. There isn't much of a way around it.

Footy

2012-07-08 16:45:41

mapwalking is the easiest way IMO. Doing it other ways is good practice though.

blother

2012-07-08 16:58:05

Ok, these are what I have for walking:

procedure WalkToMine;
begin
if not LoggedIn then Exit;
Randoms;

if not RunEnergy(80) then
begin
RestUntil(80);
SetRun(True);
end else
SetRun(True);

Writeln('Walking to mine.');
if not ObjDTM_Walk('128:48:4:1:7:116:78:1:7:115:66:2:7:111:71:0:7:75:43:4:134:60:133:41:117:42:119:60', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(DraynorRoadColor, 30, 80, 60, -1, -1) then
begin
Writeln('Failed to walk to mine, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('88:18:4:2:7:110:47:2:7:70:100:1:7:74:71:1:7:134:65:4:95:30:89:6:81:9:79:31', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(DraynorRoadColor, 358, 5, 70, -1, -1) then
begin
Writeln('Failed to walk to mine, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('88:15:4:1:7:107:107:1:7:128:102:1:7:67:136:2:7:103:112:4:97:24:96:7:76:9:76:30', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(DraynorRoadColor, 10, 20, 70, -1, -1) then
begin
Writeln('Failed to walk to mine, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('105:22:4:1:7:74:66:1:7:77:41:1:7:53:42:1:7:45:62:4:115:14:84:13:88:43:115:41', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(PathColor, 0, 5, 65, -1, -1) then
begin
Writeln('Failed to walk to mine, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('122:29:5:1:7:98:29:1:7:106:41:1:7:127:45:1:7:98:62:2:7:114:50:4:132:39:130:24:110:25:109:43', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(PathColor, 30, 60, 60, -1, -1) then
begin
Writeln('Failed to walk to mine, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('132:59:4:1:7:70:96:1:7:62:84:1:7:70:66:1:7:92:100:4:116:48:117:78:144:73:142:48', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(GrassColor, 15, 30, 65, -1, -1) then
begin
Writeln('Failed to walk to mine, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('132:58:4:2:7:86:46:1:7:123:36:2:7:102:54:2:7:115:42:4:115:64:116:43:144:44:146:66', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(MineColor, 0, 90, 60, -1, -1) then
begin
Writeln('Failed to walk to mine, logging out.');
Logout;
TerminateScript;
end;
end;
Writeln('Arrived at mine.');
end;


procedure WalkToBank;
begin
if not LoggedIn then Exit;
Randoms;

if not RunEnergy(80) then
begin
RestUntil(80);
SetRun(True);
end else
SetRun(True);

Writeln('Walking to bank.');
if not ObjDTM_Walk('25:114:4:1:7:103:53:1:7:90:53:1:7:90:45:1:7:69:36:4:18:119:16:92:45:94:41:127', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(GrassColor2, 225, 270, 65, 1, 1) then
begin
Writeln('Failed to walk to bank, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('40:129:4:1:7:71:117:1:7:55:113:1:7:36:110:1:7:29:98:4:47:135:47:110:20:113:31:134', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(PathColor, 180, 225, 65, 1, 1) then
begin
Writeln('Failed to walk to bank, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('37:130:4:1:7:66:79:1:7:74:58:1:7:95:62:1:7:65:46:4:44:138:25:126:32:110:51:120', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(DraynorRoadColor, 225, 240, 65, 1, 1) then
begin
Writeln('Failed to walk to bank, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('63:142:4:1:7:63:90:1:7:43:66:1:7:35:85:1:7:66:66:4:70:146:69:129:49:130:49:146', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(DraynorRoadColor, 180, 200, 65, 1, 1) then
begin
Writeln('Failed to walk to bank, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('84:114:4:1:7:77:22:1:7:49:19:1:7:111:126:2:7:107:131:4:88:120:90:98:68:104:70:119', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(DraynorRoadColor, 170, 190, 65, 1, 1) then
begin
Writeln('Failed to walk to bank, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('79:130:5:1:7:110:92:1:7:69:120:2:7:64:149:1:7:90:131:0:7:29:120:4:86:138:86:116:64:118:68:137', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(DraynorRoadColor, 170, 190, 40, 1, 1) then
begin
Writeln('Failed to walk to bank, logging out.');
Logout;
TerminateScript;
end;
end;

Wait(500 + Random(150));
if not ObjDTM_Walk('40:104:4:2:7:66:95:1:7:70:101:1:7:70:67:0:7:32:68:4:48:107:44:93:32:96:32:111', 0, 100, 50, True) then
begin
Writeln('DTM_Walk has failed, trying RadialWalk,');
if not RadialWalk(DraynorBankColor, 210, 250, 60, 1, 1) then
begin
Writeln('Failed to walk to bank, logging out.');
Logout;
TerminateScript;
end;
end;
Writeln('You arrived at the bank.');
end;

Should I substitute the road colors I found for RoadColor or would either of these work for my situation:

function RadialRoadWalk(TheColor, StartRadial, EndRadial, Radius, Xmod, Ymod: Integer): Boolean;

function RadialWalkAutoColor(autoColorConst, sRad, eRad, r, modX, modY: Integer): Boolean;