I assume the order of the potions doesnt specifically matter because mines arranged differently… and i havent cared to read the script yet. :D
Annyway, for those of you who may want to use this for making ovls while boosted (using the login/out trick to keep it up), this may be of interest.
program new;
{$Define SMART}//Remove the first two '//' to use S.M.A.R.T.
{$include srl/srl.simba}
// Optional: Add antiban @ line 111... Not needed since this is such a volatile
// training method (you'll finish EST 1k+ pots/hr ... which ...
// cost EST 56m/hr in supplies...
// So yuh, the stuff in the script = randomized enough, no?
const
ToMake = 400; //Fill in how many overloads (3) to be made
var
torstol, Mixed, ovl, run: integer;
procedure DeclarePlayers;
begin
HowManyPlayers:= 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer:= 0;
with Players[0] do
begin
Name := 'Turpin459'; // DON'T FORGET THIS!
Pass := 'perdrowssap4'; // DON'T FORGET THIS!
Pin := '4594'; //This too. :)
Active := True;
end;
end;
procedure LeSetup;
begin
ActivateClient;
DeclarePlayers;
LoginPlayer;
end;
procedure LeGlobals;
begin
torstol := DTMFromString('mAAEAAHiclc3NCkBgEIXh830rfxGhRC6ECIkS93873rCwk6nnzCxOTSBpttKIHgt2HJiworN3Z0OL3EghEsQokKFGhRLec6dwB58vVk7jXftLRP5hfnrPCWhIBdo=');
ovl := DTMFromString('mPwEAAHicpcxLCoAwDEXRxB8Khe5/PQ50JgURFBTdhAoqeKEdOayBk8droFYYFbmIjCxwhreHSMlSfc9R4aYe2DHSHTr0GFCjRaP+vmHFHHLBBGMMPyRRLDuW/vCZF2UeE9g=');
SetDTMName(torstol, 'Torstol DTM');
SetDTMName(ovl, 'Overload DTM');
end;
procedure CiaoGlobals;
begin
FreeDTM(torstol);
FreeDTM(ovl);
end;
function LeWithdraw: boolean;
var
i,t: integer;
v: TVariantArray;
begin
result := false;
if not loggedin then
exit;
MarkTime(t);
for i := 0 to 5 do
begin
if (TimeFromMark(t)>15000) then
exit;
v := [i, 0, 4];
WaitFuncEx('Withdraw', v, 250, 2000);
end;
if (invcount=24) then
result := true;
end;
function LeMixing: boolean;
var
a, i, x, y: integer;
begin
result := false;
if (not(loggedin)) or BankScreen then
exit;
a := RandomRange(1, 4);
i := RandomRange(5, 24);
if FindDTM(torstol, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
InvMouse(a, mouse_left);
if ItemActivated(a) then
begin
MouseTbox(invbox(i), mouse_left);
result := true;
exit;
end;
end;
end;
function ChatPopupWrap: boolean;
var
x, y: integer;
begin
result := FindColorSpiralTolerance(x, y, 16777215, MCX1, MCY1, MCX2, MCY2, 5);
end;
function LeMaking: boolean;
var
c, t: integer;
begin
result := false;
if not loggedin then
exit;
if WaitFunc(@ChatPopupWrap, 250, 2500) then
MouseBox(230, 406, 290, 450, mouse_left)
else
exit;
MarkTime(t);
repeat
c := CountItems('dtm', ovl, []);
wait(random(500));
// *** ... '''
until(c=4)or(timefrommark(t)>10000);
if (c=4) then
result := true;
end;
procedure LeReport;
var
MixPH, LeXP: Longint;
begin
MixPH := Round((Mixed*3600)/(GetTimeRunning/1000));
LeXP := Mixed*1000;
WriteLn('Overload (3)''s made: '+ToStr(Mixed)+', in '+
MsToTime(GetTimeRunning, Time_Formal)+'.');
WriteLn('Overload (3)''s made / hour: '+ToStr(MixPH)+'.');
WriteLn('Herblore Experience gained: '+ToStr(LeXP)+'.');
end;
procedure MainLoop;
var
t: integer;
begin
MarkTime(t);
repeat
if not loggedin then
loginPlayer;
ClearDebug;
LeReport;
MakeCompass('w');
SetAngle(Srl_angle_high);
run := 0;
Repeat
OpenBankChest(srl_bank_sw);
If PinScreen then InPin(Players[0].Pin);
DepositAll;
LeWithdraw;
CloseBank;
if LeMixing then
LeMaking;
IncEx(Mixed, 4);
incEx(run,1);
Until Run=2
if loggedin then
ExitToLobby;
until (ToMake=Mixed);
end;
begin
{$IFDEF SMART}
SRL_SixHourFix := True;
Smart_FixSpeed := True;
{$ENDIF}
SetupSRL;
AddOnTerminate('CiaoGlobals');
LeSetup;
LeGlobals;
MainLoop;
end.
Just barely modified to make 2 sets of ovls before logging out. should work assuming you inet isnt laggy.
Using this method, im getting roughly 450 ovls/hr.