TwilightSage
2012-05-01 21:27:20
EDIT: Alright, made some changes, but now I'm having a major problem. The script sometimes clicks on Nature Esshounds instead of Body Esshounds.
A pretty simple script, just looks for esshounds, makes sure they're body esshounds and siphons them. I'll try to add node support some time, but they seem glitchy at the moment so maybe later.
Setup: Have rune essence and be around a body esshound spawn point.
Created using YoHoJo's second video tutorial.
A pretty simple script, just looks for esshounds, makes sure they're body esshounds and siphons them. I'll try to add node support some time, but they seem glitchy at the moment so maybe later.
Setup: Have rune essence and be around a body esshound spawn point.
program RunespanCamper;
{$DEFINE SMART}
{$i SRL\SRL.simba}
{$i SRL/SRL/misc/paintsmart.simba}
const
Time = 3500; //Wait time inbetween checks for finding redoing siphon.
RunTime = 60; //Max run time in minutes.
var
XPStart: Integer;
Procedure DeclarePlayers;
var
i: Integer;
Begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer :=0;
For i := 0 to HowManyPlayers-1 Do
Players[i].BoxRewards := ['mote', 'coal', 'XP'];
With Players[0] Do
Begin
Name := ''; //Username
Pass := ''; //Password
Active := True;
End;
End;
//EssHunting was created using Nemesis3X's finding NPCs tutorial
Function EssHunting(Color, Tolerance, NumOfPoints, Width, Height: Integer; Nick, Name: String): Boolean;
Var
TPAA: T2DPointArray;
TPA: TPointArray;
CTS, i, x, y: Integer;
Begin
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, Color, MSX1, MSY1, MSX2, MSY2, Tolerance);
ColorToleranceSpeed(CTS);
TPAA := TPAToATPAEx(TPA, Width, Height);
SortATPASize(TPAA, True);
For i := 0 To High(TPAA) Do
If GetArraylength(TPAA[i]) > NumOfPoints Then
Begin
MiddleTPAEx(TPAA[i], x, y);
MMouse(x, y, 3, 3);
If (IsUpText(Nick)) Then
Begin
Result := True;
ClickMouse2(1);
Writeln('Found: ' + Name);
Break;
End;
End;
End;
Procedure Antiban;
Begin
Case Random(50) Of
0: RandomRClick;
1: HoverSkill('Runecrafting', False);
2: HoverSkill('Random', False);
3: PickUpMouse;
4: RandomMovement;
End;
End;
Procedure GainingXP;
var
XP: Integer;
Begin
Repeat
XP := GetXPBarTotal;
Wait(Time + Random(Time / 5));
Antiban;
FindNormalRandoms;
Antiban;
Until(xp = GetXPBarTotal);
End;
Procedure Proggy;
var
info1, info2, info3: String;
Begin
info1 := 'Run Time: ' + IntToStr(Round(GetTimeRunning / 60000.0)) + ' minutes';
info2 := 'Experience gained: ' + IntToStr(GetXPBarTotal - XPStart) + ' xp';
info3 := 'Average experience per hour: ' + IntToStr(Round((GetXPBarTotal - XPStart) / (GetTimeRunning / 3600000.0))) + ' xp/hr';
WriteLn(info1);
WriteLn(info2);
WriteLn(info3);
SMART_DrawTextEx(True, 10, 24, UpChars, info1, clWhite);
SMART_DrawTextEx(False, 10, 38, UpChars, info2, clWhite);
SMART_DrawTextEx(False, 10, 52, UpChars, info3, clWhite);
End;
Procedure Siphon;
Begin
If EssHunting(16632002, 10, 5, 5, 10, 'Body', 'Body esshound') Then GainingXP;
Proggy;
End;
Begin
SetupSRL;
DeclarePlayers;
If (not LoggedIn) Then
LoginPlayer;
Wait(Time * 2);
SetAngle(0);
XPStart := GetXPBarTotal;
Repeat
FindNormalRandoms;
Wait(RandomRange(Time / 5, Time));
Siphon;
Until((GetTimeRunning / 60000.0) > RunTime);
Logout;
End.Created using YoHoJo's second video tutorial.