HardRockers
2012-01-01 21:43:49
How Long have You Played Runescape?
7 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
I know a little Java, not enough to say I really know it.
Are you a member of any other communities?
bots.rs, Rsbuddy
Tell us about yourself…
Please show us one (or multiple) of your scripts.
7 Year(s)
Are you affilated in anyway with Jagex LTD?
No
Were you Referred to SRL?
What is your general programming knowledge?
I know a little Java, not enough to say I really know it.
Are you a member of any other communities?
bots.rs, Rsbuddy
Tell us about yourself…
From: HardRockers
I am a college football player at the SDSMT in Rapid City, SD. In my spare time I play PS3 and Runescape. I am a Mechanical Engineering Major. My favorite things normally include sports.
Please show us one (or multiple) of your scripts.
{/----------------------------------------------------------------------\\
| |
| ~~ [HardRockin] Iron Miner ~~ |
| ~Version: 0.5~ |
| |
| Please Post Progress Reports |
| Because the script is still in Beta please Monitor |
| All Feedback Helps, Good or Bad |
| |
| Features: |
| -Mines iron ore(at any location right now) |
| -Good Antiban |
| -Uses Smart |
| -Stat tracking, and progress reports. |
| -2 Methods, Regular and M1D1 |
| - FASTEST mining exp on a Simba Script. | - Banking
| -Banking (only at yanille 3 iron ore spot |
| |
| Instructions: |
| -Place Character in a place with Iron ore In Sight |
| -Fill in account information Under Declare Players |
| -Choose A Method Under Const, 1,2 or 3 |
| -Press Start |
| |
| |
| |
| |
\\----------------------------------------------------------------------//}
program HardRockinYanilleMiner;
{$DEFINE SMART}
{$i SRL\SRL.scar}
{$i sps/sps.simba}
{$i SRL\SRL\Misc\Stats.simba}
Var
Count, PlusOne: Integer;
Exp, EPH: Extended;
Const
SRLStats_Username = '';
SRLStats_Password = '';
NumbOfPlayers= 1;
BreakEvery= 120;
BreakFor= 5;
Version= '0.5'; //NO TOUCHY!
Method= 3;//For regular drop use 1, for M1D1 use 2, for Banking use 3
Procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;
Players[0].Pin := '';
end;
end;
Procedure StartScript;
Begin
SetUpSRL;
MouseSpeed := 15;
ActivateClient;
DeclarePlayers;
If (Not LoggedIn) then
LoginPlayer;
SetAngle(True);
MakeCompass('n');
End;
procedure AntiBan;
begin
case random(100) of
0: RandomRClick;
1: BoredHuman;
2: HoverSkill('Mining', False);
3: ExamineInv;
4: RandomMovement;
end;
end;
Function MineOre:Boolean;
Var
x,y, MineCounter: Integer;
Begin
If Not(LoggedIn) Then Exit;
FindNormalRandoms;
PlusOne:= InvCount +1;
x:= MSCX;
y:= MSCY;
If FindObjCustom(x, y, ['Mine','Rocks','e R'], [2832738, 2502212, 2701150,2371667], 5) Then
Begin
WriteLn('There is ore here.');
GetMousePos(x, y);
Mouse(x, y, 2, 2, True);
IncEx(Count, 1);
stats_IncVariable('Iron Ore (Mined)', 1);
Flag;
Case(Method) of
1: Repeat
FindNormalRandoms;
MarkTime(MineCounter);
wait(100);
Antiban;
If InvCount= PlusOne Then
WriteLn('You got ore');
Until (InvCount= PlusOne) OR (TimeFromMark(MineCounter) > 3000);
2: Repeat
FindNormalRandoms;
MarkTime(MineCounter);
wait(100);
If InvCount= PlusOne Then
WriteLn('You got ore');
Until (InvCount= PlusOne) OR (TimeFromMark(MineCounter) > 3000);
3:Repeat
FindNormalRandoms;
MarkTime(MineCounter);
wait(100);
Antiban;
If InvCount= PlusOne Then
WriteLn('You got ore');
Until (InvCount= PlusOne) OR (TimeFromMark(MineCounter) > 3000);
end;
end;
end;
//Function Walking
//By Camaro'
//Uses a combination of coordinates and color to walk using the MM.
Function Walking(Color, Tolerance: Integer; SortFrom: tpoint): Boolean;
var
i, x, y, rx, ry: Integer;
TPA: TPointArray;
begin
if not LoggedIn then Exit;
FindNormalRandoms;
FindColorsSpiralTolerance(MMCX, MMCY, TPA, Color, MMX1, MMY1, MMX2, MMY2, Tolerance);
SortTPAFrom(TPA, SortFrom);
for i := 0 to High(TPA) do
begin
x := TPA[i].x;
y := TPA[i].y;
rx := RandomRange(-6, 6);
ry := RandomRange(-6, 6);
if (not rs_OnMinimap(x + rx, y + ry)) then
Continue;
Mouse(x + rx, y + ry, 0, 0, true);
FFlag(0);
Wait(200 + Random(500));
Result := True;
Break;
end;
end;
Procedure WalkToBank;
Begin
if not LoggedIn then Exit;
FindNormalRandoms;
ClickNorth(True);
Walking(2920289, 20, Point(619, 152));
Flag;
Walking(2985828, 20, Point(596, 143));
Flag;
Walking(7302775, 20, Point(597, 127));
Flag;
Walking(14474724, 20, Point(628, 130));
Openbank('ynb', False,True);
DepositAll;
CloseBank;
End;
Procedure WalkToIron;
Begin
if not LoggedIn then Exit;
FindNormalRandoms;
ClickNorth(True);
Walking(6580843, 10, Point(640, 48));
Flag;
Walking(2918254, 10, Point(646, 21));
Flag;
Walking(2390608, 10, Point(662, 26));
Flag;
Walking(2837593, 10, Point(633, 73));
End;
//Procedure DropOre;
//By: Hero
//From Hero's Ardy M1D1 script, it is very accurate and precise.
procedure DropOre;// simple and accurate first inventory spot drop loop
begin//Right clicks and drops first inventory slot and adds
MMouse(580, 226, 2, 2);
Mouse(580, 226, 1, 1, false);
Wait(200 + Random(100));
ChooseOption('Drop');
Wait(200 + Random(100));
end;
procedure ProgressReport;
begin
Exp := 35;
EPH := Round(((Count * Exp) * 3600.0) / (GetTimeRunning / 1000.0));
ClearDebug;
WriteLn('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');
WriteLn('~~~~~~~~~~~~~ HardRockin Iron Miner ~~~~~~~~~~~~~~');
WriteLn('Time Running: '+ TimeRunning);
WriteLn('Mining EXP: '+ FloatToStr(Count * Exp) + ' ');
WriteLn('Iron Ore Mined : ' + ToStr(Count)+ ' ');
WriteLn('Mining EXP/HR : ' + ToStr(EPH)+ ' ');
WriteLn('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');
WriteLn('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');
FindNormalRandoms;
end;
Procedure Method1;
Begin
if not LoggedIn then Exit;
FindNormalRandoms;
repeat
repeat;
MineOre;
Until (InvFull);
DropAll;
ProgressReport;
Stats_Commit;
Until (NoT Loggedin);
End;
Procedure Method2;
Var
MineCounter: Integer;
Begin
if not LoggedIn then Exit;
FindNormalRandoms;
PlusOne:= InvCount + 1;
repeat
repeat
MineOre;
Repeat
FindNormalRandoms;
MarkTime(MineCounter);
wait(100);
If InvCount= PlusOne Then
WriteLn('You got ore');
Until (InvCount= PlusOne) OR (TimeFromMark(MineCounter) > 3000);
DropOre;
ProgressReport;
Stats_Commit;
Until (InvFull);
if(Invfull) Then
DropAll;
AntiBan;
Until (Not LoggedIn);
End;
Procedure Method3;
Begin
if not LoggedIn then Exit;
FindNormalRandoms;
Repeat
Repeat
MineOre;
ProgressReport;
Until (InvFull);
WalkToBank;
WalkToIron;
Stats_Commit
Until (Not LoggedIn);
End;
begin
StartScript;
SetupSRLStats(425, SRLStats_Username, SRLStats_Password);
Case(Method) of
1:Method1;
2:Method2;
3:Method3;
end;
end.