I'm using Catherby Cooker in MSI. I just copy pasted what the script says in Simba. Hopefully this is what you were looking for? If not, I'll try again.
When it doesn't work properly, it says it's failing to set up the character.
procedure DeclareSettings();
begin
MSI_Settings[SETUP_RANDOM_TOOL] := True; // Use SRL's Random Tool? It notifies you when a random is found.
MSI_Settings[SETUP_REPORT_GUI] := False; // Use a GUI to display the progress report (recommended)
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_DEATH_WALK] := True; // Use MSI's death walking feature if the player gets lost?
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();
// these settings aren't yet in the player form
if (USE_FORM) then
begin
MSI_Settings[SETUP_RANDOM_TOOL] := true;
MSI_Settings[SETUP_PRINT_REPORT] := true;
MSI_Settings[SETUP_REPORT_GUI] := false;
MSI_Settings[SETUP_DEATH_WALK] := true;
end;
if (MSI_Settings[SETUP_RANDOM_TOOL]) then
SetupRandomTool(15000, 5, appPath+'Includes/MSI/MSI/RandomSound.wav');
MSI_Mainloop;
end.