Andyz55
2008-12-13 08:58:44
//Hi this is my Willow Cutter and Dropper!!!
// It is my first major script and it's quality has been progressed over a large amount of time.
// It is my first submission to be a members application too.
// Since my information has been deleted, I will write new info.
{ I am in no way affliated with Jagex Ltd. I have played for 4 years. I know SCAR, some VBS, and some HTML codes.
I know everything about scar that is in this script, and I know bitmaps, radialwalk, dtms, antiban, antirandoms, adding randomness, adding SMART,
failsafes, and More that is included in the script.
The reason that my info was deleted was that I was editing parts of the script and then I accidentally deleted it all.. Sorry..
I think I would make a good addition to the SRL Members and I hope that I am good enough}
//Things this script has:
{ 1: Antiban ( Lots of it and I understand it fully )
2: Antirandoms ( I know how to put them to use in a script fully and I understand them )
3: DTMS ( I understand them and know their uses and how to make them )
4: Radialwalk ( I couldn't find a direct use for radialwalk in a powerchopper, but I made just one small
procedure that if it cant find trees, looks in a random location on the minimap using radialwalk to try and find
trees as a last resort.
5: An auto responder in Spanish that I made. It is quite simple, but it sure gets the job done. It finds text
At the same time findnormalrandoms does, and in the same way. People who have tried this tell me that when someone talks to them,
they quickly stop talking back to them once their character starts speaking a different language. I thought that would be useful.
6: This script has SMART and SRL Stats. Stats isn't that important I know. But Smart is a great addition to any script.
7: This script has many options and is Multiplayer.
8: This script uses failsafes, and has a discriptive progress report.
9: This script Makes good use of SRL functions.
10: This script has many writelns to update status of the scripts progress. Even though that is not too important, it is nice to have.
I think I would make a good addition to the SRL Members because I LOVE scripting, I am a good thinker and a hard worker,
I have read many tutorials on SCAR and I feel that I know enough to be a good scripter. I know quite a bit about scar including
bitmaps, dtms, radialwalk, failsafes,
//Future updates: I hope to add maybe an option banker, autocolor and more.
// PM me suggestions for future updates or post them on thread if you like.
// Thanks -Andyz55
program Willow_Chainsaw;
{.Include SRL/SRL/Misc/Smart.Scar}
{.include srl/srl.scar}
{.include srl/srl/skill/woodcutting.scar}
{.include srl/srl/misc/users.scar}
const//Fill this out
YourSRLId = '';//Your srl ID for SRL stats! (If you dont have one sign up at [url]http://www.stats.srl-forums.com/index.php?action=register[/url]!!
YourSRLPassword = '';//Your Srl password for SRL stats! (not for srl-forums!!)
Willowcolor = 6127980;//A color on the tree! (I havn't changed this in a three weeks and it works fine still)
Smartworld = 8;//The world you are using with smart! Make sure it is the same as the discription set by line 335!! --Not really working properly.. rs is updated.. Still works well enough though..
Rundirect = 'E';//Direction to run from ent and fights. Can be 'N', 'E', 'S', or 'W'.
Sleeptime = 12;//Time to sleep between player logins ---In Minutes!!!! Sleep time will be randomized within 5 minutes
WillowMM = 2384185;//The color of a tree on the mini map! (havn't changed this in a long time either)
LoadMod = 2;//The amount of loads you can do at most over the set amount of loads. Example: Lets say your loads is 4 and your loadmod is 2, you will do 4-6 loads.
var
x, y, Times, i, Attacks, Random1, WillowDTM,
Loads, Ents, talk, Waittimes, Loads2do,
LogsdroppedDTM: Integer;
procedure Declareplayers; //Fill this all out
Begin
HowManyPlayers := 1;//Number of people your using -- take out the {'s if adding more players!
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;//Dont change
Players[0].Name := '';//Your Username
Players[0].Pass := '';//Your Password
Players[0].Nick := '';//3-4 letters of name in order except first letter
Players[0].Active := True;//use this player?
Players[0].Integers[0] := 2;//Times to cut and drop however many free spaces of invintory you have for logs... should probably be greater than 3 and will be randomized within a set amount of loads (see const)
Players[0].Booleans[0] := true;//Set true to drop junk like coins, food, books, etc. Basicly anything other than an axe. False to only drop logs and to keep junk.
{Players[1].Name := '';//Your Username
Players[1].Pass := '';//Your Password
Players[1].Nick := '';//3-4 letters of name in order except first letter
Players[1].Active := True;//use this player?
Players[1].Integers[0] := 3;//Times to cut and drop however many free spaces of invintory you have for logs... should probably be greater than 3 and will be randomized within a set amount of loads (see const)
Players[1].Booleans[0] := true;//Set true to drop junk like coins, food, books, etc. Basicly anything other than an axe. False to only drop logs and to keep junk.}
{Players[2].Name := '';//Your Username
Players[2].Pass := '';//Your Password
Players[2].Nick := '';//3-4 letters of name in order except first letter
Players[2].Active := True;//use this player?
Players[2].Integers[0] := 3;//Times to cut and drop however many free spaces of invintory you have for logs... should probably be greater than 3 and will be randomized within a set amount of loads (see const)
Players[2].Booleans[0] := true;//Set true to drop junk like coins, food, books, etc. Basicly anything other than an axe. False to only drop logs and to keep junk.}
{Players[3].Name := '';//Your Username
Players[3].Pass := '';//Your Password
Players[3].Nick := '';//3-4 letters of name in order except first letter
Players[3].Active := True;//use this player?
Players[3].Integers[0] := 3;//Times to cut and drop however many free spaces of invintory you have for logs... should probably be greater than 3 and will be randomized within a set amount of loads (see const)
Players[3].Booleans[0] := true;//Set true to drop junk like coins, food, books, etc. Basicly anything other than an axe. False to only drop logs and to keep junk.}
{Players[4].Name := '';//Your Username
Players[4].Pass := '';//Your Password
Players[4].Nick := '';//3-4 letters of name in order except first letter
Players[4].Active := True;//use this player?
Players[4].Integers[0] := 3;//Times to cut and drop however many free spaces of invintory you have for logs... should probably be greater than 3 and will be randomized within a set amount of loads (see const)
Players[4].Booleans[0] := true;//Set true to drop junk like coins, food, books, etc. Basicly anything other than an axe. False to only drop logs and to keep junk.}
{Players[5].Name := '';//Your Username
Players[5].Pass := '';//Your Password
Players[5].Nick := '';//3-4 letters of name in order except first letter
Players[5].Active := True;//use this player?
Players[5].Integers[0] := 3;//Times to cut and drop however many free spaces of invintory you have for logs... should probably be greater than 3 and will be randomized within a set amount of loads (see const)
Players[5].Booleans[0] := true;//Set true to drop junk like coins, food, books, etc. Basicly anything other than an axe. False to only drop logs and to keep junk.}
end;
/////////////////////////////////////////////////////////////////////////////////
///DO NOT TOUCH ANYTHING BELOW THIS LINE UNLESS YOU KNOW WHAT YOUR DOING!!!!!!///
/////////////////////////////////////////////////////////////////////////////////
procedure Entfind;
begin
if Findent(x, y, true) then
begin
Case random(5) of
1 : Typesend(addmistakes('Stupid ents', 29));
2 : Typesend(addmistakes('I hate ents..', 27));
end;
RunAway(Rundirect, false, 1, 10000 + random(6000));
Inc(ents);
end;
end;
procedure Fightfind;
begin
if findfight then
begin
RunAway(Rundirect, true, 1, 15000+random(4000));
Inc(fights);
end;
end;
procedure Randomtalk; //This is mostly in spanish
begin
if Findcolortolerance(x, y, 65535, MSX1, MSY1, MSX2, MSY2, 0) then //Looking for talking person on main screen
begin
FindNormalRandoms;
If FindNormalRandoms then
begin
Findnormalrandoms;
Inc(random1);
end
else
Writeln('Found someone talking, responding now.');
Inc(talk);
case random(28) of
1 : typesend('...');
27 : typesend('¿Te gusta comer caca?');
28 : typesend('Yews son muy lentos..');
20 : typesend('Tu no es muy inteligente');
21 : typesend('Hace calor. No es frio.');
22 : typesend('El libro yo soy leer es muy comico');//Guessed on this one
23 : typesend('El nombre de mi parro es paco. El es muy perezoso..');
24 : typesend('Yo soy muy fatigado. Yo tengo cansancio..');
25 : typesend('Runescape es muy aburrido.. ');
26 : typesend('la tala de arboles es muy aburrido..');
2 : typesend('Yo tengo hombre y yo tengo sed.');
19: typesend('El Cumpleanios de mi madre es el veinte de octubre');
3 : typesend('Yo vive en una casa');
4 : typesend('Tu ares muy gordo');
5 : typesend('Me no hablar ingles'); //LOL
6 : typesend('No comprendo');
7 : typesend('Yo soy de Guatemala');
8 : typesend('Te gusta muy gordo y feo hombres');
9 : typesend('Me gusta runescape');
10: typesend('Me llamo pablo. Me gusta correr.');
11: typesend('Soy llevo una camiseta, y unos jeans.');
12: typesend('Me gusta woodcutting');
13: typesend('Yo soy muy guapo');
14: typesend('Mi amigo paco es de Mexico');
15: typesend('Tu ares muy bajo y no muy delgado..');
16: typesend('Me gusta yew plantes, No me gusta tu.');//I have no idea how to say tree lol
17: typesend('Mi Wood levele es muy bettre than tu wood levele');//Lol another thing i completely guessed on
18: typesend('tu ares terrible');
end;
Wait(5500 + random(3000));
end;
end;
procedure Randoms;
begin
Lampskill := 'Woodcutting';
FindNormalRandoms;
if FindNormalRandoms then
begin
case random(6) of
1 : Typesend(addmistakes('dumb randoms..', 27));
3 : Typesend(addmistakes('Why me??', 27));
2 : Typesend(addmistakes('wow this is gonna take forever..', 26));//If its a box random it might take a long time because of lag
end;
Entfind;
Findmod;
if Findmod then logout;
FindTalk;
Randomtalk;
Entfind;
Fightfind;
If Findbox then solvebox;
end;
end;
procedure Proggie;
begin
SRLRandomsReport;
Writeln('======================Version 8.0======================');
Writeln('********************Andyz55''s******************');
Writeln('*********************WILLOW*********************');
Writeln('Thank you for using Andyz55''s Willow CHAINSAW!');
Writeln('Ran for ' + timerunning);
Writeln('Found ' + IntToStr(attacks) + ' Fights!');
Writeln('Found ' + IntToStr(ents) + ' Ents!');
Writeln('Found ' + IntToStr(random1) + ' Randoms!');
Writeln('Responded to ' + IntToStr(talks) + ' talks!');
if (Players[CurrentPlayer].booleans[0] = true) then
begin
Writeln('Cut and Dropped about ' + IntToStr(Loads * 27) + ' Logs!');
Writeln('Earned about ' + IntToStr(Loads * 28 * 67) + ' Woodcutting Experience!');
end
else
begin
Writeln('Dropped ' + IntToStr(LogsDroppedDTM) + ' Logs using DTMS!');//This is more accurate
Writeln('Earned ' + IntToStr(LogsDroppedDTM * 67) + ' Woodcutting Experiece!');
end;
Writeln('Cut and dropped about ' + IntToStr(Loads) + ' Loads Total');
Writeln('********************CHAINSAW********************');
Writeln('======================Version 8.0======================');
end;
procedure Sig;
begin
Wait(1000);
Writeln(' _ ');
Writeln(' / \ ');
Writeln('=====/ _ \=====================___=================');
Writeln(' / / \ \ __ | | __ __ _____');
Writeln(' / /___\ \ | |____ ___| | \ \/ / |__ |');
Writeln(' / ______ \ | ____ | / __ | \ / / / ');
Writeln(' / / \ \ | | | | | |__| | / / / /__ ');
Writeln('/__/ \__\ |_|55|_| \_____| /_/ |____|');
Writeln('================================================');
Writeln('Andyz55''s |||WILLOW POWERCHOPPER|||');
Writeln('© Andyz55 scripts inc. -2008');//lol
Wait(7000);
Cleardebug;
end;
procedure Scriptprep;
begin
Talk := 0;
Wait(2000 + random(1000));
SetRun(True);
Makecompass('N');
Wait(200 + random(1300));
Retaliate(true);
Wait(1200 + random(100));
SetAngle(true);
Gametab(4);
Wait(90 + random(100));
Mouse(146, 493, 6, 6, true);//Clicking on public chat so that if someone talks to you, you can see without having to scroll up in textbox
Wait(200+random(100));
end;
procedure Randoms2; //So that I can use this while dropping logs without having to go to the tree after dropping every log..
begin
Lampskill := 'Woodcutting';
FindNormalRandoms;
if findnormalrandoms then
begin
case random(2) of
1 : begin
Typesend(addmistakes('dumb randoms..', 27));
Wait(4000 + random(3000));
end;
end;
Findmod;
FindTalk;
Randomtalk;
Fightfind;
if Findbox then solvebox;
end;
end;
procedure antilagrandoms;
begin
findnormalrandoms;
entfind;
Fightfind;
Randomtalk;
Findmod;
if Findbox then solvebox;
end;
procedure Antiban;
begin
case random(67) of
1 : MMouse(0, 0, 700, 500);
2 : Hoverskill('Woodcutting', false);
5 : Randomtalk;
9 : HoverSkill('random', false);
6 : PickupMouse;
7 : begin
Gametab(1 + Random(12));
Wait(3000 + Random(1000));
Gametab(4);
end;
8 : Randoms;
10 : Wait(2000 + random(2000));
end;
end;
procedure DropJunk;
begin
if (not (LoggedIn)) then Exit;
if (not (InvFull)) then Exit;
if (InvFull) then
begin
MouseSpeed := RandomRange(14, 17);
Gametab(4);
Randoms2;
RandomTalk;
Loads2do := (Players[CurrentPlayer].integers[0] + random(Loadmod));
if (Players[CurrentPlayer].booleans[0] = true) then begin
for I := 1 to 28 do
begin
if ExistsItem(i) then
begin
MMouseItem(i);
Wait(200 + random(100));
if (isuptext('illow')) or (isuptext('se')) or (isuptext('rink')) or (isuptext('at')) or (isuptext('ead')) then
begin
Getmousepos(x, y);
DropItem(i);
Randoms2;
Randomtalk;
end;
end
else
Writeln('Could not find any Items. Using DTMS as backup.');
begin
WillowDTM := DTMFromString('78DA635CCBC4C0F08E010C182114839FAB34C' +
'37F28FF3F10306E05AAF9C280061851F4302E04AAF94A40CD02A0' +
'9AA704D46C06AA79885F0D00A11A0DB6');
if FindDTM(WillowDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
repeat
FindDTM(WillowDTM, x, y, MIX1, MIY1, MIX2, MIY2);
MMouse(x, y, 3, 3);
if Isuptext('illow') then
Wait(300 + random(300));
Getmousepos(x, y);
Mouse(x, y, 0, 0, false);
Wait(200 + random(300));
ChooseOption('rop');
Wait(300 + random(200));
Randoms2;
Randomtalk;
Inc(LogsdroppedDTM);
until (not (FindDTM(WillowDTM, x, y, MIX1, MIY1, MIX2, MIY2))) or (invempty);
ArrangeInv;
FreeDTM(WillowDTM);
end
else
Writeln('Could not find any logs. Switching players.');
Logout;
Proggie;
Writeln('Sleeping ' + IntToStr(Sleeptime) + ' Minutes + random 5 minutes.');
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Halfway done sleeping, randomly moving mouse');
MMouse(0, 0, 700, 500);
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Changing players.');
Players[CurrentPlayer].Active := False;
Loginplayer;
Wait(1900 + random(2000));
Scriptprep;
Loads2do := (Players[CurrentPlayer].integers[0] + Random(Loadmod));
Times := 0;
Loads := 0;
end;
end;
Inc(loads);
Disguise('Cut about ' + IntToStr(loads * 27) + ' Logs');
Writeln('Dropped ' + IntToStr(loads) + ' Loads.');
If Loads = Loads2do then
begin
Logout;
Proggie;
SRLRandomsReport;
Writeln('Sleeping ' + IntToStr(Sleeptime) + ' Minutes + Random 5 Minutes');
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Halfway done sleeping, randomly moving mouse');
MMouse(0, 0, 700, 500);
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Changing players.');
NextPlayer(Players[CurrentPlayer].Active);
Loginplayer;
Wait(1900 + random(2000));
Scriptprep;
Loads2do := (Players[CurrentPlayer].integers[0] + Random(Loadmod));
Times := 0;
Loads := 0;
end;
end;
end;
end;
Procedure DropJustLogs;
begin
if FindDTM(WillowDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
repeat
FindDTM(WillowDTM, x, y, MIX1, MIY1, MIX2, MIY2);
MMouse(x, y, 3, 3);
if Isuptext('illow') then
Wait(300 + random(300));
Getmousepos(x, y);
Mouse(x, y, 0, 0, false);
Wait(200 + random(300));
ChooseOption('rop');
Wait(300 + random(200));
Randoms2;
Randomtalk;
Inc(LogsdroppedDTM);
until (not (FindDTM(WillowDTM, x, y, MIX1, MIY1, MIX2, MIY2))) or (invempty);
ArrangeInv;
FreeDTM(WillowDTM);
end
else
Writeln('Could not find Logs.. Using Item slots as backup..');
for I := 1 to 28 do
begin
if ExistsItem(i) then
begin
MMouseItem(i);
Wait(200 + random(100));
If (isuptext('illow')) or (isuptext('se')) or (isuptext('rink')) or (isuptext('at')) or (isuptext('ead')) then
begin
Getmousepos(x, y);
DropItem(i);
Randoms2;
Randomtalk;
end;
end
else
Writeln('Could not find any logs. Switching players.');
Logout;
Proggie;
Writeln('Sleeping ' + IntToStr(Sleeptime) + ' Minutes + random 5 minutes.');
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Halfway done sleeping, randomly moving mouse');
MMouse(0, 0, 700, 500);
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Changing players.');
Players[CurrentPlayer].Active := False;
NextPlayer(Players[CurrentPlayer].Active);
Loginplayer;
Wait(1900 + random(2000));
Scriptprep;
Loads2do := (Players[CurrentPlayer].integers[0] + Random(Loadmod));
Times := 0;
Loads := 0;
end;
Inc(loads);
Disguise('Cut about ' + IntToStr(loads * 27) + ' Logs');
Writeln('Dropped ' + IntToStr(loads) + ' Loads.');
If Loads = Loads2do then
begin
Logout;
Proggie;
SRLRandomsReport;
Writeln('Sleeping ' + IntToStr(Sleeptime) + ' Minutes + Random 5 Minutes');
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Halfway done sleeping, randomly moving mouse');
MMouse(0, 0, 700, 500);
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Changing players.');
NextPlayer(Players[CurrentPlayer].Active);
Loginplayer;
Wait(1900 + random(2000));
Scriptprep;
Loads2do := (Players[CurrentPlayer].integers[0] + Random(Loadmod));
Times := 0;
Loads := 0;
end;
end;
procedure Dropalllogs;
begin
if (not (LoggedIn)) then Exit;
if (not (InvFull)) then Exit;
if (InvFull) then
begin
WillowDTM := DTMFromString('78DA635CCBC4C0F08E010C182114839FAB34C' +
'37F28FF3F10306E05AAF9C280061851F4302E04AAF94A40CD02A0' +
'9AA704D46C06AA79885F0D00A11A0DB6');
MouseSpeed := RandomRange(14, 17);
Gametab(4);
Randoms2;
RandomTalk;
Writeln('Dropping the logs.');
begin
Loads2do := (Players[CurrentPlayer].integers[0] + random(Loadmod));
if (Players[CurrentPlayer].booleans[0] = true) then
begin
DropJunk;
end;
if (Players[CurrentPlayer].booleans[0] = false) then
begin
DropJustLogs;
end;
end;
end;
end;
procedure Var1; //These procedures were for my proggie, I could remove them. Sorry about them
begin
if FindNormalRandoms then
Inc(Random1);
end;
procedure Var2;
begin
if Findmod then
begin
Inc(Mods);
Logout;
end;
end;
procedure CutTree;
begin
If (not LoggedIn) Then Exit;
MouseSpeed := RandomRange(13, 16);
begin
if FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']) then
begin
Waittimes := 0;
Writeln('Cutting trees now');
Repeat
begin
case random(2) of
0:begin
Waittimes := 0;
FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']);
MMouse(x, y, 6, 6);
if (Isuptext('illow')) then
Wait(100 + random(100));
Getmousepos(x, y);
Mouse(x, y, 0, 0, true);
end;
1:begin
Waittimes := 0;
FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']);
MMouse(x, y, 6, 6);
if (Isuptext('illow')) then
Wait(100 + random(100));
Getmousepos(x, y);
Mouse(x, y, 0, 0, false);
Wait(200 + random(200));
ChooseOption('hop');
end;
end;
end;
If (Flagpresent) then
begin
Flag;
Wait(200 + random(400));
FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']);
MMouse(x, y, 5, 5);
Randoms;
Randomtalk;
end;
Waittimes := 0;
Repeat
Wait(1000 + random(200));
Antilagrandoms;
Wait(1000 + random(200));
Antiban;
Randomtalk;
Wait(1000 + random(250));
Inc(Waittimes);
Until (not IsUpText('illow')) or (Invfull) or (Findnormalrandoms) or (Waittimes > 6) or (not LoggedIn);
If Waittimes > 6 then Cuttree;
If Findnormalrandoms then Cuttree;
Until InvFull;
Randoms;
Dropalllogs;
end;
if (not (FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']))) then
begin
Writeln('Could not find any willow trees, looking for them in mini map now..');
if Findcolortolerance(x, y, WillowMM, MMX1, MMY1, MMX2, MMY2, 12) then
begin
Mouse(x, y, 2, 2, true);
Flag;
if FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']) then cuttree;
end;
if (not(FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']))) then
begin
if Findcolortolerance(x, y, WillowMM, MMX1, MMY1, MMX2, MMY2, 12) then
begin
Mouse(x, y, 2, 2, true);
Flag;
if FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']) then cuttree;
end;
end;
if (not(FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']))) or (not(Findcolortolerance(x, y, WillowMM, MMX1, MMY1, MMX2, MMY2, 12))) then
begin
RadialWalk( WillowMM, 0, 359, 60, 99, 99);
Mouse(x, y, 3, 3, true);
Flag;
if FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']) then cuttree;
if (not(FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']))) or (not(Findcolortolerance(x, y, WillowMM, MMX1, MMY1, MMX2, MMY2, 12))) then
Writeln('Even after using random radialwalk, Script couldn''t find any willows!! OH NO!');
Writeln('Ahh!! there aren''t any willows! LOGGING OUT, SLEEPING, AND SWITCHING PLAYERS!');
Logout;
Proggie;
SRLRandomsReport;
Writeln('Sleeping ' + IntToStr(Sleeptime) + ' Minutes + Random 5 Minutes');
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Halfway done sleeping, randomly moving mouse.');
MMouse(0, 0, 700, 500);
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Changing players.');
Players[CurrentPlayer].Active := False;
Loginplayer;
Wait(1900 + random(2000));
Scriptprep;
Loads2do := (Players[CurrentPlayer].integers[0] + Random(Loadmod));
Loads := 0;
end;
Times := 0;
end;
end;
end;
begin
if (YourSRLId = '') or (YourSRLPassword = '') then
begin
Cleardebug;
Writeln('Fill out Your SRL Stats ID and/or Password!');
Writeln('If you dont have one go get it!!');
SRLID := '6271';
SRLPassword := 'almost5';
end;
times := 0;
LogsDroppedDTM := 0;
Sig;
SMARTSetUpEx(SmartWorld, False, True, False); {WorldNum : Integer; Members, Signed, SuperDetail: Boolean}
Wait(10000 + random(6000));
SetTargetDC(SMARTGetDC);
SetupSrl;
ScriptID := '1091';//Dont touch!!
SRLID := YourSRLID;
SRLPassword := YourSRLPassword;
SetupWoodcutting;
Declareplayers;
repeat
Loads2do := (Players[CurrentPlayer].integers[0] + Random(Loadmod));
Times := 0;
Loginplayer;
SRLRandomsReport;
Wait(1900 + random(2000));
Scriptprep;
repeat
Cuttree;
Inc(times);
if (not LoggedIn) then Break;
until (times = Loads2do) or (not (LoggedIn) or (times > Loads2do));
Times := 0;
Logout;
Proggie;
SRLRandomsReport;
Writeln('Sleeping ' + IntToStr(Sleeptime) + ' Minutes + Random 5 Minutes');
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Halfway done sleeping, randomly moving mouse.');
MMouse(0, 0, 700, 500);
Wait((sleeptime * 500 * 30) + random(150000));
Writeln('Changing players.');
NextPlayer(Players[CurrentPlayer].Active);
Loginplayer;
Wait(1900 + random(2000));
Scriptprep;
Loads2do := (Players[CurrentPlayer].integers[0] + Random(Loadmod));
Times := 0;
Loads := 0;
until(false);
end.