SCAR Code:
Program MultiReporterV8.5;
{.include SRL/SRL.scar}
{##################################
######### Made by Smithsps ########
###################################
####### Im not responsible ########
######## for you getting #########
############# banned ##############
###################################
##### The script will run for #####
######### at least 5 mins #########
###################################}
// Thanks n3ss3s for your tut on fenced proggys.
// Thanks Hy for you help on SRL stats.
const
TTR = 2; //Times to report each account.
AOA = 1; //Amount of accounts you want to report.
RBA = 20; //How many reports do you want before antiban?
UDLampSkill = 'attack';//Lol, just incase you get a genie.
HowManyAccounts = 1; //Amount of accounts you plan on using to report.
{########################################}
YourSrlID = '****';
YourSrlPass = '****';
var
PlayerToReport : array of string;
CurPlayer, TimesReported, Anti : integer;
procedure PlayersToReport;
begin
SetArrayLength(PlayerToReport, AOA);
PlayerToReport[0] := 'Zezima'; //1st player to report
PlayerToReport[1] := 'Gertjaars'; //2nd player
PlayerToReport[2] := 'Villandra'; //3rd player
PlayerToReport[3] := 'Cygopat'; //4rd player
PlayerToReport[4] := 'Aaron11144'; //5rd player
PlayerToReport[5] := 'Season'; //6rd player
PlayerToReport[6] := 'Madlou0'; //7rd player
PlayerToReport[7] := 'Gonga Jew'; //8rd player
PlayerToReport[8] := 'Aasiwat'; //9rd player
PlayerToReport[9] := 'Ran Bayer2'; //10th player
//If you want more players just add more of the above.
end;
Procedure DeclarePlayers;
begin
NumberOfPlayers(HowManyAccounts); // Sets the Players Array Length;
CurrentPlayer:= 0;
//##########################################
Players[0].Name :='gonagetbaned'; //It is a real account
Players[0].Pass :='***'; //not the passowrd though...
Players[0].Nick :='ona';
Players[0].Active:= True;
end;
Procedure FindRandoms;
begin
LampSkill := UDLampSkill;
FindNormalRandoms;
if FindFight then RunAway('S', True, 2, 10000);
end;
Function GetTimeRunningConvert(Choice: integer): integer;
begin
case Choice of
1: Result := GetTimeRunning / 1000; // Secounds
2: Result := GetTimeRunning / 1000 / 60; // Minutes
3 : Result := GetTimeRunning / 1000 / 60 / 60; // Hours
end;
end;
procedure RuleReport(Rule: integer; UserToReport: string);
var
RuleCordsX, RuleCordsY: array of integer;
FailSafe : integer;
UserName : string;
begin
SetArrayLength(RuleCordsX, 13);
SetArrayLength(RuleCordsY, 13);
RuleCordsX := [57, 55, 61, 68, 61, 63, 80, 285, 273, 265, 269, 274, 277];
RuleCordsY := [214, 230, 245, 262, 275, 291, 307, 216, 231, 241, 262, 290, 277];
if(Loggedin = False)then Exit;
UserName := UserToReport;
repeat
Mouse(RandomRange(412, 501), RandomRange(484, 498), 1, 1, True);
Wait(1250 + Random(750));
Inc(FailSafe);
if(FailSafe > RandomRange(3, 5))then Break;
until(GetColor(411, 77) = 16777215);
if(FailSafe > RandomRange(3, 5))then Exit;
Mouse(263, 136, 5, 5, True);
TypeSend(UserToReport);
if(Rule < 1)or(Rule > 13)then
begin
writeln('Invaild Rule');
Exit;
end;
Mouse(RuleCordsX[Rule - 1], RuleCordsY[Rule - 1], 2, 7, True);
end;
Wait(1250 + Random(750));
if(GetColor(411, 77) <> 16777215)then
writeln('Successfully Reported ' + UserName + '.');
end;
Procedure Report;
begin
if(AOA = CurPlayer)then CurPlayer := 0;
RuleReport(RandomRange(1, 2), PlayerToReport[CurPlayer]);
Anti := Anti + 1;
Inc(ReportVars[0]);
Inc(TimesReported);
end;
procedure ProggressReport;
begin
ClearDebug;
writeln('##-------- Progress Report --------##');
writeln(Padr('##- Reported : ' + IntToStr(TimesReported), 34)+ '-##');
writeln(Padr('##- Time Running : ' + IntToStr(GetTimeRunningConvert(2)) + ' minutes.', 34)+ '-##');
writeln('##---------------------------------##');
end; // Thanks n3ss3s for your tut on this.
Function RandomSkill(Skills: Boolean): string;
//Returns a Random Free Skill if True, a Random Member Skill if False
begin
if(Skills)then
case Random(14) of
0: Result := 'attack';
1: Result := 'defence';
2: Result := 'strength';
3: Result := 'hitpoints';
4: Result := 'mining';
5: Result := 'smithing';
6: Result := 'woodcutting';
7: Result := 'firemaking';
8: Result := 'magic';
9: Result := 'fishing';
10: Result := 'ranged';
11: Result := 'prayer';
12: Result := 'runecrafting';
13: Result := 'cooking';
14: Result := 'crafting';
end;
if Not(Skills)then
case Random(24) of
0: Result := 'attack';
1: Result := 'defence';
2: Result := 'strength';
3: Result := 'hitpoints';
4: Result := 'mining';
5: Result := 'smithing';
6: Result := 'woodcutting';
7: Result := 'firemaking';
8: Result := 'magic';
9: Result := 'fishing';
10: Result := 'ranged';
11: Result := 'prayer';
12: Result := 'runecrafting';
13: Result := 'cooking';
14: Result := 'fletching';
15: Result := 'hunter';
16: Result := 'summoning';
17: Result := 'construction';
18: Result := 'herblore';
19: Result := 'agility';
20: Result := 'thieving';
21: Result := 'slayer';
22: Result := 'farming';
23: Result := 'crafting';
end;
end;
Procedure AntiBan;
begin
case random(7) of
0: HoverSkill(RandomSkill(True), false);
1: begin
MouseBox(54, 309, 436, 200, 3);
MMouse(54, 178, 50, 50);
MMouse(436, 104, 50, 50);
MMouse(271, 309, 50, 50);
MMouse(226, 200, 50, 50);
PickUpMouse;
end;
2:begin
MakeCompass('S');
MakeCompass('N');
MakeCompass('E');
MakeCompass('W');
MakeCompass('N');
end;
3: RandomRClick;
4: HoverSkill(RandomSkill(True), false);
5: RandomMovement;
6: AlmostLogout;
end;
Anti := 0;
end;
procedure Sig;
begin
ClearDebug;
writeln(' ____ ____ ____ ____ ____ ____ ____ ____ ');
writeln('||S |||m |||i |||t |||h |||s |||p |||s ||');
writeln('||__|||__|||__|||__|||__|||__|||__|||__||');
writeln('|/__\|/__\|/__\|/__\|/__\|/__\|/__\|/__\|');
wait(1000);
end;
Procedure Setup;
begin
SetupSrl;
ScriptID := '730';
SRLId := YourSrlID;
SRLPassword := YourSrlPass;
DeclarePlayers;
PlayersToReport;
ActivateClient;
Sig;
SetAngle(True);
ReportVars[0] := 0;
TimesReported := 0;
CurPlayer := 0;
if Loggedin then Logout;
if (SRLId = '') or (SRLPassword = '') then
begin
ClearDebug;
writeln('Get a life and get a Srl ID!');
TerminateScript;
end;
end;
begin
Setup;
LoginPlayer;
repeat
if (LoggedIn = False) then Break;
if (Anti = RBA) then AntiBan;
FindRandoms;
wait(1000);
Report;
Inc(CurPlayer);
until(TimesReported = AOA * TTR);
Logout;
if (GetTimeRunningConvert(2) < 4) then
begin
repeat
ClearDebug;
writeln('Waiting for 5 min mark.');
wait(500);
ClearDebug;
writeln('Waiting for 5 min mark..');
wait(500);
ClearDebug;
writeln('Waiting for 5 min mark...');
wait(500);
ClearDebug;
writeln('Waiting for 5 min mark....');
wait(500);
until (GetTimeRunningConvert(2) > 4);
end;
ProggressReport;
SRLRandomsReport;
end.