SRL Archive - First Scripts

My edgeville yew cutter


brad734

2009-05-06 13:10:01

OFFLINE!

Currently need: DTM tutorial and for this to bank :S

its my very first script. iv only learn't to script in last 5 days so it has many bugs and i need a Lil bit of help. if you can see any basic errors could you post please. also i need help with making a proggy. this doesn't bank once has full inv. dunno why :S Also why doesn't it use the smart world i put in
SmartWorld = 11;
i have
SmartSetupEx(SmartWorld, false, true, false);
thanks :D




    {  //////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
//!! Sp!tes (brad734) FIRST BASIC !!\\
// AUTO CUTTER \\
//!!///////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\!!\\\

V 1.1 : RELEASE
V 1.2 : Proggy and srl stats updated.


Made this script by studing others and learning :D
Currently working with Scar 3.15b and rev #32
Put player at edgeville yews. start script.
Also could someone tell me how 2 make script post proggie in debug?
dont recommend using for long periods of time. watch every 30-45 mins

Credits
Thanks to Hobbit for fixing my smart
Thanks to Darkarcana for telling me how do improve my proggie. }


Program EdgeYews; {V 1.2}
{.include SRL/SRL/Misc/Smart.scar}
{.include SRL\SRL.SCAR}

{
|------------------------------------------
| --------> SETUP <-------- |
|__________________________________________|
}

const

YourSRLStatsID = ''; // Not currently working however put yours in if you wish
YourSRLStatsPass = ''; // Password for the SRL stats
SmartWorld = 11;

var
x, y, i, w, Inv1, Inv2, color1, color2, color3 : Integer;
BC, BankerColor, bankOpen, Banker, yew, depo, Bankclose, treeTop : Integer; load : Integer;

procedure DeclarePlayers;
begin
CurrentPlayer := 0;
NumberOfPlayers(1);

//__________________PLAYER SETUP________________________\\

Players[0].Name := ''; //username
Players[0].Pass := ''; // password
Players[0].Nick := ''; //3-4 letters of name
Players[0].Pin := ''; //bank Pin
Players[0].BoxRewards := ['XP', 'ostume']; //Use the random event box on what?
Players[0].Active := True;

{Players[1].Name := ''; //username
Players[1].Pass := ''; // password
Players[1].Nick := ''; //3-4 letters of name
Players[1].Pin := ''; //bank Pin
Players[1].BoxRewards := ['XP', 'ostume']; //Use the random event box on what?
Players[1].Active := True;

Players[2].Name := ''; //username
Players[2].Pass := ''; // password
Players[2].Nick := ''; //3-4 letters of name
Players[2].Pin := ''; //bank Pin
Players[2].BoxRewards := ['XP', 'ostume']; //Use the random event box on what?
Players[2].Active := True;

Players[3].Name := ''; //username
Players[3].Pass := ''; // password
Players[3].Nick := ''; //3-4 letters of name
Players[3].Pin := ''; //bank Pin
Players[3].BoxRewards := ['XP', 'ostume']; //Use the random event box on what?
Players[3].Active := True;}
end;

//_______________________NO NEED TO TOUCH BELOW HERE_____________________\\

Procedure AntiRandoms;
begin
FindNormalRandoms;
If(FindFight) then
begin
RunAway('N', True,1,15000);
Wait(5000+random(5000));
end;
FindLamp('woodcutting');
end;

Procedure AntiBan;
begin
case(Random(100)) of
1: HoverSkill('woodcutting', false);
2: BoredHuman;
3: MMouse(Random(750), Random(750), Random(100), Random(100));
4: PickupMouse;
5: Gametab(random(12));
6: begin
case(random(5)) of
0: makecompass('N');
1: makecompass('S');
2: makecompass('E');
3: makecompass('W');
end;
end;
7: begin
case(random(10)) of
0: typesend('Lagg');
1: typesend('Level up, already!');
3: typesend('Lol');
end;
end;
8: Pickupmouse;
9: wait(5000+random(10000));
10: begin
case(random(10)) of
0: begin
w := random(90000);
writeLn('Breakhandler: Taking break for '+IntToStr(w));
Logout;
Wait(w);
LoginPlayer;
end;
1: begin
w := random(20000);
writeLn('Breakhandler: Taking break for '+IntToStr(w));
Logout;
Wait(w);
LoginPlayer;
end;
end;
end;
11: RandomRClick;
12: RandomMovement;
end;
end;

procedure SmartDrop;
begin
for i:= 2 to 28 do
begin
DropItem(i);
end;
end;

procedure ProgressReport;
Begin
ClearDebug;
Writeln('-------------------------------');
Writeln('Worked for '+TimeRunning);
Writeln('Done' + IntToStr(Load) +' Loads');
Writeln('Thanks for using THIS :D ');
Writeln('I kno its useless script but plz');
Writeln('post proggie ');
Writeln('-------------------------------');
end;

Procedure Chop;
begin
color1 := 4029040;
color2 := 1654585;
color3 := 1322793;
if findColor(x, y, color1, msx1, msy1, msx2, msy2) or
findColor(x, y, color2, msx1, msy1, msx2, msy2) or
findColor(x, y, color3, msx1 ,msy1, msx2, msy2) then
begin
MMouse(x,y,1,1);
wait(500+random(1000));
if(isuptext('ew')) then
begin
Mouse(x,y,1,1,true);
end;
end;
end;

function findTree: Boolean;
begin
if findColor(x, y, color1, msx1, msy1, msx2, msy2) or
findColor(x, y, color2, msx1, msy1, msx2, msy2) or
findColor(x, y, color3, msx1 ,msy1, msx2, msy2) then
result := true else
result := false;
end;

function Chopping: Boolean;
begin
inv1 := InvCount;
wait(5000+random(3000));
inv2 := InvCount;
if inv1=inv2 then
result := false else
result := true;
end;

Procedure GotoBank;
begin
treeTop := BitmapFromString(6, 6, 'beNoLsRDoZVy9fMaZEzt5OBg' +
'TAs2ASPUwo/wMRqAIRDA5BKQGgjBFgHqRRYBcuAjQEAgXqgsA/BUl' +
'3A==');
BC := 3975869;
MakeCompass('W');
if(findbitmap(treeTop,x,y)) then
Mouse(x,y,1,1,true);
Wait(3500+Random(5000));
if(findColor(x,y,BC,650,1,700,160)) then
Mouse(x,y,1,1,true);
Wait(10000+Random(5000));
end;

Procedure comefromBank;
begin
treeTop := BitmapFromString(6, 6, 'beNoLsRDoZVy9fMaZEzt5OBg' +
'TAs2ASPUwo/wMRqAIRDA5BKQGgjBFgHqRRYBcuAjQEAgXqgsA/BUl' +
'3A==');
if(findbitmap(treeTop,x,y)) then
Mouse(x,y,1,1,true);
Wait(10000+random(3000));
end;

Procedure GotoTree;
begin
treeTop := BitmapFromString(6, 6, 'beNoLsRDoZVy9fMaZEzt5OBg' +
'TAs2ASPUwo/wMRqAIRDA5BKQGgjBFgHqRRYBcuAjQEAgXqgsA/BUl' +
'3A==');
if(findbitmap(treeTop,x,y)) then
Mouse(x,y,1,1,true);
end;

function BankisOpen:boolean;
begin
bankOpen := BitmapFromString(32, 7, 'beNpVkL1Lw3AAROuaTUoki' +
'AFTVLCgoC12cCihVWOLtlqRSkSkqPhBhdZJcBDERXBx8s/1yckR4R' +
'F+CXcvlwzSw2wrCILvj+nLJH+6OxkNd8PyrIjC8kIUAs/vRwfXedZ' +
'p1wn39xudVm2jWnFL+cer/u1FlyToCQf5P98ensdnhO0nPLk5sh/5' +
'5elOL2sQRi6/WywBt3QLv5NaNSpf72Mk2ml4VxJHy8k8sXyQgvYfd' +
'7flL7Yk1B6hlvaTfJ2e83aZOVgOnOXPmvVSaQY5LfmLrUo8Z/hYtb' +
'yfL5VZWM4M/Rztl9/7i63qUkyeK7glv/6kl4CXk5Ec9tJN/Pwf7S+' +
'2cK6tLBpu/yb932+kNSSHvab22++WnOuricIcRP4Du6mzvw==');
if(findBitmap(bankOpen,x,y)) then
result := true else result := false;
end;

Procedure Bank;
begin
BankerColor := 3809579;
if(findColor(x,y,BankerColor,msx1, msy1, msx2, msy2)) then
Mouse(x,y,1,1,false);
Banker := BitmapFromString(75, 7, 'beNrtVEESgCAI5Hd+wKv/f4aVN' +
'kYsIGN1y+HgbCvsCpYTEdW2Sk4L0c/uSWwCte/UCh2xWujM84XIVw' +
'w+FvkbnCgcZytbgmbhzpx3YSPuhS7c4qNBh6+CQhv3izh64a65+Ok' +
'b9HH0ot5SJAmOmWiW4AyDHLfc+SOKzVU1c1ydAUwO9xA1Yu2d/3BE' +
'w5QTnGfsbNkASMS3+w==');
if(findbitmap(Banker, x, y)) then
Mouse(x,y,1,1,true);
if(bankisOpen) then
yew := BitmapFromString(9, 8, 'beNpz5nYz4XA0ACFrHXZTdTYgAjK' +
'AXG8LTjctDm89zihnbggKdeCCo5YcWyCKc+fGlIVLIctCEEQKaCay' +
'LISNJoWMIFJAFGDIiVUKUzwKAIMSM84=');
if(findbitmap(yew, x, y)) then
Mouse(x,y,1,1,false);
depo := BitmapFromString(27, 7, 'beNpjYIgNcacR+g8DmIKYbB' +
'Q1M+SBCM5GVszAwICmCy6OxsY0EKoGbCBcJbJGqhiI3xBcBsLNhPv' +
'9PzZAkoHo7kTyMjwYyTQQAJRDEYA=');
if(findbitmap(depo, x, y)) then
Mouse(x,y,1,1,true);
Bankclose := BitmapFromString(10, 8, 'beNo9j2EHwlAUhn9D5mbS' +
'aFcbXRb9iBKJIrNsklmpKFafog/76T3zcnlc97z3fc8519lfW37uB' +
'xMM4NXsbqfNo96ClO/ziCE0AcjQXvcqgSBgVjkOjedSrrt3hV/dbD' +
'T0nPNlXazojI4B3DRK4hEnEARelUXJ0omHkriyUuazGAW4CDbkFwt' +
'ngUEaB73yB2EAOsI=');
if(findbitmap(Bankclose, x, y)) then
Mouse(x,y,1,1,true);
Inc(Load);
ProgressReport;

end;

begin
ClearDebug;
Disguise('MSN');
DeclarePlayers;
Writeln('Waiting For SMART to Start...');
SmartSetupEx(SmartWorld, false, true, false);
wait(3000);
SetTargetDC(SmartGetDC);
SetupSRL;
SRLID := YourSRLSTATSID;
SRLPassword:= YOURSRLSTATSPASS;
if LoggedIn then Logout;
LoginPlayer;
repeat
Chop
repeat
AntiBan;
AntiRandoms;
if not FindTree then gotoTree;
if not Chopping then Chop;
until (InvFull);
if (Invfull) then
begin
gotoBank;
Bank;
comefromBank;
end;
until not LoggedIn;
end.

Dark Arcana

2009-05-06 13:25:17

Add load in var as an integer and then add this at the end of procedure bank:

Inc(Load);

Add this in the progress report:

Writeln('Done' + IntToStr(Load) +' Loads');

I recommend changing your SRL password from your SRL stats password.

Floor66

2009-05-06 14:10:55

You use no tolerance at all with FindColor or FindBitmap, so the script will just work for once, but when you reload RS the colours change and it won't work!
Use FindColorTolerance/FindBitmapToleranceIn (3.20b: FindTransparentBitmapIn or something).

I suggest using DMT's though!

purescar37

2009-05-13 21:22:00

not working :( i will keep trying :P