SRL Archive - Archive

Chino1354 - SRL Member Application


Chino1354

2012-05-10 22:29:17

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?
java


Are you a member of any other communities?
rd,pb,rb


Tell us about yourself…
From: Chino1354
my name is alex,i like soccer



Please show us one (or multiple) of your scripts.
{$DEFINE SMART}
{$i srl/srl.scar}
{$i srl/srl/misc/stats.simba}

const
dbug = false;
srl_stats_name = '';
srl_stats_pass = '';
smart_serv = 61;


Procedure DeclarePlayers;
begin
NumberOfPlayers(1);
CurrentPlayer := 0;

Players[0].Name :='';
Players[0].Pass :='';
Players[0].Nick :='';
Players[0].Integers[0] := 5;//loads
Players[0].strings[0] := 'rod';
Players[0].Pin := '';//pin
Players[0].BoxRewards := ['coins'];
Players[0].Skill := 'Fishing'; //Lamp skill
Players[0].Active := true;


Players[1].Name :='';
Players[1].Pass :='';
Players[1].Nick :='';
Players[1].Integers[0] := 5;//loads
Players[1].strings[0] := 'rod';
Players[1].BoxRewards := ['coins'];
Players[1].Skill := 'Fishing'; //Lamp skill
Players[1].Active := true;

Players[2].Name :='';
Players[2].Pass :='';
Players[2].Nick :='';
Players[2].Integers[0] := 5;//loads
Players[2].strings[0] := 'rod';
Players[2].BoxRewards := ['coins'];
Players[2].Skill := 'Fishing'; //Lamp skill
Players[2].Active := true;
end;


function DebugTPA(Points: TPointArray; BmpName: string): Boolean;
var
Bmp: integer;
Box : TBox;
TempTPA : TPointArray;
begin
if not dbug then exit;
Box := GetTPABounds(Points);
Bmp := BitmapFromClient(Box.x1,Box.y1,Box.x2,Box.y2);
TempTPA := CopyTPA(Points);
OffsetTPA(TempTPA,Point(-box.x1,-box.y1));
DrawTPABitmap(Bmp,TempTPA,clRed);
DisplayDebugImgWindow(box.x2-Box.x1 + 1, box.y2-box.y1 + 1);
DrawBitmapDebugImg(Bmp);
if bmpname <> '' then
SaveBitmap(Bmp, ScriptPath + BmpName + '.bmp');
FreeBitmap(Bmp);
Result := True;
end;


function FindTreeColor: Integer;
var
TPA, TestTPA: TPointArray;
ATPA: T2DPointArray;
H, S, L: Extended;
i, TestColor, R, G, B, AL: Integer;
BlackListCol: TIntegerArray;
begin
result := -1;
if FindMMColorsSpiralTolerance(TPA, 1528609, 70) then
begin
AL := high(TPA);
For i := 0 to AL do
begin
TestColor := GetColor(TPA[i].x, TPA[i].y);
if not InIntArray(BlackListCol, TestColor) then
begin
ColorToRGB(TestColor, R, G, B);
ColorToHSL(TestColor, H, S, L);
if InRange(R - B, -10, 50) then
if InRange(R - G, -75, -30) then
if InRange(G - B, 50, 88) then
if L < 31.5 then
if GetColor(TPA[i].x - 1, TPA[i].y) = TestColor then
if GetColor(TPA[i].x, TPA[i].y + 1) = TestColor then
if GetColor(TPA[i].x, TPA[i].y - 1) = TestColor then
begin
FindColorsSpiralTolerance(mmcx, mmcy, TestTPA, TestColor, mmx1, mmy1, mmx2, mmy2, 0);
if Length(TestTPA) > 0 then
begin
ATPA := TPAtoATPAEx(TestTPA, 11, 10);
SortATPAFrom(ATPA, Point(mmcx, mmcy));
if not InRange(Length(ATPA[0]), 21, 28) then
if Length(ATPA[0]) < 30 then
if not InRange(Length(ATPA[0]), 8, 10) then
begin
writeln('Tree colour = '+ Inttostr(TestColor));
Result := TestColor;
exit;
end else
begin
ColorToHSL(TestColor, H, S, L);
if L > 24 then
begin
SetArrayLength(BlackListCol, Length(BLackListCol) + 1);
BlackListCol[High(BlackListCol)] := TestColor;
end;
end;
end;
end;
end;
end;
end;
writeln('Couldn''t find tree color!');
Result := -1;
end;


Procedure KillPlayer;
begin
Logout;
Players[CurrentPlayer].Active := False;
end;


Function FindBait: Boolean;
var
Bait: Array of TPoint;
begin
//colours: old - 1610178 //new - 1605551
FindColorsTolerance(Bait, 1605551, MIX1, MIY1, MIX2, MIY2, 8);
debugTPA(Bait, 'bait');
Result := (Length(Bait) > 5);
end;


function isfishing(): boolean;
var
tpaequipment: TPointArray;
col: Integer;
begin
case Lowercase(Players[CurrentPlayer].strings[0]) of
'net': col := 1251616; //1251616, 1845300 , old = 1581096
'rod': col := 727332; //new 727332, old - 469051
end;
findcolorstolerance(tpaequipment, col, mscx-20, mscy+12, mscx+16, mscy+60, 5);
debugtpa(tpaequipment, 'equipmentinwater');
result := length(tpaequipment) > 1;
end;


//thanks munk.
procedure nolog;
var
gt:integer;
begin
if (not(loggedin)) then exit;
case random(40) of
0: idleTime(750+random(750),100+random(200),0.1);
10: begin
gt:=21+random(16);
if gt=tab_Inv then gt:=gt+1+random(10);
gametab(gt);
wait(100+random(500));
gametab(tab_Inv);
end;
20: begin
mouse(msx1+random(msx2),msy1+random(msy2),0,0,false);
chooseOption('xami');
end;
end;
end;


Function FindFish(var Spot: TPoint; x1, y1, x2, y2: Integer) : Boolean;
Var
CTS, I, amount: Integer;
Spott, spotsmiddle: TPointArray;
ATPA: Array of TPointArray;
begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2); //11972265
//SetColorSpeed2Modifiers(0.10, 0.24);//old - 12170417//new - 11839136, 12170417
FindColorsSpiralTolerance(MSCX, MSCY, Spott, 11839136 , x1, y1, x2, y2, 13);
DebugTPA(Spott, 'bubbles');
If Length(Spott) < 1 then
begin
writeln('Error, couldn''t find fishing spot!');
Result := False;
exit;
end;
ColorToleranceSpeed(CTS);
ATPA := TPAToATPAEx(Spott, 10, 10);
amount := 0;
for I := 0 to High(ATPA) do
if length(ATPA[I]) < 10 then
inc(amount);
SetArrayLength(spotsmiddle, amount+1);
amount := 0;
for I := 0 to High(ATPA) do
if length(ATPA[I]) >= 9 then
begin
spotsmiddle[amount] := MiddleTPA(ATPA[i]);
inc(amount);
if amount > length(spotsmiddle)-1 then break;
end;
SortTPAFrom(spotsmiddle, point(mscx, mscy));
if length(spotsmiddle) < 1 then
exit;
result := true;
spot := point(spotsmiddle[0].x, spotsmiddle[0].y);
end;


Function WLevelUp: Boolean;//thanks Wizzup?
Begin
Result := FindNPCChatText('gratu', Nothing);
If Not Result Then
Result := FindNPCChatText('atio', Nothing);
If Result Then
Begin
While ClickContinue(True, True) Do
Wait(500);
End;
End;


function checkbait(): boolean;
begin
result := FindNPCChatText('fishing rod and some bait', ClickLeft);
end;


Procedure WhilstFishing();
var
Mark: Integer;
begin
MarkTime(Mark);
repeat
if checkbait() then
begin
writeln('Ran out of bait');
killplayer();
exit;
end;
SleepAndMoveMouse(200+random(100))
wait(60+random(40));
if invfull then exit;
if Random(2) = 1 then nolog;
If FindNormalRandoms then
If not loggedin then exit;
wait(50+random(50));
if WLevelUp() then
begin
inc(Players[CurrentPlayer].integers[2]);
wait(2000+random(300));
end;
wait(100+random(30));
//yes, it is kinda dirty.
if not isfishing() then
begin
//check to see if youre truly not fishing.
wait(500 + random(200));
if not isfishing() then break;
end;
until (TimeFromMark(Mark) > ((60000 * 4)+random(60000)));
end;


procedure checkcam();
var
angle: double;
i: integer;
begin
angle := rs_GetCompassAngleDegrees;
for i := 0 to 5 do
if (angle < 80) or (angle > 100) then
begin
MakeCompass('E');
writeln(angle);
wait(400+random(300));
angle := rs_GetCompassAngleDegrees;
if (angle < 80) or (angle > 100) then
MakeCompass(rs_GetCompassAngleDegrees+randomrange(-20, 20))
else break;
end else break;
end;


Procedure FishInit;
var
l : TPoint;
s : String;
i, Mark : Integer;
begin
if not loggedin then exit;
MarkTime(Mark);
case Lowercase(Players[CurrentPlayer].strings[0]) of
'rod': s := 'ait';
'net': S := 'et';
end;
wait(400+random(200));
repeat
findnormalrandoms;
If FindFish(l, MSX1, MSY1, MSX2, MSY2) then
begin
mmouse(l.x, l.y, 5, 5);
wait(100+random(100));
Getmousepos(l.x, l.y);
if IsuptextmultiCustom(['et', 'Fis', 'shing'])then
begin
if Lowercase(Players[CurrentPlayer].Strings[0]) = 'net' then
begin
case Random(4) of
0: mouse(l.x, l.y, 0, 0, true);
1: mouse(l.x, l.y, 0, 0, true);
2: begin
mouse(l.x, l.y, 0, 0, false);
Chooseoption(s);
end;
3: mouse(l.x, l.y, 0, 0, true);
end;
end else
begin
mouse(l.x, l.y, 0, 0, false);
ChooseOption(s);
end;
FindNormalRandoms;
wait(2000+random(400));
WhilstFishing();
checkcam();
If not loggedin then exit;
end;
end else
begin
inc(i);
if i > 5 then
begin
writeln('Error, no spot! Killing player');
KillPlayer;
exit;
end;
Wait(1000+random(1000));
end;
until invfull or (TimeFromMark(Mark) > 8*60000);
if (TimeFromMark(Mark) > 8*60000) then
writeln('Took to long to fish, walking back to bank');
end;


Procedure SetupPlayer;
var
lvl: integer;
begin
If not Loggedin then loginPlayer;
lampskill := Players[CurrentPlayer].skill;
wait(700+random(300));
checkcam();
SetAngle(True);
wait(400 + random(200));
KeyDown(VK_DOWN);
wait(220+random(80));
Keyup(VK_DOWN);
If Players[CurrentPlayer].strings[0] = '' then
begin
writeln('Player had no Fishing st00f!');
Killplayer;
exit;
end;
If Players[CurrentPlayer].strings[0] = 'rod' then
begin
gametab(tab_stats);
lvl := GetSkillLevel('fishing');
if not lvl > 4 then
begin
writeln('This Player doesnt have a big enough fishing lvl to use a rod!');
KillPlayer;
exit;
end;
GameTab(tab_Inv);
wait(400+random(300));
If not FindBait then
begin
writeln('Player had no bait! Please have bait in the inventory 2nd slot!');
killplayer();
exit;
end;
end;
writeln(Players[CurrentPlayer].Name + ' is using a '+ Players[CurrentPlayer].strings[0]+'.');
end;


Procedure w(s: String);
begin
writeln(s);
end;

Procedure Report;
var I, c, ii, ce, iii : integer;
begin
for ii := 0 to HowmanyPlayers - 1 do
C := C + Players[ii].Integers[4];
For iii := 0 to howmanyplayers - 1 do
Ce := Ce + Players[iii].Integers[2] + Players[iii].Integers[3];
w('');
w(' ___________________________________________________');
w('/ Draynor Fisher 0.75.5 \');
w(Padr('| Time Running : ' + TimeRunning, 52)+ '|');
W(Padr('| Total Loads : '+inttostr(c), 52)+'|');
w(Padr('| Total Fish : '+inttostr(ce),52)+'|');
w('|___________________________________________________|');
w('| P# | Active | Loads | Sard/Shri | Herr/Anch |');
for I := 0 to HowManyPlayers - 1 do
w(padr(Padr('| '+inttostr(i), 7)+ '| '+{Left(}BoolToStr(Players[I].Active){, 1)}+' | '+ Padr((inttostr(Players[i].Integers[4])), 5) + ' | ' + Padr((inttostr(Players[i].Integers[2])), 6) + ' | '+ padr(inttostr(Players[i].integers[3]), 6),52) + '|');
w('\______|__________|_________|___________|___________/');
w('');
stats_Commit;
end;


procedure tofish();
var
treetpa, watertpa: tpointarray;
lowest, sym: tpoint;
i, lowy, d, treecol: integer;
begin
if not loggedin then exit;
treecol := findtreecolor;
findcolorstolerance(treetpa, treecol, mmx1, mmy1, mmx2, mmy2, 0);
if (treecol > 0) and (length(treetpa) > 0) then
begin
writeln('Walking to trees via treecolor');
FilterPointsPie(treetpa, 85, 115, 50, 70, mmcx, mmcy);
for i := 0 to high(treetpa) do
if lowest.y < treetpa[i].y then lowest := treetpa[i];
mfnf(lowest.x, lowest.y, 1, 1);
flag;
wait(300+random(300));
end else
begin
writeln('Couldnt find treecolor, attempting to walk to the farthest water spot');
//Hopefully this will do till the autocolors are fixed......
findcolorstolerance(watertpa, 10327174, mmx1, mmy1, mmx2, mmy2, 10);
if length(watertpa) > 0 then
begin
debugtpa(watertpa, 'a');
lowy := 0;
for i := 1 to high(watertpa) do
if watertpa[i].y < watertpa[lowy].y then lowy := i;
mfnf(watertpa[lowy].x-7, watertpa[lowy].y-3, 1, 1);
flag;
wait(300+random(300));
end else
begin
if findsymbol(sym.x, sym.y, 'fish') then
begin
mfnf(sym.x, sym.y-5, 1, 1)
flag;
wait(300+random(300));
end else
begin
writeln('Couldnt get to fishing spot!');
killplayer();
end
end;
end;
end;


function getonionpatch(var po: tpoint): boolean;
var
mmoniontpa: tpointarray;
testcol, i, dist, d, shortest: integer;
begin
result := false; // dark onion
if not loggedin then exit;
findcolorstolerance(mmoniontpa, 7442840, mmx1, mmy1, mmx2, mmy2, 15);
FilterPointsPie(mmoniontpa, 0, 360, 0, 72, mmcx, mmcy);
debugtpa(mmoniontpa, 'a');
if length(mmoniontpa) < 1 then exit;
for i := 0 to high(mmoniontpa) do
begin
testcol := getcolor(mmoniontpa[i].x, mmoniontpa[i].y);// subtract dark from light
if testcol - getcolor(mmoniontpa[i].x-1, mmoniontpa[i].y-1) = 188895 then
break
else testcol := -1;
end;
if testcol < 0 then exit;
findcolorstolerance(mmoniontpa, testcol, mmx1, mmy1, mmx2, mmy2, 0);
debugtpa(mmoniontpa, 'a');
if length(mmoniontpa) < 1 then exit;
dist := distance(mmcx, mmcy, mmoniontpa[0].x, mmoniontpa[0].y);
for i := 1 to high(mmoniontpa) do
begin
d := distance(mmcx, mmcy, mmoniontpa[i].x, mmoniontpa[i].y);
if dist > d then
begin
dist := d;
shortest := i;
end;
end;
po := mmoniontpa[shortest];
result := true;
end;


procedure tobank();
var
bankpoint: tpoint;
npcs: tpointarray;
begin
if not loggedin() then exit;
if getonionpatch(bankpoint) then
begin
bankpoint := point(bankpoint.x-32, bankpoint.y+8);
bankpoint := rotatepoint(bankpoint, Radians(90 - rs_GetCompassAngleDegrees), mmcx, mmcy)
mfnf(bankpoint.x, bankpoint.y, 1, 1);
fflag(2);
exit;
end else
begin
npcs := GetMiniMapDots('npc');
FilterPointsPie(npcs, 260, 290, 0, 70, mmcx, mmcy);
if length(npcs) > 0 then
begin
bankpoint := MiddleTPA(npcs);
mfnf(bankpoint.x - 10, bankpoint.y - 10, 2, 2);
flag;
exit;
end else
begin
if findsymbol(bankpoint.x, bankpoint.y, 'bank') then
begin
mfnf(bankpoint.x , bankpoint.y , 0, 0);
flag;
end else
begin
writeln('Couldnt get player to bank, terminating player');
killplayer();
end;
end;
end;
end;


procedure bank();
var
opened: boolean;
i, t, x, y: integer;
b: tbox;
incvars: tvariantarray;
begin
if not loggedin then exit;
wait(800+random(700));
for i := 0 to 5 do
begin
wait(100+random(200));
opened := openbanknpc();
if opened then break;
end;
if not opened then opened := openbankglass('db', false, false);
if not opened then
begin
writeln('Character couldnt open the bank with SRL''s banking functions.');
killplayer;
exit;
end;
if players[CurrentPlayer].Strings[0] = 'rod' then
t:= 3
else t := 2;
for i := t to 28 do
begin
b := InvBox(i);
incvars := [0, 0, 0, 0, 0]
case countcolor(131072, b.X1, b.Y1, b.X2, b.Y2) of
46: incvars := [2, 'Sardines Caught', 1, 'Fishing EXP (Gained)', 20];
75: incvars := [3, 'Herring Caught', 1, 'Fishing EXP (Gained)', 30];
145: if findcolortolerance(x, y, 5664410, b.X1, b.Y1, b.X2, b.Y2, 10) then
incvars := [3, 'Shrimp Caught', 1, 'Fishing EXP (Gained)', 10]
else
incvars := [2, 'Anchovies Caught', 1, 'Fishing EXP (Gained)', 40];
end;
if not incvars[0] = 0 then
begin
inc(Players[CurrentPlayer].Integers[Integer(incvars[0])]);
stats_IncVariable(incvars[1], Integer(incvars[2]));
stats_IncVariable(incvars[3], Integer(incvars[4]));
end;
end;
if BankScreen then
Deposit(3, 28, true);
closebank;
wait(150+random(150));
end;


var
Loaders: Integer;
begin
Smart_Server := smart_serv;
Smart_Members := False;
Smart_Signed := True;
Smart_SuperDetail := False;
ActivateClient;
setupsrl;
SetupSRLStats(207, srl_stats_name, srl_stats_pass);
declarePlayers;
findnormalrandoms;
SymbolAccuracy := 0.45;
mousespeed := 19;
loginPlayer;
wait(500 + random(300));
repeat
Loaders := 0;
SetupPlayer;
repeat
setrun(True);
tofish;
FishInit;
tobank;
bank;
inc(Players[Currentplayer].Integers[4]);
inc(Loaders);
Report;
until (not Loggedin) or (Loaders >= (Players[CurrentPlayer].Integers[0]-1+random(2)))
LogOut;
if HowmanyPlayers = 1 then wait(50000+random(20000));
NextPlayer(Players[CurrentPlayer].active);
until AllPlayersinactive;
end.

Total

2012-05-10 22:32:09

LOL…I can't look at the script at the moment but your description of yourself is classic. Also doubting this is your script because its script #207 in srl stats and you have 1 post, but who knows.

Er1k

2012-05-10 23:08:59

{$i srl/srl.scar}

Nice try.

YoHoJo

2012-05-10 23:16:29

http://villavu.com/forum/showthread.php?t=67388
Plagiarism is NOT tolerated AT ALL at SRL!

Also
76.217.153.3 : 76-217-153-3.lightspeed.frokca.sbcglobal.net
Post IP Addresses

Chino1354 76.217.153.3 [Find Posts by User] [View Other IP Addresses for this User]

Registration IP Addresses

Chino1354 76.217.153.3 [Find Posts by User] [View Other IP Addresses for this User]
RuneDreamFTW 76.217.153.3 [Find Posts by User] [View Other IP Addresses for this User]

punkd

2012-05-10 23:21:47

There goes your IP ban.

Gucci

2012-05-10 23:43:11

It's funny how people still bother trying to completely copy and paste someone's already public script and think they are going get away with it

xtrapsp

2012-05-12 09:45:06

{$i srl/srl.scar}

Seems legit. Leaning towards a yes… But i'l think about it. Not.

Nava2

2012-05-29 23:37:53

Closed, suspended.