The best way to contact me is by email, which you can find on my website: http://wizzup.org
I also get email notifications of private messages, though.
Simba (on Twitter | Group on Villavu | Website | Stable/Unstable releases
Documentation | Source | Simba Bug Tracker on Github and Villavu )
My (Blog | Website)
Totally cool wizzup? ! Works great for me, apart from when i had to stop and world hop cus of a door closing n00bstill, awesome stuff man, thnx
Nice script, got a report:
Only one problem, the timeout problem while mining ess. Fixed it by using a addy pickaxe instead of steel.Code:Essence Miner by Wizzup?. Version: 1.08 Rune Essence Mined and Banked : 380. Worked for 46 Minutes and 52 Seconds ---------------------------------------------- 0 : *** = T; Loc = Bank; Banked: 380 Ess; M lvl:48 ---------------------------------------------- *****. Mined 380 Essence. Mining level is 48 //Now its 49, tnx to this script Location is Bank. ---------------------------------------------- ----------------------------------------------
Gotta love this script. It could have run a little longer but I decided to stop it manually.
13*37+1*3*3*7*13+37 = 1337
Awesome man, it probably could of gone much longer but I wanted to get onCode:---------------------------------------------- Essence Miner by Wizzup?. Version: 1.08 Rune Essence Mined and Banked : 4036. Solved 7 Abyssal Random Events. Missed 1 Abyssal Random Events. Worked for 9 Hours, 18 Minutes and 35 Seconds ---------------------------------------------- 0 : ncom = T; Loc = Bank; Banked: 559 Ess; M lvl:39 1 : eeld = T; Loc = Bank; Banked: 587 Ess; M lvl:34 2 : maum = T; Loc = Bank; Banked: 558 Ess; M lvl:37 3 : ynjr = T; Loc = Bank; Banked: 620 Ess; M lvl:36 4 : bany = F; Loc = Abyss; Banked: 112 Ess; M lvl:32 5 : ldch = T; Loc = Bank; Banked: 593 Ess; M lvl:32 6 : dopo = T; Loc = Bank; Banked: 560 Ess; M lvl:34 7 : erta = T; Loc = Bank; Banked: 447 Ess; M lvl:27 ----------------------------------------------![]()
i got a problem i thought it goes back and forth like from player a to player b and goes back to player a? or it doesnt ? Im confused cuz from an earlier post i thought it does...? cuz i wanted to switch back and fourth like every 30 mins to aviod randoms better =)
the miner seems to stop with 8 slots left in the inventory, then logs out and changed player. Any reason for this?
SCAR Code:Rune Essence Mined and Banked : 5001.
Solved 7 Abyssal Random Events.
Missed 1 Abyssal Random Events.
Door Opened : 3.
Worked for 11 Hours, 6 Minutes and 32 Seconds
very nice!
My players always get stuck either on "tobank" or "aubury" alot.. prolly cuz noobs close door as i posted on a couple of posts up well heres the player report- the o dear u are in lumby is wrong.. i was alive in the essence place. --.--
SCAR Code:0 : @@@ = F; Loc = Aubury; Banked: 0 Ess; M lvl:47
1 : r@@ = F; Loc = Oh Dear You Are in Lumby; Banked: 916 Ess; M lvl:44
2 : @@@ = F; Loc = ScapeRune; Banked: 81 Ess; M lvl:38
3 : @@@ = F; Loc = ScapeRune; Banked: 540 Ess; M lvl:43
4 : @@@ = F; Loc = Oh Dear You Are in Lumby; Banked: 269 Ess; M lvl:36
5 : @@@ = F; Loc = ToBank2; Banked: 795 Ess; M lvl:41
6 : @@@ = F; Loc = Bank; Banked: 195 Ess; M lvl:54
7 : @@@ = T; Loc = Abyss; Banked: 2205 Ess; M lvl:32
Another awsome scripting forum! Check it out: www.Uberbroproductions.net/forums
TRY MY VARROCK ZAMMY MAGE CURSER/CONFUSER/WEAKENER! THE LINK IS BELOWhttp://www.srl-forums.com/forum/varr...56.html?t=6356![]()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~
SCAR Code:program EssMiner;
{.include SRL/SRL.scar}
{.include SRL/SRL/Skill/Mining.scar}
{
"Stars, Hide your fires, Let not light see my black and deep desires.
The eye wink at the hand; Yet let that be, Which the eye fears when it
is done to see"
Macbeth - Shakespeare
}
Const
FirstWorld = False;
// IF you first loaded a
// world and are too lazy to logout once.
StartPlayer = 0;
NumberOfUsers = 6;
MinutesPerLoad = 5;
Loads = 10000;
VersionNumber = '1.08';
YourSRLSTATSID = ''; // Stats ID.
YourSRLSTATSPASS = ''; // Stats Pass.
YourRCMASTER = ''; // Remote Control Master.
WizzyDebug = True;
Var
Position : String;
EssencePoint : Array [0..4] Of TPoint;
MiningMark, Abyss, NOAbyss, AuburyText, RuneShopColor,
RuneEssenceMined, PureEssenceMined, iMark, IdleMark, Doors: Integer;
PortalBool, PouchBool, PouchBool2 : Boolean;
Procedure DeclarePlayers;
Begin
HowManyPlayers:= NumberOfUsers;
NumberOfPlayers( HowManyPlayers );
CurrentPlayer := StartPlayer;
Players[0].Name :='';
Players[0].Pass :='';
Players[0].Nick :='';
Players[0].Loc :='Bank';
Players[0].Active:=True;
Players[0].Boolean1 := True; // Is The Pick Equipped?
Players[0].Boolean2 := False; // False for brightness Check Once.
Players[0].String1 := ''; // Bank PIN, If any.
Players[1].Name :='';
Players[1].Pass :='';
Players[1].Nick :='';
Players[1].Loc :='Bank';
Players[1].Active:=True;
Players[1].Boolean1 := True; // Is The Pick Equipped?
Players[1].Boolean2 := False; // False for brightness Check Once.
Players[1].String1 := ''; // Bank PIN, If any.
Players[2].Name :='';
Players[2].Pass :='';
Players[2].Nick :='';
Players[2].Loc :='Bank';
Players[2].Active:=True;
Players[2].Boolean1 := True; // Is The Pick Equipped?
Players[2].Boolean2 := False; // False for brightness Check Once.
Players[2].String1 := ''; // Bank PIN, If any.
Players[3].Name :='';
Players[3].Pass :='';
Players[3].Nick :='';
Players[3].Loc :='Bank';
Players[3].Active:=True;
Players[3].Boolean1 := True; // Is The Pick Equipped?
Players[3].Boolean2 := False; // False for brightness Check Once.
Players[0].String1 := ''; // Bank PIN, If any.
Players[4].Name :='';
Players[4].Pass :='';
Players[4].Nick :='';
Players[4].Loc :='Bank';
Players[4].Active:=True;
Players[4].Boolean1 := True; // Is The Pick Equipped?
Players[4].Boolean2 := False; // False for brightness Check Once.
Players[4].String1 := ''; // Bank PIN, If any.
Players[5].Name :='';
Players[5].Pass :='';
Players[5].Nick :='';
Players[5].Loc :='Bank';
Players[5].Active:=True;
Players[5].Boolean1 := True; // Is The Pick Equipped?
Players[5].Boolean2 := False; // False for brightness Check Once.
Players[5].String1 := ''; // Bank PIN, If any.
Writeln( IntToStr ( NumberOfUsers ) + ' Players' );
End;
Function HighestBrightNess: Boolean;
Begin
GameTab(11);
Wait(400);
If GetColor(712, 226) <> 16777215 Then
Begin
Mouse(712, 226, 2, 2, True);
Result := True;
Wait(200);
End;
End;
Function GetUpTextBlue:String;
Var
iX, iY: Integer;
Begin
Result := Trim(GetTextAtEx(7, 7, 140, upchars, true,
true, 0, 2, 14277634, 50, True, tr_AllChars));
End;
Function IsUpTextBlue(Text: String): Boolean;
Begin
Result := (Pos(Text, GetUpTextBlue) <> 0)
End;
Function FindAuburyText: Boolean; // FindTalk by Renax, but adepted.
var
ExitCond, NoMoreYellow: Boolean;
Yint, Xmin, diff, difflast, Xmax, XmidRec, Xmid: Integer;
RawMenuText: string;
begin
x := 0;
y := 0;
Xmid := 0;
Xmin := 0;
Xmax := 0;
NoMoreYellow := False;
if (FindColor(x, y, 65535, 10, 25, 511, 334)) and (not (FindColor(x, y, 65280, 220, 130, 290, 165))) then
begin
Result := False;
if (not (FindBitmapMaskTolerance(AuburyText, x, y, 0, 0, 516, 338, 0, 40)))
then
Exit;
if (FindColorSpiral(x, y, 65535, x - 10, y - 10, x + 10, y + 10)) then
begin
Wait(10);
if (GetColor(x, y) = 65535) then
begin
If WizzyDebug Then WriteLn('Spotted aubury text');
Wait(10);
NoMoreYellow := False;
Yint := 0;
repeat
Yint := Yint + 1;
y := y + Yint;
x := 0;
repeat
ExitCond := False;
x := x + 1;
Xmin := x;
if (GetColor(x, y) = 65535) then
ExitCond := True;
if (x > 500) then
begin
x := 0;
ExitCond := True;
NoMoreYellow := True;
end;
until (ExitCond);
ExitCond := False;
x := 520;
while (NoMoreYellow = False) and (ExitCond = False) do
begin
x := x - 1;
Xmax := x;
if (GetColor(x, y) = 65535) then
ExitCond := True;
end;
diff := (Xmax - Xmin);
if (diff > difflast) and (diff > 25) then
begin
XmidRec := ((diff / 2) + Xmin);
end;
difflast := diff;
until (NoMoreYellow)
x := XmidRec;
MMouse(x, y + 6, 3, 0);
Wait(100);
if IsUpTextMulti('Talk', 'lk-to', 'to') Then
begin
GetMousePos(x, y);
Mouse(x, y + 6, 0, 0, False);
if (ChooseOptionGetMenuText(RawMenuText, x, y, 'Teleport')) then
begin
If WizzyDebug Then WriteLn('Found Aubury')
FFlag(1);
Wait(1000 + Random(500))
Result := True;
Exit;
end;
end;
end;
end;
end;
end;
Function AtMine: Boolean;
Var
iX, iY: Integer;
Begin
Result := FindColoredAreaTolerance(iX, iY, 0, MMX1, MMY1, MMX2, MMY2, 100, 0);
End;
Function ScanMiniMap(iFrom, iTo, Distance: Integer): Integer;
Var
I, iX,iY: Integer;
Begin
For I := iFrom To ITo Do
Begin
iX := Round(Distance * Sin(I * Pi / 180)) + 648;
iY := Round(-Distance * Cos(I * Pi / 180)) + 80;
If GetColor(iX, iY) = 0 Then
Begin
Result := Result + 1;
End;
End;
End;
Function InAbyss: Boolean;
Var
A : Integer;
Begin
A := ScanMiniMap(0, 359, 50);
If WizzyDebug Then WriteLn('In Abyss gave '+IntToStr(A)+'.');
If A = 360 Then
Begin
Result := True;
End
End;
Function GuessAbyssRandom: Boolean;
Var
AbyssalMark, iX, iY, I, ChosenColor, Tol, Tries: Integer;
WeirdColors: Array [0..3] Of Integer;
Operate: TPoint;
Begin
WeirdColors[0] := 13751777;
WeirdColors[1] := 4953873;
WeirdColors[2] := 2509833;
Repeat
Case Random(4) Of
0: Begin Operate.X := 252; Operate.Y := 150; End;
1: Begin Operate.X := 278; Operate.Y := 170; End;
2: Begin Operate.X := 238; Operate.Y := 200; End;
3: Begin Operate.X := 215; Operate.Y := 166; End;
End;
For I := 0 To 2 Do
Begin
Tol := 0;
Repeat
Tol := Tol + 1;
iX := MSCX;
iY := MSCY;
If FindColorSpiralTolerance(iX, iY, WeirdColors[I], MSX1, MSY1, MSX2, MSY2, Tol) Then
Begin
ChosenColor := WeirdColors[I];
If (Distance (iX, iY, MSCX, MSCY) < 120) Then Break;
End;
If ChosenColor <> 0 Then Break;
Until Tol > 9;
End;
If ChosenColor <> 0 Then
Begin
MMouse(iX, iY, 0, 0);
Wait(10);
If IsUpText('perate') Then
Begin
GetMousePos(iX, iY);
Mouse(iX, iY, 0, 0, True);
End;
End;
Wait(5000+Random(500));
If Not InAbyss Then
Begin
Abyss := Abyss + 1;
ReportVars[8] := ReportVars[8] + 1;
Result := True;
Wait(1000);
ClickToContinue;
SRLRandomsReport;
Exit;
End;
Tries := Tries + 1;
If TimeFromMark(AbyssalMark) > 60000 * 5 Then Break;
Until Tries > 30;
Tries := 0;
If InAbyss Then
Begin
Repeat
Case Random(4) Of
0: Begin Operate.X := 252; Operate.Y := 150; End;
1: Begin Operate.X := 278; Operate.Y := 170; End;
2: Begin Operate.X := 238; Operate.Y := 200; End;
3: Begin Operate.X := 215; Operate.Y := 166; End;
End;
iX := Operate.X;
iY := Operate.Y;
If FindColorSpiralTolerance(iX, iY, 3393, MSX1, MSY1, MSX2, MSY2, Tol)
Or FindColorSpiralTolerance(iX, iY, 2040150, MSX1, MSY1, MSX2, MSY2, Tol) Then
Begin
If (Distance (iX, iY, MSCX, MSCY) < 80) Then
Begin
MMouse(iX, iY, 0, 0);
Wait(10);
If IsUpText('perate') Then
Begin
GetMousePos(iX, iY);
Mouse(iX, iY, 0, 0, True);
Wait(5000+ Random(500));
If Not InAbyss Then
Begin
Abyss := Abyss + 1;
ReportVars[8] := ReportVars[8] + 1;
Result := True;
ClickToContinue;
SRLRandomsReport;
Exit;
End;
End;
End;
End;
Tries := Tries + 1;
Tol := Tol + 2;
If Tol > 20 Then Tol := 2;
Until Tries > 50;
End;
LogOut;
NOAbyss := NOAbyss + 1;
ReportVars[9] := ReportVars[9] + 1;
Players[CurrentPlayer].Loc := 'Abyss';
SRLRandomsReport;
WriteLn('Abyss Random Event.');
End;
Function GetPositionInMine: String;
Begin
MakeCompass('N');
If Not LoggedIn Then Exit;
If Not FindSymbol(x, y, 'transportation') Then
Begin
Result := 'Middle';
Exit;
End;
If ScanMiniMap(220, 240, 60) < 15 Then
Begin
Result := 'North-East';
ReportVars[5] := ReportVars[5] + 1;
EssencePoint[0].X := 340;
EssencePoint[0].Y := 61;
EssencePoint[1].X := 295;
EssencePoint[1].Y := 50;
EssencePoint[2].X := 395;
EssencePoint[2].Y := 120;
Exit;
End;
If ScanMiniMap(125,155, 60) < 20 Then
Begin
Result := 'North-West';
ReportVars[6] := ReportVars[6] + 1;
EssencePoint[0].X := 140;
EssencePoint[0].Y := 115;
EssencePoint[1].X := 18;
EssencePoint[1].Y := 70;
EssencePoint[2].X := 120;
EssencePoint[2].Y := 150;
Exit;
End;
If ScanMiniMap(290,330, 55) < 20 Then
Begin
Result := 'South-East';
ReportVars[7] := ReportVars[7] + 1;
EssencePoint[0].X := 350;
EssencePoint[0].Y := 160;
EssencePoint[1].X := 337;
EssencePoint[1].Y := 210;
EssencePoint[2].X := 362;
EssencePoint[2].Y := 125;
If (ScanMiniMap(140, 170, 55) <> 31) Then
Exit;
End;
Result := 'South-West';
ReportVars[2] := ReportVars[2] + 1;
EssencePoint[0].X := 190;
EssencePoint[0].Y := 60;
EssencePoint[1].X := 146;
EssencePoint[1].Y := 94;
EssencePoint[2].X := 285;
EssencePoint[2].Y := 54;
End;
Function GetMiddle:String;
Var
Ex, Ey: Integer;
Begin
If Not LoggedIn Then Exit;
If ScanMiniMap(330, 380, 55) < 35 Then
Begin
Result := 'MiddleSW';
ReportVars[4] := ReportVars[4] + 1;
Ex := 605;
Ey := 116;
EssencePoint[0].X := 170;
EssencePoint[0].Y := 240;
EssencePoint[1].X := 190;
EssencePoint[1].Y := 290;
EssencePoint[2].X := 254;
EssencePoint[2].Y := 274;
End
Else
Begin
Result := 'MiddleNE';
ReportVars[3] := ReportVars[3] + 1;
Ex := 690;
Ey := 30;
EssencePoint[0].X := 360;
EssencePoint[0].Y := 40;
EssencePoint[1].X := 450;
EssencePoint[1].Y := 100;
EssencePoint[2].X := 390;
EssencePoint[2].Y := 30;
End;
Mouse(Ex, Ey, 2, 2, True);
Wait(10);
FFlag(0);
Wait(100);
End;
Function FindEssence(Var iX, iY: Integer): Boolean;
Var
I, Tolerance : Integer;
Begin
If Not LoggedIn Then Exit;
For I := 0 To 2 Do
Begin
Tolerance := - 1;
While Tolerance < 10 Do
Begin
Tolerance := Tolerance + 1;
iX := EssencePoint[I].X;
iY := EssencePoint[I].Y;
If FindColorSpiralTolerance(iX, iY, 9539996, MSX1, MSY1, MSX2, MSY2, Tolerance) Then
Begin
If Distance(iX, iY, EssencePoint[I].X, EssencePoint[I].Y) < 80 Then
Begin
MMouse(iX, iY, 0, 0);
Wait(10);
If IsUpTextBlue('ssen') Then
// If IsUpTextMulti('Esse', 'une Es', 'ine') Then
Begin
GetMousePos(iX, iY);
Result := True;
If WizzyDebug Then WriteLn('Found Essence');
Exit;
End;
End;
End;
End;
End;
End;
Function ToPortal: Boolean;
Var
iX, iY, C : Integer;
Boolie : Boolean;
Begin
If Not LoggedIn Then Exit;
If FindSymbol(iX, iY, 'transportation') Then
Begin
Mouse(iX, iY, 2, 2, True);
Wait(10);
FFlag(0);
FindNormalRandoms;
iX := MSCX;
iY := MSCY;
Repeat
If Random(4) = 3 Then
Boolie := True;
If Boolie Then
Begin
Case Random(3) Of
0: MakeCompass('E');
1: MakeCompass('S');
2: MakeCompass('W');
End;
End;
Wait(50);
C := C + 1;
If FindObj(iX, iY, 'rtal', 12051688, 9) Then
Begin
Mouse(iX, iY, 0, 0, True);
Wait(10);
Result := True;
FFlag(0);
If Boolie Then MakeCompass('N');
Exit;
End;
Wait(1000);
Until C > 2;
If Boolie Then MakeCompass('N');
End;
End;
Function RunToPortal: Boolean;
Begin
MarkTime(iMark);
Repeat
If Not LoggedIn Then Break;
If (TimeFromMark(iMark) > 120000) Then
Begin
If WizzyDebug Then WriteLn('Portal Took too long..logging');
LogOut;
Players[CurrentPlayer].Loc := 'Portal';
End;
If ToPortal Then
Begin
FFlag(0);
Wait(6000);
End
Else Wait(100);
Until Not AtMine;
Result := True;
PortalBool := True;
End;
Function OpenDoor : Boolean;
Var iX, iY,DoorClosed : Integer;
Begin
DoorClosed := DTMFromString('78DA63FCCDC0C0309F01053426CB337001694' +
'620FE0F048C6F808C7E5435E97E520CFC503520C0C80E644D4055' +
'13E7218EAAE617A639E86A0097700CBE');
If Not LoggedIn Then Exit;
If FindDTM(DoorClosed, iX, iY, 140, 90, 425, 325) Then
Begin
MMouse(iX, iY, 2, 2);
GetMousePos(iX, iY);
If isUpText('pen') Then
Mouse(iX, iY, 0,0, True);
Result := True;
If Result Then Doors := Doors + 1;
End;
FreeDTM(DoorClosed);
If Result And WizzyDebug Then writeln('The door was closed, but now opened.')
Else If WizzyDebug Then WriteLn('The door is open');
End;
Function ToBank: Boolean;
Var
iX, iY, BankDTM, D, WalkMark, aMark : Integer;
AngleVar : Extended;
Begin
If Not LoggedIn Then Exit;
SetRun(True);
OpenDoor;
Mouse(687, 30, 4, 4, True);
Wait(100);
MarkTime(aMark);
Repeat
If Not FlagPresent Then
Begin
OpenDoor;
Mouse(687, 30, 4, 4, True);
MarkTime(WalkMark)
Repeat
FindColorSpiral(iX, iY, RuneShopColor, MMX1, MMY1, MMX2, MMY2)
D := Distance(iX, iY, MMCX, MMCY);
Wait(100);
Until ((D > 15) Or (TimeFromMark(WalkMark) > 8000));
End
Else Break;
If TimeFromMark(aMark) > 120000 Then
Begin
WriteLn('ToBank took too long.. logging.');
LogOut;
Players[CurrentPlayer].Loc := 'ToBank2';
Exit;
End;
Until D > 15;
Wait(6000);
FFlag(10);
BankDTM:= DTMFromString('78DA636C666260486140016FDEBC61F80FA41' +
'981F83F1030B603D5E4A0AA79FB96814103AA060418EB816AB251' +
'D57CFD8AAA0600B6210EA4');
If FindDTMRotated(BankDTM, iX, iY, MMX1, MMY1, MMX2, MMY2, -1.0, 2.0, 1, AngleVar) Then
Begin
Result := True;
Mouse(iX, iY + 1, 0, 0, True);
Wait(3000);
FFlag(0);
End
Else
Begin
LogOut;
Players[CurrentPlayer].Loc := 'ToBank2';
WriteLn('Bank not found');
Exit;
End;
FreeDTM(BankDTM);
SetRun(False);
End;
Function FindAuburyFloorColor(Var iX, iY: Integer): Boolean;
Var
Tol, Floor3 : Integer;
Begin
If Not LoggedIn Then Exit;
Floor3 := BitmapFromString(3, 3, 'z78DA3377333735B1302791' +
'04004AD80BFE');
If FindColoredAreaTolerance(iX, iY, RuneShopColor, MMX1, MMY1, MMX2, MMY2, 16, 9) Then
Begin
RuneShopColor := GetColor(iX , iY);
If WizzyDebug Then WriteLn('RuneShopColor = '+IntToStr(RuneShopColor));
If WIzzyDebug Then WriteLn('Found with FindColoredAreaTolerance.');
Result := True;
End;
Tol := 0;
Repeat
Wait(10);
If Result Then Break;
Tol := Tol + 2;
iX := 618;
iY := 127;
If FindBitMapSpiralTolerance(Floor3, iX, iY, MMX1, MMY1, 650, 150, Tol) Then
Begin
RuneShopColor := GetColor(iX , iY);
If WizzyDebug Then WriteLn('RuneShopColor = '+IntToStr(RuneShopColor));
If WizzyDebug Then WriteLn('Found with Floor3 bmp.');
Result := True;
Break;
End;
Until Tol > 39;
FreeBitMap(Floor3);
End;
Function ToDoor: Boolean;
Var
iX, iY: Integer;
Begin
If FindColorRightTol(iX, iY, RuneShopColor, MMX1, MMY1, MMX2, MMY2, 0) Then
Begin
If WizzyDebug Then WriteLn('Door found');
Result := True;
Mouse(iX - 8, iY + 20, 0, 0, True);
FFlag(0);
End;
End;
Function SpotAubury: Boolean;
// 10855856, 3005947, 2998011
Var
iX, iY, C: Integer;
Begin
Repeat
CloseWindow;
Wait(50);
If FindAuburyText Then
Begin
Result := True;
Break;
End;
iX := MSCX;
iY := MSCY;
If AtMine Then
Begin
Result := True;
Exit;
End;
If FindColorSpiralTolerance(iX, iY, 2998011, MSX1, MSY1, MSX2, MSY2, 4)
Or FindColorSpiralTolerance(iX, iY, 1888494, MSX1, MSY1, MSX2, MSY2, 4) Then
Begin
MMouse(iX, iY, 0, 0);
Wait(10);
If IsupTextMulti('Talk','bury','alk-to') Then
Begin
Mouse(iX, iY, 0, 0, False);
Result := ChooseOption(iX, iY, 'eleport');
If Result Then Exit;
End;
End;
C := C + 1;
Until C > 5;
Wait(500);
If Not LoggedIn Then Exit;
End;
Function PreciseFlag(Var iX, iY: Integer):Boolean;
Begin
Result := FindColor(iX, iY, 255, 570, 5, 735, 166);
If Result Then iX := iX + 1;
If Result Then iY := iY + 14;
End;
Function ColorAroundFlag(iX, iY: Integer) : Boolean;
Begin
Result := FindColorSpiral(iX, iY, RuneShopColor, iX - 2, iY - 2, iX + 2, iY + 2)
End;
Function ToMine: Boolean;
Var
iX, iY, D, zMark : Integer;
Begin
If Not Players[CurrentPlayer].Boolean2 Then
Begin
HighestBrightness;
Players[CurrentPlayer].Boolean2 := True;
End;
If Not LoggedIn Then Exit;
FindPickHeadColor;
Mouse(663, 142, 6, 6, True);
Wait(15000+Random(4000));
FFlag(5);
If FindAuburyFloorColor(iX, iY) Then
Begin
If WizzyDebug Then WriteLn('Exact Color Found');
End
Else
Begin
LogOut;
WriteLn('Could not get the exact color.'+ Chr(13)+
'Wizzup, you should tweak your functions!');
Players[CurrentPlayer].Loc := 'NoColor';
End;
FindColorSpiral(iX, iY, RuneShopColor, MMX1, MMY1, MMX2, MMY2);
D := Distance(iX, iY, MMCX, MMCY);
If WizzyDebug Then WriteLn('Distance = '+IntToStr(D));
If D > 15 Then
Begin
iX := MMCX;
iY := MMCY;
If FindColorSpiral2(iX, iY, RuneShopColor, MMX1, MMY1, MMX2, MMY2) Then
Begin
Mouse(iX, iY, 0, 0, True);
If PreciseFlag(iX, iY) Then
Begin
If ColorAroundFlag(iX, iY) Then
Begin
If WizzyDebug Then WriteLn('Walking INTO the shop now...');
End;
End;
FFlag(0);
End;
End;
iX := MMCX;
iY := MMCY;
FindColorSpiral(iX, iY, RuneShopColor, MMX1, MMY1, MMX2, MMY2)
If Distance(iX, iY, MMCX, MMCY) > 10 Then
Begin
ToDoor;
OpenDoor;
If FindColorSpiral2(iX, iY, RuneShopColor, MMX1, MMY1, MMX2, MMY2) Then
Begin
Mouse(iX, iY, 0, 0, True);
If PreciseFlag(iX, iY) Then
Begin
If ColorAroundFlag(iX, iY) Then
Begin
If WizzyDebug Then WriteLn('Walking INTO the shop now...');
End;
End;
FFlag(0);
End;
End;
If Random(10) = 9 Then BoredHuman;
MarkTime(zMark);
Repeat
FindNormalRandoms;
If (TimeFromMark(zMark) > 240000) Then
Begin
WriteLn('Aubury Took too long..logging');
LogOut;
Players[CurrentPlayer].Loc := 'Aubury';
End;
If SpotAubury Then
Begin
FFlag(0);
Wait(4000);
End
Else
Begin
Wait(100);
ChooseOption(iX, iY, 'ancel');
End;
If Not LoggedIn Then Break;
Until AtMine;
Result := True;
If LoggedIn Then Players[CurrentPlayer].Loc := 'Mine';
End;
Function MyOpenBank: Boolean;
Begin
OpenBankGlass('veb',False,False);
FFlag(0);
Wait(2000);
If BankScreen Or PinScreen Then
Begin
Result := True;
If PinScreen Then InPin(Players[CurrentPlayer].String1);
Exit;
End;
If OpenBankQuiet('veb') Then Result := True;
If PinScreen Then InPin(Players[CurrentPlayer].String1);
End;
Function BankStuff: Boolean;
Var
RuneEss, PureEss: Integer;
Begin
If Not BankScreen Then Exit;
RuneEss := BitmapFromString(8, 12, 'z78DA8DCD3112C3200C44D1' +
'2BE1B02B9B1288B9FF91222315149107EFCCAFF4B08037BB584F0' +
'E0E6F9143D724EBAC5F79BE0F1BABF7DDCEB25374B3925858BCC1' +
'3BBC78E82AA1DBB07EBFAAC8DA3D3130BC1B8A191DFD8F8A6C424' +
'57515D945E1C685D35564973FA23DD4D48ED5ABACDB560092CED4' +
'BB9DF73F7ACE7D1F');
PureEss := BitmapFromString(11, 10, 'z78DAA5CF490E03211003C' +
'02FB1B56D8E0CCBFF9F1492CC012962B2B5251F4B6E451616192B' +
'ABC8CEA62CC771F6A120AFA638D39594B213841C342F27151536A' +
'6994110F214A59DB9D1783032FCE39018E8CCF474BF693434B48F' +
'9C555B1CBAF98A185050BED0963DE8B8DFA3DF689BEF90E1670EA' +
'4994F9C65D5D38159B736596763AB5D3A362C5B46B46AF5D4AE57' +
'BD3837C02891A6');
// FixBank;
RuneEssenceMined := RuneEssenceMined + CountItemBmpTol(RuneEss, 15);
PureEssenceMined := PureEssenceMined + CountItemBmpTol(PureEss, 15);
ReportVars[1] := ReportVars[1] + 1;
ReportVars[0] := CountItemBmpTol(RuneEss, 15) + CountItemBmpTol(PureEss, 15);
Players[CurrentPlayer].Integer1 := Players[CurrentPlayer].Integer1 + CountItemBmpTol(PureEss, 15) + CountItemBmpTol(RuneEss, 15);
ClickAllItemsBmpTolWait('All', RuneEss, 15, 1500);
ClickAllItemsBmpTolWait('All', PureEss, 15, 1500);
If EquipPick Then Deposit(1, 28, 2)
Else Deposit(2, 28, 2);
FreeBitMap(RuneEss);
FreeBitMap(PureEss);
If BankScreen Then CloseBank;
Players[CurrentPlayer].Banked := Players[CurrentPlayer].Banked + 1;
Banks := Banks + 1;
Result := True;
End;
Procedure PlayerReport;
Var
Active: String;
I:Integer;
Begin
For I := 0 to HowManyPlayers - 1 Do
Begin
If Players[i].Active=True Then Active := 'T' Else Active := 'F';
WriteLn( (IntToStr(I))+' : '+Players[I].nick+ ' = '+
Active+ +'; Loc = '+Players[I].Loc+'; Banked: '+IntToStr(Players[I].Integer1)
+' Ess; M lvl:'+IntToStr(Players[i].Level[15]));
End;
End;
Procedure CurrentPlayerReport;
Begin
WriteLn('----------------------------------------------')
WriteLn(Players[CurrentPlayer].Name+'.');
WriteLn('Mined ' + IntToStr(Players[CurrentPlayer].Integer1) + ' Essence.');
WriteLn('Mining level is ' + IntToStr(Players[CurrentPlayer].Level[15]));
WriteLn('Location is ' + Players[CurrentPlayer].Loc+ '.');
WriteLn('----------------------------------------------')
End;
Procedure ProgressReport;
Begin
WriteLn('----------------------------------------------')
WriteLn('')
WriteLn('Essence Miner by Wizzup?.')
WriteLn('Version: '+VersionNumber)
WriteLn('')
If RuneEssenceMined > 0 Then WriteLn('Rune Essence Mined and Banked : '+IntToStr(RuneEssenceMined)+'.');
If PureEssenceMined > 0 Then WriteLn('Pure Essence Mined and Banked : '+IntToStr(PureEssenceMined)+'.');
If Abyss > 0 Then WriteLn('Solved '+IntToStr(Abyss)+' Abyssal Random Events.');
If NOAbyss > 0 Then WriteLn('Missed '+IntToStr(NoAbyss)+' Abyssal Random Events.');
If Doors > 0 Then WriteLn('Door Opened : '+IntToStr(Doors)+'.');
Writeln('Worked for '+ TimeRunning);
WriteLn('')
WriteLn('----------------------------------------------')
WriteLn('')
PlayerReport;
CurrentPlayerReport;
SRLRandomsReport;
WriteLn('')
WriteLn('----------------------------------------------')
End;
Procedure ClearVars;
Var
I : Integer;
Begin
For I := 1 To 19 Do
ReportVars[I] := 0;
End;
Procedure DoChats;
Begin
SetChat('On', 1);
SetChat('On', 1);
SetChat('Friends', 2);
SetChat('Friends', 2);
SetChat('On', 3);
SetChat('On', 3);
End;
Procedure SetupScript;
Begin
ClearDebug;
SetupSRL;
SetupSRLMining;
DeclarePlayers;
RuneShopColor := 4551800; // Temp.
Rcmaster := YourRCMASTER;
RcLoc := 'Bank';
ScriptID := '51';
ClearVars;
SRLID := YourSRLstatsID;
SRLPassword := YourSRLstatsPASS;
CurrentPlayer := StartPlayer;
If FirstWorld Then LoginPlayer;
If FirstWorld Then Wait(1000);
If FirstWorld Then LogOut;
If FirstWorld Then Wait(1000);
LoginPlayer;
Wait(1000);
DoChats;
EquipPick := Players[CurrentPlayer].Boolean1;
AuburyText := CreateBitmapMaskFromText('isthine', upchars);
BenMouse := True;
GetAllLevels;
End;
begin
ActivateClient;
SetupScript;
Repeat
MakeCompass('N');
If Players[CurrentPlayer].Loc = 'Bank' Then
Begin
ToMine;
End;
If Players[CurrentPlayer].Loc = 'Mine' Then
Begin
Wait(500);
If InAbyss Then
Begin
GuessAbyssRandom;
BoredHuman;
End;
Wait(1000);
FindNormalRandoms;
SymbolAccuracy := 0.4;
Position := GetPositionInMine;
If Position = 'Middle' Then Position := GetMiddle;
WriteLn('Our position is '+ Position+'.');
Wait(1000);
If FindEssence(X, Y) Then
Begin
Mouse(X, Y, 0, 0, True);
Wait(10);
FFlag(0);
End
Else
Begin
RunToPortal;
End;
Wait(1000);
MarkTime(IdleMark);
MarkTime(MiningMark);
Repeat
If Not LoggedIn Then Break;
If PortalBool Then Break;
If TimeFromMark(IdleMark) > (65000+Random(5000)) Then
Begin
BoredHuman;
MarkTime(IdleMark);
End;
Wait(400);
If FindNormalRandoms Then
RunToPortal;
Wait(400);
RC;
Wait(400);
ClickToContinue;
If FindFight Then
Begin
RunToPortal;
Break;
End;
Wait(1);
Until ((InvFull) Or (TimeFromMark(MiningMark) > 1000 * 60 * MinutesPerLoad));
If Not PortalBool Then
Begin
MarkTime(iMark);
Repeat
If Not LoggedIn Then Break;
If (TimeFromMark(iMark) > 120000) Then
Begin
WriteLn('Portal Took too long..logging');
LogOut;
Players[CurrentPlayer].Loc := 'Portal';
End;
If ToPortal Then
Begin
FFlag(0);
Wait(3000);
End
Else Wait(100);
Until Not AtMine;
End
WriteLn('Through The portal');
SymbolAccuracy := 0.8;
PortalBool := False;
Wait(500);
ToBank;
MyOpenBank;
BankStuff;
If LoggedIn Then Players[CurrentPlayer].Loc := 'Bank';
End;
ProgressReport;
If ( LoggedIn And (Players[CurrentPlayer].Banked Mod Loads = 0 )) Then
Begin
DoChats;
LogOut;
Wait(1000);
NextPlayer(True);
EquipPick := Players[CurrentPlayer].Boolean1;
FindPickHeadColor;
GetAllLevels;
End;
If Not LoggedIn Then
Begin
DoChats;
NextPlayer(False);
EquipPick := Players[CurrentPlayer].Boolean1;
FindPickHeadColor;
GetAllLevels;
End;
Until False;
end.
wizzup, just use this, u dont need to add anti log out, the only way it stops when u use this is if a random stops it, then it moves on to the next one, it has never logged in the mines before with this.
That is probably because your miner are high level mining, level 1's with iron picks do logout.
EDIT:
Wow:
SCAR Code:Essence Miner by Wizzup?.
Version: 1.08
Rune Essence Mined and Banked : 8956.
Solved 6 Abyssal Random Events.
Missed 4 Abyssal Random Events.
Door Opened : 1.
Worked for 24 Hours, 18 Minutes and 0 Seconds
----------------------------------------------
5 False, 4 Quiz. 1 Freaky Forester.
The Missed Abyssal Are quizzez, since it in facts, never missed abyss.![]()
The best way to contact me is by email, which you can find on my website: http://wizzup.org
I also get email notifications of private messages, though.
Simba (on Twitter | Group on Villavu | Website | Stable/Unstable releases
Documentation | Source | Simba Bug Tracker on Github and Villavu )
My (Blog | Website)
mh... somehow my computer thought it was a good idea to reboot... i only got like 2-3k in a night:'( and i dont have a progy for you![]()
Infractions, reputation, reflection, the dark side of scripting, they are.
----------------------------------------------
Essence Miner by Wizzup?.
Version: 1.08
Rune Essence Mined and Banked : 1371.
Solved 1 Abyssal Random Events.
Worked for 3 Hours, 30 Minutes and 43 Seconds
----------------------------------------------
0 : ... = F; Loc = ToBank2; Banked: 139 Ess; M lvl:23 //door was closed
1 : ... = F; Loc = Mine; Banked: 1231 Ess; M lvl:15 //low mining lvl logout
2 : ... = T; Loc = Mine; Banked: 1 Ess; M lvl:14 //socket error WTF?
----------------------------------------------
last account from the three.
Mined 1 Essence.
Mining level is 14
Location is Mine.
----------------------------------------------
Socket Error # 10060
Connection timed out.
----------------------------------------------
NextPlayer [after last of the three, so it stopped]
Successfully executed
Another progress report
Rune Essence Mined and Banked : 108.
Missed 1 Abyssal Random Events. //It is the quiz, not the abyss
Worked for 16 Minutes and 0 Seconds
----------------------------------------------
0 : *** = T; Loc = Abyss; Banked: 108 Ess; M lvl:49
----------------------------------------------
*******.
Mined 108 Essence.
Mining level is 49
Location is Abyss. //Wrong, was quiz
----------------------------------------------
This script has run for 2 hours, sorry, dont saved all the progress reports.
edit: new report, this time an one hour report:
Essence Miner by Wizzup?.
Version: 1.08
Rune Essence Mined and Banked : 620.
Solved 1 Abyssal Random Events.
Worked for 1 Hours, 13 Minutes and 32 Seconds
----------------------------------------------
0 : *** = T; Loc = NoColor; Banked: 620 Ess; M lvl:49
----------------------------------------------
**********.
Mined 620 Essence.
Mining level is 49
Location is NoColor. //My mom shutted down RuneScape, she wanted to internet herself.
13*37+1*3*3*7*13+37 = 1337
Very Good script!!![]()
Only some problems that I noticed:
1. Your Mining procedure does not take into effect that runescape logs you out automatically after no movement. So if it takes too long to mine ess(bad pic, low level) it will log out and the script wil make to player false. I suggest that you add a few boredhumans or hovers to avoid this during mining.
2. Using the floor bitmap to get into Aubery's shop is ingenous, but this is not fail proof. Some times the script will not get close enough to the shop when it starts looking for the bitmap and the roof of the shop will cover it. The script doesnt realize this and just sits there until runescape logs the player out. Im not sue what you could do to solve this problem. Maybe you could make a roof bitmap and if the script detects it lowers the angle and rotates until it can see the floor bitmap. Just maybe.
Otherwise this is a very good script and I lookforward to using it. Il post a proggy soon.
I tried like 6 ess miner scripts and all had problems with teleporting, finding aubury, and banking, but this, this, GOD OF SCRIPTS has saved me from the impending failure that is nooby scripters!!!! ^_^
IT'S PERFECT BY THE WAY!
I GIVE U AN 11/10!!!
![]()
![]()
![]()
![]()
![]()
![]()
do i need to say more?Code:---------------------------------------------- Essence Miner by Wizzup?. Version: 1.08 Rune Essence Mined and Banked : 4928. Solved 9 Abyssal Random Events. Door Opened : 1. Worked for 10 Hours, 33 Minutes and 16 Seconds ---------------------------------------------- 0 : **** = F; Loc = Oh Dear You Are in Lumby; Banked: 336 Ess; M lvl:49 1 : **** = T; Loc = Bank; Banked: 1476 Ess; M lvl:45 2 : **** = F; Loc = ScapeRune; Banked: 0 Ess; M lvl:38 3 : **** = T; Loc = Bank; Banked: 1509 Ess; M lvl:45 4 : **** = T; Loc = Bank; Banked: 1523 Ess; M lvl:46 5 : **** = F; Loc = Bank; Banked: 84 Ess; M lvl:41 ----------------------------------------------
Infractions, reputation, reflection, the dark side of scripting, they are.
SRL Compiled in 1125msec.
3 Players
In Abyss gave 125.
Our position is MiddleSW.
Through The portal
----------------------------------------------
Essence Miner by Wizzup?.
Version: 1.08
Worked for 3 Minutes and 10 Seconds
----------------------------------------------
0 : = T; Loc = Mine; Banked: 0 Ess; M lvl:27
1 : = T; Loc = Mine; Banked: 0 Ess; M lvl:0
2 : = T; Loc = Mine; Banked: 0 Ess; M lvl:0
----------------------------------------------
.
Mined 0 Essence.
Mining level is 27
Location is Mine.
----------------------------------------------
----------------------------------------------
NextPlayer
ERROR! cannot find pick in screen, please put pick in inventory or your equip page and restart the script!
----------------------------------------------
Essence Miner by Wizzup?.
Version: 1.08
Worked for 5 Minutes and 36 Seconds
----------------------------------------------
0 : = F; Loc = Mine; Banked: 0 Ess; M lvl:27
1 : = T; Loc = No GameTab; Banked: 0 Ess; M lvl:0
2 : = T; Loc = Mine; Banked: 0 Ess; M lvl:0
----------------------------------------------
.
Mined 0 Essence.
Mining level is 0
Location is No GameTab.
----------------------------------------------
----------------------------------------------
NextPlayer
Found quiz, solving...
ERROR! cannot find pick in screen, please put pick in inventory or your equip page and restart the script!
NextPlayer
Found quiz, solving...
ERROR! cannot find pick in screen, please put pick in inventory or your equip page and restart the script!
0
Error detecting Compass Angle.
----------------------------------------------
Essence Miner by Wizzup?.
Version: 1.08
Worked for 11 Minutes and 26 Seconds
----------------------------------------------
0 : = F; Loc = Mine; Banked: 0 Ess; M lvl:27 //WRONG!!! scaperune
1 : = F; Loc = Quiz; Banked: 0 Ess; M lvl:0
2 : = F; Loc = Quiz; Banked: 0 Ess; M lvl:0 // WRONG!!! location is mine with full inv
----------------------------------------------
.
Mined 0 Essence.
Mining level is 0
Location is Quiz.
----------------------------------------------
----------------------------------------------
NextPlayer
Successfully executed
Another report, got both chars to quiz in rune shop.
Hey Wizzup!
Can i use your function SpotAubury to my script ?
Thanks for all the Progress Reports guys!
Yes, you can always use my procedures, as long as you at least put my name in there.![]()
Expect an update in - or after - the weekend.
The best way to contact me is by email, which you can find on my website: http://wizzup.org
I also get email notifications of private messages, though.
Simba (on Twitter | Group on Villavu | Website | Stable/Unstable releases
Documentation | Source | Simba Bug Tracker on Github and Villavu )
My (Blog | Website)
Wizzup this is really a great script!!! I've already mined 3k ess with it in a few hours. Only i changed one thing myself and maybe you might do it to the original: Place an option in the setup to switch private chat(and maybe public too) off. Now i had to search the script before i could change it. And one more thing i noticed your script barely uses run. I adjusted the script and now it runs like this: Shop--->Bank...banking...Bank--->Shop and then just before it starts to search Aubury it turns run off.
Looks like this:
Function ToBank: Boolean;
Var
iX, iY, BankDTM, D, WalkMark, aMark : Integer;
AngleVar : Extended;
Begin
If Not LoggedIn Then Exit;
SetRun(True);
OpenDoor;
Mouse(687, 30, 4, 4, True);
Wait(100);
MarkTime(aMark);
Repeat
If Not FlagPresent Then
Begin
OpenDoor;
Mouse(687, 30, 4, 4, True);
MarkTime(WalkMark)
Repeat
FindColorSpiral(iX, iY, RuneShopColor, MMX1, MMY1, MMX2, MMY2)
D := Distance(iX, iY, MMCX, MMCY);
Wait(100);
Until ((D > 15) Or (TimeFromMark(WalkMark) > 8000));
End
Else Break;
If TimeFromMark(aMark) > 120000 Then
Begin
WriteLn('ToBank took too long.. logging.');
LogOut;
Players[CurrentPlayer].Loc := 'ToBank2';
Exit;
End;
Until D > 15;
Wait(6000);
FFlag(10);
BankDTM:= DTMFromString('78DA636C666260486140016FDEBC61F80FA 41' +
'981F83F1030B603D5E4A0AA79FB96814103AA060418EB816A B251' +
'D57CFD8AAA0600B6210EA4');
If FindDTMRotated(BankDTM, iX, iY, MMX1, MMY1, MMX2, MMY2, -1.0, 2.0, 1, AngleVar) Then
Begin
Result := True;
Mouse(iX, iY + 1, 0, 0, True);
Wait(3000);
FFlag(0);
End
Else
Begin
LogOut;
Players[CurrentPlayer].Loc := 'ToBank2';
WriteLn('Bank not found');
Exit;
End;
FreeDTM(BankDTM);
SetRun(True); (U can leave this out if u want to i guess..)
End;
and then:
Function SpotAubury: Boolean;
// 10855856, 3005947, 2998011
Var
iX, iY, C: Integer;
Begin
SetRun(False);
Repeat
CloseWindow;
Wait(50);
If FindAuburyText Then
The best way to contact me is by email, which you can find on my website: http://wizzup.org
I also get email notifications of private messages, though.
Simba (on Twitter | Group on Villavu | Website | Stable/Unstable releases
Documentation | Source | Simba Bug Tracker on Github and Villavu )
My (Blog | Website)
Maybe an idea to put remote control in it or something?
It would be nice if I could pm one of my essmining guys to ask a report.
I can make one for you once I've studied srl remote control functions enough...
13*37+1*3*3*7*13+37 = 1337
The best way to contact me is by email, which you can find on my website: http://wizzup.org
I also get email notifications of private messages, though.
Simba (on Twitter | Group on Villavu | Website | Stable/Unstable releases
Documentation | Source | Simba Bug Tracker on Github and Villavu )
My (Blog | Website)
I love this! Except for one problem, i want one person, to mine for a LONG time, and get alot in my bank, but after a while i get:
Location is ToBank2.
----------------------------------------------
----------------------------------------------
NextPlayer
even if i have it set to 1 player, any ideas?
It worked amazingly, except I appear to have died. I was in Lumby with my 3 items in my inventory. I started at level 1 mining, and it got me to 21.Code:Essence Miner by Wizzup?. Version: 1.08 Rune Essence Mined and Banked : 980. Worked for 2 Hours, 45 Minutes and 23 Seconds
Thanks![]()
There are currently 1 users browsing this thread. (0 members and 1 guests)