Can Anyone Test This Code for me to see if the walking works for you. I have created a custom sps map but even with that it do not walk from the mine to the water and from the water to the bank.
It does however walk from the bank to the mine.
Start in Draynor Village Bank
I have put the wait conditions in just to test the script to see where the problems is. It is actually not necessary to use it.
Thanks for testing this for me. Feedback will be appreciated.
program ClMinSofBank;
{$DEFINE SMART}
{$i srl/srl.simba}
{$IFDEF SIMBAMAJOR980}
{$I SRL/SRL/MISC/PAINTSMART.SIMBA}
{$ELSE}
{$I SRL/SRL/MISC/SMARTGRAPHICS.SIMBA}
{$ENDIF}
{$i sps/sps.simba}
{$I SRL/SRL/Skill/magic.simba}
{$i ObjectDTM/ObjDTMInclude.simba}
const // declare constants used
// srlstats_user = 'anonymous'; // your srl stats username
// srlstats_password = 'anonymous'; // your srl stats password
Server = 38; // enter "0" to pick a random server.
Members = false; // is this player a member
NumbOfPlayers = 1; // how many players should be active
StartPlayer = 0; // the player who should be first used
WorldSwitching = false; // switch world after the break
ChooseActivity = 1; // choose option to run
// 0 = mine clay and bank it
// 1 = mine clay and soften it then bank it
// 2 = get soft clay from bank and craft it then bank it
// 3 = get soft clay from bank and craft it and drop it
// 4 = mine clay,soften it,craft it,bank it
// 5 = mine clay,soften it,craft it,drop it
// 6 = fire softpots,urns,bowls and bank it
// 7 = fire softpots,urns,bowls and drop it
// 8 = get clay from bank,soften it bank it
ChoosePottery = 0; // valid pottery options to choose from
// 0 =
LoadsToDo = 30; // set how many repetitions to do of a certain activity
AutoSwitch = true; // if loads are finished doing, attempt to switch to new activity
var // Declare Global Variables
WalkPath: tpointarray;
procedure statsguise(wat:string); // Status Update In Pinbar
begin
status(wat);
disguise(wat);
end;
procedure globalfailsafe(reason:string); // GlobalFailsafe
begin
writeln('we have a bug. kill it !!');
players[currentplayer].loc := reason;
logout;
stats_commit;
terminatescript;
end;
procedure AntiBan; // AntiBan Procedure
begin
if(not(loggedin))then exit;
findnormalrandoms;
begin
case random(5) of
1: examineinv;
2: pickupmouse;
3: boredhuman;
4: randommovement;
5: randomrclick;
end;
end;
end;
procedure Rest; // Rest Procedure
var
s: string;
begin
if(not(loggedin))then
exit;
writeln('Are We Tired? Then Rest If So');
if not (loggedin) then
exit;
if (getmmlevels('run', s) <= 25) then
restuntil(randomrange(75,100))
end;
procedure WalkToMine; // Walk To The Clay Mine
Begin
if(not(loggedin))then
exit;
sps_setup(runescape_surface,['10_8', '10_9', '11_8', '9_8', '9_9']);
writeln('We Are Going To Mine Clay. Walking To The Clay Mine From The Bank.....');
makecompass('n');
setangle(srl_angle_high);
WalkPath := [Point(4208, 3684), Point(4206, 3667), Point(4224, 3657), Point(4252, 3658), Point(4253, 3606), Point(4255, 3555), Point(4271, 3508), Point(4282, 3455), Point(4324, 3431), Point(4369, 3415), Point(4407, 3388)];
sps_walkpath(WalkPath);
FFlag(10);
writeln('We Have Arrived at the Clay Mine');
Rest;
wait(1000+random(400));
End;
procedure WalkToWaterFromMine; // Walk To Water
Begin
if(not(loggedin))then
exit;
findnormalrandoms;
sps_setup(runescape_surface,['10_7', '10_8', '11_7', '11_8']);
writeln('Going To Make SoftClay. Walking To The Water From The Mine.....');
makecompass('n');
setangle(srl_angle_high);
WalkPath := [Point(4400, 3400), Point(4388, 3410), Point(4373, 3414), Point(4356, 3418), Point(4341, 3424), Point(4330, 3428), Point(4316, 3435), Point(4301, 3441), Point(4288, 3454), Point(4279, 3467), Point(4275, 3478), Point(4274, 3491), Point(4270, 3511), Point(4269, 3524), Point(4262, 3536), Point(4257, 3548), Point(4255, 3564), Point(4247, 3572), Point(4233, 3572), Point(4222, 3571), Point(4215, 3567)];
sps_walkpath(WalkPath);
FFlag(10);
writeln('We Have Arrived at the Water');
Rest;
wait(1000+random(400));
End;
procedure WalkToBankFromWater; //Walk To Bank From Water
Begin
if(not(loggedin))then
exit;
findnormalrandoms;
sps_setup(runescape_surface,['10_7', '10_8', '10_9', '9_7', '9_8', '9_9']);
writeln('We Are Going To Bank Our Inventory. Walking To The Bank From The Water.....');
makecompass('n');
setangle(srl_angle_high);
WalkPath := [Point(4213, 3575), Point(4215, 3613), Point(4218, 3649), Point(4208, 3684)];
sps_walkpath(WalkPath);
FFlag(10);
writeln('We Have Arrived at the Bank');
Rest;
wait(1000+random(400));
End;
procedure WalkFromMineToBank; // Walk From The Clay Mine To The Bank
Begin
if(not(loggedin))then
exit;
findnormalrandoms;
sps_setup(runescape_surface,['10_7', '10_8', '10_9', '11_7', '11_8', '9_9']);
writeln('We Are Going To Bank Our Inventory. Walking To The Bank From The Mine.....');
makecompass('n');
setangle(srl_angle_high);
WalkPath := [Point(4404, 3388), Point(4350, 3405), Point(4301, 3428), Point(4278, 3473), Point(4268, 3530), Point(4252, 3575), Point(4252, 3614), Point(4251, 3657), Point(4218, 3659), Point(4209, 3684)];
sps_walkpath(WalkPath);
FFlag(10);
writeln('We Have Arrived at the Bank');
Rest;
wait(1000+random(400));
End;
procedure Activity(Choice:integer); // Choose Activity To Implement
begin
if(not(loggedin))then
exit;
writeln('Choose Which Activity To Do');
case Choice of
0: begin // mine clay and bank it
disguise('mine clay and bank it');
if invfull then // check if invfull, if full, then bank, if empty then get soft clay go to craft shop, then bank crafted item
begin
end;
WalkToMine;
WalkFromMineToBank;
end;
1: begin // mine clay and soften it then bank it
disguise('mine clay and soften it then bank it');
if invfull then // check if invfull, if full, then bank, if empty then get pickaxe and go to mine and then wet clay and then bank
begin
end;
WalkToMine;
WalkToWaterFromMine;
WalkToBankFromWater;
end;
2: begin // get soft clay from bank and craft it then bank it
disguise('get soft clay from bank and craft it then bank it');
if invfull then // check if invfull, if full, then bank, if empty then get soft clay go to craft shop, then bank crafted item
begin
end;
end;
3: begin // get soft clay from bank and craft it and drop it
disguise('get soft clay from bank and craft it and drop it');
if invfull then // check if invfull, if full, then bank, if empty then get soft clay go to craft shop, then bank crafted item
begin
end;
end;
4: begin // mine clay,soften it,craft it,bank it
disguise('mine clay,soften it,craft it,bank it');
if invfull then // check if invfull, if full, then bank, if empty then get soft clay go to craft shop, then bank crafted item
begin
end;
end;
5: begin // mine clay,soften it,craft it,drop it
disguise('mine clay,soften it,craft it,drop it');
if invfull then // check if invfull, if full, then bank, if empty then get soft clay go to craft shop, then bank crafted item
begin
end;
end;
end;
end;
procedure DeclarePlayers; // Setup Players
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
with Players[0] do
begin
name := '';
pass := '';
pin := '';
worldinfo := [38];
boxrewards := ['xp','xp','lamp'];
lampskill := skill_slayer;
active := true;
end;
end;
procedure SetupClient; // Setup Client For Run
begin
writeln('start bot client');
{$IFDEF SIMBAMAJOR980}
SMART_SERVER := server;
SMART_MEMBERS := TRUE;
SMART_SIGNED := TRUE;
SMART_SUPERDETAIL := FALSE;
{$ELSE}
SRL_SIXHOURFIX := TRUE;
SMART_FIXSPEED := TRUE;
{$ENDIF}
cleardebug;
Setupsrl;
IgnoreBar;
objdtm_setup;
objdtm_debug := true;
DeclarePlayers;
if not (loggedin) then
loginplayer;
wait(4000+random(400));
end;
begin // Main Program Loop
SetupClient;
Repeat
Activity(ChooseActivity);
Until allplayersinactive;
end.