SRL Archive - MSI Bugs

Problem with Air Runecrafter


1Cexyranged1

2012-02-02 23:12:53

(*
RunMe
=====

The RunMe file is the file that the user will actually run. It doesn't matter
whether they're using the form or not, they still have to run this file. If
not using the form, the user should only change the DeclareSettings and
DeclarePlayers procedures.

The source for can be found
`here <https://github.com/SRL/MSI/raw/master/RunMe.simba>`_, and a very detailed
guide on how to properly setup MSI can be found here
`here <http://villavu.com/forum/showthread.php?p=745942#post745942>`_ if you are
having trouble setting up.

*)

program MSI_Script;
// Define the extras you want to use
{$DEFINE EXTRA_CHARACTER_STATS} // Saves player stats in HTML format

// Define other settings
{$DEFINE SRL5} // Uncomment if you're testing SRL5
{$DEFINE SPS} // Comment to disable SPS (no walking scripts)
{$DEFINE SMART} // Comment to use MSI with a browser
{$DEFINE SRL_REMOTE} // Use SRL's player remote control

{ ============================================================================ }
{$i MSI/MSI/Core/Setup.simba}

const
USE_FORM = True;

(*
DeclareSettings
~~~~~~~~~~~~~~~

.. code-block:: pascal

procedure DeclareSettings();

Sets the global variable 'MSI_Settings.' Can be easily expandable to any type
of setting requested by any user.

*)
procedure DeclareSettings();
begin
MSI_Settings[SETUP_DEBUG_SMART] := True; // Debugs things onto SMART (may cause lag)
MSI_Settings[SETUP_SAVE_DEBUG] := True; // Save's the debug box text to a file
MSI_Settings[SETUP_SAVE_REPORT] := True; // Save's the progress report to a file
MSI_Settings[SETUP_HUMAN_BREAK] := True; // Take more human like breaks
MSI_Settings[SETUP_SWITCH_WORLDS] := True; // Switch worlds when switching players or after breaks
MSI_Settings[SETUP_PRINT_REPORT] := True; // Will only print the short report in the debug box (will still save long report to file)
MSI_Settings[SETUP_BREAK_TIME] := 15; // Single player only - how long to break for (in minutes)
MSI_Settings[SETUP_DEBUG_LEVEL] := 10; // The lower the number, the less the script will debug
MSI_Settings[SETUP_ANTIBAN_WAIT] := 15000; // Minimum time to wait between antibans (in milliseconds 1000ms = 1s)
MSI_Settings[SETUP_RANDOMS_WAIT] := 10000; // Minimum time to wait between randoms checks
MSI_Settings[SETUP_STATS_ID] := ''; // Stats ID
MSI_Settings[SETUP_STATS_PASS] := ''; // Stats password
MSI_Settings[SETUP_QC_LEVELUP] := True; // Quick chat when you level up, only available when your level is above 20
MSI_Settings[SETUP_MAX_PLAYERS] := 30; // How many players around you before switching worlds
MSI_Settings[SETUP_RANDOM_NP] := True; // Choose a random player when switching players?
end;

(*
DeclarePlayers
~~~~~~~~~~~~~~

.. code-block:: pascal

procedure DeclarePlayers();

When called, sets the global variable 'MSI_Players.' This is the procedure
the user needs to setup if they elect not to use the player form.

*)
procedure DeclarePlayers();
var
i: Integer;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
SetLength(MSI_Players, HowManyPlayers);

for i := 0 to High(MSI_Players) do
SetLength(MSI_Players[i].Scripts, 100);

CurrentPlayer := 0;
CurrentScript := 0;

with MSI_Players[0] do
begin
Name := ''; // Username
Pass := ''; // Password
Pin := ''; // Bank pin; leave as '' if player doesn't have one
Active := True; // Use this player?
Member := False; // Is this player a member?
BreakLoads := 0; // Amount of loads before breaking/switching players; leave 0 to not take breaks
BreakTime := 0; // Amount of time (in minutes) before breaking/witching; leave 0 to not take breaks
TotalLoads := 0; // Total loads for the player to do; leave 0 if using TotalTime or to go forever
TotalTime := 0; // How long for the player to run? (in minutes); leave 0 if using TotalLoads or go forever

with Scripts[0] do
begin
end;
end;
{
with MSI_Players[1] do
begin
Name := '';
Pass := '';
Pin := '';
Active := True;
Member := False;
BreakLoads := 0;
BreakTime := 0;
TotalLoads := 0;
TotalTime := 0;

with Scripts[0] do
begin
end;
end;

with MSI_Players[2] do
begin
Name := '';
Pass := '';
Pin := '';
Active := True;
Member := False;
BreakLoads := ;
BreakTime := ;
TotalLoads := ;
TotalTime := ;

with Scripts[0] do
begin
end;
end;

with MSI_Players[3] do
begin
Name := '';
Pass := '';
Pin := '';
Active := True;
Member := False;
BreakLoads := ;
BreakTime := ;
TotalLoads := ;
TotalTime := ;

with Scripts[0] do
begin
end;
end;

with MSI_Players[4] do
begin
Name := '';
Pass := '';
Pin := '';
Active := True;
Member := False;
BreakLoads := ;
BreakTime := ;
TotalLoads := ;
TotalTime := ;

with Scripts[0] do
begin
end;
end;

with MSI_Players[5] do
begin
Name := '';
Pass := '';
Pin := '';
Active := True;
Member := False;
BreakLoads := ;
BreakTime := ;
TotalLoads := ;
TotalTime := ;

with Scripts[0] do
begin
end;
end;

with MSI_Players[6] do
begin
Name := '';
Pass := '';
Pin := '';
Active := True;
Member := False;
BreakLoads := ;
BreakTime := ;
TotalLoads := ;
TotalTime := ;

with Scripts[0] do
begin
end;
end;

with MSI_Players[7] do
begin
Name := '';
Pass := '';
Pin := '';
Active := True;
Member := False;
BreakLoads := ;
BreakTime := ;
TotalLoads := ;
TotalTime := ;

with Scripts[0] do
begin
end;
end;
}
end;

var
i: integer;
begin
// set the script start date and time used to progress reports and logs
ScriptStart := TheDate(DATE_DAY) + ' at ' + TheTime;
ScriptStart := Replace(scriptStart, ':', ' ');

ClearDebug;
MSI_Setup;

// initilize form if selected, otherwise call player setup routines
if (USE_FORM) then
begin
try
try
ThreadSafeCallEx('ShowMSIForm');
finally
ThreadSafeCallEx('FreeMSIForm');
end;
except
Writeln(ExceptionToString(ExceptionType, ExceptionParam));
end;

HowManyPlayers := Length(MSI_Players);
NumberOfPlayers(HowManyPlayers);

for i := 0 to High(MSI_Players) do
SetLength(MSI_Players[i].Scripts, 100);

if (not ScriptReady) then
TerminateScript;
end else begin
DeclareSettings;
DeclarePlayers;
end;

// initialize SMART and clear it's canvas
{$IFDEF SMART}
SMART_Server := 10;
SMART_Members := False;
SMART_Signed := True;
SMART_SuperDetail := False;
{$ENDIF}

SetupSRL;
ActivateClient;
CurrDebugLevel := 1;
MSI_InitSRLPlayers();
SetScriptProp(SP_WriteTimeStamp, [True]);
AddOnTerminate('MSI_ScriptTerminate');

{$IFDEF SMART}
SMART_ClearCanvas();
{$ENDIF}

// create debug file
if (MSI_Settings[SETUP_SAVE_DEBUG]) then
DebugFile := CreateFile(PATH_DEBUG + ScriptStart + '.txt');

SetupSRLStats(21, MSI_Settings[SETUP_STATS_ID], MSI_Settings[SETUP_STATS_PASS]);

MSI_WalkingDefines();

// this boolean isn't yet in the player form
if (USE_FORM) then
MSI_Settings[SETUP_PRINT_REPORT] := True;

MSI_Settings[SETUP_DEATH_WALK] := true;

MSI_Mainloop;
end.

the problem is, it either walks from varrock westbank to altar, then just stops. or its at altar and does nothing…

'Toxin

2012-02-02 23:14:24

From: 1Cexyranged1
(*
RunMe
=====

The RunMe file is the file that the user will actually run. It doesn't matter
whether they're using the form or not, they still have to run this file. If
not using the form, the user should only change the DeclareSettings and
DeclarePlayers procedures.

The source for can be found
`here <https://github.com/SRL/MSI/raw/master/RunMe.simba>`_, and a very detailed
guide on how to properly setup MSI can be found here
`here <http://villavu.com/forum/showthread.php?p=745942#post745942>`_ if you are
having trouble setting up.

*)

program MSI_Script;
// Define the extras you want to use
{$DEFINE EXTRA_CHARACTER_STATS} // Saves player stats in HTML format

the problem is, it either walks from varrock westbank to altar, then just stops. or its at altar and does nothing…


You do realize, that not all of MSI is fully optimized. Try runecrafting at a different location, maybe SPS walking is messing up for that path which was set in MSI a while back and hasn't been updated since.

1Cexyranged1

2012-02-02 23:29:38

check my code again, didn't post the whole thing before.

Air is the most efficient no?

Dairiun

2012-02-02 23:52:00

Air is the most money in my opinion… F2p at least, the rest is all worthless.

Coh3n

2012-02-03 01:53:09

Read the stickied threads at the top of this forum.