No need for Players[].Integers[0].
You can simply do..
Pascal Code:
function HowManyRocks: Integer;
var
i: Integer;
begin
Result := 0;
for i := 0 to 2 do
IncEx(Result, BoolToInt(Players[CurrentPlayer].Booleans[i]));
end;
^^ Less room for error setting up the script.
Pascal Code:
if (R >= 43) and (R <= 103) and (G >= 43) and (G <= 104) and (B >= 56) and (B <= 134) then
Can be slightly shortened (I think it's better for readability, as well) to
Pascal Code:
if(InRange(R, 43, 103) and InRange(G, 43, 104) and InRange(B, 56, 134))then
And the same goes for the other AC functions. 
I think there's one for extended, as well, but I'm not sure. 
IMPROMPTU FloatInRange! 
Add
Pascal Code:
{*******************************************************************************
function FloatInRange(e, Min, Max: Extended): Boolean;
by: i luffs yeww
Description: Returns true if e is within Min and Max.
*******************************************************************************}
function FloatInRange(e, Min, Max: Extended): Boolean;
begin
Result := (e > Min) and (e < Max);
end;
to the beginning of script and instead of the ugly Z < 4.13 and Z > 2.61 gibberish, just do
Pascal Code:
if(FloatInRange(z, 1.3, 6.01))then
etc.
Also, in all of your AC functions you have an if then at then end, but you commented out the Writeln.
So it won't do anything. Just sayin'.
Pascal Code:
StartP := 0; //StartP = 0
z := 0; //z = 0
for i := 0 to High(Path) do
begin
ThePoint := TileToMM(PointToTile(Path[i].x, Path[i].y));
if(RS_OnMiniMap(ThePoint.x, ThePoint.y))then//also, below line could simply be if(i >= StartP)then :p
if(i > StartP)or(i = StartP)then //if first point is found, then both i and StartP will be 0
begin //#
StartP := i; //StartP = i, so i will always be greater than or equal to i, so this will always happen //#
z := z + 1; //This will always happen as well, so lines marked with # could be removed, I think.
end; //#
end;
I think my logic is right for the above.
Pascal Code:
if(z = 0)then
begin
Writeln('No path points found... hmm..');
Result := 0;
Exit;
end
^ Won't ever happen, I don't think.
Pascal Code:
for i := StartP to High(Path) do
i and StartP will both be 15 at that point. (Or 14, I guess..)
NoPath won't ever get past
according to what I posted above.
Pascal Code:
if(Length(TPA) > 4)then
Result := True;
==
Pascal Code:
Result := (Length(TPA) > 4);
x]
Pascal Code:
if(BadCount > 2)then
Result := False
else
Result := True;
==
Pascal Code:
Result := (BadCount < 3);

Pascal Code:
if(GetAnimation = 624)then
Result := True
else
Result := False;
==
Pascal Code:
Result := (GetAnimation = 624);
Pascal Code:
if(BankScreen)then
Break;
if(PinScreen)then
Break;
==
Pascal Code:
if(BankScreen or PinScreen)then
Break;
Pascal Code:
if(Players[CurrentPlayer].Booleans[3])then
Deposit(1, 28, true)
else
Deposit(2, 28, true);
==
Pascal Code:
Deposit(1 + Players[CurrentPlayer].Booleans[3], 28, True);
And this last one is just personal preference.
I don't see any reason to show blank things like "Banked 0 coal ores."
Pascal Code:
procedure ProgressReport;
begin
Writeln('/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/');
Writeln('Bbri06s Lumbridge Swamp Miner ');
Writeln('Time running: ' + TimeRunning);
Writeln('');
Writeln('- Current Character Report -');
if(Players[CurrentPlayer].Booleans[0])then
Writeln('Banked ' + IntToStr(MOres[CurrentPlayer]) + ' mithril ores.');
if(Players[CurrentPlayer].Booleans[1])then
Writeln('Banked ' + IntToStr(COres[CurrentPlayer]) + ' coal ores.');
if(Players[CurrentPlayer].Booleans[2])then
Writeln('Banked ' + IntToStr(AOres[CurrentPlayer]) + ' adamantite ores.');
Writeln('');
Writeln('- Combined Report -');
if(SumIntegerArray(MOres) > 0)then
Writeln('Banked ' + IntToStr(SumIntegerArray(MOres)) + 'mithril ores.');
if(SumIntegerArray(COres) > 0)then
Writeln('Banked ' + IntToStr(SumIntegerArray(COres)) + ' coal ores.');
if(SumIntegerArray(AOres) > 0)then
Writeln('Banked ' + IntToStr(SumIntegerArray(AOres)) + ' adamantite ores.');
Writeln('/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/');
end;
I ALSO SUGGEST THAT FloatInRange(e, Min, Max: Extended): Boolean; is to be added to SRL/MML!