SRL Archive - Celebratory Events

3k ~ NaumanAkhlaQ


Naum

2009-02-23 03:09:33

Yay. 3K at last.

Well, after wondering around after the death of kaitneiks (I used to be a leecher there), I came across SRL. I already new about a program called SCAR, but tended to use other programs in VB such as Nick's AutoMiner.I had an account (lvl 120) which got banned after i
used 'Cruel's AutoMiner'. I then left RS thinking it was a waste of
time. Then when i went to secondary school I found SRL i think it was
through Sythe. Before that the only cheating site i knew was friday
the 13th's and scar-scripts.com, I was aged around 11 'ish. I took
one look at it and was amazed how could some one code so richly.

Before I came to SRL my scripting skills were extremely poor i
remember when i made my first Auto Login (Attached Below) and the
critisism that came with it :). Then i found ~alex~'s Edge Yew Pawner
a very good script even by todays standards. I practically used it to
death.

I then applied for SRL Members, like 8 times! 8th time I got in.

I started a few team scripts with EvilChicken! and P1nky (~joker~) but we epically failed a few. I spent most of my time after that writing tutorials and helping other people, such as Richard and TheChineseMan. After around 6 months I released a few scripts then became a bit less active.

My first big script was my Guild Min0r, which I thought was pretty good. It's now dead, after around about 6 months :p.

Im working on numerous projects one of them being a GE Yew Cutter (which I've abandoned :() and a Dorics Quester(Just started).

All of thoose scripts (which ive done) are attached below along with my first crappy script :).

For the record!



ShoutOut!
Yakman - Bloody Amazing!
WTFakawi, Wizzup - SRL Ofcourse!

Zephy
Nielsie

Sumilion
TSN
p1nky (Joker!)
EvilChicken

Manfromczech Iroki
Richard
The Chinese Man
Zyt3x
Ron
MasterKill
Wadoo
Renax
Pyro
N3ss3s
SkY_Scripter
Nava2
Timer
PvH
Hermpie
Santy
Jhildy

And!! Every Member

First Script:

{               /-------------\                  /---------
/ \ / \
/ \ / \
| | | | | |
| | | | | |
| | | | | |
|________| | |______ | |
/ / / /
/ / / /
/ / / / SCRIPT
/ / UPER / /_____
/ / |/ |/ |
/ / | | |
/ / | | |
/ / | | |
/ /________ \ /
| | | \ /
| | | \------------/
| | |
| | |
\ /
\ /
\\---------//


Thanks to All the people who posted
Those OwNaGE<- Tutorials!


}
Program AutoLoGin;
{include srl/srl.scar}

var x,y:integer;


Procedure A;
begin

MoveMouseSmooth(461, 293)
wait(200 + Random(200))
clickmouse(461, 293,true)//clicks on the existing user sign
end;

procedure B;

begin
MoveMouseSmooth(347, 260)
wait(800)
clickmouse(347, 260,true)//goes to the username thing
sendkeys ('Your UsernameHere')
wait(1000+Random(84))


SendKeys(Chr(13))// goes to password thing
sendkeys('Your PasswordHere')
MoveMouseSmooth(286, 320)
clickmouse(286, 320,true);

Movemouse(388, 334)//clicks on the login sign
wait(3000+random(600))
Clickmouse(388, 334,true)

end;

procedure sig;

begin

writeln(' !===========================!')
writeln(' ! Logging in... !')
writeln(' !Thank You for Useing !')
writeln(' !->{Naumans}<- Auto Login ยง !')
Writeln(' !===========================!')

end;



begin
Sig;
A;
B;
Sig;
End.


Dorics Quester (40% done!):

{Start in the GE, with 1.2k in first Inv Slot :)}

program Doric_QuestRunner;
{.include SRL/SRL.scar}

Const PinNumber = '0000'; //Leave if not Pin, else Enter it :)!

Type
TCond = (Bought, NotBought);

{
Type
Ores Set Of }


Var DirtColor, Road_Color : Integer;

Var x, y, I, Z, Num : Integer;


Procedure TerminatePlayer(Actif : Boolean);
Begin
WriteLn('Player Failed!');
LogOut;
NextPlayer(Actif);
Exit;
End;

Function FindWallColor : Integer; //My own :)
Var TPA : Array Of TPoint;
ATPA : Array Of Array Of TPoint;

Begin
ColorToleranceSpeed(0);
FindColorsSpiralTolerance(MMCX, MMCY, TPA, 15658734, MMX1, MMY1, MMX2, MMY2, 2);
If Length(TPA) > 0 Then
Begin
ATPA := SplitTPA(TPA, 1);
For I := 0 to High(ATPA) Do
If MiddleTPAEx(ATPA[I], x, y) Then
If GetColor(x, y) > 0 Then
Begin
Result := GetColor(x, y);
WriteLn('WallColor = '+IntToStr(Result));
Exit;
End;
End;
End;

Procedure W(Time : LongInt);
Begin
Wait(Time + Random(800));
End;

Function FindGEMan : Boolean;
Begin
Result := FindObj(x, y, 'lerk', 4466226, 10);
End;

Procedure ClickSlot;
Begin
MouseBox(70, 346, 128, 356, 1);
End;

Procedure Confirm;
Begin
W(50);
ClickText('Confirm Offer', UpChars, MSX1, MSY1, MSX2, MSY2, True);
End;


Function Buy(What : Integer) : Boolean;
Label lOL;

Begin
W(600);
Case What Of
0 : Num := 2;
1 : Num := 4;
2 : Num := 6;
End;
For I := 0 to Num -1 Do
Mouse(245, 191, 4, 4, True);

W(700);
Mouse(391, 220, 5, 5, True);
W(700);
Confirm;
Repeat
W(200);
Until(GetColor(101, 175) = 1999423) Or (I >= 55);
If I >= 55 Then TerminatePlayer(False)
Else

W(100);
If GetColor(101, 175) = 1999423 Then
Begin
Mouse(62, 130, 50, 50, True);
W(400);
If (CountColorTolerance(2176579, 400, 281, 437, 314, 5) < 1180) Then
Mouse(406, 286, 5, 5, True);
W(200);
Mouse(471, 302, 10, 10, True);
W(300);
If Z > 2 Then GoTo lOL;
If FindColorTolerance(x, y, 247475, 35, 84, 77, 146, 15) Then
Mouse(x, y, 5, 5, True);
End;
lOL :
Wait(1);
I := 0;
Result := True;
End;


procedure Withdraw2(col, row, Amount: Integer); //Edit from SRL

Var
BBox: TBox;

begin
BBox := BankIndexToMSBox(BankPointToBankIndex(Point(Col - 1, Row - 1)));
If Amount = 1 Then
Begin
MouseBox(BBox.X1 + 5, BBox.Y1 + 5, BBox.X2 - 5, BBox.Y2 - 5, 1);
// Wait(RandomRange(50, 150));
End
Else
Begin
MouseBox(BBox.X1 + 5, BBox.Y1 + 5, BBox.X2 - 5, BBox.Y2 - 5, 2);
if InIntArray([5, 10], Amount) then
ChooseOption('Withdraw-' +IntToStr(Amount))
else if Amount = 0 then
ChooseOption('Withdraw-All')
else
if (ChooseOption('Withdraw-X')) then
begin
Wait(1000 + Random(100));
TypeSend(IntToStr(Amount));
end;
End;
Wait(1000 + Random(500));
end;


Function BuyItems : TCond;
Var Option : Array Of String;
Notes : Integer;
Label Lol;

Begin
Notes := DTMFromString('78DA6374626260E06264400653EB4218FE036' +
'990E87F2060B405AAF9CD800618914820ED075423C6885F8D2950' +
'8D0801358140357F09D8650654C386DF1C0084550A3F');


Option := ['iron ore', 'copper ore', 'clay'];
GoTo Lol;
Lol :
If FindGEMan Then
Begin
Mouse(x, y, 1, 1, False);
W(500);
If PinScreen Then InPin(PinNumber);
ChooseOption('xchan');
End;
W(1000);
If FindText(x, y, 'rand Ex', TradeChars, 206, 34, 316, 48) Then
Begin
If FindColorTolerance(x, y, 247475, 35, 84, 77, 146, 15) Then
Mouse(x, y, 5, 5, True);

W(1000);
End;
If FindText(x, y, 'Item Search', TradeChars, MCX1, MCY1, MCX2, MCY2) Then
Begin
If Random(2) = 0 Then
MouseBox(36, 456, 479, 459, 1);

Z := 0;
Repeat
W(200);
TypeSend(Option[Z]);
W(500);
ClickSlot;
If Not Buy(Z) Then Result := NotBought
Else
WriteLn('Bought '+IntToStr(Num)+' '+Capitalize(Option[Z]));

W((Z*10)+300);
Inc(Z);
Until(Z > 2);
If Z > 2 Then WriteLn('Bought All Items!');
Z := 0;
End;
Begin
CloseWindow;
If FlagPresent Then WriteLn('Thingy has spazzed up :p');
End;
If FindObjCustom(x, y, ['anker'], [1275035], 10) Then
Begin
Mouse(x, y, 0, 0, False);
W(100);
If FindBitmap(BitmapFromString(16, 1, 'beNr7z/AfBhjAIDbEHQ0BZSCSIDYA' +
'W8EVug=='), x, y) Then
Mouse(x, y, 5, 5, True);

FFlag(0);
W(1200);
If BankScreen Then
Repeat
If FindDTM(Notes, x, y, MIX1, MIY1, MIX2, MIY2) Then
Begin
Mouse(x, y, 2, 2, False);
ChooseOption('All');
W(800);
End;
Until(Not FindDTM(Notes, x, y, MIX1, MIY1, MIX2, MIY2));
MMouse(235, 306, 10, 10);
W(200);
If IsUpText('item') Then
Begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
End Else
MMouse(Random(MSCX), Random(MSCY), 50, 50);
Repeat
Begin
Mouse(305, 300, 12, 12, True);
W(1000);
If Not FindColor(x, y, 8388608, MCX1, MCY1, MCX2, MCY2) Then
Mouse(305, 300, 12, 12, True)
Else
If FindColor(x, y, 8388608, MCX1, MCY1, MCX2, MCY2) Then
Begin
TypeSend(Option[Z]);
W(200);
Case Option[Z] Of
'iron ore' : Withdraw2(1, 1, 2);
'clay' : Withdraw2(1, 1, 6);
Else
Withdraw2(1, 1, 4);
End;
Inc(Z);
End;
End;
Until(Z > 2);
If Z > 2 Then
Begin
CloseWindow;
Result := Bought;
End Else
Result := NotBought;
End;
End;

function DirtRoadColor_GE : Integer; //Modded Zepyrs Function
var //Changed color
CTS, II, Count, PCount: Integer;
ColourDensity: Extended;
TPA, CPts: TPointArray;
TIA: TIntegerArray;
TB: TBox;
begin
Result := 0;
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.44, 1.42);
if (FindColorsTolerance(TPA, 6784921, MMX1, MMY1, MMX2, MMY2, 10)) then
begin
FilterPointsPie(TPA, 0.0, 360.0, 0.0, 76.0, MMCX, MMCY);
TIA := GetColors(TPA);
ClearSameIntegersAndTPA(TIA, TPA);
for II := 0 to High(TIA) do
begin
FindColorsTolerance(CPts, TIA[II], MMX1, MMY1, MMX2, MMY2, 0);
TB := GetTPABounds(CPts);
Count := Length(CPts);
try
ColourDensity := Count / ((TB.x2 - TB.x1) * (TB.y2 - TB.y1));
except end;
if (Count < 300) or (ColourDensity < 0.08) or (Count <= PCount) then Continue;
Result := TIA[II];
PCount := Count;
end;
end;
if (Result > 0) then WriteLn('Dirt Road Color = ' + IntToStr(Result))
else Result := AutoColorThis(BitmapFromString(3, 3,
'beNori+0uw4EAq6IMTw=='), 70, MMX1, MMY1, MMX2, MMY2);

SetColorSpeed2Modifiers(0.2, 0.2);
ColorToleranceSpeed(CTS);
end;

Procedure GEToDoric;
Label Lol;
Begin
GoTo Lol;
//If BuyItems = NotBought Then TerminatePlayer(False)
// Else
Begin
SetRun(True);
MouseFlag(598, 132, 10, 10, 0);
If FindSymbol(x, y, 'guide') Then MouseFlag(x + 5, y, 3, 3, 0);

Begin
If Not RadialWalk(DirtColor, 187, 127, 72, 0, 0) Then
If Not RadialWalk(DirtColor, 200, 100, 72, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('1');
End;

Begin
If Not RadialWalk(DirtColor, 135, 197, 72, 0, 0) Then
If Not RadialWalk(DirtColor, 130, 210, 72, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
If Not FindSymbol(x, y, 'Bank') Then TerminatePlayer(False)
Else
Begin
Road_Color := FindVarrockRoadColor;
If Not RadialWalk(Road_Color, 180, 220, 70, 0, 0) Then
If Not RadialWalk(Road_Color, 190, 226, 72, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('2');
End;
End;

If Not FindSymbol(x, y, 'cook') Then TerminatePlayer(False) Else
Begin
If Not RadialWalk(Road_Color, 200, 250, 64, 0, 0) Then
If Not RadialWalk(Road_Color, 200, 268, 70, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('3');

If Not RadialWalk(Road_Color, 240, 310, 69, 0, 0) Then
If Not RadialWalk(Road_Color, 200, 340, 70, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('4');
End;

Begin

If Not FindRoadColor > 0 Then TerminatePlayer(False) Else
Road_Color := FindRoadColor;
For I := 0 to 1 Do
Begin
If Not RadialWalk(Road_Color, 240, 350, 70, 0, 0) Then
If Not RadialWalk(Road_Color, 200, 350, 70, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('5');
End;
End;
Begin
MouseFlag(MMCX - 65, MMCY - 20, 10, 10, 30);
If Not FlagPresent Then TerminatePlayer(False)
Else
FFlag(0);
WriteLn('6');
If FindStoneColor < 0 Then
MouseFlag(MMCX - 65, MMCY, 10, 10, 0);

If Not FindColor(x, y, FindStoneColor, MMX1, MMY1, MMX2, MMY2) Then
TerminatePlayer(False)
Else
MouseFlag(x, y, 5, 5, 0);
MouseFlag(MMCX - 65, MMCY, 10, 10, 0);
WriteLn('7');
Lol :
Begin
Road_Color := FindWallColor;
If Not LinearWalk(Road_Color, 180, 40, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('8');

If Not LinearWalk(Road_Color, 220, 68, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('9');

If Not LinearWalk(Road_Color, 320, 68, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('10');

If Not LinearWalk(Road_Color, 340, 68, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('11');

If Not LinearWalk(Road_Color, 270, 68, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('12');

If Not LinearWalk(Road_Color, 300, 68, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('13');

If Not LinearWalk(Road_Color, 270, 68, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('14');
End;
SetRun(True);
Begin
Road_Color := FindRoadColor;
If Not FindColor(x, y, Road_Color, MMX1, MMY1, MMX2, MMY2) Then
Begin
MouseFlag(590, 113, 10, 10, 0);
End Else
If Not FindColor(x, y, Road_Color, MMX1, MMY1, MMX2, MMY2) Then
TerminatePlayer(False)
Else
MouseFlag(x, y, 5, 5, 0);
WriteLn('15');
End;

If FindColor(x, y, FindFallyRoadColor, MMX1, MMY1, MMX2, MMY2) Then
WriteLn('We made it to fally')
Else
TerminatePlayer(False);

Begin
Road_Color := FindRoadColor;
If Not RadialWalk(Road_Color, 270, 320, 68, 0, 0) Then
If Not RadialWalk(Road_Color, 260, 350, 68, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('16');

If Not RadialWalk(Road_Color, 294, 359, 70, 0, 0) Then
If Not RadialWalk(Road_Color, 240, 350, 68, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);
WriteLn('17');

If Not LinearWalk(Road_Color, 0, 68, 0, 0) Then
TerminatePlayer(False)
Else
FFlag(0);

If Not FindSymbol(x, y, 'quest') Then TerminatePlayer(False)
Else
WriteLn('We are outside Dorics House!');

Mouse(x - 15, y, 5, 5, True);
FFlag(0);
End;
SetRun(False);
End;
End;
End;

Procedure C2C;
Begin
If Random(2) = 1 Then IdleTime(500, 50, 0.67);
ClickToContinue;
W(300);
IdleTime(500, 50, 0.67);
End;


Procedure TalkToDoric(ConvoType : Integer);
Label Again;
Var F : Integer;

Begin
F := 0;
Again :
If FindObjCustom(x, y, ['oric', 'alk-to'], [2568084, 7960962, 9016212], 10) Then
Begin
Inc(F);
If F >= 10 Then
TerminatePlayer(False)
Else
Mouse(x, y, 0, 0, True);
W(300);
If Not FindNPCChatText('oric', Nothing) Then GoTo Again;
End;

Case ConvoType Of
0 : If FindNPCChatText('ello', Nothing) Then
Begin
C2C;
FindNPCChatText('I wanted to use your anvils.', ClickLeft);
W(300);
C2C;
C2C;
FindNPCChatText('will get you the materials', ClickLeft);
W(300);
C2C;
FindNPCChatText('ertainly', ClickLeft);
W(300);
C2C;
End;
1 : If FindNPCChatText('ave', Nothing) Then
Begin
F := 0;
Repeat
C2C;
Inc(F);
Until(FindText(x, y, 'ompleted',SmallChars, MSX1, MSY1, MSX2, MSY2)) Or (F>=10)
If FindText(x, y, 'ompleted',SmallChars, MSX1, MSY1, MSX2, MSY2) Then
Begin
WriteLn('Quest Completed');
WriteLn('Got :');
WriteLn('1 Quest Point');
WriteLn('1,300 Mining Xp');
WriteLn('180 Coins :)');
WriteLn('ooooo.. and the use of ''Dorics'' anvils xD');
Mouse(443, 74, 6, 6, True);
LogOut;
NextPlayer(True);
Exit;
End;
End;
End;
End;

begin
SetupSRL;
MakeCompass('N');
DirtColor := DirtRoadColor_GE;
SymbolAccuracy := 0.4;
GEToDoric;
end.

And GE Yewz

{.Script Info:
# ScriptName = GE_Yewz
# Author = NaumanAkhlaQ
# Description = Cuts yews, Start in GE
# Version = 0.1
# Date = 26/12/08
# Comments = This project has been on and off for the last 4 months,
but I decided to finsih it after I found a copy on
my hard-drive.
/Script Info}

program GE_Yewz;
{.include srl/srl/misc/smart.scar}
{.include SRL/SRL.scar}
{.include srl/srl/misc/Users.scar}

Procedure WalkToBank; Forward;

var
x, y, Banked, Chopped, T32RGBArray : Integer;
VarrockRoadColor, DirtColor : Integer;

const
Ver = '0.1';
PinNumber = '5858'; //Your Pin number, leave at '0000' if you dont have


function DirtRoadColor_GE : Integer; //Modded Zepyrs Function
var //Changed color
CTS, II, Count, PCount: Integer;
ColourDensity: Extended;
TPA, CPts: TPointArray;
TIA: TIntegerArray;
TB: TBox;
begin
Result := 0;
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.44, 1.42);
if (FindColorsTolerance(TPA, 6784921, MMX1, MMY1, MMX2, MMY2, 10)) then
begin
FilterPointsPie(TPA, 0.0, 360.0, 0.0, 76.0, MMCX, MMCY);
TIA := GetColors(TPA);
ClearSameIntegersAndTPA(TIA, TPA);
for II := 0 to High(TIA) do
begin
FindColorsTolerance(CPts, TIA[II], MMX1, MMY1, MMX2, MMY2, 0);
TB := GetTPABounds(CPts);
Count := Length(CPts);
try
ColourDensity := Count / ((TB.x2 - TB.x1) * (TB.y2 - TB.y1));
except end;
if (Count < 300) or (ColourDensity < 0.08) or (Count <= PCount) then Continue;
Result := TIA[II];
PCount := Count;
end;
end;
if (Result > 0) then WriteLn('Dirt Road Color = ' + IntToStr(Result))
else Result := AutoColorThis(BitmapFromString(3, 3,
'beNori+0uw4EAq6IMTw=='), 70, MMX1, MMY1, MMX2, MMY2);

SetColorSpeed2Modifiers(0.2, 0.2);
ColorToleranceSpeed(CTS);
end;

procedure IfFight;
Begin
If (FindFight) Then
RunAway('E', False, 1, 1000 + Random(500));
end;

function AxeBroke : Boolean; //NAQ
Begin
Result := (GetColor(585, 220) = 65536);
end;

function FindEnt(fx, fy: Integer; AvoidWhenFound: Boolean): Boolean;
var
x, y, EntTime, tcts: Integer;
begin
if not(LoggedIn)then
Exit;
GetMousePos(x, y);
if(x <> fx)or(y <> fy)then
MMouse(fx, fy, 0, 0);
if(IsUpText('Chop'))then
begin
tcts := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.03, 0.75);
Result := (CountColorTolerance(118478, 9, 10, 124, 23, 10) > 10);
SetColorSpeed2Modifiers(0.2, 0.2);
ColorToleranceSpeed(tcts);
end;
if(Result)then
begin
WriteLn('Ent Found!!');
if(AvoidWhenFound)then
begin
Writeln('Waiting for it to go away.');
MFNF(MMCX, MMCY, -1, 1);
MarkTime(EntTime);
while(TimeFromMark(EntTime) < 35000)do
if(Random(20) > 15)then
IdleTime(500, 500, 0.4)
else
Wait(500 + Random(500));
EntsAvoided := EntsAvoided + 1;
end;
end;
end;


Procedure WalkToTrees;
Var TPA : Array Of TPoint;
Begin
If LinearWalk(VarrockRoadColor, 90, 75, -2, 2) Then
FFlag(0);

If RadialRoadWalk(DirtColor, 40, 80, 70, -2, 2) Then
FFlag(7);

If FindSymbol(x, y, 'tree') Then
Begin
Mouse(x + 10, y + 10, 2, 2, True);
FFlag(8);
end;

Begin
FindSymbols(TPA, 'tree');
If Length(TPA) > 0 Then
WriteLn('We are @ Trees')
Else
Begin
WriteLn('We couldn'#39't make it :(');
LogOut;
NextPlayer(True);
Exit;
end;
end;
Wait(1);
End;


Function GetTree : String;
Begin
If FindSymbol(x, y, 'cook') Then
Begin
If Distance(MMCX, MMCY, X, Y) > 30 Then
Result := 'West'
Else
Result := 'East';

Exit;
End Else

If CountColor(15658734, MMX1, MMY1, MMX2, MMY2) > 115 Then
Result := 'West'
Else
Result := 'East';
Wait(1);
end;


Function FindYewTree : Boolean;
Var
TPA : TPointArray;
ATPA : T2DPointArray;
I : Integer;

Begin
Result := True;
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 2053962, MSX1, MSY1, MSX2, MSY2, 10);
If Length(TPA) > 2 Then
Begin
ATPA := TPAToATPAEx(TPA, 5, 5);
For I := 0 To High(ATPA) Do
If MiddleTPAEx(ATPA[I], x, y) Then
Begin
MMouse(x, y, 0, 0);

Wait(100 + Random(200));
If IsUpText('Yew') Then
GetMousePos(x, y);
Result := True;
If InvFull Then
Exit
Else
Exit;
End Else
Result := False;
Exit;
End;
Wait(1);
End;

Procedure SwapTree;
Var C0l : String;
Begin
Writeln('Switching Now..');
C0l := 'red';
If GetMMLevels('run', C0l) >= 9 Then
SetRun(True);

Case GetTree Of
'West' : If FindSymbolIn(x, y, 'tree', 672, 18, 722, 159) Then
Begin
MouseFlag(x - 3, y, 2, 2, 0)
FindYewTree;
Exit;
End Else
Begin
LinearWalk(DirtColor, 90, 50, 0, 0);
If FindSymbolIn(x, y, 'tree', 672, 18, 722, 159) Then
MouseFlag(x, y, 2, 2, 0)
end;

'East' : If FindSymbolIn(x, y, 'tree', 555, 14, 614, 165) Then
MouseFlag(x + 7, y + 3, 2, 2, 0);
end;
WriteLn('Switched :)');
end;

Procedure AntiBan(Randomness : Integer);
Var I : Integer;
Begin
Case Randomness Of
0 : GameTab(1 + Random(12));
1, 2 : FtWait(5);
3..5 : SleepAndMoveMouse(1000 + Random(2000));
5, 6 : PickUpMouse;
8..10 : Begin
for I := 1 to (3 + Random(11)) do
begin
MMouse(Random(MSX2), Random(MSY2), 0, 0);
if IsUpText('opti') then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
ChooseOption('xamine');
end;
end;
end;
end;
end;

Procedure GetNewAxe;
Begin
If AxeBroke Then
WalkToBank;
If FindObjCustom(x, y, ['anker'], [12571861, 13163226, clWhite], 10) Then
Begin
Mouse(x, y, 2, 2, False);
Wait(180 + Random(80));
If Not ChooseOption('ank') Then
Begin
WriteLn('Couldn''t Open Bank');
Logout;
NextPlayer(False);
Exit;
End Else
Wait(2000 + Random(800));
end;
If PinScreen Then
InPin(PinNumber);

If (BankScreen) Then
Begin
//
End;
WalkToTrees;
Exit;
End;

Procedure WaitWhileChop;
Var mrk, fx, fy : Integer;
Begin
MarkTime(mrk);
Repeat
FindNormalRandoms;
FindEnt(x, y, True);
IfFight;
AntiBan(20);
FindEnt(x, y, True);
If AxeBroke Then
//GetNewAxe
Else

IfFight;
FindNormalRandoms;
FTWait(10 + Random(8));
Until(Not FindYewTree) Or (TimeFromMark(mrk) > 13000 + Random(3000));
FindEnt(x, y, True);
end;

Procedure CutTree;
Var Co, Markz : Integer;
Label LabX;

Begin
MarkTime(Markz);
Repeat

If FindYewTree Then GoTo LabX
Else
Begin
Co := 0;
Repeat
Wait(2000+Random(100));
Inc(Co);
If FindYewTree Then Break;
Until(Co >= 4);
If FindYewTree Then GoTo LabX;
If (Co >= 4) Then SwapTree;
end;
LabX:

Co := 0;
If FindYewTree Then
Begin
If Random(2) = 1 Then Mouse(x, y, 0, 0, True) Else
Begin
Mouse(x, y, 0, 0, False);
ChooseOption('hop');
end;
end;
WaitWhileChop;
Until(InvFull) Xor (TimeFromMark(Markz) > 9000000);

If InvFull Then IncEx(Chopped, 27);
End;

Function DebugTPA(Points: TPointArray; BmpName: String): Boolean; // Thx
//Wizzup?
Var
Width, Height, ClientBMP, I: Integer;
xs, ys, xe, ye: Integer;

Begin
Try
Begin
xe := xs xor xs;
ye := ys xor ys;
xs := 1 shl 20;
ys := 1 shl 20;

For I := 0 To High(Points) Do
Begin
xs := Min(xs, Points[i].X);
ys := Min(ys, Points[i].Y);

xe := Max(xe, Points[i].X);
ye := Max(ye, Points[i].Y);
End;

Width := xe - xs;
Height := ye - ys;

DisplayDebugImgWindow(0, 0);
DisplayDebugImgWindow(Width, Height);
ClientBMP := BitmapFromString(Width, Height, '');

CopyClientToBitmap(ClientBMP, xs, ys, xe, ye);
For I := 0 To High(Points) Do
FastSetPixel(ClientBMP, Points[i].X - xs, Points[i].Y - ys, 255);
If BmpName <> '' Then
SaveBitmap(ClientBMP, ScriptPath + BmpName + '.bmp');
SafeDrawBitmap(ClientBMP, GetDebugCanvas, 0, 0);
DisplayDebugImgWindow(Width, Height);

FreeBitmap(ClientBMP);
End
Except
FreeBitmap(ClientBMP);
End;
Result := True;
End;

Procedure Get2Bankers;
Var TPA : Array Of TPoint;
Begin
FindColorsTolerance(TPA, 238, MMX1, MMY1, 621, 90, 10);
DebugTPA(TPA, '');
If MiddleTPAEx(TPA, x, y) Then
Mouse(x, y, 5, 5, True);

FFlag(0);
End;

Procedure WalkToBank;
Begin
If GetTree = 'East' Then
SwapTree
Else
Wait(1);
Begin
If RadialRoadWalk(DirtColor, 279, 182, 68, 0, 0) Then
FFlag(3);

If LinearWalk(DirtColor, 180, 20, -2, 2) Then
FFlag(0);

MouseFlag(556, 70 + 20, 10, 10, 5)
Begin
Get2Bankers;

If PlayersOnMap(MMX1, MMY1, MMX2, MMY2) >= 1 Then
WriteLn('We are @ GE')
Else
Begin
WriteLn('Failed :(');
Logout;
NextPlayer(False);
end;
end;
end;
end;

Procedure Bank;
Begin
If FindObjCustom(x, y, ['anker'], [12571861, 13163226, clWhite], 10) Then
Begin
Mouse(x, y, 2, 2, False);
Wait(180 + Random(80));
If Not ChooseOption('ank') Then
Begin
WriteLn('Couldn''t Open Bank');
Logout;
NextPlayer(False);
Exit;
End Else
Wait(2000 + Random(800));
end;
If PinScreen Then
InPin(PinNumber);

If (BankScreen) Then
Begin
Deposit(2, 28, True);
Wait(900 + Random(800));
CloseBank;
Inc(Banked);
end;
end;

Procedure Proggie;
Var I : Integer;
Begin
WriteLn('');
WriteLn('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ');
WriteLn('[ NaumanAkhlaQ Presents ]');
WriteLn('[ GE_YEWZ!!! ]');
WriteLn('| |');
WriteLn('| [> Worked '+ TimeRunning +'! | ');
WriteLn('| [> Chopped '+ IntToStr(Chopped)+' Logs |');
WriteLn('| [> Banked '+ IntToStr(Banked) +' Loads|');
WriteLn('| [> Found '+IntToStr(EntsAvoided)+' Ents|');
WriteLn('| ---------------------- |');
WriteLn('| [> Current Version Is V'+ Ver+' Pub!|');
WriteLn('= Thank You For Using ;) |');
WriteLn('=================================== ');
For I := 0 to (HowManyPlayers - 1) do
Begin
WriteLn('[~ '+ Players[I].Name +' /\ Chopped '+IntToStr(Players[I].integers[3])+ ' Logs. /\ Banked ' +IntToStr(Players[I].integers[2])+' Loads!');
WriteLn(' <--------- |-----$$-----| --------->');
End;
Begin
WriteLn(' ++++++++++++++++++++');
SRLRandomsReport;
If (Not (LoggedIn)) Then
Begin
WriteLn('--> Lost Player : '+Players[CurrentPlayer].Name);
LogOut;
NextPlayer(False);

end else
WriteLn('> Using ' +IntToStr(HowManyPlayers)+ ' Players');
Try
If Banked >= Players[CurrentPlayer].Integers[0] Then
WriteLn('Loads Done and Dusted!');
Finally
FindNormalRandoms;
Except
end;
end;
end;

Procedure Setup;
Begin
If Players[CurrentPlayer].Booleans[0] = True Then SmartSetRefresh(30) Else
SmartSetRefresh(100);
If Not LoggedIn Then
LoginPlayer
Else
Wait(1);

MakeCompass('N');
SymbolAccuracy := 0.45;
SetAngle(True);
SetChat('off', 2);
SetRun(True);
end;

Procedure SetUpSMART;
Begin
WriteLn('Getting Ready - SMART');
SmartSetupEx(108, false, true, false);
SetTargetDC(SmartGetDC);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1118604);

wait(1300+Random(2000));
WriteLn('Loaded SMART!');
Exit;
end;

begin
SetupSRL;
SRLPlayerForm(True, ['Low SMART Usage?'], ['Loads to Do?'], [], []);
SetUpSMART
Repeat
Setup;
VarrockRoadColor := FindVarrockRoadColor;
DirtColor := DirtRoadColor_GE
Repeat
WalkToTrees;
CutTree;
WalkToBank;
Bank;
Proggie;
Until(Banked >= Players[CurrentPlayer].Integers[0]) Or (Not(LoggedIn));
LogOut;

If Banked >= Players[CurrentPlayer].Integers[0] Then
Begin
WriteLn('Switching Player');
NextPlayer(True);
end else
Nextplayer(False);

Until(AllPlayersInactive = True);
end.

THANKS!!

MasterKill

2009-02-23 03:12:28

Congratz! 3k is a lot :)

<3

upload the pic fast xD

ZaSz

2009-02-23 03:18:10

grats man, im closing in on my 1k

1 post away :)

Lee Lok Hin

2009-02-23 03:21:07

Heh @ Zytex. 999

Well, i'm closing too :p

I might get my Yoda before getting 1k :p

ZaSz

2009-02-23 03:40:39

Names not Zytex…

Tickyy

2009-02-23 06:54:07

Congratulation! :D

Hugolord

2009-02-23 06:57:48

Gratz man ^^

Richard

2009-02-23 07:42:24

Gratz mate, nice to see that you've stayed here for this long :)

Naum

2009-02-23 12:05:17

Thanks, uploaded stuff :)

Torrent of Flame

2009-02-23 12:27:05

UNCLE B!

Grats man.

faster789

2009-02-23 23:08:42

Gratz :D
Don't know if you remember but you were the biggest help that made me get SRL members ;)