VillaVuFTW
2012-02-13 17:32:20
How Long have You Played Runescape?
8 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
Standard HTML
PHP
Pascal/Scar
Are you a member of any other communities?
RSBots(R.I.P)
Powerbot
Tell us about yourself…
Please show us one (or multiple) of your scripts.
8 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
Standard HTML
PHP
Pascal/Scar
Are you a member of any other communities?
RSBots(R.I.P)
Powerbot
Tell us about yourself…
From: VillaVuFTW
Hello there,
I'm Zack and I'm a Sophomore in highschool
Hobbies Include:
-Video Gaming
-Chilling with my Girlfriend
-Talking with friends
-Sleeping!
-Oh and best of all EATING ;)
I'm 5'8 and 147 Pounds
I lift when I can.. I'm not your average muscle man, but not your average pip-squeek.
I love people, mean or nice. I can get a long with everybody, unless provoked.
<3
Please show us one (or multiple) of your scripts.
program VillaAstrals;
{$DEFINE SRL5}
{$DEFINE SMART}
{$i SRL/srl.simba}
{$i SPS/sps.simba}
const
Food = 'tuna';
RestAt = 55;
EatAt = 70;
HPLevel = 79;
var
TeleBank, GPouch, SPouch, LPouch, MPouch, BankEss, BankTrout, Trout, Air, Cosmic, DarkWiz, TEXT, NPC, DownArrow, x, y:Integer;
aFound : extended;
Procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Name:= '';
Pass:= '';
Pin := '';
Level[SKILL_HITPOINTS] := HPLevel;
BoxRewards:= ['XP','xp','lamp'];
Active:= True;
end;
end;
Procedure Shutdown;
begin
Writeln('Bot Shutting Down');
Wait(RandomRange(1000,1300));
CloseBank;
Logout;
TerminateScript;
end;
procedure RadialWalking(RadialWalkin: Integer);
Begin
case RadialWalkin of
1:RadialWalkTolerance(5273225, 127, 167, 30, 5, 5, 35);
2:RadialWalkTolerance(7114909, 69, 109, 60, 5, 0, 35);
3:RadialWalkTolerance(3949387, 151, 191, 60, 1, 5, 35);
4:RadialWalkTolerance(4542039, 153, 193, 60, 1, 5, 35);
5:RadialWalkTolerance(3488572, 125, 165, 60, 5, 5, 35);
6:RadialWalkTolerance(4280404, 114, 154, 60, 5, 5, 35);
7:RadialWalkTolerance(1654100, 106, 146, 60, 5, 5, 35);
8:RadialWalkTolerance(14870748, 69, 109, 60, 5, 0, 35);
9:RadialWalkTolerance(15591393, 69, 109, 60, 5, 0, 35);
End;
End;
procedure TeleToMoonBank;
var
TeleBank, x, y:Integer;
begin
GameTab(Tab_Magic);
wait(200+Random(400));
TeleBank := DTMFromString('mwQAAAHic42RgYOACYk4oDQLCQCwIxExAzAxlc0HFGZDUCkAxTN3CpSuBJCMBjLAHFyBkAiOyYgBXqALA');
if FindDTM(TeleBank, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
FindNonInventoryRandoms;
writeln('found tele');
MMouse(x, y, 7, 7);
if waituptext('oonclan',300) then
Mouse(x, y, 0, 0, True);
end else
begin
writeln('no runes');
TerminateScript;
end;
end;
Function AtTheAltar: Boolean;
var
Altar: TBox;
begin
Altar := PointToBox(Point(465, 1159), Point(496, 1175));
Result := PointInBox(SPS_GetMyPos, Altar);
end;
Procedure WalkingToAltar;
var
ToAltar: TPointArray;
i: Integer;
Begin
if (LoggedIn) then
begin
SPS_Setup(RUNESCAPE_SURFACE,['0_2', '1_2']);
ToAltar := [Point(240, 951),Point(240, 974),Point(274, 973),
Point(291, 1001), Point(289, 1040), Point(286, 1077), Point(310, 1108),
Point(337, 1131), Point(377, 1151), Point(378, 1190), Point(421, 1176),
Point(470, 1169)];
SPS_WalkPath(ToAltar);
FindNormalRandoms;
writeln('UsingSPSWalking');
Wait(400+Random(300));
If AtTheAltar then
if not AtTheAltar then
Begin
TeleToMoonBank;
wait(1000+Random(500));
for i := 1 to 9 do
Begin
RadialWalking(i);
writeln('UsingRadialWalk');
Wait(400+Random(300));
If AtTheAltar then
writeln('MadeIt');
if not AtTheAltar then
Logout;
End;
End;
End else
TerminateScript;
End;
procedure ClickOn(PX:Integer; Click: Boolean);
begin
if FindDTMRotated(PX, x, y, MSX1, MSY1, MSX2, MSY2, -Pi, Pi, Pi/30, aFound) then
begin
Mouse(x, y, 3, 3, Click);
end;
end;
Procedure HumanMMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
end;
Procedure SetNorth(Highest: Boolean); //By WT-Fakawi
var
K: Integer;
begin
Case random(2) of
0,1: K := VK_LEFT;
2: K := VK_RIGHT;
end;
KeyDown(K);
repeat
wait(1);
until (GetColor(546,11)= 65536) and (GetColor(541,10)= 65536)
KeyUp(K);
ClickNorth(SRL_ANGLE_HIGH);
end;
Procedure FreeDTMS;
Begin
FreeDTM(TeleBank);
FreeDTM(GPouch);
FreeDTM(SPouch);
FreeDTM(LPouch);
FreeDTM(MPouch);
FreeDTM(Air);
FreeDTM(Cosmic);
FreeDTM(NPC);
FreeDTM(DownArrow);
FreeDTM(DarkWiz);
FreeDTM(TEXT);
FreeDTM(Trout);
FreeDTM(BankEss);
FreeDTM(BankTrout);
End;
Procedure AntiBan;
Begin
if not LoggedIn then Exit;
case Random(99) of
0: wait(500+random(3000));
1: Begin
RandomMovement;
ClickNorth(SRL_ANGLE_HIGH);
End;
3: PickUpMouse;
End;
End;
function AltarColor: Integer;
var
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
R, G, B: Integer;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(1.21, 0.11);
FindColorsSpiralTolerance(MSCX, MSCY, arP, 8356472, MSX1, MSY1, MSX2, MSY2, 27);
if (Length(arP) = 0) then
begin
Writeln('Failed to find the color, no result.');
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
ClearSameIntegers(arC);
arL := High(arC);
for i := 0 to arL do
begin
ColorToRGB(arC[i], R, G, B);
if (R >= 57) and (R <= 198) and (G >= 57) and (G <= 198) and (B >= 55) and (B <= 190) then
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 3.95) and (X <= 52.20) and (Y >= 4.19) and (Y <= 55.50) and (Z >= 4.32) and (Z <= 56.11) then
begin
Result := arC[i];
Writeln('AutoColor = ' + IntToStr(arC[i]));
Break;
end;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
Writeln('AutoColor failed in finding the color.');
end;
Function FindingAltar:Boolean;
Var
X, Y, PlusOne:Integer;
Begin
Wait(1500);
If FindNormalRandoms then
Begin
ShutDown;
End else
If FindObjTPA(X, Y, AltarColor, 30, 1, 120, 120, 1550, ['Altar']) then
Begin
MMouse(X,Y,6,6);
If IsUpText('Altar') then
Begin
ClickMouse2(True);
End else
FindingAltar;
End else
Begin
WalkingToAltar;
FindingAltar;
End;
End;
Procedure Eat;
var
DTM, X, Y, X2, Y2, T: Integer;
begin
if not LoggedIn then Exit;
if not BankScreen then Exit;
Case lowercase(Food) of
'tuna' :DTM := DTMFromString('mbQAAAHicY2VgYKhmYmDoBuJyKG4H4r1A8c1AfAyIdwLxPiCuK8gFkkwomIcBEzBiwWAAAGzKB6w=');
'lobster' : DTM := DTMFromString('mbQAAAHicY2VgYOgB4g4g7gPiyUA8FYjPA/F1IL4CxHeA+DQQrw+TAJJMKJiLARMwYsFgAACaUQgl');
'monkfish': DTM := DTMFromString('mggAAAHicY2NgYJjEyMAwEYgXQPE8IJ4GxB+Bct+A+A0DhP0diH8AsbejJcP8miogiwkFcwFJEEYHjDgwBAAAZ90L0w==');
'shark' : DTM := DTMFromString('mggAAAHicY2NgYLBjZGAwB2JHIHYHYg8g1gfiEqBcAxBXA3EzEJcCcQsQd+RHAUkmDMzFgB0w4sAQAAAltwXX');
end;
if FindDTM(DTM, X, Y, MSX1, MSY1, MSX2, MSY2) then
begin
HumanMMouse(X, Y, 5, 5);
ClickMouse2(False);
WaitOption('Withdraw-5', 300);
MarkTime(T);
repeat
FindNormalRandoms;
if (TimeFromMark(T) > 5000) then
Exit;
if (HPPercent >= 90) then
break;
if FindDTM(DTM, X2, Y2, MIX1, MIY1, MIX2, MIY2) then
begin
HumanMMouse(X2, Y2, 5, 5);
ClickMouse2(False);
WaitOption('Eat', 300);
Wait(RandomRange(425, 675));
MarkTime(T);
end;
until(false)
end;
if FindDTM(DTM, X, Y, MIX1, MIY1, MIX2, MIY2) then
begin
HumanMMouse(X, Y, 5, 5);
ClickMouse2(False);
WaitOptionMulti(['Deposit-All', 'All', 'A', ' - '], 300);
Wait(RandomRange(425, 675));
end;
FreeDTM(DTM);
end;
procedure FillA; {By DemiseScythe Modify By Me}
var
MPouch, SPouch, x, y: Integer;
begin
MPouch := DTMFromString('mbQAAAHicY2VgYGhnYWCYAMStQNwAxG1A7MXIwOAJxMFA7AbElkBsa2kKVM2EgrkYMAEjFgwGAKW/BOg=');
SPouch := DTMFromString('mrAAAAHic42CAADYg5gJifiDmg7I5gJgJiAWAWByKhYGYF4g5gZgRqjc+3BOqEjvmh5qHCzASwDAAANO3AeA=');
Begin
if FindDTM(SPouch, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
Mouse(x, y, 4, 4, Clickright);
ChooseOption('ill');
end;
if FindDTM(MPouch, x, y, MIX1, MIY1, MIX2, MIY2)then
begin
Mouse(x, y, 4, 4, Clickright);
Writeln('FillingMediumPouch!');
ChooseOption('ll');
end;
end;
end;
procedure FillB;{ByDemiseScytheModifyByMe}
var
MPouch, LPouch, x, y: Integer;
begin
LPouch := DTMFromString('mAAEAAHiclctBDkAwAETRqVSIVggV3MUpbG3d/wy+aJMudZI3sxovyaNFjwkDAlYsGNGh1pe0BhYNHOb42bDHff/XedDVb7fKYgrleQDSXQLB');
MPouch := DTMFromString('mwQAAAHic42SAABYg5gBiHiDmQ6I5oXICQCwFxRJALAxVA5JjgpoRH+4J5eHG/ECSiwE/YCQCwwEABXcCCQ==');
if FindDTM(LPouch, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
Writeln('FillingLargePouch!');
MMouse(x, y, 4, 4)
if waituptext('arge',500) then
Mouse(x, y, 3, 3, False);
ChooseOption('ill');
end;
if FindDTM(MPouch, x, y, MIX1, MIY1, MIX2, MIY2)then
begin
MMouse(x, y, 4, 4)
if waituptext('edium', 500)then
Mouse(x, y, 3, 3, False);
Writeln('FillingMediumPouch!');
ChooseOption('ill');
end;
end;
procedure EmptyA;{ByDemiseScytheModifyByMe}
var
GPouch: Integer;
begin
GPouch := DTMFromString('m6wAAAHic42aAAGYg5gZiISAWg2IQmxeI+aCYE0rLQrEUEItD1fFA5Vmg5jECcbi/E5BkIgobAUkuBuIAIwkYCQAAk2gChA==');
if FindDTM(GPouch, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
Writeln('EmptyingLargePouch!');
MMouse(x, y, 4, 4)
if waituptext('ouch', 500) then
Mouse(x, y, 3, 3, False);
ChooseOption('mpty');
wait(300+Random(100));
end;
end;
procedure EmptyB;{ByDemiseScytheModifyByMe}
var
LPouch: Integer;
begin
LPouch := DTMFromString('mAAEAAHiclctBDkAwAETRqVSIVggV3MUpbG3d/wy+aJMudZI3sxovyaNFjwkDAlYsGNGh1pe0BhYNHOb42bDHff/XedDVb7fKYgrleQDSXQLB');
if FindDTM(LPouch, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
Writeln('EmptyingLargePouch!');
MMouse(x, y, 4, 4)
if waituptext('arge', 500) then
Mouse(x, y, 3, 3, False);
ChooseOption('mpty');
Wait(300+Random(100));
FreeDTM(LPouch)
end;
end;
Procedure EmptyC;{ByDemiseScytheModifyByMe}
var
SPouch, MPouch: Integer;
begin
MPouch := DTMFromString('mbQAAAHicY2VgYLjPwsDwHIgfAPENIL4LxKaMDAwGQGwPxGZArArEdlamQNVMaBgTMGLBYAAALNAGMw==');
SPouch := DTMFromString('mrAAAAHic42CAADYg5gJifiDmg7I5gJgJiAWAWByKhYGYF4g5gZgRqjc+3BOqEjvmh5qHCzASwDAAANO3AeA=');
if FindDTM(SPouch, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
FindNormalRandoms;
Writeln('EmptyingSmallPouch!');
MMouse(x, y, 4, 4)
if waituptext('mall', 300) then
Mouse(x, y, 3, 3, False);
ChooseOption('mpty');
Wait(300+Random(100));
end;
if FindDTM(MPouch, x, y, MIX1, MIY1, MIX2, MIY2) then
FindNormalRandoms;
Writeln('EmptyingSmallPouch!');
MMouse(x, y, 4, 4)
if waituptext('edium', 300) then
Mouse(x, y, 3, 3, False);
ChooseOption('mpty');
Wait(300+Random(100));
end;
procedure PouchBroken;{ByDemiseScytheModifyAndFixByMe}
var
GPouch, x, y: Integer;
begin
if(LoggedIn)then
begin
Air := DTMFromString('mlwAAAHicY2eAADYg5gZifiAWhGI+qLgYEItA5biAmAWq59HNG0CSCQtmZJCDqsUGGPFgKAAARFoDcg==');
Cosmic := DTMFromString('mwQAAAHic42RgYGBlgAB2IOYGYn4o5gNiTiBmAWIRIJYFYhkgloTy+aHyzFD9N67JAUkmvNgISHIx4AeMRGA4AAB7DQMQ');
NPC := DTMFromString('mwQAAAHic42RgYJjExMAwGYhnAXEnEPcC8Qwgng7EE6H8x0B1d4H4IQOE/RKIXwDxWyB+BcT3gPj1axCLEYzrD32Cs1ExfsCFQxdOUwAB5hJV');
DownArrow := DTMFromString('mbQAAAHicY2VgYDjLyMBwDogvAfFJRgjfEIh1oTQImwGxjLgIAz8fD4ORjjIDJycnmOYH6kfHjFgwGAAANZoG5g==');
DarkWiz := DTMFromString('mwQAAAHic42RgYFjIyMCwCIinAPFKIJ4PxH1A3AbEDVDMA8RfgWoZGCH4JQME/2aAyCkC8fr+UobtU6sYFFS1GOSU1Rl4eXkxMD9QPSHMSASGAwAGuA7p');
TEXT := DTMFromString('mbQAAAHicY2VgYGBjZGBIA9JZQBwIZAcB8RIgXgTEK6D0SiAWkpJjOHHiBArmB+pBx4xYMBgAAKH9Dro=');
GPouch := DTMFromString('m6wAAAHic42aAAGYg5gZiISAWg2IQmxeI+aCYE0rLQrEUEItD1fFA5Vmg5jECcbi/E5BkIgobAUkuBuIAIwkYCQAAk2gChA==');
if not FindDTM(GPouch, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
If(FindObjEx(x, y, ['ank', 'ooth', 'kbooth', 'Bankbooth'], [6712949, 7631218, 6647670], 25, 50, 150, 95, 288, 165)) then
begin
repeat
MMouse(x, y, 3, 3);
ClickMouse2(False);
Wait(RandomRange(400, 500));
ChooseOption('Bank');
Wait(RandomRange(2500, 2600));
until BankScreen or PinScreen;
if PinScreen then
begin
repeat
InPin(Players[0].Pin);
until BankScreen or not(LoggedIn);
end;
if BankScreen then
begin
Writeln('WithDrawAir');
if FindDTM(Air, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
Writeln('AirRunes!');
MMouse(x, y, 5, 5);
WaitUptext('une', 500);
Mouse(x, y, 3, 3, true);
Wait(RandomRange(400, 500));
Mouse(x, y, 3, 3, true);
end;
Wait(250+Random(50));
if FindDTM(Cosmic, x, y, MSX1, MSY1, MSX2, MSY2) then
begin
MMouse(x, y, 5, 5);
WaitUptext('osmic', 500);
Mouse(x, y, 3, 3, true);
end;
repeat
CloseWindow;
Wait(50+Random(50));
until not BankScreen;
Gametab(tab_Magic);
Wait(250+Random(50));
if FindDTM(NPC, x, y, MIX1, MIY1, MIX2, MIY2) then
Mouse(x, y, 3, 3, True);
Wait(750+Random(500));
if FindDTM(DownArrow, x, y, 443, 292, 479, 318) then
begin
repeat
Mouse(x, y, 3, 3, True);
Wait(50+Random(50));
until FindDTM(DarkWiz, x, y, MSX1, MSY1, MSX2, MSY2);
end;
if FindDTM(DarkWiz, x, y, MSX1, MSY1, MSX2, MSY2) then
Mouse(x, y, 3, 3, True);
repeat
Wait(850+Random(450));
ClickToContinue;
until FindDTM(TEXT, x, y, 78, 410, 439, 433);
end;
if FindDTM(TEXT, x, y, 78, 410, 439, 433) then
Mouse(x, y, 3, 3, True);
Wait(950+Random(350));
ClickToContinue;
end else
begin
Writeln('Pouchesarentbroken!');
end;
end;
end;
end;
Procedure WalkingToBank;
var
ToBank: TPointArray;
x, y: Integer;
Begin
FindNormalRandoms;
writeln('WalkingToBank');
SPS_Setup(RUNESCAPE_SURFACE,['0_2','1_2']);
ToBank := [Point(241,973), Point(238,952)];
SPS_WalkPath(ToBank);
writeln('UsingSPSWalking');
Wait(400+Random(300));
FindNormalRandoms;
If Not (SPS_WalkPath(ToBank)) then
Begin
repeat
TeleToMoonBank;
Wait(RandomRange(400,500));
WalkingToBank;
until (FindSymbol(x, y, 'bank'));
Begin
if (FindSymbol(x, y, 'bank')) then
Begin
writeln('YayWeFoundIt');
Mouse(x, y, 5, 5, True);
End;
End;
End;
End;
Procedure WithDrawEss;
var
x, y, FailSafe, BankEss, Trout, AstralRune: Integer;
begin
if (LoggedIn) then
begin
BankEss := BitmapFromString(9, 11, 'meJx1zNEKgCAQRNGfDBMRERHbysq' +
'I/r+BIQmWYN7O3RXZRLZlObBaz32/sNZurJQVkzeAMgDlPGM6gMaY' +
'U5owBt/nISQog64MvI9Ufetc+FPQV/tnkLVeK8kYp5U/h2GkMoDyJ' +
'+gB5qx01w==');
AstralRune := DTMFromString('mggAAAHicY2NgYMhgZmAoA+JMII4C4lggLgRid0YGBi8gDgdiTyAOBmI7ID657iRQFxMG5mfADhhxYAgAAH3kBq8=');
FailSafe := 0;
Inc(FailSafe);
If (FindObjEx(x, y, ['ank' ,'ooth' ,'kbooth' ,'Bankbooth'] ,[6712949, 7631218, 6647670], 25, 50, 150, 95, 288, 165)) then
begin
if (HPPercent <= EatAt) then
Eat;
repeat
FindNormalRandoms;
MMouse(x, y, 3, 3);
ClickMouse2(True);
Wait(RandomRange(2500,2600));
until BankScreen or PinScreen or (FailSafe = 3);
if PinScreen then
begin
repeat
InPin(Players[0].Pin);
until BankScreen or not (LoggedIn);
end;
if BankScreen then
begin
if (HPPercent <= EatAt) then
Eat;
If FindDTM(AstralRune, X, Y, MIX1, MIY1, MIX2, MIY2) then
MMouse(X, Y, 3, 3);
Mouse(X, Y, 0, 0, Clickright);
WaitOptionMulti(['Al', 'Deposit', '- A', '-A'], 350);
Wait(RandomRange(400, 600));
end;
begin
if FindBitmapToleranceIn(BankEss, X, Y, 35, 85, 480, 295, 20) then
begin
HumanMMouse(X, Y, 5, 5);
ClickMouse2(False);
WaitOptionMulti(['Withdraw-All', 'w-A', 'A'], 250);
CloseBank;
end;
End;
end;
if (FailSafe = 3) then
begin
Writeln('Wefailedtofindbank');
TerminateScript;
end;
end;
end;
Procedure SetupPlayer;
var
S : String;
Begin
if (GetMMLevels('run',S) <= RestAt) then
RestUntil(RandomRange(90,100));
SetRun(True);
end;
{Procedure WithDrawTrout;
var
x, y, FailSafe, BankTrout, BankEss: Integer;
begin
if (LoggedIn) then
begin
FailSafe := 0;
Inc(FailSafe);
If (FindObjEx(x, y,['ank', 'ooth', 'kbooth', 'Bankbooth'],[6712949, 7631218, 6647670], 25, 50, 150, 95, 288, 165)) then
begin
repeat
MMouse(x, y, 3, 3);
ClickMouse2(False);
Wait(RandomRange(400, 500));
ChooseOption('Use-quickly');
Wait(RandomRange(2500, 2600));
until BankScreen or PinScreen or(FailSafe=3);
if PinScreen then
begin
repeat
InPin(Players[0].Pin);
until BankScreen or not(LoggedIn);
end;
if BankScreen then
begin
BankTrout := DTMFromString('mbQAAAHicY2VgYPjBxMDAzszA8AVIvwPi3yAaKP4SiL8B8VsgfgzE+UkJQJIJBfMzYAJGLBgMAC33Cdc=');
BankEss := DTMFromString('mbQAAAHicY2VgYNjMyMBwGIi3AvFyKL4AFD8NxHeB+AoQnwHi5Pg4IMmEglkZMAEjFgwGANxMCM4=');
if FindDTM(BankEss, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
FindNormalRandoms;
Writeln('DepositingRunes!');
MMouse(x, y, 3, 3);
if WaitUptext('essence', 500) then
ClickMouse2(False);
Wait(RandomRange(400, 700));
ChooseOption('Deposit-All');
end;
if not FindDTM(BankEss, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
If FindDTM(BankTrout, X, Y, MSX1, MSY1, MSX2, MSY2)then
Begin
MMouse(x, y, 5, 5);
if waituptext('rout', 300) then
Mouse(x, y, 0, 0, False);
ChooseOption('Withdraw-10');
Wait(RandomRange(800, 1200));
CloseBank;
If not (FindDTM(BankTrout, X, Y, MSX1, MSY1, MSX2, MSY2)) then
Logout;
End;
End;
End;
End;
if(FailSafe=3)then
begin
Writeln('Wefailedtofindbank');
TerminateScript;
End;
End;
End;
Procedure Eating;
Var
Trout, x, y: Integer;
Begin
repeat
if (HPPercent < 50) and LoggedIn then
Begin
writeln('EatingFood');
GameTab(Tab_Inv);
Trout := DTMFromString('mbQAAAHicY2VgYPjBxMDAzszA8AVIvwPi3yAaKP4SiL8B8VsgfgzE+UkJQJIJBfMzYAJGLBgMAC33Cdc=');
If FindDTM(Trout, X, Y, MIX1, MIY1, MIX2, MIY2) then
Begin
Mouse(x, y, 5, 5, true);
Wait(RandomRange(750, 950));
End;
End;
Until ((HPPercent > 80) or (not FindDTM(Trout, X, Y, MIX1, MIY1, MIX2, MIY2)));
End;
Procedure HpCheck;
Begin
if (HPPercent < 400) and LoggedIn then
Begin
WithDrawTrout;
Wait(RandomRange(650, 950));
Eating;
End;
End;
}
Function CraftingRunes: Boolean;
Begin
FindingAltar;
Wait(RandomRange(250,630));
end;
//If you are checking to see if you are in an area, you should use "ObjDTM_InArea"
procedure Mainloop;
Begin
if (LoggedIn) then
Begin
Repeat
SetupPlayer;
WithDrawEss;
FindNormalRandoms
WalkingToAltar;
AntiBan;
Wait(RandomRange(750, 1050));
CraftingRunes;
FindNormalRandoms;
Wait(RandomRange(650, 1050));
AntiBan;
TeleToMoonBank;
FindNormalRandoms
WalkingTobank;
Wait(RandomRange(750, 950));
AntiBan;
until not (LoggedIn);
End;
End;
begin
Smart_Server := 10;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
DeclarePlayers;
LogInPlayer;
ClickNorth(SRL_ANGLE_HIGH);
Repeat
if not LoggedIn then
begin
LoginPlayer;
SetNorth(True);
SetRun(True);
end;
MainLoop;
Until(AllPlayersInactive);
FreeDTMS;
end.