SCAR Code:
BColor = 1711163; // Set the color of the butler here
You should use an autocolor for this, it will be a lot more accurate.
Use Nielsies ACA in your Scripting Tools folder.
SCAR Code:
procedure NormalMouse;
begin
case random(20) of
1: PickUpMouse;
1: Writeln('Picked Up Mouse');
end;
end;
What do you use this for?
Why not just put in AntiBan?
SCAR Code:
if(FindBitmapTolerance(Logs,x,y,50)) then
Use, FindBMP().
AFAIK, it is a lot more accurate.
SCAR Code:
begin
Writeln('Found Logs!');
counter:= 0;
wait(200+random(300));
Writeln('Moving to Logs');
NormalMouse;
MMouse(x,y,15,15);
GetMousePos(x,y);
wait(600+random(200));
Writeln('Clicking Logs');
Mouse(x,y,0,0,true);
wait(500+random(100));
end else
This is very botlike, make it random.
You are doing everything in exactly the same order.
Try:
SCAR Code:
begin
Writeln('Found Logs!');
counter:= 0;
begin
case Random(5) of
1: wait(200+random(300));
NormalMouse;
Antiban;
AntiRandoms;
MMouse(x,y,15,15);
GetMousePos(x,y);
2: NormalMouse;
MMouse(x,y,15,15);
GetMousePos(x,y);
AntiBan;
end;
wait(600+random(200));
Mouse(x,y,0,0,true);
wait(500+random(100));
end else
You didnt have any Antiban, Antirandoms etc.
So I put in for you.
I added a bit of randomness etc.
SCAR Code:
procedure ClickButler;
begin
if(FindColorSpiralTolerance(x,y,BColor,0,0,515,335,10)) then
begin
Writeln('Moving to Butler');
NormalMouse;
MMouse(x,y,5,5);
GetMousePos(x,y);
wait(750+random(300));
Writeln('Clicking Butler');
Mouse(x,y,0,0,true);
wait(1200+random(300));
end;
end;
As said before, I suggest using AutoColor.
Why not just have:
SCAR Code:
procedure ClickButler;
begin
if(FindColorSpiralTolerance(x,y,BColor,0,0,515,335,10)) then
begin
NormalMouse;
wait(750+random(300));
Mouse(x,y,0,0,true);
wait(1200+random(300));
end;
end;
Much shorter.
SCAR Code:
procedure CheckPay;
begin
if (FindBitmapTolerance(desirest,x,y,50)) then
begin
rep:=0
Writeln('Butler Needs Pay!');
mousex:=230+random(150);
mousey:=450+random(10);
Writeln('Moving to Pay Butler');
NormalMouse;
MMouse(230,450,150,10);
GetMousePos(x,y);
wait(500+random(300));
Writeln('Clicking First Butler Pay Message');
Mouse(x,y,0,0,true);
wait(700+random(800));
mousex:=175+random(150);
mousey:=385+random(10);
Writeln('Moving to 10k payment option');
NormalMouse;
MMouse(175,385,150,10);
GetMousePos(x,y);
wait(300+random(300));
Writeln('Clicking 10k payment option');
Mouse(x,y,0,0,true);
wait(900+random(200));
ClickContinue(true,true);
ClickLogs;
ClickButler;
pay:=1;
end else
begin
Writeln('Butler does not need payment yet.');
pay:=1;
end;
end;
Very messy, try learning TPA's and use on stuff like this.
SCAR Code:
procedure Uncert;
begin
CheckPay;
if (pay=1) then
begin
Writeln('Moving to Uncert');
NormalMouse;
MMouse(235,390,30,7);
GetMousePos(x,y);
wait(800+random(100));
Writeln('Clicking Uncert');
Mouse(x,y,0,0,true);
AntiBan;
wait(7800+random(700));
end;
end;
Again, could be much shorter:
SCAR Code:
procedure Uncert;
begin
UncertDTM := DTMFromString() / UncertBMP := BMPFromString() // Much more accurate
CheckPay;
if (pay=1) then
begin
NormalMouse;
wait(800+random(100));
if FindDTM(UncertDTM) then begin
Mouse(x,y,0,0,true);
AntiBan;
wait(7800+random(700));
end;
end;
DTMs for less botlike behaviour and more accuracy, and get rid of the MMouse and GetMousePos.
SCAR Code:
procedure Sawmill;
begin
if (FindBitmapTolerance(sawmillbmp,x,y,50)) then
begin;
Writeln('Moving to sawmill option');
MMouse(150,427,200,10);
GetMousePos(x,y);
wait(500+random(300));
Writeln('Clicking sawmill option');
Mouse(x,y,0,0,true);
AntiBan;
wait(6500+random(500));
end;
end;
Use TPA's instead of FBT.
As I said, no need for MMouse etc.
SCAR Code:
procedure FreeBmps;
begin
FreeBitmap(Logs);
end;
Dont you want to free the rest of the BMPs?
Could cause memory leak.
Hope this helps.
Not scripted in a while so I am a bit rusty :P
If you need any help PM me 
T~M