my fix doesn't really matter where the orb thingy is :D
Printable View
my fix doesn't really matter where the orb thingy is :D
============S1NGlassblower==========
Time Running: 1 Hours, 13 Minutes and 43 Seconds
XP Earned: 107310
XP/h: 87342
===================================
===================================
===================================
============S1NGlassblower==========
Time Running: 5 Hours, 50 Minutes and 7 Seconds
XP Earned: 505733
XP/h: 86672
===================================
===================================
perfect. cheers dude :D
I used it 65-75 but now whenever I try to use this script it withdraws glass but doesn't make orbs banks and withdraws more glass. How can i fix this?
I had the same problem, did as MasterCrimez said and still doesn't work:(
Edit: fixed:D
I changed this
to this to fix itSimba Code:if WaitColor(305,362,4543066,5,10000) then
Simba Code:if WaitColor(305,362,1972494,5,10000) then
Line 64
Not sure what exactly it was looking for originally so I just picked the color at the position 305,362 when you open it up
Nice, Based Lord! :)
Maybe I will make some failsafes for this script soon because it also doesn't recover if it loses connection and other stuff...
If I get the time i'll make this script 100%
Edit: I'm now 78 crafting and I've just bought 200k molten glass :D:D So I can use some 24hour proggies, so I'll make it perfect when I start using it fulltime ;)
FIX
- Added failsafes
- Prevented unlimited loops
- Added antiban
- Added breaking
- And some more things
Shay, call this v1.3 if you like :)
not tested yet.
Simba Code:program GlassBlower;
{$include srl/srl/misc/smart.simba}
{$I SRL/SRL.simba}
{$I srl/srl/misc/debug.simba}
const
SRLStats_User = ''; // Your SRL Stats ID (If you dont have one then just leave it as it is)
SRLStats_Password = ''; // Your SRL Stats Password (If you dont have one then just leave it as it is)
AntiBanAmount = 30; //1 = antiban very much, 100 = almost never. recommended 15-40.
Slot = 3; //choose your bank slot where the glass is at.
NoBreakRandom = 180;//between 0 and <this> minutes we are playing before a break
BreakRandom = 30;//between 10 and 10+<this> minutes we are breaking when we have a break
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; // Username
Players[0].Pass := ''; // Password
Players[0].Active := True;
Players[0].Pin := '';
Players[0].BoxRewards := ['Xp', 'mote', 'ostume', 'oins', 'aphire', 'ssence'];
end;// declare players
var
StartTime,
XPS,
XP,
XPH,
Sec,
StatGain,
XP1,
XP2,
LastBreakTime,
BreakNotMinutes,
HowLong,
Inventoriesdone,
FailCraft,
BankFails : integer;
StopScript : boolean;
StopReason : string;
procedure SetupLogin;
begin
ClearDebug;
Smart_Server := 87;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
end;
Procedure Antibans;
Begin
Case Random(10) Of
0: begin Writeln('hoverskill'); HoverSkill('crafting', False); FTab(tab_Inv); end;
1: begin Writeln('boredhuman'); Boredhuman; ClickNorth(0); end;
2..5: begin Writeln('wait 3-10s'); Wait(3000 + random(7000)); end;
6: begin Writeln('pickupmouse'); PickUpMouse; end;
7: begin Writeln('RandomMovement'); RandomMovement; ClickNorth(0); end;
8: begin Writeln('RandomRClick'); RandomRClick; end;
9: begin Writeln('MiniBreak 0-180s'); Wait(Random(180000)); end;
end;
end;
Procedure TakeSomeBreaks;
//procedure takesomebreaks takes breaks for you if you are logged in too long.
Var
TimeSinceLastBreak : integer;
Begin
if(BreakNotMinutes <= 0) And (HowLong <= 0) then
begin
MarkTime(LastBreakTime);
writeln('set BreakNotMinutes, because it is 0');
BreakNotMinutes := (random(NoBreakRandom)+60)*60*1000+random(60000); //in ms
writeln('BreakNotMinutes: ' + IntToStr(BreakNotMinutes/60000) + '.');
end;
TimeSinceLastBreak := TimeFromMark(LastBreakTime);
if(TimeSinceLastBreak > BreakNotMinutes) then
begin
BreakNotMinutes := (random(NoBreakRandom)+60)*60*1000+random(60000); //in ms?
HowLong := (random(BreakRandom)+10)*60*1000+random(60000); //in ms?
writeln('We''re going to take a break for ' + IntToStr(HowLong/60000) + ' minutes');
MarkTime(LastBreakTime);
Logout;
wait(HowLong);
LoginPlayer;
writeln('We''re now going to bot again, for ' + IntToStr(HowLong/60000) + ' minutes');
end;
End;
procedure SolveProblems;
begin
If LobbyScreen = True then LeaveLobby;
If LoggedIn = False then LoginPlayer;
TakeSomeBreaks;
If random(AntiBanAmount) = 1 then Antibans;
end;
procedure Proggy;
begin
XP := GetXPBarTotal - Players[CurrentPlayer].Integers[0];
Sec:= (1+((Getsystemtime-StartTime)/1000));
XPH := (3600*XP) / (Sec);
statGain := XP;
writeLn('============S1NGlassblower==========');
writeLn('Time Running: ' + TimeRunning);
writeLn('XP Earned: ' + IntToStr(XP));
writeLn('XP/h: ' + IntToStr(XPH));
writeLn('Inventories: ' + IntToStr(InventoriesDone));
writelN('===================================');
Stats_Commit;
end;
procedure CraftOrbs;
var
x,y,DTM,t:Integer;
begin
DTM := DTMFromString('mlwAAAHicY2dgYLjAyMBwEYivA/E1ID4NxKeg7IVAvAKI5wPxTCBeBsQLgHgREHu4uwJ1M2HFRgy4ASMeDAUAQzsLUQ==');
MouseItem(Random(28)+1,1);
if WaitColor(305,362,1972494,5,10000) then //if WaitColor(265,430,4141067,5,5000) then
begin
if FindDTM(DTM,x,y,MCX1,MCY1,MCX2,MCY2) then //orbsdingetje in chatding
begin
MissMouse(x,y);
Mouse(x,y,1,1,True);
MarkTime(t);
repeat
XP1 := GetXPBarTotal;
wait(1000);
ClearDebug;
Proggy;
if Timefrommark(t) > 80000 then
begin
if(FailCraft <= 3) then Inc(FailCraft) else
begin
StopScript := True;
StopReason := 'After 80 seconds we didn''t see the last orb being crafted (for the 4rd time)';
exit;
end;
end;
until(FindDTM(DTM,x,y, 681,422,730,457)); //orbsdingetje in laatste slot
if FindDTM(DTM,x,y, 681,422,730,457) then FailCraft := 0;
wait(random(1000));
Inc(InventoriesDone);
Proggy;
end;
end;
FreeDTM(DTM);
end;
procedure Bank;
var
t,u:integer;
begin
SolveProblems;
if BankFails > 10 then
begin
StopScript := True;
StopReason := 'We failed to open the bank 10 times.';
end;
writeln('opening bank');
OpenBankChestEdge(SRL_BANK_SW);
MarkTime(t);
repeat
wait(100);
if PinScreen then
begin
InPin(Players[CurrentPlayer].Pin);
end;
if TimeFromMark(t) > 4000 then
begin
Inc(BankFails);
Bank; //if it takes too long, Restart function.
exit;
end;
until(BankScreen);
if BankScreen then
begin
BankFails := 0;
DepositAll;
MouseBankSlot(Slot,0);
WaitOption('All',4000);
repeat
wait(10);
inc(u);
until(InvFull or (u > 1000));
if InvFull then CloseBank else begin
StopScript := True;
StopReason := 'Could not fill inventory';
end;
end;
end;
//Here starts the script
begin
SetupLogin;
DeclarePlayers;
LoginPlayer;
if (Players[CurrentPlayer].Integers[1] = 0) then
begin
if not IsXPBarOpen then ToggleXPBar(true);
Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
XPS := GetXPBarTotal;
Players[CurrentPlayer].Integers[1] := (Players[CurrentPlayer].Integers[1] + 1);
end;
StartTime:=GetSystemTime;
SetupSRLStats(1068, SRLStats_User, SRLStats_Password);
repeat
Bank;
CraftOrbs;
until(StopScript = True);
stats_IncVariable('Crafting EXP (Gained)', statGain);
stats_Commit;
writeln(StopReason);
writeln('We stop the script now! Cya next time!');
end.
Got 99 from this, thanks:)
<-- still runningPHP Code:============S1NGlassblower==========
Time Running: 5 Hours, 29 Minutes and 35 Seconds
XP Earned: 458010
XP/h: 83379
Inventories: 311
===================================
E: Fix already mentioned
Got 99 a few days ago, forgot to say thanks! Great bot, and a cheap way to get 99.
Updated, requesting this to be moved back to Crafting section.
Moved.
Hey sin could you update this plox ;)
It doesn't work with eoc (opens that menu and stops, when I attempted to fix it myself I seemed to have gone nowhere -.-... I created a dtm for the "blow" button but I don't think it was finding the dtm..should of debugged more but was like meh he knows this better than I do :p)
Updated to run with EoC.
I seem to have a few problems :/
Sometimes (rare but it does happen for extended runs) it will click the orb and then try to click the bank (will cause nothing interesting happened) and it keeps doing this till the user fixes the problem. I also find if nomad is standing infront of the bank it will try to talk to him instead of clicking the chest.
Castle Wars chest :p
@Sin
Script is running as expected (Noticed you recently updated it too :P)
Noticed that every time it banked, it would toggle the xp bar because of the crafting screen would cover it for 1 tick after the 'Craft' button was clicked.
Ran for 10 minutes with no problem.
Here is the output:
Code:===================================
============S1NGlassblower==========
Time Running: 10 Minutes and 6 Seconds
XP Earned: 13597
XP/h: 80641
===================================
===================================
Successfully executed.
heres my proggy:
===================================
============S1NGlassblower==========
Time Running: 5 Hours, 6 Seconds
XP Earned: 466265
XP/h: 93232
===================================
===================================
im using this script at sw bank and works flawless :) 1,4m xp till 99
Nice :)
@Justin
Can you elaborate?
did you last update this 11/01/2013 ?
it's working flawless still, only ran it for like 15minutes, but i can tell it wont fail ;)