No need to do it anymore got 99 pray just now done with it :p unless other people want it faster up to you thx for awesome script
Printable View
Did you use Ancients?
On my way to 99 prayer now. not sure if i should just chuck alot of money in to get it real quick or just buy baby drag bones.
=/ mm any thoughts?
wonderful script btw
it works, but when it gains a level, it freezes and just teles. + Cannot detect the banker and then uses HT on the ancients
It clicks further than the far right of the banker causing it to run outside behind the bank, and it clicks "bank" but the wall on the bank blocks the player from moving
I tried this and solved the problem with the banker, added some new colors works like a charm.
I have the same problem now too! I have been looking into the script, but due to my poor PASCAL skills* i couldnt manage to fix it, but i think the defect is in the following part:
I have tried increasing the waiting time, but that doesnt work. What happens is that it clicks to the coördinates in front of the banker. When the bot is walking, it will click randomly on the minimap. Maybe this can be fixed by changing the leftclick into a rightclick and than walk. Im not really sure, but i dont have any other ideas left.
Besides this I LOVE ur script soooo much thanks for making it and keep up the good work <3
is it possible to add Beast of burden support? would that require alot of work?
does this script work properly atm?
members only again no
What? It's not Members only?
congratz on release mate seems a nice script!
The script is REALLY slow.
It waits about 15 seconds before moving on to the second task...
Yoyoyo peepz,
Aegis, your script now does not click random on the minimap anymore, but i cant get it to work for more than 2 runs, due to the fact that it sometimes will light 1 burner and after that it will go to the mounted glory, try to click it as an burner and logout.
greetz
Edit: I have found a fix, replace the lines 274 till 294 with this:
Simba Code:if FindObjCustom(X, Y, ['Inc','se bu','ner'], [855310,5066064], 6) then
GetMousePos(X, Y);
Mouse(x, y, 3, 5, false);
AntiRandoms;
until WaitOption('Light', 2000) or (N > 3);
end;
if (N > 3) then
Exit;
FFlag(2);
Wait(2000 + Random(300));
N:=0;
begin
repeat
Inc(N);
//RightClickBurner;
if FindObjCustom(X, Y, ['Inc','se bu','ner'], [855310,5066064], 6) then
GetMousePos(X, Y);
Mouse(x, y, 3, 5, false);
AntiRandoms;
until WaitOption('Light', 2000) or (N > 3);
end;
Thanks for this, going to try out now, need it for 95 pray :P
EDIT
Doesn't even seem to be choosing worlds/logging in :(
doesn't the script work atm???
it does not work even with your fix.
Well it´s a hard script where many errors may occure. With my script i can run it up to 1 hour. Anyway it´s better to have it done for you then have to do it yourself. It gained me 95 pray, so im not complaining. Aegis did a great job and with some minor fixes i´ve made on my own, the script worked pretty good for me.
Ok i have found another problem with the script. I have added myself a lot, so it will work out the most of the errors. The only problem it seems to have atm, is that sometimes it won't light a burner. After that, the script cant detect the unlit burner. It will then light the burner, but has already clicked on logout. Here is my adjusted script:
Simba Code:program Gilded_Altar;
{$DEFINE SMART}
{$DEFINE CRASHSMART}
{$i SRL\SRL.scar}
{$i SPS\SPS.simba}
const
S_World = 65;
S_Signed = True;
S_Member = True;
Version = '1.00';
UseFailSafe = False; //READ THIS@@@@@@@@@
//For fail-safes to be effectively used, the user must be on the Ancients Spellbook.
//If you are on Ancients, leave this True. Otherwise, change it to False.
// (it's HIGHLY suggested you are on Ancients!)
var
N, HouseTab, EdgeHome, Marrentil, DragonBones: Integer;
procedure DeclarePlayer;
begin
with Players[0] do
begin
Name := ''; //USERNAME
Pass := ''; //PASSWORD
Pin := ''; //PIN (if any)
Active := True;
Strings[0] := 'eb';
BoxRewards := ['Xp'];
LampSkill := 'prayer'; // or change to whatever skill exp you want
end;
end;
Function FindNPCChatText_F(Option: String; Action: fnct_ActionOptions): Boolean;
var
X,Y: Integer;
begin
Result := False;
if Option = '' then
begin
srl_Warn('FindNPCChatText', 'txt is empty', warn_AllVersions);
Exit;
end;
if FindText(X, Y, Option, UpChars, MCX1, MCY1, MCX2, MCY2) then
begin
Result := True;
case Action of
Move: MMouse(X, Y + 2, Random(Length(Option) * 5), 4);
ClickLeft: Mouse(X, Y + 2, Random(Length(Option) * 5), 4, True);
ClickRight: Mouse(X, Y + 2, Random(Length(Option) * 5), 4, False);
end;
end;
end;
procedure RightClickBurner;
var
MyTPA : TPointArray;
MyPoint : TPoint;
x, y, i : Integer;
begin
x := MSCx;
y := MSCy;
FindColorsSpiralTolerance(x, y, MyTPA, 2409460, MSx1, MSy1, MSx2, MSy2, 10);
if Length(MyTPA) = 0 then
FindColorsSpiralTolerance(x, y, MyTPA, 2078161, MSX1, MSY1, MSX2, MSY2, 10);
for i := 0 to High(MyTPA) do
begin
MyPoint := MyTPA[i]
MMouse (MyPoint.x, MyPoint.y, 5, 12);
if WaitUpTextMulti(['Inc','se bu','ner'], 1000) then
begin
GetMousePos(x, y);
Mouse(x, y, 0, 0, False);
end;
Exit;
end;
end;
procedure AntiRandoms;
begin
FindNormalRandoms;
LevelUp;
end;
procedure ProgressReport;
begin
ClearDebug;
WriteLn('Running for: ' + TimeRunning);
end;
procedure FailSafe;
var
X, Y: Integer;
begin
if UseFailSafe=False then
begin
Logout;
TerminateScript;
end;
AntiRandoms;
N:=0;
EdgeHome := DTMFromString('mbQAAAHicY2VgYOBggABeIBYAYmYgZgdibiDmA2IWqPy+I58Y2ubcQMFuDJiAEQsGAwBv+wr5');
Writeln('Error, using failsafe!');
begin
repeat
if GameTab(tab_Magic) then
if FindDTM(EdgeHome, X, Y, MIX1, MIY1, MIX2, MIY2) then
Mouse(x, y, 5, 5, false);
until ChooseOption('Cast');
end;
Wait(14500 + Random(1000));
begin
SPS_Setup(RUNESCAPE_SURFACE, ['10_6']);
SPS_Continue := true;
SPS_WalkPath([Point(4214, 2686)]);
FFlag(0);
AntiRandoms;
FreeDTM(EdgeHome);
//FreeDTM(Marrentil);
//FreeDTM(DragonBones);
Wait(2200 + Random(400));
end;
end;
procedure AntiBan;
begin
If(not LoggedIn)then Exit;
MouseSpeed := 12 + Random(5);
Case Random(20) of
0: MMouse(Random(MIX2), Random(MIY2), 10, 10);
1: HoverSkill(SKILL_prayer, False);
2: PickUpMouse;
3: GameTab(RandomRange(tab_Combat, tab_Notes));
4: SleepAndMoveMouse(400+Random(Random(4000)));
5: IdleTime(100+random(700), 100+Random(100), 0.2+RandomE/2);
6, 8, 9: MakeCompass(IntToStr(Random(360)));
10:
begin
SetAngle(False);
SetAngle(True);
end;
11, 12, 13, 15, 16: Wait(100 + Random(600));
17, 18, 19, 20: Exit;
end;
end;
{*******************************************************************************
function OpenBankNPC/UseBankNPC(Modified): Boolean;
By: Home
Description: Modifed to correctly bank at Edge NPC.
*******************************************************************************}
function UseBankNPC: Boolean;
var
bx, by, Speed, ColFace, ColGrey, ColBlue, ColHair, t: Integer;
begin
Result := (LoggedIn) and (BankScreen or PinScreen);
if (Result) then exit;
Speed := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
ColFace := 4468276;
ColGrey := 4995649;
ColBlue := 4468276;
ColHair := 5125177;
if (FindObjThroughMM(bx, by, 'npc', [ColFace, ColBlue, ColGrey, ColHair], [5, 5, 5, 5],
['ounter', 'se Co', 'anke', 'to B', 'Banker', 'nker'], 2, 2)) then
begin
Mouse(bx, by, 0, 0, False);
if (WaitOptionMulti(['kly Co', 'se-qu', 'ank B', 'Bank Banker', 'ank', 'nker'], 750)) then
begin
t := (GetSystemTime + 5000);
repeat
if (BankScreen) or (PinScreen) then
begin
Result := true;
Break;
end;
Wait(50);
until(GetSystemTime > t);
if (Length(Players) > 0) then
if ((PinScreen) and (Players[CurrentPlayer].Pin <> '')) then
InPin(Players[CurrentPlayer].Pin);
Result := (BankScreen) or (PinScreen);
end;
end;
ColorToleranceSpeed(Speed);
end;
{******************************************************************************}
procedure TeleToBank;
var
x, y: Integer;
begin
if (N > 3) then
begin
Failsafe;
Exit;
end;
N:=0;
ClickNorth(True);
AntiRandoms;
begin
repeat
Inc(N);
//if FindObjTPA(x, y, 6982558, 10, 2, 25, 20, w, ['mulet']) then
if FindObjCustom(X, Y, ['mulet','et Gl','lory'], [7114144,6982558], 3) then
GetMousePos(X, Y);
Mouse(x, y, 0, 0, false);
AntiRandoms;
until ChooseOption('Rub') or (N > 5);
end;
if (N > 5) then
begin
FailSafe;
Exit;
end;
Antiban;
FFlag(0);
N:=0;
repeat
Inc(N);
Wait(500);
until FindNpcChatText_F('dgev', ClickLeft) or (N > 10);
//Wait(4912 + Random(957));
begin
SPS_Setup(RUNESCAPE_SURFACE, ['10_6']);
SPS_Continue := true;
SPS_WalkPath([Point(4214, 2686)]);
Antiban;
FFlag(0);
Wait(2500 + Random(200));
AntiRandoms;
N:=0;
end;
end;
procedure StartAltar;
var
x, y, T: Integer;
//TPA:TPointArray;
//ATPA: T2DPointArray;
begin
if (N > 3) then
Exit;
N:=0;
ClickNorth(False);
Wait(5500 + Random(200));
begin
repeat
Inc(N);
if FindObjCustom(X, Y, ['oor','Doo'], [4740445,3883076,5400700], 3) then
GetMousePos(X, Y);
Mouse(x, y, 10, 10, false);
AntiRandoms;
until ChooseOption('Open') or (N > 3);
end;
if (N > 3) then
Exit;
SetAngle(True);
FFlag(2);
Wait(900 + Random(100));
Mouse(185, 37, 130, 50, true);
FFlag(2);
Wait(1000 + Random(300));
N:=0;
begin
repeat
Inc(N);
//RightClickBurner;
if FindObjCustom(X, Y, ['Inc','se bu','ner'], [855310,5066064], 6) then
GetMousePos(X, Y);
Mouse(x, y, 3, 5, false);
AntiRandoms;
until WaitOption('Light', 2000) or (N > 3);
end;
if (N > 3) then
Exit;
FFlag(2);
Wait(2000 + Random(300));
N:=0;
begin
repeat
Inc(N);
//RightClickBurner;
if FindObjCustom(X, Y, ['Inc','se bu','ner'], [855310,5066064], 6) then
GetMousePos(X, Y);
Mouse(x, y, 3, 5, false);
AntiRandoms;
until WaitOption('Light', 2000) or (N > 3);
end;
if (N > 3) then
Exit;
InvMouse(5, 2);
ChooseOption('Use');
Wait(5000 + Random(200));
ProgressReport;
FFlag(0);
Wait(600 + Random(250));
if FindObjCustom(X, Y, ['Alt', 'tar'], [10854046], 3) then Wait(800 + random(100));
Mouse(x, y, 0, 0, true);
MouseBox(227, 405, 284, 435, 3);
T := GetSystemTime + 44000;
while (GetSystemTime < T) and not(FindColor(x, y, 2070783, 251, 434, 286, 446)) do
Wait(1200 + Random(100));
if not(FindColor(x, y, 2070783, 251, 434, 286, 446)) then
Exit;
GetMousePos(x, y);
if not(PointInBox(Point(x, y), IntToBox(227, 405, 284, 435))) then
MouseBox(227, 405, 284, 435, 1)
else
ClickMouse2(True);
while (GetSystemTime < T) do
begin
if LevelUp then
Wait(800 + Random(100));
AntiBan;
AntiRandoms;
end;
end;
procedure BankandTele;
begin
N:=0;
//Marrentil := DTMFromString('mggAAAHicY2NgYJjOyMCwGIjnAfEEIG4H4olAnA2USwXiQiAuAOIsIM4AYp5gPiDJhIFFGLADRhwYAgCsawah');
//DragonBones := DTMFromString('mggAAAHicY2NgYOBlgAAQLQPEbEAsBcRMQMwB5XMBMSNU3fIFC6CyqJifATtgxIEhAADMUAJ+');
AntiRandoms;
begin
repeat
Inc(N);
UseBankNPC;
until BankScreen or (N > 3);
end;
if (N > 3) then
Exit;
begin
//if WithdrawItem(Marrentil, 'dtm', 1, 'lean', []) then
//if WithdrawItem(Marrentil, 'dtm', 1, 'lean', []) then
//WithdrawItem(DragonBones, 'dtm', 25, 'ragon', []) then
if Withdraw(8, 0, 1) then
if Withdraw(8, 0, 1) then
if Withdraw(9, 0, 25) then
if BankScreen then
CloseBank;
Wait(1000 + Random(350))
AntiRandoms;
KeyDown(VK_F1);
Wait(300 + Random(100))
KeyUp(VK_F1);
InvMouse(1, 1);
//FreeDTM(Marrentil);
//FreeDTM(DragonBones);
end;
end;
procedure Main;
begin
repeat
ProgressReport;
BankandTele;
StartAltar;
TeleToBank;
until not(LoggedIn);
end;
begin
NumberOfPlayers(1);
CurrentPlayer := 0;
Players[0].Active:= True;
Smart_Server := S_World;
Smart_Signed := S_Signed;
Smart_Members := S_Member;
Smart_SuperDetail := False;
SetupSRL;
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
DeclarePlayer;
if not(LoggedIn) then
begin
LogInPlayer;
Wait(3000 + Random(2000));
AntiRandoms;
end;
SetRun(True);
Main;
end.
I have added some new colors, because there were some conflicts with the colors and i have added a wait option after the script clickes the use option of the dbones.
Amazing :O going to test it out