SRL Archive - RS3 Outdated / Broken Scripts

First script: Powahcutt0r


System79

2007-03-21 10:27:56

I hope you like it, i will be updating it alot and make it compatible with multi-user, it works pretty good, next update will be an autoresponder..

//This script uses pretty fast woodcutting, plus it does not have antirandoms
//Dont have your axe in 1st inventory slot.
//Thank you
//~System79
program PowahCutt0r;
{.include srl\srl.scar}
{.include srl\srl\skill\woodcutting.scar}
var Clicks: Integer;
Loads: Integer;
procedure CheckRandom;
begin
FindTalk;
FindNormalRandoms;
if (FindFight = true) then
begin
RunAwayDirection('N');
Wait(10000 + random(2000));
RunBack;
end;
end;
procedure ProgressReport;
begin
ClearDebug;
Writeln('o.O ============================= o.O');
Writeln('------>Powahch0pp0r by System79<-------');
Writeln(' Did ' + IntToStr(Loads) + ' Loads' + ' ');
Writeln('---------------------------------------------');
Writeln(' Did ' + IntToStr(Clicks) + ' Clicks' + ' ');
Writeln('o.O ============================ o.O');
end;

procedure Cuttree;
begin
repeat
if(FindColor(x,y,3041376,5,5,515,340))then
MMouse(x,y,3,3);
wait(50);
Mouse(x,y,0,0,true);
Clicks:=Clicks+1;
wait(6000);
until(InvFull);
end;
Procedure Drop;
begin
DropTo(5,28);
Loads:=Loads+1;
end;
begin
SetupSRL;
repeat
activateclient;
Cuttree;
Drop;
CheckRandom;
until(false);
end.

Any tips are welcome, always.
I think i did pretty good for a FIRST SCRIPT.
:sasmokin:
~System79
[ATTACH]2534[/ATTACH]

Pentti

2007-03-21 11:39:48

Pretty good for first script. May I suggest you to use FindObj function from SRL to find objects, it is easy way.

System79

2007-03-21 11:59:17

Ill have a look at it, thanks :)

Pentti

2007-03-21 12:32:15

and if you want to get antirandoms work and if you want to add player setup, youll need this in script:
procedure DeclarePlayers;
begin
SetArrayLength(Players,2)
CurrentPlayer:=0

Players[0].Name:='Name';
Players[0].Pass:='Pass';
Players[0].Nick:='Nick';
Players[0].Active:=True;

Players[1].Name:='Name';
Players[1].Pass:='Pass';
Players[1].Nick:='Nick';
Players[1].Active:=True;

end.

System79

2007-03-21 16:09:18

Thanks for your help :)

Smartzkid

2007-03-21 16:11:28

Seems nice…could use axehead finding and ent detection; other than that, it seems pretty cool

Pwnt by Pwnt

2007-03-21 20:13:43

ok so looks nice :) add me on MSN my name is [email]pwnt_by_pwnt@hotmail.com[/email].. anyway, about the script :P so it looks like really nice for a first script :) but theres some things u should add/change. ok so first of all i would make in the const something that says something like
TreeColor = 3041376;//Set To The Color Of Tree
and at the findcolor procedure change it to
if(FindColorSpiral(x,y,TreeColor,MSX1,MSY1,MSX2,MSY2))then
see i changed it to FindColorSpiral and changed those numbers to MSX and MSY (MainScreen X and Main Screen Y) so now it will find the colors better and the user can choose what color. Second, (I know u shouldnt worry about this and dont but read it later [once ur a better scripter, not that u arent pretty good already]) is that ur proggy does Clicks and Loads, i would change it to loads and Time Running, so u can change
procedure ProgressReport;
begin
ClearDebug;
Writeln('o.O ============================= o.O');
Writeln('------>Powahch0pp0r by System79<-------');
Writeln(' Did ' + IntToStr(Loads) + ' Loads' + ' ');
Writeln('---------------------------------------------');
Writeln(' Did ' + IntToStr(Clicks) + ' Clicks' + ' ');
Writeln('o.O ============================ o.O');
end;
to something like
procedure ProgressReport;
begin
ClearDebug;
Writeln('o.O ============================ o.O');
Writeln('------>Powahch0pp0r by System79<-------');
Writeln(' Did ' + IntToStr(Loads) + ' Loads' + ' ');
Writeln('---------------------------------------------');
Writeln(' Time Worked: ' + (ScriptTime2(2)) +' ');
Writeln('o.O ============================ o.O');
end;
lol so now it says how long it has been running (also u can take out the
Clicks: Integer;
in the var
3rd (and final for now[lol yay im gonna shut up soon :p]) is in ur drop procedure u have
DropTo(5,28);
for one, idk why u did 5,28 (most people do like 1,28 or 2,28) but this is a common mistake as i told someone else recently. You should change it to either
DropAllLogs;
or u could make a DTM for them logs :p i have a DTM that works that u could use but i dont know if i still have it :( but ok im done with this post lol (YAY IM GONNA SHUT UP SOON :spot:) but so remember what i said about those changes :) (theres also other things that are more advanced that i will tell u later though :p) lol again really good for a first script :spot: