For me it get's stuck at the first net/fence and the Hole after the pole.
For me it get's stuck at the first net/fence and the Hole after the pole.
Yeah I'm getting that occasionally also, going to watch it for a while and see if i can see whats happening.
Looks good. Will ask my friend to download it after he's done botting 99 att and def for me![]()
/////////////TotalGnomes V1.2/////////////
Laps Completed: 39(76 Laps/Hour)
Exp gained: 28275 exp(55200 Exp/Hour)
Running for: 00:30:44
/////////////////////////////////////////
(\__/)
( O.o )This is Bunny.
( > < )Copy Bunny into your signature to help him on his way to world domination.
gonna give v1.25 a shot
brb with a proggy
the bot couldnt find the barrier to jump in
but 10 seconds later, the TPA thing kicked in and it was looking for the barrier, and found it, and clicked it
everything else seems to be fine
edit: couldnt find branch #2
tpa kicked in, and it was able to find it and climbed up, your fix works well lol
Ill be running this for a hour or more and post a longer proggy
the progress report is fine for me (using skoll boots btw)
/////////////TotalGnomes V1.25/////////////
Laps Completed: 5(46 Laps/Hour)
Exp gained: 7250 exp(67968 Exp/Hour)
Running for: 00:06:24
/////////////////////////////////////////
looks great but misclicks logs sometimes, you needs to get rid of that dtm and use a tpa
Currently Working on: Runite Miner W/ World Hop (Fally) 80% complete
Next: Advanced Gnome Agility Course!
longest i could run for was about 25 minutes, it got stuck at the barrier and couldnt use the TPA backup to find it, and then logs out
Couldnt find barrier 1 times, trying TPA Backup.
Couldnt find barrier 1 times, trying TPA Backup.
Couldnt find TPA, well doesnt this suck.
Couldnt find barrier 1 times, trying TPA Backup.
Couldnt find TPA, well doesnt this suck.
Couldnt find barrier. Logging out.
/////////////TotalGnomes V1.25/////////////
Laps Completed: 30(69 Laps/Hour)
Exp gained: 43725 exp(100839 Exp/Hour)
Running for: 00:26:01
/////////////////////////////////////////
Successfully executed.
![]()
Hm. I'll work on it some more when I get back from class.
/////////////TotalGnomes V1.25/////////////
Laps Completed: 144(74 Laps/Hour)
Exp gained: 104400 exp(54312 Exp/Hour)
Running for: 01:55:20
/////////////////////////////////////////
Got that over night. Failed to find the log before logging out.
Actually I just logged in and it got a random, so prolly coulda gone longer.
Working on it now. Made some extra DTMs and improving the color finding of the TPAs.
Found out why its failing to find the TPAs. If it finds it once and clicks but doesnt red click it turns the camera to a different angle so it cant find it. Changing it now to set camera angles before it.
Fixed in the new version but failsafes are slower because they have to switch camera angle, when the yellow/redclick functions are fixed it will be much better. Going to run the new version for a while to see if any other bugs appear.
Last edited by Total; 04-03-2012 at 06:21 PM.
alright thanks
When I was running your script, I saw that when it clicks the bars to swing and hold on to, it either walks to the right and goes back, or walks to the left and goes back and then runs towards the bar depending on where it clicked on the bar. That possibly could slow down the xp/hour, so I was wondering if
you have any thoughts of adjusting it to make it faster or so
If its confusing you, ill post a video showing you what i mean
http://www.youtube.com/watch?v=iXbmREcxJUU
watch the whole thing, or go to 0:30 to see what i mean
Last edited by Jake; 04-03-2012 at 06:43 PM.
Yeah, I don't think its possible to replicate it 100%. I think when you click the pole u go to a random lane, but clicking in the center makes it faster regardless because you take less steps while walking.
I don't think I can speed it up anymore to click faster after clicking on the ground, but maybe there is a way. I see that sometimes it walks into another lane, but its not the script clicking anything, it just does that by itself.The second obstacle which can be performed more quickly with an extra click is the pole swing. This is achieved by clicking to run to the middle jump spot (the middle of the 3 possible places you can jump from on the pole swing), then immediately clicking the pole swing.
I guess I could increase mouse speed, will have to try it out after this version is out.
Just saw it fail finding the pole twice and both times it found the TPA.at 30 mins now.
Last edited by Total; 04-03-2012 at 07:02 PM.
how about the barriers?
and i dont know if you wanted a paint or not, but i had some time to myself, and just made this. feel free to use/edit it in anyway youd like
![]()
Hehe, I was about to come edit and add that it just did the barrier, even when out of position(kinda like that pic u had, but 1 square west of it).
And thats awesome. I will have to learn how to put paints on the screen haha. Thanks.
/////////////TotalGnomes V1.3/////////////
Laps Completed: 74(73 Laps/Hour)
Exp gained: 53650 exp(52944 Exp/Hour)
Running for: 01:00:48
/////////////////////////////////////////
Seen it do most failsafes. Might release soon.
Last edited by Total; 04-03-2012 at 07:46 PM.
sounds good![]()
V1.3 released! Hope to see some long progress reports!
Figures right when I release it can't find the pole.I think it has to do with one of the waiting times. Will rerelease v1.3 soon.
Last edited by Total; 04-03-2012 at 08:29 PM.
ty of updating it really fast! when i will get 88 with ape atoll script i will test it out
+rep
Alright reuploaded the quick fix. Should be ok now.
Just saw it solve a random and continue like normal. Hopefully that wasnt a one time thing.
Last edited by Total; 04-03-2012 at 08:53 PM.
v 1.3 logged me out, couldnt find the net to climb. tpa didnt work either, it clicked outside of the course. But I was lagging a bit, so that could be a factor, not sure
The bot usually rotates the camera two times before or while crossing over the log, is that supposed to happen?
![]()
Wow. How did it manage to click over there...hmmmm. I have it so that any time it tries to use the failsafe it resets the camera angle back to what it needs to find. So for the log, it starts out pointing north at high angle, then once it clicks on the log it turns south and low angle. If it doesnt gain exp in 10 seconds or so it will reset the angle back to north/high angle and look for the log again. I really have no idea how it clicked out there. O.O
So it usually spins the camera twice to get to the south position on the compass? Hm...that might be part of the problem. Hasn't done that for me yet dont think.
Last edited by Total; 04-03-2012 at 09:02 PM.
its most likely my lag then, Ill switch worlds and try to get a lower fps
Ohhh I see why. There was an error in one of my set angles. I had it doing a 180 instead of setting the camera to low on the climb obstacle. xD Reuploaded fix.
Heres my script added healing (supports sharks, lobs, etc., just have in inv.)
Updated log dtm so it doesnt misclick ever, changed wait time so if u fail it doesn't log you out but keeps continuing.
Ask me to remove if u want just trying to help.
Simba Code:program TotalGnomes;
{$i srl/srl.simba}
Const
Version = 1.25;
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
Name := ''; // Username
Pass := ''; // Password
Pin := ''; // Pin
BoxRewards := ['Coins', 'oins'];
Active := True; // Set to true if you want to use Player 0
end;
end;
var
LogDTM, ClimbDTM, StartDTM, XPGained, BranchDTM, Branch2DTM, Branch2BackupDTM, Branch2SpotDTM, RunWallDTM, PoleDTM, BarrierDTM, PoleSpotDTM, BarrierSpotDTM, Runs, RunsPerHour, StartXP, XPPerHour : Integer;
procedure LoadDTMs;
begin
StartDTM := DTMFromString('mggAAAHicY2NgYIhkYmDIAeIUIPYEYj8gLgDiEKBcPBDHAnE6EGcAsSUQBzpqMcQ5yzBEeasytGdqgNlqwQIM/EA5bJgRB4YAABERCVw=');
LogDTM := DTMFromString('mggAAAHicY2NgYFBhZWBQB2IJINYDYh0glgTiOYwMDL1APAWIJwDxUiBeCMTmOvIMtsaaDEn+5gz2xioMwU76DJE+NgxcQLOwYUYcGAIA4B8JFA==');
ClimbDTM := DTMFromString('mrAAAAHic42BgYJBjZGC4BaRjgLQMEP8Hsq2B9FcgzgOyLYDYCoqVgFgHiLWBuBmIHwFxQ04YHAfb6zH42GqDsbm+KkOorycDP1ANPsxIAMMAAFrMDok=');
BranchDTM := DTMFromString('mbQAAAHicY2VgYFBjZGBQB2IdIFYFYikgDgSKe0JxHBAHAXGSvzlDQqADQ1qQFUOohyVDUXYyAz9QHB0zYsFgAADeKgeH');
Branch2DTM := DTMFromString('mwQAAAHic42RgYNBnZGAwAGJdILYGYmUgdgFieyBWB+JyoJoaIG4D4kIgbgbiaiBuBeIkIE4HYgEgTg20ZAjztGKIdDdi8HfWZfB11GZIzFEEsk0ZDDUVGdwczBj4geoIYUYiMBwAAGNLDXo=');
Branch2BackupDTM := DTMFromString('mbQAAAHicY2VgYDBkZGBQBGIrINYD4gggXg0UnwnE14B4KxBfAOLUQEsGf2ddhp7mSoZIb2uG1CxFBn6gODpmxILBAACkrAoR');
Branch2SpotDTM := DTMFromString('mggAAAHicY2NgYGBkZGDQAWJ1IFYAYlYglgGKdwJxAxBnAXEiEF8C4jAgVpUXZYj0sWFI8DVjMNdXZcgKtWGY1FnPwA+Uw4YZcWAIAAC/Mgk6');
RunWallDTM := DTMFromString('mbQAAAHicY2VgYJAGYmEgVgZiBSB2AmJ/ILaF0glAvACI21tLGDKCdRm8bRQZnExkGKrTXRj4geLomBELBgMA7LgHrA==');
PoleSpotDTM := DTMFromString('mbQAAAHicY2VgYKhlZGDoAWJfIE4H8puA9E4gPR2Ke4CYCyhWkerCEDSpi8G/t5XBREuWwSYrhYEfKIeOGbFgMAAA5PkKjA==');
PoleDTM := DTMFromString('mggAAAHicY2NgYHgBxIKMDAyKQPwIyH4IxNeAWASIZaBYEoh5gFgIiB3tLBjWTSkF4/jSdjD29XRm4AfKYcOMODAEAADxcgxT');
BarrierDTM := DTMFromString('mlwAAAHicY2dgYLgPxI+A+A6UfRqIP0HZFUBcDsXpUBokxsfIwOBmo8+waXo5GEuL8DNEetswhHtZMSTFhjLwA9Xgwox4MBQAALyOEJk=');
BarrierSpotDTM := DTMFromString('mWAAAAHicY2FgYNgGxGuAeC8Q7wDiSUDcAMT1QCzKyMBgrifPsHFaORjHRQYy8APFkTEjGgYBAC+uCcs=');
end;
procedure Free;
begin
FreeDTM(StartDTM);
FreeDTM(LogDTM);
FreeDTM(ClimbDTM);
FreeDTM(BranchDTM);
FreeDTM(Branch2DTM);
FreeDTM(RunWallDTM);
FreeDTM(PoleDTM);
FreeDTM(BarrierDTM);
FreeDTM(Branch2SpotDTM);
FreeDTM(PoleSpotDTM);
FreeDTM(BarrierSpotDTM);
FreeDTM(Branch2BackupDTM);
end;
procedure Proggy;
begin
XPGained := (GetXPBarTotal - StartXP);
XPPerhour :=(3600*(XPGained))/((GetTimeRunning/1000));
RunsPerHour := (3600*(Runs))/((GetTimeRunning/1000));
Writeln('/////////////TotalGnomes V' + ToStr(Version) + '/////////////');
Writeln('Laps Completed: ' + ToStr(Runs) + '(' + ToStr(RunsPerHour) + ' Laps/Hour)');
Writeln('Exp gained: ' + ToStr(XPGained) + ' exp' + '(' + ToStr(XPPerHour) + ' Exp/Hour)');
Writeln('Running for: ' + MsToTime(GetTimeRunning, Time_Bare));
Writeln('/////////////////////////////////////////');
end;
function FindTPAs(var x, y : Integer) : Boolean;
var
a, Colors, Tol : Integer;
TPA : TPointArray;
ATPA : T2DPointArray;
MP, StartPoint : TPoint;
tmpCTS : Integer;
Box : TBox;
Uptexts : String;
HMod, SMod : Extended;
begin
if(not(LoggedIn))then Exit;
Case Players[CurrentPlayer].Loc of
'Log' : begin HMod := 0.11; SMod := 0.68; Colors := 2899016; StartPoint := Point(260, 215); Tol := 7; end;
'Net' : begin HMod := 0.20; SMod := 0.19; Colors := 5663872; StartPoint := Point(280, 60); Tol := 2; end;
'Branch1' : begin HMod := 0.08; SMod := 2.18; Colors := 3755100; StartPoint := Point(250, 120); Tol := 2; end;
'Branch2' : begin HMod := 0.39 SMod := 0.38; Colors := 3624802; StartPoint := Point(307, 124); Tol := 1; end;
'Wall' : begin HMod := 0.13; SMod := 0.19; Colors := 7702409; StartPoint := Point(51, 56); Tol := 5; end;
'Pole' : begin HMod := 0.76; SMod := 0.41; Colors := 2829615; StartPoint := Point(230, 20); Tol := 11; end;
'Barrier' : begin HMod := 0.15; SMod := 0.70; Colors := 7837617; StartPoint := Point(MSCX, MSCY); Tol := 2; end;
end;
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorspeed2Modifiers(HMod, SMod);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, Colors, MSX1, MSY1, MSX2, MSY2, Tol);
SortTPAFrom(TPA, StartPoint);
ATPA := TPAtoATPAEx(TPA, 10, 10);
for a := 0 to High(ATPA) do
begin
MP := MiddleTPA(ATPA[a]);
MMouse(MP.X, MP.Y, 4, 4);
case Players[CurrentPlayer].Loc of
'Log' : Uptexts := 'balance';
'Net' : Uptexts := 'Climb';
'Branch1' : Uptexts := 'Tree';
'Branch2' : Uptexts := 'Tree';
'Wall' : Uptexts := 'across';
'Pole' : Uptexts := 'Pole';
'Barrier' : Uptexts := 'over';
end;
if WaitUpTextMulti([Uptexts], 750) then
begin
GetMousePos(x, y);
ClickMouse2(mouse_left);
Result := True;
{$IFDEF SMART}
SMART_ClearCanvas;
{$ENDIF}
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
end;
function FailsafeTPAs : Boolean;
var
i, x, y, ObsTimer, CurrentXP, Angle, Time : Integer;
Uptexts, CompassDir : String;
begin
CurrentXP := GetXPBarTotal;
case Players[CurrentPlayer].Loc of
'Log' : begin Uptexts := 'log'; CompassDir := 's'; Angle := 1; Time := 10000; end;
'Net' : begin Uptexts := 'net'; CompassDir := 's'; Angle := 0; Time := 5000; end;
'Branch1' : begin Uptexts := 'branch #1'; CompassDir := 's'; Angle := 0; Time := 5000; end;
'Branch2' : begin Uptexts := 'branch #2'; CompassDir := 's'; Angle := 0; Time := 5000; end;
'Wall' : begin Uptexts := 'wall'; CompassDir := 'n'; Angle := 1; Time := 10000; end;
'Pole' : begin Uptexts := 'pole'; CompassDir := 'n'; Angle := 0; Time := 15000; end;
'Barrier' : begin Uptexts := 'barrier'; CompassDir := 'n'; Angle := 0; Time := 10000 end;
end;
Writeln('Couldnt find ' + Uptexts + ' ' + ToStr(i + 1) + ' times, trying TPA Backup.');
if FindTPAs(x, y) then
begin
MarkTime(ObsTimer);
MakeCompass(CompassDir);
SetAngle(Angle);
repeat
Wait(200);
Until (CurrentXP <> GetXPBarTotal) or (TimeFromMark(ObsTimer) > Time);
if TimeFromMark(ObsTimer) > Time then
begin
Result := False;
end else
Result := True;
Exit;
end else
begin
Result := False;
Writeln('Couldnt find TPA, well doesnt this suck.');
end;
end;
Procedure HealPlayer;
var
c, T, i:Integer;
RunDir: String;
begin
if (HPPercent < 50) and LoggedIn then
begin
if not InvEmpty then
for c := 0 to 1 do
begin
if (c > 0) then//in case uptext fails
MakeCompass(rs_GetCompassAngleDegrees+60+random(50));
for i := 1 to 28 do //Begin food eating proc
if ExistsItem(i) then
begin
MMouseItem(i);
if WaitUpTextMulti(['Eat', 'obster', 'onkfish', 'hark'], 400) then
begin
ClickMouse2(False);
if WaitOption('Eat', 400) then
begin
t := GetSystemTime;
while ExistsItem(i) and ((GetSystemTime-t) < 2000) do
wait(20);
if not ExistsItem(i) then
if (HPPercent > 60) then
Exit;
end;
end;
end;//End food eating
end;
if (not LoggedIn) or (HPPercent > 50) then
Exit;
end;
end;
procedure ClickLog;
var
x, y, i, CurrentXP, ObsTimer : Integer;
aFound : Extended;
begin
if(Not(LoggedIn))then Exit;
if(Not(FindNormalRandoms))then
CurrentXP := GetXPBarTotal;
Players[CurrentPlayer].Loc := 'Log';
for i := 0 to 2 do
begin
if FindDTMRotated(LogDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
MMouse(x, y, 2, 2);
if WaitUpText('across', 2000) then
begin
ClickMouse2(mouse_left);
MarkTime(ObsTimer);
MakeCompass('s');
SetAngle(1);
repeat
Wait(200);
until (CurrentXP <> GetXPBarTotal) or (TimeFromMark(ObsTimer) > 10000);
if TimeFromMark(ObsTimer) > 10000 then
begin
Continue;
end else
Exit;
end else
if FailsafeTPAs then
Exit;
end else
if FailsafeTPAs then
Exit;
end;
if i = 3 then
Writeln('Couldnt find log. Logging out.');
Proggy;
Logout;
TerminateScript;
end;
procedure Climb;
var
x, y, i, CurrentXP, ObsTimer : Integer;
aFound : Extended;
begin
if(Not(LoggedIn))then Exit;
if(Not(FindNormalRandoms))then
CurrentXP := GetXPBarTotal;
Players[CurrentPlayer].Loc := 'Net';
for i := 0 to 2 do
begin
if FindDTMRotated(ClimbDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
MMouse(x, y, 2, 2);
if WaitUpText('net', 2000) then
begin
ClickMouse2(mouse_left);
MarkTime(ObsTimer);
SetAngle(0);
repeat
Wait(200);
until (CurrentXP <> GetXPBarTotal) or (TimeFromMark(ObsTimer) > 10000);
if TimeFromMark(ObsTimer) > 10000 then
begin
Continue;
end else
Wait(500);
Exit;
end else
if FailsafeTPAs then
Exit;
end else
if FailsafeTPAs then
Exit;
end;
if i = 3 then
Writeln('Couldnt find net. Logging out.');
Proggy;
Logout;
TerminateScript;
end;
procedure Branch1;
var
x, y, i, CurrentXP, ObsTimer : Integer;
aFound : Extended;
begin
if(Not(LoggedIn))then Exit;
if(Not(FindNormalRandoms))then
CurrentXP := GetXPBarTotal;
Players[CurrentPlayer].Loc := 'Branch1';
for i := 0 to 2 do
begin
if FindDTMRotated(BranchDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
MMouse(x, y, 2, 2);
if WaitUpText('branch', 2000) then
begin
ClickMouse2(mouse_left);
MarkTime(ObsTimer);
repeat
Wait(200);
until (CurrentXP <> GetXPBarTotal) or (TimeFromMark(ObsTimer) > 10000);
if TimeFromMark(ObsTimer) > 10000 then
begin
Continue;
end else
Wait(500);
Exit;
end else
begin
Wait(500);
if FailsafeTPAs then
Exit;
end;
end else
begin
Wait(500);
if FailsafeTPAs then
Exit;
end;
end;
if i = 3 then
Writeln('Couldnt find Branch #1. Logging out.');
Proggy;
Logout;
TerminateScript;
end;
procedure Branch2;
var
x, y, i, CurrentXP, ObsTimer : Integer;
aFound : Extended;
begin
if(Not(LoggedIn))then Exit;
if(Not(FindNormalRandoms))then
CurrentXP := GetXPBarTotal;
Players[CurrentPlayer].Loc := 'Branch2';
for i := 0 to 2 do
begin
if FindDTMRotated(Branch2DTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) or FindDTMRotated(Branch2BackupDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
MMouse(x, y, 2, 2);
if WaitUpText('Tree', 2000) then
begin
ClickMouse2(mouse_left);
MarkTime(ObsTimer);
repeat
Wait(200);
until (CurrentXP <> GetXPBarTotal) or (TimeFromMark(ObsTimer) > 10000);
if TimeFromMark(ObsTimer) > 10000 then
begin
Continue;
end else
Wait(500);
Exit;
end else
begin
Wait(500);
if FailsafeTPAs then
Exit;
end;
end else
begin
Wait(500);
if FailsafeTPAs then
Exit;
end;
end;
if i = 3 then
Writeln('Couldnt find Branch #2. Logging out.');
Proggy;
Logout;
TerminateScript;
end;
procedure RunWall;
var
x, y, i, CurrentXP, ObsTimer : Integer;
aFound : Extended;
begin
if(Not(LoggedIn))then Exit;
if(Not(FindNormalRandoms))then
CurrentXP := GetXPBarTotal;
Players[CurrentPlayer].Loc := 'Wall';
for i := 0 to 2 do
begin
if FindDTMRotated(RunWallDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
MMouse(x, y, 2, 2);
if WaitUpText('Run', 2000) then
begin
ClickMouse2(mouse_left);
MarkTime(ObsTimer);
ClickNorth(1);
SetAngle(1);
repeat
Wait(200);
until (CurrentXP <> GetXPBarTotal) or (TimeFromMark(ObsTimer) > 20000);
if TimeFromMark(ObsTimer) > 20000 then
begin
Continue;
end else
Exit;
end else
begin
Wait(500);
if FailsafeTPAs then
Exit;
end;
end else
begin
Wait(500);
if FailsafeTPAs then
Exit;
end;
end;
if i = 3 then
Writeln('Couldnt find wall. Logging out.');
Proggy;
Logout;
TerminateScript;
end;
procedure Pole;
var
x, y, i, CurrentXP, ObsTimer : Integer;
aFound : Extended;
begin
if(Not(LoggedIn))then Exit;
if(Not(FindNormalRandoms))then
CurrentXP := GetXPBarTotal;
Players[CurrentPlayer].Loc := 'Pole';
if FindDTMRotated(PoleSpotDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 2, 2, true);
end;
for i := 0 to 2 do
begin
if FindDTMRotated(PoleDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
MMouse(x + 60, y, 2, 2);
if WaitUpText('Swing', 2000) then
begin
ClickMouse2(mouse_left);
MarkTime(ObsTimer);
SetAngle(0);
repeat
Wait(200);
until (CurrentXP <> GetXPBarTotal) or (TimeFromMark(ObsTimer) > 20000);
if TimeFromMark(ObsTimer) > 20000 then
begin
Continue;
end else
Exit;
end else
begin
Wait(1000);
if FailsafeTPAs then
Exit;
end;
end else
begin
Wait(1000);
if FailsafeTPAs then
Exit;
end;
end;
if i = 3 then
Writeln('Couldnt find pole. Logging out.');
Proggy;
Logout;
TerminateScript;
end;
procedure Barrier;
var
x, y, i, CurrentXP, ObsTimer : Integer;
aFound : Extended;
begin
if(Not(LoggedIn))then Exit;
if(Not(FindNormalRandoms))then
CurrentXP := GetXPBarTotal;
Players[CurrentPlayer].Loc := 'Barrier';
if FindDTMRotated(BarrierSpotDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x, y, 2, 2, true);
end;
for i := 0 to 2 do
begin
if FindDTMRotated(BarrierDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
MMouse(x, y, 2, 2);
if WaitUpText('Jump', 2000) then
begin
ClickMouse2(mouse_left);
MarkTime(ObsTimer);
repeat
Wait(200);
until (CurrentXP <> GetXPBarTotal) or (TimeFromMark(ObsTimer) > 10000);
if TimeFromMark(ObsTimer) > 10000 then
begin
Continue;
end else
Exit;
end else
begin
Wait(1000);
if FailsafeTPAs then
Exit;
end;
end else
begin
Wait(1000);
if FailsafeTPAs then
Exit;
end;
end;
if i = 3 then
Writeln('Couldnt find barrier. Logging out.');
Proggy;
Logout;
TerminateScript;
end;
procedure Start;
var
x, y, i, ObsTimer : Integer;
aFound : Extended;
begin
if(Not(LoggedIn))then Exit;
if(Not(FindNormalRandoms))then
Players[CurrentPlayer].Loc := 'Start';
for i := 0 to 2 do
begin
if FindDTMRotated(StartDTM, x, y, MMX1, MMY1, MMX2, MMY2, -Pi/4, Pi/4, Pi/60, aFound) then
begin
Mouse(x - 13, y + 5, 2, 2, true);
MarkTime(ObsTimer);
repeat
Wait(200);
until FindDTMRotated(LogDTM, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, aFound) or (TimeFromMark(ObsTimer) > 5000);
Inc(Runs);
Proggy;
Flag;
Wait(1000);
Exit;
end else
Writeln('Couldnt find start ' + ToStr(i + 1) + ' times, trying again.');
end;
if i = 3 then
Writeln('Couldnt find start. Logging out.');
Proggy;
Logout;
TerminateScript;
end;
procedure MainLoop;
begin
LoadDTMs;
StartXP := GetXPBarTotal;
Runs := 0;
MakeCompass('n');
SetAngle(0);
repeat
HealPlayer;
ClickLog;
Climb;
Branch1;
Branch2;
RunWall;
Pole;
Barrier;
Start;
until AllPlayersInactive;
Free;
end;
begin
{$IFDEF SMART}
Smart_Server := 83;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
{$ENDIF}
SetupSRL();
ClearDebug();
DeclarePlayers();
LoginPlayer();
AddOnTerminate('Free');
MainLoop();
end.
Currently Working on: Runite Miner W/ World Hop (Fally) 80% complete
Next: Advanced Gnome Agility Course!
Nah thats cool. Do you not end up in a random place when you fail this course?
oh lmao
thought the lag was getting bad = made it rotate twice :P
Man...this barrier color is not fun. It just failed with the barrier TPA. Gunna log in and out about 20 times to get the right color lol.
Reuploaded v1.3 last time >.< Next version I think I will take some more time to test it out before releasing, I just want a semi-stable version out right now.
If anyone knows what happens when you fail the course let me know. Does it just damage you and let you try again or does it actually drop you like the log in the barbarian course? If it only damages you it should work for 85+, just need to add eating.
Last edited by Total; 04-03-2012 at 09:53 PM.
There are currently 1 users browsing this thread. (0 members and 1 guests)