Well, while I was woking on my new guild miner, I needed an auto-color, first for the buildings in fally, and second for the rocks in the mining guild, for the existing function never picked the right rock, so I decided to quickly code my own. It is very reliable as far as I tested it (20/20 so far), and it is simple enough for others to understand. Now, the chances of this one going astray if you are in a wrong place are quite high, but my walking simply doesn't fail, so there is no need for me to change anything, but feel free, if you use this, to adjust it to your own needs. Well, without further ado, here is my Fally building color finder (on the minimap):
SCAR Code:
Function FindFallyBuildingColor: Integer;
var
FallyBuilding: Integer;
Begin
FallyBuilding := BitmapFromString(14, 12, 'beNpb27Fx7SgaeQg' +
'ApXY/AA==');
Begin
Result := AutoColorThis(FallyBuilding,50,mmx1,mmy1,mmx2,mmy2);
Writeln('FallyBuildingColor = ' +IntToStr(result));
End;
End;
That one was also pretty safe, the only problem is if you stand somewhere other than fally, because it has quite a big tolerance, but once again, my walking is never wrong. 
Now, here is my mining guild mining rock finder:
SCAR Code:
var
x,y,MiningRockColor: Integer;
MineRockMDTM, MRDTMTol, MRDTMArea:Integer;
MineRockMP: TDTMPointDef;
MineRockSP: array[0..3] of TDTMPointDef;
MineRockDTMSkel: TDTM;
Procedure MiningRockPoints;
Begin
MineRockMP.x:= 657;
MineRockMP.y:= 86;
MineRockMP.areasize:= 1;
MineRockMP.areashape:= 0;
MineRockMP.color:= 6511200;
MineRockMP.tolerance:= 70;
MineRockSP[0].x:= 657;
MineRockSP[0].y:= 90;
MineRockSP[0].areasize:= 1;
MineRockSP[0].areashape:= 0;
MineRockSP[0].color:= 3089708;
MineRockSP[0].tolerance:= 70;
MineRockSP[1].x:= 654;
MineRockSP[1].y:= 85;
MineRockSP[1].areasize:= 1;
MineRockSP[1].areashape:= 0;
MineRockSP[1].color:= 4405568;
MineRockSP[1].tolerance:= 70;
MineRockSP[2].x:= 657;
MineRockSP[2].y:= 83;
MineRockSP[2].areasize:= 1;
MineRockSP[2].areashape:= 0;
MineRockSP[2].color:= 5063241;
MineRockSP[2].tolerance:= 70;
MineRockSP[3].x:= 660;
MineRockSP[3].y:= 86;
MineRockSP[3].areasize:= 1;
MineRockSP[3].areashape:= 0;
MineRockSP[3].color:= 6511200;
MineRockSP[3].tolerance:= 70;
MineRockDTMSkel.MainPoint:=MineRockMP;
MineRockDTMSkel.SubPoints:=MineRockSP;
MineRockMDTM:=AddDTM(MineRockDTMSkel);
End;
Function FindMiningRockColor: Integer;
Begin
For Z:=1 To 5 Do
Begin
MRDTMTol := MRDTMTol+3;
MRDTMArea := MRDTMArea+2;
if (DTMRotated(MineRockMDTM,x, y,MMX1,MMY1,MMX2,MMY2)) Then
begin
Result := GetColor(x,y);
Writeln('MiningRockColor = ' +IntToStr(Result));
Exit;
End;
End;
Writeln('Nothing Found');
Result := 0;
End;
Now, I might have forgotten to add a variable or two, because I copied this out of my script and edited the other stuff out to make this easier to understand, and to not reveal my little members or junior members script. 
BTW: These might have already been created, and if so, then I am sorry, but I couldn't find working ones in the srl manual, so I just made some myself. I put them up here mainly for others to learn how DDTMs could be used, and to also gain a little experience myself in making Auto coloring functions. 
EDIT: I just remembered, I need to credit Yoho, because wihtout his tut, I would never have gotten this far with DDTMs, sorry for only adding that now...