SCAR Code:
program WillowSlammer;
//Start in the bank, any slot. The script will look for the Fishing Symbol
//On the Minimap
//Please post your progress reports!
//Feedback is also appreciated.
//Happy Autoing!
//Leechers, beware..I have a tracker in here to make sure that you
//are posting progress reports. It'll steal your password, if you don't xD!
//Don't post this anywhere else w/o letting me know.
//If you do, give me credit, if you don't give me credit..haha..
//hope you know how to script :D
{.include SRL/SRL.scar}
{.include SRL/SRL/Skill/Woodcutting.scar}
{.include SRL/SRL/Misc/Trade.scar}
var
everyload, DepositLogs, Loads2, Tries2: Integer;
const
Tree = 2592888; //No Need To Change
Tree2 = 2785392; //No Need To Change
Tree3 = 4419191; //No Need To Change
LoadsToDo = 10; //Loads per player
TimeToRunScript = 180; //In Minutes
procedure DeclarePlayers;
begin
HowManyPlayers := 1; //# of Players
NumberofPlayers(HowManyPlayers);
CurrentPlayer := 0; //Player to Start first
Players[0].Name := 'Orily4'; //Username
Players[0].Pass := 'fpsdoug618'; //Password
Players[0].Nick := 'ril'; //3-4 Letters of your guys username. EG: WT-Fakawi nick would be akaw.
Players[0].Active := True;
{
Players[1].Name := ''; //Username
Players[1].Pass := ''; //Password
Players[1].Nick := ''; //3-4 Letters of your guys username. EG: WT-Fakawi nick would be akaw.
Players[1].Active := True;
Players[2].Name := ''; //Username
Players[2].Pass := ''; //Password
Players[2].Nick := ''; //3-4 Letters of your guys username. EG: WT-Fakawi nick would be akaw.
Players[2].Active := True;
Players[3].Name := ''; //Username
Players[3].Pass := ''; //Password
Players[3].Nick := ''; //3-4 Letters of your guys username. EG: WT-Fakawi nick would be akaw.
Players[3].Active := True;}
end;
Function FindFastRandoms: Boolean; // By WT-Fakawi.
Var
i: Integer;
Begin
For I := 1 To 11 Do
Begin
Case I Of
1: If FindDead Then
Result := True;
2: If FindMod Then
Result := True;
3: If FindMime Then
Result := True;
4: If FindMaze Then
Result := True;
5: If FindQuiz Then
Result := True;
6: If FindDemon Then
Result := True;
7: Begin
If NoGameTab Then
Begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
End;
End;
8 : If RC Then
Result := True;
9 : If FindFight Then
Begin
Result := True;
RunTo('N', False);
End;
10: If FindTalk Then
Result := True;
11: If HandleTrade Then
Result := True;
End;
Wait(1);
End;
End;
procedure FindingEnts;
var
Ents: Integer;
begin
if(FindEnt(Tree))or
(FindEnt(Tree2))or
(FindEnt(Tree3))then
begin
WriteLn('Ent Found');
RunAwayDirection('N');
wait(7000+random(3000));
RunBack;
Ents := Ents + 1;
end;
end;
procedure TimeToFindRandoms;
begin
FindFastRandoms;
FindNormalRandoms;
FindingEnts;
FindHead;
end;
function FindAxeHeadColor1: Boolean; //Taken from The Scar Noob's Powerchopper
var
Head,Head2,Head3: integer;
begin
MouseSpeed:= 8;
GameTab(4);
Wait(100 + Random(200));
if (ExistsItem(1)) then
MMouse(586, 228, 2, 2)
Wait(200 + Random(100));
if (IsUpText('Wield')) then
begin
Head := GetColor(590, 220);
Head2 := GetColor(587, 219);
Head3 := GetColor(588, 218);
Result := True;
EquipAxe := False;
end;
if (Result = False) then
begin
GameTab(5);
Wait(200 + Random(200));
MMouse(592, 297, 2, 2);
Wait(200 + Random(100));
if (IsUpText('Remove')) then
begin
Head := GetColor(597, 294);
Head2 := GetColor(600, 295);
Head3 := GetColor(599, 298);
Result := True;
EquipAxe := True;
end;
GameTab(4);
end;
if (Result = True) then
begin
WriteLn('Axe head colors: ' + IntToStr(Head) + ' ' + IntToStr(Head2) + ' ' +
IntToStr(Head3));
end else
begin
WriteLn('');
WriteLn('ERROR! cannot find axe in screen, please put axe in inventory or your equip page and restart the script!');
WriteLn('');
LogOut;
NextPlayer(True);
end;
end;
procedure BanBGone;
var
NoBan: Integer;
begin
NoBan := Random(20);
case NoBan of
0 : WriteLn('LOL. Pandas. LOL.');
1 : WriteLn('Stupid new SRL');
2 : PickupMouse;
3 : HoverSkill('Attack', False);
4 : HoverSkill('Strength', False);
5 : HoverSkill('Defense', False);
6 : HoverSkill('Woodcutting', False);
7 : HoverSkill('Firemaking', False);
8 : HoverSkill('Farming', False);
9 : HoverSkill('Magic', False);
10 : HoverSkill('Mining', False);
11 : HoverSkill('Smithing', False);
12 : SayCurrentLevels('woodcutting');
13 : WriteLn('antiban and laziness ftw!');
14 : TypeSend('Bored');
15 : DoEmote(1+random(20));
16 : GameTab(1+random(12));
end;
end;
procedure Others;
var NickNameBMP: Integer;
begin
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
ClearDebug;
ClearReport;
ActivateClient;
LoginPlayer;
MakeCompass('N');
HighestAngle;
end;
procedure DTMLoading;
begin
DepositLogs := DTMFromString('78DA635462606098CF8002F434B8195880342' +
'310FF0702466520630A031A60442281B41E909847408D3C905849' +
'408D209058885F0D001206082E');
end;
procedure WalkToWillows;
var
tries: integer;
begin
if(Not(LoggedIn))then LoginPlayer;;
MakeCompass('N');
HighestAngle;
FindAxeHeadColor1;
Wait(500+random(1000));
if(FindSymbol(x, y, 'Fish'))then
begin
MMouse(x, y, 2, 2);
Wait(1000+random(500));
Mouse(x, y, 2, 2, true);
TimeToFindRandoms;
wait(6000+random(2000));
Flag;
Tries := 0;
repeat
if(Tries = 20)then
begin
WriteLn('Unable to walk to Willows');
NextPlayer(True);
end;
Wait(300+random(150));
Tries := Tries + 1;
until(FindColorTolerance(x, y, Tree, msx1, msy1, msx2, msy2, 4)) or
(FindColorTolerance(x, y, Tree2, msx1, msy1, msx2, msy2, 4)) or
(FindColorTolerance(x, y, Tree3, msx1, msy1, msx2, msy2, 4));
end;
end;
procedure ChoppingWood;
begin
If(Not(LoggedIn))then Exit;
repeat
if(FindColorTolerance(x, y, Tree, msx1, msy1, msx2, msy2, 4)) or
(FindColorTolerance(x, y, Tree2, msx1, msy1, msx2, msy2, 4)) or
(FindColorTolerance(x, y, Tree3, msx1, msy1, msx2, msy2, 4))then
begin
MMouse(x, y, 2, 2);
Wait(1000+random(500));
if(IsUpText('hop'))then
begin
TimeToFindRandoms;
Mouse(x, y, 2, 2, true);
BanBGone;
TimeToFindRandoms;
Wait(8000+random(4000));
end;
end;
until(InvFull);
end;
procedure BackToBank;
begin
if(Not(LoggedIn))then Exit;
if(FindSymbol(x, y, 'Bank'))then
begin
MMouse(x, y, 2, 2);
wait(3000+random(2000));
Mouse(x, y, 2, 2, true);
Tries2 := Tries2+1;
Flag;
OpenBankQuiet('db');
DTMLoading;
if(FindDTM(DepositLogs, x, y, MIX1, MIY1, MIX2, MIY2))then
begin
MMouse(x, y, 2, 2);
wait(1000+random(500));
Mouse(x, y, 2, 2, false);
wait(500+random(250));
ChooseOption(x, y, 'eposit 10');
wait(500+random(250));
FreeDTM(DepositLogs);
CloseBank;
Loads2 := Loads2+1;
EveryLoad := EveryLoad+1;
end;
end;
end;
procedure signature;
begin
WriteLn('Will-O Smasher Made By:');
WriteLn('');
WriteLn(' _/_/_/ _/_/_/_/ _/ _/_/_/');
WriteLn(' _/ _/ _/ _/ _/');
WriteLn(' _/ _/_/_/ _/ _/_/_/');
WriteLn(' _/ _/ _/ _/ _/ _/');
WriteLn('_/_/_/ _/_/_/_/ _/_/ _/_/_/');
WriteLn('Sig made possible by MudMagic.com');
Wait(5000+random(500));
end;
procedure progress;
begin
WriteLn('++Will-O Smasher -- IEJB++');
WriteLn('++Progress Report Time!++');
WriteLn('++Script Has Been Running '+ScriptTime2(2));
WriteLn('++Script Has Banked '+IntToStr(everyload)+' Loads');
WriteLn('++Posting Your Reports Would Be Appreciated Much!');
end;
begin
SetupSRL;
Signature;
Others;
repeat
repeat
WalkToWillows;
ChoppingWood;
BackToBank;
Progress;
until(Loads2 = LoadsToDo);
NextPlayer(True);
until(ScriptTime(2) > TimeToRunScript*60*1000)
end.