PoH Firemaker | Butler | No Randoms | Flawless
Heya guys, releasing a long awaited script :)
What it does:- Will burn any type of log in your PoH
- No Randoms
- Will pay Butler when needed
- Tons of custom functions
- Sinflexes
- Smart log handling
- TPA Butler finding
Requirements:- Demon butler
- Any firemaking level
- Noted logs in first inventory slot
- Clothes that DO NOT LOOK LIKE A FIRE
- Money to pay the butler
- Start character in the MOST south eastern place
View this screenshot -

Start in same area, where clothes like mine (Stuff that doesn't have yellow/orange)
Set camera angle to the highest.
^.^
From: Gucci
<3 Sin
From: hellohappy22

Thanks Sin! :D
From: Jagex Mod
Thank you for 99 fm. Add me to the list lol.
Got 98, then did firemaker's curse for 80k xp.
From: Excel
Hey Sin! just wanted to let you know, your v1.4Script has gotten me to 99 FM. thanks bro!
From: TomTuff

Woot thanks sin :)
From: anvi89
thanks for the script i got 40-99 with it in like 5 days doing maples. :)
Changes in v1.1 -
writeLn('Changes in 1.1: ');
writeLn(' -Can now start script with any amount of logs in invy.');
writeLn(' -Changes to relocation procedure');
writeLn(' -Can now choose what logs you are using');
writeLn(' -Now uses HumanMMouse and HumanMouse by Flight');
Changes in v1.2 -
writeLn('Changes in 1.2: ');
writeLn(' -Now stores uptext, no need to add type of logs');
writeLn(' -Relocation procedure changes');
writeLn(' -Couple new features to speed up script =]');
Changes in v1.3 -
writeLn('Changes in 1.3: ');
writeLn(' -GetLogs changed, now more efficient');
writeLn(' -Will not lose log now. EVER.');
writeLn(' -MouseSpeed changes, much more humanlike');
writeLn(' -Progress report is now optional');
Changes in v1.4 -
Is basically 1.3 with the addition of the Spin Ticket fix. Guess you could call this 1.35.
Will not change in code changelog.
Changes in v1.5 -
writeLn('Changes in 1.5: ');
writeLn(' -Fixed numerical overflow error');
writeLn(' -Added Spin Ticket support');
Changes in v1.6 -
writeLn('Changes in 1.6: ');
writeLn(' -Butler changing, will now withdraw when invy is low.');
writeLn(' -Added Spin Ticket support');
writeLn('Changes in 1.7: ');
writeln('Will no longer light the whole row');
writeLn('Wont be a retard anymore. Hopefully.');
wL('Changes in 1.8: ');
wl('Few changes, havent been able to test.');
Wl('Added SRL Stats!');
wl('PLEASE REPORT BUGS!!!');
b_lone
2012-04-12 21:19:29
Woah. Virtus equipment. I must use this script!
EDIT: Talk about burning cash!
Yes, it gives you free Virtus if you use it.
Uishi
2012-04-12 21:54:14
Loving the script since its the 1st working firemaking script i've used! One thing though, it messes up after i got a strange rock. Keeps right clicking the rock and trying to light it lol.
Other than that, nice script.
You're going to have to bank that strange rock or attach it in the museum place for free xp.
Grihmm
2012-04-12 23:02:45
Lol free Virtus. I will use this script in a few moments. I have 85k maples to burn.
Edit: Perhaps you should mention that you need coins in your coin pouch and how much the butler costs?
Grihmm
2012-04-12 23:19:43
Oops my bad. I kinda skimmed requirements because I knew I had them. :embarassed:
Btw, what is a sinflex?
kunzy
2012-04-12 23:25:59
Where is this sin?? looks like a good script
Harry
2012-04-12 23:26:18
Why use coord clicking for your walking? Other than that, sorta cool.
Excel
2012-04-13 00:24:50
Loving this script, all the other firemaking ones are buggy.
Perfect timing bro. Thanks!
Empty POT!?!
2012-04-13 01:57:36
you should add strange rock and those squeel of fortune tickets. They can screw up a script.
Kidlington
2012-04-13 02:07:26
From: Empty POT!?!
you should add strange rock and those squeel of fortune tickets. They can screw up a script.
Simba automatically clicks on the tickets for me.
It creates fire in the same row each time.
Excel
2012-04-13 03:08:23
Btw, i just got a random in POH. So i believe jagex added that feature.
From: Excel
Btw, i just got a random in POH. So i believe jagex added that feature.
You need to be in building mode.
siuman101
2012-04-13 05:52:20
another good script :P one minor problem, it always light on the same row which already lit. Actually, i have a large surface area for the bot to work on. You should increase the rage of area, so that the bot won't light on the same row. other than that, the script works excellent.
From: siuman101
another good script :P , but why unnote 26 log but not 27?
The demon butler can only carry 26 items.
Grihmm
2012-04-13 06:05:09
I found a bug. If the text "You cannot build a fire here" comes up then every time the script starts to light a log it will run a few steps away before it lights. Eventually, your logs will be scattered across the ground until your inventory is empty. This is caused by your BurnLogs procedure. To fix this I turned on my "Public" chat box, which effectively turns off the failsafe.
Kidlington
2012-04-13 06:05:47
From: sir eska eau
The demon butler can only carry 26 items.
Is it possible to light fires in 2 rows instead of going back the the same row where fires are already lit?
siuman101
2012-04-13 06:17:09
From: Kidlington
Is it possible to light fires in 2 rows instead of going back the the same row where fires are already lit?
I have your problem too… It happens almost every time. One more thing is that sometimes it will stop burning the log for a while, usually for like 5-10sec, but i don't know why.
No worries I'll get on that once I get home.
Kidlington
2012-04-13 07:02:26
From: Sin
No worries I'll get on that once I get home.
My XP rate at the moment is 40k/hr with maples. If you fix this, it can easily be 120k. Thanks for the quick response.
No way haha, i'm getting 180k/h with Yew Logs, about to sell 'em and use Magic's..
But, expect 1.1 in about two hours, which is when my spare period at school starts.
It will be untested but it'll have the following features.
-Fixed burning
-Text slot for what log you are using
-Increased proggy dimensions
illuminatiswag
2012-04-13 08:05:08
Trying now will get back to you
My runescape character is homeless, no Sin firemaking for me :( would if I could
illuminatiswag
2012-04-13 08:16:51
From: Kidlington
Is it possible to light fires in 2 rows instead of going back the the same row where fires are already lit?
I second this would be good if used 2-3 rows instead of 1
Sin if you add support for 2 rows you get coder of the year award :D
Edit: Actually mine just went to a different row on the 3rd inv hmmm ? lets see wear this go i think this is the part for the free armor :D
Second Edit: Nope same thing going to row of lite fires causing the xp/hr to drastically drop
Scripting update now, spare period has started ^.^
Kidlington
2012-04-13 09:46:45
From: Sin
Scripting update now, spare period has started ^.^
Camping this thread now.:p
Kidlington
2012-04-13 10:36:34
From: Sin
Updated ^.^
Trying it now.
Let me know how it goes =]
Kidlington
2012-04-13 10:48:02
From: Sin
Let me know how it goes =]
It lights one fire and script stops.
It gives me this error:
Error: divide by Zero at line 240
Pooh, I knew I got something wrong, revising 1.1.
1.1 HAS BEEN REVISED! Redownload 1.1!
Kidlington
2012-04-13 10:52:25
From: Sin
1.1 HAS BEEN REVISED! Redownload 1.1!
Thanks, will quickly let you know!
EDIT: Still getting the same error.
stoopdfish
2012-04-13 13:59:10
This script looks really promising, and it may be user error, but when I start it with logs in invo, no red or orange clothes on, and in the southeast corner of my house, it keeps clicking the minimap to make me run farther east. It just keeps clicking in to the blackness. I'm using 1.1
stoopdfish
2012-04-13 14:11:42
NVM, it was user error =$ Anyone having my problem, make sure the demon butler is in view. Sorry haha.
However, now I'm getting the divide by zero error as well.
Any suggestions?
[EDIT] If you change the player integer at line 237 to "1" instead of 0, it seems to fix it. Granted, I don't know what I'm doing.
I'll look it over, I think I know what's wrong.
Hazzah
2012-04-13 14:49:12
From: Harry
Why use coord clicking for your walking? Other than that, sorta cool.
Walking in the POH is a pain in the butt. I made a POH burner script but could not get walking to work, so I abandoned the project :/
Kidlington
2012-04-13 15:23:02
From: stoopdfish
NVM, it was user error =$ Anyone having my problem, make sure the demon butler is in view. Sorry haha.
However, now I'm getting the divide by zero error as well.
Any suggestions?
[EDIT] If you change the player integer at line 237 to "1" instead of 0, it seems to fix it. Granted, I don't know what I'm doing.
This seems to have fixed it.
Just replace lines 238 and 238 with this -
XPH := (3600*XP) / (SeC);
BPH := (3600*Burned) / (SeC);
Not pushing a new version just yet, maybe in a little while.
=============v1.1==================
============S1NFiremaker===========
Time Running: 26 Minutes and 33 Seconds
XP Earned: 119394
XP Per Hour: 269986
Logs Burned: 415
Burned Per Hour: 938
===================================
===================================
Using magic logs.
Excel
2012-04-13 17:35:05
Hey guys, im getting this error
"[Hint] C:\Simba\Includes\SRL/SRL/core/mapwalk.simba(1353:3): Variable 'BOX' never used at line 1352
[Error] C:\Simba\Includes\sps/sps.simba(300:3): Unknown identifier 'SPS_FilterMinimap' at line 299
Compiling failed.
[Error] (43:35): Unknown identifier 'MMCX' at line 42
Compiling failed.
[Hint] C:\Simba\Includes\SRL/SRL/core/mapwalk.simba(1353:3): Variable 'BOX' never used at line 1352
[Error] C:\Simba\Includes\sps/sps.simba(300:3): Unknown identifier 'SPS_FilterMinimap' at line 299
Compiling failed."
What exactly is wrong?
=============v1.1==================
============S1NFiremaker===========
Time Running: 1 Hours, 23 Minutes and 11 Seconds
XP Earned: 376409
XP Per Hour: 271557
Logs Burned: 1297
Burned Per Hour: 935
===================================
===================================
@ guy above me, update SPS/SRL/Plugins.
Excel
2012-04-13 17:48:21
From: Sin
=============v1.1==================
============S1NFiremaker===========
Time Running: 1 Hours, 23 Minutes and 11 Seconds
XP Earned: 376409
XP Per Hour: 271557
Logs Burned: 1297
Burned Per Hour: 935
===================================
===================================
@ guy above me, update SPS/SRL/Plugins.
I did, im still getting the same error. I updated my SRL. then i tried to overwrite Plugins, then it didnt update.
Version 1.2 Released!
Now has a few new features ;D
writeLn('Changes in 1.2: ');
writeLn(' -Now stores uptext, no need to add type of logs');
writeLn(' -Relocation procedure changes');
writeLn(' -Couple new features to speed up script =]');
illuminatiswag
2012-04-13 19:31:19
Will try 1.2 right now and get back after atleast 30 minutes of run time unless dont work
I had a two hour proggy which I lost by hitting F2 instead of 2 :(
Excel
2012-04-13 19:52:06
From: Sin
I had a two hour proggy which I lost by hitting F2 instead of 2 :(
1.2 Is much more efficient, plus i got simba working once again aswell.
illuminatiswag
2012-04-13 20:17:05
Using V 1.2 and it still trys to light fires in the same row alot
Excel
2012-04-13 20:46:59
From: illuminatiswag
Using V 1.2 and it still trys to light fires in the same row alot
Also, does it drop a single log for you? Like when it knows it cannot go in the same row, it tries to light one up on a separate row, then just leaves the log on the ground, therefore losing a log?
illuminatiswag
2012-04-13 20:50:02
was happening in older versions all you got to do is select the public chat as the main chat wont happen
Ok i take that back this is something else i prefer to lose 1 log and it moves to a diff row then it keeps trying in the same row good addition sin losing 1 log is better then losing alot of xp
Almost 99 Firemaking guys, 900k off =]
illuminatiswag
2012-04-13 21:39:24
From: Sin
Almost 99 Firemaking guys, 900k off =]
Hey i got s suggestion is it possible for you to make the script start a fire in the lower part and then the second one in the higher part then back to the lower part and so on and so on the other row should be done by time you go back and early grats on the 99
1.3 is flawless, it hasn't lost a log for me so far in 45 minutes >=3
I'll release it soon.
Hazzah
2012-04-13 22:06:59
Hurry up Sin! I want to run this overnight for you! :P
I don't know if I should release it just yet, it's getting a slower logs/h for some reason.
Might just be lag for me though.
illuminatiswag
2012-04-13 22:29:42
Release release release!!! Pweaseee :)
Random101
2012-04-13 22:32:45
I didn't get my Virtus. This is stupid, sucky script.
=============v1.2==================
============S1NFiremaker===========
Time Running: 1 Hours, 19 Minutes and 26 Seconds
XP Earned: 349674
XP Per Hour: 264237
Logs Burned: 1171
Burned Per Hour: 884
===================================
===================================
Just to show that it *does* work ;)
illuminatiswag
2012-04-13 22:54:48
So far its working flawless best release so far only 10 minutes though will post 1+ HR proggy in a little and a 6 hour one about tomorrow morning
Oh mother 'eff.
Forgot to change the version number in the proggy ;(
illuminatiswag
2012-04-13 23:06:00
From: Sin
Oh mother 'eff.
Forgot to change the version number in the proggy ;(
Not a big deal :p
Hazzah
2012-04-13 23:29:20
Setting this up right now, not sure if you meant for anti-leech, but there is a semi-colon missing
Not sure if this was done intentionally, but you should definitely have the butler get the logs BEFORE you begin the trip back to where you start the burning, it shaves off the extra WaitInvCount(10000).
That was my bad xD
Antileeched!!
illuminatiswag
2012-04-13 23:53:05
============S1NFiremaker===========
Time Running: 55 Minutes and 59 Seconds
XP Earned: 115695
XP Per Hour: 124032
Logs Burned: 874
Burned Per Hour: 936
===================================
===================================
What i got before it just logged off for idk why lol got more then enough money and logs left
Hazzah
2012-04-14 00:26:21
Sin, I don't understand this bit right here.
if InvCount = 3 then
begin
GetLogs(26,False);
end;
if InvCount = 1 then
Relocate;
end;
Well, thats not totally true, I understand the second part, however, where does the IfInvCount=3 the… come into play, is it broken, because when my invcount=3 it just continues to burn without telling the butler to get more logs (if I understand what the function is supposed to do).
Slightly edited it:
============S1NFiremaker===========
Time Running: 14 Minutes and 23 Seconds
XP Earned: 32910
XP Per Hour: 137443
Logs Burned: 245
Burned Per Hour: 1023
===================================
===================================
Kidlington
2012-04-14 01:30:13
Where does the semi-colon go?
[Error] C:\Simba\Includes\sps/sps.simba(300:3): Unknown identifier 'SPS_FilterMinimap' at line 299
Compiling failed.
[Error] (43:35): Unknown identifier 'MMCX' at line 42
Compiling failed.
Grihmm
2012-04-14 03:35:16
I'm still using your original script and it is working fine. >.>
A cool feature would be to check at the beginning of the script to see if you are outside of your house. If you are, you could have it enter your house in building mode, check the minimap for a yellow dot, run near the dot (which is your butler), click on him once, then run to the southeast corner and start the rest of the script. That would allow the script to be run for over 6 hours without human intervention, via SmartManager. Just a thought. It isn't necessary to the script.
99 fm before getting 99 wc? Such a waste :s
You should have use your arctic pine script to get 1/3 of the job done without any effort, money spent or time wasted :garfield:
AverageWafer
2012-04-14 04:27:59
Didn't really read through this since it's 4 in the morning, but you can get randoms in your house. Not sure about building mode.
Kidlington
2012-04-14 04:41:19
From: AverageWafer
Didn't really read through this since it's 4 in the morning, but you can get randoms in your house. Not sure about building mode.
Building mode = no randoms
@eska, what is the xp rate at arctic pines?
Excel
2012-04-14 05:59:38
hey guys im getting this error:
[Hint] C:\Simba\Includes\SRL/SRL/core/mapwalk.simba(1353:3): Variable 'BOX' never used at line 1352
[Error] (10:3): Semicolon (';') expected at line 9
Compiling failed.
[Hint] C:\Simba\Includes\SRL/SRL/core/mapwalk.simba(1353:3): Variable 'BOX' never used at line 1352
[Error] (10:3): Semicolon (';') expected at line 9
Compiling failed.
Anyone know whats up?
EDIT***
NVM i figured it out. Just read it and put the semi colon. HAHA
Kidlington
2012-04-14 06:01:14
NVM. Got it working now.
With maple logs:
============S1NFiremaker===========
Time Running: 4 Hours, 14 Minutes and 58 Seconds
XP Earned: 445770
XP Per Hour: 106107
Logs Burned: 3615
Burned Per Hour: 860
===================================
===================================
Thanks Sin :)
Excel
2012-04-14 06:14:01
From: Kidlington
Building mode = no randoms
@eska, what is the xp rate at arctic pines?
Does building mode really have no randoms?
Fucking hell, got 99 Firemaking while I was sleeping >.>
Kidlington
2012-04-14 06:54:23
From: xScripter
Having problems with this script, I keep getting stuck. Here's a screenshot. removed Whats wrong?
Don't click these links. I didn't even bother opening it because it could be a java drive-by!
I'm sorry if it is actually an image. But it is highly likely it is not!
From: Kidlington
Building mode = no randoms
@eska, what is the xp rate at arctic pines?
Xp hour is 93k woodcutting xp/hour with my script, which is still unreleased, at 90-99 woodcutting. That's with urns, and low alching the logs so that you never have to stop to drop them.
If you use inferno adze, you get 33% of the woodcutting xp from the log (not the urns) so it is about 20-25k FREE firemaking xp per hour. It might not seem like a lot, but by the time you reach 99 woodcutting you'll have accumulated a free 3m firemaking xp.
And yes I confirm, building mode = no randoms.
From: xScripter
Having problems with this script, I keep getting stuck. Here's a screenshot. removed Whats wrong?
This is NOT an image, it's a driveby!
saridonas
2012-04-14 07:00:46
From: Sin
This is NOT an image, it's a driveby!
what does it mean?
It's a virus which will steal your info when you hit "Run This Time".
saridonas
2012-04-14 07:03:53
From: Sin
It's a virus which will steal your info when you hit "Run This Time".
weill i hit cancel and closed it so thats mean im safe?
still i cant believe im so stupid :duh:
Kidlington
2012-04-14 07:06:02
From: sir eska eau
Xp hour is 93k woodcutting xp/hour with my script, which is still unreleased, at 90-99 woodcutting. That's with urns, and low alching the logs so that you never have to stop to drop them.
If you use inferno adze, you get 33% of the woodcutting xp from the log (not the urns) so it is about 20-25k FREE firemaking xp per hour. It might not seem like a lot, but by the time you reach 99 woodcutting you'll have accumulated a free 3m firemaking xp.
And yes I confirm, building mode = no randoms.
Woah! Are you serious? That's incredible XP!
@Sin - Apart from getting stuck when I received a spin ticket, I am not running this for 5 hours!
@saridonas - As long as you didn't hit Run, it's fine.
I guess as long as you didn't accept to run the java thingy you are alright.
siuman101
2012-04-14 08:38:48
Why having this problem??
[Hint] C:\Simba\Includes\SRL/SRL/core/mapwalk.simba(1353:3): Variable 'BOX' never used at line 1352
[Error] (10:3): Semicolon (';') expected at line 9
Compiling failed.
Which is at line 9: TypeOfLogs:String; in version 1.3
It's a small bit of antileech (error on my part tbh), but 1.4 will fix that.
siuman101
2012-04-14 09:05:28
Thx Sin.
hellohappy22
2012-04-14 14:02:23
Hi, I don't want to sound like an idiot. But is the script expensive to run? Having to pay the butler 10k every time? Or am I wrong.
Hazzah
2012-04-14 15:31:43
You only pay the butler every tenth trip (If I am not mistaken).
=============v1.3==================
============S1NFiremaker===========
Time Running: 45 Minutes and 32 Seconds
XP Earned: 106718
XP Per Hour: 140675
Logs Burned: 786
Burned Per Hour: 1036
===================================
===================================
This is with a slightly edited version of 1.3.
program new;
{$include srl/srl/misc/smart.simba}
{$I SRL/SRL.simba}
{$I srl/srl/misc/debug.simba}
var
StartTime,XPBurn,Burned:Integer;
//Cases
UseProggys:Boolean;
TypeOfLogs:String;
procedure DeclarePlayers;
begin
UseProggys := True; //Yes or No * True or False
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
procedure SetupLogin;
begin
ClearDebug;
Smart_Server := 87;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
end;
Procedure HumanMMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
end;
Procedure HumanMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
ClickMouse2(True);
end;
function FindButler(var fx, fy: Integer): Boolean;
var
arP, arAP: TPointArray;
arC, arUC: TIntegerArray;
ararP: T2DPointArray;
tmpCTS, i, j, arL, arL2: Integer;
P: TPoint;
X, Y, Z: Extended;
begin
FindNormalRandoms;
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.39, 1.37);
if not(FindColorsTolerance(arP, 2174030, 196,79,349,222, 9)) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
arUC := arC;
ClearSameIntegers(arUC);
arL := High(arUC);
arL2 := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 1.53) and (X <= 7.94) and (Y >= 1.28) and (Y <= 6.22) and (Z >= 0.91) and (Z <= 3.49) then
begin
for j := 0 to arL2 do
begin
if (arUC[i] = arC[j]) then
begin
SetLength(arAP, Length(arAP) + 1);
arAP[High(arAP)] := arP[j];
end;
end;
end;
end;
SortTPAFrom(arAP, Point(MSCX, MSCY));
ararP := SplitTPAEx(arAP, 10, 10);
arL := High(ararP);
for i := 0 to arL do
begin
if (Length(ararP[i]) < 10) then Continue;
P := MiddleTPA(ararP[i]);
HumanMMouse(p.x,p.y,5,5);
Wait(100 + Random(100));
if (IsUpText('emon')) then
begin;
Result := True;
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
begin
Exit;
end;
GetMousePos(fx, fy);
end;
function FireColor: Integer;
var
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.13, 0.49);
FindColorsSpiralTolerance(MSCX, MSCY, arP, 1738208, MSX1, MSY1, MSX2, MSY2, 17);
if (Length(arP) = 0) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
ClearSameIntegers(arC);
arL := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 13.94) and (X <= 58.29) and (Y >= 10.60) and (Y <= 58.15) and (Z >= 2.00) and (Z <= 18.07) then
begin
Result := arC[i];
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
end;
function WaitNPCChatText(Text:String; Time:Integer):Boolean;
var
t:Integer;
begin
MarkTime(t);
repeat
wait(10);
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(FindNPCChatText(Text,ClickLeft));
Result := True;
end;
procedure StoreUptext;
begin
if ExistsItem(1) then
begin
Mouseitem(1,3);
if IsUpText('ew') then
TypeOfLogs := 'Yew';
if IsUptext('agic') then
TypeofLogs := 'Magic';
if IsUpText('aple') then
TypeOfLogs := 'Maple';
if IsUpText('Oak') then
TypeOfLogs := 'Oak';
if IsUpText('llow') then
TypeOfLogs := 'Willow';
end;
if TypeOfLogs = '' then
writeLn('Failed uptext checking');
writeLn('We are burning: ' + TypeOfLogs);
end;
function WaitInvCountInc(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 > Inv1);
Result := True;
end;
function WaitInvCountDec(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 < Inv1);
Result := True;
end;
procedure Proggy;
var
//progress variables
XP,XPH,Sec,BPH:Integer;
begin
ClearDebug;
XP := GetXPBarTotal - Players[CurrentPlayer].Integers[0];
Sec:= (1+((Getsystemtime-StartTime)/1000));
XPH := (3600*XP) / (SeC);
BPH := (3600*Burned) / (SeC);
writeLn('=============v1.3==================');
writeLn('============S1NFiremaker===========');
writeLn('Time Running: ' + TimeRunning);
writeLn('XP Earned: ' + IntToStr(XP));
writeLn('XP Per Hour: ' + IntToStr(XPH));
writeLn('Logs Burned: ' + IntToStr(Burned));
writeLn('Burned Per Hour: ' + IntToStr(BPH));
writelN('===================================');
writeLn('===================================');
end;
function WaitXPIncrease(Time:Integer):Boolean;
var
First,Second,t:Integer;
begin
First := GetXPBarTotal;
MarkTime(T);
repeat
wait(10);
Second := GetXPBarTotal;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Second > First);
Result := True;
end;
function IsFireUnder:Boolean;
var
x,y:Integer;
begin
Result := FindColorSpiralTolerance(x,y,FireColor,242,172,263,181,3);
end;
function GetLogs(Amount:Integer; DoWait:Boolean):Boolean;
var
x,y,t:Integer;
begin
Result := False;
if ExistsItem(1) then
MouseItem(1,1);
if FindButler(x,y) then
begin
ClickMouse2(True);
If WaitNPCChatText('coins',1250) Then
Begin
ClickContinue(True, True);
TypeSendEx('1',False);
Wait(RandomRange(800,1000));
MouseItem(1,1);
if FindButler(x,y) then
ClickMouse2(True);
end;
if WaitNPCChatText('cert',4000) then
begin
wait(750 + random(200));
if FindColorSpiralTolerance(x,y,9877449,MCX1,MCY1,MCX2,MCY2,38) then
begin
TypeSend('26');
//if DoWait then
//if WaitInvCountInc(10000) then
// Result := True;
end;
end;
end;
end;
function Light(Slot:Integer):Boolean;
begin
MouseItem(Slot,0);
if WaitOptionMulti(['ight','Lig'],750) then
Result := True;
Inc(Burned);
end;
function Relocate:Boolean;
var
x,y:Integer;
begin
FindNormalRandoms;
MakeCompass(0);
case random(2) of
0:
begin
HumanMouse(698,75,4,4);
FFlag(1);
Wait(750);
HumanMouse(681,100,5,5);
FFlag(1);
Wait(750);
if FindNPCChatText('returned', Nothing) then
HumanMouse(660,75,4,4);
Wait(RandomRange(500,1000));
end;
1:
begin
HumanMouse(681,110,5,5);
FFlag(1);
Wait(750);
HumanMouse(690,75,4,4);
FFlag(1);
Wait(750);
if FindNPCChatText('returned',Nothing) then
HumanMouse(668,75,4,4);
Wait(RandomRange(500,1000));
end;
end;
Wait(1250 + random(200));
if InvCount<5 then
begin
FindButler(x,y);
GetLogs(26,True);
Wait(9000+Random(1000));
end;
if InvCount>5 then
begin
Exit;
end;
//repeat
// wait(10);
//until(FindButler(x,y));
//GetLogs(26,True);
end;
procedure BurnLogs;
var
i:Integer;
begin
for i := 2 to 28 do
begin
if ExistsItem(i) then
begin
if FIndBlackChatMessage('here') then
begin
case Random(2) of
0:
begin
HumanMouse(627,79,5,5);
FFlag(1);
Wait(750);
end;
1:
begin
HumanMouse(628,91,5,5);
FFlag(1);
Wait(750);
end;
end;
ExamineInv;
Wait(750);
Exit;
end;
Light(i);
Proggy;
if WaitInvCountDec(6000) then
WaitXPIncrease(4000);
end;
end;
if InvCount = 3 then
begin
GetLogs(26,False);
end;
if InvCount = 1 then
GetLogs(26,False);
Relocate;
end;
procedure ScriptStart;
var
StartInv,NTW:Integer;
begin
//start with 13 logs + noted, total of 14 items
//StartInv is equal to 14, ntw = 28 - startinv, 14
//Above is just me spouting out the equation, dont bother with it
StartInv := InvCount;
NTW := 28 - StartInv;
if StartInv < 2 then
GetLogs(NTW,True);
end;
begin
ClearDebug;
SetupLogin;
DeclarePlayers;
LoginPlayer;
MouseSpeed := RandomRange(18,20);
writeLn('Changes in 1.3: ');
writeLn(' -GetLogs changed, now more efficient');
writeLn(' -Will not lose log now. EVER.');
writeLn(' -MouseSpeed changes, much more humanlike');
writeLn(' -Progress report is now optional');
Wait(1500);
StartTime:=GetSystemTime;
if (Players[CurrentPlayer].Integers[1] = 0) then
begin
if not IsXPBarOpen then ToggleXPBar(true);
Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
Players[CurrentPlayer].Integers[1] := (Players[CurrentPlayer].Integers[1] + 1);
end;
StoreUptext;
ScriptStart;
repeat
BurnLogs;
until not loggedin;
end.
Thought I would say thank you and let you know I got 95+ 96 firemaking so far with this, and will probably continue to 99.
Well, your coding is horrible, just letting you know that .__.
Well, atleast it worked for you :p
Hazzah
2012-04-14 15:49:17
Haha I know Sin. Hence why I'm not an SRL member or even have a released script :redface:
From: Hazzah
Haha I know Sin. Hence why I'm not an SRL member or even have a released script :redface:
Haha, don't take it the wrong way, it's just wierd to see xD
I'll add an update soon which will incorporate regular butlers.
illuminatiswag
2012-04-14 19:11:47
============S1NFiremaker===========
Time Running: 2 Hours, 45 Minutes and 29 Seconds
XP Earned: 347355
XP Per Hour: 125954
Logs Burned: 2614
Burned Per Hour: 947
===================================
===================================
Script stoped idk about to log in and check im guessing a spin ticket Sin you think in 1.4 you can add FindNormalRandoms somewhere in there for checking for tickets it wont slow the script down at all
Yea it stoped but not due to a ticket idk just logged in with no logs in inv except noted ones :o ?
It's already in there in 1.4 :p
siuman101
2012-04-14 19:16:10
From: Sin
It's already in there in 1.4 :p
Where i can download the v1.4??
Hazzah
2012-04-14 19:16:37
From: Sin
It's already in there in 1.4 :p
This almost makes me wonder if Sin realizes he hasn't published v1.4 yet :p
illuminatiswag
2012-04-14 19:16:46
From: siuman101
Where i can download the v1.4??
if its not in op he hasnt released yet
[XoL]
2012-04-14 19:17:32
Hows this working Sin? I have been reading mixed reviews, I couldn't make one of these work with injection/reflection so I am just in amazement :P. (Make it work for anybody BUT me)
I haven't released 1.4 yet due to it needing further testing.
@Random, it works excellently xD
hellohappy22
2012-04-14 19:43:02
Hey dude, Love your scripts! I want to get 99 FM SO bad! And would love to use your script!, I just need to work out how much butler is gong to cost me!
Do you know is it 10k every time you get 27 planks or?
Thanks
Nah, it only costs once every 5 withdraws.
Hazzah
2012-04-14 21:02:39
One thing I have noticed with this Sin is the for some reason the butler walks away once in a while. This makes the script just sit there searching for the butler for quite a while. Not sure if this has happened to anyone else or if it has just happened to me.
I would describe the problem more but I haven't actually witnessed it, just come back to my player sitting in the corner with no butler behind him.
illuminatiswag
2012-04-14 21:22:04
From: Hazzah
One thing I have noticed with this Sin is the for some reason the butler walks away once in a while. This makes the script just sit there searching for the butler for quite a while. Not sure if this has happened to anyone else or if it has just happened to me.
I would describe the problem more but I haven't actually witnessed it, just come back to my player sitting in the corner with no butler behind him.
This just happened to me did you happen to have a fortune spin in inv ?
That's happened to me, I'm sorta clueless about it.
Hazzah
2012-04-14 21:40:57
From: illuminatiswag
This just happened to me did you happen to have a fortune spin in inv ?
I did the third time, but the first two times it just happened, seems to be when you interrupt the chat option with the butler that he just walks away with no instructions. It happens more with the edited version(That I was using), but like I said, I switched back to Sin's original 1.3 and it still happened three times now.
illuminatiswag
2012-04-14 22:19:21
Sin how about you make the player finish the chat before starting to burn might slow it down a tiny bit but nothing serious just a suggestion + more then 1 person testing is better so if you need a test buddy you got me added on Skype shoot me a PM
Swag, can you message me on Skype?
I have way too many people and it's hard to keep track :s
[XoL]
2012-04-15 00:10:05
I was just reading but, if you have a dining hall you can call the butler if not found in radius for 5 seconds etc. then staticly move it back to og point
Hazzah
2012-04-15 01:01:34
Got 97 Firemaking + 83 Slayer from this script! <3 <3
Had a longer Proggy but I stopped the script for a break.
=============v1.3==================
============S1NFiremaker===========
Time Running: 2 Hours, 29 Minutes and 33 Seconds
XP Earned: 328602
XP Per Hour: 131851
Logs Burned: 2361
Burned Per Hour: 947
===================================
===================================
Harry
2012-04-15 01:15:27
From: Hazzah
83 Slayer
How are you getting slayer exp from firemaking?
From: Harry
How are you getting slayer exp from firemaking?
XP lamp from a random I guess. He probably didn't use building mode.
Excel
2012-04-15 02:18:14
Sin! Loving this script man, I just hit 90 FM just now. It ran for a good 5 hours and 36 minutes. The only issue that i had with the script is when a spin card is given. It tries to some how light it. Is this issue going to be resolved in 1.4?
powdrski
2012-04-15 04:31:05
love the script. just a suggestion for if you want to make it more efficient. get the char to order more logs then get them to run back to start position. it'll increase the exp per hour significantly cause theres no waiting at the end for the butler to bring supplies.
EDIT: im considering tweaking the script myself to see how it works :) if i get favourable results ill message you my update :)
Hazzah
2012-04-15 08:40:00
From: Harry
How are you getting slayer exp from firemaking?
I was using building mode, but when you leave you instantly get a random, soooo, yea was like 700 xp off of 83 slayer :P
illuminatiswag
2012-04-15 11:47:55
When you releasing 1.4 Sin?
Excel
2012-04-15 16:24:01
From: illuminatiswag
When you releasing 1.4 Sin?
Will 1.4 have the spin token fix?
YESSSSSSSSSSSSSSSSSSSSSSSSSSSSSS!
Y'all need to spam less ._.
Added 1.4..
Hazzah
2012-04-15 19:04:46
=============v1.3==================
============S1NFiremaker===========
Time Running: 5 Hours, 24 Minutes and 53 Seconds
XP Earned: 617245
XP Per Hour: -107258
Logs Burned: 4448
Burned Per Hour: 828
===================================
===================================
Not sure why negative XP, could be because I closed SMART before stopping the script. Had a few hiccups.
illuminatiswag
2012-04-15 19:21:36
this is from 1.3 same as above negative xp
============S1NFiremaker===========
Time Running: 6 Hours, 1 Minutes and 39 Seconds
XP Earned: 58109331
XP Per Hour: -58173
Logs Burned: 5681
Burned Per Hour: 944
===================================
===================================
My bad guys haha, numerical overflow.
I'll fix that in 1.5.
illuminatiswag
2012-04-16 00:31:23
1.4 proggy
=================================
============S1NFiremaker===========
Time Running: 5 Hours, 44 Minutes and 38 Seconds
XP Earned: 680940
XP/h: -89152
===================================
===================================
Hazzah
2012-04-16 11:21:16
v1.5 seems stable and running good. However possibly a small bug with the proggy
=============v1.5==================
============S1NFiremaker===========
Time Running: 54 Minutes and 0 Seconds
XP Earned: 158673510
XP Per Hour: -1890
Logs Burned: 764
Burned Per Hour: 864
===================================
===================================
hellohappy22
2012-04-16 12:47:58
Hi, I Love this script like all of yours! I've found a slight problem, I don't think the Spin ticket support work? As far as I have experienced it did not work in v 1.5 Otherwise thanks a lot!
Hazzah
2012-04-16 14:35:27
From: hellohappy22
Hi, I Love this script like all of yours! I've found a slight problem, I don't think the Spin ticket support work? As far as I have experienced it did not work in v 1.5 Otherwise thanks a lot!
I don't see where he called FindNormalRandoms; In the script at all as well. Pretty simple to just put it in somewhere, like in front of Relocate; at line 406.
Yikes haha, I was writing 1.5 from a version of 1.3 which had no Randoms in it xD
Proggy still seems to be effed up..
Will fix that+ make a super update in two hours when i get home.
joj0r
2012-04-16 15:47:15
awesome script
===================================
===================================
============S1NFiremaker===========
Time Running: 4 Hours, 5 Minutes and 47 Seconds
XP Earned: 499635
XP/h: 121969
===================================
===================================
===================================
Excel
2012-04-17 02:46:47
Script is working great! almost at 96 FM! It is actually flawless. The Spin ticket is no longer an issue.
illuminatiswag
2012-04-17 05:21:16
Another proggy from 1.5
============S1NFiremaker===========
Time Running: 5 Hours, 45 Minutes and 10 Seconds
XP Earned: 707265
XP Per Hour: -84520
Logs Burned: 5349
Burned Per Hour: 930
===================================
===================================
outbuster
2012-04-17 06:44:24
why am i getting this error?
[Hint] C:\Simba\Includes\SRL/SRL/core/mapwalk.simba(1353:3): Variable 'BOX' never used at line 1352
[Error] (10:3): Semicolon (';') expected at line 9
Compiling failed.
my simba is fully updated;/
Hazzah
2012-04-17 09:23:40
Outbuster, you should look at the script from line 1-10 and try an notice if anything is missing, or is there that shouldn't be. SIMBA really does tell you exactly what the problem is, you just need to look as to where to place the Semicolon.
Glad it's working fine, so 1.6 isn't needed?
siuman101
2012-04-17 11:16:12
maybe v1.6 could make the bot more smooth, or make the bot more stable ^^
Alright, in a bit. I'm awfully sick atm :(
Pcheckan
2012-04-17 13:02:08
Worked great for the first few hours, then i got a random, and it wont work now :(
Well did you run it on building mode?
Thank you for making this!! Gonna try this out when I get home
illuminatiswag
2012-04-17 18:16:26
From: siuman101
maybe v1.6 could make the bot more smooth, or make the bot more stable ^^
No need to make the bot more stable its as stable as its going to get only thing i could thin of is the xp per hour bug but that isnt a problem at all
=============v1.5==================
============S1NFiremaker===========
Time Running: 6 Hours, 22 Seconds
XP Earned: 753840
XP Per Hour: -73251
Logs Burned: 5691
Burned Per Hour: 949
===================================
===================================
From: Sin
Alright, in a bit. I'm awfully sick atm :(
Get well soon :p
typestyle
2012-04-17 18:19:00
What type of logs are you using, illuminatiswag? o; I'm trying to find out how much 50-99 will cost me, thanks,
From: typestyle
What type of logs are you using, illuminatiswag? o; I'm trying to find out how much 50-99 will cost me, thanks,
He's using Maple Logs judging by the XP.
Grihmm
2012-04-17 20:15:27
Sorry to hear you are sick Sin. Get well soon. 1.5 is working fine for me. The spin ticket thing is annoying but I can babysit. Good work and thank you.
illuminatiswag
2012-04-17 20:18:39
From: typestyle
What type of logs are you using, illuminatiswag? o; I'm trying to find out how much 50-99 will cost me, thanks,
Use Runehq.com to check how many logs you need and sin is correct i am using Maple
From: Sin
He's using Maple Logs judging by the XP.
StickToTheScript
2012-04-17 20:22:38
its just doing one inv. I do not know what is wrong, but ya. only one inv.
Im clueless about that too o.O
FloppyWien3r
2012-04-17 22:25:08
Im sorry Sin.
I've tried it all but I still cant compile.
[Error] (10:3): Semicolon (';') expected at line 9
Compiling failed.
RAGE I AM but I love you :$
Is that the latest version?
Come on FloppyPenis, read what it says. :x
Never breaks, but I do have one suggestion: Instead of walking all the way east and then getting more logs, you could have it withdraw after all logs are burned so by the time you get back east, you won't need to wait for the butler to come back.
illuminatiswag
2012-04-18 01:18:43
From: Liimujx
Never breaks, but I do have one suggestion: Instead of walking all the way east and then getting more logs, you could have it withdraw after all logs are burned so by the time you get back east, you won't need to wait for the butler to come back.
Already suggested few times i hope Sin does make it like this would increase xp per hour by quite a bit i think.
jonnypot
2012-04-18 03:26:50
Thank you for the script Sin
=============v1.5==================
============S1NFiremaker===========
Time Running: 8 Minutes and 45 Seconds
XP Earned: 19554
XP Per Hour: 134340
Logs Burned: 144
Burned Per Hour: 989
===================================
===================================
I'll try and edit this once I hit a bigger proggy. Don't forget your ring of fire and fire gloves fellas
FloppyWien3r
2012-04-18 07:28:48
Ahhh Yes I D/l'd latest version of script and simba and still no good!
illuminatiswag
2012-04-18 08:04:44
=============v1.5==================
============S1NFiremaker===========
Time Running: 6 Hours, 21 Seconds
XP Earned: 760050
XP Per Hour: -72346
Logs Burned: 5737
Burned Per Hour: 958
===================================
===================================
illuminatiswag
2012-04-18 08:27:44
From: FloppyWien3r
Ahhh Yes I D/l'd latest version of script and simba and still no good!
your doing something wrong post in help section and someone might be able to help you over T.V
From: Sin
Dat flawless script :3
Sure is.
siuman101
2012-04-18 08:54:55
What is happening, why i can't start?
[Hint] C:\Simba\Includes\SRL/SRL/core/mapwalk.simba(1353:3): Variable 'BOX' never used at line 1352
[Error] (10:3): Semicolon (';') expected at line 9
Compiling failed.
illuminatiswag
2012-04-18 11:25:53
From: siuman101
What is happening, why i can't start?
[Hint] C:\Simba\Includes\SRL/SRL/core/mapwalk.simba(1353:3): Variable 'BOX' never used at line 1352
[Error] (10:3): Semicolon (';') expected at line 9
Compiling failed.
its self explanatory lol it says missing a Semicolon
Forward Then Backward
2012-04-18 11:31:41
Looks good wil try soon
TomTuff
2012-04-18 15:45:06
=============v1.5==================
============S1NFiremaker===========
Time Running: 1 Hours, 52 Minutes and 35 Seconds
XP Earned: 356197
XP Per Hour: 189859
Logs Burned: 1797
Burned Per Hour: 957
===================================
===================================
Not sure why it stopped :(
TomTuff
2012-04-18 15:48:04
From: Sin
Neither am I :s
I got a random. I thought there were no randoms in your house? Let's try building mode.
From: TomTuff
I got a random. I thought there were no randoms in your house? Let's try building mode.
You silly goose :duh:
You have to be in Building mode for no randoms xD
TomTuff
2012-04-18 15:49:41
From: Sin
You silly goose :duh:
You have to be in Building mode for no randoms xD
That would help… :) Ok great. I'll post a proggy later :)
From: TomTuff
That would help… :) Ok great. I'll post a proggy later :)
Have fun, it works awesome, if i do say so myself ;)
illuminatiswag
2012-04-18 16:12:29
From: TomTuff
That would help… :) Ok great. I'll post a proggy later :)
From: Sin
Have fun, it works awesome, if i do say so myself ;)
I would have to agree with sin this works very well one of the most stable scripts out now guaranteed 6 hours each time you start
Only burning 400-500/hr for me
Takes about 5 seconds between right clicking each log. Anyone help?
Other than that the script is working fine!
=============v1.5==================
============S1NFiremaker===========
Time Running: 5 Hours, 58 Minutes and 37 Seconds
XP Earned: 593582
XP Per Hour: 99321
Logs Burned: 4221
Burned Per Hour: 706
===================================
===================================
The only problem is the script could be more efficient, maybe at least 900-950 logs per hour
illuminatiswag
2012-04-18 18:08:45
From: Liimujx
=============v1.5==================
============S1NFiremaker===========
Time Running: 5 Hours, 58 Minutes and 37 Seconds
XP Earned: 593582
XP Per Hour: 99321
Logs Burned: 4221
Burned Per Hour: 706
===================================
===================================
The only problem is the script could be more efficient, maybe at least 900-950 logs per hour
Idk whats wrong for you i get minimum about 930 an hour problably your Cp isnt all that great (Not trying to talk s**t) Sometimes it depends on how good your computer is lagg factor ect ect.
From: illuminatiswag
Idk whats wrong for you i get minimum about 930 an hour problably your Cp isnt all that great (Not trying to talk s**t) Sometimes it depends on how good your computer is lagg factor ect ect.
I don't get any lag at all :(
What happens is;
uses noted logs on butler>he returns>Right clicks first log>burns>hovers over xp counter for 5 seconds>right clicks next one.
So the light log animation is being done for every single log, which of course slows down xp :(
TomTuff
2012-04-18 18:57:22
I was standing there for several hours with a spin ticket in my inventory :(
1.6 has been pushed.
Changes in v1.6 -
writeLn('Changes in 1.6: ');
writeLn(' -Butler changing, will now withdraw when invy is low.');
writeLn(' -Added Spin Ticket support');
TomTuff
2012-04-18 19:11:20
From: Sin
1.6 has been pushed.
Changes in v1.6 -
writeLn('Changes in 1.6: ');
writeLn(' -Butler changing, will now withdraw when invy is low.');
writeLn(' -Added Spin Ticket support');
So there wasn't actually spin ticket support in 1.5? Running it now. I like how it un-notes logs when there's 2 left btw :)
From: TomTuff
So there wasn't actually spin ticket support in 1.5? Running it now. I like how it un-notes logs when there's 2 left btw :)
What I did on 1.5 was I wrote it at school, with 1.3 as the base.
I didn't have 1.4 on me, which HAD the spin ticket support/randoms.
I ended up forgetting about it xD
And yeah, that addition is a nice touch :p
Too bad I got 99 Firemaking a while back, so updating this script is all done via theory, no testing is done at all.
Reason is, I don't like training skills that are already at 99, other than Herblore (Overloads etc..).
FloppyWien3r
2012-04-18 20:03:52
I didn't like this script.
I was wrong.
Amen.
This thing is God lol.
============S1NFiremaker===========
Time Running: 5 Hours, 8 Minutes and 3 Seconds
XP Earned: 588735
XP Per Hour: 114682
Logs Burned: 4455
Burned Per Hour: 867
===================================
===================================
TomTuff
2012-04-18 20:42:01
From: Sin
Too bad I got 99 Firemaking a while back, so updating this script is all done via theory, no testing is done at all.
Reason is, I don't like training skills that are already at 99, other than Herblore (Overloads etc..).
It's ok, it's admirable that you keep it up at all. I stopped bothering with my scripts after I got 99 in the skill usually.
Yay! running 1.6 now and its working amazing! Thanks :D
Glad it's working well
siuman101
2012-04-18 22:13:05
When it has full load of logs and are ready to start lighting at the new row, why it still has to wait for demon to come near?
From: siuman101
When it has full load of logs and are ready to start lighting at the new row, why it still has to wait for demon to come near?
Ok that's right, I'll add 1.7 soon which deals with this.
Grihmm
2012-04-19 01:29:08
I just wanted to say thanks Sin. This script is very good and it is getting me a much higher firemaking level. I don't always get proggies, since I use SmartManager and it erases them whenever it restarts, but I have some here.
=============v1.5==================
============S1NFiremaker===========
Time Running: 6 Hours, 1 Minutes and 14 Seconds
XP Earned: 449614
XP Per Hour: 90027
Logs Burned: 3333
Burned Per Hour: 667
===================================
===================================
=============v1.5==================
============S1NFiremaker===========
Time Running: 1 Hours, 40 Minutes and 29 Seconds
XP Earned: 163806
XP Per Hour: 101989
Logs Burned: 1192
Burned Per Hour: 742
===================================
===================================
Working well but one thing i found is when the butler leaves for a new invent my char misses the last log when selecting "burn". Then the butler returns, so instead of burning the last log my char starts on the first log again, causing it to continue in the same line of fires made. So eventually i end up in the south west corner of my POH. Once this happens a couple of times my char begins to burn logs in the wrong direction on the west side, which messes up. This doesn't happen every time, but I can't seem to get a 3hr+ proggy because of it. Thanks!
hellohappy22
2012-04-19 09:23:55
Ye, Sin ! love this script and has nearly got me 99! The problem with 1.6 is that it dosent run it back to the SE corner, so get to the bottom of the line and buggs up :/ill have to go back to 1.5 till this is fixed hopefully soon! Hope I helped
From: hellohappy22
Ye, Sin ! love this script and has nearly got me 99! The problem with 1.6 is that it dosent run it back to the SE corner, so get to the bottom of the line and buggs up :/ill have to go back to 1.5 till this is fixed hopefully soon! Hope I helped
Hm, i'm sorta clueless about that.
It didn't happen when I ran it :s
siuman101
2012-04-19 10:51:38
When i run it, it always stop, after a few sec, it light the log, and then after a few sec, it stop again. it happens in your every version, probably because my computer is a little bit lagg, once lagg, the bot stop moving, can you fix that?? A load of log stops me a lot of time, so the exp/h is really low… One more problem, the script even reach to the end west and then stop moving, cause it is dead end.
jonnypot
2012-04-19 12:23:43
Also got the glitch with making its way to the south west corner. Even started happening when I switched back to 1.5 :s
Well it doesn't happen to anyone else :s
Set all your chats to Off and set your Game to All.
I get the south west thing too. I just re-started and watched it, sometimes when returning to the south east corner to burn, it isn't going the full distance. Sometimes it is one step further away from the east side. This is probably why we are ending up in the west corner eventually.
Can you use 1.5 and tell me if it does the same thing?
If it doesn't,then I know what's wrong.
Sure, ill give it a go now and re-edit this post.
Edit:seems to be returning east fine now on 1.5. Hope this helps !
TomTuff
2012-04-19 15:45:03
I know what's happening. It's caused when it tries to get more logs when there are 2 logs left in your inv and the butler gets back before you're done burning those 2 - it continues on as if in the same inventory. Then when it finishes the load it only runs back half way, not all the way to the south west. This could be fixed by doing a check of what percentage of the minimap is black before you stop running east.
E: The problem can be partially fixed by changing line 407 from
if InvCount = 3 then
to either
if InvCount = 2 then
or
if InvCount = 1 then
E2: Also, proggy
=============v1.5==================
============S1NFiremaker===========
Time Running: 4 Hours, 59 Minutes and 46 Seconds
XP Earned: 947497
XP Per Hour: -49150
Logs Burned: 4820
Burned Per Hour: 964
===================================
===================================
negative xp/hr?
Ahhhhhhhh right!
I got a fix now, it should work ^^
Give me a few minutes to update it.
1.7 pushed, let me know if it's still glitching.
TomTuff
2012-04-19 16:01:58
I made BurnLogs do this:
if InvCount = 1 then
begin
GetLogs(26,False);
Relocate;
end;
and now it un-certs before running off when the inv is done.
Oh that's a much better idea.
Reupdated 1.7.
siuman101
2012-04-19 18:10:07
it lighting log at the same row.. and it seems love the corner. Can you set it into 2 rows, and once lit line 1, go to line 2, then back to line1, ext?
EDIT: it seems worked now, maybe it just occur sometimes. Works fine for me now ^^
The stop problem seems to be improved a lot ^^
Here is the question again, When it has full load of logs and are ready to start lighting at the new row, why it still has to wait for demon to come near?
Other than those, its the best version!!
=============v1.7==================
============S1NFiremaker===========
Time Running: 16 Minutes and 55 Seconds
XP Earned: 38340
XP Per Hour: 136387
Logs Burned: 289
Burned Per Hour: 1028
===================================
===================================
xYumz
2012-04-19 18:20:56
From: Sin
1.7 pushed, let me know if it's still glitching.
Yep. It is for me, it slowly works its way to the other corner. Would it be possible to make it run back to the edge on the far east after each row? That'd sorta fix the problem
Running 1.7 for 31mins. Still moving towards south west corner.
Seems to be once first line of logs is done, it doesn't always return all the way to the east.
siuman101
2012-04-19 18:39:15
It still lighting log at the same row… may be you should really make it back to the corner, and make them all start at the edge. Also, make it to detect the ashes too, cause it runs to the ashes and light the log for many times, This might fix the same row lighting problem. Another problem is that it will keep shifting to the west side, when the time goes by, it must back to the end west and stopped there. The cause of this problem is due to the demon, once asked the demon to un-note logs, it will run to the right position, but at the same time, demon will come back very fast, on the way, demon will stop me by talking. Once stopped, the bot think it is already the right place, the demon is near too, so it will start lighting. Hope you can fix that.
=============v1.7==================
============S1NFiremaker===========
Time Running: 42 Minutes and 52 Seconds
XP Earned: 92070
XP Per Hour: 129070
Logs Burned: 695
Burned Per Hour: 974
===================================
===================================
Guys just use 1.5.
I'll see what's wrong, but not until tommorow.
Unless I can get a test account, but that'll be unlikely since getting into the house needs pin etc..
supersain
2012-04-19 20:08:45
^ use 1.4. 1.5 messes up those stupid tickets. 1.4 is pretty much flawless.
xYumz
2012-04-19 20:23:40
From: Sin
Guys just use 1.5.
I'll see what's wrong, but not until tommorow.
Unless I can get a test account, but that'll be unlikely since getting into the house needs pin etc..
I'd lend you a spare account, but I checked and it's only got 1 construction :fiery:
Excel
2012-04-19 20:37:08
Hey Sin! just wanted to let you know, your v1.4Script has gotten me to 99 FM. thanks bro!
Congratz!
Added to the first page! :D
Good you didn't get it overnight like me :mad:
illuminatiswag
2012-04-19 23:18:45
============S1NFiremaker===========
Time Running: 6 Hours, 55 Seconds
XP Earned: 738720
XP Per Hour: -75710
Logs Burned: 5606
Burned Per Hour: 934
===================================
===================================
siuman101
2012-04-20 02:29:43
=============v1.7==================
============S1NFiremaker===========
Time Running: 4 Hours, 38 Minutes and 59 Seconds
XP Earned: 581850
XP Per Hour: 125158
Logs Burned: 4405
Burned Per Hour: 947
===================================
===================================
Excel
2012-04-20 03:05:42
From: Sin
Congratz!
Added to the first page! :D
Good you didn't get it overnight like me :mad:
Why whats wrong with getting it over night?
Alright bro, time to use your Fletching bot ;D
Legendscape
2012-04-20 10:56:20
You should add to first post requirements list that game chat must be set to "all".
Took some time to find it out why script didn't work so well.
When it was set to "filter" script burned only ~600 logs per hour, now it burns over 1k.
=============v1.7==================
============S1NFiremaker===========
Time Running: 10 Minutes and 3 Seconds
XP Earned: 24435
XP Per Hour: 146122
Logs Burned: 183
Burned Per Hour: 1094
===================================
===================================
nice script!
Andres
2012-04-20 23:42:50
Running it now. I'm getting over 200k per hour with yews.
I will probably do all of 92 to 95 overnight just to get it out of the way ;)
Jagex Mod
2012-04-20 23:58:40
Running it now but I have noticed a few problems.
Sometimes it doesn't recognize that he's paid the demon's fees. So it just gets stuck in the chatbox and doesn't talk to the demon again to uncert the logs.
Then it just stands around doing nothing.
TomTuff
2012-04-21 15:26:15
===================================
============S1NFiremaker===========
Time Running: 5 Hours, 59 Minutes and 20 Seconds
XP Earned: 1172914
XP/h: -3361
===================================
===================================
using 1.4
Luke L
2012-04-21 23:18:16
I peed my pants when I saw this bot. I have been dreaming of one of these forever@!!!@! as soon as I finish my prayer in my POH, i'm getting 99 firemaking!
Jagex Mod
2012-04-22 19:12:34
For anyone that's having trouble, just use 1.4.
It's most stable out of any of the versions. Been running it for 6 hour periods (max amount possible).
From 70-88 fm so far.
[XoL]
2012-04-22 22:39:13
1.7 works pretty well, I got two 6 hours proggies
dennisl400c
2012-04-23 04:46:34
yeah ive been using 1.7 only thing i found is somtimes if it lags and doesnt withdraw the logs it rans back to start and stands there so i added another line to check if logs are there once u relocate and if not unnote 26 and it runs perfectly now 110k an hour burning maples
zormgwtf
2012-04-23 06:36:08
when demon butler comes back it wont click accept the logs. am i the only one with this problem ?
So here's an idea that I have -
It'll Light the first log, and then will right click the next one until the first one lights, should speed it up a bit.
Interested?
illuminatiswag
2012-04-23 09:58:58
From: Sin
So here's an idea that I have -
It'll Light the first log, and then will right click the next one until the first one lights, should speed it up a bit.
Interested?
Yes
Kidlington
2012-04-23 10:09:44
From: Sin
So here's an idea that I have -
It'll Light the first log, and then will right click the next one until the first one lights, should speed it up a bit.
Interested?
Yep
Lol :p
I'll try and get the framework done while at school, will do the rest at home.
*maybe*
illuminatiswag
2012-04-23 13:59:46
Even though im 99 already but i wouldnt mind getting 99 on my main as well :p
TomTuff
2012-04-23 16:40:02

Woot thanks sin :)
Andres
2012-04-23 18:15:27
This script is pretty great. The only issue that I've seen (which has been mentioned I think) is that it likes to start a new line of fires in the same spot as the previous line. It corrects itself, but it definitely is slower.
Snooze
2012-04-23 19:14:51
it works great but it's pretty slow since it has to keep repeating the same fming animation..
Chris Reborn
2012-04-23 19:42:50
might buy some maples and try this. could use some fm on my main… only 62 fm and 132 cb. which version is working most stable?
illuminatiswag
2012-04-23 22:09:05
=============v1.5==================
============S1NFiremaker===========
Time Running: 6 Hours, 46 Seconds
XP Earned: 761670
XP Per Hour: -72019
Logs Burned: 5739
Burned Per Hour: 958
===================================
===================================
ryhgoalie37
2012-04-24 10:02:31
Just got 98 and should be getting 99 later today. It is definitely the best firemaking script out there at the moment, but i wouldn't say its flawless. It will not un-note the logs at some times, and as it runs for long periods of time it will slowly start lighting the logs further away from the start point, eventually getting close to the other end of the land it your house.
Other than that great script as usual, Sin =D
As usual <3
Anyways, I really need a test account. I'm not wasting xp on my main to update it since im 99 :s
Grihmm
2012-04-24 22:29:29
So far I have gone from 75-88 firemaking with maples, which is about 23522 logs. I am using fire gloves and fire ring, which is speeding it up a bit. (The cursor hovers over my gloves for a few seconds sometimes, but it finds the demon fine)
Ezio Auditore da Firenze
2012-04-24 22:58:58
Ahh.. simplicity will be using this from 85-90! Thanks once again Sin! :)
Jagex Mod
2012-04-24 23:05:39
94 Fm.
1.4 is flawless.
99 sometime this week. 36k logs to go.
Got inferno adze, shit was a pain in the ass to get.
illuminatiswag
2012-04-25 04:12:08
thanks for another 99 !!!
Rarest
2012-04-26 18:02:19
I dont know why everyone says 1.4 is flawless, if I dont babysit it and manually destroy all the strange rocks it just sits there right clicking them like a retard.
Nickkftww
2012-04-26 18:23:53
From: Rarest
I dont know why everyone says 1.4 is flawless, if I dont babysit it and manually destroy all the strange rocks it just sits there right clicking them like a retard.
Get two rocks and bank them manually, then, no more rocks will appear in your invy.
Ty for 99 fm and 2440 total
Gucci
2012-04-26 22:56:20
<3 Sin
Rarest
2012-04-27 12:14:41
Now that I turned Strange Rocks off this script is flawless!! Thanks mate, I appreciate what you;ve contributed to the community!!
hellohappy22
2012-04-27 15:22:06

Thanks Sin! :D
Gucci
2012-04-27 17:17:57
This script is really getting people 99's great job
Jagex Mod
2012-04-28 00:32:35
Thank you for 99 fm. Add me to the list lol.
Got 98, then did firemaker's curse for 80k xp.
Justin
2012-04-28 00:48:47
From: Sin
1.6 has been pushed.
Changes in v1.6 -
writeLn('Changes in 1.6: ');
writeLn(' -Butler changing, will now withdraw when invy is low.');
writeLn(' -Added Spin Ticket support');
Thanks champ
Andres
2012-04-28 19:33:07
From: Jagex Mod
94 Fm.
1.4 is flawless.
99 sometime this week. 36k logs to go.
Got inferno adze, shit was a pain in the ass to get.
Upgrade to Yews. The time you save is well worth the cost.
Evoleon
2012-04-29 23:15:34
Would it be possible to add support of re-entering the house after the 6 hour log by using SMART manager?
Justin
2012-04-30 07:40:43
From: Evoleon
Would it be possible to add support of re-entering the house after the 6 hour log by using SMART manager?
Yes but chances are Sin wont because he already has 99 FM. You can do it yourself, would be pain to get the Butler to follow you again
E: Seems Jagex have made it so the Butler will stop following you after a random time :(
From: [J]ustin
Yes but chances are Sin wont because he already has 99 FM. You can do it yourself, would be pain to get the Butler to follow you again
E: Seems Jagex have made it so the Butler will stop following you after a random time :(
Really?
When was this? He only stops following you if you don't talk to him for a while.
ShadowsTM
2012-04-30 10:29:25
It was working fine yesterday, Although it can be a retard at times when the butler interupts your running, it can start bumping into walls, but other than that really good script :) Thanks
Justin
2012-04-30 12:01:02
From: Sin
Really?
When was this? He only stops following you if you don't talk to him for a while.
Humm not sure then, I am only able to run it for like 7 minutes… I will give it another shot tomorow
pkwa9lawy
2012-05-01 20:03:52
just tested this script works like a charm gona use for 99 fm soon :D i think rs did something with butler tho might keep looking at it and will post if its something i did that made butler go away or its rs ..
ShadowsTM
2012-05-02 12:18:25
Can also comment on the butler issue, Worked fine for 20 minutes, Butler vanished.. Weird huh.
honeyhoney
2012-05-02 12:24:05
The butler doesn't vanish.
There's a relatively rare mishap that occurs in the script when it attempts to Uncert your logs.
It only waits 750-950ms after clicking "Uncert" and if there's lag, it can press 2 (from 26) which selects the Bank option instead. It still believes that you've requested the butler to Uncert your logs so it proceeds to run back to the South-East corner.
Unfortunately, the butler hasn't gone to Uncert your logs, you just exited out of a conversation with him and he is no longer following you.
Edit: on the bright side, I just got a 4 hour 30 minutes run and I only had to fix the issue once.
digitalninja
2012-05-02 19:06:31
Hi Folks,
Just started running this script and its amazing. I noticed only one issue so far (30 minutes in). After getting the bulter to uncert my character tried to run back to his starting point but doesnt make back before the butler gives the logs back. The character than starts burning logs from when the butler gave the inventory. This means that over time the character will slowly start heading more west with each new inventory?
Did anyone else get this? Not sure if its normal or not …
Thanks!!
Digital Ninja
Google
2012-05-02 19:20:48
============S1NFiremaker===========
Time Running: 5 Hours, 49 Minutes and 34 Seconds
XP Earned: 730215
XP Per Hour: -80286
Logs Burned: 5512
Burned Per Hour: 956
===================================
===================================
Gave this a go 130k xp hour not bad.
honeyhoney
2012-05-02 20:38:38
From: digitalninja
Hi Folks,
Just started running this script and its amazing. I noticed only one issue so far (30 minutes in). After getting the bulter to uncert my character tried to run back to his starting point but doesnt make back before the butler gives the logs back. The character than starts burning logs from when the butler gave the inventory. This means that over time the character will slowly start heading more west with each new inventory?
Did anyone else get this? Not sure if its normal or not …
Thanks!!
Digital Ninja
Yep, that happens. You also tend to go further and further north as time goes by.
I find that it's generally pretty safe to go for about 1 or 2 hours without me having to interfere and move them back to the start position.
If you're prepared to check up on it every now and then, it's fine. However, if you're looking for a script you can run while you go on holiday for 2 weeks, this isn't quite it. :P
thomas1116
2012-05-03 05:34:34
does this works flawless for more than 1-2 houers`? and does it support magic logs ? , i got a big house , does it work with that ?
Edit: works flawless have runned it for over 3 houers now!… ill post a proggie when it STOPS :D thanks alot :)
Edit: Here's a proggy
=============v1.7==================
============S1NFiremaker===========
Time Running: 5 Hours, 45 Minutes and 44 Seconds
XP Earned: 1735002
XP Per Hour: 94062
Logs Burned: 5831
Burned Per Hour: 1012
===================================
===================================
Successfully executed. Burned Magic logs ! :D
Here i burned maple logs! =============v1.7==================
============S1NFiremaker===========
Time Running: 5 Hours, 59 Minutes and 41 Seconds
XP Earned: 742755
XP Per Hour: -75118
Logs Burned: 5670
Burned Per Hour: 945
===================================
===================================
Successfully executed.
Works like a charm! :D going for 99 this week - weeeeee!
NightSlayerZ
2012-05-04 09:03:08
can someone tell me how much money do i need to pay the butler per hour ?
honeyhoney
2012-05-04 22:10:12
From: NightSlayerZ
can someone tell me how much money do i need to pay the butler per hour ?
You must pay the Demon Butler 10,000 gp (or 7,500 after completing the quest, Love Story) every 10 tasks.
In this case the 10 tasks will be Uncerting logs.
Assuming 1000~ logs are burned every hour that's 39~ trips/task the butler must take every hour (1000/26 is 38.46, rounded up to 39 because we can't have .4 of a trip/task). 39 tasks… 39,000 gp (1,000 gp per task).
Expect to pay your butler 40,000 gp /hour. Very reasonable for immunity to randoms!
Providing you keep a bit of cash in your money pouch you won't have any problems.
Enslaved
2012-05-05 04:16:24
not working- butler running off when it asks you if u wanna take the logs or take them to sawmill when you are in the middle of running
Can't fix it atm, will do it soon I guess….
Bulls
2012-05-05 14:50:52
flawless script tyvm :)
Andres
2012-05-05 15:00:53
Another script that is working better because of the performance update ;)
I know guys, I love you all too <3
Ashaman88
2012-05-05 18:27:40
From: Sin
I know guys, I love you all too <3
Sin, I had started to use this right before runespan came out and had made some edits to it so the drifting west thing wouldn't happen. I can shoot you a copy of it or post it if ya like? Love the script though :)
Neznam
2012-05-05 18:34:46
This looks amazing.
Will give it a try after Im done with herbalore.
Great work Sin, as always.
Sure Asha, post the script here, I'll update OP with it and credits.
Ashaman88
2012-05-05 19:31:22
From: Sin
Sure Asha, post the script here, I'll update OP with it and credits.
Looking at it I think I was messing with some other things as well. IDK if it works 100%, but I know the relocate function is where it fixes the drifting thing, and that works.
Here is the whole thing, might want people to make sure the rest of it works too before posting the whole thing, or just take that function.
program new;
{$include srl/srl/misc/smart.simba}
{$I SRL/SRL.simba}
{$I srl/srl/misc/debug.simba}
var
StartTime,XPBurn,Burned:Integer;
//Cases
UseProggys,NextLight:Boolean;
TypeOfLogs:String;
procedure DeclarePlayers;
begin
UseProggys := False; //Yes or No * True or False
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
procedure SetupLogin;
begin
ClearDebug;
Smart_Server := 10;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
end;
Procedure HumanMMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
end;
Procedure HumanMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
ClickMouse2(True);
end;
function FindButler(var fx, fy: Integer): Boolean;
var
arP, arAP: TPointArray;
arC, arUC: TIntegerArray;
ararP: T2DPointArray;
tmpCTS, i, j, arL, arL2: Integer;
P: TPoint;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.39, 1.37);
if not(FindColorsTolerance(arP, 2174030, 196,79,349,222, 9)) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
arUC := arC;
ClearSameIntegers(arUC);
arL := High(arUC);
arL2 := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 1.53) and (X <= 7.94) and (Y >= 1.28) and (Y <= 6.22) and (Z >= 0.91) and (Z <= 3.49) then
begin
for j := 0 to arL2 do
begin
if (arUC[i] = arC[j]) then
begin
SetLength(arAP, Length(arAP) + 1);
arAP[High(arAP)] := arP[j];
end;
end;
end;
end;
SortTPAFrom(arAP, Point(MSCX, MSCY));
ararP := SplitTPAEx(arAP, 10, 10);
arL := High(ararP);
for i := 0 to arL do
begin
if (Length(ararP[i]) < 10) then Continue;
P := MiddleTPA(ararP[i]);
HumanMMouse(p.x,p.y,5,5);
Wait(100 + Random(100));
if (IsUpText('emon')) then
begin;
Result := True;
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
begin
Exit;
end;
GetMousePos(fx, fy);
end;
function FireColor: Integer;
var
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.13, 0.49);
FindColorsSpiralTolerance(MSCX, MSCY, arP, 1738208, MSX1, MSY1, MSX2, MSY2, 17);
if (Length(arP) = 0) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
ClearSameIntegers(arC);
arL := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 13.94) and (X <= 58.29) and (Y >= 10.60) and (Y <= 58.15) and (Z >= 2.00) and (Z <= 18.07) then
begin
Result := arC[i];
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
end;
function WaitNPCChatText(Text:String; Time:Integer):Boolean;
var
t:Integer;
begin
MarkTime(t);
repeat
wait(10);
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(FindNPCChatText(Text,Nothing));
Result := True;
end;
procedure StoreUptext;
begin
if ExistsItem(1) then
begin
Mouseitem(1,3);
if IsUpText('ew') then
TypeOfLogs := 'Yew';
if IsUptext('agic') then
TypeofLogs := 'Magic';
if IsUpText('aple') then
TypeOfLogs := 'Maple';
if IsUpText('Oak') then
TypeOfLogs := 'Oak';
if IsUpText('llow') then
TypeOfLogs := 'Willow';
end;
if TypeOfLogs = '' then
writeLn('Failed uptext checking');
writeLn('We are burning: ' + TypeOfLogs);
end;
function WaitInvCountInc(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 > Inv1);
Result := True;
end;
procedure Randoms;
begin
if FindNormalRandoms then
if not LoggedIn then
TerminateScript;
end;
function WaitInvCountDec(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 < Inv1);
Result := True;
end;
procedure Proggy;
var
//progress variables
XP,XPH,Sec,BPH:Integer;
begin
ClearDebug;
XP := GetXPBarTotal - Players[CurrentPlayer].Integers[0];
Sec:= (1+((Getsystemtime-StartTime)/1000));
XPH := (3600 * XP) / (SeC);
BPH := (3600 * Burned) / (SeC);
writeLn('=============v1.7==================');
writeLn('============S1NFiremaker===========');
writeLn('Time Running: ' + TimeRunning);
writeLn('XP Earned: ' + IntToStr(XP));
writeLn('XP Per Hour: ' + IntToStr(XPH));
writeLn('Logs Burned: ' + IntToStr(Burned));
writeLn('Burned Per Hour: ' + IntToStr(BPH));
writelN('===================================');
writeLn('===================================');
end;
function WaitXPIncrease(Time:Integer):Boolean;
var
First,Second,t:Integer;
begin
First := GetXPBarTotal;
MarkTime(T);
repeat
wait(10);
Second := GetXPBarTotal;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Second > First);
Result := True;
end;
function IsFireUnder:Boolean;
var
x,y:Integer;
begin
Result := FindColorSpiralTolerance(x,y,FireColor,242,172,263,181,3);
end;
function GetLogs(Amount:Integer; DoWait:Boolean):Boolean;
var
x,y,t:Integer;
begin
Result := False;
if ExistsItem(1) then
MouseItem(1,1);
if FindButler(x,y) then
begin
ClickMouse2(True);
If WaitNPCChatText('coins',1250) Then
Begin
ClickContinue(True, True);
TypeSendEx('1',False);
Wait(RandomRange(800,1000));
MouseItem(1,1);
if FindButler(x,y) then
ClickMouse2(True);
end;
if WaitNPCChatText('cert',4000) then
begin
TypeSendEx('1',False);
//wait(RandomRange(1500,1700));
If WaitFindColor(X,Y,0,266,397,281,407,1,5000) Then
//if FindColorSpiralTolerance(x,y,9877449,MCX1,MCY1,MCX2,MCY2,38) then
begin
TypeSend('26');
if DoWait then
if WaitInvCountInc(10000) then
Result := True;
end;
end;
end;
end;
function Light(Slot:Integer):Boolean;
begin
If Not NextLight Then
Begin
If Not OptionsExist(['a','g','h'],Nothing) Then
Begin
// Writeln('nooptionfound');
MouseItem(Slot,0);
End;
if WaitOptionMulti(['ight','Lig'],750) then
Begin
// Writeln('foundoptionfound');
Result := True;
End;
Inc(Burned);
End Else
Begin
// Writeln('clicking next spot');
MouseItem(Slot+1,0);
NextLight:=False;
End;
end;
function Relocate:Boolean;
var
x,y,ti:Integer;
begin
MakeCompass(0);
case random(2) of
0:
begin
HumanMouse(688,75,4,4);
FFlag(1);
Wait(RandomRange(650,750));
HumanMouse(671,90,5,5);
Wait(RandomRange(1000,1750));
Repeat
Wait(100);
Until Not IsMoving;
If FlagPresent Then
Begin
HumanMouse(671,90,5,5);
FFlag(1);
Wait(RandomRange(650,750));
End;
end;
1:
begin
HumanMouse(671,110,5,5);
FFlag(1);
Wait(RandomRange(650,750));
HumanMouse(688,100,4,4);
Wait(RandomRange(1000,1750));
Repeat
Wait(100);
Until Not IsMoving;
If FlagPresent Then
Begin
HumanMouse(688,100,4,4);
FFlag(1);
Wait(RandomRange(650,750));
End;
end;
end;
MarkTime(TI);
Repeat
Wait(100);
If TimeFromMark(TI)>6000 Then
Break;
Until InvCount>4;
if InvCount = 1 then
Begin
repeat
wait(10);
until(FindButler(x,y));
GetLogs(26,True);
Exit;
End;
Randoms;
end;
procedure BurnLogs;
var
i,x,y:Integer;
begin
for i := 2 to 28 do
begin
if FindColorSpiralTolerance(x,y,11059400,173,234,201,253,0) Then
Begin
HumanMouse(627,79,5,5);
FFlag(1);
Wait(RandomRange(650,750));
End;
if FindColorSpiralTolerance(x,y,11059400,173,101,201,120,0) Then
Begin
HumanMouse(628,91,5,5);
FFlag(1);
Wait(RandomRange(650,750));
End;
if ExistsItem(i) then
begin
if FIndBlackChatMessage('here') then
begin
case Random(2) of
0:
begin
HumanMouse(627,79,5,5);
FFlag(1);
Wait(RandomRange(650,750));
end;
1:
begin
HumanMouse(628,91,5,5);
FFlag(1);
Wait(RandomRange(650,750));
end;
end;
ExamineInv;
Wait(RandomRange(650,750));
Exit;
end;
Light(i);
Proggy;
NextLight:=True;
Light(i);
WaitXPIncrease(RandomRange(3000,3200));
if (InvCount = 1) And (Not OptionsExist(['a','g','h'],Nothing)) then
begin
GetLogs(26,False);
Relocate;
Randoms;
Exit;
end;
Randoms;
end else
If OptionsExist(['a','g','h'],Nothing) Then
Begin
NextLight:=False;
Light(i);
WaitXPIncrease(RandomRange(3000,3200));
if (InvCount = 1) And (Not OptionsExist(['a','g','h'],Nothing)) then
begin
GetLogs(26,False);
Relocate;
end;
Randoms;
End;
end;
Randoms;
end;
procedure ScriptStart;
var
StartInv,NTW:Integer;
begin
//start with 13 logs + noted, total of 14 items
//StartInv is equal to 14, ntw = 28 - startinv, 14
//Above is just me spouting out the equation, dont bother with it
StartInv := InvCount;
NTW := 28 - StartInv;
if StartInv < 2 then
GetLogs(NTW,True);
end;
begin
ClearDebug;
SetupLogin;
DeclarePlayers;
LoginPlayer;
MouseSpeed := RandomRange(18,20);
writeLn('Changes in 1.7: ');
writeln('Will no longer light the whole row');
writeLn('Wont be a retard anymore. Hopefully.');
NextLight:=False;
Wait(1500);
StartTime:=GetSystemTime;
if (Players[CurrentPlayer].Integers[1] = 0) then
begin
if not IsXPBarOpen then ToggleXPBar(true);
Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
Players[CurrentPlayer].Integers[1] := (Players[CurrentPlayer].Integers[1] + 1);
end;
StoreUptext;
ScriptStart;
repeat
BurnLogs;
until not loggedin;
end.
Bulls
2012-05-06 01:34:10
ashaman's version gets me 1100 logs/h, instead of 1000 logs/h. nice fix ashaman!
Decision
2012-05-06 02:41:07
Too bad I've already gotten 99 fm ;)
Otherwise I would have used this for sure!
Muwai
2012-05-06 06:19:08
this script is flawless! this is one of my proggies!
===================================
============S1NFiremaker===========
Time Running: 3 Hours, 21 Minutes and 51 Seconds
XP Earned: 400424
XP/h: 119016
===================================
===================================
Bulls
2012-05-06 08:05:17
Proggy:
=============v1.7==================
============S1NFiremaker===========
Time Running: 3 Hours, 40 Minutes and 6 Seconds
XP Earned: 527985
XP Per Hour: 143941
Logs Burned: 3995
Burned Per Hour: 1089
===================================
===================================
Used maple logs. I will edit if i will get to 6h proggy
thomas1116
2012-05-06 15:23:53
wish this could run more than 6 h :S but im 96 fm now so its good, sometimes it just stands there, when the bulter come back with logs and it dosnt exit the text … then it waits and waits untill disconnect … and the but shuts down , an wont logg in again :S got that issues some few times but its flawless anyways :P can't wait for 99 ! :P
I can't believe this script has come so far.
This was written (the original version, v1) in 20 minutes because RiDs wasn't working.
xxshabsxx
2012-05-06 21:06:29
Hmm…
How come others are getting in excess of 1k logs and hour, and I'm getting only around 750 (max) logs an hour?
I'm not very good at scripting, so from what I've read I'm not sure how to fix it.
Anyone care to chime in and possible help me?
Cheers.
Ashaman88
2012-05-06 22:28:35
Decided to take a break from runespan and mess around with it a little more. Great script again! So far with current tweeks:
============S1NFiremaker===========
Time Running: 29 Minutes and 16 Seconds
XP Earned: 78627
XP Per Hour: 161286
Logs Burned: 576
Burned Per Hour: 1181
===================================
===================================
program new;
{$include srl/srl/misc/smart.simba}
{$I SRL/SRL.simba}
{$I srl/srl/misc/debug.simba}
var
StartTime,XPBurn,Burned:Integer;
//Cases
UseProggys,NextLight:Boolean;
TypeOfLogs:String;
procedure DeclarePlayers;
begin
UseProggys := False; //Yes or No * True or False
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
procedure SetupLogin;
begin
ClearDebug;
Smart_Server := 10;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
end;
Procedure HumanMMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
end;
Procedure HumanMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
ClickMouse2(True);
end;
function FindButler(var fx, fy: Integer): Boolean;
var
arP, arAP: TPointArray;
arC, arUC: TIntegerArray;
ararP: T2DPointArray;
tmpCTS, i, j, arL, arL2: Integer;
P: TPoint;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.39, 1.37);
if not(FindColorsTolerance(arP, 2174030, 196,79,349,222, 9)) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
arUC := arC;
ClearSameIntegers(arUC);
arL := High(arUC);
arL2 := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 1.53) and (X <= 7.94) and (Y >= 1.28) and (Y <= 6.22) and (Z >= 0.91) and (Z <= 3.49) then
begin
for j := 0 to arL2 do
begin
if (arUC[i] = arC[j]) then
begin
SetLength(arAP, Length(arAP) + 1);
arAP[High(arAP)] := arP[j];
end;
end;
end;
end;
SortTPAFrom(arAP, Point(MSCX, MSCY));
ararP := SplitTPAEx(arAP, 10, 10);
arL := High(ararP);
for i := 0 to arL do
begin
if (Length(ararP[i]) < 10) then Continue;
P := MiddleTPA(ararP[i]);
HumanMMouse(p.x,p.y,5,5);
Wait(100 + Random(100));
if (IsUpText('emon')) then
begin;
Result := True;
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
begin
Exit;
end;
GetMousePos(fx, fy);
end;
function FireColor: Integer;
var
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.13, 0.49);
FindColorsSpiralTolerance(MSCX, MSCY, arP, 1738208, MSX1, MSY1, MSX2, MSY2, 17);
if (Length(arP) = 0) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
ClearSameIntegers(arC);
arL := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 13.94) and (X <= 58.29) and (Y >= 10.60) and (Y <= 58.15) and (Z >= 2.00) and (Z <= 18.07) then
begin
Result := arC[i];
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
end;
function WaitNPCChatText(Text:String; Time:Integer):Boolean;
var
t:Integer;
begin
MarkTime(t);
repeat
wait(10);
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(FindNPCChatText(Text,Nothing));
Result := True;
end;
procedure StoreUptext;
begin
if ExistsItem(1) then
begin
Mouseitem(1,3);
if IsUpText('ew') then
TypeOfLogs := 'Yew';
if IsUptext('agic') then
TypeofLogs := 'Magic';
if IsUpText('aple') then
TypeOfLogs := 'Maple';
if IsUpText('Oak') then
TypeOfLogs := 'Oak';
if IsUpText('llow') then
TypeOfLogs := 'Willow';
end;
if TypeOfLogs = '' then
writeLn('Failed uptext checking');
writeLn('We are burning: ' + TypeOfLogs);
end;
function WaitInvCountInc(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 > Inv1);
Result := True;
end;
procedure Randoms;
begin
if FindNormalRandoms then
if not LoggedIn then
TerminateScript;
end;
function WaitInvCountDec(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 < Inv1);
Result := True;
end;
procedure Proggy;
var
//progress variables
XP,XPH,Sec,BPH:Integer;
begin
ClearDebug;
XP := GetXPBarTotal - Players[CurrentPlayer].Integers[0];
Sec:= (1+((Getsystemtime-StartTime)/1000));
XPH := (3600 * XP) / (SeC);
BPH := (3600 * Burned) / (SeC);
writeLn('=============v1.7==================');
writeLn('============S1NFiremaker===========');
writeLn('Time Running: ' + TimeRunning);
writeLn('XP Earned: ' + IntToStr(XP));
writeLn('XP Per Hour: ' + IntToStr(XPH));
writeLn('Logs Burned: ' + IntToStr(Burned));
writeLn('Burned Per Hour: ' + IntToStr(BPH));
writelN('===================================');
writeLn('===================================');
end;
function WaitXPIncrease(Time:Integer):Boolean;
var
First,Second,t:Integer;
begin
First := GetXPBarTotal;
MarkTime(T);
repeat
wait(10);
Second := GetXPBarTotal;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Second > First);
Result := True;
end;
function IsFireUnder:Boolean;
var
x,y:Integer;
begin
Result := FindColorSpiralTolerance(x,y,FireColor,242,172,263,181,3);
end;
function GetLogs(Amount:Integer; DoWait:Boolean):Boolean;
var
x,y,t:Integer;
begin
Result := False;
if ExistsItem(1) then
MouseItem(1,1);
if FindButler(x,y) then
begin
ClickMouse2(True);
If WaitNPCChatText('coins',1250) Then
Begin
ClickContinue(True, True);
TypeSendEx('1',False);
Wait(RandomRange(800,1000));
MouseItem(1,1);
if FindButler(x,y) then
ClickMouse2(True);
end;
if WaitNPCChatText('cert',4000) then
begin
TypeSendEx('1',False);
//wait(RandomRange(1500,1700));
If WaitFindColor(X,Y,0,266,397,281,407,1,5000) Then
//if FindColorSpiralTolerance(x,y,9877449,MCX1,MCY1,MCX2,MCY2,38) then
begin
TypeSend('26');
if DoWait then
if WaitInvCountInc(10000) then
Result := True;
end;
end;
end;
end;
function Light(Slot:Integer):Boolean;
begin
If Not NextLight Then
Begin
If Not OptionsExist(['a','g','h'],Nothing) Then
Begin
// Writeln('nooptionfound');
MouseItem(Slot,0);
End;
if WaitOptionMulti(['ight','Lig'],750) then
Begin
// Writeln('foundoptionfound');
Result := True;
End;
Inc(Burned);
End Else
Begin
// Writeln('clicking next spot');
MouseItem(Slot+1,0);
NextLight:=False;
End;
end;
function Relocate:Boolean;
var
x,y,ti:Integer;
begin
MakeCompass(0);
case random(2) of
0:
begin
HumanMouse(688,75,4,4);
FFlag(1);
Wait(RandomRange(650,750));
HumanMouse(671,80,2,2);
Wait(RandomRange(1000,1750));
Repeat
Wait(100);
Until Not IsMoving;
If FlagPresent Then
Begin
HumanMouse(671,80,2,2);
FFlag(1);
Wait(RandomRange(650,750));
End;
end;
1:
begin
HumanMouse(688,95,5,5);
FFlag(1);
Wait(RandomRange(650,750));
HumanMouse(688,80,2,2);
Wait(RandomRange(1000,1750));
Repeat
Wait(100);
Until Not IsMoving;
If FlagPresent Then
Begin
HumanMouse(688,80,2,2);
FFlag(1);
Wait(RandomRange(650,750));
End;
end;
end;
MarkTime(TI);
Repeat
Wait(100);
If TimeFromMark(TI)>6000 Then
Break;
Until InvCount>4;
if InvCount = 1 then
Begin
repeat
wait(10);
until(FindButler(x,y));
GetLogs(26,True);
Exit;
End;
Randoms;
end;
procedure BurnLogs;
var
i,x,y:Integer;
begin
for i := 2 to 28 do
begin
if FindColorSpiralTolerance(x,y,11059400,173,234,201,253,0) Then
Begin
HumanMouse(627,79,5,5);
FFlag(1);
Wait(RandomRange(650,750));
End;
if FindColorSpiralTolerance(x,y,11059400,173,101,201,120,0) Then
Begin
HumanMouse(628,91,5,5);
FFlag(1);
Wait(RandomRange(650,750));
End;
if ExistsItem(i) then
begin
if FIndBlackChatMessage('here') then
begin
case Random(2) of
0:
begin
HumanMouse(627,79,5,5);
FFlag(1);
Wait(RandomRange(650,750));
end;
1:
begin
HumanMouse(628,91,5,5);
FFlag(1);
Wait(RandomRange(650,750));
end;
end;
ExamineInv;
Wait(RandomRange(650,750));
Exit;
end;
Light(i);
Proggy;
NextLight:=True;
Light(i);
WaitXPIncrease(RandomRange(3000,3200));
if (InvCount = 1) And (Not OptionsExist(['a','g','h'],Nothing)) then
begin
GetLogs(26,False);
Relocate;
Randoms;
Exit;
end;
Randoms;
end else
If OptionsExist(['a','g','h'],Nothing) Then
Begin
NextLight:=False;
Light(i);
WaitXPIncrease(RandomRange(3000,3200));
if (InvCount = 1) And (Not OptionsExist(['a','g','h'],Nothing)) then
begin
GetLogs(26,False);
Relocate;
end;
Randoms;
End;
end;
Randoms;
end;
procedure ScriptStart;
var
StartInv,NTW:Integer;
begin
//start with 13 logs + noted, total of 14 items
//StartInv is equal to 14, ntw = 28 - startinv, 14
//Above is just me spouting out the equation, dont bother with it
StartInv := InvCount;
NTW := 28 - StartInv;
if StartInv < 2 then
GetLogs(NTW,True);
end;
begin
ClearDebug;
SetupLogin;
DeclarePlayers;
LoginPlayer;
MouseSpeed := RandomRange(18,20);
writeLn('Changes in 1.7: ');
writeln('Will no longer light the whole row');
writeLn('Wont be a retard anymore. Hopefully.');
NextLight:=False;
Wait(1500);
StartTime:=GetSystemTime;
if (Players[CurrentPlayer].Integers[1] = 0) then
begin
if not IsXPBarOpen then ToggleXPBar(true);
Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
Players[CurrentPlayer].Integers[1] := (Players[CurrentPlayer].Integers[1] + 1);
end;
StoreUptext;
ScriptStart;
repeat
BurnLogs;
until not loggedin;
end.
xxshabsxx
2012-05-06 23:16:32
From: ashaman88
Decided to take a break from runespan and mess around with it a little more. Great script again! So far with current tweeks:
============S1NFiremaker===========
Time Running: 29 Minutes and 16 Seconds
XP Earned: 78627
XP Per Hour: 161286
Logs Burned: 576
Burned Per Hour: 1181
===================================
===================================
program new;
{$include srl/srl/misc/smart.simba}
{$I SRL/SRL.simba}
{$I srl/srl/misc/debug.simba}
var
StartTime,XPBurn,Burned:Integer;
//Cases
UseProggys,NextLight:Boolean;
TypeOfLogs:String;
procedure DeclarePlayers;
begin
UseProggys := False; //Yes or No * True or False
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
procedure SetupLogin;
begin
ClearDebug;
Smart_Server := 10;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
end;
Procedure HumanMMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
end;
Procedure HumanMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
ClickMouse2(True);
end;
function FindButler(var fx, fy: Integer): Boolean;
var
arP, arAP: TPointArray;
arC, arUC: TIntegerArray;
ararP: T2DPointArray;
tmpCTS, i, j, arL, arL2: Integer;
P: TPoint;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.39, 1.37);
if not(FindColorsTolerance(arP, 2174030, 196,79,349,222, 9)) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
arUC := arC;
ClearSameIntegers(arUC);
arL := High(arUC);
arL2 := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 1.53) and (X <= 7.94) and (Y >= 1.28) and (Y <= 6.22) and (Z >= 0.91) and (Z <= 3.49) then
begin
for j := 0 to arL2 do
begin
if (arUC[i] = arC[j]) then
begin
SetLength(arAP, Length(arAP) + 1);
arAP[High(arAP)] := arP[j];
end;
end;
end;
end;
SortTPAFrom(arAP, Point(MSCX, MSCY));
ararP := SplitTPAEx(arAP, 10, 10);
arL := High(ararP);
for i := 0 to arL do
begin
if (Length(ararP[i]) < 10) then Continue;
P := MiddleTPA(ararP[i]);
HumanMMouse(p.x,p.y,5,5);
Wait(100 + Random(100));
if (IsUpText('emon')) then
begin;
Result := True;
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
begin
Exit;
end;
GetMousePos(fx, fy);
end;
function FireColor: Integer;
var
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.13, 0.49);
FindColorsSpiralTolerance(MSCX, MSCY, arP, 1738208, MSX1, MSY1, MSX2, MSY2, 17);
if (Length(arP) = 0) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
ClearSameIntegers(arC);
arL := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 13.94) and (X <= 58.29) and (Y >= 10.60) and (Y <= 58.15) and (Z >= 2.00) and (Z <= 18.07) then
begin
Result := arC[i];
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
end;
function WaitNPCChatText(Text:String; Time:Integer):Boolean;
var
t:Integer;
begin
MarkTime(t);
repeat
wait(10);
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(FindNPCChatText(Text,Nothing));
Result := True;
end;
procedure StoreUptext;
begin
if ExistsItem(1) then
begin
Mouseitem(1,3);
if IsUpText('ew') then
TypeOfLogs := 'Yew';
if IsUptext('agic') then
TypeofLogs := 'Magic';
if IsUpText('aple') then
TypeOfLogs := 'Maple';
if IsUpText('Oak') then
TypeOfLogs := 'Oak';
if IsUpText('llow') then
TypeOfLogs := 'Willow';
end;
if TypeOfLogs = '' then
writeLn('Failed uptext checking');
writeLn('We are burning: ' + TypeOfLogs);
end;
function WaitInvCountInc(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 > Inv1);
Result := True;
end;
procedure Randoms;
begin
if FindNormalRandoms then
if not LoggedIn then
TerminateScript;
end;
function WaitInvCountDec(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 < Inv1);
Result := True;
end;
procedure Proggy;
var
//progress variables
XP,XPH,Sec,BPH:Integer;
begin
ClearDebug;
XP := GetXPBarTotal - Players[CurrentPlayer].Integers[0];
Sec:= (1+((Getsystemtime-StartTime)/1000));
XPH := (3600 * XP) / (SeC);
BPH := (3600 * Burned) / (SeC);
writeLn('=============v1.7==================');
writeLn('============S1NFiremaker===========');
writeLn('Time Running: ' + TimeRunning);
writeLn('XP Earned: ' + IntToStr(XP));
writeLn('XP Per Hour: ' + IntToStr(XPH));
writeLn('Logs Burned: ' + IntToStr(Burned));
writeLn('Burned Per Hour: ' + IntToStr(BPH));
writelN('===================================');
writeLn('===================================');
end;
function WaitXPIncrease(Time:Integer):Boolean;
var
First,Second,t:Integer;
begin
First := GetXPBarTotal;
MarkTime(T);
repeat
wait(10);
Second := GetXPBarTotal;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Second > First);
Result := True;
end;
function IsFireUnder:Boolean;
var
x,y:Integer;
begin
Result := FindColorSpiralTolerance(x,y,FireColor,242,172,263,181,3);
end;
function GetLogs(Amount:Integer; DoWait:Boolean):Boolean;
var
x,y,t:Integer;
begin
Result := False;
if ExistsItem(1) then
MouseItem(1,1);
if FindButler(x,y) then
begin
ClickMouse2(True);
If WaitNPCChatText('coins',1250) Then
Begin
ClickContinue(True, True);
TypeSendEx('1',False);
Wait(RandomRange(800,1000));
MouseItem(1,1);
if FindButler(x,y) then
ClickMouse2(True);
end;
if WaitNPCChatText('cert',4000) then
begin
TypeSendEx('1',False);
//wait(RandomRange(1500,1700));
If WaitFindColor(X,Y,0,266,397,281,407,1,5000) Then
//if FindColorSpiralTolerance(x,y,9877449,MCX1,MCY1,MCX2,MCY2,38) then
begin
TypeSend('26');
if DoWait then
if WaitInvCountInc(10000) then
Result := True;
end;
end;
end;
end;
function Light(Slot:Integer):Boolean;
begin
If Not NextLight Then
Begin
If Not OptionsExist(['a','g','h'],Nothing) Then
Begin
// Writeln('nooptionfound');
MouseItem(Slot,0);
End;
if WaitOptionMulti(['ight','Lig'],750) then
Begin
// Writeln('foundoptionfound');
Result := True;
End;
Inc(Burned);
End Else
Begin
// Writeln('clicking next spot');
MouseItem(Slot+1,0);
NextLight:=False;
End;
end;
function Relocate:Boolean;
var
x,y,ti:Integer;
begin
MakeCompass(0);
case random(2) of
0:
begin
HumanMouse(688,75,4,4);
FFlag(1);
Wait(RandomRange(650,750));
HumanMouse(671,80,2,2);
Wait(RandomRange(1000,1750));
Repeat
Wait(100);
Until Not IsMoving;
If FlagPresent Then
Begin
HumanMouse(671,80,2,2);
FFlag(1);
Wait(RandomRange(650,750));
End;
end;
1:
begin
HumanMouse(688,95,5,5);
FFlag(1);
Wait(RandomRange(650,750));
HumanMouse(688,80,2,2);
Wait(RandomRange(1000,1750));
Repeat
Wait(100);
Until Not IsMoving;
If FlagPresent Then
Begin
HumanMouse(688,80,2,2);
FFlag(1);
Wait(RandomRange(650,750));
End;
end;
end;
MarkTime(TI);
Repeat
Wait(100);
If TimeFromMark(TI)>6000 Then
Break;
Until InvCount>4;
if InvCount = 1 then
Begin
repeat
wait(10);
until(FindButler(x,y));
GetLogs(26,True);
Exit;
End;
Randoms;
end;
procedure BurnLogs;
var
i,x,y:Integer;
begin
for i := 2 to 28 do
begin
if FindColorSpiralTolerance(x,y,11059400,173,234,201,253,0) Then
Begin
HumanMouse(627,79,5,5);
FFlag(1);
Wait(RandomRange(650,750));
End;
if FindColorSpiralTolerance(x,y,11059400,173,101,201,120,0) Then
Begin
HumanMouse(628,91,5,5);
FFlag(1);
Wait(RandomRange(650,750));
End;
if ExistsItem(i) then
begin
if FIndBlackChatMessage('here') then
begin
case Random(2) of
0:
begin
HumanMouse(627,79,5,5);
FFlag(1);
Wait(RandomRange(650,750));
end;
1:
begin
HumanMouse(628,91,5,5);
FFlag(1);
Wait(RandomRange(650,750));
end;
end;
ExamineInv;
Wait(RandomRange(650,750));
Exit;
end;
Light(i);
Proggy;
NextLight:=True;
Light(i);
WaitXPIncrease(RandomRange(3000,3200));
if (InvCount = 1) And (Not OptionsExist(['a','g','h'],Nothing)) then
begin
GetLogs(26,False);
Relocate;
Randoms;
Exit;
end;
Randoms;
end else
If OptionsExist(['a','g','h'],Nothing) Then
Begin
NextLight:=False;
Light(i);
WaitXPIncrease(RandomRange(3000,3200));
if (InvCount = 1) And (Not OptionsExist(['a','g','h'],Nothing)) then
begin
GetLogs(26,False);
Relocate;
end;
Randoms;
End;
end;
Randoms;
end;
procedure ScriptStart;
var
StartInv,NTW:Integer;
begin
//start with 13 logs + noted, total of 14 items
//StartInv is equal to 14, ntw = 28 - startinv, 14
//Above is just me spouting out the equation, dont bother with it
StartInv := InvCount;
NTW := 28 - StartInv;
if StartInv < 2 then
GetLogs(NTW,True);
end;
begin
ClearDebug;
SetupLogin;
DeclarePlayers;
LoginPlayer;
MouseSpeed := RandomRange(18,20);
writeLn('Changes in 1.7: ');
writeln('Will no longer light the whole row');
writeLn('Wont be a retard anymore. Hopefully.');
NextLight:=False;
Wait(1500);
StartTime:=GetSystemTime;
if (Players[CurrentPlayer].Integers[1] = 0) then
begin
if not IsXPBarOpen then ToggleXPBar(true);
Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
Players[CurrentPlayer].Integers[1] := (Players[CurrentPlayer].Integers[1] + 1);
end;
StoreUptext;
ScriptStart;
repeat
BurnLogs;
until not loggedin;
end.
Hey asha, is there any reason as to why when the script is running, it takes short breaks after lighting a log (instead of it being fluid) and so it has to do the tinderbox action again to get it started?
Because others are getting in excess of 1k an hour, and I'm getting around 740 (even with the new script that you just posted).
Ashaman88
2012-05-06 23:22:57
From: xxshabsxx
Hey asha, is there any reason as to why when the script is running, it takes short breaks after lighting a log (instead of it being fluid) and so it has to do the tinderbox action again to get it started?
Because others are getting in excess of 1k an hour, and I'm getting around 740 (even with the new script that you just posted).
Do you have the top xp bar set to firemaking or total? If not then thats probably why. Also having it set to 'lots' won't work either. The top bar must be firemaking or total.
xxshabsxx
2012-05-06 23:31:24
From: ashaman88
Do you have the top xp bar set to firemaking or total? If not then thats probably why. Also having it set to 'lots' won't work either. The top bar must be firemaking or total.
Oh god thank you so much!
I had no idea that that would have effected it.
A new problem has arisen though, it seems to not walk back to the correct spot (only in the version you just posted), it slowly makes it way furhter and further away from the south-east corner until it cant go anymore.
Ashaman88
2012-05-06 23:37:45
From: xxshabsxx
Oh god thank you so much!
I had no idea that that would have effected it.
A new problem has arisen though, it seems to not walk back to the correct spot (only in the version you just posted), it slowly makes it way furhter and further away from the south-east corner until it cant go anymore.
Did you try his orig? When you say further away from se do you mean to the west?
Here is it running so far w/ maples:
=============v1.7==================
============S1NFiremaker===========
Time Running: 1 Hours, 28 Minutes and 49 Seconds
XP Earned: 239323
XP Per Hour: 161735
Logs Burned: 1754
Burned Per Hour: 1185
===================================
===================================
xxshabsxx
2012-05-06 23:40:06
From: ashaman88
Did you try his orig? When you say further away from se do you mean to the west?
Here is it running so far w/ maples:
=============v1.7==================
============S1NFiremaker===========
Time Running: 1 Hours, 28 Minutes and 49 Seconds
XP Earned: 239323
XP Per Hour: 161735
Logs Burned: 1754
Burned Per Hour: 1185
===================================
===================================
Yes I used his orig, and that works fine. By moving more away from the SE, I mean that it origin position (where it lights its first log) moves further to the west ever inventory.
Ashaman88
2012-05-06 23:42:20
From: xxshabsxx
Yes I used his orig, and that works fine. By moving more away from the SE, I mean that it origin position (where it lights its first log) moves further to the west ever inventory.
hmm that does seem strange considering the x values are the same. Well if it's working for you then stick with the orig.
xxshabsxx
2012-05-06 23:50:08
From: ashaman88
hmm that does seem strange considering the x values are the same. Well if it's working for you then stick with the orig.
Yeah I'm just going to stick with the original for the moment.
Once again, thanks very much for all your help!
Bossman00
2012-05-07 09:44:54
Brilliant script!
============S1NFiremaker===========
Time Running: 2 Hours, 28 Minutes and 21 Seconds
XP Earned: 516780
XP Per Hour: 209034
Logs Burned: 2604
Burned Per Hour: 1053
===================================
===================================
From: xxshabsxx
Yeah I'm just going to stick with the original for the moment.
Once again, thanks very much for all your help!
He's awesome yes.
And im so sorry! I completely forgot that you need an XP Bar at the top since I base my timing off the XP Rise ;)
It ensures for the most efficient imo.
From: Bossman00
Brilliant script!
============S1NFiremaker===========
Time Running: 2 Hours, 28 Minutes and 21 Seconds
XP Earned: 516780
XP Per Hour: 209034
Logs Burned: 2604
Burned Per Hour: 1053
===================================
===================================
Thank you! Yew Logs?
Bossman00
2012-05-07 09:49:40
From: Sin
Thank you! Yew Logs?
Yup!
Thanks again:spot:
You're welcome.
I'll be firemaking on my alternate account to 99, so this script isn't anywhere near done yet!
anvi89
2012-05-07 09:51:43
thanks for the script i got 40-99 with it in like 5 days doing maples. :)
From: anvi89
thanks for the script i got 40-99 with it in like 5 days doing maples. :)
Yeah, tbh, maples are the best xp/gp here.
I did Magics since it was the fastest xp haha. I'll probably do Yews on my pure.
anvi89
2012-05-07 09:55:47
From: Sin
Yeah, tbh, maples are the best xp/gp here.
I did Magics since it was the fastest xp haha. I'll probably do Yews on my pure.
it was just such fast xp i had to go with maples ha
From: anvi89
it was just such fast xp i had to go with maples ha
Im not quite sure, but are Maples the third highest logs able to be burned?
Or are they arctic pines?
Bossman00
2012-05-07 10:01:44
Can anyone tell me what the slider on the right hand side is for?
sorry for the newbish question lol
From: Bossman00
Can anyone tell me what the slider on the right hand side is for?
sorry for the newbish question lol
It's the FPS slider.
The higher you move it, the more memory it takes up, but the more smoother the graphics look.
anvi89
2012-05-07 10:03:52
From: Sin
Im not quite sure, but are Maples the third highest logs able to be burned?
Or are they arctic pines?
ya maples have 10 xp more
Bossman00
2012-05-07 10:05:16
From: Sin
It's the FPS slider.
The higher you move it, the more memory it takes up, but the more smoother the graphics look.
Oh, I see.
Thanks mate
From: Bossman00
Oh, I see.
Thanks mate
No problem, i'm here all day ;)
Bossman00
2012-05-07 16:30:27
From: Sin
No problem, i'm here all day ;)
Here's another cool lil proggy
=============v1.7==================
============S1NFiremaker===========
Time Running: 3 Hours, 28 Minutes and 18 Seconds
XP Earned: 790560
XP Per Hour: -115943
Logs Burned: 3934
Burned Per Hour: 1133
===================================
===================================
I have no idea why the xp/hr is negative..
Ashaman88
2012-05-08 07:52:13
w/ a few more tweeks:
=============v1.7==================
============S1NFiremaker===========
Time Running: 6 Hours, 42 Seconds
XP Earned: 964977
XP Per Hour: -38151
Logs Burned: 6889
Burned Per Hour: 1152
===================================
===================================
<3
siuman101
2012-05-08 09:40:05
=============v1.7==================
============S1NFiremaker===========
Time Running: 6 Hours, 2 Minutes and 15 Seconds
XP Earned: 841860
XP Per Hour: -58808
Logs Burned: 6397
Burned Per Hour: 1071
===================================
Remember to post here when you get 99 ;)
#of 99s - 11+.
Will add SRL stats asap!
Version 1.8 Pushed!
PLEASE USE SRL STATS!
thomas1116
2012-05-08 10:41:23
what is SRL stats?
btw im testing ur new verison 1.8 thank u :P
chuckyb0y
2012-05-08 10:41:55
srl stats is the registraton of all xp u gaint on this script
thomas1116
2012-05-08 10:50:26
how can i use SRL STATS then when idk where i get them from ?
thomas1116
2012-05-08 11:09:35
well 1,8 gets just stuck , and dosnt even pay the demon so i use ur 1,7 instead, it lighted 70 logs then just stopped :S wierd
Cookiep
2012-05-08 12:59:25
============S1NFiremaker===========
Time Running: 3 Hours, 43 Minutes and 10 Seconds
XP Earned: 439965
XP/h: 120035
great script, reason it stopped is because i ran out of membership :/
5 hours of use in 7 hours xD
chuckyb0y
2012-05-08 16:07:48
just stops and stands there after few invents.
no debug nothing
i used 1.8 did few runs and than stopped.
thomas1116
2012-05-08 17:35:25
From: chuckyb0y
just stops and stands there after few invents.
no debug nothing
i used 1.8 did few runs and than stopped.
same for me :S
Cookiep
2012-05-09 22:18:34
version 1.8 is working great for me so far been running 35 minutes no problems at all, il keep it running and see if it can run as good as 1.4 and 1.7
IBZerked
2012-05-10 05:14:49
I've get within 30mins random events in my house ffs im flagged
xxshabsxx
2012-05-10 06:55:11
From: IBZerked
I've get within 30mins random events in my house ffs im flagged
Are you in building mode? If you are, and you get a random, then you're kind of stuffed.
Also I'm not sure why people are having issues with 1.8, mines running fine (and better than 1.7)
==================S1NFiremaker=================
Time Running: 1 Hours, 21 Minutes and 15 Seconds
XP Earned: 180900
XP Per Hour: 138502
Logs Burned: 1362
Burned Per Hour: 1042
===============================================
===============================================
This is with maples.
chuckyb0y
2012-05-10 07:10:24
From: xxshabsxx
Are you in building mode? If you are, and you get a random, then you're kind of stuffed.
Also I'm not sure why people are having issues with 1.8, mines running fine (and better than 1.7)
==================S1NFiremaker=================
Time Running: 1 Hours, 21 Minutes and 15 Seconds
XP Earned: 180900
XP Per Hour: 138502
Logs Burned: 1362
Burned Per Hour: 1042
===============================================
===============================================
This is with maples.
mine just stopts after talking to the butlers does not and logs out.
did u try run it for like 6hours ?
and what settings do you use ?
xxshabsxx
2012-05-10 07:56:49
From: chuckyb0y
mine just stopts after talking to the butlers does not and logs out.
did u try run it for like 6hours ?
and what settings do you use ?
That's really weird.
Have you set your xp to only show total, and popups off? That might set it off.
Other than that, I have no idea what you're doing wrong as the setup is so similar.
It it stopped for some reason after 2.2 hours.
Punjabi3
2012-05-10 09:41:30
I think the new bonfire update will be awesome for this script
Zerkeronrs7
2012-05-10 09:50:18
From: Punjabi3
I think the new bonfire update will be awesome for this script
You read my mind, i can't wait for the updated version if sin decide to do it :D
chuckyb0y
2012-05-10 09:53:18
bonfire will be even easyer to bot with this.
so SIN please make it so it makes a fire and use logs on it.
gives bonus xp!
I will as soon as my laptop is fixed (3 weeks max :s)
Ashaman88
2012-05-10 10:24:27
From: Sin
I will as soon as my laptop is fixed (3 weeks max :s)
I implemented a ghetto version this morning, it's pretty easy to edit for it (just need tweaking for perfect). I'll shoot you what I got when I get home tonight
From: ashaman88
I implemented a ghetto version this morning, it's pretty easy to edit for it (just need tweaking for perfect). I'll shoot you what I got when I get home tonight
Awesome, thanks a ton.
Harry
2012-05-10 11:43:15
I hacked up bonfire support in this because I am much too lazy to write my own. I removed a lot of stuff I didn't like as well, and made everything a bit more safe.
Reply if you want me to remove this. I'd normally post just the parts I changed, but I changed a lot in it so I don't know what exactly I did. Don't think you'll care since you can't update it at the moment anyways. Works pretty stable and gives me ~150k exp/hr doing maple logs.
program new;
{$include srl/srl/misc/smart.simba}
{$I SRL/SRL.simba}
{$I srl/srl/misc/debug.simba}
{$I sps/sps.simba}
var
StartTime,LogsBurned,globalexp:Integer;
//progress variables
XP,XPH,Sec:Integer;
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
procedure SetupLogin;
begin
ClearDebug;
Smart_Server := 87;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
end;
function butlerhere:boolean;
begin
result := (length(GetMiniMapDotsIn('npc',617,75,637,95)) > 0);
if result then writeln('got butler') else writeln('no butler');
end;
function FindButler(var fx, fy: Integer): Boolean;
var
arP, arAP: TPointArray;
arC, arUC: TIntegerArray;
ararP: T2DPointArray;
tmpCTS, i, j, arL, arL2: Integer;
P: TPoint;
X, Y, Z: Extended;
begin
waitfunc(@butlerhere,100,10000);
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.39, 1.37);
if not(FindColorsTolerance(arP, 2174030, 196,79,349,222, 9)) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
arUC := arC;
ClearSameIntegers(arUC);
arL := High(arUC);
arL2 := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 1.53) and (X <= 7.94) and (Y >= 1.28) and (Y <= 6.22) and (Z >= 0.91) and (Z <= 3.49) then
begin
for j := 0 to arL2 do
begin
if (arUC[i] = arC[j]) then
begin
SetLength(arAP, Length(arAP) + 1);
arAP[High(arAP)] := arP[j];
end;
end;
end;
end;
SortTPAFrom(arAP, Point(MSCX, MSCY));
ararP := SplitTPAEx(arAP, 10, 10);
arL := High(ararP);
for i := 0 to arL do
begin
if (Length(ararP[i]) < 10) then Continue;
P := MiddleTPA(ararP[i]);
MMouse(P.x, P.y, 5, 5);
Wait(100 + Random(100));
if (IsUpText('emon')) then
begin;
Result := True;
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
begin
Exit;
end;
GetMousePos(fx, fy);
end;
function FireColor: Integer;
var
arP: TPointArray;
arC: TIntegerArray;
tmpCTS, i, arL: Integer;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.13, 0.49);
FindColorsSpiralTolerance(MSCX, MSCY, arP, 1738208, MSX1, MSY1, MSX2, MSY2, 17);
if (Length(arP) = 0) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
ClearSameIntegers(arC);
arL := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 13.94) and (X <= 58.29) and (Y >= 10.60) and (Y <= 58.15) and (Z >= 2.00) and (Z <= 18.07) then
begin
Result := arC[i];
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
end;
function WaitNPCChatText(Text:String; Time:Integer):Boolean;
var
t,x,y:Integer;
begin
MarkTime(t);
repeat
wait(100+Random(100));
ClickContinue(True,True);
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
If (GetColor(185, 390) =13158600) Then
Begin
writeln('giving him coins');
ClickContinue(True, True);
Wait(100+Random(1000));
ClickContinue(True, True);
Wait(100+Random(1000));
ClickContinue(True, True);
TypeSendEx('1',False);
Wait(1000+Random(1000));
ClickContinue(True, True);
//TypeSendEx('1',False);
Wait(RandomRange(800,1000));
MouseItem(1,1);
if FindButler(x,y) then
ClickMouse2(True);
Wait(2000+Random(2000));
end;
until(FindNPCChatText(Text,Nothing));
Result := True;
end;
function WaitInvCountInc(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 > Inv1);
Result := True;
end;
function WaitInvCountDec(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 < Inv1);
Result := True;
end;
procedure Proggy;
begin
XP := GetXPBarTotal - Players[CurrentPlayer].Integers[0];
Sec:= (1+((Getsystemtime-StartTime)/1000));
XPH := (3600*XP) / (SeC);
writeLn('===================================');
writeLn('============S1NFiremaker===========');
writeLn('Time Running: ' + TimeRunning);
writeLn('XP Earned: ' + IntToStr(XP));
writeLn('XP/h: ' + IntToStr(XPH));
writelN('===================================');
writeLn('===================================');
end;
procedure RandomRClickH; // phantombmx/EvilChicken - removed inv clicking
var
M: Byte;
Inv: Boolean;
bx,by: integer;
begin
if (not LoggedIn) then exit;
M := MouseSpeed;
MouseSpeed := 7 + Random(25);
bx := Random(MIX2);
by := Random(MIY2);
if PointInBox(point(bx,by),inttobox(MSX1,MSY1,msx2,msy2)) then
begin
Mouse(bx, by, 0, 0, False);
if (Random(3) > 0) then
Inv := ChooseOption('xamine');
if (not Inv) then ChooseOption('ancel');
end
else
MMouse(bx, by, 0, 0);
MouseSpeed := M;
end;
procedure AntiBuns;
begin
begin
case (Random(100)) of
0: begin RandomRClickH; Inc(Players[CurrentPlayer].Integers[2]); end;
1: begin MouseSpeed := 15 + Random(7); Inc(Players[CurrentPlayer].Integers[2]); end;
2: begin if (Random(2) = 0) then PickUpMouse; Inc(Players[CurrentPlayer].Integers[2]); end;
3..200: begin
wait(1);
end;
end;
Wait(10+random(500));
end;
end;
function WaitXPIncrease(Time:Integer):Boolean;
var
First,Second,t:Integer;
begin
First := GetXPBarTotal;
MarkTime(T);
repeat
AntiBuns;
if not (ExistsItem(27)) then begin Result:=False;exit; end;
wait(50);
Second := GetXPBarTotal;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Second > First);
Result := True;
end;
function FireExists:Boolean;
var
x,y:Integer;
begin
Result := FindColorSpiralTolerance(x,y,FireColor,196, 117, 323, 223, 3);
if Result then WriteLn('Fire exists') else WriteLn('Fire does not exist');
end;
function readytype: boolean;
var x,y:integer;
begin
result := FindColorSpiralTolerance(x,y,9877449,MCX1,MCY1,MCX2,MCY2,38);
end;
function GetLogs(Amount:Integer):Boolean;
var
x,y,t:Integer;
begin
Result := False;
if ExistsItem(1) then
MouseItem(1,1);
if FindButler(x,y) then
begin
ClickMouse2(True);
if WaitNPCChattext('cert',4000) then
begin
TypeSendEx('1',False);
wait(750 + random(200));
if waitfunc(@readytype,100+Random(100),2000) then
begin
wait(250+random(1000));
TypeSend('26');
wait(50+Random(700));
if WaitInvCountInc(10000) then
Result := True;
end;
end;
end;
end;
function GetLogsFast(Amount:Integer):Boolean;
var
x,y,t:Integer;
begin
Result := False;
if ExistsItem(1) then
MouseItem(1,1);
if FindButler(x,y) then
begin
ClickMouse2(True);
If WaitNPCChatText('coins',1250) Then
Begin
TypeSendEx('1',False);
Wait(1000+Random(1000));
ClickContinue(True, True);
//TypeSendEx('1',False);
Wait(RandomRange(800,1000));
MouseItem(1,1);
if FindButler(x,y) then
ClickMouse2(True);
end;
if WaitNPCChattext('cert',4000) then
begin
TypeSendEx('1',False);
wait(750 + random(200));
if waitfunc(@readytype,100+Random(100),2000) then
begin
wait(250+random(1000));
TypeSend('26');
//wait(50+Random(700));
if WaitInvCountInc(10000) then
Result := True;
end;
end;
end;
end;
function WhatToDo: boolean;
begin
Result := (GetColor(333, 364) = 16777215);
end;
function Light(Slot:Integer;TypeOfBurn:string):Boolean;
begin
if (TypeOfBurn <> 'tinder') then
MouseItem(Slot,mouse_Left)
else
begin
MouseItem(Slot,Mouse_Right);
WaitOption('ight ', 750);
end;
if (TypeOfBurn <> 'tinder') then
if WaitFunc(@WhatToDo, 100, 2000) then
begin
if (TypeOfBurn <> 'tinder') then
MouseBox(316, 403, 392, 454, Mouse_Left)
else
MouseBox(128, 403, 199, 455, Mouse_Left);
end else
begin
WriteLn('Choosing Option for bonfire failed!');
Exit;
end;
if (TypeOfBurn = 'tinder') then
begin
if WaitFunc(@FireExists, 100, 5000) then
begin
WriteLn('Tinderbox worked, now gonna add bonfire!');
Light(slot+1,'bonfire');
Exit;
end else
Writeln('tinderbox failed!');
end;
if FindBlackChatMessage('here') then
begin
WriteLn('you can''t light a log here, too lazy to handle this atm, bye!');
terminatescript;
end;
if FindBlackChatMessage('range') then
begin
WriteLn('No bonfires, wut?');
end;
end;
function Relocate:Boolean;
var
x,y:Integer;
begin
if InvCount < 3 then
GetLogs(26);
// Wait(250 + random(2000));
end;
{function gotthelogs:boolean;
begin
result:=(invcount>6);
end;}
procedure BurnLogs;
var bakas: integer;
begin
findspinticket;
bakas := 1;
repeat
bakas := bakas+1;
if ExistsItem(bakas) then
Break;
until (bakas > 27);
if (bakas > 27) then
begin
WriteLn('No logs! Getting some more!');
Relocate;
Exit;
end;
if not FireExists then
Light(bakas, 'tinder')
else
Light(bakas, 'bonfire');
repeat
if not WaitXPIncrease(4000) then // you might want to increase this if you're on a laggy world
begin
WriteLn('Exp failsafe resulted, breaking out.');
Break;
end;
until not (ExistsItem(27));
Proggy;
findspinticket;
//waitfunc(@gotthelogs,100,5000);
// if InvCount < 3 then
Relocate;
end;
begin
ClearDebug;
SetupLogin;
DeclarePlayers;
LoginPlayer;
MouseSpeed := RandomRange(22,25);
StartTime:=GetSystemTime;
if (Players[CurrentPlayer].Integers[1] = 0) then
begin
if not IsXPBarOpen then ToggleXPBar(true);
Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
Players[CurrentPlayer].Integers[1] := (Players[CurrentPlayer].Integers[1] + 1);
end;
if InvCount = 1 then
GetLogs(26);
repeat
BurnLogs;
until not loggedin;
end.
pure ftw52
2012-05-10 14:01:26
where you start ?
blinkblink
2012-05-10 14:22:36
From: pure ftw52
where you start ?
Are you serious?
Since you are blind that you couldn't read the main thread post….
Requirements:
Demon butler
Any firemaking level
Noted logs in first inventory slot
Clothes that DO NOT LOOK LIKE A FIRE
Money to pay the butler
Start character in the MOST south eastern place
View this screenshot -

Start in same area, where clothes like mine (Stuff that doesn't have yellow/orange)
Set camera angle to the highest.
^.^
chuckyb0y
2012-05-10 15:12:04
Got problem it wont give the demon butler the coins in my case 7500 it stops and says no butler. and later on it sayed no logs try butler over and over again
MiroMiro
2012-05-10 17:43:46
doesn't work for me
xxshabsxx
2012-05-10 18:22:47
From: Harry
I hacked up bonfire support in this because I am much too lazy to write my own. I removed a lot of stuff I didn't like as well, and made everything a bit more safe.
Reply if you want me to remove this. I'd normally post just the parts I changed, but I changed a lot in it so I don't know what exactly I did. Don't think you'll care since you can't update it at the moment anyways. Works pretty stable and gives me ~150k exp/hr doing maple logs.
Wow, for me this is extremely buggy.
a) It doesn't right click the fire to make bonfires (much easier)
b) When the bonfire is out, 60% of the time it won't make a fire)
And for some reason, it just stops adding logs ALL the time.
Harry
2012-05-10 18:41:10
From: xxshabsxx
Wow, for me this is extremely buggy.
a) It doesn't right click the fire to make bonfires (much easier)
b) When the bonfire is out, 60% of the time it won't make a fire)
And for some reason, it just stops adding logs ALL the time.
a) No it's not easier, and infact it's much much slower.
You are in the far south-east area of your PoH in building mode, right? Also, use demon butler. Working flawless for me, earned over 1.8m exp already.
You sure you're using my edit and
not the script in S1N's first post?…
xxshabsxx
2012-05-10 19:08:01
From: Harry
a) No it's not easier, and infact it's much much slower.
You are in the far south-east area of your PoH in building mode, right? Also, use demon butler. Working flawless for me, earned over 1.8m exp already.
You sure you're using my edit and not the script in S1N's first post?…
Yeah I was in the most south, eastern part of the map. I'll try again and see what happens because I beleive that its working for you and that I've done something wrong.
And why
wouldn't right clicking the fire be faster? Wouldn't it just a bit less hassle as it's a simple right click option when the fire has been identified?
Anyway I'll delete the script, re-compile it and try again and I'll let you know.
siuman101
2012-05-10 19:18:52
Harry, i am trying to use your script, and i think that anti-ban is pretty bad… When the log is burning, it should not interrupt with clicking "craft", cause it will stop the burning action. Others work pretty good!
xxshabsxx
2012-05-10 19:20:55
From: siuman101
Harry, i am trying to use your script, and i think that anti-ban is pretty bad… When the log is burning, it should not interrupt with clicking "craft", cause it will stop the burning action. Others work pretty good!
Yeah mine is running fine now.
But it tends to do what is said above.
===================================
============S1NFiremaker===========
Time Running: 10 Minutes and 8 Seconds
XP Earned: 21575
XP/h: 127536
===================================
===================================
And for some reason I'm not getting the xp that you are.
Edit:
Now I've fond that if the bonfire burns out, it lights a fire and tries to add a log WAY to fast. Which just makes an endless loop of trying to add the logs to the fire and then trying to light it when it eventually realizes it's not there.
Ugh, I don't know why I'm having so many problems.
Calm down and wait for my official release.
chuckyb0y
2012-05-11 01:06:35
Mine does only got problem with paying the demon butler it talks to hem but doesnt select the first option and talk use noted logs on him again.
Harry
2012-05-11 01:30:15
I don't know what any of you guys are doing wrong. My edit is still working flawless, none of the issues you are talking about I ever get. Demon butler with noted maple logs in build mode has been running fine for me.
laloo345
2012-05-11 01:56:45
Ummm New Update Of Burning Logs… Dont Think This Works Any More??
kneekopiko
2012-05-11 01:57:53
It still works fine with the new update.
chuckyb0y
2012-05-11 03:05:25
harry can u post ur Graphic settings and other settings maybe we do something wrong.
it just wont say first option it looks like it doesnt know that it needs to pay.
BTW did you edit version 1.8?
cause it doesnt work for me either.
thomas1116
2012-05-11 04:03:42
i use version 1.7 and im 97 firemaking now lighting maples… i got no problems :D
1.8 dosn't work for me :)
thomas1116
2012-05-11 04:38:20
damn guys, i tried a guide for fasten up SRL&simba , so i removed java , and reinstalled java 6 update 32 … sooo i had to ,reinstal lsimba, and now the firemaking script dosnt work :S This is what it says :
SRL Compiled in 0 msec
SMART Initialized.
Loaded: Server 87, Members: True, Signed: True, Super Detail: False.
Error: Exception: Access violation at line 101
The following DTMs were not freed: [SRL - Lamp bitmap, 1]
The following bitmaps were not freed: [SRL - Mod bitmap, SRL - Admin bitmap, SRL - Flag bitmap]
anyone know what to do ? :S
Zerkeronrs7
2012-05-11 04:58:46
No need to double post thomas :)
And i don't know what you guys are talking about, Herry's version of the script is working just fine.
Is the Bonfire working here :3 ?
chuckyb0y
2012-05-11 05:19:10
From: Zerkeronrs7
No need to double post thomas :)
And i don't know what you guys are talking about, Herry's version of the script is working just fine.
can you send your graphic settings simba plugins ?
maybe i am missing something because it wont detect that the servants need to be payed it just tryes over and over again to un note the maple's
i got last version msi sps srl odtm and extensions.
aslo playing on min with fixed screen on safe mode.
Zerkeronrs7
2012-05-11 05:25:16
From: chuckyb0y
can you send your graphic settings simba plugins ?
maybe i am missing something because it wont detect that the servants need to be payed it just tryes over and over again to un note the maple's
i got last version msi sps srl odtm and extensions.
aslo playing on min with fixed screen on safe mode.
I'm just on the min graphics settings. The only difference is i'm on SPS 1, but i don't think that will affect the script.
chuckyb0y
2012-05-11 05:29:23
From: Zerkeronrs7
I'm just on the min graphics settings. The only difference is i'm on SPS 1, but i don't think that will affect the script.
Than i dont realy get it my brightness is on max verything and code looks just fine..
maybe reinstalling Simba does help…
btw i am also using smart manager v0.93.
Neega Rose
2012-05-11 05:30:02
thanks 4 99 fm btw…right 4 the upd8 :/
siuman101
2012-05-11 09:23:27
Thanks for getting me to 99fm :P
Moron
2012-05-11 09:46:40
From: Harry
I hacked up bonfire support in this because I am much too lazy to write my own. I removed a lot of stuff I didn't like as well, and made everything a bit more safe.
Reply if you want me to remove this. I'd normally post just the parts I changed, but I changed a lot in it so I don't know what exactly I did. Don't think you'll care since you can't update it at the moment anyways. Works pretty stable and gives me ~150k exp/hr doing maple logs.
<rm quoted script>
Massive help, thanks. :spot:
Moron
2012-05-12 11:42:46
From: Harry
I hacked up bonfire support in this because I am much too lazy to write my own. I removed a lot of stuff I didn't like as well, and made everything a bit more safe.
Sometimes when adding logs to the bonfire, the script will click on a log in the inventory, causing the whole process to stop. Can you fix this??/ Please
newy1
2012-05-12 22:42:46
Stops every few minutes…
That's not any help at all.
Moron
2012-05-13 09:39:46
From: Sin
That's not any help at all.
U gonna update this:confused:
Butler keeps wandering off for me after 5-10 minutes. =/
navysealster
2012-05-14 02:51:16
Did not screenie the level but i recently went 77-99 with this script in about a week of relaxed botting. works well thank you very much!
chuckyb0y
2012-05-14 05:10:12
Thanx SIN
ur script made me 99 FM!!
I'll add both of you guys to OP, congrats!
koo29
2012-05-14 21:19:33
Are you planning to add bonfire support? That would be greatly appreciated :)
I definitely will, once I get my computer back.
Vanny
2012-05-15 11:31:38
http://puu.sh/uSeJI used 1.7 from levels 40-99 in a few day, Thanks sin!
Also, 1.8 seemed to lose track of the butler then just log out after a few minutes.
1.7 worked excellently, however it tended to try starting fires on top of existing ones.
This wouldn't be a problem if it wasn't for the fact it took 10+ seconds sometimes for it to figure out it was on top of a fire.
When it was doing that it was about 128k/hr, but when it wasn't it was hovering at 137k/hr.
Ecoalypse
2012-05-15 12:23:58
Could you make it able to fire make bonfires? Like, making a fire in the house then use logs on it and then when your out of logs u tell your butler to un-cert and repeat
Gratz Vanny!!!
Eco, I do NOT have access to scripting runescape at the moment.
If someone can get me the colors for the required things, I can write it via theory.
Ashaman88
2012-05-16 18:55:25
From: Sin
Gratz Vanny!!!
Eco, I do NOT have access to scripting runescape at the moment.
If someone can get me the colors for the required things, I can write it via theory.
So apparently you can get the fire spirit in build mode now. I went ahead and wrote it up to handle that (it will keep charms but drop all other items). I think I got it working good, but I cheated and have it only to work with maple logs (DTM). Lemme know if you would like me to send you the code
Ashaman88
2012-05-16 19:04:16
From: Sin
Post it here! :p
ah gay

won't let me drop the other items…any ideas?
Tell the butler to bank it?
Ashaman88
2012-05-16 19:25:21
From: Sin
Tell the butler to bank it?
oh duh! Think i've got it, lemme get a spirit to test it on then i will post what i got
Edit* Alright no idea how stable it is, and again I cheated for myself using the dtm for maple logs (anywhere you see Mlog, that's it). Idk if you want to store DTM's for the different type of logs in the storeuptext or just take apart what I've added and figure out a more flexible way.
program new;
{$include srl/srl/misc/smart.simba}
{$I SRL/SRL.simba}
{$I srl/srl/misc/debug.simba}
var
StartTime,Burned,Log,mlog,Waittime,Ashes:Integer;
//Cases
UseProggys,FirstBank:Boolean;
TypeOfLogs:String;
procedure DeclarePlayers;
begin
UseProggys := False; //Yes or No * True or False
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
procedure SetupLogin;
begin
ClearDebug;
Smart_Server := 10;
Smart_Members := True;
Smart_Signed := True;
Smart_SuperDetail := False;
SetupSRL;
end;
Procedure HumanMMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
end;
Procedure HumanMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,A,Dist,MP: integer;
begin
A := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;
randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(A*MP), eX+(A*MP));
Y2 := RandomRange(eY-(A*MP), eY+(A*MP));
WindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := A;
ClickMouse2(True);
end;
function FindButler(var fx, fy: Integer): Boolean;
var
arP, arAP: TPointArray;
arC, arUC: TIntegerArray;
ararP: T2DPointArray;
tmpCTS, i, j, arL, arL2: Integer;
P: TPoint;
X, Y, Z: Extended;
begin
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.39, 1.37);
if not(FindColorsTolerance(arP, 2174030, 196,79,349,222, 9)) then
begin
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
Exit;
end;
arC := GetColors(arP);
arUC := arC;
ClearSameIntegers(arUC);
arL := High(arUC);
arL2 := High(arC);
for i := 0 to arL do
begin
ColorToXYZ(arC[i], X, Y, Z);
if (X >= 1.53) and (X <= 7.94) and (Y >= 1.28) and (Y <= 6.22) and (Z >= 0.91) and (Z <= 3.49) then
begin
for j := 0 to arL2 do
begin
if (arUC[i] = arC[j]) then
begin
SetLength(arAP, Length(arAP) + 1);
arAP[High(arAP)] := arP[j];
end;
end;
end;
end;
SortTPAFrom(arAP, Point(MSCX, MSCY));
ararP := SplitTPAEx(arAP, 10, 10);
arL := High(ararP);
for i := 0 to arL do
begin
if (Length(ararP[i]) < 10) then Continue;
P := MiddleTPA(ararP[i]);
HumanMMouse(p.x,p.y,5,5);
Wait(100 + Random(100));
if (IsUpText('emon')) then
begin;
Result := True;
Break;
end;
end;
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
if (i = arL + 1) then
begin
Exit;
end;
GetMousePos(fx, fy);
end;
function WaitNPCChatText(Text:String; Time:Integer):Boolean;
var
t:Integer;
begin
MarkTime(t);
repeat
wait(10);
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(FindNPCChatText(Text,Nothing));
Result := True;
end;
procedure StoreUptext;
begin
if ExistsItem(1) then
begin
Mouseitem(1,3);
if IsUpText('ew') then
TypeOfLogs := 'Yew';
if IsUptext('agic') then
TypeofLogs := 'Magic';
if IsUpText('aple') then
TypeOfLogs := 'Maple';
if IsUpText('Oak') then
TypeOfLogs := 'Oak';
if IsUpText('llow') then
TypeOfLogs := 'Willow';
end;
if TypeOfLogs = '' then
writeLn('Failed uptext checking');
writeLn('We are burning: ' + TypeOfLogs);
end;
function WaitInvCountInc(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 > Inv1);
Result := True;
end;
procedure Randoms;
begin
if FindNormalRandoms then
if not LoggedIn then
TerminateScript;
end;
function WaitInvCountDec(Time:Integer):Boolean;
var
Inv1,Inv2,t:Integer;
begin
MarkTime(t);
Inv1 := InvCount;
repeat
wait(10);
Inv2 := InvCount;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Inv2 < Inv1);
Result := True;
end;
procedure Proggy;
var
//progress variables
XP,XPH,Sec,BPH:Integer;
begin
ClearDebug;
XP := GetXPBarTotal - Players[CurrentPlayer].Integers[0];
Sec:= (1+((Getsystemtime-StartTime)/1000));
XPH := (3600 * XP) / (SeC);
BPH := (3600 * Burned) / (SeC);
writeLn('=============v1.7==================');
writeLn('============S1NFiremaker===========');
writeLn('Time Running: ' + TimeRunning);
writeLn('XP Earned: ' + IntToStr(XP));
writeLn('XP Per Hour: ' + IntToStr(XPH));
writeLn('Logs Burned: ' + IntToStr(Burned));
writeLn('Burned Per Hour: ' + IntToStr(BPH));
writelN('===================================');
writeLn('===================================');
end;
function WaitXPIncrease(Time:Integer):Boolean;
var
First,Second,t:Integer;
begin
First := GetXPBarTotal;
MarkTime(T);
repeat
wait(10);
Second := GetXPBarTotal;
if TimeFromMark(t) > Time then
begin
Result := False;
Exit;
end;
until(Second > First);
Result := True;
end;
function GetLogs(Amount:Integer; DoWait:Boolean):Boolean;
var
x,y:Integer;
begin
Result := False;
if ExistsItem(1) then
MouseItem(1,1);
if FindButler(x,y) then
begin
ClickMouse2(True);
Wait(RandomRange(600,700));
If WaitNPCChatText('coins',1250) Then
Begin
ClickContinue(True, True);
TypeSendEx('1',False);
Wait(RandomRange(800,1000));
MouseItem(1,1);
if FindButler(x,y) then
ClickMouse2(True);
end;
if WaitNPCChatText('cert',4000) then
begin
TypeSendEx('1',False);
If WaitFindColor(X,Y,0,266,397,281,407,1,5000) Then
begin
If (28-Invcount)<=26 Then
TypeSend(Tostr(28-InvCount)) Else
TypeSend('26');
If Not FirstBank Then
Burned:= Burned+28-InvCount;
FirstBank:=False;
if DoWait then
if WaitInvCountInc(10000) then
Result := True;
end;
end;
end;
end;
Procedure BankStuff;
var
i,x,y:integer;
Begin
for i := 2 to 8 do
begin
If existsitem(i) then
begin
mouseitem(i,3);
if not waituptextmulti(['og','logs','Log','log'],RandomRange(200,300)) then
begin
ClickMouse2(true);
if FindButler(x,y) then
begin
ClickMouse2(True);
If WaitNPCChatText('coins',1250) Then
Begin
ClickContinue(True, True);
TypeSendEx('1',False);
Wait(RandomRange(800,1000));
MouseItem(i,1);
if FindButler(x,y) then
ClickMouse2(True);
end;
if WaitNPCChatText('ank',4000) then
begin
FindNPCChatText('ank',ClickLeft);
If WaitFindColor(X,Y,0,266,397,281,407,1,5000) Then
begin
TypeSend(tostr(randomrange(100,500)));
end;
Wait(RandomRange(1000,1200));
Repeat
Wait(100)
Until FindButler(X,Y);
Wait(RandomRange(1500,2000));
end;
end;
End;
End;
End;
GetLogs(20,True); //so butler won't walk away
End;
Function GetSpirit: Boolean;
Var
a, h,X,y: Integer;
TPA : TPointArray;
ATPA : T2DPointArray;
tmpCTS : Integer;
Begin
if(not(LoggedIn))then Exit;
Result:=False;
tmpCTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.37, 2.08);
FindColorsSpiralTolerance(MSCX, MSCY, TPA, 2655692, MSX1, MSY1, MSX2, MSY2, 14);
ATPA := TPAtoATPAEx(TPA, 20, 20);
SortATPASize(ATPA,True);
ColorToleranceSpeed(tmpCTS);
SetColorSpeed2Modifiers(0.2, 0.2);
H := High(ATPA);
for a := 0 to H do
begin
MiddleTPAEx(atpa[a], X, Y);
HumanMMouse(X, Y, 5, 5);
if(WaitUpTextMulti(['emon','spirit', 'rit', 'ee'], RandomRange(150,200)))then
begin
ClickMouse2(False);
If Waitoptionmulti(['spirit', 'rit', 'ee'], 750) then
begin
WaitInvCountInc(4000);
Wait(RandomRange(2000,2200));
BankStuff;
result:=true;
Exit;
end;
end;
end;
End;
function Light(Slot:Integer):Boolean;
Var
x,y:integer;
begin
FindDTM(MLog,X,Y,MiX1,Miy1,Mix2,Miy2);
HumanMMouse(X,Y,4,4);
ClickMOuse2(False);
if WaitOptionMulti(['ight','Lig','Li','L'],750) then
Begin
Result := True;
if WaitInvCountDec(6000) then
WaitXPIncrease(4000);
MarkTime(Ashes);
End;
end;
Function FindFire: Boolean;
Var
X,y: Integer;
Begin
if(not(LoggedIn))then Exit;
Result:=False;
If FindDTM(MLog,X,Y,MIX1,MIy1,MIX2,MIY2) Then
Begin
HumanMouse(X,Y,4,4);
If WaitFindDTMEX(Log,X,Y,295,376,414,464,100,5000) Then
Begin
HumanMouse(X,Y,4,4);
Repeat
Wait(100);
Until Not FindDTM(Log,X,Y,295,376,414,464);
Result:=True;
End;
End;
End;
Procedure Waiting;
Var
T,Inv1: Integer;
SpiritSuccess: Boolean;
begin
SpiritSuccess:=True;
MarkTime(waittime);
Inv1:=InvCount;
Repeat
Wait(RandomRange(600,700));
If FindBlackChatMessage('rang') Then
Begin
ExamineInv;
Exit;
End;
If Inv1>InvCount Then
Begin
Inv1:=InvCount;
MarkTime(WaitTime);
End;
If (TimeFromMark(Ashes)>120000) And (CountDots('red')=1) Then
Exit;
If (FindChatBoxText('emerges',8,397249)) And (InvCount<20) Then
Begin
Marktime(T);
Repeat
Wait(100);
If TimeFromMark(T)>6000 Then
Begin
SpiritSuccess:=False;
Break;
End;
Until GetSpirit;
If SpiritSuccess Then
If FindFire Then
Marktime(waittime);
SpiritSuccess:=True;
End;
Until (CountItems('DTM',Mlog,[])=0) or (TimeFromMark(waittime)>8000);
end;
procedure Mainloop;
begin
Randoms;
If CountItems('DTM',Mlog,[])=0 Then
Begin
If InvCount>1 Then
BankStuff;
GetLogs(26,True);
End;
If FindFire Then
waiting;
If CountItems('DTM',Mlog,[])=0 Then
begin
Proggy;
Exit;
end;
Randoms;
Light(27);
end;
procedure ScriptStart;
var
StartInv,NTW:Integer;
begin
ClickNorth(SRL_ANGLE_HIGH);
MLog := DTMFromString('mbQAAAHicY2VgYMhiYmAoBuJkIC6H0jqMDAyqQKwNxAZAbALEkVY8DMFm3AxlwSoM0da8YJofqB8dM2LBYAAA71YHDw==');
Log:= DTMFromString('mbQAAAHicY2VgYIhhZGBIAuJaIHYD4kAgXgjEq4F4DhDPBeI1QJzgoQXGIT6ODMHeDgyt2VYM/ED96JgRCwYDALTwCfA=');
FirstBank:=False;
StartInv := InvCount;
NTW := 28 - StartInv;
if StartInv < 2 then
begin
firstbank:=true;
GetLogs(NTW,True);
end else
Burned:=Countitems('dtm',mlog,[]);
Light(10);
MarkTime(Ashes);
end;
procedure frees;
begin
freedtm(log);
freedtm(mlog);
end;
begin
ClearDebug;
SetupLogin;
DeclarePlayers;
LoginPlayer;
MouseSpeed := RandomRange(18,20);
writeLn('Changes in 1.7: ');
writeln('Will no longer light the whole row');
writeLn('Wont be a retard anymore. Hopefully.');
Addonterminate('frees');
Wait(1500);
StartTime:=GetSystemTime;
if (Players[CurrentPlayer].Integers[1] = 0) then
begin
if not IsXPBarOpen then ToggleXPBar(true);
Players[CurrentPlayer].Integers[0] := GetXPBarTotal;
Players[CurrentPlayer].Integers[1] := (Players[CurrentPlayer].Integers[1] + 1);
end;
StoreUptext;
ScriptStart;
repeat
Mainloop;
until not loggedin;
end.
Most things I added that might not make sense were necessary (like maybe a random wait here and there), but feel free to ask about any of it! Again this will probably work only on maple logs, unless the dtm manages to recognize other log types.
PS the dtm that is just 'log' is for the use with bonfire interface.
============S1NFiremaker===========
Time Running: 11 Minutes and 32 Seconds
XP Earned: 31423
XP Per Hour: 163708
Logs Burned: 188
Burned Per Hour: 979
===================================
===================================
Zerkeronrs7
2012-05-17 09:02:09
============S1NFiremaker===========
Time Running: 1 Hours, 11 Minutes and 35 Seconds
XP Earned: 147935
XP Per Hour: 124025
Logs Burned: 947
Burned Per Hour: 793
===================================
===================================
That's using ashaman's version. Logs hour isn't hat fast because the butler doesn't have more logs ready once you've finished your inventory. You have to wait wait for him to go and get some before you cans tart burning the logs again. Seems quite stable and is still running now though, well done man :)
Ashaman88
2012-05-17 09:07:59
From: Zerkeronrs7
============S1NFiremaker===========
Time Running: 1 Hours, 11 Minutes and 35 Seconds
XP Earned: 147935
XP Per Hour: 124025
Logs Burned: 947
Burned Per Hour: 793
===================================
===================================
That's using ashaman's version. Logs hour isn't hat fast because the butler doesn't have more logs ready once you've finished your inventory. You have to wait wait for him to go and get some before you cans tart burning the logs again. Seems quite stable and is still running now though, well done man :)
I did find a problem where if the orb gives you a gem, when you left click on it, it will bring up the cut interface instead of 'use' so it won't ever go to the bank. Probably will need to have it either detect the uptext for gems or just have all the items to be banked right clicked and choose optioned instead.
It looks like it's pretty much the same xp/hr as the line of logs…except i guess you get some charms and what not now.
Zerkeronrs7
2012-05-17 10:25:07
From: ashaman88
I did find a problem where if the orb gives you a gem, when you left click on it, it will bring up the cut interface instead of 'use' so it won't ever go to the bank. Probably will need to have it either detect the uptext for gems or just have all the items to be banked right clicked and choose optioned instead.
It looks like it's pretty much the same xp/hr as the line of logs…except i guess you get some charms and what not now.
I haven't come across that problem yet, so i'm guessing that it's flawless apart from that :)
And yea the xp/hour is the same pretty much, i don't know why i cared about the log/hour because you burn them slower anyway :P
EDIT: Quick proggy before bed with ashaman's version:
=============v1.7==================
============S1NFiremaker===========
Time Running: 4 Hours, 34 Minutes and 29 Seconds
XP Earned: 566018
XP Per Hour: 123734
Logs Burned: 3611
Burned Per Hour: 789
===================================
===================================
supamans
2012-05-18 07:51:35
how do i remove finding the spirit from that script you posted ashaman88 without messing the whole thing up? i attempted it but it was making fires like before bonfires
supamans
2012-05-18 08:09:12
nevermind i fixed it.
Ashaman88
2012-05-18 08:11:34
From: supamans
nevermind i fixed it.
Yeah just take out that part in the waiting procedure where it says the findchatboxtext stuff. Sin when you do finish doing the bonfire version check for the spirits should probably be optional per the user.
Awesome job Asha, but it's burning fewer logs than usual? Is that normal?
Zerkeronrs7
2012-05-18 10:02:43
From: Sin
Awesome job Asha, but it's burning fewer logs than usual? Is that normal?
Yes it is because you burn the logs more slowly than lighting them, and un noting the logs is slightly slower but more stable i feel :)
pulse0
2012-05-18 10:13:31
got 99 fm with your script last night! thanks alot. was running flawless. only time stopped was after the 6hr game update crap.
THANKS :)
Ezio Auditore da Firenze
2012-05-20 03:45:33
Am I the only one here that gets randoms… I thought you couldn't get them in your house! Came back to my comp n i was on arravs island that pirate noob!
Zerkeronrs7
2012-05-20 04:29:39
From: Jonno
Am I the only one here that gets randoms… I thought you couldn't get them in your house! Came back to my comp n i was on arravs island that pirate noob!
You have to be in building mode in your poh to not get any randoms :)
Ezio Auditore da Firenze
2012-05-20 04:32:07
From: Zerkeronrs7
You have to be in building mode in your poh to not get any randoms :)
Oh boy! :duh: thanks mate! =]
Edit:
Added report. This was with Ashaman's modified version! (thanks mate), & thanks Sin :).=============v1.7==================
============S1NFiremaker===========
Time Running: 1 Hours, 21 Minutes and 44 Seconds
XP Earned: 182103
XP Per Hour: 133708
Logs Burned: 1098
Burned Per Hour: 806
===================================
===================================
Chris Reborn
2012-05-20 10:33:52
thanks sin just got 99 fm with your script v1.7 would of had a screeny but i got it overnight. thanks man.
Chris Reborn
2012-05-20 13:33:13
you can add me to the OP if you want.
I will! As soon as I get on a computer haha!
maarc1
2012-05-22 09:31:13
Got a problem with Harrys version where it gets stuck at the point where you need to pay your demon butler.
I also get this weird prog:
===================================
============S1NFiremaker===========
Time Running: 2 Minutes and 44 Seconds
XP Earned: 20188309
XP/h: -3059378
===================================
===================================
imalegitbotter
2012-05-30 04:06:16
I let it run, and it just stands there after doing one or two inventorys, what am i doin wrong? D:
digitalninja
2012-05-31 17:43:55
Hi Shay,
I updated to the 1.8 and for some reason it always stalls out after paying the butler. It clicks on the logs after paying but doesnt un-cert via bulter …
DN
rowan131
2012-06-02 17:41:48
Hey bot looks great but im having problems. Sometimes it wont click on the butler, sometimes it wont pay him, i have tryed 1.7 and 1.8 any ideas how i can fix these errors? Also my colors are green, brown and grey.
same problem as rowan, plus sometime it doesnt recognise the fire on the floor and tried to light fires ontop of already lit fires
Threshold
2012-06-17 02:12:51
How can I get Ashaman's to work with yew logs? Just keeps clicking the notes on the butler.
Sh!nE
2012-06-18 16:05:31
I don't get it why it burns the old way, when the bonfires gives more xp.
Luke L
2012-06-18 23:40:46
From: Sh!nE
I don't get it why it burns the old way, when the bonfires gives more xp.
Because, even though it gives more exp, it puts them on the fire slower then you can light them, so they both result in about the same exp per hour anyways, so he hasn't bothered to update,
BUT if you do wish to have it do the bonfire method to use less logs overall, why not use ashmans updated version that does so, and can be found within the last few pages of this thread?
Hope I helped =)!
Edit: well now i've finally got around to running this bot. I tried ashmans version, but it isn't adding to bonfire, it just keeps making a new fire, but doing them extremely slow o.o. I'll be trying sins version in a second. I sure hope it helps, so that I'll be able to bot something while I sleep :) , (since i only babysit waterfiends, and they are bannable)
Sin's version is working great for me. Ashmans would like hover over the "add to bonfire" but then just go and light the figher after a sec, and so it had to do the "lighting fire" animation every time, making it slow (where as with sins, you light so fast inbetween, you just step off the fire over and over as you make them). Oh well, i'm happy :)! Can't wait to wake up and see how far I've got x)
jkj1991
2012-06-29 07:02:37
From: Harry
I hacked up bonfire support in this because I am much too lazy to write my own. I removed a lot of stuff I didn't like as well, and made everything a bit more safe.
Reply if you want me to remove this. I'd normally post just the parts I changed, but I changed a lot in it so I don't know what exactly I did. Don't think you'll care since you can't update it at the moment anyways. Works pretty stable and gives me ~150k exp/hr doing maple logs.
I greatly appreciate the script you hacked and it works wonders, Only issue I see is that it doesn't pay the butler and kind of just sits there, I have looked into it and don't see why cause it clearly states that the function to pay him is there maybe it's a problem on my end… Anyways PM me if you can help me out in any way thanks Harry much love - jj
dunn348
2012-07-08 13:21:25
=====================v1.8======================
==================S1NFiremaker=================
Time Running: 5 Hours, 21 Minutes and 58 Seconds
XP Earned: 0
XP Per Hour: 0
Logs Burned: 2939
Burned Per Hour: 547
===============================================
===============================================
Just a proggy great script man:garfield:
Luke L
2012-07-08 15:36:59
From: dunn348
=====================v1.8======================
==================S1NFiremaker=================
Time Running: 5 Hours, 21 Minutes and 58 Seconds
XP Earned: 0
XP Per Hour: 0
Logs Burned: 2939
Burned Per Hour: 547
===============================================
===============================================
Just a proggy great script man:garfield:
Nice luckyyy :). Idk how you guys get those profiles, I get at most 2 hours, but usually it breaks in less than an hour.
lolskilla
2012-08-31 20:51:01
ash; your verssion makes them in a line, doesnt do bonfires :(
harrys version is working but for some reson it adds logs by right clicking the logs instead of just adding logs and waiting. it tries to readd maybe every4 logs. doesnt touch the fire elemntals either