Did what you told me, went to Naum's tut :P and got a much better tree finding procedure. Although it doesn't meet my standards *yet*, it finds trees much faster! Sometimes even on the first attempt 
Here's my function:
SCAR Code:
function IsTreeThere: boolean;
var
TreeTPA: TPointArray;
ATPA: Array of TPointArray;
CTS: integer;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(1);
SetColorSpeed2Modifiers(0.98, 1.93);
FindColorsSpiralTolerance(MSCX, MSCY, TreeTPA, 3303258, MSX1, MSY1, MSX2, MSY2, 10);
ColorToleranceSpeed(CTS);
SortTPAFrom(TreeTPA, Point(MSCX+50, MSCY+50));
ATPA := TPAToATPAEx(TreeTPA, 50, 50);
SortATPASize(ATPA, True);
For I := 0 to High(ATPA) do
begin
MiddleTPAEx(ATPA[i], x, y);
MMouse(x, y, 2, 2);
wait(200+random(500));
{If (IsUpTextMultiCustom(['hop', 'Tre'])) then
begin
Mouse(x, y, 0, 0, True);
end;}
end;
end;
Please tell me if i'm doing anything wrong, as I'm still a TPA nooby xD