SRL Archive - RS3 Outdated / Broken Scripts

Law Crafter By Nicbaz BETA


NiCbaZ

2008-08-16 00:25:57

Law Crafter By Nicbaz

& a tiny bit by my 10 year old brother

[LEFT]Description[/LEFT]
Law Crafter By nicbaz, crafts law runes , banks in draynor bank walks to
port sarim docks, catches the boat walks to alter and then walks back and banks.


[LEFT]Intro[/LEFT]

NicBaz LawW RunE CraFtEr & BaNkEr

NAME : NicBaz LawW RunE CraFtEr
WRITER : Nicbaz.
CATEGORY : RuneCrafting
DESCRIPTION : Crafts Laws And Banks In Draynor
USAGE : Start In Draynor Bank.
AUTOCOLOR : Yes.
SRL Used : 4.0, Revision 20.
SCAR Used : 3.15b.
SMART :Yes.


[LEFT]Features [/LEFT]
  • 3 Different Walking Paths
  • FlawLess Reflection Finding
  • Is still BETA
  • Reflection!

[LEFT]Instructions. [/LEFT]
  • 1. Use RuneScape with Low Detail, Very Bright.
  • 2. Set your Screen to 32 bit TRUE color.
  • 3. Setup lines below.
  • 4. Start in Draynor Bank
  • 5. All Pure Ess IN second Bank Tab and Second SLot
  • 6. Start script Logged Out.
  • 7.SMART only
  • 8. POST ALL PROGGIES IN THE THREAD!


[LEFT]Future Updates [/LEFT]
  • 1. Sleeping
  • 2. More Random Walking
  • 3. Better Banking
  • 4. Glory Option


[LEFT]Updates [/LEFT]
1.1
  • 1. Ini Progress Saving
  • 2. Walking Tweaked




program LawCrafter;
{.include SRL\SRL\Misc\Smart.scar}
{.include SRl/SRl.scar}
{.include srl/srl/reflection/reflection.scar}


{===================================================================]
[ NicBaz LawW RunE CraFtEr & BaNkEr ]
[ ]
[ NAME : NicBaz LawW RunE CraFtEr ]
[ WRITER : Nicbaz. ]
[ CATEGORY : RuneCrafting ]
[ DESCRIPTION : Crafts Newts And Banks In Draynor ]
[ USAGE : Start In Draynor Bank. ]
[ AUTOCOLOR : Yes. ]
[ SRL Used : 4.0, Revision 16. ]
[ SCAR Used : 3.15b. ]
[ ]
[===================================================================]
[ Instructions. ]
[===================================================================]
[ 1. Use RuneScape with Low Detail, Very Bright. ]
[ 2. Set your Screen to 32 bit TRUE color. ]
[ 3. Setup lines below. ]
[ 4. Start in Draynor Bank ]
[ 5. All Pure Ess IN second Bank Tab and Second SLot ]
[ 6. Start script Logged Out. ]
[ 7. POST ALL PROGGIES IN THE THREAD! ]
[ ]
[===================================================================]
[ Some more info: ]
[ 1. This script is not the fastest one out there it is made to run ]
[ for a long time so dw if its not that fast. ]
[===================================================================]
[===================================================================]
[ Future Updates. ]
[===================================================================]
[ 1. Sleeping ]
[ 2. More Random Walking ]
[ 3. Better Banking ]
[ 4. Glory Option ]
[===================================================================]
[ Const ]
[===================================================================]
[===================================================================] ]
}const //]
SmartWorld = 109; //]
Loads = 10; // Loads UntilStop //]
StatsUser = '618'; //]
StatsPass = ''; //]
{===================================================================]
[1.0- Relesed To Public ]
[===================================================================}


var
LoadsLeft,cooks,clays: integer;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
procedure DeclarePlayers;
By: Nicbaz
Description: Declare The Players for the login Array.
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}

procedure DeclarePlayers;
begin
HowManyPlayers:= 3; // number of players
CurrentPlayer:= 0; // starting player

{Green out or Delete unused slots}

NumberOfPlayers(HowManyPlayers);

Players[0].Name :='';
Players[0].Pass :='';
Players[0].Nick :='';
Players[0].Active:= True;

end;


{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
procedure DeclarePlayers;
By: Nicbaz
Description: Declare The Players for the login Array.
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}

function AllPlayersInactive1: boolean;
var
p: integer;
begin
for p:= 0 to HowManyPlayers - 1 do
if Players[p].Active then exit;
result:= true;
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
procedure DeclarePlayers;
By: Nicbaz
Description: Declare The Players for the login Array.
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
procedure SwitchPlayers(Active:boolean);
var
thenextplayer,thelastplayer:integer;
Start: boolean;
begin
Logout;
Players[CurrentPlayer].Active:= Active;
TheNextPlayer:= CurrentPlayer + 1;
TheLastPlayer:= HowManyPlayers - 1;
if (TheNextPlayer <= TheLastPlayer)then
begin
CurrentPlayer:= CurrentPlayer + 1;
end else
begin
CurrentPlayer:= 0;
end;
if not(Players[CurrentPlayer].Active)then
begin
repeat
CurrentPlayer:= random(HowManyPlayers);
until(Players[CurrentPlayer].Active)or(AllPlayersInactive1);
end;
// Proggy;
if AllPlayersInactive1 then
begin
writeln('All Players False');
TerminateScript;
end;
start:= true;
LoadsLeft:= Loads;
LoginPlayer;
wait(random(500));
SetAngle(True);
wait(random(500));
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Function IsBankTabOpen(WichTab:String) : Boolean
By: Nicbaz
Description: Returns True if your tab is open
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function IssBankTabOpen(WhichTab: Integer) : Boolean;

begin
Result := (GetColor(64 + (WhichTab - 1) * 49, 56) = 2896954 );
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
function BankTab(NumberOfTab: Integer): Boolean;
By: Nicbaz
Description: Changes to the tab you select
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function BankkTab(NumberOfTab: Integer): Boolean;
begin
if (NumberOfTab <1) or (NumberOfTab > 9) then
begin
srl_Warn('BankTab',inttostr(NumberOfTab)+' BankTab does not exist',warn_AllVersions);
Result := False;
Exit;
end;
// if (IsBankTabOpen(NumberOfTab)) then
// Exit;
MouseBox(34 + (NumberOfTab - 1) * 50, 54, 34 + (NumberOfTab - 1) * 50, 75, 1);
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
function Banking: Boolean;
By: Nicbaz
Description: Banks
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function Banking: Boolean;
var
Rune: integer;
X,Y : integer;

begin
Rune := DTMFromString('78DA63AC636660C8636440066DB5350C22401' +
'A24FA1F0818DB816AAA50D54064612490EE01AAC927A0A616A8A6' +
'96809A42A09A32026A0A30DD4C967B5A816A6A8830A718BF1A007' +
'F570E70');

if OpenBankReflection('db') then
begin
wait(2000+random(300));
wait(500+random(300));
Mouse(579, 227,5,5, false);
wait(500+random(300));
ChooseOption('ll');
wait(500+random(300));
{ BankTab(2); }Mouse(96, 67,5,5,True);
wait(500+random(300));
MMouse(195+random(20), 149+random(20) ,40 ,40);
wait(500+random(300))
if (FindDTM(Rune,x,y,MSX1, MSY1, MSX2, MSY2)) then
begin
Mouse(x,y,2,2,false);
wait(300+random(300));
ChooseOption('ll');
Result:= True;
Players[CurrentPlayer].Loc:= ('Bank');
wait(800+random(300));
FindNormalRandoms;
CloseBank;
Exit;
end;
end;
Result:= False;
writeln('out of ess');
CloseBank;
NextPlayer(false);
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
procedure Proggie;
By: Nicbaz % fr0zen
Description: Proggie
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
procedure Proggie;
var
s: string;
i, File: integer;
begin
Writeln('');
s := '-&#8211;&#8211;&#8226;(·-><-·)&#8226;&#8211;&#8211;&#8211;';
for i := 1 to Length(TimeRunning) + 16 do
Insert('¤', s, 9);
Writeln(s);
Writeln('-&#8211;&#8211;&#8226;(·->' + PadL(PadR('NicBaZ LaWW CrAfTeR', Length(s)/2 + 2), Length(s) - 16) + '<-·)&#8226;&#8211;&#8211;&#8211;');
Writeln('-&#8211;&#8211;&#8226;(·->' + PadL(PadR('¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯', Length(s)/2 + 3), Length(s) - 16) + '<-·)&#8226;&#8211;&#8211;&#8211;');
If Clays > 0 then
Writeln(PadR('-&#8211;&#8211;&#8226;(·-> Laws crafted: ' + IntToStr(Clays), Length(s) - 9) + ' <-·)&#8226;&#8211;&#8211;&#8211;');
If Cooks > 0 then
Writeln(PadR('-&#8211;&#8211;&#8226;(·-> Loads Done: ' + IntToStr(Cooks), Length(s) - 9) + ' <-·)&#8226;&#8211;&#8211;&#8211;');
Writeln('-&#8211;&#8211;&#8226;(·-> Time Running: ' + TimeRunning + ' <-·)&#8226;&#8211;&#8211;&#8211;');
Writeln(s);
Disguise(PadR('-&#8226;(·-> Loads Done: ' + IntToStr(Cooks), Length(s) - 9) + ' <-·)&#8226;&#8211;&#8211;&#8211;');
if FileExists(ScriptPath + 'EdgevilleHybridPro Reports.txt') then
Begin
File := OpenFile(ScriptPath + 'EdgevilleHybridPro Reports.txt', false);
ReadFileString(File, s, FileSize(File));
CloseFile(File);
File := LastPos(TheDate(1), s);
if File > 0 then
if InRange(StrToInt(Copy(s, File + Length(TheDate(1)) + 2, File + Length(TheDate(1)) - 14)), strtoint(GetNumbers(Left(TheTime, 2))) - 2, strtoint(GetNumbers(Left(TheTime, 2))) + 2) then
Begin
File := RewriteFile(ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt', false);
Delete(s, LastPos(TheDate(1), s) - 1, Length(s));
WriteFileString(File, s);
CloseFile(File);
end;
end;
s := '-&#8211;&#8211;&#8226;(·-><-·)&#8226;&#8211;&#8211;&#8211;';
for i := 1 to Length(TimeRunning) + 16 do
Insert('¤', s, 9);
WriteINI(TheDate(1) + ', ' + TheTime, s, '', ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt');
WriteINI(TheDate(1) + ', ' + TheTime, '-&#8211;&#8211;&#8226;(·->' + PadL(PadR('NicBaZ LaWW CrAfTeR', Length(s)/2 + 2), Length(s) - 16) + '<-·)&#8226;&#8211;&#8211;&#8211;', '', ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt');
WriteINI(TheDate(1) + ', ' + TheTime, '-&#8211;&#8211;&#8226;(·->' + PadL(PadR('¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯', Length(s)/2 + 3), Length(s) - 16) + '<-·)&#8226;&#8211;&#8211;&#8211;', '', ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt');
If Clays > 0 then
WriteINI(TheDate(1) + ', ' + TheTime, PadR('-&#8211;&#8211;&#8226;(·-> Laws Crafted: ' + IntToStr(Clays), Length(s) - 9) + ' <-·)&#8226;&#8211;&#8211;&#8211;', '', ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt');
If Cooks > 0 then
WriteINI(TheDate(1) + ', ' + TheTime, PadR('-&#8211;&#8211;&#8226;(·-> Loads Done: ' + IntToStr(Cooks), Length(s) - 9) + ' <-·)&#8226;&#8211;&#8211;&#8211;', '', ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt');
WriteINI(TheDate(1) + ', ' + TheTime, '-&#8211;&#8211;&#8226;(·-> Time Running:', TimeRunning + ' <-·)&#8226;&#8211;&#8211;&#8211;', ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt');
Delete(s, 1, 1);
WriteINI(TheDate(1) + ', ' + TheTime, '', s, ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt');
File := OpenFile(ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt', false);
ReadFileString(File, s, FileSize(File));
CloseFile(File);
s := Replace(s, '=', ' ');
File := RewriteFile(ScriptPath + 'NicBaZ LaWW CrAfTeR Reports.txt', false);
WriteFileString(File, s);
CloseFile(File);
end;




{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Procedure NoBan;
By: Nicbaz
Description: Banks
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
procedure NoBan;
begin
case random(4) of
0:GameTab(random(5));
1:RandomRclick;
2:BoredHuman;
3:wait(3000+random(1000));
end;
FindNormalRandoms;
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
function WalkToPath(Path: TPointArray; DoTile: Integer): Boolean;
By: Nicbaz
Description: Walks the path.
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function WalkToPath(Path: TPointArray; DoTile: Integer): Boolean;
var
I: integer;
begin
for I := DoTile to High(Path) do
if not (WalkToTile(Path[I],1 , 0)) then
Exit;
Result := True;
FindNormalRandoms;
End;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
function WalkThroughPath(Path: TPointArray): Boolean;;
By: Nicbaz
Description: Walks the path.
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function WalkThroughPath(Path: TPointArray): Boolean;
begin
if not (WalkToPath(Path, 0)) then
begin
writeln('path some how is off');
Result:= False;
Exit;
end;
Result := True;
FindNormalRandoms;
End;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
function Walk(where: string): boolean;
By: Nicbaz
Description: Loads the tiles and walks.
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function Walk(where: string): boolean;
var
Tiles: TPointArray;

begin
case where of
'ToBoat':
begin
case random(3) of
0: Tiles := [Point(3080, 3249), Point(3081, 3264), Point(3071, 3274),
Point(3065, 3261), Point(3055, 3251), Point(3042, 3242),
Point(3047, 3234)];
1: Tiles := [Point(3084, 3248), Point(3072, 3247), Point(3072, 3261),
Point(3069, 3274), Point(3064, 3261), Point(3055, 3251),
Point(3045, 3246), Point(3041, 3237), Point(3046, 3233)];
2: Tiles := [Point(3081, 3247), Point(3081, 3262), Point(3072, 3263),
Point(3075, 3274), Point(3064, 3276), Point(3060, 3266),
Point(3063, 3255), Point(3054, 3251), Point(3041, 3245),
Point(3040, 3236), Point(3047, 3233)];
end;
end;
'ToBank':
begin
case random(3) of
0: Tiles := [Point(3042, 3239), Point(3049, 3246), Point(3060, 3252),
Point(3064, 3263), Point(3066, 3276), Point(3072, 3263),
Point(3072, 3248), Point(3085, 3247), Point(3093, 3241)];
1: Tiles := [Point(3041, 3242), Point(3052, 3246), Point(3064, 3256),
Point(3067, 3271), Point(3070, 3260), Point(3081, 3247),
Point(3092, 3242)];
2: Tiles := [Point(3041, 3242), Point(3054, 3250), Point(3065, 3258),
Point(3068, 3269), Point(3071, 3270), Point(3077, 3263),
Point(3081, 3248), Point(3093, 3242)];
end;
end;
'ToAlter':
begin
Tiles := [Point(2846,3335),Point(2857,3340),Point(2860,3352),
Point(2857,3369), Point(2858,3378)];
//^^fixing
end;
'FromAlter':
begin
Tiles := [Point(2857,3366),Point(2860,3350),Point(2851,3337),
Point(2839,3335)];
end;
end;
wait(1000+random(200));
SetRun(True);
if WalkThroughPath(Tiles) then
Result:= True;
FindNormalRandoms;
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
function Find(where : string): boolean;
By: Nicbaz
Description: Find Obects with reflection.
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function Find(where : string): boolean;
var
Tiles: TPointArray;
xx : TPoint;
begin
case where of
'rock' : Tiles:= [Point(2858,3381)];
'insiderock': Tiles:= [Point(2464,4832)];
'portal' : Tiles:= [Point(2464,4817)];
'boat' : Tiles:= [Point(2834,3333)];
'boatback' : Tiles:= [Point(3048,3232)]
end;
if (DistanceFrom(Tiles[0]) > 4) then
begin
WalkToTile(Tiles[0], 0, 0);
FFlag(0);
Wait(400);
end;
XX:= TileToMS(Tiles[0], 16);
Mouse(xX.X, xX.Y, 5, 5, True);
Wait(80 + Random(120));
Flag;
Result:= True;
FindNormalRandoms;
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
function ClickAnswer(Answer: string; Times: Integer): Boolean;
By: Zephs
Description: Clicks the anser on the NPC chat
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function ClickAnswer(Answer: string; Times: Integer): Boolean;
var
i,j:integer;

begin
if not(loggedin) then exit;
if (not(LoggedIn)) then Exit;
j := 0;
i := 0;
repeat
if (FindNPCChatText(answer, clickleft)) then
begin
FTWait(6);
Inc(i);
end;
j := j + 1;
until(j = Times);
if (j = i) then Result := True;
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
function InTalk: Boolean;
By: Zeph
Description: Returns true if in talk.
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function InTalk: Boolean;
var
tx, ty: Integer;
begin
if not(loggedin) then exit;
Result := FindColor(tx, ty, 128, 43, 350, 477, 379);
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
function Cross(id: integer): boolean;
By: Nicbaz
Description: Cross'es lands
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
function Cross(id: integer; where:string): boolean;
var
NPCe : TNPC;
zZ : integer;

begin
// SetCompass(true);
repeat
if not(FindNPCByID(id,NPCe)) then
Exit;
Mouse(NPCe.ms.x,NPCe.ms.y,4,4,true);
Flag;
wait(200+random(500));
inc(zZ);
until(InTalk) or (zZ > 5)
if zZ > 5 then
Exit;
Result:= True;
wait(300+random(300));
case where of
'port':
begin
ClickAnswer('continue', 1);
Mouse(264, 436, 4 , 4, true);
ClickAnswer('continue', 6);
end;
'alter':
begin
ClickAnswer('continue', 1);
Mouse(255, 404, 4 , 4, true);
ClickAnswer('continue', 5);
end;
end;
FindNormalRandoms;
end;

{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
procedure PlayerLoop;
By: Nicbaz
Description: Loops the player
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
procedure PlayerLoop;
var
Tiles: TPointArray;

begin
if not LoggedIn then
Exit;
Tiles:= [Point(2463,4830),Point(2464,4818)];
repeat
if Banking then
begin
if (Players[CurrentPlayer].Loc = 'Bank') then
writeln('all good');
end else
begin
Exit;
writeln('NextPlayer');
end;
begin
if Walk('ToBoat') then
begin
writeln('arrived at dock');
wait(400+random(200));
NoBan;
end else
begin
writeln('SomeHow Got lost');
NextPlayer(false);
Exit;
end;
begin
if Cross(2729,'port') then
begin
wait(9200+random(200));
writeln('we are on the boat crossing now');
if Find('boat') then
begin
writeln('on main land');
wait(2000+random(200));
if not LoggedIn then
Exit;
end else
begin
writeln('SomeHow Got lost');
NextPlayer(false);
Exit;
end;
if Walk('ToAlter') then
begin
writeln('arrived at Alter');
wait(1000+random(200));
end else
begin
writeln('SomeHow Got lost');
NextPlayer(false);
Exit;
end;
if Find('rock') then
begin
wait(1000+random(200));
writeln('We are Inside Law Alter');
NoBan;
WalkToTile(Tiles[0],2,0);
wait(500+random(200));
if Find('insiderock') then
begin
writeln('Clicked On Alter');
wait(3200+random(200));
end;
WalkToTile(Tiles[1],2,0);
wait(500+random(200));
if Find('portal') then
begin
writeln('Clicked On Portal');
wait(500+random(200));
writeln('crafted Our runes');
NoBan;
Players[CurrentPlayer].Loc:= ('Alter');
end else
begin
writeln('SomeHow Stuffed up during the process of crafting NextPlayer');
NextPlayer(false);
Exit;
end;
if Players[CurrentPlayer].Loc = ('Alter') then
begin
if Walk('FromAlter') then
begin
writeln('arrived at Boat');
NoBan;
wait(1000+random(200));
end else
begin
writeln('SomeHow Got lost');
NextPlayer(false);
Exit;
end;
if cross (2731,'alter') then
wait(9200+random(200));
Writeln('we are on the boat crossing now');
if Find('boatback') then
begin
Writeln('we are back on mainland');
NoBan;
wait(1000+random(200));
end else
begin
writeln('Lost NextPlayer');
NextPlayer(false);
Exit;
end;
if Walk('ToBank') then
begin
writeln('arrived at bank');
NoBan;
wait(400+random(200));
end else
begin
writeln('SomeHow Got lost');
NextPlayer(false);
Exit;
end;
end;
LoadsLeft:= LoadsLeft - 1;
end;
end;
end;
CloseBank;
Clays := Clays + 28;
Cooks := Cooks + 1;
ReportVars[0] := ReportVars[0] + 1;
ReportVars[1] := ReportVars[1] + 28;
proggie;
sendsrlreport;
end;
until(LoadsLeft = 0)or(not LoggedIn);
TerminateScript;
end;


{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
procedure Signature;
By: Nicbaz
Description: ASCII sig
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}
procedure Signature;
begin
Writeln(' _______ .__ __________ __________ .____ __ __ _________ ___________ __ __________ ');
Writeln(' \ \ |__| ____ \______ \_____ \____ / | | _____ __ _ __/ \ / \ \_ ___ \_______ _____ \_ _____/_/ |_ ____ \______ \ ');
Writeln(' / | \ | |_/ ___\ | | _/\__ \ / / | | \__ \ \ \/ \/ /\ \/\/ / / \ \/\_ __ \\__ \ | __) \ __\_/ __ \ | _/ ');
Writeln('/ | \| |\ \___ | | \ / __ \_ / /_ | |___ / __ \_\ / \ / \ \____| | \/ / __ \_| \ | | \ ___/ | | \ ');
Writeln('\____|__ /|__| \___ >|______ /(____ //_______ \ |_______ \(____ / \/\_/ \__/\ / \______ /|__| (____ /\___ / |__| \___ >|____|_ / ');
Writeln(' \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ ');
end;



begin
SmartSetUp('world104',true,true,false);
wait(2000);
SetTargetDC(SmartGetDC);
SetupSRL;
LoadsLeft:= Loads;
ScriptID := '962';
DeclarePlayers;
proggie;
Signature;
SRLID := StatsUser;
SRLPassword :=StatsPass;
LoginPlayer;
repeat
PlayerLoop;
until false;
end.

Have Fun…


{*******************************************************************************
Function WalkToPath(Path: TPointArray; DoTile: Integer): Boolean;
By: Nicbaz & Timer
Description: Walk Through The path from start to End.
*******************************************************************************}
function WalkToPath(Path: TPointArray; DoTile: Integer): Boolean;
var
I: integer;
begin
for I := DoTile to High(Path) do
if not (WalkToTile(Path[I], 2, 2)) then
Exit;
Result := True;
End;
{*******************************************************************************
Function WalkThroughPath(Path: TPointArray): Boolean;
By: Nicbaz & Timer
Description: Walk Through The path from start to End.
*******************************************************************************}
function WalkThroughPath(Path: TPointArray): Boolean;
Var
I: Integer;
begin
if not (WalkToPath(Path, 0)) then
begin
writeln('path some how is off');
Result:= False;
Exit;
end;
Result := True;
End;


{-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Function Walk(Where: string): boolean;
By: Nicbaz
Description: Loads the path you select then walks it.
Status: Good
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-}

Function Walk(Where: string): boolean;
var
Tiles: TpointArray;

begin
case where of
'LumbyToVarrock':
begin
Tiles := [Point(3230, 3217), Point(3236, 3224), Point(3252, 3224),
Point(3260, 3238), Point(3253, 3251), Point(3248, 3266),
Point(3241, 3280), Point(3239, 3293), Point(3240, 3305),
Point(3250, 3316), Point(3263, 3324), Point(3268, 3331),
Point(3256, 3334), Point(3241, 3335), Point(3228, 3338),
Point(3226, 3352), Point(3217, 3361), Point(3214, 3375),
Point(3212, 3389), Point(3212, 3405), Point(3211, 3420),
Point(3212, 3425)];

end;
'LumbyToFally':
begin
Tiles := [Point(3231, 3217), Point(3226, 3232), Point(3220, 3246),
Point(3216, 3261), Point(3213, 3277), Point(3198, 3278),
Point(3184, 3286), Point(3169, 3286), Point(3153, 3292),
Point(3139, 3294), Point(3123, 3296), Point(3108, 3294),
Point(3093, 3289), Point(3078, 3284), Point(3067, 3275),
Point(3051, 3276), Point(3035, 3275), Point(3019, 3276),
Point(3009, 3288), Point(3006, 3303), Point(3007, 3318),
Point(3006, 3333), Point(3008, 3348), Point(3011, 3355)];

end;
'LumbyToDraynor':
begin
Tiles := [Point(3219, 3216), Point(3234, 3217), Point(3232, 3228),
Point(3222, 3236), Point(3206, 3236), Point(3192, 3235),
Point(3178, 3234), Point(3163, 3231), Point(3146, 3229),
Point(3129, 3228), Point(3113, 3232), Point(3099, 3241),
Point(3093, 3241)];
end;
'DraynorToFally':
begin
Tiles := [Point(3082, 3248), Point(3080, 3263), Point(3071, 3273),
Point(3057, 3274), Point(3041, 3275), Point(3026, 3276),
Point(3010, 3278), Point(3008, 3293), Point(3008, 3308),
Point(3007, 3323), Point(3007, 3338), Point(3007, 3351),
Point(3011, 3354)];
end;
'DraynorToVarrock':
begin
Tiles := [Point(3099, 3249), Point(3104, 3259), Point(3106, 3273),
Point(3108, 3288), Point(3118, 3296), Point(3132, 3294),
Point(3145, 3292), Point(3159, 3288), Point(3173, 3285),
Point(3188, 3282), Point(3202, 3278), Point(3215, 3269),
Point(3222, 3259), Point(3238, 3260), Point(3245, 3273),
Point(3238, 3285), Point(3240, 3299), Point(3247, 3312),
Point(3259, 3321), Point(3268, 3331), Point(3254, 3334),
Point(3239, 3336), Point(3226, 3340), Point(3224, 3356),
Point(3214, 3369), Point(3212, 3384), Point(3211, 3399),
Point(3211, 3414), Point(3212, 3426)];
end;
end;
'DraynorToLumby':
begin
Tiles := [Point(3099, 3249), Point(3105, 3238), Point(3110, 3225),
Point(3126, 3225), Point(3140, 3230), Point(3155, 3233),
Point(3170, 3237), Point(3185, 3241), Point(3199, 3246),
Point(3215, 3246), Point(3224, 3235), Point(3231, 3223),
Point(3222, 3216)];
end;
'FallyToDraynor':
begin
Tiles := [Point(2976, 3378), Point(2989, 3370), Point(3000, 3361),
Point(3004, 3347), Point(3008, 3332), Point(3008, 3316),
Point(3007, 3301), Point(3008, 3287), Point(3014, 3275),
Point(3027, 3268), Point(3043, 3269), Point(3058, 3274),
Point(3073, 3268), Point(3080, 3254), Point(3080, 3248)];
end;
'FallyToVarrok':
begin
Tiles := [Point(2965, 3392), Point(2965, 3406), Point(2977, 3415),
Point(2987, 3422), Point(2999, 3432), Point(3014, 3428),
Point(3029, 3426), Point(3041, 3417), Point(3054, 3410),
Point(3068, 3416), Point(3082, 3414), Point(3094, 3421),
Point(3109, 3420), Point(3123, 3415), Point(3139, 3416),
Point(3154, 3417), Point(3167, 3425), Point(3182, 3428),
Point(3198, 3428), Point(3211, 3428)];
end;
'FallyToLumby':
begin
Tiles := [Point(2974, 3378), Point(2987, 3372), Point(3001, 3363),
Point(3005, 3350), Point(3007, 3335), Point(3008, 3321),
Point(3009, 3307), Point(3011, 3292), Point(3013, 3277),
Point(3028, 3275), Point(3044, 3275), Point(3059, 3276),
Point(3074, 3277), Point(3088, 3282), Point(3104, 3281),
Point(3105, 3265), Point(3105, 3250), Point(3107, 3235),
Point(3119, 3226), Point(3134, 3226), Point(3149, 3228),
Point(3164, 3232), Point(3178, 3236), Point(3194, 3236),
Point(3210, 3236), Point(3225, 3232), Point(3232, 3219),
Point(3222, 3216)];
end;
'VarrockToFally':
begin
Tiles := [Point(3204, 3429), Point(3188, 3428), Point(3174, 3428),
Point(3162, 3419), Point(3148, 3416), Point(3132, 3416),
Point(3117, 3419), Point(3109, 3420), Point(3094, 3419),
Point(3082, 3414), Point(3069, 3417), Point(3054, 3413),
Point(3040, 3421), Point(3030, 3427), Point(3015, 3430),
Point(3000, 3431), Point(2988, 3427), Point(2986, 3413),
Point(2977, 3404), Point(2967, 3393), Point(2964, 3380)];
end;
'VarrokToDraynor':
begin
Tiles := [Point(3212, 3417), Point(3212, 3402), Point(3212, 3389),
Point(3213, 3375), Point(3219, 3363), Point(3227, 3353),
Point(3227, 3338), Point(3241, 3336), Point(3255, 3332),
Point(3267, 3330), Point(3256, 3321), Point(3246, 3311),
Point(3239, 3298), Point(3239, 3283), Point(3246, 3269),
Point(3242, 3261), Point(3227, 3260), Point(3219, 3250),
Point(3205, 3245), Point(3190, 3243), Point(3176, 3240),
Point(3161, 3234), Point(3147, 3230), Point(3134, 3226),
Point(3118, 3226), Point(3105, 3233), Point(3101, 3243),
Point(3088, 3247), Point(3080, 3249)];
end;
'VarrockToLumby':
begin
Tiles := [Point(3212, 3417), Point(3212, 3402), Point(3212, 3389),
Point(3213, 3375), Point(3219, 3363), Point(3227, 3353),
Point(3227, 3338), Point(3241, 3336), Point(3255, 3332),
Point(3267, 3330), Point(3256, 3321), Point(3246, 3311),
Point(3239, 3298), Point(3239, 3283), Point(3247, 3272),
Point(3249, 3259), Point(3255, 3246), Point(3260, 3232),
Point(3252, 3224), Point(3239, 3224), Point(3236, 3217),
Point(3221, 3217)];
end;
end;
Tiles:= WalkThroughPath(Tiles);
end;

^^ to get your char to draynor if its not already there

And Please Post Bugs so we can get this flawless

NiCbaZ

2008-08-16 00:46:20

Proggies:

-&#8211;&#8211;&#8226;(·->¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤<-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> NicBaZ LaWW CrAfTeR <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> Laws crafted: 280 <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> Loads Done: 10 <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> Time Running: 52 Minutes and 32 Seconds <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·->¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤<-·)&#8226;&#8211;&#8211;&#8211;

-&#8211;&#8211;&#8226;(·->¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤<-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> NicBaZ LaWW CrAfTeR <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> Laws crafted: 392 <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> Loads Done: 14 <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> Time Running: 1 Hours, 12 Minutes and 34 Seconds <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·->¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤<-·)&#8226;&#8211;&#8211;&#8211;

NiCbaZ

2008-08-16 01:48:34

Update 1.1

-Ini File Saving
-Tweaked Walking

Nava2

2008-08-16 02:30:23

Just so you know, your signature is off. You need some spaces at the bottom of it. The script signature.

Should be:

procedure Signature;
begin
Writeln(' _______ .__ __________ __________ .____ __ __ _________ ___________ __ __________ ');
Writeln(' \ \ |__| ____ \______ \_____ \____ / | | _____ __ _ __/ \ / \ \_ ___ \_______ _____ \_ _____/_/ |_ ____ \______ \ ');
Writeln(' / | \ | |_/ ___\ | | _/\__ \ / / | | \__ \ \ \/ \/ /\ \/\/ / / \ \/\_ __ \\__ \ | __) \ __\_/ __ \ | _/ ');
Writeln('/ | \| |\ \___ | | \ / __ \_ / /_ | |___ / __ \_\ / \ / \ \____| | \/ / __ \_| \ | | \ ___/ | | \ ');
Writeln('\____|__ /|__| \___ >|______ /(____ //_______ \ |_______ \(____ / \/\_/ \__/\ / \______ /|__| (____ /\___ / |__| \___ >|____|_ / ');
Writeln(' \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ \/ ');
end;

NiCbaZ

2008-08-16 02:37:53

thank you for the feedback.

kingarabian

2008-08-16 03:15:40

Make an nature rune crafter? Cause My accounts only have 44 rcing.

Daniel

2008-08-16 04:16:25

Nice script ;) Very good. But too bad i'm not a member :'(

NiCbaZ

2008-08-16 05:31:29

its kinda stable now does 10 loads no problem :)

jakeyboy29

2008-08-16 05:53:02

DESCRIPTION : Crafts Newts And Banks In Draynor

crafts newts?

NiCbaZ

2008-08-16 05:58:31

From: jakeyboy29
DESCRIPTION : Crafts Newts And Banks In Draynor

crafts newts?


sorry fixed.

jakeyboy29

2008-08-16 07:08:18

still hung over on your eye of newt buyer?

BobboHobbo

2008-08-16 08:20:58

Lol i love your proggie its SEXY!, i would try this script if i had a law tailsman.

NiCbaZ

2008-08-16 18:47:07

From: BobboHobbo
Lol i love your proggie its SEXY!, i would try this script if i had a law tailsman.


it was fr0zons idea, but thanks, anyone going 2 use?

sk80rdie76

2008-08-16 18:55:15

From: NiCbaZ
it was fr0zons idea, but thanks, anyone going 2 use?


once i get some more p ess on my account i will test…expect a proggy from me

EDIT:


&#8211;¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤&#8211;&#8226;(·-><-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> NicBaZ LaWW CrAfTeR <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> Laws crafted: 168 <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> Loads Done: 6 <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;&#8211;&#8226;(·-> Time Running: 29 Minutes and 40 Seconds <-·)&#8226;&#8211;&#8211;&#8211;
-&#8211;¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤&#8211;&#8226;(·-><-·)&#8226;&#8211;&#8211;&#8211;

stopped randomly for some reason.

id suggest you make it so it has the camera pointed all the way up instead of all the way down like it is in the script.

NiCbaZ

2008-08-17 00:10:35

ok, tell me where it stoped please, but are you happy with it?

sk80rdie76

2008-08-17 17:05:01

From: NiCbaZ
ok, tell me where it stoped please, but are you happy with it?


it stopped on its way back from crafting laws.

im happy with the script but like i said you should make it so the camera points all the way up and also i think you should have it right click the monks and click travel so it is faster instead of talking to them to go to the island.

NiCbaZ

2008-08-18 03:22:13

ok, will include that in next one, please make sure to use SRl stats tho..

jas0npc

2008-08-18 03:51:29

From: sk80rdie76
it stopped on its way back from crafting laws.

im happy with the script but like i said you should make it so the camera points all the way up and also i think you should have it right click the monks and click travel so it is faster instead of talking to them to go to the island.


Why not have it do both?

randy marsh

2008-08-18 06:14:49

Il try this tonight looks sweet!

Knoot

2008-08-18 09:26:17

Ill try this when ill get my RC lvl up :)

Simtoon

2008-12-23 01:51:44

Does This Still Work?