SRL Archive - Archive

bomh - SRL Member Application


bomh

2012-01-07 02:29:19

How Long have You Played Runescape?
5 Year(s)


Are you affilated in anyway with Jagex LTD?
NO

Were you Referred to SRL?



What is your general programming knowledge?
ComputerNumericalControl, MasterCam


Are you a member of any other communities?
NO


Tell us about yourself…
From: bomh
hello, my name is Bomh. Am Vietnamese, i like Fighting ,Racing and Soccer. That why i know 5 difference fighting style. example Judo, Karate, Taekwondo…. just to name a fell. Am really fascinate about scripting and programing that why i take ComputerNumericalControl at school right now. I hope i can learn more new thing after i became Member. thanks you in advance :D..
AND I WOULD ALSO LIKE TO THANKS HAMSTER31 FOR TAKING HIS TIME TO TEACH ME ABOUT SCRIPTING AND DON'T YELL AT ME WHEN AM ASKING STUPID QUESTION LOL. AND KYLE, JUSTIN.. ALSO THANKS DEMISE FOR HER IDEA AND FUNCTION.



Please show us one (or multiple) of your scripts.
program Astral_rc;
{$DEFINE SRL5}
{$DEFINE SMART}
{$i SRL/srl.simba}
{$i SPS/sps.simba}

var
TeleBank, GPouch, SPouch, LPouch, MPouch, BankEss, BankTrout, Trout, Air, Cosmic, DarkWiz, TEXT, NPC, DownArrow, RunesMade, Expgain, Endxp, Startxp, x, y:Integer;

Procedure DeclarePlayers;
Begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
Begin
Name:= '';
Pass:= '';
Pin := '';
BoxRewards:= ['XP','xp','lamp'];
LampSkill := 'Runecrafting';
Active:= True;
End;
End;

Function CheckMagic:Integer;
Begin
Endxp := GetXP(SKILL_RUNECRAFTING);
if(Endxp=-1) then
Endxp:=GetXP(SKILL_RUNECRAFTING);
if(Endxp=-1) then
Endxp:=GetXP(SKILL_RUNECRAFTING);
if(Endxp=-1) then
Endxp:=GetXP(SKILL_RUNECRAFTING);
Result:= Endxp;
Expgain:=Endxp-Startxp;
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;

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;

Procedure FillA;
var
GPouch, SPouch, x, y: Integer;
Begin
GPouch := DTMFromString('m6wAAAHic42aAAGYg5gZiISAWg2IQmxeI+aCYE0rLQrEUEItD1fFA5Vmg5jECcbi/E5BkIgobAUkuBuIAIwkYCQAAk2gChA==');
SPouch := DTMFromString('mrAAAAHic42CAADYg5gJifiDmg7I5gJgJiAWAWByKhYGYF4g5gZgRqjc+3BOqEjvmh5qHCzASwDAAANO3AeA=');
if FindDTM(GPouch, x, y, MIX1, MIY1, MIX2, MIY2)then
Begin
Writeln('FillingGiantPouch!');
MMouse(x, y, 4, 4)
if waituptext('iant', 500) then
Mouse(x, y, 3, 3, False);
ChooseOption('ill');
End;
Wait(150+Random(50));
if FindDTM(SPouch, x, y, MIX1, MIY1, MIX2, MIY2) then
Begin
Writeln('FillingSmallPouch!');
MMouse(x, y, 4, 4)
if waituptext('mall', 500)then
Mouse(x, y, 3, 3, False);
ChooseOption('ill');
End;
End;

Procedure FillB;
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;
var
GPouch: Integer;

Begin
GPouch := DTMFromString('m6wAAAHic42aAAGYg5gZiISAWg2IQmxeI+aCYE0rLQrEUEItD1fFA5Vmg5jECcbi/E5BkIgpLAkkuBuIAIwkYCQAAib0Caw==');
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;
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;
var
SPouch, MPouch: Integer;

Begin
MPouch := DTMFromString('mwQAAAHic42SAABYg5gBiHiDmQ6I5oXICQCwFxRJALAxVA5JjgpoRH+4J5eHG/ECSiwE/YCQCwwEABXcCCQ==');
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', 500) then
Mouse(x, y, 3, 3, False);
ChooseOption('mpty');
Wait(500+Random(100));
End;
if FindDTM(MPouch, x, y, MIX1, MIY1, MIX2, MIY2) then
Begin
Writeln('EmptyingMediumPouch!');
MMouse(x, y, 4, 4)
if waituptext('edium', 500) then
Mouse(x, y, 3, 3, False);
ChooseOption('mpty');
Wait(300+Random(100));
End;
End;

Procedure PouchBroken;
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/E5BkIgpLAkkuBuIAIwkYCQAAib0Caw==');
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('Use-quickly');
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: Integer;

Begin
if (LoggedIn) then
Begin
Trout := DTMFromString('mKgEAAHicnc07CoAwEEXRiQEVgxE1BIzrEVv3vxqv+BrL+OAwxfyimQX0aOyNQ4eCXTVjxYwJIwbtRSyaybrh0aofNPPsJlznoW91Nv2sjfvpmxslwwKl');
BankEss := DTMFromString('mwQAAAHic42SAABYg5gRiPiAWAmIRKBYGYkEg5gJiSSgWh6rhg4qzQs1Ijo8Hkkw4sYO5PkMKA2HASASGAwB+fANH');
FailSafe := 0;
Inc(FailSafe);
If (FindObjEx(x, y, ['ank' ,'ooth' ,'kbooth' ,'Bankbooth'] ,[6712949, 7631218, 6647670], 25, 50, 150, 95, 288, 165)) then
Begin
repeat
FindNormalRandoms;
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
if FindDTM(Trout, x, y, MIX1, MIY1, MIX2, MIY2) then
Begin
repeat
MMouse(x, y, 4, 5);
WaitUptext('rout', 500);
Mouse(x, y, 0, 0, False);
ChooseOption('Deposit-All');
wait(RandomRange(300, 500));
until not(FindDTM(Trout, x, y, MIX1, MIY1, MIX2, MIY2));
End;
End;
Begin
If FindDTM(BankEss, X, Y, MSX1, MSY1, MSX2, MSY2) then
Begin
FindNonInventoryRandoms;
MMouse(x, y, 5, 5);
if waituptext('essence', 500) then
Mouse(x, y, 0, 0, False);
ChooseOption('Withdraw-All');
Wait(RandomRange(800, 1200));
FillA;
PouchBroken;
MMouse(x, y, 5, 5);
if waituptext('essence', 600) then
Mouse(x, y, 0, 0, False);
ChooseOption('Withdraw-All');
Wait(RandomRange(700, 1000));
FillB;
MMouse(x, y, 5, 5);
if waituptext('essence', 500) then
Mouse(x, y, 0, 0, False);
ChooseOption('Withdraw-All');
Wait(RandomRange(300,600));
CloseBank;
End;
End;
End;
if (FailSafe = 3) then
Begin
Writeln('Wefailedtofindbank');
TerminateScript;
End;
End;
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('mKgEAAHicnc07CoAwEEXRiQEVgxE1BIzrEVv3vxqv+BrL+OAwxfyimQX0aOyNQ4eCXTVjxYwJIwbtRSyaybrh0aofNPPsJlznoW91Nv2sjfvpmxslwwKl');
BankEss := DTMFromString('mwQAAAHic42SAABYg5gRiPiAWAmIRKBYGYkEg5gJiSSgWh6rhg4qzQs1Ijo8Hkkw4sYO5PkMKA2HASASGAwB+fANH');
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('mKgEAAHicnc07CoAwEEXRiQEVgxE1BIzrEVv3vxqv+BrL+OAwxfyimQX0aOyNQ4eCXTVjxYwJIwbtRSyaybrh0aofNPPsJlznoW91Nv2sjfvpmxslwwKl');
If FindDTM(Trout, X, Y, MIX1, MIY1, MIX2, MIY2) then
Begin
Mouse(x, y, 5, 5, false);
ChooseOption('Eat');
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 < 60) and LoggedIn then
Begin
WithDrawTrout;
Wait(RandomRange(650, 950));
Eating;
End;
End;

Procedure CraftingRunes;
var
x, y: Integer;

Begin
if (LoggedIn) then
Begin
if FindObjCustom(x, y,['raft-rune', 'ltar'],[8091257, 8554633], 10) then
Begin
writeln('WeFoudAltar');
GetMousePos(x, y);
case Random(2) of
0:Begin
MMouse(x, y, 4, 4);
WaitUptext('raft-rune', 400);
Mouse(x, y, 0, 0, True);
Wait(RandomRange(1500, 2000));
FindNormalRandoms;
EmptyA;
if FindObjCustom(x, y,['raft-rune', 'ltar'],[8091257, 8554633], 10) then
Wait(RandomRange(500, 1000));
MMouse(x, y, 4, 4);
WaitUptext('raft-rune', 350);
Mouse(x, y, 0, 0, True);
Wait(RandomRange(1500, 2000));
FindNormalRandoms;
EmptyB;
Wait(RandomRange(500, 1000));
EmptyC;
MMouse(x, y, 4, 4);
WaitUptext('raft-rune', 300);
Mouse(x, y, 0, 0, True);
{Wait(RandomRange(1500,2000));
FindNormalRandoms;
EmptyC;
Wait(RandomRange(500,1000));
MMouse(x,y,4,4);
WaitUptext('raft-rune',300);
Mouse(x,y,0,0,True);}
writeln('DoneCrafting');
End;
1:Begin
Mouse(x, y, 0, 0, False);
WaitOption('raft-rune', 500);
Wait(RandomRange(1500, 2000));
FindNormalRandoms;
EmptyA;
if FindObjCustom(x, y,['raft-rune', 'ltar'],[8091257, 8554633], 10) then
Wait(RandomRange(500, 1000));
Mouse(x, y, 0, 0, False);
WaitOption('raft-rune', 500);
Wait(RandomRange(1500, 2000));
FindNormalRandoms;
EmptyB;
Wait(RandomRange(500, 1000));
EmptyC;
Mouse(x, y, 0, 0, False);
WaitOption('raft-rune', 500);
{Wait(RandomRange(1500,2000));
FindNormalRandoms;
EmptyC;
Mouse(x,y,0,0,False);
WaitOption('raft-rune',500);}
writeln('DoneCrafting');
End;
End;
End;
End;
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;

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
writeln('MadeIt');
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 progress;
var
Texts: array of string;
I: Integer;

Begin
Texts := [
'|---------------------------------------------|',
'|Bomh Astral',
'|---------------------------------------------|',
'|Worked for : ' + TimeRunning,
'|Runes Made: ' + IntToStr(RunesMade),
'|Experience Gained: ' + IntToStr(Expgain),
'|---------------------------------------------|'];
ClearDebug;
for I := 0 to High(Texts) do
Begin
WriteLn(Texts[I]);
End;
End;


Procedure Mainloop;
Begin
if (LoggedIn) then
Begin
AddOnTerminate('FreeDTMS');
Repeat
WithDrawEss;
FindNormalRandoms
WalkingToAltar;
AntiBan;
Wait(RandomRange(750, 1050));
CraftingRunes;
FindNormalRandoms;
Wait(RandomRange(650, 1050));
AntiBan;
TeleToMoonBank;
FindNormalRandoms
WalkingTobank;
Wait(RandomRange(750, 950));
AntiBan;
PouchBroken;
HpCheck;
progress;
until not (LoggedIn);
End;
End;

Begin
Smart_Server := 86;
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);
End.

hamster31

2012-01-07 04:29:05

The reason being that you showed quiet a lot of initiative trying to learn and also being a pain in my ass! next time bother Kyle Undefined :) lol

Joking….But Seriously Good Luck :)

Brandon

2012-01-07 04:51:04

Other than what is listed below.. your missing a few begin's and end's in places they need to be. I dislike FindObj(custom)Ex but it's fine here as your radial walk and nice use of DTM's make up for it. No TPA's though but you seem to have been around a long time which could change my mind. For now I'll think about it and come back and vote later on. You seem to be getting along just fine with other members too judging from the comments above and in the application a couple others are mentioned :)


//I think your trying to double check to make sure it's got the XP.. I also think it'd be better to have this in a loop.

Function CheckMagic:Integer;
Begin
Endxp := GetXP(SKILL_RUNECRAFTING);
if(Endxp=-1) then
Endxp:=GetXP(SKILL_RUNECRAFTING);
if(Endxp=-1) then
Endxp:=GetXP(SKILL_RUNECRAFTING);
if(Endxp=-1) then
Endxp:=GetXP(SKILL_RUNECRAFTING);
Result:= Endxp;
Expgain:=Endxp-Startxp;
End;


//Infinite loops below if the DTM's aren't found:

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 waituptext('essence', 500) then //<---- Needs a begin after this..
Mouse(x, y, 0, 0, False);
ChooseOption('Withdraw-All');
Wait(RandomRange(800, 1200));
FillA;
PouchBroken;
MMouse(x, y, 5, 5); //<-- Needs an end here..




//Infinite Loop (it will keep teleing if the Bitmap isn't found:
repeat
TeleToMoonBank;
Wait(RandomRange(400,500));
WalkingToBank;
until (FindSymbol(x, y, 'bank'));

//Had some others but I'm not a harsh judge so.. I removed them..

Harry

2012-01-07 05:02:42

if waituptext('iant', 500) then
Mouse(x, y, 3, 3, False);
ChooseOption('ill');
if waituptext('mall', 500)then
Mouse(x, y, 3, 3, False);
ChooseOption('ill');
if waituptext('arge',500) then
Mouse(x, y, 3, 3, False);
ChooseOption('ill');
if waituptext('edium', 500)then
Mouse(x, y, 3, 3, False);
Writeln('FillingMediumPouch!');
ChooseOption('ill');
etc. List goes on. You keep calling the chooseoption even when the menu won't exist. That's terrible logic to have. You also don't "else" those statements. It's going to mess up the rest of the script, when it failed to do those, probably.

I'd like to see object finding other than FindObjEx, but that's fine for now I guess.



repeat
Wait(850+Random(450));
ClickToContinue;
until FindDTM(TEXT, x, y, 78, 410, 439, 433);
Infinite loop.



repeat
TeleToMoonBank;
Wait(RandomRange(400,500));
WalkingToBank;
until (FindSymbol(x, y, 'bank'));
Another infinite loop.
     until (FindSymbol(x, y, 'bank'));
Begin
if (FindSymbol(x, y, 'bank')) then
Begin
writeln('YayWeFoundIt');
Mouse(x, y, 5, 5, True);
End;
Why are you calling the FindSymbol right after each other? It's not a huge deal, but if you found it the first time you don't have to call it instantly the second time. In fact, if it worked the first time, and not the second, your loop would get messed up.



MMouse(x, y, 3, 3);
ClickMouse2(False);
Why not Mouse(x,y,3,3,False); ? At least in this procedure you have some sort of failsafe.



          if FindDTM(BankEss, x, y, MIX1, MIY1, MIX2, MIY2) then
Begin
..
End;
if not FindDTM(BankEss, x, y, MIX1, MIY1, MIX2, MIY2) then
Begin
Learn to use "else" statements more often. If it doesn't find it, then you don't need to look again.



procedure CraftingRunes is a huge mess.
MMouse(x, y, 4, 4);
WaitUptext('raft-rune', 400);
Mouse(x, y, 0, 0, True);
Why even bother moving there with randomness if you're going to click the exact coord afterwards? You probably would want to put a GetMousePos before the 0,0 mouse. You also are using WaitUptext but never check its result? So it's going to click every single time regardless of uptext. You do these above 2 errors numerous times in this procedure.



In a lot of places you call Terminatescript instead of something like nextplayer(False); Just because you have declareplayers doesn't make it multiplayer. You should still use np(false) instead of terminating a script, even if it's singleplayer [if you are using declareplayers].



To end this on a good note, I like how you used SPS and Radialwalk instead of just one walking method.



I do not think you are ready for Members yet. Please fix up these core flaws and ENSURE it can take failures. You are messing with high level accounts who have done that pain in the butt quest, so you gotta make sure it's never going to mess up with those silly logical errors. Once these are all fixed up and you have a nice long proggy, please reapply with it. :)

bomh

2012-01-07 05:06:46

thanks you ggzz i will learn from my mistake.
and yes harry i know what you talking about thanks for the advise. i will do better next time

Dynamite

2012-01-07 07:29:13

No for:

From: IRC
guy wat a good function to use to find altar?
12:24 [J]ustin TPA?
12:26 bomh can u teach me :d
12:27 Mayazcherquoi bomh: You are asking for someone to teach you TPA object finding? Yet you also think you are good enough to apply for membership
12:27 Booom ^
12:27 [J]ustin http://villavu.com/forum/showthread.php?t=49067&highlight=wizzup+plugin
12:27 bomh i using finddtmrotate
12:28 Mayazcherquoi Omg…
12:28 Booom lol

bomh

2012-01-07 07:31:41

oh wow i miss understand the thing and u said no oh wow

Dynamite

2012-01-07 07:35:40

I said no for you wanting someone to teach you how to TPA.
Also, while it's out there, your activity.

Press Play

2012-01-07 07:43:56

I would've liked to vote 'yes' because you're Viet like me, but I also don't think you're ready yet. Before you read on though, I really think you have potential and please please please keep trying and apply again!

Firstly, I see a lot of DTMs (which is not a problem), but I think there can be cleaner methods of finding things. I would mainly use DTMs for items only, but again - it really is your choice.

Next, TPAs. This is a really big thing about getting into members. I would highly advise you learn them. You seem very capable of learning them! They are (mainly) used for finding objects on screen.

Like Harry stated, you seem to be repeating a lot of things. To minimise this, try putting things into functions. This brings me to the next problem.. failsafes. Once again pointed out by Harry, I can see a lot of infinite loops which you need to break out of! Functions are very useful here as they can return booleans.

But positively, I like how you've used SPS walking. You seen very confident in it. you also have good structure and standards in your code. Easily legible :) I wish you luck and hope you make it into SRL Members. Also, your attitude is good - that is important in our decision :)

bomh

2012-01-07 08:40:29

thanks -daazndagger- for the point out. i fix all the infinite loops and yah i will try to learn and use TPAs in my script more. If i didn't make it then i want to said thanks you all for helping me point out what am lack of. i will try harder next time thank again.

Kyle Undefined

2012-01-07 10:45:54

This script looks a lot like Demise's script, care to explain? Holding my vote for now.

PatDuffy

2012-01-07 10:52:31

From: Kyle Undefined
This script looks a lot like Demise's script, care to explain? Holding my vote for now.


There so many runecrafters floating around recently. It really would not surprise me at all if they all had similar code.

Kyle Undefined

2012-01-07 11:05:30

It's the same procedure names that get me.

Harry

2012-01-07 11:31:39

Eh yeah that's definitely ripped from Demise's, good catch Kyle. Now that I compare them, it looks like you copy pasted the entire thing into a new Simba window, butchered it a lot, then slapped your name on it. Not so extreme, but there is a lot of "borrowed" stuff I'd say. You have definitely "borrowed" more than enough that you can't really call it just your work anymore.

I wouldn't really consider it total plagiarism, just a lot of copy+paste and modifications. At least I think your walking is your own work.

I suggest you make a new script and don't borrow any code from another. And if you must, borrowing even with modifying, put credits in the comments next to every line or function your borrow.

Scaper

2012-01-07 14:34:57

Just about to say very similar to demise

bomh

2012-01-07 19:18:50

ya i ask her about the pouching suport procedure and she help me with it
and hamster31 was the one that help me you can also ask him

hamster31

2012-01-07 21:13:50

^ like he said, the idea is to learn from other people and get help from other people to show interest and wiliness to learn. Which he clearly did. Believe it or not, while i was helping him i did not give him a single line of code. He needed to figure out a way to do it himself and which he clearly did.

He has somebit to learn but i still wouldn't change my Yes on the basis that he plagiarized. He asked for permission before using and altering the script.

nielsie95

2012-01-13 14:50:17

Looks like you will not get in this time.
You may try again in two weeks!