Sir Ducksworthy
2012-02-23 13:36:50
Hey does anyone have any improvements they could add to make functionality better with something like this or has anyone else had any similar procedures they would like to share on the lines of predicting player location through DTM intelligence or whatnot
I want to narrow shit like this down one day to predict an exact tile location if possible or something close to it
I want to narrow shit like this down one day to predict an exact tile location if possible or something close to it
procedure intelligence;
{var
region1x,region1y,region2x,region2y,region3x,region3y,region4x,region4y,region1x2,region1y2,region2x2,region2y2,region3x2,region3y2,region4x2,region4y2:integer; }
begin
//Their are 4 regions so far that are layers of distance around minimap player icon, these will be used to find dtms in to find out locations
if not LoggedIn then
Exit;
AntiRandoms;
writeln('Finding banker and opening bank');
writeln('Determining location with Minimap DTM distance to player map icon recognition');
{ //Regions to compare distance to 689, 88 that is the white square dot that represents player
region1x:=679; //10CORDS around player
region1y:=78;
region1x2:=699;
region1y2:=98;
region2x:=669; //20 Cords could this work better if it was split into 5 smaller sections around the 10 cord area 2.5C ea
region2y:=68;
region2x2:=709;
region2y2:=108;
region3x:=659; //30 cords
region3y:=58;
region3x2:=719;
region3y2:=118;
region4x:=649; //40 cord radius
region4y:=48;
region4x2:=729;
region4y2:=128; }
loc:=0;
if(findDTMRotatedSE(bankicon,x,y,679,78,699,98,-Pi, Pi, Pi/30, aFound))then loc:=1;
if(not(loc=1))then
begin
if(findDTMRotatedSE(bankicon,x,y,679,78,699,98,-Pi, Pi, Pi/30, aFound))then loc:=2;
end;
if(not(loc=2))then
begin
if(findDTMRotatedSE(bankicon,x,y,679,78,699,98,-Pi, Pi, Pi/30, aFound))then loc:=3;
end;
if(not(loc=3))then
begin
if(findDTMRotatedSE(bankicon,x,y,679,78,699,98,-Pi, Pi, Pi/30, aFound))then loc:=4;
end;
if(not(loc=0))then
begin
writeln('Found the bank icon in mini map player icon radius zone ' + IntToStr(loc));
writeln('Radius zone 1 is 10 coords around your white square, 2 is 20, 3 is 30 and 4 is 40');
end;
if(loc=0)then
begin
writeln('was not found in any of the radius zones so we will now search for the foutain icon as you are most likely at the fountain due to an error after making soft clay');
if(findDTMRotatedSE(fountainicon,x,y,679,78,699,98,-Pi, Pi, Pi/30, aFound))then loc:=1;
if(not(loc=1))then
begin
if(findDTMRotatedSE(fountainicon,x,y,679,78,699,98,-Pi, Pi, Pi/30, aFound))then loc:=2;
end;
if(not(loc=2))then
begin
if(findDTMRotatedSE(fountainicon,x,y,679,78,699,98,-Pi, Pi, Pi/30, aFound))then loc:=3;
end;
if(not(loc=3))then
begin
if(findDTMRotatedSE(fountainicon,x,y,679,78,699,98,-Pi, Pi, Pi/30, aFound))then loc:=4;
end;
if(not(loc=0))then
begin
writeln('You were closest to the fountain artifical intelligence was correct');
writeln('Lets just do a check to see if you have any remainding clay left..');
if(finddtm(clay,x,y,1644,442,1823,696))then
begin
writeln('O shit we havnt finished making soft clay yet and most likely had an error, lets call the fountain fider method..');
fountainfinder;
end;
end;
end;
end;