Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program DewBlower;
- {$DEFINE SMART}
- {$I SRL/SRL.Simba}
- const
- AntiBanAmount = 30; //1 = alot of antiban. 100 = almost no anti ban. 15-40 is best.
- NoBreakRandom = 180; //between 0 and X minutes to play before a break
- BreakRandom = 30; //between 10 and 10 + X minutes you will break for
- var
- x, y, Orb, Starttime, XPS, XPHR, Sec, StatGain,
- XP1, XP2,
- InventoriesDone, FailCraft,
- xp:Extended;
- BankFails:Integer;
- StopScript:boolean;
- StopReason:String;
- LastBreakTime: Integer;
- breakNotMinutes:Integer;
- HowLong:Integer;
- const
- SRLStats_User = 'i do dew';
- SRLStats_Password = 'iluvzero1';
- Procedure DeclarePlayers;
- begin
- howmanyplayers := 1;
- currentplayer := 0;
- numberofplayers (howmanyplayers);
- with Players [0] do
- begin
- Name := 'rangeftw54';
- Pass := 'z760391k6';
- Pin := '7962';
- Member := True;
- Active := True;
- end;
- end;
- Procedure ProgressReport;
- var
- XPH : Extended;
- begin
- XP := GetXpBarTotal - Players[CurrentPlayer].Integers[0];
- Sec := (1+((Getsystemtime-StartTime)/1000));
- XPH := (3600*XP) / (Sec);
- statGain := XP;
- Writeln('================================================');
- Writeln('Time Running ' + TimeRunning);
- Writeln('XP Earned: ' + ToStr(XP));
- Writeln('XP/HR: ' + ToStr(XPHR));
- Writeln('Inventories: ' + ToStr(InventoriesDone));
- Writeln('================================================');
- end;
- procedure SetupLogin;
- begin
- SRL_SixHourFix := True;
- Smart_FixSpeed := True;
- SetupSRL;
- DeclarePlayers;
- LogInPlayer;
- end;
- Procedure Antibans;
- Begin
- Case Random(10) Of
- 0: begin Writeln('hoverskill'); HoverSkill('crafting', False); FTab(tab_Inv); end;
- 1: begin Writeln('boredhuman'); Boredhuman; ClickNorth(0); end;
- 2..5: begin Writeln('wait 3-10s'); Wait(3000 + random(7000)); end;
- 6: begin Writeln('pickupmouse'); PickUpMouse; end;
- 7: begin Writeln('RandomMovement'); RandomMovement; ClickNorth(0); end;
- 8: begin Writeln('RandomRClick'); RandomRClick; end;
- 9: begin Writeln('MiniBreak 0-180s'); Wait(Random(180000)); end;
- end;
- end;
- Procedure TakeSomeBreaks;
- //procedure takesomebreaks takes breaks for you if you are logged in too long.
- Var
- TimeSinceLastBreak : integer;
- Begin
- if(BreakNotMinutes <= 0) And (HowLong <= 0) then
- begin
- MarkTime(LastBreakTime);
- writeln('set BreakNotMinutes, because it is 0');
- BreakNotMinutes := (random(NoBreakRandom)+60)*60*1000+random(60000); //in ms
- end;
- TimeSinceLastBreak := TimeFromMark(LastBreakTime);
- if(TimeSinceLastBreak > BreakNotMinutes) then
- begin
- BreakNotMinutes := (random(NoBreakRandom)+60)*60*1000+random(60000); //in ms?
- HowLong := (random(BreakRandom)+10)*60*1000+random(60000); //in ms?
- writeln('We''re going to take a break for ' + IntToStr(HowLong/60000) + ' minutes');
- MarkTime(LastBreakTime);
- Logout;
- wait(HowLong);
- LoginPlayer;
- writeln('We''re now going to bot again, for ' + IntToStr(HowLong/60000) + ' minutes');
- end;
- End;
- procedure SolveProblems;
- begin
- If LobbyScreen = True then LeaveLobby;
- If LoggedIn = False then LoginPlayer;
- TakeSomeBreaks;
- If random(AntiBanAmount) = 1 then Antibans;
- end;
- procedure Camera;
- begin
- setangle(0);
- MakeCompass('E');
- end;
- procedure NormalCheck;
- begin
- if not LoggedIn then Exit;
- FindNormalRandoms;
- end;
- procedure Banking;
- var
- t, u:Integer;
- begin
- SolveProblems;
- if BankFails > 10 then
- begin
- StopScript := True;
- StopReason := 'failed to open the bank 10 times.'
- end;
- Writeln('opening bank');
- if(not(BankScreen)) then
- OpenBankChestEdge(SRL_BANK_SW);
- MarkTime(t);
- repeat
- wait(100);
- if PinScreen then
- begin
- InPin(Players[CurrentPlayer].Pin);
- end;
- if TimeFromMark(t) > 4000 then
- begin
- Inc(BankFails);
- Banking;
- exit;
- end;
- until(BankScreen);
- writeln('Test');
- if BankScreen then
- begin
- DepositAll;
- Withdraw(9,0,0);
- repeat
- wait(20);
- inc(u);
- until(InvFull or (u > 1000));
- if InvFull then CloseBank else begin
- StopScript := True;
- StopReason := 'Could not fill inventory';
- end;
- end;
- end;
- procedure CraftOrbs;
- var
- x, y :integer; MoltenGlass, t:Integer; FindOrbChat,
- begin
- MoltenGlass := DTMFromString('m6wAAAHic42ZgYOBngABeIBYHYikglgZiCSAWBGIuIGYGYhYg5gFidiBmhOoBsfmAWAiK+aFqmID4XksSlEUYGzEQDxhJwEgAAO8yAy0=');
- MouseItem(Random(28)+1,1);
- if waitFindcolor(x,y,2070783,MCX1,MCY1,MCX2,MCY2,5,10000) then
- begin
- If findDTM(MoltenGlass,2070783,MIX1,MIY1,MIX2,MIY2,5,10000) then
- writeln('Found it');
- begin
- if (FindText(x, y, 'Orb', 'StatChars', MCX1, MCY1, MCX2, MCY2)) then
- begin
- Mouse(X, Y, 5, 5, True);
- end else
- begin
- MouseBox(493, 394, 505, 463, 3);
- Result := findOrbChat();
- end;
- end;
- MarkTime(t);
- repeat
- XP1 := GetXPBarTotal;
- wait(1000);
- ProgressReport;
- if Timefrommark(t)>85000 then
- begin
- if (failcraft <= 3) then Inc (FailCraft) else
- begin
- StopScript := True;
- StopReason := 'After 80 seconds we didn`t see the orb being crafted (for the third time)';
- exit;
- end;
- end;
- until (not(FindDTM(MoltenGlass, x, y, MIX1, MIY1, MIX2, MIY2)));
- if FindDTM(MoltenGlass, x, y, 681, 422, 730, 457) then FailCraft := 0;
- wait(random(1000));
- InventoriesDone := InventoriesDone + 1;
- ProgressReport;
- end;
- FreeDTM(MoltenGlass);
- end;
- Procedure Experience;
- begin
- Orb := Orb*52.5;
- end;
- begin
- DeclarePlayers;
- SetupLogin;
- LoginPlayer;
- if (Players[CurrentPlayer].Integers[1] = 0) then
- begin
- if not IsXPBarOpen then ToggleXPBar(true);
- Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
- XPS := GetXPBarTotal;
- Players[CurrentPlayer].Integers[1] := (Players[CurrentPlayer].Integers[1] + 1);
- end;
- StartTime:=GetSystemTime;
- SetupSRLStats(1262, SRLStats_User, SRLStats_Password);
- repeat
- Banking;
- CraftOrbs;
- until(StopScript = True);
- end.
Add Comment
Please, Sign In to add comment