SCAR Code:
{///////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
//////////////////////////BOBERT5696'S TOKKUL MACHINE///////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
Instructions:
1: Fill In Setup Info
2: Click Play
3: Start the script logged out, let the script log you in
4: Don't where anything white, like the color of the cave
4: Watch first time through cave, and re-entering cave to make sure no probelms
NOTE from moparisthebest: Bobert5696 has been banned for scamming, but this script
worked so I have removed the autoupdating part and reposted it for people to use
and learn from.
}
program Tokuler;
{.include SRL/SRL.scar}
{.include SRL\SRL\skill\Fighting.scar}
Const
//Setup Info
Username = '*******'; //Username of your player
Password = '*******'; //Password of your player
Nickname = '***'; //3 letters of your name for use in randoms
CaveColor = 13355985; //Color of cave, lightest part
TotalNeeded = 70; //Number of times you want to go thru
MSpeed = 17; //Mousespeed
BMouse = True; // Use Benland's groovy spline? True or false
CombatStyle = 2; //Self Explained
Breaks = false; //Do you want the script to take breaks?
//Done Setup
FilePath2 = 'C:\Program Files\SCAR 2.03\Scripts'; //What it's set at is probably right
///////////////////
//Do Not Touch/////
///////////////////
S1 = 5; ///////////
S2 = 5; ///////////
S3 = 515; /////////
S4 = 340; /////////
///////////////////
M1 = 586; /////////
M2 = 10; //////////
M3 = 725; /////////
M4 = 160; /////////
CurVer = '1';//
///////////////////
//Do Not Touch/////
///////////////////
Var
NPC,lol,TotalDone,BreakTime: Integer;
Procedure Break2;
var Brk,Brk2:integer;
begin
if(Breaks) then
begin
Brk:= 60 * 60 * 1000 + random(20 * 60 * 1000);
Brk2:= TimeFromMark(BreakTime);
if Brk2 >= Brk then
begin
wait(10 * 60 * 1000 + random(8 * 60 * 1000));
if(not(loggedin)) then
begin
LoginPlayer;
end
BreakTime:= 0
MarkTime(BreakTime);
end
end
end;
Function xFindFight : Boolean;
begin
if(findcolor(x,y,65280,s1,s2,s3,s4) or findcolor(x,y,255,s1,s2,s3,s4))then
begin
Result:= True
end
else
begin
end
end;
Function DeadYet:Boolean;
var rx, ry:integer;
begin
if(findSymbol(rx,ry,'minigame') or (findsymbol(rx,ry,'bank')) and not (xFindFight or infight))then
begin
Result:= True;
end;
end;
Function Ftc : Boolean;
begin
if(findcolor(x,y,195836,M1,m2,m3,m4)) then
begin
Result:= True;
end
end;
Function NTrapped : Boolean;
var xx2,yy2:integer;
begin
if not (FindSymbol(x,y,'minigame') or findsymbol(x,y,'bank')) then
begin
if(ftc and xFindFight)then
begin
Result:= True;
end
else
begin
if(ftc) and not (infight and DeadYet) then
begin
if(findcolor(xx2,yy2,60909,M1,m2,m3,m4) and not findsymbol(x,y,'bank') or findsymbol(x,y,'minigame')) then
begin
Mouse(xx2,yy2,0,0,True)
Flag;
end
end
end
end
end;
Procedure Report;
Begin
cleardebug;
writeln('===========================================================');
writeln('==============BOBERT5696''S TOKKUL MACHINE==================');
writeln('===========================================================');
WriteLn('======Worked for '+ TimeRunning + '=======');
writeln('===========================================================');
writeln('==============You Have Completed cave ' + inttostr(TotalDone) + ' times==============');
writeln('========================' + inttostr(TotalNeeded - TotalDone) + ' times left=======================');
writeln('===========================================================');
End;
Procedure Boxxer;
begin
GameTab(4);
if(findnewbox)then
begin
SolveBox;
end
end;
Procedure LoadBits;
begin
NPC := BitmapFromString(5, 5, 'z78DA8D8AB911C0300CC356' +
'8293F30291C8FD478AFC752902DDA10045F2D4FDB065B57B187DF' +
'47070B9BB4316B0D7D5A795AA1EC55919B4F5BFFB2C2F34572266' +
'');
end;
Procedure Calibrate;
var lx,ly:integer;
begin
MakeCompass('S');
wait(150+random(500));
SendArrowSilentWait(2,1000+Random(500));
if not(findcolor(x,y,CaveColor,S1,s2,s3,s4)) then
begin
if(FindSymbol(lx,ly,'minigame'))then
begin
FindTalk;
Flag;
mouse(lx,ly,3,3,true);
end
end
end;
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
CurrentPlayer := 0;
NumberOfPlayers(HowManyPlayers);
Players[0].Name :=Username;
Players[0].Pass :=Password;
Players[0].Nick :=Nickname;
Players[0].Active:= True;
end;
procedure FFF;
var abc:integer;
begin
wait(2500);
repeat
if(not(loggedin)) then
begin
LoginPlayer;
end
abc:= abc+1;
wait(1000+random(500));
if(infight or xFindFight) then
begin
abc:= 10;
end
until(abc = 10);
end;
procedure FindCave;
var ccolor:integer;
begin
if not(LoggedIn)then
begin
LoginPlayer;
end
FindTalk;
if not(FindColorTolerance(x,y,CaveColor,s1,s2,s3,s4,5)) then
begin
Calibrate;
end
repeat
if(not(loggedin)) then
begin
LoginPlayer;
end
if(FindColorTolerance(x,y,CaveColor,s1,s2,s3,s4,5)) then
begin
Mouse(x,y,1,1,False)
wait(200+random(200))
FindTalk;
if(ClickOption('nter',1))then
begin
ccolor:= 1;
TotalDone:= TotalDone+1;
end
end
else
begin
Calibrate;
end
until(ccolor=1);
FFF;
end;
Procedure RandWalk;
var rand1:integer;
begin
if not (FindSymbol(x,y,'minigame') or findsymbol(x,y,'bank')) then
begin
rand1:= random(4);
if rand1 = 0 then
begin
Mouse(649,29,10,10,True);
Flag;
NTrapped;
end
if rand1 = 1 then
begin
Mouse(649,134,10,10,True);
Flag;
NTrapped;
end
if rand1 = 2 then
begin
Mouse(706,81,10,10,True);
Flag;
NTrapped;
end
if rand1 = 3 then
begin
Mouse(603,79,10,10,True);
Flag;
NTrapped;
end
end
end;
Procedure NeedWalk;
begin
if not (FindSymbol(x,y,'minigame') or findsymbol(x,y,'bank')) then
begin
if(infight or isfight or ftc) then
begin
end
else
begin
wait(3000+random(1000));
if(infight or isfight or ftc) then
begin
end
else
repeat
if(not(loggedin)) then
begin
LoginPlayer;
end
RandWalk
until(infight or isfight or ftc)
end
end
end;
procedure Setup;
begin
SetupSRL;
DeclarePlayers;
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
LoadBits;
Mousespeed:= Mspeed;
BenMouse:= BMouse;
if not(loggedin) then
begin
LoginPlayer;
end
SetFightMode(CombatStyle);
Calibrate;
end;
Procedure AntiBan2;
var rand3:integer;
begin
rand3:= random(6);
case rand3 of
0: PickUpMouse
1: BoredHuman
end;
end;
procedure LookAtSkill;
var randd,randd2,randd3 : integer;
begin
randd2:= random(7)
if randd2 = 1 then
begin
GameTab(2);
randd:= random(7);
case randd of
0: Hoverskill('attack',False);
1: HoverSkill('hitpoints',False);
2: HoverSkill('defence',False);
3: HoverSkill('strength',False);
4: Hoverskill('attack',False);
5: HoverSkill('hitpoints',False);
6: HoverSkill('defence',False);
7: HoverSkill('strength',False);
end;
wait(1200+random(400));
randd3:= random(4);
if randd3 = 1 then
begin
GameTab(4);
end
else
begin
end
end;
end;
procedure StayLoggedIn;
var rand2:integer;
begin
rand2:= random(52);
case rand2 of
0: SendArrowSilentWait(1,100+Random(500));
1: SendArrowSilentWait(0,250+Random(500));
2: SendArrowSilentWait(2,560+Random(500));
3: SendArrowSilentWait(3,362+Random(500));
4: SendArrowSilentWait(1,475+Random(500));
5: SendArrowSilentWait(0,856+Random(500));
6: SendArrowSilentWait(2,203+Random(500));
7: SendArrowSilentWait(3,405+Random(500));
8: SendArrowSilentWait(1,230+Random(500));
9: SendArrowSilentWait(0,705+Random(500));
10: SendArrowSilentWait(2,680+Random(500));
11: SendArrowSilentWait(3,940+Random(500));
12: Antiban2;
13: AntiBan2;
14: AntiBan2;
end;
end;
begin SetUpSRL;
if(LoggedIn) then
begin
writeln('Start the script logged out, and let it log you in.');
writeln('Restart the script, and try again');
Logout;
TerminateScript;
end
MarkTime(BreakTime);
Setup;
repeat
if not(loggedin) then
begin
LoginPlayer;
SetFightMode(CombatStyle);
end
Boxxer;
Break2;
Findcave;
lol:= random(3);
if lol = 1 then
begin
setrun(true);
end
wait(4000+random(1000));
repeat
if(not(loggedin)) then
begin
LoginPlayer;
SetFightMode(CombatStyle);
end
Boxxer;
FindTalk;
StayLoggedIn;
NTrapped;
LookAtSkill;
NeedWalk;
NTrapped;
wait(5000+random(2500));
until(DeadYet);
Report;
until(TotalDone=totalneeded);
Logout;
TerminateScript;
end.