does it work on rev 20 and scar 3.15 now?
does it work on rev 20 and scar 3.15 now?
doesnt find the symbols if someone is standing on them...
If anybody wants it, I have it here. This script with smart.
It's an awesome script, just need to fix the level up bug, like on mine it just stops mining when i level up. ill have to click it myself and restart script. Think you could fix that?
My first script that i get to use as a SLR junior and it WORKS iam soooooo happy thank you soo much for providing this xD
######################################
## Tvs Ess Miner ##
######################################
Total Time Ran
--------------------------------------
3 Minutes and 53 Seconds
--------------------------------------
Ess Mined
--------------------------------------
27
--------------------------------------
found in 1078 ms
Successfully executed
I have the working script with SMART, start the script and when SMART starts loading stop the script. When the script is stopped drag the crosshair (the thing that sets the rs client) to SMART. Then just start the script again and it should work have fun =).
(sry cant find the upload a file button so u'll have to copy the script)
SCAR Code:program TvsNewProgram;
{.Include SRL\SRL\Misc\SMART.SCAR}
{.include Srl/Srl.scar}
{.include Srl/Srl/Misc/Users.Scar}
Var
Tr, Tc : Integer;
{*************************************************************************************************
TvsLoginPlayerEx
By: Tv-XxX
Description: Logs Players Into New Runescape, Also Can Turn
Off Audio and Set Brightness To True
*************************************************************************************************}
Procedure TvsLoginPlayerEx(Brightness, SoundOff : Boolean);
Var
Tx, Ty : Integer;
Begin
Wait(1000+random(1000))
If(FindColorTolerance(Tx, Ty, 13158, 364, 406, 395, 410, 4))Then
Begin
If(SoundOff)Then
Begin
If(Not(FindColorTolerance(Tx, Ty, 1252947, 334, 380, 340, 386, 4)))Then
Begin
Mouse(334, 380, 6, 6, True);
Wait(100+random(100))
End;
If(FindColorTolerance(Tx, Ty, 13158, 324, 345, 439, 354, 4))Then
Mouse(Tx, Ty, 4, 4, True);
If(Not(FindColorTolerance(Tx, Ty, 1252947, 329, 264, 342, 280, 4)))Then
Begin
Mouse(335, 270, 6, 6, True);
Wait(100+random(100))
End;
If(Not(FindColorTolerance(Tx, Ty, 1252947, 330, 320, 339, 335, 4)))Then
Begin
Mouse(335, 327, 6, 6, True);
Wait(100+random(100))
End;
TypeByte(GetKeyCode(Chr(27)));
wait(1000+random(200))
End;
If(Brightness)Then
Begin
If(FindColorTolerance(Tx, Ty, 13158, 314, 322, 449, 329, 4))or (FindColorTolerance(Tx, Ty, 12509695, 314, 322, 449, 329, 4))Then
Mouse(Tx, Ty, 4, 4, True);
If(Not(FindColorTolerance(Tx, Ty, 1252947, 404, 217, 410, 229, 4)))Then
Begin
Mouse(404, 220, 6, 6, True);
Wait(100+random(100))
End;
TypeByte(GetKeyCode(Chr(27)));
End;
Wait(100+random(100))
End;
If(FindColor(Tx, Ty, 13158, 359, 169, 404, 175))Then
Begin
Mouse(359, 169, 45, 6, True);
while FindColor(Tx, Ty, 13158, 359, 169, 404, 175) Do
Wait(500);
TypeSend(Players[CurrentPlayer].Name);
Wait(100 + Random(100));
TypeSend(Players[CurrentPlayer].Pass);
While (Not(FindColorTolerance(Tx, Ty, 10806524, 204, 328, 567, 370, 4))) Do
Wait(500);
Mouse(Tx, Ty, 4, 4, True);
wait(1000+random(1000))
End;
End;
{*************************************************************************************************
SetRunEx
By: Tv-XxX
Description: Only Runs If Run Amount Is Greater Than Choosen
eg. SetRunEx('med') Will Only Run If Run % Is Greater Than 50
Amount Can Be ... 'low', 'med' or 'high'
*************************************************************************************************}
Procedure SetRunEx(Amount : String);
Var
Tx, Ty : Integer;
Begin
If(Lowercase(Amount) = 'high')Then
Begin
If(FindColorTolerance(Tx, Ty, 65280, 743, 105, 756, 116, 4))Then
SetRun(True);
Exit;
End;
If(Lowercase(Amount) = 'med')Then
Begin
If(FindColorTolerance(Tx, Ty, 65535, 743, 105, 756, 116, 4))Then
Begin
SetRun(True);
Exit;
End;
If(FindColorTolerance(Tx, Ty, 65280, 743, 105, 756, 116, 4))Then
Begin
SetRun(True);
Exit;
End;
End;
If(Lowercase(Amount) = 'low')Then
Begin
If(FindColorTolerance(Tx, Ty, 255, 743, 105, 756, 116, 4))Then
Begin
SetRun(True);
Exit;
End;
If(FindColorTolerance(Tx, Ty, 2070783, 743, 105, 756, 116, 4))Then
Begin
SetRun(True);
Exit;
End;
If(FindColorTolerance(Tx, Ty, 65535, 743, 105, 756, 116, 4))Then
Begin
SetRun(True);
Exit;
End;
If(FindColorTolerance(Tx, Ty, 65280, 743, 105, 756, 116, 4))Then
Begin
SetRun(True);
Exit;
End;
End;
End;
{*******************************************************************************
procedure AntiBan(degree: integer);
By: Timothegreat
Description: Humanlike antiban w/autoresponder.
Degree: 1-4, and 1 means less antiban, 4 means more.
*******************************************************************************}
procedure AntiBan(degree: integer);
var
human: integer;
begin
if not LoggedIn then exit;
case degree of
1: human:= 50;
2: human:= 40;
3: human:= 30;
4: human:= 20;
end;
case random(human) of
0: SleepAndMoveMouse(random(4000));
4: GetXp('mining');
8: GameTab(random(14));
12: BoredHuman;
16: begin
Mouse(random(MSCX),random(MSCY),5,5,false);
SleepAndMoveMouse(1000+random(3200));
end;
end;
SetAngle(true);
end;
function TrueNorth : boolean;
var x,y,ndtm,checks,mark:integer;
begin
ndtm := DTMFromString('78DA63F4646260D06740011919D60C3A8C0C0' +
'C40C4F01F0818416AF450D5BCFDF685C18801A20604C06A748950' +
'A343408D07A67B30D4B813A1C68D08354E986A3EBF7E83A20600C' +
'EBE1E34');
MarkTime(Mark);
makecompass('n');
wait(1000);
keydown(vk_left);
repeat
wait(50);
if finddtm(ndtm,x,y,mmx1,mmy1,mmx2,mmy2)then
begin
keyup(vk_left);
writeln('found in '+inttostr(timefrommark(mark))+' ms');
keydown(vk_right);
wait(15+random(2));
keyup(vk_right);
result:=true;
exit;
end;
if rs_GetCompassAngleDegrees>=40 then
begin
keyup(vk_left);
makecompass('20');
wait(50);
keydown(vk_left);
end;
checks:=checks+1;
until ((checks>=10) or (result=true));
freedtm(ndtm);
checks:=0;
keyup(vk_left);
end;
function JadSymbol(WhatSymbol: String; Click : Boolean): Boolean;
var
Tx, Ty, I : Integer;
begin
for I := 1 to 20=0 do
begin
if(FindSymbol(Tx, Ty,(WhatSymbol)))then
begin
if(Click)then
Mouse(Tx, Ty, 2, 2, True);
Result := True;
Exit;
end;
wait(750+random(500));
end;
if(FindSymbol(Tx, Ty,(WhatSymbol)))then
begin
if(Click)then
Mouse(Tx, Ty, 4, 4, True);
Result := True;
Exit;
end;
Writeln('Could Not Find '+WhatSymbol+' Symbol.');
Result := False;
end;
function CustomFindObject(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tolerance: Integer): Boolean;
var
a, b, c, i, x1, y1, x2, y2: Integer;
Start: Boolean;
begin
for b := 0 to (GetArrayLength(Color)-1) do
begin
if (FindColorSpiralTolerance(cx, cy, color[b], MSX1, MSY1, MSX2, MSY2, Tolerance)) then
begin
Start := True;
Break;
end;
end;
if(Start)then
begin
x1 := 245;
y1 := 165;
x2 := 277;
y2 := 185;
repeat
if not(LoggedIn)then break;
a := a + 1;
if (a = 1) then
c := c + 1
else if (a = 3) then
c := c + 1;
for i := 1 to c do
begin
if (a = 1) then
begin
x1 := x1 + 30;
x2 := x2 + 30;
end else
if (a = 2) then
begin
y1 := y1 - 20;
y2 := y2 - 20;
end else
if (a = 3) then
begin
x1 := x1 - 30;
x2 := x2 - 30;
end else
if (a = 4) then
begin
y1 := y1 + 20;
y2 := y2 + 20;
end;
if (x1 = 485) and (x2 = 517) then
x2 := x2 - 2;
if (y1 = 325) and (y2 = 345) then
y2 := y2 - 7;
if (x2 > 515) then
Break;
for b := 0 to (GetArrayLength(Color)-1) do
begin
if (FindColorTolerance(cx, cy, Color[b], x1, y1, x2, y2, tolerance)) then
begin
MMouse(cx, cy, 3, 3);
Wait(10+Random(10));
if (IsUpTextMultiCustom(Text)) then
begin
Result := True;
Exit;
end;
end;
end;
end;
if (a = 4) then
a := 0;
until (x2 > 515) or (Result = True);
end;
end;
//////////////////////////////////////////////////////////////////////////////////////////
Function InAbyss:boolean;
var
minipoint: TPointArray;
count:integer;
begin
FindColorsPie(minipoint,65536,0,0,360,72,73,MMX1,MMY1,MMX2,MMY2,MMCX,MMCY);
count:= length(minipoint);
if count = 400 then
begin
result:=true;
end;
end;
function SolveAbyss:boolean;
var
GreenPoints,GreenPoints2,WhitePoints,WhitePoints2,RedPoints,RedPoints2: TPointArray;
i,GreenCount,WhiteCount,RedCount,Tries,Tx,Ty: integer;
begin
Tries:= 0;
repeat
FindColorsTolerance(GreenPoints,7396636,215,120,310,222,15);
FindColorsTolerance(GreenPoints2,5811990,215,120,310,222,15);
FindColorsTolerance(WhitePoints,15198447,215,120,310,222,15);
FindColorsTolerance(WhitePoints2,14277861,215,120,310,222,15);
FindColorsTolerance(RedPoints,2698608,220,130,310,222,10);
FindColorsTolerance(RedPoints2,2435429,220,130,310,222,5);
GreenCount:= length(GreenPoints)+length(GreenPoints2);
WhiteCount:= length(WhitePoints)+length(WhitePoints2);
RedCount:= length(RedPoints)+length(RedPoints2);
writeln(inttostr(GreenCount));
writeln(inttostr(WhiteCount));
writeln(inttostr(RedCount));
Tries:= Tries + 1;
if ((WhiteCount + GreenCount) > RedCount)then
begin
for i:= 0 to length(RedPoints)-1 do
begin
if not(findcolortolerance(Tx,Ty,14277861,RedPoints[i].X-5,RedPoints[i].Y-5,RedPoints[i].X+5,RedPoints[i].Y+5,10))then
begin
MMouse(RedPoints[i].X,RedPoints[i].Y,0,0);
wait(50);
if isuptext('perate')then
begin
Mouse(RedPoints[i].X,RedPoints[i].Y,0,0,true);
wait(1000+random(500));
ClickToContinue;
result:=true;
break;
end;
end;
end;
for i:= 0 to length(RedPoints2)-1 do
begin
if not(findcolortolerance(Tx,Ty,14277861,RedPoints2[i].X-5,RedPoints2[i].Y-5,RedPoints2[i].X+5,RedPoints2[i].Y+5,10))then
begin
MMouse(RedPoints2[i].X,RedPoints2[i].Y,0,0);
wait(50);
if isuptext('perate')then
begin
Mouse(RedPoints2[i].X,RedPoints2[i].Y,0,0,true);
wait(1000+random(500));
ClickToContinue;
result:=true;
break;
end;
end;
end;
end else
begin
writeln('white');
for i:= 0 to length(WhitePoints)-1 do
begin
if findcolortolerance(Tx,Ty,14277861,WhitePoints[i].X-5,WhitePoints[i].Y-5,WhitePoints[i].X+5,WhitePoints[i].Y+5,15)then
begin
MMouse(WhitePoints[i].X,WhitePoints[i].Y,0,0);
wait(50);
if isuptext('perate')then
begin
Mouse(WhitePoints[i].X,WhitePoints[i].Y,0,0,true);
wait(1000+random(500));
ClickToContinue;
result:=true;
break;
end;
end;
end;
for i:= 0 to length(WhitePoints2)-1 do
begin
if findcolortolerance(Tx,Ty,14277861,WhitePoints2[i].X-5,WhitePoints2[i].Y-5,WhitePoints2[i].X+5,WhitePoints2[i].Y+5,15)then
begin
MMouse(WhitePoints2[i].X,WhitePoints2[i].Y,0,0);
wait(50);
if isuptext('perate')then
begin
Mouse(WhitePoints2[i].X,WhitePoints2[i].Y,0,0,true);
wait(1000+random(500));
ClickToContinue;
result:=true;
break;
end;
end;
end;
end;
until(not(InAbyss))or(tries > 5);
if Tries > 5 then
begin
if InAbyss then
begin
Logout;
end;
end;
end;
function LogoutFix: Boolean;
var
c, i: Integer;
begin
Result := (not (LoggedIn));
if Result = True then
Exit;
Wait(200 + Random(100));
while (LoggedIn) or (c < 10) do
begin
Inc(c);
MouseBox(744, 4, 759, 18, 1);
if(ClickText('here', UpChars, MIX1, MIY1, MIX2, MIY2, True))then
for i := 0 to 10 do
begin
Wait(1000);
if not(LoggedIn)then
begin
Result := True;
Exit;
end;
end;
end;
end;
///////////////////
// Main Code //
///////////////////
Procedure Report;
Begin
Writeln('######################################')
Writeln('## Tvs Ess Miner ##')
Writeln('######################################')
Writeln(' Total Time Ran ')
Writeln('--------------------------------------')
Writeln(' '+TimeRunning)
Writeln('--------------------------------------')
Writeln(' Ess Mined ')
Writeln('--------------------------------------')
Writeln(' '+IntToStr(Tr * 27))
Writeln('--------------------------------------')
End;
Procedure DoAubury;
Var
Tx, Ty, Ti : Integer;
Begin
Ti := 0;
If(Not(CustomFindObject(Tx, Ty, ['Aub', 'bury'], [1953258, 2019823, 1750992, 2012143], 10)))Then
Begin
Wait(1000+random(500));
JadSymbol('magic shop', true);
Flag;
DoAubury;
End Else
Begin
Mouse(Tx, Ty, 4, 4, False);
Flag;
Wait(500+random(500));
While (Not(ChooseOption('port'))) do
Begin
Wait(500);
Ti := Ti + 1;
If Ti > 9 Then DoAubury;
End;
Ti := 0;
While JadSymbol('anvil', False) do
Begin
Wait(1000);
Ti := Ti + 1;
If Ti > 11 Then DoAubury;
End;
Wait(1000+random(2000));
If InAbyss Then SolveAbyss;
End;
End;
Procedure ToStore;
Begin
GetSkillLevel('mining');
GameTab(4);
SetAngle(True);
TrueNorth;
SetRunEx('med')
Mouse(654, 124, 4, 4, True);
FFlag(8 + random(4));
While Not JadSymbol('magic shop', True) Do
Wait(500+random(500));
FFlag(10);
SetRun(False);
GameTab(4);
DoAubury;
End;
Procedure ToMine;
Begin
If InAbyss Then SolveAbyss;
If(JadSymbol('anvil', False))Then DoAubury;
If(Not(JadSymbol('transportation', False))) Then
Begin
Mouse(588, 129, 4, 4, True);
FFlag(10);
ToMine;
JadSymbol('transportation', True)
End;
Flag;
End;
Procedure ToMine2;
Begin
If(Not(JadSymbol('transportation', True))) Then
Begin
Mouse(588, 129, 4, 4, True);
FFlag(10);
ToMine;
JadSymbol('transportation', True)
End;
Flag;
End;
Procedure ToBank;
Var
Tx, Ty, Ti : Integer;
Begin
SetRunEx('high')
Mouse(655, 48, 4, 4, True);
FFlag(10);
While Not JadSymbol('bank', True) Do
Begin
Wait(500+random(500));
Ti := Ti + 1;
If Ti > 12 Then
Begin
Mouse(598, 36, 4, 4, True);
Break;
End;
End;
MMouse(75, (50 + random(200)), 4, 4);
While FlagPresent Do
Begin
If(IsUpText('ooth'))Then
Begin
GetMousePos(Tx, Ty)
Mouse(Tx, Ty, 4, 4, False);
While (Not(ChooseOption('ckly'))) Do
Wait(100);
Flag;
Exit;
End;
End;
If(Not(OpenBankFast('veb')))Then MouseFlag(220, 283, 4, 4)
End;
Procedure LeaveMine;
Var
Tx, Ty, Ti : Integer;
Begin
If JadSymbol('anvil', False)Then Exit;
While (Not(JadSymbol('transportation', True))or(JadSymbol('anvil', False))) Do
Begin
Wait(500+random(500));
If JadSymbol('anvil', False)Then Exit;
End;
Flag;
wait(1000+random(500))
If JadSymbol('anvil', False)Then Exit;
CustomFindObject(Tx, Ty, ['tal', 'Por', 'rta'], [11455945, 10399656, 12117475, 11390152], 10);
Wait(30+random(20));
While (Not(IsUpText('rtal')))Do
Begin
Wait(500);
Ti := Ti + 1;
If Ti > 9 Then LeaveMine;
If JadSymbol('anvil', False)Then Exit;
End;
GetMousePos(Tx, Ty)
MouseFlag(Tx, Ty, 0, 0);
Ti := 0;
while (not(JadSymbol('anvil', False)))Do
Begin
Wait(1000);
Ti := Ti + 1;
If Ti > 12 Then
Begin
Tc := Tc + 1;
If Tc > 4 Then
Begin
LogoutFix;
wait(1000+random(10000))
TvsLoginPlayerEx(False, False);
End;
LeaveMine;
End;
End;
End;
Procedure MineEss;
Var
Tx, Ty : Integer;
Begin
If(CustomFindObject(Tx, Ty, ['ence', 'une', 'Ess'], [8158342, 6184806, 10461355], 4)) Then
Begin
Wait(30+Random(20))
If(IsUpText('ence'))Then
Begin
GetMousePos(Tx, Ty)
MouseFlag(Tx, Ty, 0, 0);
End Else
Begin
MineEss;
End;
While (Not(InvFull))Do
Wait(1000);
AntiBan(4)
LeaveMine;
End Else
Begin
ToMine2;
MineEss;
End;
End;
Procedure BankEss;
Begin
If BankScreen Then
Begin
Deposit(2, 28, True);
CloseBank;
End Else
Begin
Wait(1000+random(100))
OpenBankFast('veb');
BankEss;
End;
End;
Begin
SrlPlayerForm(True, [], [], [], [])
SMARTSetUp('world75', True, True, False); {World prefix, safe mode, unsigned, RS-HD}
SetTargetDC(SMARTGetDC);
SetUpSRL;
ActivateClient;
TvsLoginPlayerEx(True, True);
Repeat
ToStore;
ToMine;
MineEss;
ToBank;
BankEss;
Tr := Tr + 1;
ClearDebug;
Report;
Until(False);
End.
I had to change this from my old one...?
Nice one, it's the first ess miner I got working.
Ce ne sont que des gueux
If anyone wants here's a working SMART script, don't have to do anything, just fill the forms and press start.
I had to change this from my old one...?
Could Not Find magic shop Symbol.
http://www.youtube.com/user/YoHoJoSRL
Good scripting guides on youtube
Formerly known as (djcheater)
Seems very short but Good idea been waiting for a decent ess miner in a long time :P
There are currently 1 users browsing this thread. (0 members and 1 guests)