NKN
2012-03-28 12:23:50
How Long have You Played Runescape?
6 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
DM(Small Programming language)
Are you a member of any other communities?
MPGH
Tell us about yourself…
Please show us one (or multiple) of your scripts.
6 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
DM(Small Programming language)
Are you a member of any other communities?
MPGH
Tell us about yourself…
From: nkn
My name is Chris, and I'm from Northern Indiana, been there my whole life. I still attend school, been on spring break the last week. A few of my hobbies would be gaming, martial arts, and football. I started programming C++ a few years back, then dropped off to a smaller language called DM mainly for programming 2D games.
Please show us one (or multiple) of your scripts.
program PowerLRC;
{$DEFINE SMART}
{$i srl/srl.simba}
{$i srl/srl/misc/paintsmart.simba}
{$i srl/srl/skill/fighting.simba}
//{$i ObjectDTM/ObjDTMInclude.simba} Keep commented out unless using Object DTM's.
var
Loads,Ore:Integer;
Loc:String;
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; // Username
Players[0].Pass := ''; // Password
Players[0].Nick := ''; // 3-4 lowercase letters from username
Players[0].Active := True; // Set to true if you want to use Player 0
Players[0].Pin := ''; // Leave blank if the player doesn't have a bank pin
Players[0].BoxRewards := ['Xp', 'mote', 'ostume', 'oins', 'aphire', 'ssence'];
Loc := 'Rock One';//Do not touch this.
Loads := 0//Keep to 0 for unlimited.
{
Players[1].Name := ''; // Username
Players[1].Pass := ''; // Password
Players[1].Nick := ''; // 3-4 lowercase letters from username
Players[1].Active := True; // Set to true if you want to use Player 0
Players[1].Pin := ''; // Leave blank if the player doesn't have a bank pin
Players[1].BoxRewards := ['Xp', 'mote', 'ostume', 'oins', 'aphire', 'ssence'];
Loc := 'Rock One';
Loads := 0//Keep to 0 for unlimited.}
{
Players[2].Name := ''; // Username
Players[2].Pass := ''; // Password
Players[2].Nick := ''; // 3-4 lowercase letters from username
Players[2].Active := True; // Set to true if you want to use Player 0
Players[2].Pin := ''; // Leave blank if the player doesn't have a bank pin
Players[2].BoxRewards := ['Xp', 'mote', 'ostume', 'oins', 'aphire', 'ssence'];
Loc := 'Rock One';
Loads := 0//Keep to 0 for unlimited.}
{
Players[3].Name := ''; // Username
Players[3].Pass := ''; // Password
Players[3].Nick := ''; // 3-4 lowercase letters from username; used for random event detection
Players[3].Active := True; // Set to true if you want to use Player 0
Players[3].Pin := '';
Players[3].BoxRewards := ['Xp', 'mote', 'ostume', 'oins', 'aphire', 'ssence'];
Loc := 'Rock One';
Loads := 0//Keep to 0 for unlimited.}
end;
////////////////////////////////////////////////////////////////////////////////
// //
// DO NOT TOUCH ANYTHING BELOW THIS LINE UNLESS YOU KNOW WHAT YOU ARE DOING //
// //
// //
////////////////////////////////////////////////////////////////////////////////
function FindGold(var x, y : Integer) : Boolean;
var
a : Integer;
TPA : TPointArray;
ATPA : T2DPointArray;
MP : TPoint;
tmpCTS : Integer;
Box : TBox;
begin
if not LoggedIn then Exit;
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.12,0.12);
FindColorsSpiralTolerance(MSCX,MSCY,TPA,2415357,MSX1,MSY1,MSX2,MSY2,4);
SortTPAFrom(TPA,point(MSCX,MSCY));
ATPA := TPAtoATPAEx(TPA,15,15);
for a := 0 to High(ATPA) do
begin
MP := MiddleTPA(ATPA[a]);
Box := IntToBox((MP.x - 20),(MP.y - 20),(MP.x + 20),(MP.y + 20));
SMART_DrawBoxEx(True,Box,clYellow);
MMouse(MP.x,MP.y,4,4);
if(WaitUpText('pos',750))then
begin
x := MP.x; y := MP.y;
Result := True
SMART_ClearCanvas;
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2,0.2);
end;
function FindLift(var x, y : Integer) : Boolean;
var
a : Integer;
TPA : TPointArray;
ATPA : T2DPointArray;
MP : TPoint;
tmpCTS : Integer;
Box : TBox;
begin
if not LoggedIn then Exit;
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.12,0.12);
FindColorsSpiralTolerance(MSCX,MSCY,TPA,4616094,MSX1,MSY1,MSX2,MSY2,4);
SortTPAFrom(TPA,point(MSCX,MSCY));
ATPA := TPAtoATPAEx(TPA,15,15);
for a := 0 to High(ATPA) do
begin
MP := MiddleTPA(ATPA[a]);
Box := IntToBox((MP.x - 20),(MP.y - 20),(MP.x + 20),(MP.y + 20));
SMART_DrawBoxEx(True,Box,clYellow);
MMouse(MP.x,MP.y,4,4);
if(WaitUpText('ull',750))then
begin
x := MP.x; y := MP.y;
Result := True
SMART_ClearCanvas;
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2,0.2);
end;
procedure Progress;
var
OrePH,XPPH:Integer;
begin
OrePH := Round((Ore * 3600) / (GetTimeRunning / 1000));
XPPH := Round(((Ore * 64) * 3600) / (GetTimeRunning / 1000));
ClearDebug;
Writeln('***********Power LRC**********');
Writeln('* ~By NKN~ ');
Writeln('*Ore Mined: ' + IntToStr(Ore) + ' (' + IntToStr(OrePH) + ' P/H)');
Writeln('*XP earned: ' + IntToStr(Ore * 64)+ ' (' + IntToStr(XPPH) + ' P/H)');
Writeln('*Total Time: ' + TimeRunning);
Writeln('********************************');
end;
procedure Antiban;
begin
FindNormalRandoms;
case Random(80) of
0: RandomRClick;
1: HoverSkill('Mining',False);
2: PickUpMouse;
3: RandomMovement;
4: BoredHuman;
5: ExamineInv;
7: SetAngle(SRL_ANGLE_HIGH);
8: Wait(5000)
end;
end;
procedure WalkingSpec(TheWalk:Integer);
begin
if not LoggedIn then Exit;
case TheWalk of
1: RadialWalkTolerance(2636105,159,186,74,5,5,15);
2: RadialWalkTolerance(1979205,136,153,74,5,5,15);
3: RadialWalkTolerance(1517617,140,220,74,5,5,10);
//All Above is Walking to Ore
4: RadialWalkTolerance(2766664,340,327,74,5,5,25);
5: RadialWalkTolerance(2766664,330,357,74,5,5,25);
6: RadialWalkTolerance(2413294,316,267,74,5,5,25);
//All Above is Walking to Bank
7: RadialWalkTolerance(2571333,329,320,74,5,5,25);
8: RadialWalkTolerance(2965067,288,262,74,5,5,25);
9: RadialWalkTolerance(12632256,340,250,45,5,5,25);
//To second rock from rock one.
10: RadialWalkTolerance(3162704,78,94,74,5,5,25);
11: RadialWalkTolerance(2413294,358,351,74,5,5,25);
//To bank, second path.
end;
end;
procedure WalkToOre;
var
i,x,y,TimesWaited,TimesFailed:Integer;
begin
MakeCompass('N')
SetAngle(SRL_ANGLE_HIGH)
if not LoggedIn then Exit;
if(TimesFailed > 1) then
begin
Exit;
end;
if InvCount > 10 then Exit;
for i := 1 to 3 do
begin
if(InFight) then
begin
Writeln('Running from fight!');
MakeCompass('N');
SetAngle(SRL_ANGLE_HIGH);
Exit;
end;
FFlag(0);
Wait(750+random(200));
Writeln('On Walk' + IntToStr(i));
WalkingSpec(i);
Loc := 'Rock One';
end;
MakeCompass('S');
repeat
if(TimesWaited > 7) then
if(Loc = 'Rock One') then
begin
MakeCompass('N');
SetAngle(SRL_ANGLE_HIGH);
for i := 7 to 9 do
begin
Writeln('To the backup rock!');
FFlag(0);
Wait(750+random(200));
Writeln('On Backup Walk' + IntToStr(i - 6));
WalkingSpec(i);
Loc := 'RockTwo';
end;
MakeCompass('W');
end else//LRC Miner By NKN @ Villavu.com
begin
Exit;
end;
if(InFight) then
begin
Writeln('Running from fight!');
MakeCompass('N');
SetAngle(SRL_ANGLE_HIGH);
Exit;
end;
if(FindGold(x,y)) then
begin
MMouse(x,y,3,3);
Wait(1000);
if(IsUpText('pos')) then
begin
Writeln('Mining Ore!');
Mouse(x,y,1,1,True);
Antiban;
Wait(20000+random(2000));
TimesWaited := 0
end;
end else;
if(IsUpText('old')) then
begin
Continue;
end;
Antiban;
Wait(5000+random(1000))
TimesWaited := TimesWaited + 1;
TimesFailed := TimesFailed + 1;
until (InvFull)
MakeCompass('N');
SetAngle(SRL_ANGLE_HIGH);
end;
procedure WalkToBank;
var
i,x,y:Integer;
begin
MakeCompass('N')
SetAngle(SRL_ANGLE_HIGH)
if not LoggedIn then Exit;
Antiban;
if(FindSymbol(x,y,'bank')) then
begin
repeat
if(FindLift(x,y)) then
begin
if(InvCount > 1) then
begin
Ore := Ore + InvCount;
Mouse(x,y,3,3,True);
Wait(3000)
begin
Writeln('Depositing...');
QuickDeposit(SRL_DEPOSIT_ALL);
end;
end else
begin
Exit;
end;
end;
Wait(1000+random(250));
until (InvCount < 1)
end;
if(Loc = 'Rock One') then
begin
for i := 4 to 6 do
begin
FFlag(0);
Wait(500+random(200));
Writeln('On way back to bank, number' + IntToStr(i - 3));
WalkingSpec(i);
end;
if(FindSymbol(x,y,'bank')) then
begin
Mouse(x,y,3,3,True);
Writeln('Symbol Finding, God Bless it');
end;
repeat
if(FindLift(x,y)) then
begin
if(InvCount > 1) then
begin
Ore := Ore + InvCount;
Mouse(x,y,3,3,True);
Wait(3000)
begin
Writeln('Depositing...');
QuickDeposit(SRL_DEPOSIT_ALL);
end;
end else
begin
Exit;
end;
end;
Loc := 'Rock One';
Wait(1000+random(250));
until (InvCount < 1)
end else
begin
for i := 10 to 11 do
begin
FFlag(0);
Wait(500+random(200));
Writeln('On way back to bank, number' + IntToStr(i - 9));
WalkingSpec(i);
end;
if(FindSymbol(x,y,'bank')) then
begin
Mouse(x,y,3,3,True);
Writeln('Symbol Finding, God Bless it');
end;
repeat
if(FindLift(x,y)) then
begin
if(InvCount > 1) then
begin
Ore := Ore + InvCount;
Mouse(x,y,3,3,True);
Wait(3000)
begin
Writeln('Depositing...');
QuickDeposit(SRL_DEPOSIT_ALL);
end;
end else
begin
Exit;
end;
end;
Wait(1000+random(250));
until (InvCount < 1)
end;
Loc := 'Rock One';
end;
procedure Mainloop;
var
LoadsLeft,x,y,Pickaxe:Integer;
begin
Antiban;
if not LoggedIn then Exit;
Pickaxe:= DTMFromString('mrAAAAHic42BgYDBiYWDQh2IdIFYHYisgNgFiDSD+DFTzA4'+
'i5GCH4C5D9FYg/QLFzZDKQZMKJ/zPgB4wEMAwAAGt3CYA=');
if(FindDTM(Pickaxe,x,y,MIX1,MIY1,MIX2,MIY2)) then
begin
Writeln('Found pickaxe in inventory!');
Mouse(x,y,3,3,True);
FreeDTM(Pickaxe);
end;
if(Loads > 0) then
begin
LoadsLeft := Loads
end else
LoadsLeft := 2;
While(LoadsLeft > 0) do
begin
Progress;
WalkToOre;
WalkToBank;
LoadsLeft := LoadsLeft - 1
if(Loads = 0) then
begin
LoadsLeft := LoadsLeft + 1
end;
end;
Players[CurrentPlayer].Active := False;
NextPlayer(Players[CurrentPlayer].Active);
end;
begin
Smart_Server := 25;
Smart_Members := False;
Smart_Signed := True;
Smart_SuperDetail := False;
ClearDebug;
SetupSRL;
//ObjDTM_Setup;
DeclarePlayers;
LoginPlayer;
repeat
SetAngle(SRL_ANGLE_HIGH);
MakeCompass('N');
GameTab(tab_Inv);
if(RunEnergy(20)) then
else
RestUntil(80);
Mainloop;
until false
end.***********Power LRC**********
* ~By NKN~
*Ore Mined: 128 (459 P/H)
*XP earned: 8192 (29402 P/H)
*Total Time: 16 Minutes and 43 Seconds
********************************