PDA

View Full Version : Gnome Agility PRO!



Train
12-27-2010, 07:21 AM
Gnome Agility PRO!
by: Train

Hello SRL, this is my second script!
Please don't expect that much of it, but trust me, I'm VERY proud of it!

Script averages at about 5.2k exp an hour, the low exp in the screen-shot was due to me purposely messing it up and testing the relocating. :D

I hope you enjoy it as much as I do...
~ Train


{
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Gnome Tree Course =-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=--= v0.1 =--=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= By: Train =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=--= ** Instructions =--=
=--= * 1. Be at the beginning of the course. =
=--= **** If you don't start at the beginning of the course, it should find =
=--= itself and continue on from there, but after lots of mouse =
=--= movement. =
=--= * 2. Don't be in an over crowded world. =
=--= * 3. Be on Safe Mode with Min. Graphics. =
=--= **** To get in safe mode without using smart, hold "s" while Runescape =
=--= is loading. =
=--= * 4. Have LIGHT WEIGHT gear on. =
=--= **** Spottier Cape, Boots of Lightness, etc. =
=--= * 5. If you wish to run, have run ENABLED before starting the script. =
=--= **** It will not enable run automatically! =
=--= * 6. Report errors and post progress reports! :D. =
=--= **** If you're going to use it on your MAIN, please watch it and make =
=--= sure it doesn't mess up majorly before leaving it alone. =
=--= * 4. START LOGGED OUT, OR LOGGED IN WITH YOUR CAMERA ANGLE UP!!! =
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=--= **** POST PROGRESS REPORTS ! **** =--=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=-= * Change Log =
=-= v0.1 =
******* Initial script. =
BETA relocating, not SUPER...SUPER reliable... yet the script =
doesn't fail...almost...ever. :D =
Multi-player compatibility. =
=
******* Comments. =
Walking back to beginning is more of a "guess", as the colours =
will sometimes be wrong and it will click somewhere, if this =
happens, just go to a different world. :D =
=-= v0.2 =
******* Script. =
Added a SetAngle(True) on Login, increased wait with the mouse =
movements to reduce misclicks from lag. =
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
}

Reports:

Running For: 6 Hours, 9 Minutes and 18 Seconds
Laps Completed: 391
Total EXP Gained: 33821.5
[xxx] 21915187
Laps: 391
Exp Gained: 33821.5
Exp P/H: 5,556

stopped myself ;)


Running For: 5 Hours, 13 Minutes and 52 Seconds
Laps Completed: 340
Total EXP Gained: 29410
[---------] 18830391
Laps: 340
Exp Gained: 29410
Exp P/H: 5,623

My first reflection. Hope you like it. 1-37 agility in 5 hours, love you man, (not in a gay way).


Running For: 2 Hours, 57 Minutes and 25 Seconds
Laps Completed: 156
Total EXP Gained: 13494
[un7b5nh78uhn] 10615790
Laps: 156
Exp Gained: 13494
Exp P/H: 4,576
Very good!



Running For: 1 Hours, 46 Minutes and 58 Seconds
Laps Completed: 123
Total EXP Gained: 10639.5
[************] 6417303
Laps: 123
Exp Gained: 10639.5
Exp P/H: 5,969


Same world, had a flawless run:

Running For: 1 Hours, 31 Minutes and 35 Seconds
Laps Completed: 102
Total EXP Gained: 8823
[***********'] 5458959
Laps: 102
Exp Gained: 8823
Exp P/H: 5,818



Running For: 40 Minutes and 38 Seconds
Laps Completed: 47
Total EXP Gained: 4065.5
[************] 2414053
Laps: 47
Exp Gained: 4065.5
Exp P/H: 6,063

46-48 with the script. You should make one for Agility Pyramid. Level requirement is 30, isn't it better exp also?

Me:
http://i56.tinypic.com/vzj5hk.jpg

program Gnome_Tree_Course;
{$DEFINE SMART} // Comment this out if you wish to not use SMART.
{$i SRL\SRL.scar}

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

Players[0].Name := '';
Players[0].Pass := '';
Players[0].Integers[0] := 20; // Laps until player switch/logout (+/- random 5)
Players[0].Integers[1] := 1500; // Total laps to do.
Players[0].Active := True;
Players[0].Member := True;
end;

{
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Gnome Tree Course =-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=--= v0.1 =--=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= By: Train =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=--= ** Instructions =--=
=--= * 1. Be at the beginning of the course. =
=--= **** If you don't start at the beginning of the course, it should find =
=--= itself and continue on from there, but after lots of mouse =
=--= movement. =
=--= * 2. Don't be in an over crowded world. =
=--= * 3. Be on Safe Mode with Min. Graphics. =
=--= **** To get in safe mode without using smart, hold "s" while Runescape =
=--= is loading. =
=--= * 4. Have LIGHT WEIGHT gear on. =
=--= **** Spottier Cape, Boots of Lightness, etc. =
=--= * 5. If you wish to run, have run ENABLED before starting the script. =
=--= **** It will not enable run automatically! =
=--= * 6. Report errors and post progress reports! :D. =
=--= **** If you're going to use it on your MAIN, please watch it and make =
=--= sure it doesn't mess up majorly before leaving it alone. =
=--= * 4. START LOGGED OUT, OR LOGGED IN WITH YOUR CAMERA ANGLE UP!!! =
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=--= **** POST PROGRESS REPORTS ! **** =--=
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
=-= * Change Log =
=-= v0.1 =
******* Initial script. =
BETA relocating, not SUPER...SUPER reliable... yet the script =
doesn't fail...almost...ever. :D =
Multi-player compatibility. =
=
******* Comments. =
Walking back to beginning is more of a "guess", as the colours =
will sometimes be wrong and it will click somewhere, if this =
happens, just go to a different world. :D =
=-= v0.2 =
******* Script. =
Added a SetAngle(True) on Login, increased wait with the mouse =
movements to reduce misclicks from lag. =
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
}

function createIntArray(int, len: LongInt): array of Integer;
var
i: LongInt;
arr: TIntegerArray;
begin
SetLength(arr, len);
for i := 0 to len - 1 do
arr[i] := int;
Result := arr;
end;

procedure DrawOnSMARTEx(arrText: TStringArray; Color: Integer; Font: string; base: TPoint);
var
drawImage: LongInt;
i, h, useFull: Integer;
tI, tH: LongInt;
TextTPA: TPointArray;
Canvas: TCanvas;
begin
SmartSetDebug(True);
drawImage := BitmapFromString(766, 504, '');
h := Length(arrText) - 1;
for i := 0 to h do
begin
TextTPA := LoadTextTPA(arrText[i], Font, useFull);
tH := Length(TextTPA) - 1;
for tI := 0 to tH do
TextTPA[tI] := Point(TextTPA[tI].x + base.x, TextTPA[tI].y + base.y + (i * 12));
FastSetPixels(drawImage, TextTPA, createIntArray(Color, tH + 1));
end;
Canvas := TCANVAS.Create;
Canvas.Handle := SmartGetDebugDC;
DrawBitmap(drawImage, Canvas, 0, 0);
FreeBitmap(drawImage);
end;

procedure DrawOnSMART(arrText: TStringArray; Color: Integer);
begin
DrawOnSMARTEx(arrText, Color, StatChars, Point(25, 50));
end;


function LocateLog(var x, y: Integer): Boolean;
var
pCTS: Byte;
i, h: Integer;
pModifH, pModifS: Extended;
TPA: TPointArray;
ATPA: T2DPointArray;
tempPoint: TPoint;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
pCTS := GetToleranceSpeed;
GetToleranceSpeed2Modifiers(pModifH, pModifS);
ColorToleranceSpeed(2);
SetToleranceSpeed2Modifiers(0.03, 0.25);
FindColorsTolerance(TPA, 666702, MSX1, MSY1, MSX2, MSY2, 8);
if (Length(TPA) > 0) then
begin
ATPA := TPAtoATPAEx(TPA, 40, 10);
SortATPAFromFirstPoint(ATPA, Point(MSCX, MSCY));
h := Length(ATPA) - 1;
for i := 0 to h do
begin
tempPoint := MiddleTPA(ATPA[i]);
MMouse(tempPoint.x, tempPoint.y, 5, 5);
Wait(180 + Random(121));
if (IsUpText('across')) then
begin
x := tempPoint.x;
y := tempPoint.y;
Result := True;
Exit;
end else
Continue;
end;
end;
ColorToleranceSpeed(pCTS);
SetToleranceSpeed2Modifiers(pModifH, pModifS);
end;

function LocateFence(var x, y: Integer; sort: TPoint): Boolean;
var
pCTS: Byte;
i, h: Integer;
pModifH, pModifS: Extended;
TPA: TPointArray;
ATPA: T2DPointArray;
tempPoint: TPoint;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
pCTS := GetToleranceSpeed;
GetToleranceSpeed2Modifiers(pModifH, pModifS);
ColorToleranceSpeed(2);
SetToleranceSpeed2Modifiers(0.28, 0.76);
FindColorsTolerance(TPA, 1252130, MSX1, MSY1, MSX2, MSY2, 8);
if (Length(TPA) > 0) then
begin
ATPA := TPAtoATPAEx(TPA, 60, 35);
SortATPAFromFirstPoint(ATPA, sort);
h := Length(ATPA) - 1;
for i := 0 to h do
begin
tempPoint := MiddleTPA(ATPA[i]);
MMouse(tempPoint.x, tempPoint.y, 5, 5);
Wait(180 + Random(121));
if (IsUpText('over')) then
begin
x := tempPoint.x;
y := tempPoint.y;
Result := True;
Exit;
end else
Continue;
end;
end;
ColorToleranceSpeed(pCTS);
SetToleranceSpeed2Modifiers(pModifH, pModifS);
end;

function LocateBranch(var x, y: Integer; sort: TPoint): Boolean;
var
pCTS: Byte;
i, h: Integer;
pModifH, pModifS: Extended;
TPA: TPointArray;
ATPA: T2DPointArray;
tempPoint: TPoint;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
pCTS := GetToleranceSpeed;
GetToleranceSpeed2Modifiers(pModifH, pModifS);
ColorToleranceSpeed(2);
SetToleranceSpeed2Modifiers(0.04, 0.54);
FindColorsTolerance(TPA, 2313055, MSX1, MSY1, MSX2, MSY2, 15);
if (Length(TPA) > 0) then
begin
ATPA := TPAtoATPAEx(TPA, 10, 8);
SortATPAFromFirstPoint(ATPA, sort);
h := Length(ATPA) - 1;
for i := 0 to h do
begin
tempPoint := MiddleTPA(ATPA[i]);
MMouse(tempPoint.x, tempPoint.y, 5, 5);
Wait(180 + Random(121));
if (IsUpText('limb')) then
begin
x := tempPoint.x;
y := tempPoint.y;
Result := True;
Exit;
end else
Continue;
end;
end;
ColorToleranceSpeed(pCTS);
SetToleranceSpeed2Modifiers(pModifH, pModifS);
end;

function LocateRope(var x, y: Integer; nearUs: Boolean): Boolean;
var
pCTS: Byte;
i, h: Integer;
pModifH, pModifS: Extended;
TPA: TPointArray;
ATPA: T2DPointArray;
tempPoint: TPoint;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
pCTS := GetToleranceSpeed;
GetToleranceSpeed2Modifiers(pModifH, pModifS);
ColorToleranceSpeed(2);
SetToleranceSpeed2Modifiers(0.03, 0.08);
FindColorsTolerance(TPA, 4810882, MSX1, MSY1, MSX2, MSY2, 11);
if (Length(TPA) > 0) then
begin
ATPA := TPAtoATPAEx(TPA, 10, 3);
if (nearUs) then
SortATPAFromFirstPoint(ATPA, Point(MSCX, MSCY))
else
SortATPAFromFirstPoint(ATPA, Point(100, 180));
h := Length(ATPA) - 1;
for i := 0 to h do
begin
tempPoint := MiddleTPA(ATPA[i]);
MMouse(tempPoint.x, tempPoint.y, 5, 5);
Wait(180 + Random(121));
if (IsUpText('rope')) then
begin
x := tempPoint.x;
y := tempPoint.y;
Result := True;
Exit;
end else
Continue;
end;
end;
ColorToleranceSpeed(pCTS);
SetToleranceSpeed2Modifiers(pModifH, pModifS);
end;

function LocateTube(var x, y: Integer): Boolean;
var
pCTS: Byte;
i, h: Integer;
pModifH, pModifS: Extended;
TPA: TPointArray;
ATPA: T2DPointArray;
tempPoint: TPoint;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
pCTS := GetToleranceSpeed;
GetToleranceSpeed2Modifiers(pModifH, pModifS);
ColorToleranceSpeed(2);
SetToleranceSpeed2Modifiers(0.14, 0.08);
FindColorsTolerance(TPA, 5855837, MSX1, MSY1, MSX2, MSY2, 31);
if (Length(TPA) > 0) then
begin
ATPA := TPAToATPAEx(TPA, 30, 30);
SortATPAFromFirstPoint(ATPA, Point(202, 72));
h := Length(ATPA) - 1;
for i := 0 to h do
begin
tempPoint := MiddleTPA(ATPA[i]);
MMouse(tempPoint.x, tempPoint.y, 5, 5);
Wait(180 + Random(121));
if (IsUpText('eeze')) then
begin
x := tempPoint.x;
y := tempPoint.y;
Result := True;
Exit;
end else
Continue;
end;
end;
ColorToleranceSpeed(pCTS);
SetToleranceSpeed2Modifiers(pModifH, pModifS);
end;

procedure locateToLog;
var
pCTS: Byte;
i, h: Integer;
pModifH, pModifS: Extended;
TPA: TPointArray;
ATPA: T2DPointArray;
tempPoint: TPoint;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
pCTS := GetToleranceSpeed;
GetToleranceSpeed2Modifiers(pModifH, pModifS);
ColorToleranceSpeed(2);
SetToleranceSpeed2Modifiers(0.42, 1.17);
FindColorsTolerance(TPA, 1719114, MMX1, MMY1, MMX2, MMY2, 7);
if (Length(TPA) > 0) then
begin
ATPA := SplitTPA(TPA, 5);
SortATPASize(ATPA, True);
for i := 0 to High(ATPA) do
begin
tempPoint := MiddleTPA(ATPA[i]);
if (Distance(tempPoint.x, tempPoint.y, MMCX, MMCY) < 20) then
Continue;
Mouse(tempPoint.x, tempPoint.y - 15, 5, 8, True);
Wait(250 + Random(150));
Flag;
ColorToleranceSpeed(pCTS);
SetToleranceSpeed2Modifiers(pModifH, pModifS);
Wait(1500 + Random(1500));
Exit;
end;
end;
ColorToleranceSpeed(pCTS);
SetToleranceSpeed2Modifiers(pModifH, pModifS);
end;

function doLog: Boolean;
var
x, y: Integer;
mark: LongInt;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
Result := LocateLog(x, y);
if (Result) then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
mark := GetSystemTime + 7000 + random(2000);
while (GetSystemTime < mark) and (CountColor(0, 8, 450, 245, 458) <> 255) do
begin
FindNormalRandoms;
MakeCompass('s');
Wait(Random(50));
end;
if (CountColor(0, 8, 450, 245, 458) = 255) then
Wait(500 + Random(300));
end;
end;

function doFence: Boolean;
var
i, x, y: Integer;
mark: LongInt;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
for i := 1 to 3 do
if (LocateFence(x, y, Point(MSCX, MSCY))) then
begin
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
mark := GetSystemTime + 4500 + random(1500);
while (GetSystemTime < mark) and (not InBlack) do
begin
FindNormalRandoms;
Wait(150);
end;
if (InBlack) then
Wait(1500 + Random(250));
Exit;
end else
Wait(Random(250));
end;

function doFence2: Boolean;
var
i, x, y: Integer;
mark: LongInt;
didSet: Boolean;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
didSet := False;
for i := 1 to 2 do
if (LocateFence(x, y, Point(0, MSCY))) then
begin
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
mark := GetSystemTime + 5500 + Random(1500);
while (GetSystemTime < mark) and (CountColor(0, 8, 450, 245, 458) <> 143) do
begin
if (not didSet) then
begin
SetAngle(True);
didSet := True;
end;
FindNormalRandoms;
Wait(Random(250));
end;
if (CountColor(0, 8, 450, 245, 458) = 143) then
if (not didSet) then
begin
SetAngle(True);
didSet := True;
end else
Wait(3000 + Random(1000));
Exit;
end else
Wait(Random(250));
end;

function doBranch: Boolean;
var
i, x, y: Integer;
mark: LongInt;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
for i := 1 to 3 do
if (LocateBranch(x, y, Point(MSCX, MSCY))) then
begin
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
mark := GetSystemTime + 5500 + random(500);
while (GetSystemTime < mark) and (CountColor(0, 8, 450, 245, 458) <> 158) do
begin
Wait(Random(50));
FindNormalRandoms;
end;
if (CountColor(0, 8, 450, 245, 458) = 158) then
Wait(1500 + Random(150));
Exit;
end else
Wait(Random(250));
end;

function doBranch2: Boolean;
var
x, y: Integer;
mark: LongInt;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
if (LocateBranch(x, y, Point(145, 135))) then
begin
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
ClickNorth(False);
mark := GetSystemTime + 4000 + random(2000);
while (GetSystemTime < mark) and (CountColor(0, 8, 450, 245, 458) <> 155) do
begin
FindNormalRandoms;
Wait(Random(50));
end;
if (CountColor(0, 8, 450, 245, 458) = 155) then
Wait(800 + Random(250));
Exit;
end else
Wait(Random(250));
end;

function doRope(nearUs: Boolean): Boolean;
var
x, y: Integer;
mark: LongInt;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
if (LocateRope(x, y, nearUs)) then
begin
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
mark := GetSystemTime + 5500 + Random(1500);
while (GetSystemTime < mark) and (CountColor(0, 8, 450, 245, 458) <> 125) do
begin
FindNormalRandoms;
Wait(Random(250));
end;
if (CountColor(0, 8, 450, 245, 458) = 125) then
begin
WriteLn('''Cannot reach!''');
Result := doRope(True);
Exit;
end;
Exit;
end else
Wait(Random(250));
end;

function doTube: Boolean;
var
i, x, y: Integer;
mark: LongInt;
begin
if (not LoggedIn) then
Exit;
FindNormalRandoms;
for i := 1 to 3 do
if (LocateTube(x, y)) then
begin
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
mark := GetSystemTime + 5500 + Random(1500);
while (GetSystemTime < mark) and (CountColor(0, 8, 450, 245, 458) <> 166) do
begin
Wait(Random(250));
FindNormalRandoms;
end;
if (CountColor(0, 8, 450, 245, 458) = 166) then
begin
WriteLn('''In use!''');
Result := doTube;
Exit;
end;
Exit;
end else
Wait(Random(250));
end;

function attempToRelocate: Boolean; // Not SUPER reliable... but the script doesn't FAIL often anyways. ;)
begin
Result := False;
if (InRange(CountColor(SRL_GetBlackBackground, MMX1, MMY1, MMX2, MMY2), 16000, 17000)) then
begin
if (doBranch) then
if (doRope(False)) then
if (doBranch2) then
if (doFence2) then
if (doTube) then
begin
Result := True;
Exit;
end else
Exit
else
Exit
else
Exit
else
Exit
else
Exit;
end else
if (InRange(CountColor(SRL_GetBlackBackground, MMX1, MMY1, MMX2, MMY2), 17000, 18000)) then
begin
if (doRope(False)) then
if (doBranch2) then
if (doFence2) then
if (doTube) then
begin
Result := True;
Exit;
end else
Exit
else
Exit
else
Exit
else
Exit;
end else
begin
locateToLog;
Result := True;
end;
end;

function numFormat(str: string): string;
var
i, h, count: Integer;
begin
h := Length(str);
for i := h downto 1 do
begin
if (str[i] = '.') then
begin
count := 0;
Result := '';
Continue;
end;
if (count >= 3) then
begin
Result := ',' + Result;
count := 0;
end;
Result := str[i] + Result;
Inc(count);
end;
end;

function gestimateEXPGained: string;
begin
Result := numFormat(FloatToStr(Players[CurrentPlayer].Integers[2] * 86.5));
end;

function msRuntime: LongInt;//useless. :D
begin
Result := PlayerWorked(CurrentPlayer);
end;

function expPerHour: string;
begin
Result := numFormat(FloatToStr(Round((Players[CurrentPlayer].Integers[2] * 86.5) * (1000 * 60 * 60) / msRuntime)));
end;

function TotalLaps: Integer;
var
i, h: Integer;
begin
Result := 0;
for i := 0 to h do
Result := Result + Players[i].Integers[2];
end;

function TotalEXP: Extended;
var
i, h: Integer;
begin
Result := 0;
for i := 0 to h do
Result := Result + (Players[i].Integers[2] * 86.5);
end;

procedure ProgressReport;
var
textArray: TStringArray;
i, h: Integer;
begin
textArray := [
'Running For: ' + TimeRunning,
'Laps Completed: ' + IntToStr(Players[CurrentPlayer].Integers[2]),
'EXP Gained: ~' + gestimateEXPGained,
'EXP/HR: ~' + expPerHour
];
{$IFDEF SMART}
DrawOnSMART(textArray, WHITE_TEXT);
{$ENDIF}
ClearDebug;
WriteLn('Running For: ' + TimeRunning);
WriteLn('Laps Completed: ' + IntToStr(TotalLaps));
WriteLn('Total EXP Gained: ' + FloatToStr(TotalEXP));
h := HowManyPlayers - 1;
for i := 0 to h do
begin
WriteLn('[' + Players[i].Name + '] ' + IntToStr(PlayerWorked(CurrentPlayer)));
WriteLn(' Laps: ' + IntToStr(Players[i].Integers[2]));
WriteLn(' Exp Gained: ' + FloatToStr(Players[i].Integers[2] * 86.5));
WriteLn(' Exp P/H: ' + numFormat(FloatToStr(Round((Players[i].Integers[2] * 86.5) * (1000 * 60 * 60) / PlayerWorked(i)))));
end;
end;

label
CourseStart;
begin
{$IFDEF SMART}
Smart_Server := 2;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
{$ENDIF}
SetupSRL;
DeclarePlayers;
ProgressReport;
repeat
if (not LoggedIn) then
begin
LogInPlayer;
SetAngle(True);
end;
PlayerStartTime := GetSystemTime;
repeat
CourseStart:
if (not doLog) then
begin
Wait(2500 + Random(1500));
if (not doLog) then
begin
locateToLog;
if (not doLog) then
if (not attempToRelocate) then
Logout
else
goto CourseStart;
end;
end;
if (not doFence) then
if (not attempToRelocate) then
Logout
else
goto CourseStart;
if (not doBranch) then
if (not attempToRelocate) then
Logout
else
goto CourseStart;
if (not doRope(False)) then
begin
if (InRange(CountColor(SRL_GetBlackBackground, MMX1, MMY1, MMX2, MMY2), 16000, 17000)) then
begin
if (doBranch) then
begin
if (not doRope(False)) then
begin
if (not attempToRelocate) then
Logout
else
goto CourseStart;
end;
end else
if (not attempToRelocate) then
Logout
else
goto CourseStart;
end else
if (not doRope(False)) then
if (not attempToRelocate) then
Logout
else
goto CourseStart;
end;
if (not doBranch2) then
if (not attempToRelocate) then
Logout
else
goto CourseStart;
if (not doFence2) then
if (not attempToRelocate) then
Logout
else
goto CourseStart;
if (not doTube) then
if (not attempToRelocate) then
Logout
else
goto CourseStart;
Inc(Players[CurrentPlayer].Integers[2]);
Inc(Players[CurrentPlayer].Integers[3]);
ProgressReport;
locateToLog;
if (Players[CurrentPlayer].Integers[3] > Players[CurrentPlayer].Integers[0]) then
Break;
if (Players[CurrentPlayer].Integers[2] > Players[CurrentPlayer].Integers[1]) then
Logout;
until not LoggedIn;
Players[CurrentPlayer].Integers[3] := 0;
NextPlayer(LoggedIn);
until AllPlayersInActive;
end.

Frement
12-27-2010, 07:26 AM
I can only say one thing, WOW! Very nice second script.

Train
12-27-2010, 07:27 AM
I can only say one thing, WOW! Very nice second script.

Thank you very much!

Happy Holidays!
~ Train

mikev
12-27-2010, 07:29 AM
dedication!
I must try this out

Train
12-27-2010, 07:30 AM
dedication!
I must try this out

Please do! Give me a few progress reports. :D
Pushed out v0.2, it should fix a few misclicks caused by lag. Try it! :D

RISK
12-27-2010, 07:40 AM
Your password is in your script. I have PM'd you a changed one.

Train
12-27-2010, 07:41 AM
Your password is in your script. I have PM'd you a changed one.

Oh, thanks.

Frement
12-27-2010, 07:43 AM
Oh, thanks.

This is the reason why SRL is the best community ;)

Train
12-27-2010, 07:44 AM
This is the reason why SRL is the best community ;)

I was nervous there for a second, haha. Thanks everyone!

Frement
12-27-2010, 07:54 AM
Yeah I remember the first time too when I forgot my information on a script, my experiences weren't as pleasant as yours.

Train
12-27-2010, 07:55 AM
Yeah I remember the first time too when I forgot my information on a script, my experiences weren't as pleasant as yours.

...well, I'm sorry to hear that.. :\

Huthaifah
12-27-2010, 09:03 AM
Running it now hopefully I will get ya a nice proggie :D.

Train
12-27-2010, 03:30 PM
Great! :)

Huthaifah
12-27-2010, 04:38 PM
Running For: 5 Hours, 13 Minutes and 52 Seconds
Laps Completed: 340
Total EXP Gained: 29410
[---------] 18830391
Laps: 340
Exp Gained: 29410
Exp P/H: 5,623

My first reflection. Hope you like it. 1-37 agility in 5 hours, love you man, (not in a gay way).

Train
12-28-2010, 12:32 AM
Running For: 5 Hours, 13 Minutes and 52 Seconds
Laps Completed: 340
Total EXP Gained: 29410
[---------] 18830391
Laps: 340
Exp Gained: 29410
Exp P/H: 5,623

My first reflection. Hope you like it. 1-37 agility in 5 hours, love you man, (not in a gay way).

This script doesn't use reflection, it's 100% color.
Unless you meant first impression, if so, cool! Thanks, added to main page. :D

Huthaifah
12-28-2010, 03:49 AM
Your welcome, I'll do anything that will make a fellow community member happy. Anytime bro, any time.

Train
12-28-2010, 04:17 AM
Your welcome, I'll do anything that will make a fellow community member happy. Anytime bro, any time.

Just wish it was more popular. :p

Huthaifah
12-28-2010, 05:17 AM
Dude, keep it on the front page, like bumped, and it'll become popular. I'm going to use this bot to get 70 agility :D. Don't worry about popularness, as long as it is a good bot, and that you know it's been done pro'ly.

Train
12-28-2010, 05:19 AM
Dude, keep it on the front page, like bumped, and it'll become popular. I'm going to use this bot to get 70 agility :D. Don't worry about popularness, as long as it is a good bot, and that you know it's been done pro'ly.

70?! Use barbarian by then.

Huthaifah
12-28-2010, 06:11 AM
Do you have a barbarian?

Mike408
12-28-2010, 07:26 AM
im using this now and i notice theres alot of erratic mouse movements? is this a color guided script?
Good script though. Going to use it for a few hours.

i luffs yeww
12-28-2010, 07:41 AM
This is a color script.

Mike408
12-28-2010, 07:41 AM
Doesn't take breaks. Assumes there are multiple players and logs out and logs back in the same account after set amount of laps.

Train
12-28-2010, 02:49 PM
Doesn't take breaks. Assumes there are multiple players and logs out and logs back in the same account after set amount of laps.

Why do you need breaks? ;)
Logging out and in will prevent a crap load of randoms.
If you don't want it to logout/in, make the laps per login the same as how many you want to do.

Of course it's color, reflection is no fun!

@Erratic mouse movements:
Try a different world.
ALSO, make sure your Brightness is on MAX.

Frement
12-28-2010, 02:53 PM
Bought members today, so I'll be testing when I get some time ;)

Train
12-28-2010, 02:55 PM
Bought members today, so I'll be testing when I get some time ;)

Yippee!

Becks
12-28-2010, 05:29 PM
Train.. you are the man. Keep up the good work. Have you applied for SRL Members?! :)

P3rs0nal1ty
12-28-2010, 09:20 PM
Will be trying it out later (: gotta do experiments quest real fast. btw how do people keep stats of all their scripts and how long theyve ran and the xp theyve gained? ive seen a couple people with cool looking proggie type things in their posts.

Train
12-28-2010, 11:46 PM
Train.. you are the man. Keep up the good work. Have you applied for SRL Members?! :)
No, I haven't applied for SRL members, I don't think this script is worthy enough.


Will be trying it out later (: gotta do experiments quest real fast. btw how do people keep stats of all their scripts and how long theyve ran and the xp theyve gained? ive seen a couple people with cool looking proggie type things in their posts.
Wat?

Huthaifah
12-28-2010, 11:49 PM
Dude, use any one of your scripts to apply and you got a vote from me, if I can vote. Dude, don't worry your bot's are A okay.

Train
12-28-2010, 11:59 PM
Dude, use any one of your scripts to apply and you got a vote from me, if I can vote. Dude, don't worry your bot's are A okay.

I'm pretty sure you have to be a SRL Member to vote for me to be a SRL Member.

But thanks anyways. ;)

Becks
12-29-2010, 12:01 AM
I'm pretty sure you have to be a SRL Member to vote for me to be a SRL Member.

But thanks anyways. ;)

Correct.

Train
12-29-2010, 12:08 AM
Correct.

Heh, I need a new script idea. :p

Frement
12-29-2010, 12:12 AM
Heh, I need a new script idea. :p

Monk Killer, heal from monks, no need for food.

Train
12-29-2010, 12:18 AM
Monk Killer, heal from monks, no need for food.

I was thinking along the lines of a Soul Wars bot (color), but I suppose I can make that quickly. :D

Becks
12-29-2010, 02:40 AM
I was thinking along the lines of a Soul Wars bot (color), but I suppose I can make that quickly. :D

Herb cleaner :)

Frement
12-29-2010, 02:49 AM
Well, now that we turn this into request topic, a fletcher would be nice (with all options, make it as extensive as possible).

Her0n
12-29-2010, 02:57 AM
Monk Killer, heal from monks, no need for food.

This this this!
My defense pure needs it! :p

Train
12-29-2010, 03:27 PM
Omg, on topic plz. Someone try it. ;)

Her0n
12-29-2010, 06:53 PM
I'll be sure to!

Train
12-29-2010, 07:17 PM
I'll be sure to!

:).

Frement
12-29-2010, 07:39 PM
It's currently running, I noticed it said "Cannot Reach" stuff, but it still was going pretty well, I don't have time to go over the script to see if thats a bug or a failsafe, but still very nice, runs pretty smoothly, the rope finding could use some tweaking (It takes the gnomes shoulder as the rope, so it hovers that, some color tweaking or something should fix it I'm sure). Other then those, very nice.


Running For: 13 Minutes and 0 Seconds
Laps Completed: 14
Total EXP Gained: 1211

Train
12-29-2010, 07:45 PM
It's currently running, I noticed it said "Cannot Reach" stuff, but it still was going pretty well, I don't have time to go over the script to see if thats a bug or a failsafe, but still very nice, runs pretty smoothly, the rope finding could use some tweaking (It takes the gnomes shoulder as the rope, so it hovers that, some color tweaking or something should fix it I'm sure). Other then those, very nice.


Running For: 13 Minutes and 0 Seconds
Laps Completed: 14
Total EXP Gained: 1211

If it clicks too far on the rope, the chat will say "Cannot Reach", and will attempt to click the rope again.

Frement
12-29-2010, 07:47 PM
It seems that I spoke too soon, this is Simbas debug box:

Running For: 16 Minutes and 4 Seconds
Laps Completed: 17
Total EXP Gained: 1470.5
[************] 941091
Laps: 17
Exp Gained: 1470.5
Exp P/H: 5,625
NextPlayer
SwitchToPlayer(PlayerNo: 0, Active: False);
1
2
Successfully executed.


It had just come out of the pipe, suddenly changed players? Laps set to 100 and total to 100.

Train
12-29-2010, 08:11 PM
It seems that I spoke too soon, this is Simbas debug box:

Running For: 16 Minutes and 4 Seconds
Laps Completed: 17
Total EXP Gained: 1470.5
[************] 941091
Laps: 17
Exp Gained: 1470.5
Exp P/H: 5,625
NextPlayer
SwitchToPlayer(PlayerNo: 0, Active: False);
1
2
Successfully executed.


It had just come out of the pipe, suddenly changed players? Laps set to 100 and total to 100.

Did the script logout after it exited the pipe?
Edit: did it attempt to click back to the main log?

Frement
12-29-2010, 08:29 PM
Did the script logout after it exited the pipe?
Edit: did it attempt to click back to the main log?

It just stood there.

Train
12-29-2010, 08:44 PM
It just stood there.

So locateToLog; failed...
Could you try a different world and see if it happens again?

Frement
12-29-2010, 09:28 PM
Same world, had a flawless run:

Running For: 1 Hours, 31 Minutes and 35 Seconds
Laps Completed: 102
Total EXP Gained: 8823
[***********'] 5458959
Laps: 102
Exp Gained: 8823
Exp P/H: 5,818

Becks
12-29-2010, 10:35 PM
Same world, had a flawless run:

Running For: 1 Hours, 31 Minutes and 35 Seconds
Laps Completed: 102
Total EXP Gained: 8823
[***********'] 5458959
Laps: 102
Exp Gained: 8823
Exp P/H: 5,818

Maybe just some awkward lagg o.O I will also be testing soon.

Frement
12-29-2010, 10:43 PM
Oh yeah, I was downloading at that time, might have caused that.

Train
12-30-2010, 12:00 AM
Hm.. that's still funny... it shouldn't of just..failed...

Huthaifah
12-30-2010, 12:09 AM
Train, I told you not to worry about popularity, now look, your script has 3 pages :D. It's because of the good work you put into your scripts.

Train
12-30-2010, 01:08 AM
Train, I told you not to worry about popularity, now look, your script has 3 pages :D. It's because of the good work you put into your scripts.

:p..

Her0n
12-30-2010, 02:27 AM
Running For: 2 Hours, 57 Minutes and 25 Seconds
Laps Completed: 156
Total EXP Gained: 13494
[awsumsauxe] 10615790
Laps: 156
Exp Gained: 13494
Exp P/H: 4,576
Very good!

P3rs0nal1ty
12-30-2010, 03:40 AM
Will be trying it out later (: gotta do experiments quest real fast. btw how do people keep stats of all their scripts and how long theyve ran and the xp theyve gained? ive seen a couple people with cool looking proggie type things in their posts.

LAWL i was so high yesterday.. anyways, ran for 2.5 hours, 5.2k xp per hour, 15k xp total. (: nice script. 30 agi in 2.5 hours. (: keep up the good work train.

Train
12-30-2010, 03:49 AM
LAWL i was so high yesterday.. anyways, ran for 2.5 hours, 5.2k xp per hour, 15k xp total. (: nice script. 30 agi in 2.5 hours. (: keep up the good work train.

progress report please?

Frement
12-30-2010, 04:15 AM
Running For: 40 Minutes and 38 Seconds
Laps Completed: 47
Total EXP Gained: 4065.5
[************] 2414053
Laps: 47
Exp Gained: 4065.5
Exp P/H: 6,063

46-48 with the script. You should make one for Agility Pyramid. Level requirement is 30, isn't it better exp also?

Huthaifah
12-30-2010, 04:20 AM
Running For: 2 Hours, 57 Minutes and 25 Seconds
Laps Completed: 156
Total EXP Gained: 13494
[Zezima] 10615790
Laps: 156
Exp Gained: 13494
Exp P/H: 4,576
Very good!
You might want to remove your username just incase.

Her0n
12-30-2010, 04:34 AM
You might want to remove your username just incase.

Take it out of the quote then!

P3rs0nal1ty
12-30-2010, 04:38 AM
progress report please?

i already closed the script. where do i find the proggie? sorry im not new, but im a noob cuz i just came back (;

Frement
12-30-2010, 06:09 AM
Running For: 1 Hours, 46 Minutes and 58 Seconds
Laps Completed: 123
Total EXP Gained: 10639.5
[************] 6417303
Laps: 123
Exp Gained: 10639.5
Exp P/H: 5,969

Train
12-30-2010, 05:54 PM
Sweeeeeeeeeet progress reports dudes. :D
Agility pyramid? I was thinking like the Brimhaven Agility Arena, if anything.

Huthaifah
12-30-2010, 05:57 PM
Take it out of the quote then!
Oh, sorry didn't realize, will do right now.

Frement
12-30-2010, 05:58 PM
Sweeeeeeeeeet progress reports dudes. :D
Agility pyramid? I was thinking like the Brimhaven Agility Arena, if anything.

Well, I have 49 agility, just make something that I can use and you will get progress reports :)

wondersueak
12-31-2010, 06:59 AM
Yeah I'd definitely use an Agility Pyramid one. I will use this since it's currently the only working agility script.

If you need a testing account for that I can provide one. If you were to make one. Just saying for future reference. ;)

Amazing script! btw.

Train
12-31-2010, 09:49 PM
Yeah I'd definitely use an Agility Pyramid one. I will use this since it's currently the only working agility script.

If you need a testing account for that I can provide one. If you were to make one. Just saying for future reference. ;)

Amazing script! btw.

Thanks.

Becks
01-03-2011, 06:14 AM
Running For: 6 Hours, 9 Minutes and 18 Seconds
Laps Completed: 391
Total EXP Gained: 33821.5
[xxx] 21915187
Laps: 391
Exp Gained: 33821.5
Exp P/H: 5,556

stopped myself ;)

Train
01-03-2011, 10:15 PM
Running For: 6 Hours, 9 Minutes and 18 Seconds
Laps Completed: 391
Total EXP Gained: 33821.5
[xxx] 21915187
Laps: 391
Exp Gained: 33821.5
Exp P/H: 5,556

stopped myself ;)

s00 3pic.

epic risk
01-21-2011, 04:54 AM
[Hint] (315:3): Variable 'H' never used at line 314
[Error] (1:1): Unexpected end of file at line 0
Compiling failed.

i am getting this every time i try to run this script idk what to do :S

Train
01-21-2011, 09:25 PM
..did you copy the script into Simba?

chitin
02-18-2011, 08:19 AM
yay! now how bout pyramid? itll be a bit harder due to damage + the water problem but...i usually take like 8 waters(4) and 20 cakes and its all good. alond with desert robes and a regen. dont got the tiara sadly...

Frement
02-18-2011, 09:59 AM
yay! now how bout pyramid? itll be a bit harder due to damage + the water problem but...i usually take like 8 waters(4) and 20 cakes and its all good. alond with desert robes and a regen. dont got the tiara sadly...

Enchanted water tiara should take care of the water problem? I read somewhere that such thing exists. Does resting restore hitpoints? If so, then resting should be fine, if not, then just walk to AK bank and get food when out, and repeat.

Train
02-19-2011, 06:16 AM
Does this script even still work? I have no idea.

Wanted
02-19-2011, 07:22 AM
I used it about a week ago to get 35 agility, then marpis's script get 57 agility.

Train
02-19-2011, 06:01 PM
I used it about a week ago to get 35 agility, then marpis's script get 57 agility.

I"ll take that as a yes. Thanks. :)

Icyx
04-02-2011, 07:14 PM
Why did the script maker get banned?
Is this script even safe? o.O *worried*

Yago
04-02-2011, 07:18 PM
Heres a link:

http://villavu.com/forum/showthread.php?t=63327

And the reasons behind it:

http://villavu.com/forum/showthread.php?t=63329

And the script is probably safe/works. I dont know if it will for long though. Or the rules behind taking/ editting/making it your own/ in relations to the scripts of banned users.

Icyx
04-02-2011, 07:23 PM
Heres a link:

http://villavu.com/forum/showthread.php?t=63327

And the reasons behind it:

http://villavu.com/forum/showthread.php?t=63329

And the script is probably safe/works. I dont know if it will for long though. Or the rules behind taking/ editting/making it your own/ in relations to the scripts of banned users.

Oh, thanks. I could of easily found that myself actually :blushing:
The script seems to be working so far. *yay lvl 2 agility*

Yago
04-02-2011, 07:25 PM
No problem. If runescape is updated or something then the script might fail, but for now it should work as well as it was built to...

King of the Nites
04-02-2011, 07:46 PM
The script is definitely safe. If you want to get in touch with the script owner, PM me and I'll give you his MSN. I'm sure if you asked him to, he would update the script if it is needed.

~King of the Nites

Icyx
04-02-2011, 08:32 PM
The script is definitely safe. If you want to get in touch with the script owner, PM me and I'll give you his MSN. I'm sure if you asked him to, he would update the script if it is needed.

~King of the Nites

Well it is a bit buggy actually, but don't worry about it! :)
I'll get 35 agility manually :)
Thanks though.

Juggo
05-01-2011, 06:04 AM
I will be posting a proggy when I wake up about this bot, showing you how effective it still is!
40 mins, so far, will update when I wake up!