SCAR Code:
//Hi this is my Willow Cutter and Dropper!!!
//Use it anywhere there are Willows
//It has pretty good anti randoms and an ENT FINDER!
//Its anti ban is good too
//PLEASE FILL OUT DECLARE PLAYERS AND CONST!!!!!!! (lines 27-63)
//Please rate thread, Rep+ me if you liked it!, give feedback, post bugs, srl randoms reports, and post progress reports!!
//Use with srl rev 28, and scar divi 3.15
//Thanks to random developers, srl function developers, and people who gave me good feedback
//This script is made by Andyz55, and will only be edited in this thread with my permission, and should not be posted anywere else unless done by me..lol
//I also think that my proggie is quite descriptive!
//NEW FEATURE!! DROPS EVERYTHING EXCEPT AXES!!! NO MATTER WERE IT IS IN THE INV!!!
//I suggest you start logged in, with an axe in your hand or in first inv slot!
//Thanks to Joelster, Bumblebee, Billy, Bquamb, and Camo Kyle for feedback and suggestions!
//Thanks to everyone who made suggestions or said something helpful!
//VERSION 6.0! VERSION 6 HAS MUCH BETTER RANDOM FINDING, A BETTER PROGGIE, TREE FINDING, MORE FAILSAFES, TONS MORE ANTIBAN, STAYS ON TREE UNTIL CHOPPED, AND HAS SLEEP!!
//SPANISH RANDOM TALK SO THAT PEOPLE WONT KNOW WTF YOUR SAYING AND WONT TALK TO YOU!! (lol, thank you Spanish 2!)
//Version 6.5! Mouse speed added so dropping and tree finding is faster too!!
//Version 6.6! Dropping is better than 6.5 and all others, and drops everything except axes no matter were the axe is in the inventory!!
//Please, If you liked the script, Vote in the poll on the thread!
//Future updates: I hope to add srl stats, 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
Willowcolor = 7842965;//A color on the tree!
Sleeptime = 600000;//Time to sleep between player logins ---In Miliseconds!!!! Sleep time will be randomized within 5 minutes
WillowMM = 870958;//The color of a tree on the mini map!
Loads2do = 2; //Times to cut and drop however many free spaces of invintory you have for logs
SmartWorld = 81;
var
x, y, Times, i, Fight, Random1,
Loads, Ents, Waittimes: Integer;
procedure Declareplayers; //Fill this all out
Begin
HowManyPlayers := 1;//Number of people your using
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[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 := False;//use this player?}
{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 := False;//use this player?}
{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 := False;//use this player?}
end;
Procedure Randomtalk; //This is mostly in spanish
begin
case random(100) of
1 : typesend('...');
2 : typesend(addmistakes('speaking spanish is fun!', 20));
19: typesend(addmistakes('Im doing my spanish homework, kinda', 20));
3 : typesend('Yo vive en una casa!');
4 : typesend('Tu ares muy gordo!');
5 : typesend('Me no speaka de 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;
end;
procedure Entfind;
begin
if Findent(x, y, true) then
Inc(ents);
if Findent(x, y, true) then
RunAway('E', false, 1, 10000 + random(6000));
if Findent(x, y, true) then
Case random(5) of
1 : Typesend(addmistakes('Stupid ents', 30));
2 : Typesend(addmistakes('I hate ents..', 30));
end;
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 : Typesend(addmistakes('dumb randoms..', 23));
end;
Findmod;
FindTalk;
Randomtalk;
if findfight then
Inc(fight);
if findfight then
RunAway('E', true, 1, 15000+random(4000));
end;
end;
procedure Randoms;
begin
Lampskill := 'Woodcutting';
FindNormalRandoms;
if FindNormalRandoms then
begin
case random(8) of
1 : Typesend(addmistakes('dumb randoms..', 23));
3 : Typesend(addmistakes('Why me!??', 30));
2 : Typesend(addmistakes('wow this is gonna take forever..', 20));//If its a box random it might take a long time because of lag
end;
Entfind;
Findmod;
if Findmod then logout;
FindTalk;
Randomtalk;
Entfind;
if FindFight then
Inc(fight);
if FindFight then
RunAway('E', true, 1, 15000 + random(6000));
end;
end;
procedure antilagrandoms;
begin
findnormalrandoms;
entfind;
Findfight;
If findfight then
Runaway('E', true, 1, 15000 + random(6000));
end;
procedure Antiban;
begin
case random(90) of
1 : MMouse(0, 0, 700, 500);
2 : Hoverskill('Woodcutting', false);
5 : Randomtalk;
6 : PickupMouse;
7 : begin
Gametab(1 + Random(12));
Wait(2000 + Random(2000));
end;
end;
end;
procedure Proggie;
begin
if (not LoggedIn) then
begin
Writeln('======================Version 6.6======================');
Writeln('********************Andyz55''s******************');
Writeln('*********************WILLOW*********************');
Writeln('Thank you for using Andyz55''s Willow CHAINSAW!');
Writeln('Ran for ' + timerunning);
Writeln('Found ' + IntToStr(fight) + ' Fights!');
Writeln('Found ' + IntToStr(ents) + ' Ents!');
Writeln('Found ' + IntToStr(random1) + ' Randoms!');
Writeln('Found ' + IntToStr(mods) + ' Mods!');
Writeln('Earned about ' + IntToStr(Loads * 27 * 67) + ' Woodcutting Experience!');
Writeln('Cut and Dropped about ' + IntToStr(Loads * 27) + ' Logs!');
Writeln('Please Post Proggies and bugs and Randoms reports so I can UPDATE!!!!!!!!');
Writeln(' -Andyz55');
Writeln('********************CHAINSAW********************');
Writeln('======================Version 6.6======================');
end;
end;
procedure Dropalllogs;
begin
if (not (LoggedIn)) then Exit;
if (not (InvFull)) then Exit;
if (InvFull) then
begin
MouseSpeed := RandomRange(13, 17);;//Who wants slow dropping? NOT ME!
Gametab(4);
Randoms2;
begin//OK, Ok, i realised after making this that the extra begin isn't necessary.. if you wanna change it go ahead, just remove the end; too. Im too lazy lol
for I := 2 to 28 do
begin
if ExistsItem(i) then
begin
MMouseItem(i);
Wait(200 + random(100));
If isuptext('illow') or (isuptext('se')) then
begin
Getmousepos(x, y);
DropItem(i);
Randoms2;
end;
end
else
begin
Writeln('I could not find any logs, switching players');
Logout;
Proggie;
Writeln('Sleeping ' + IntToStr(Sleeptime) + ' Miliseconds');
Sleep(sleeptime + random(300000));
NextPlayer(Players[CurrentPlayer].Active);
Loginplayer;
end;
end;
Inc(loads);
end;
end;
end;
procedure Var1;
begin
if FindNormalRandoms then
Inc(Random1);
end;
procedure Var2;
begin
if Findmod then
Inc(Mods);
if Findmod then Logout;
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;
Repeat
FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']);
MMouse(x, y, 4, 4);
if (Isuptext('illow')) then
Wait(100 + random(100));
Getmousepos(x, y);
Mouse(x, y, 0, 0, false);
Wait(200 + random(100));
ChooseOption('hop');
Flag;
Wait(200 + random(400));
FindObjTPA(x, y, Willowcolor, 20, 2, 15, 25, 10, ['illow', 'Willo', 'Willow']);
MMouse(x, y, 5, 5);
Randoms;
Repeat
Wait(1000 + random(200));
Antilagrandoms;
Wait(2000 + random(1000));
Antiban;
Inc(Waittimes);
Until (not IsUpText('illow')) or (Invfull) or (Findnormalrandoms) or (Waittimes > 6);
If Waittimes > 6 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
Writeln('Ahh!! there aren''t any willows!!! OMFG LOGGING OUT, SLEEPING, AND SWITCHING PLAYERS!');
Logout;
Proggie;
Writeln('Sleeping ' + IntToStr(Sleeptime) + ' Miliseconds');
Sleep(sleeptime + random(300000));
NextPlayer(Players[CurrentPlayer].Active);
end;
end;
end;
end;
begin ////This part just below is script prep.
times := 0;
SMARTSetUpEx(SmartWorld, False, True, False); {WorldNum : Integer; Members, Signed, SuperDetail: Boolean}
Wait(5000);
SetTargetDC(SMARTGetDC);
ClearDebug;
SetupSrl;
SetupWoodcutting;
ActivateClient;
Declareplayers;
LoginPlayer;
Wait(200 + random(400));
SetRun(True);
Makecompass('N');
Wait(200 + random(300));
SetAngle(true);
Retaliate(true);
Wait(200 + random(100));
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 of script prep.
repeat
repeat
Cuttree;
Inc(times);
until (times = loads2do) or (not LoggedIn);
Logout;
Proggie;
Writeln('Sleeping ' + IntToStr(Sleeptime) + ' Miliseconds');
Sleep(sleeptime + random(300000));
NextPlayer(Players[CurrentPlayer].Active);
Loginplayer;
until (false);
end.
As for the axe problem, it will click on a willow cut it for around 3 seconds then try to wield my axe. It eventually ends up running away. I tried everything. I hope everything goes good for you and your family, sorry to hear. No need to rush this, just giving feed back.