SRL Archive - Outdated / Broken

[ BETA ! ] RM Guild Miner !


Sir R. M8gic1an

2009-12-16 11:04:28

RM Guild Miner


Last Updated Thread: 7th May 2010


Important:
  • Progress reports from version v0.643 - v0.71 all show to be version v.0643; Fixed in v0.71b
  • Version V0.65 is the first version to support unwielded pick. INV SLOT #1 ONLY!
  • Versions below V0.65 have a possible infinite loop in the mainloop. Strongly advise switching to V0.65
  • All users of version V0.64 or lower, go to the line

  • while (SCount = InvCount) do
    begin
    //and add
    RMRandoms;
  • Script Blog - No longer in use
Features
  • Coal Mining
  • Mithril Mining
  • Gem Banking
  • Unwielded Pickaxe
  • Multiplayer
  • AntiRandoms


Future Plans
  • Avoid rocks with animation - Change of Mind, 7th May 2010
  • Magic mining
  • Detecting where players are far from rocks
  • Avoid clicking black guild
  • WhileMining
  • RockGone -Development stage from v0.7 +


From: will6100

[php]
[===================================================]
[ RM Guild Miner 0.6 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 12 Hours, 51 Minutes And 1 Seconds ]
[ Total Loads : 80 ]
[===================================================]
[ RM Guild Miner 0.6 ]
[===================================================]
[====================]
[ bad ]
[ Active : True ]
[ Worked : 54m 43s ]
[ Banked : 79 ]
[ Level : 0 ]
[====================]
[/php]
worked good, stopped cause was in random



From: Bensonn

[php]

[================================================== ==]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[================================================== ==]
[ Time Running : 11 Hours, 47 Minutes And 31 Seconds ]
[ Total Loads : 43 ]
[================================================== ==]
[ RM Guild Miner 0.643 ]
[================================================== ==]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ kind | True | 00:17:18 | 43 | 74 ]
[===========================================]
[/php]

From: RM

[php]
[====================================================]
[ RM Guild Miner 0.63 ]
[ by Rasta Magician ]
[====================================================]
[ Time Running : 10 Hours, 55 Minutes And 16 Seconds ]
[ Total Loads : 62 ]
[====================================================]
[ RM Guild Miner 0.63 ]
[====================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ icia | True | 11:27:57 | 61 | 77 ]
[===========================================]
[/php]




[php]
V0.1 - RM Guild Miner.scar (16.7 KB, 99 views)
V0.2 - RM Guild Miner.scar (22.3 KB, 7 views)
V0.21 - RM Guild Miner.scar (22.5 KB, 14 views)
V0.35 - RM Guild Miner.scar (25.2 KB, 10 views)
V0.4 - RM Guild Miner.scar (26.7 KB, 3 views)
V0.41 - RM Guild Miner.scar (26.7 KB, 43 views)
V0.49 - RM Guild Miner.scar (31.9 KB, 13 views)
V0.491 - RM Guild Miner.scar (32.3 KB, 41 views)
V0.499 - RM Guild Miner.scar (32.6 KB, 14 views)
V0.52 - RM Guild Miner.scar (34.7 KB, 6 views)
V0.55 - RM Guild Miner.scar (40.6 KB, 29 views)
V0.63 - RM Guild Miner.scar (44.2 KB, 8 views)
V0.64 - RM Guild Miner.scar (45.3 KB, 14 views)
V0.643 - RM Guild Miner.scar (45.6 KB, 8 views)
V0.651 - RM Guild Miner.scar (48.7 KB, 6 views)
V0.652 - RM Guild Miner.scar (48.7 KB, 30 views)
V0.71 - RM Guild Miner.scar (54.6 KB, 4 views)
[/php]


Enjoy, all tips, ideas, remarks are welcome :)

~RM

YoHoJo

2009-12-16 11:12:30

First :ninja:
Will edit with a non-spam post later! :p

Dervish

2009-12-16 11:38:33

Won't run long without multiplayer, still up to testing it though ;).

Sir R. M8gic1an

2009-12-16 12:05:11

From: Dr D. Dervish
Won't run long without multiplayer, still up to testing it though ;).


It does however include sleeping, so I expected i'll be able to at least run for a few hours ;)

~RM

Home

2009-12-16 13:07:58

From: Rasta Magician
It does however include sleeping, so I expected i'll be able to at least run for a few hours ;)

~RM


Hey RM, for upText issue, try countcolortolerance, i always use it :) ;)


(Works great)


~Home

Bionicle

2009-12-16 16:00:47

Woo finally! Been waiting a while for this, and it better be good, cause I'm testing it on my main cause I don't have any other 60+ mining accs :p.

Will edit proggy later.

Gu3st...

2009-12-16 17:37:09

Hey RM, please promise me / us that after the beta, when 1.0 is released, you make one awesome thread with pictures and all? :)
I love those..

Powerleveling my mining right now.. :D

Rick

2009-12-16 19:16:33

I'm excited. Will definitely test this :)

YoHoJo

2009-12-16 20:28:31

Walks to ladders, moves mouse around (stairs, ground, barrel). It sometimes puts mouse int he 'square' in the middle of all of the ladders, but I guess (like you said) it cant read the uptext, do it doesn't go down the ladder :(.
Edit: Hmm, I think its just scar. All uptexts are broken again or something?

Uptext: 
Uptext:
Uptext:
Uptext:

Also, RM, why dont I see any IsUpTexts or any UpText finders in this wat?
I also Searched for just 'UpText" like the debug outputs, and couldn't even find that, am I going crazy?

Blumblebee

2009-12-16 20:51:52

From: YoHoJo
Walks to ladders, moves mouse around (stairs, ground, barrel). It sometimes puts mouse int he 'square' in the middle of all of the ladders, but I guess (like you said) it cant read the uptext, do it doesn't go down the ladder :(.
Edit: Hmm, I think its just scar. All uptexts are broken again or something?

Uptext: 
Uptext:
Uptext:
Uptext:

Also, RM, why dont I see any IsUpTexts or any UpText finders in this wat?
I also Searched for just 'UpText" like the debug outputs, and couldn't even find that, am I going crazy?


I would assume its in Smart colors ;)

YoHoJo

2009-12-16 20:53:58

Thanks bLumblebee.
Line 431 Procedure SetupColors;
I found the smartcolor lines/procedure, I guess uptext is broken again then.

Daniel

2009-12-16 21:07:55

From: YoHoJo
Edit: Hmm, I think its just scar. All uptexts are broken again or something?


http://villavu.com/forum/showthread.php?t=53514
;)

YoHoJo

2009-12-16 21:10:30

Thread is just saying all 0s changed (and afaik they have been fixed arlady)? But not that all(or some) other letters have apparently also changed too?

Nava2

2009-12-17 00:29:46

First page, spam post.

Alek000

2009-12-17 00:53:04

From: Nava2
First page, spam post.


Well, at least you admit it lol.
I'm going to try this out when I get a character that's not my main into the mining guild. Should be within a couple of days since I don't run 24/7.

tompa55

2009-12-17 03:11:35

I have the same problem. I cant go down the ladder. And when im down(pressed down myself) It goes to the rocks, and just circulate kinda. It goes to every stone, but never klicks..

tico2

2009-12-17 09:47:17

Nice release :) I got my SCAR working again but I'm also having same problems as everyone here.

FEAR

2009-12-17 11:19:56

Saw a small problem

Keeps going north (where the door is leading to dwarven mine) when it can't find coals. There are only two coals there. And it tries to mine coals which are beyond the guild (in the dwarven mine)

Hope you fix this soon. Its been a long time since we got a working guild miner :)

Sir R. M8gic1an

2009-12-17 11:26:38

From: FEAR
This still needs a lot of work.


Indeed it does, which is why it's v0.1 ;)

~RM

YoHoJo

2009-12-17 14:17:06

From: FEAR
Saw a lot of problems

- First it takes more than 5 minutes to find the ladder. Cursor goes all over the place, many times goes on the ladder yet it doesn't click. Very bot like.

- When it finally goes to mine always clicks north towards the door to the dwarven guild. There are only two coals there. After mining them clicks on the torches! Very detectable and bot like.

- Hovers lot over everything black, clicks on a coal after a long time.

- Keeps going north when it can't fine coals and does what I wrote in the first part.

This still needs a lot of work. Hope you fix this soon. Its been a long time since we got a working guild miner :)

From: tompa55
I have the same problem. I cant go down the ladder. And when im down(pressed down myself) It goes to the rocks, and just circulate kinda. It goes to every stone, but never klicks..




IDIOTS -.- Uptext is BROKEN! Therefore it cant read the 'Climb Down Ladder" or "Mine Rock" uptexts, gotta wait for Freddy to fix them!

code841

2009-12-17 14:25:49

From: Rasta Magician
Albeit all this, the script has gt me from lvl 1 - 70, no ban, one char in just about a week, running it every now and then :)

Ummm, HOW? Mining guild requires level 60 mining to enter?

Sir R. M8gic1an

2009-12-17 14:58:26

From: code841
Ummm, HOW? Mining guild requires level 60 mining to enter?


I used it as a power miner first ;)

~RM

I Rambozo I

2009-12-18 03:28:00

Awesoooooome!!

FEAR

2009-12-18 14:16:20

Uh damn! Sorry RM. I didn't know the fonts changed when I wrote my previous post. There is nothing wrong with your script. I feel bad for ruining your first page now :/ I will edit the post and just list the one little problem which has nothing to do with uptexts.

Sir R. M8gic1an

2009-12-18 14:20:48

From: FEAR
Uh damn! Sorry RM. I didn't know the fonts changed when I wrote my previous post. There is nothing wrong with your script. I feel bad for ruining your first page now :/ I will edit the post and just list the one little problem which has nothing to do with uptexts.


Lol, no worries, it's an alpha release, it's way too premature to actually e considered a script ;)

~RM

Simtoon

2009-12-19 20:18:46

725 lines :)

marpis

2009-12-22 21:09:47

avoid rocks with animation

As soon as I read that I was looking forward to seeing Animation.SCAR in use, but I got let down :(
E: Ah, future plans…

Great job, will be testing some day soon.

E: Ok I tried it but couldn't get it work very well because of uptext failure :-\

Town

2009-12-29 20:23:27

Project on pause? Future plans?

Sir R. M8gic1an

2009-12-30 07:55:52

From: Town
Project on pause? Future plans?


The future plans are listed, how much work gets done just depends on my mood, time and inspiration :p

I pretty much did the hardest part that I wanted to do already, which was developing SmartColors. In the future I'll probably develop an AI auto-responder, or at least re-write my old one to fit the new functions in SRL.

~RM

Gu3st...

2009-12-30 08:10:56

From: Rasta Magician
The future plans are listed, how much work gets done just depends on my mood, time and inspiration :p

I pretty much did the hardest part that I wanted to do already, which was developing SmartColors. In the future I'll probably develop an AI auto-responder, or at least re-write my old one to fit the new functions in SRL.

~RM
I have always wanted an AI auto responder in srl (!), but I haven't figured out a way to make one… How do you do it? You would have to analyze the responds and everything…
Sounds like a hella work to me :P

Good luck :)

payton

2010-01-01 12:31:41

what combat level do you guys think an account should be before mining at the guild? i have 2 accounts with 60+ mining but around 20 combat, and think to many people would report me just because of my low level.

Gu3st...

2010-01-01 17:44:15

From: payton
what combat level do you guys think an account should be before mining at the guild? i have 2 accounts with 60+ mining but around 20 combat, and think to many people would report me just because of my low level.
I would level them to 50+ atleast

marpis

2010-01-01 18:09:18

From: payton
what combat level do you guys think an account should be before mining at the guild? i have 2 accounts with 60+ mining but around 20 combat, and think to many people would report me just because of my low level.


From: Zyt3x
I would level them to 50+ atleast


Many people have lvl3 "skillers"?

Gu3st...

2010-01-02 10:14:54

From: marpis
Many people have lvl3 "skillers"?
They usually talk if someone talks to them/following them, this script won't, so it's not recommended.

Town

2010-01-05 17:25:41

I watched the first load and this looks great. I can say that it walked to the fountain rather than the bank two or three times before finally reaching the bank. The failsafes worked perfectly as it walked back to the ladder after the mistake each time. I'll let you know how long it runs. Is there any particular debug text you want?

[Runtime Error] : Out Of Range in line 253 in script- Walked too far North and couldn't find whatever it was looking for.

If you set the length of TIA to t then TIA[t] is out of range, correct?

in check chat
In Guild? True
Black Points: 10028
In Guild? True
Black Points: 10028
getting out of guild
walking out of guild
x axis: 0
y axis: 0
x axis: 12
y axis: 2
x axis: 11
y axis: 5
x axis: 10
y axis: 4
x axis: 10
y axis: 5
x axis: 10
y axis: 8
x axis: 2
y axis: 1
x axis: 10
y axis: 7
x axis: 10
y axis: 10
x axis: 10
y axis: 11
x axis: 6
y axis: 7
x axis: 10
y axis: 18
x axis: 3
y axis: 18
x axis: 0
y axis: 4
x axis: 1
y axis: 1
x axis: 10
y axis: 20
x axis: 1
y axis: 3
Blind Click
x axis: 0
y axis: 0
x axis: 12
y axis: 2
x axis: 11
y axis: 5
x axis: 10
y axis: 4
x axis: 10
y axis: 5
x axis: 10
y axis: 8
x axis: 2
y axis: 1
x axis: 10
y axis: 7
x axis: 10
y axis: 10
x axis: 10
y axis: 11
x axis: 6
y axis: 7
x axis: 10
y axis: 18
x axis: 13
y axis: 20
x axis: 9
y axis: 11
x axis: 1
y axis: 1
x axis: 2
y axis: 13
x axis: 10
y axis: 20
x axis: 1
y axis: 3
Blind Click
x axis: 0
y axis: 0
x axis: 12
y axis: 2
x axis: 11
y axis: 5
x axis: 10
y axis: 4
x axis: 10
y axis: 5
x axis: 10
y axis: 8
x axis: 2
y axis: 1
x axis: 10
y axis: 7
x axis: 10
y axis: 10
x axis: 10
y axis: 11
x axis: 6
y axis: 7
x axis: 10
y axis: 18
x axis: 13
y axis: 20
x axis: 9
y axis: 11
x axis: 1
y axis: 1
x axis: 2
y axis: 13
x axis: 10
y axis: 20
x axis: 1
y axis: 3
Blind Click
In Guild? True
Black Points: 11826
In Guild? True

Repeats, etc. Stuck farthest west of the mine.

marpis

2010-01-06 08:28:20

From: Town

[Runtime Error] : Out Of Range in line 253


Got that too, fixed it like this

Try
for i:= 0 to t do
begin
h := TIA[i];
if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then
begin
Where := MiddleTPA(TPA);
Result := true;
exit;
end;
end;
Except
WriteLn('*** ALMOST RUNTIME ERROR AGAIN :O ***');
End;

Seems to be running great :)
E: Ok the walking isn't that great after all. It starts searching for bank while still walking and it doesn't find the bank in MM

Sir R. M8gic1an

2010-01-06 09:36:02

Seems like it isn't properly getting the ladder color anymore.

I think i might get some more work done on this soon :)

~RM

NiCbaZ

2010-02-08 04:04:41

Hey just tested this quickly, it walked into the main part of the mine - opened the door and everything, sorta stuffed it up a bit :P

nikos

2010-02-14 20:36:11

Ran it for a bit. Works fine after I got the annoying smart flashing issue fixed. I'll post how long it ran for later/test it more.

Edit: ok i did get a runtime error
[Runtime Error] : Out Of Range in line 253 in script C:\Users\Nikos\Desktop\FT-86\V0.1 - RM Guild Miner.scar

Well see if i can fix that.

grats

2010-02-15 02:41:52

Is this going to be updated at all going to test it out

Sir R. M8gic1an

2010-02-15 06:49:13

From: dxzgxz
Is this going to be updated at all going to test it out


Not anytime soon.

~RM

Mrbanana

2010-02-16 01:04:14

From: Rasta Magician
Not anytime soon.

~RM



Bugger, Got a toon up to 60 Mining because i wanted to try this out.. D:

Ohwell back to TF2. =3

EDIT: NVM lol i thought it didnt work but i just updated some files and it works. :D
Also, could there be an option to mine the mith there?

Thx for this script when i get a good proggy i will post.

RAM

2010-02-20 16:57:13

After tweaking Marpis's fix a little and adding multiplayer switching after banking, this runs pretty good…a few issues with ladder finding and restarting while logged in…I'm going to mess around with Mith mining a little, unless you have already ?


From: marpis
Got that too, fixed it like this
Code:
[LEFT][LEFT]
for i:= 0 to t do
begin
h := TIA;
if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then
begin
Where := MiddleTPA(TPA);
Result := true;
exit;
end;
end;
end;
[/LEFT]

for i:= 0 to t do
begin
h := TIA;
if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then
begin
Where := MiddleTPA(TPA);
Result := true;
exit;
end;
end;

End;
[/LEFT]



Edit: Still getting an error after 20 minutes… if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then

Edit of an Edit: I smell a ban coming on :(…felt confident enough to leave it while I went to dinner…and a few drinks…not sure how long it was stuck…but I have 3 hours worth of
Black Points: 14709
In Guild? True
Black Points: 14709
In Guild? True
Black Points: 14709
In Guild? True
Black Points: 14709
In Guild? True
Black Points: 14709
..stuck in the guild next to the ladder clicking to the west….



Edit: This seems to be working better…no more getting stuck, but has trouble finding the ladder…

for i:= 0 to t do
begin
h := TIA[i];
if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then
begin
Where := MiddleTPA(TPA);
Result := true;
exit;
end
else writeln('Color not found ?');
exit;
end;
end;

Sir R. M8gic1an

2010-02-23 05:08:22

Can you paste the actual error?

-RM

grats

2010-02-23 09:36:33

Seems to be working great except for the ladder thing as people have been saying and.. it gets a runtime error when no ores are on the screen and it can't find any.

out of range Line 253 then path to your script

edit: "ladder thing" is the locating problem everyone else was talking about just in case ^.-

RAM

2010-02-23 18:37:31

From: RAM
[Runtime Error] : Out Of Range in line 253 if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then





This seems to be working better…no more getting stuck, but has trouble finding the ladder…

for i:= 0 to t do
begin
h := TIA[i];
if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then
begin
Where := MiddleTPA(TPA);
Result := true;
exit;
end
else writeln('Color not found ?'); //RAM
exit;
end;
end;


Take a look at the copy I sent you ? (Mith mining works as well)

nikos

2010-02-23 20:05:48

not sure if the ladder finding is any better with the new code because the character seems to get stuck in the north part of the guild and does not go toward the mining symbol at all when bag is full.

grats

2010-02-23 20:30:51

From: nikos
not sure if the ladder finding is any better with the new code because the character seems to get stuck in the north part of the guild and does not go toward the mining symbol at all when bag is full.


Yeah I got the code fixed other than that part, it goes toward the other mining symbol which is up north instead of the one down in the guild lol

RAM

2010-02-23 21:55:31

Is that with using what I posted ? because that's what I'm getting with it to…

grats

2010-02-24 01:11:52

From: RAM
Is that with using what I posted ? because that's what I'm getting with it to…


Is that to me or to someone else? I updated colors by myself with the color picker and it worked pretty well.

RAM

2010-02-24 02:02:22

From: gratz
Is that to me or to someone else? I updated colors by myself with the color picker and it worked pretty well.


Sorry, yes…No run time errors then ?, can you please provide the numbers of the colors and the functions you updated ?

Mr. Doctor

2010-02-24 02:10:05

Currently running. One thing is that it may get stuck. This happens at the metal gate in the mine that leads to the noobier side (Scorpions). It keeps checking the lantern, 2 rocks and the the walls. Doesn't walk to back to the mining symbol. Other than that, works perfectly fine for a beta version. Looking forward to the next release.

Edit: This ^
And when it climbs the ladder up to the surface to walk to the bank, it gets a runtime error.

[Runtime Error] : Out Of Range in line 253 in script

Line,


if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then

grats

2010-02-24 04:09:29

From: RAM
Sorry, yes…No run time errors then ?, can you please provide the numbers of the colors and the functions you updated ?


Yep give me a few mins to figure out which virtual machine it was on :P

also I did have a runtime error after like 3 loads it went up the stairs and got one =[ I will run it right now to test it further I really didn't give it good testing.

line 446

MakeObjEx(LADDER_INSIDE, 4674652, 5, 0.13, 1.55, ['limb', 'up', 'adder'], ['limb']);

I think that is it sorry I'm not really that great of a coder =/


edit:
ok I have 1 load completed it took a while to find the ladder but it found it after like 20 seconds…

edit2:
@ guy above me junkj I got his same error but while mining.

edit3: I just read the other page going to try this:
(from RAM)

for i:= 0 to t do
begin
h := TIA[i];
if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then
begin
Where := MiddleTPA(TPA);
Result := true;
exit;
end
else writeln('Color not found ?');
exit;
end;
end;

along with my colors for the ladder






edit4: most important one
IT WORKS!! but there is a new problem, it will skip and walk past the bank if it doesn't get there in a certain amount of time (which it doesn't cuz it doesn't turn on run…)
how do we make it turn on run?

Sir R. M8gic1an

2010-02-24 08:21:21

From: gratz
Yep give me a few mins to figure out which virtual machine it was on :P

also I did have a runtime error after like 3 loads it went up the stairs and got one =[ I will run it right now to test it further I really didn't give it good testing.

line 446

MakeObjEx(LADDER_INSIDE, 4674652, 5, 0.13, 1.55, ['limb', 'up', 'adder'], ['limb']);

I think that is it sorry I'm not really that great of a coder =/


edit:
ok I have 1 load completed it took a while to find the ladder but it found it after like 20 seconds…

edit2:
@ guy above me junkj I got his same error but while mining.

edit3: I just read the other page going to try this:
(from RAM)

for i:= 0 to t do
begin
h := TIA[i];
if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then
begin
Where := MiddleTPA(TPA);
Result := true;
exit;
end
else writeln('Color not found ?');
exit;
end;
end;

along with my colors for the ladder






edit4: most important one
IT WORKS!! but there is a new problem, it will skip and walk past the bank if it doesn't get there in a certain amount of time (which it doesn't cuz it doesn't turn on run…)
how do we make it turn on run?


Btw, which scar version are you guys using? Cus my 3.22 doesn't read the uptext properly… I'm considering fixing this, but without that I can't realydo much :S

~RM

grats

2010-02-24 08:38:10

From: Rasta Magician
Btw, which scar version are you guys using? Cus my 3.22 doesn't read the uptext properly… I'm considering fixing this, but without that I can't realydo much :S

~RM


Oh there is a new one

lets see if I got this right you make a new folder and you checkout from here:

http://freddy1990.com/svn/scarprerelease
then that is scar 3.23 beta but this is what all the scripts use now
make sure your old scar is installed because it looks for the bass.dll 's

Sir R. M8gic1an

2010-02-24 08:40:38

Cheers :)

~RM

Sir R. M8gic1an

2010-02-24 09:00:23


for i:= 0 to t-1 do // t - 1 and it should work
begin
h := TIA[i];
if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then
begin
Where := MiddleTPA(TPA);
Result := true;
exit;
end;
end;

~RM

grats

2010-02-24 09:49:10

From: Rasta Magician

for i:= 0 to t-1 do // t - 1 and it should work
begin
h := TIA[i];
if FindColorsTolerance(TPA, UniqueColor, TBArr[h].x1, TBArr[h].y1, TBArr[h].x2, TBArr[h].y2, UniqueTol) then
begin
Where := MiddleTPA(TPA);
Result := true;
exit;
end;
end;

~RM


Yes it's working well now in the "finds ores / finds bank / ladders" scene

things it still has trouble with, it will go up north to the gate and get stuck because it tries to go to the mining symbol up there.

it also sometimes clicks torches on the wall but mostly just mouses over them non stop when it doesn't see any ores


I wouldn't leave this script alone for more than 5 minutes :P


edit: I am using my ladder color that I got which was posted above, it is working well

it still gets a problem where it spam clicks to the west in the cave and never looks for the ladder, and it spam clicks north when walking to the bank and just keeps going lol

Sir R. M8gic1an

2010-02-24 11:17:10

From: gratz
Yes it's working well now in the "finds ores / finds bank / ladders" scene

things it still has trouble with, it will go up north to the gate and get stuck because it tries to go to the mining symbol up there.

it also sometimes clicks torches on the wall but mostly just mouses over them non stop when it doesn't see any ores


I wouldn't leave this script alone for more than 5 minutes :P


edit: I am using my ladder color that I got which was posted above, it is working well

it still gets a problem where it spam clicks to the west in the cave and never looks for the ladder, and it spam clicks north when walking to the bank and just keeps going lol


Heh, I'm testing and updating as well :p Do notice this is an alpha version, not even I leave it alone for too long ;)

Right now the whole script structure was improved,
no more out of range errors,
It is not getting stuck as often, but still stuck sometimes,
It may confuse the mining symbol with the ladder,
And it doesn't detect when rocks are gone, but then again, it doesn't even try to:p

Uploaded V0.2 ; No huge changes to effectiveness except for getting stuck a lil less often. It's mostly uploaded in case people want to look at how it is being develped :)

edit: Remember to update your SRL.

~RM

RAM

2010-02-24 12:20:10

Thanks, On It, Like Stink on Poo :p

E."H".

Sir R. M8gic1an

2010-02-24 12:48:43

From: RAM
Thanks, On It, Like Stink on Poo :p

E."H".


If by H you mean the duplicate identifier, I noticed it as well and uploaded a non duplicate version :p

~RM

grats

2010-02-24 17:56:52

From: Rasta Magician
Heh, I'm testing and updating as well :p Do notice this is an alpha version, not even I leave it alone for too long ;)

Right now the whole script structure was improved,
no more out of range errors,
It is not getting stuck as often, but still stuck sometimes,
It may confuse the mining symbol with the ladder,
And it doesn't detect when rocks are gone, but then again, it doesn't even try to:p

Uploaded V0.2 ; No huge changes to effectiveness except for getting stuck a lil less often. It's mostly uploaded in case people want to look at how it is being develped :)

edit: Remember to update your SRL.

~RM


=] I got work pretty soon but I will maybe/probably be able to test it there… do you mean a new SRL version came out?


edit:
It's finding ladders a lot better with the update
one thing that's a problem is when someone takes the ore before you it will sit mining till it's done swinging then it waits a while to find another ore.

edit2:

also run is kind of funky can it turn on during inside of the cave.

one of the big problems I see is when it goes to the mine or goes to the bank while it's outside it doesn't click the minimap in the correct place, it clicks it half way in the middle…

when it goes to the bank:

it first clicks where I put "1" and so on.. (sometimes like 75% of the time)
it continues to keep going up and up forever lol


This is when it's going to the mine:
It goes half way and then eventually it gets down to the mine… but the upper picture never gets to the bank :P


also keep in mind this NEVER happens the first load, never. The "to the mine" half clicks every time after the first load, meaning when you first start the script it goes to the mine perfectly but after that it only walks half way.
The "to the bank" one, however, does it randomly.. usually 50/50 chance of doing it after the first load.

Sir R. M8gic1an

2010-02-24 21:44:11


1. SRL Version
2. Ore Gone
3. To Bank
4. To Mine


1. Yes, if you are using the developers revision.
2. I know, this is not a fault in the script tho. I just haven't got around to coding that bit :p
3. Might be a problem with the symbol…
4. Don't really know. Might be some setting that I changed around today. Will have to investigate.

Cheers for the feedback :)

~RM

Sir R. M8gic1an

2010-02-24 22:43:07

Woah. The problem is with one of the settings I changed, and it is now totally unsafe to leave on it's own. I just found my character in the Wine of Zammy spot. That's quite far away.

~RM

Mr. Doctor

2010-02-24 23:15:52

Mine was also in the wine of zammy place. That's kinda awkward.
(I wasn't watching. Banked it's first load fine, then I was like "Nothing wrong". Chatted on the IRC, browsed the forums and poof, Wine of zammy place. There was someone in their too >.<)

RAM

2010-02-25 00:29:02

I 3 returned to find it in The Zammy place…..

grats

2010-02-25 01:35:39

Yeah it's very strange this is what I talked about in my post, it appears to work very well the first time is almost guaranteed to work good… but then for some reason it starts to keep running upward O_O

RAM

2010-02-25 13:06:08

From: gratz
Yeah it's very strange this is what I talked about in my post, it appears to work very well the first time is almost guaranteed to work good… but then for some reason it starts to keep running upward O_O


Sometimes it goes south as well….:(

grats

2010-02-25 13:23:00

From: RAM
Sometimes it goes south as well….:(


:O I haven't seen one of those yet ;P I'll have to try that more is it looking for the bank symbol and the mine symbols or is it going by position?

I can't read script I r weetard

Sir R. M8gic1an

2010-02-25 15:02:56

Ok guys, I just realized why it's doing that. And gave it a small fix. Should work well enough now :) Check first post.

~RM

RAM

2010-02-26 01:07:19

So far, So Good :)..

I know it's just in the testing stages, but don't forget those fail-safes..like when it accidentally lags out and gets stuck in a mining loop ;)

grats

2010-02-26 01:15:08

From: RAM
So far, So Good :)..

I know it's just in the testing stages, but don't forget those fail-safes..like when it accidentally lags out and gets stuck in a mining loop ;)


Yep same for me "so far so good"

done 2 loads so far it's picking new ores a lot faster when one is already mined and it is getting ladders a lot faster too which is great! I'll update with progress when it stops or I stop it :P


well mine just had the keeps walking up error again ~.~


Ok here's exactly what it's doing

It gets out of the mine cave clicks under the bank then it quickly turns run OFF
it then takes a while before it gets to its destination it clicks north again and turns run on.. then it keeps going north


Blind Click
In Guild? True
Black Points: 9728
In Guild? True
Black Points: 9728
x axis: 4
y axis: 2
x axis: 20
y axis: 5
x axis: 10
y axis: 0
x axis: 10
y axis: 1
x axis: 10
y axis: 4
x axis: 10
y axis: 6
x axis: 12
y axis: 8
x axis: 10
y axis: 10
x axis: 8
y axis: 20
x axis: 10
y axis: 10
x axis: 10
y axis: 13
x axis: 10
y axis: 15
x axis: 10
y axis: 20
x axis: 17
y axis: 20
x axis: 4
y axis: 19
x axis: 12
y axis: 20
x axis: 10
y axis: 13
Clicked MM ladder
looking for ladder
SC Array: 7
Using Tol: 0
Search for: 3818827
Found total: 69
Found with color number: 0
In Guild? True
Black Points: 13958
In Guild? True
Black Points: 13958
In Guild? False
Black Points: 162
out of guild
In Guild? False
Black Points: 162
getting to bank
walking to 0
Unable to Symbol Walk
Walked: False
banking
SC Array: 5
Using Tol: 0
Search for: 4942983
Found total: 65
Search for: 4284022
Found total: 277
Search for: 4811139
Found total: 0
Search for: 4679295
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 4942983
Found total: 1376
Search for: 4284022
Found total: 791
Search for: 4811139
Found total: 18
Search for: 4679295
Found total: 0
Search for: 0
Found total: 8
In Guild? False
Black Points: 171
getting to bank
walking to 0
Unable to Symbol Walk
Walked: False
banking
SC Array: 5
Using Tol: 0
Search for: 4942983
Found total: 0
Search for: 4284022
Found total: 0
Search for: 4811139
Found total: 0
Search for: 4679295
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 4942983
Found total: 0
Search for: 4284022
Found total: 7
Search for: 4811139
Found total: 4
Search for: 4679295
Found total: 1
Search for: 0
Found total: 24
In Guild? False
Black Points: 224
getting to bank
walking to 0
Unable to Symbol Walk
Walked: False
banking
SC Array: 5
Using Tol: 0
Search for: 4942983
Found total: 48
Search for: 4284022
Found total: 32
Search for: 4811139
Found total: 136
Search for: 4679295
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 4942983
Found total: 3
Search for: 4284022
Found total: 22
Search for: 4811139
Found total: 3
Search for: 4679295
Found total: 2
Search for: 0
Found total: 0
In Guild? False
Black Points: 200
getting to bank
walking to 0
Unable to Symbol Walk
Walked: False
banking
SC Array: 5
Using Tol: 0
Search for: 4942983
Found total: 0
Search for: 4284022
Found total: 0
Search for: 4811139
Found total: 0
Search for: 4679295
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 4942983
Found total: 0
Search for: 4284022
Found total: 6
Search for: 4811139
Found total: 2
Search for: 4679295
Found total: 2
Search for: 0
Found total: 0
In Guild? False
Black Points: 153
getting to bank
walking to 0
Unable to Symbol Walk
Walked: False
banking
SC Array: 5
Using Tol: 0
Search for: 4942983
Found total: 0
Search for: 4284022
Found total: 0
Search for: 4811139
Found total: 1
Search for: 4679295
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 4942983
Found total: 2
Search for: 4284022
Found total: 6
Search for: 4811139
Found total: 2
Search for: 4679295
Found total: 2
Search for: 0
Found total: 0
In Guild? False
Black Points: 153
getting to bank
walking to 0
Successfully executed
manually executed

RAM

2010-02-26 01:45:18

From: gratz
Yep same for me "so far so good"

done 2 loads so far it's picking new ores a lot faster when one is already mined and it is getting ladders a lot faster too which is great! I'll update with progress when it stops or I stop it :P


well mine just had the keeps walking up error again ~.~


and mine just had the to the south :p

grats

2010-02-26 01:50:27

From: RAM
and mine just had the to the south :p


:thumbsdown:

I see in the debug it says that it can't find the symbol but I saw the symbol fine on the minimap when it came out :duh:

Sir R. M8gic1an

2010-02-26 09:03:10

ok ok, cheers for the feedback :)

A better symbol finding system is already in place, and I'll see how I can improve that loop.

~RM

grats

2010-02-26 09:18:46

From: Rasta Magician
ok ok, cheers for the feedback :)

A better symbol finding system is already in place, and I'll see how I can improve that loop.

~RM


I think maybe increasing the time between when it clicks what it thinks the bank location is… and when it retries might help, because it seems to walk up there most of the time (instead of run) and when it does that it is like "oh too slow I'm going to click north again" then it keeps going :P

edit: but I wouldn't really know I'm pretty noob at coding.

Sir R. M8gic1an

2010-02-26 18:57:46

Okay guys, huge improvements today.

The script is now safe to run, and stable enough to have a few nice loads.

The improved symbol finding is in place and works amazingly well,
Everything I could think of has been failsafed, therefore if anything goes wrong you'll return to find you're logged out rather than stuck in some random location,
and the looping is generally better.

Relocating inside of the guild is at it has been for a while (crappy but good enough to run).

I'm happy to say it just did 5 loads perfectly, then it got stuck inside the guild unable to find the way out and just logged out.

So yeah, it's safe to run, let me know if the walking screws up at any point, and keep on testing and giving tips :) Also, enjoy your coal :D

I'll now be working on relocating inside of the guild and then on rock detection. After that, the script will pretty much be a stable Beta, just missing nifty features.

~RM

RAM

2010-02-26 19:16:13

Sweet, THANKS ALOT !!!!! :)…checking it out now

grats

2010-02-26 20:03:02

From: RAM
Sweet, THANKS ALOT !!!!! :)…checking it out now


Me too I hope it is.. we got this so called double exp week coming up where I need to do 10 hours of smithing xD



ahhhhhhh!!!!! someone take his script down his user name + password are in there I don't know if it really is his account (not checking) but it looks real.. and someone might take it

HayHay89

2010-02-26 20:26:44

Very Nice Works Well with the New Versions but The Must wield Pickaxe is Bad… lol sinse my army of like 6 guys all 60+ Cant wield their pikaxe But i will use when Unwielded is working

stein3

2010-02-26 22:41:14

The script works ok, but I don't feel confident letting it run for more than a minute. The mouse moves too fast/jerky, and it jumps around looking for rocks too much and too fast.

grats

2010-02-26 22:46:50

From: nategr8ns
The script works ok, but I don't feel confident letting it run for more than a minute. The mouse moves too fast/jerky, and it jumps around looking for rocks too much and too fast.


Yes it's still alpha :P it gets ore from mine to your bank though.. which is nice! one thing I dislike about the update is smart freezes everytime it starts to swing at an ore now.. then it unfreezes when it gets the ore =[

it is working well though… the sleep works well too.

Sir R. M8gic1an

2010-02-27 05:49:55

From: nategr8ns
The script works ok, but I don't feel confident letting it run for more than a minute. The mouse moves too fast/jerky, and it jumps around looking for rocks too much and too fast.


I find this unlikely, if you could explain it better / post debug it'd be useful…

And the freezing I don't see why it'd to that as I didn't really change anything in the mining loop, but I can always add a wait in there to avoid lag :)

~RM

Mrbanana

2010-02-27 07:57:14

Hah Yeah i grabbed the V0.3 to try tonight… it is in there, might want to change your password hehe, was that the only reason for taking .3 down? =o

EDIT: Will post back with proggy =3

EDIT: Might want to change to Pick axe ? =o i went "wut" when i saw it haha

{ RM --------------------------------------------------------------------------]
[ Figures out the best axe to use ]
[------------------------------------------------------------------------------}

set up seemed a bit weird…. scrolling down to find the declare player bit ._.


EDIT: When executed.

Successfully compiled (9163 ms)
Line 750: [Hint] (23161:1): Variable 'CARRAY' never used in script C:\Documents and Settings\J***\Desktop\Scar\Scripts\V0.3 - RM Guild Miner.scar
Line 751: [Hint] (23162:1): Variable 'TBA' never used in script C:\Documents and Settings\J***\Desktop\Scar\Scripts\V0.3 - RM Guild Miner.scar
Line 752: [Hint] (23163:1): Variable 'TPA' never used in script C:\Documents and Settings\J***\Desktop\Scar\Scripts\V0.3 - RM Guild Miner.scar
Line 753: [Hint] (23164:1): Variable 'TP' never used in script C:\Documents and Settings\J***\Desktop\Scar\Scripts\V0.3 - RM Guild Miner.scar
Line 754: [Hint] (23165:1): Variable 'TB' never used in script C:\Documents and Settings\J***\Desktop\Scar\Scripts\V0.3 - RM Guild Miner.scar
SRL Compiled in 31 msec

Any ideas why i get this?

HayHay89

2010-02-27 08:09:44

yeh i was unsure if thay were real so i tried them but Was incorrect so I must of been to late if someone hacked it

Mrbanana

2010-02-27 08:20:59

right…….. well

Sometimes it find the mine but clicks it just as its been mined by someone else….

It would be nice if there was an option to mine mith if it ever sees it, as i want to get smithing up :P

EDIT: also thought of using the srl stats thingo?

EDIT: bank was full and had a diamond, so it just sat there trying to depo it, dano what ya could do there…. make it drop anything that didnt get deposited?

EDIT: the next load it couldnt bank, i dont think it could find the deposite all button.

Unable to find bank. Going false
sleeping

It didnt log out, it jsut sat with the bank window open, was it supposed to logout?

stein3

2010-02-27 09:17:52

From: Rasta Magician
I find this unlikely, if you could explain it better / post debug it'd be useful…

And the freezing I don't see why it'd to that as I didn't really change anything in the mining loop, but I can always add a wait in there to avoid lag :)

~RM

I don't see how I could quantify it with a proggy. I fixed it a little bit with MouseSpeed, but it was still really jerky.

It shoots the mouse to the rock really perfectly. Isn't mmouse supposed to include small anti-ban stuff? Like accidentally overshooting the point its going to sometimes, and not going in a perfectly straight line?
And since the torches on the wall are the same color as the rocks, it likes to just jump the mouse between two torches instead of looking for coal. What you should do is when it goes to the coal color, have it record the coordinates if uptext isn't 'ine rock' or whatever. That way it won't go back to the same torch a thousand times.

RAM

2010-02-27 10:18:35

To all the people frustrated…This is just in testing, SO DON'T EXPECT TO BE ABLE TO JUST HIT RUN AND WALK AWAY !!!!!

Overall seems a bit smoother…I restructured the main loop a bit, so it checked to see it's location when it logged in, as I had a few characters that were in the guild already…

The lag in the mining loop might be from the chat check ?

Edit: As far as the people requesting support for Mith mining, you should be happy you have a free coal miner, but if you look in the script, you only have to change a few lines to get it working ;)

Edit: It will run fine for quite a few trips…then climb down the ladder and…..
In Guild? True
Black points: 13307
Successfully executed


BOOM, Scar stops…..

Mrbanana

2010-02-27 11:45:49

Hey, im not frustrated.

Enjoy, all tips, ideas, remarks are welcome


I am just posting problems im getting and stuff that would be nice(ideas) =3

Thanks for teh script >.<

Sir R. M8gic1an

2010-02-27 12:13:55

MrBanana:

Just click DeclarePlayers on the function list ;) about "pickaxe" or "axe" I really don't believe you have any reason to worry.

Finally, those code hints are just hints. They do not affect the script. Don't worry about them.

for the next post…

Mith is not an option yet, because it is not a priority.

SRL Stats are also not a priority.

Gems should not be a problem. Make sure you are using the lastest Dev SRL.

@Nate:
Nice idea about avoiding the boxes.
I didn't mean a proggy. I meant the debug box. The script debugs itself letting know when you are at each step and what might've gone wrong.

@RAM:
I've got not clue as to why scar would just close, but i've also been getting a few 'false' falses, I'll have to look further into it.

~RM

RAM

2010-02-27 12:53:23

I'm leaning towards chat check for lag ?…..

This banks gems no problem, just make sure you have enough space in your bank inventory to collect all the different types…otherwise they will just accumulate in your players inventory ;)

stein3

2010-02-27 18:35:09

When its in the guild with a full inventory, it sometimes thinks its out of the guild when it hasn't gone up a ladder, and it clicks in the top left corner (in the black space) trying to find the bank.


Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 15
Search for: 2766391
Found total: 7
Found with color number: 1
Moving 2634804 up to spot 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2766391
Found total: 1
Search for: 2634804
Found total: 23
Found with color number: 1
Moving 2766391 up to spot 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 8
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 7
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 18
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 18
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 68
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 25
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 24
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 26
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 6
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 21
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 8
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 10
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 28
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 23
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 37
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 43
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 77
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 56
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 7
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 2
Search for: 2766391
Found total: 2
Search for: 2502961
Found total: 2
Search for: 2305582
Found total: 2
Search for: 0
Found total: 0
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 2
Search for: 2766391
Found total: 2
Search for: 2502961
Found total: 2
Search for: 2305582
Found total: 2
Search for: 0
Found total: 0
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 2
Search for: 2766391
Found total: 2
Search for: 2502961
Found total: 2
Search for: 2305582
Found total: 2
Search for: 0
Found total: 0
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 2
Search for: 2766391
Found total: 2
Search for: 2502961
Found total: 2
Search for: 2305582
Found total: 2
Search for: 0
Found total: 0
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 2
Search for: 2766391
Found total: 2
Search for: 2502961
Found total: 2
Search for: 2305582
Found total: 2
Search for: 0
Found total: 0
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 2
Search for: 2766391
Found total: 2
Search for: 2502961
Found total: 2
Search for: 2305582
Found total: 2
Search for: 0
Found total: 0
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 2
Search for: 2766391
Found total: 2
Search for: 2502961
Found total: 2
Search for: 2305582
Found total: 2
Search for: 0
Found total: 0
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 2
Search for: 2766391
Found total: 2
Search for: 2502961
Found total: 2
Search for: 2305582
Found total: 2
Search for: 0
Found total: 0
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 2
Search for: 2766391
Found total: 2
Search for: 2502961
Found total: 2
Search for: 2305582
Found total: 2
Search for: 0
Found total: 0
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 0
Search for: 2766391
Found total: 0
Search for: 2502961
Found total: 0
Search for: 2305582
Found total: 0
Search for: 0
Found total: 0
Using Tol: 10
Search for: 2634804
Found total: 3
Found with color number: 0
Analyse 2041896: 110
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 57
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 84
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 52
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 61
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 85
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 76
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 49
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 25
Found with color number: 0
in check chat
New: unidentified chat; @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 29
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 27
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 54
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 39
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 50
Found with color number: 0
in check chat
Loads: 1
SC Array: 5
Using Tol: 0
Search for: 2634804
Found total: 33
Found with color number: 0
in check chat
In Guild? True
Black Points: 9754
In Guild? True
Black Points: 9754
getting out of guild
walking to guild entrance
In Guild? True
Black Points: 9754
In Guild? True
Black Points: 9754
In Guild? True
Black Points: 9754
x axis: 4
y axis: 2
x axis: 20
y axis: 5
x axis: 10
y axis: 0
x axis: 10
y axis: 1
x axis: 10
y axis: 4
x axis: 10
y axis: 6
x axis: 12
y axis: 8
x axis: 10
y axis: 10
x axis: 8
y axis: 20
x axis: 10
y axis: 10
x axis: 10
y axis: 13
x axis: 10
y axis: 15
x axis: 10
y axis: 20
x axis: 10
y axis: 20
x axis: 4
y axis: 19
x axis: 4
y axis: 20
x axis: 3
y axis: 14
x axis: 4
y axis: 4
x axis: 0
y axis: 10
x axis: 10
y axis: 20
x axis: 4
y axis: 7
Blind Click
In Guild? False
Black Points: 151
In Guild? False
Black Points: 151
out of guild
Color Picked: 16777215 at (2675, 419)
In Guild? False
Black Points: 151
getting to bank
walking to 0
** Warning in FindSymbolThroughTPA: Could not find symbol**
** Warning in FindSymbolThroughTPA: Could not find symbol**
Unable to Symbol Walk
Walked: False
In Guild? False
Black Points: 151
getting to bank
walking to 0
** Warning in FindSymbolThroughTPA: Could not find symbol**
** Warning in FindSymbolThroughTPA: Could not find symbol**
Unable to Symbol Walk
Walked: False
In Guild? False
Black Points: 151
getting to bank
walking to 0
** Warning in FindSymbolThroughTPA: Could not find symbol**
** Warning in FindSymbolThroughTPA: Could not find symbol**
Unable to Symbol Walk
Walked: False
In Guild? False
Black Points: 151
getting to bank
walking to 0
** Warning in FindSymbolThroughTPA: Could not find symbol**
** Warning in FindSymbolThroughTPA: Could not find symbol**
Unable to Symbol Walk
Walked: False
In Guild? False
Black Points: 151
getting to bank
walking to 0
** Warning in FindSymbolThroughTPA: Could not find symbol**
** Warning in FindSymbolThroughTPA: Could not find symbol**
Unable to Symbol Walk
Walked: False
In Guild? False
Black Points: 151
getting to bank
walking to 0
** Warning in FindSymbolThroughTPA: Could not find symbol**
** Warning in FindSymbolThroughTPA: Could not find symbol**
Unable to Symbol Walk
Walked: False
In Guild? False
Black Points: 151
getting to bank
walking to 0
** Warning in FindSymbolThroughTPA: Could not find symbol**
** Warning in FindSymbolThroughTPA: Could not find symbol**
Unable to Symbol Walk
Walked: False
In Guild? False
Black Points: 151
getting to bank
walking to 0
** Warning in FindSymbolThroughTPA: Could not find symbol**
** Warning in FindSymbolThroughTPA: Could not find symbol**
Unable to Symbol Walk
Walked: False
In Guild? False
Black Points: 151
getting to bank
walking to 0
** Warning in FindSymbolThroughTPA: Could not find symbol**
Successfully executed

end of this proggy

grats

2010-02-27 18:42:13

From: RAM
I'm leaning towards chat check for lag ?…..

This banks gems no problem, just make sure you have enough space in your bank inventory to collect all the different types…otherwise they will just accumulate in your players inventory ;)


Yeah when debug box is chat checking it freezes smart for a good 5 seconds then it unfreezes and the ore pops in my bag… the same type of lag "Draynor Chop N' Bank [Oaks/Willows] by: Coh3n " gives me … it still works though only semi problem it has is sometimes when it walks up to the bank it's too high to see the bankers so it logs out, maybe change the script to click the bank symbol again if it can't find the bankers

@everyone else.. settle down a little this is still being tested :stirthepot:

stein3

2010-02-27 19:15:56

From: gratz
@everyone else.. settle down a little this is still being tested :stirthepot:


the whole point of being in alpha is that everybody tells him whats wrong with the script so that he knows to fix it. I don't think anybody is not being calm about it.

grats

2010-02-27 19:38:39

From: nategr8ns
the whole point of being in alpha is that everybody tells him whats wrong with the script so that he knows to fix it. I don't think anybody is not being calm about it.


Quote ram and tell him that too because obviously both of us saw people over-reacting


Well I can't run it for more than 30 seconds now because it disconnects from rs (only this script) almost instantly =/



ToGuild
In Guild? False
Black Points: 158
In Guild? False
Black Points: 159
getting to guild
walking to 1
dist: 26
Walked: True
SC Array: 0
first finder
found text
gathering colors
in color gatherer
Analyse 3629690: 57
Analyse 3630204: 39
Analyse 3762048: 46
Analyse 3828098: 19
Analyse 3563896: 34
Analyse 3893892: 38
Analyse 3960199: 49
Analyse 4223887: 16
Analyse 4157837: 51
Analyse 4092043: 48
Analyse 3959942: 31
Analyse 3497846: 6
Analyse 3366002: 6
Analyse 4289680: 110
Organizing colors
Done organizing
Gathered Colors
In Guild? False
Black Points: 165
In Guild? False
Black Points: 166
In Guild? False
Black Points: 168
In Guild? True
Black Points: 14141
getting to rocks
MineLoop
In Guild? True
Black Points: 10100
MineLoop - In guild.
Loads: 0
SC Array: 0
first finder
found text
gathering colors
in color gatherer
Analyse 2371375: 132
Analyse 2832183: 40
Analyse 2502962: 78
Analyse 1910053: 5
Analyse 2239532: 66
Analyse 2042153: 16
Organizing colors
Done organizing
Gathered Colors
in check chat
Loads: 0
SC Array: 6
Using Tol: 0
Search for: 2832183
Found total: 14
Found with color number: 0
in check chat

it disconnects everytime it tries to check chat… the other versions ( I just tried them) work perfectly for mining but they don't run to the bank and back well…. this one does the opposite :P


seems to be working well now, donno why it was messing up before..

I was just mining and a MOD was mining next to me LOL…. and 2 people were autoing there too… and I started talking and she was like I just hit 99 mining woot so I said grats xD
other 2 guys got pwned though…

Sir R. M8gic1an

2010-03-02 14:37:08

Ok guys, huge update :)

There was a flaw in SmartColors which resulted in most of the banking errors. Took me quite a while to figure that out. In the mean time, banking has been much more bullet prooffed. You should now be able to run this for a long time without any trouble :)

Things such as detecting if the ore is gone are the same as always, but now the guild -> bank, bank -> guild walks should not fail at all :)

Notice: I've got 3k coal in my bank :D

UPDATE TO DEV REVISION 400 MINIMUM!

~RM

RAM

2010-03-02 20:38:35

Thanks again…going to check now :)

E: No PW, I was hoping to get 3k free coal :p

Seems to running ALOT smoother :)

E: Still a bad lag while mining.

stein3

2010-03-02 21:13:32

I'll try the new version tomorrow :).

RAM

2010-03-03 09:38:53

I somehow missed the Big red letters, and just saw this… http://villavu.com/forum/showthread.php?t=55330

Anyways, just need a proper proggy…it ran all night with 10 players and 0 false :), GOOD JOB RM !!! :)

going to update smart colors and see what differeance it makes….

grats

2010-03-03 10:16:04

I updated and now I get multiple errors in scar\includes\srl\srl\misc\smart.scar

line 128

line 14 when I compile

edit:
I copied my other smart.scar over it and it's workin now ;o

Sir R. M8gic1an

2010-03-03 13:00:22

From: RAM
I somehow missed the Big red letters, and just saw this… http://villavu.com/forum/showthread.php?t=55330

Anyways, just need a proper proggy…it ran all night with 10 players and 0 false :), GOOD JOB RM !!! :)

going to update smart colors and see what differeance it makes….


Glad to hear that :)

I'm still tweaking the banking, as one of SRL's functions seems to be outdated, which is being a pain in my ass… but should be up to the standards I want soon enough :)

~RM

RAM

2010-03-03 13:30:21

Haven't had problems with banking. I'm messing around with a procedure to make Mith priority…

if SmartColorsEx(ROCK_MITH) or SmartColorsEx(ROCK_COAL) then

works, but freaks out a bit when trying to decide which one to mine :p

Sir R. M8gic1an

2010-03-03 13:38:27

From: RAM
Haven't had problems with banking. I'm messing around with a procedure to make Mith priority…

if SmartColorsEx(ROCK_MITH) or SmartColorsEx(ROCK_COAL) then

works, but freaks out a bit when trying to decide which one to mine :p


Heh, I'll work on that now as it seems to be one of the things you really want ;)


EDIT: Btw, I just sold all my coal @ 305 ea. Prices should still go up a bit more, up to you when to sell / if to sell, but I thought i'd let you know ;)

~RM

twobac

2010-03-03 21:08:26

What an awsome script, just ran for a 21 load session in the RS client 500+coal. Now running in Smart.

I have noticed the following.
1. when climbing down ladder, seams to always select the same rock to start on
2. if the inventory screen is not vissible and inventory is full it will continue to click on rocks.
3. still gets confused near door to other part of mine, click lamps (as posted before)

Walking and banking pretty solid, one instance where it selected quick bank from bank door, then as it walked to the counter it selected quick bank again, but as the window opened and then it could not find the deposit all button.

Super script!

edit: Just ran for [php]Loads: 40[/php] no problems with banking / walking. did manual forrester, but that was the only random.

Sir R. M8gic1an

2010-03-05 15:18:42

Damn nice, 40 loads!

Just to announce, I have just added Mith mining. Check the latest version :) Pretty damn effective.

Also, don't forget to update your SRL due to the new login screen :)

Edit:

Uploaded V0.41; 0.40 had some things I had been playing around with and forgot to switch back to what it was :)
Also, script is now Beta, as it is stable enough to be run although still missing some features :)

~RM

nikos

2010-03-06 20:50:04

runs much better now no more problems walking to bank and mining procedure looks faster. how do you make smart log into a members world?

i luffs yeww

2010-03-06 21:02:03

From: nikos
runs much better now no more problems walking to bank and mining procedure looks faster. how do you make smart log into a members world?


Smart_Members := True;

nikos

2010-03-06 21:54:51

it gets stuck in the bank and can not find the bank booth after 2 or 3 loads which is weird. any one else have this problem?

twobac

2010-03-06 22:09:11

I have just ran this for 3 hours straight, commented out the Rest proceedure.
The Mith detection is great!!!

Works better when the Guild is empty, first world had about 5/10 other miners there and the script was too slow to get the ores.


I have not had Nikos' problem, but a couple of times I have noticed that on the return to the bank the player stands close to the northern wall outside the bank and as the bank booths are just off the screen, it cannot find the bank.

grats

2010-03-07 03:17:26

From: nikos
it gets stuck in the bank and can not find the bank booth after 2 or 3 loads which is weird. any one else have this problem?


The problems with the bank is it goes to the bank but smart has a glitch where when you use the bank "use quickly" it doesn't always open up the bank.. also the same for the "exit to lobby"

this is messing up a few scripts

Baked0420

2010-03-07 08:43:06

I want to test this script to see how good it runs now that it's stable but my account has 52 mining, can't get in the guild until 60 I believe. You should add an option for iron power-mining for people who aren't yet 60 ;)

nikos

2010-03-07 08:54:04

Loads: 16
ran until it got stuck on a mime random. Not bad

RAM

2010-03-07 10:09:36

Loads: 93… it's been running since you updated, on 10 characters…I did add a few more FindNormalRandoms checks into it, as I've had to help it through some randoms…..once in awhile, it manages to click on the lamps on the wall…and a few times the north door to the guild, going out of the guild and mining gold….

Still trying to figure out what changes have been made to Chat.Scar to make the Autoresponder repeat itself….

Thanks for your Hard Work, Keep It Up :)

Sir R. M8gic1an

2010-03-07 10:24:50

I have some trouble with the randoms as well, but couldn't find anywhere where id have to add FindNormalRandoms. It just doesnt seem to be detecting them.

About the bank, I think i finally managed to sort out all its issues, the version will probably be uploaded later on tonight.

Mining is the same as always, except that it might lag a bit less if you had lag to start with.

And yeh, sorting out the top-of-guild problem is high on the priority list :)

thanks for all the feedback!

-RM

keller

2010-03-07 12:27:33

I get the same problem, after about 2 loads it walks to bank, but can't find the booth.
From: nikos
it gets stuck in the bank and can not find the bank booth after 2 or 3 loads which is weird. any one else have this problem?

mysterious123

2010-03-07 12:31:08

Any chance you enable it so you can have a pic in your inventory?
I bet more people would be able to test it - at least I will be able to.

RAM

2010-03-07 12:36:01

From: Rasta Magician
I have some trouble with the randoms as well, but couldn't find anywhere where id have to add FindNormalRandoms. It just doesnt seem to be detecting them.

About the bank, I think i finally managed to sort out all its issues, the version will probably be uploaded later on tonight.

Mining is the same as always, except that it might lag a bit less if you had lag to start with.

And yeh, sorting out the top-of-guild problem is high on the priority list :)

thanks for all the feedback!

-RM


Agreed, I added it in several places, as well as write ins and debugs trying to figure out where…..As well as adding a FindInventoryRandoms check before banking, as it won't be able to deposit mysterious box and will just stand there…

I forgot to mention lag..There is None :)…Thanks

From: keller
I get the same problem, after about 2 loads it walks to bank, but can't find the booth.


Easy fix is to add more players, as long as it doesn't set them false, it picks them up the next time they log in ;)

Sir R. M8gic1an

2010-03-07 12:47:33


Loads: 24


Getting down to work :)

~RM

keller

2010-03-07 13:19:26

From: RAM

Easy fix is to add more players, as long as it doesn't set them false, it picks them up the next time they log in ;)


What do you mean?

nikos

2010-03-07 16:20:02

Loads: 18 it clicked the north gate like ram said but only happened once. and agree that it needs to FindNormRandoms more. Also had a character get stuck just north of the bank wall so that the bank booths were not visible :/

Town

2010-03-07 16:46:48

From: nikos
Loads: 18 it clicked the north gate like ram said but only happened once. and agree that it needs to FindNormRandoms more. Also had a character get stuck just north of the bank wall so that the bank booths were not visible :/


These are the mistakes I've seen. Full inventory just outside (above) the bank. Full inventory by gate, "Clicked MM Ladder" in debug –> waits with horrendous amounts of debug text –> repeats. Twice I've seen the second bug and have corrected it mid-run as once the ladder is in MM range it clicks it correctly. I'm not sure if that loop is infinite or not as I haven't seen a character logged out in that area yet.

I'm currently on my 6th character with a cumulative total of 40 loads for this run. It runs very well, for the most part.

nikos

2010-03-08 15:42:24

Loads: 37
Works pretty good especially with multiplayer thanks Ram

V Macro V

2010-03-09 23:43:38

Such a ''Beast'' script. Just need a way to get it to run longer, any ideas?

RAM

2010-03-09 23:53:37

:confused:
From: V Macro V
Such a ''Beast'' script. Just need a way to get it to run longer, any ideas?


From: nikos
Loads: 37
Works pretty good especially with multiplayer thanks Ram


This script uses Smart Color technology to find the best colors, seeing as the symbols locations and colors change often, it is sometimes hard for the script to see, although it may be in the right area. Adding extra players increases the time this script can run for, this includes using the same player repeatedly ;)

grats

2010-03-10 01:09:37

From: Rasta Magician
I have some trouble with the randoms as well, but couldn't find anywhere where id have to add FindNormalRandoms. It just doesnt seem to be detecting them.

About the bank, I think i finally managed to sort out all its issues, the version will probably be uploaded later on tonight.

Mining is the same as always, except that it might lag a bit less if you had lag to start with.

And yeh, sorting out the top-of-guild problem is high on the priority list :)

thanks for all the feedback!

-RM


All the lag (from your script) was fixed with the new srl update & your new 4.0+ update (for me at least) it mines pretty smoothly now

V Macro V

2010-03-10 09:45:02

From: RAM
:confused:



This script uses Smart Color technology to find the best colors, seeing as the symbols locations and colors change often, it is sometimes hard for the script to see, although it may be in the right area. Adding extra players increases the time this script can run for, this includes using the same player repeatedly ;)


Oh, Respect Ram

Edit: tried to add an extra player but i got an error. can you show me how it should look?

Late

2010-03-12 12:25:54

It tried clicking coals outside the guild :D
And sometimes it started hovering over the torches :(

It ran 1 hour and got 150 coals and 20 mithril with my 60 mining :)

Stevee

2010-03-13 00:51:13

The script often tries to mine rocks that have no coal in them, which is a huge con for antiban.

Suggested fix
[BANANA]
{
-Mining procedure
-Check chatbox for 'no ore currently' (function)
-If (no ore function) = true then (find another rock)
-else (continue mining)
}[/BANANA]

Sir R. M8gic1an

2010-03-13 06:15:21

From: Stevee
The script often tries to mine rocks that have no coal in them, which is a huge con for antiban.

Suggested fix
[BANANA]
{
-Mining procedure
-Check chatbox for 'no ore currently' (function)
-If (no ore function) = true then (find another rock)
-else (continue mining)
}[/BANANA]


it does check. Watch to see if there was coal when it clicked it in the first place.

~RM

Stevee

2010-03-13 13:02:31

There wasn't. It will just click an empty rock, but it won't stop clicking it.

sonokirujin

2010-03-13 17:52:34

After posting this on the wrong thread I thought I should post it here….

Amazing script no errors and runs smoothly

Okay also I made it so you can have a pick in your inventory or equipped. But I am not too good at scripting yet so hopefully this works for everyone.

NOTE
all I added was the if then else.. I just thought it'd be easier to replace the whole thing instead of just adding it in

// Under the global const
// Wielding a pick?
Wielding_Pick = False;


// Inside the banking procedure replace the
if WaitFunc(@BorPScreen, 100, 5000) then

// With
if WaitFunc(@BorPScreen, 100, 5000) then
begin
writeln('in here');
begin
if Wielding_Pick = True then
DepositAll
else begin
Deposit(2, 28, True);
Result := (InvCount <= 1);
end;
CloseBank;
wait(500+random(500));
Result := true;
end;
end;

// Don't erase the last end in the procedure though or you'll get the identifier expected error

I'm kinda just testing out my scripting skills here but if you'd like I also made a bank pin available which I could post

Town

2010-03-13 20:48:08

It's never detected a random, though it runs well otherwise.

i luffs yeww

2010-03-13 20:52:32

That's SRL's fault, Town. ;) Not RM's.

snakattak

2010-03-14 14:55:57

hey it keeps getting stuck for me on the backpack icon

its saying this:

Line 615: [Hint] (21711:1): Variable 'NEWCOLOR' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar

and


Line 615: [Hint] (21711:1): Variable 'CTS' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar

prob a easy fix problem or something i missed when looking through the thread

thanks

Sir R. M8gic1an

2010-03-14 15:00:44

From: snakattak
hey it keeps getting stuck for me on the backpack icon

its saying this:

Line 615: [Hint] (21711:1): Variable 'NEWCOLOR' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar

and


Line 615: [Hint] (21711:1): Variable 'CTS' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar

prob a easy fix problem or something i missed when looking through the thread

thanks


None of those are problems… Make sure you have the latest SRL.

~RM

snakattak

2010-03-14 15:57:24

just downloaded the latest SRL
even re-downloaded scar
same problems
possibly the graphics settings im running at?

im running in safe mode with high brightness and lowest everything else

thanks for any help

Sir R. M8gic1an

2010-03-14 16:01:00

From: snakattak
just downloaded the latest SRL
even re-downloaded scar
same problems
possibly the graphics settings im running at?

im running in safe mode with high brightness and lowest everything else

thanks for any help


I really have no clue then. It finds the rocks by the black colour, so it should only move & click if the black is there :S

~RM

snakattak

2010-03-14 16:09:03

it just seems to keep trying for the backpack and wont move off the icon…
my pic is wielded and im in the bank….
I must have done something wrong

Town

2010-03-14 20:33:00

From: i luffs yeww
That's SRL's fault, Town. ;) Not RM's.


I would hope that's not the case. About a month ago the majority of randoms had solvers while all could be detected. Has there been a significant change?

I can't say the script is at fault though since, in the loops it usually gets caught in, there are random checks.

i luffs yeww

2010-03-14 21:15:05

Snak, you're using SCAR 3.22, you need SCAR 3.23. I assume you're also using the public SRL dev 40 something, and not the developer's revision of SRL.

Use this guide to set up SCAR/SRL. :)

nikos

2010-03-15 06:12:56

No problems with this script except smart not finding the bank booth colors sometimes. but if u have more then 1 player it should run fine :)
Loads: 70

RAM

2010-03-15 14:14:34

Loads: 164 :)

Still having problems with randoms finding…

snakattak

2010-03-15 14:42:30

I'm using 3.23 and srl v42&#8230; no change&#8230; I'm thinking the files may have been corrupted&#8230; I'll try stArting from scrach

Sir R. M8gic1an

2010-03-15 15:10:14

From: snakattak
I'm using 3.23 and srl v42… no change… I'm thinking the files may have been corrupted… I'll try stArting from scrach


Use SRL OpenDev svn

Find a guide on it in the tutorial section ;)

I'm amazed at the number of loads :D I should add stats to this script!

I'll probably get around to work on it some more this weekend :) Right now I've got deadlines to meet :p

~RM

snakattak

2010-03-15 21:21:00

wow somehow my re downloading of everything seemed to fix it
thanks RM and everyone else

grats

2010-03-16 01:50:25

It's working very smoothly now with getting mithril & coal, only minor problems are no logging out when in a random but I read that is SRL? so I guess the script is working perfectly :P

The lag is gone too, which is good, only real problem with the script is sometimes it doesn't bank so it logs out and executes

Sir R. M8gic1an

2010-03-16 16:29:16

Uploaded v0.49. I disactivated the rock following features and etc because they are not yet stable, but this already has improved banking.

I'm unable to test ATM, so watch it for a couple of runs just to be sure. If something is obviously failing, either feel free to test and let me know, or just revert to the old version :)

~RM

sk80rdie76

2010-03-16 17:36:00

[PHP]Line 820: [Hint] (23472:1): Variable 'CINVCOUNT' never used in script
Line 820: [Hint] (23472:1): Variable 'COLORCOUNT' never used in script
Line 1056: [Error] (23708:1): Unknown identifier 'ToBank' in script C[/PHP]

with the new version

i luffs yeww

2010-03-16 18:28:47

"SCAR 3.20scarprerelease"

wat

Why does it say 3.20? :o

sk80rdie76

2010-03-16 18:31:27

From: i luffs yeww
"SCAR 3.20scarprerelease"

wat

Why does it say 3.20? :o


thats just where i have it located…disregard that.

im using 3.23 and the latest dev revision…i just deleted the line and now its working

Mrbanana

2010-03-17 10:00:45

From: sk80rdie76
thats just where i have it located…disregard that.

im using 3.23 and the latest dev revision…i just deleted the line and now its working


I did the same thing.

Wowowowowow

When my comp went to screen saver it typed in my user name and password into chat…. O____________________O

RockPoint X: 290
RockPoint Y: 284
in check chat
Max wait time for rock: 10000
WalkOutGuild
ToBank
Welcome to Runescape.
MYUSERNAMELOL
Successfully executed

I stopped it… i shook my mouse after a couple seconds and saw it…

Not kewl D:

sk80rdie76

2010-03-17 11:49:49

the banking still needs work, it only did 5 loads before it failed

twobac

2010-03-17 11:56:26

I had the same error [php]Unknown identifier 'ToBank' [/php]
The script still ran after i commented it out, but was not able to symbol walk to the bank. even after I changed worlds multiple times. I reverted to rev 0.41 but like sk80rdie76, it would only bank 3 or 4 times?? So maybe something has changed in RS as 0.41 was quite good for me in banking???

Sir R. M8gic1an

2010-03-17 14:52:34

Does anyone actually want to describe the problem with banking instead of just saying it 'fails' ?

Where was it? Did it attempt any clicks? Any other info?

~RM

Town

2010-03-17 15:22:19

From: Rasta Magician
Does anyone actually want to describe the problem with banking instead of just saying it 'fails' ?

Where was it? Did it attempt any clicks? Any other info?

~RM


1/4 of my characters are normally just in front of a bank stall with a full inventory. It (opening the bank) works something like 98% of the time.

Another bit are usually just out of the bank where there are unable to see the stall with a full inventory. A failsafe could make a click about 6 (mainscreen) blocks downward to get inside the bank.

The rest tend to be in randoms.

sk80rdie76

2010-03-17 15:29:27

From: Town


Another bit are usually just out of the bank where there are unable to see the stall with a full inventory. A failsafe could make a click about 6 (mainscreen) blocks downward to get inside the bank.



this is where it usually stops for me

keller

2010-03-17 19:49:54

A problem I am having is that the script will not register that it has mined a rock.
Debug:
Moving Mouse to rock
RockPoint X: 178
RockPoint Y: 264
in check chat
Max wait time for rock: 15000
Rock took too long
Relocating in Guild

The script is doing this almost every single time. Maybe once every 15 mines or so it will go onto the next without saying "Rock took too long."

nikos

2010-03-17 22:08:29

Rasta Magician, maybe if the script can not find the bank then logout; then login; then bank; continue script etc. that should fix the problem i think.

grats

2010-03-18 00:05:21

From: Rasta Magician
Does anyone actually want to describe the problem with banking instead of just saying it 'fails' ?

Where was it? Did it attempt any clicks? Any other info?

~RM


I said before it seems to be a glitch in runescape where you click "use quickly" on the bank and it walks to the bank but doesn't go in it… the bot doesn't try to go in the bank again after this it just logs and executes

RAM

2010-03-18 01:48:29

From: V Macro V
Oh, Respect Ram

Edit: tried to add an extra player but i got an error. can you show me how it should look?


It's best to use at least 2 players, but you can just declare the same player twice….

Make your DeclarePlayers Procedure look like this….

{ RM --------------------------------------------------------------------------]
[ End User Input for players ]
[------------------------------------------------------------------------------}
Procedure DeclarePlayers;
begin
NumberOfPlayers(2);
CurrentPlayer := 0;

with Players[0] do
begin
Name :='';
Pass :='';
Nick :='';
Active := True;
end;

with Players[1] do
begin
Name :='';
Pass :='';
Nick :='';
Active := True;
end;
end;
Now, at the very end of your script, replace "Rest;" …..

Rest;
With….

LogOut;
Writeln('Changing Players');
NextPlayers(Players[CurrentPlayer].Active);
Now, 1 last thing….hit "control+F" …find in script…"CurrentPlayer"

there is two, 1 in ToGuild; and 1 in ToBank;…..

Players[CurrentPlayer].Active :=[B] False;[/B]
and just change "False" to "True"…

Players[CurrentPlayer].Active :=[B]True;[/B]
….just keep in mind, that if your player does get lost, it will now just log out and log into the next(or the same character) and try again…if it is really lost, it will now attempt to get even more lost :p, but if it is a false positive and at the bank, hopefully the symbols and/or colors will have changed enough to be able to find the bank booth successfully now :)…Also, please keep in mind this is a "Half Assed Fix" :redface:

twobac

2010-03-18 19:12:17

Thats cool, I guess that would work on any script. Nice :)

Sir R. M8gic1an

2010-03-19 07:35:09

From: twobac
Thats cool, I guess that would work on any script. Nice :)


Not advisable to do that on every script ;) luckily on this one it works cus the player ends up being in the same place and the script is able to pick it up. I'll probably work more on it today at some point. We'll see.

~RM

twobac

2010-03-19 13:09:49

ok cool, looking forward to the next version. :)

sk80rdie76

2010-03-19 22:34:58

Loads: 62

manually stopped

Sir R. M8gic1an

2010-03-20 10:06:54

V0.491

Should fix banking and compiling error. :) Try it out!

~RM

RAM

2010-03-20 21:34:01

Had to change the "Max wait time after rock" a little bit, but other than that, very smooth :) Thanks

nikos

2010-03-20 23:03:57

yea much more stable in terms of banking, but i think the mining procedure is a little slow because it says max wait time to mine rock reached 15000 sometimes even tho it finished mining the rock.

Sir R. M8gic1an

2010-03-21 06:25:43

From: nikos
yea much more stable in terms of banking, but i think the mining procedure is a little slow because it says max wait time to mine rock reached 15000 sometimes even tho it finished mining the rock.


I'll have a look at that :)

~RM

RAM

2010-03-21 14:07:13

Here is what I changed my waits to…my players have around 70 mining….
const
//Player Modifiable

//UpText waits
UT_WAIT_FRENZY = 300;
UT_WAIT_FAST = 500;
UT_WAIT_HUMAN = 700;

//InvCount waits
IC_WAIT_FRENZY = 1000;
IC_WAIT_FAST = 1500;
IC_WAIT_HUMAN = 7000;

//Random wait after rock
R_WAIT_FRENZY = 300;
R_WAIT_FAST = 700;
R_WAIT_HUMAN = 1000;

nikos

2010-03-21 16:18:19

Loads: 50
Thanks

RAM

2010-03-23 10:47:59

2 Instances running on 1 machine with 14 players total …Loads: 78 ended in memory error, other Loads: 113 and still going…few problems with lag and players ending up in the north part of guild, and still a few problems with clicking on the lamps….but to be expected from that computer :p

On the bright side, 14 players with 2.5k-3.5k ea coal on them so far :)

Thanks

xs_range

2010-03-23 12:00:06

Line 51: [Error] (332:11): Unknown identifier 'CreateTPAFromBMP' in script C:\Program Files (x86)\SCAR 3.22\includes\SRL\SRL\Core\Math.scar

hmmm, any help please? :)

nikos

2010-03-23 12:54:30

From: xs_range
Line 51: [Error] (332:11): Unknown identifier 'CreateTPAFromBMP' in script C:\Program Files (x86)\SCAR 3.22\includes\SRL\SRL\Core\Math.scar

hmmm, any help please? :)


move your plugins

Sir R. M8gic1an

2010-03-23 12:56:59

From: RAM
2 Instances running on 1 machine with 14 players total …Loads: 78 ended in memory error, other Loads: 113 and still going…few problems with lag and players ending up in the north part of guild, and still a few problems with clicking on the lamps….but to be expected from that computer :p

On the bright side, 14 players with 2.5k-3.5k ea coal on them so far :)

Thanks


Good news, Good news :)

I'll be on holidays next week, which means I'll most likely end up scripting at some point. It'll be easy enough to make it avoid the top of the guild :)

~RM

mysterious123

2010-03-25 01:48:22

Can you make it so the pic doesn't have to be wielded? (As in, just check for the color of the rune/other pic in the inventory… Not much of a problem)

It's just that that is what's stopping me from using this script. Er - testing it.

i luffs yeww

2010-03-25 06:58:54

I could help you add that to the script, mysterious. :) That is, if you don't want to wait a few more day for RM to do it with some extremely advanced way of doing it. ;)

mysterious123

2010-03-25 09:01:12

From: i luffs yeww
I could help you add that to the script, mysterious. :) That is, if you don't want to wait a few more day for RM to do it with some extremely advanced way of doing it. ;)


I don't mind waiting a few days. The question is IF he will do it in his 'holiday'.

i luffs yeww

2010-03-25 09:08:52

Alrighty. :) Well if not, I used something for a wcing script that I could change one number on and it'd work for this. ;)

mysterious123

2010-03-25 09:29:43

From: i luffs yeww
Alrighty. :) Well if not, I used something for a wcing script that I could change one number on and it'd work for this. ;)


I have one too for my future wc script… Lol

grats

2010-03-25 11:31:06

With the newest update it seems to wait a while to mine the next rock (after getting ore) sometimes almost 30 seconds is it supposed to?

also sometimes hovers over mithril without clicking sorry haven't been on in about a week and I'm about to leave the state for 10ish days :P


I see the delay is caused by "Max wait time for rock: "

either 10k or 15k

these are the times it takes to go to next rock it always mines the rocks because my mining is high but it still says it failed and moves to a next rock after the max wait time is done so I believe it isn't looking for the 'you managed to mine some coal'

RAM

2010-03-25 11:47:58

From: mysterious123
Can you make it so the pic doesn't have to be wielded? (As in, just check for the color of the rune/other pic in the inventory… Not much of a problem)

It's just that that is what's stopping me from using this script. Er - testing it.


somebody already mentioned a fix for this a few posts back…..http://villavu.com/forum/showpost.php?p=693951&postcount=131

mysterious123

2010-03-25 17:39:50

From: RAM
somebody already mentioned a fix for this a few posts back…..http://villavu.com/forum/showpost.php?p=693951&postcount=131


Alright, thank you, I'll try the script out once I have my little goals done. =D

RAM

2010-03-27 17:19:27

I've been getting quite a few deaths lately :(, most of my characters are 45+ combat, the only thing I can think of is they are getting owned by scorpions ?

mysterious123

2010-03-27 17:30:13

From: RAM
I've been getting quite a few deaths lately :(, most of my characters are 45+ combat, the only thing I can think of is they are getting owned by scorpions ?


Doesn't that mean that the script clicks on the gate?

RAM

2010-03-28 01:43:03

From: mysterious123
Doesn't that mean that the script clicks on the gate?


Yes, as well as the torches, known bug that's being looked into :rolleyes:

EDIT: Loads: 291 …8 characters, had to help a few through randoms, but it ran all weekend and only stopped because of update :)….working on proper proggy

EDIT: Loads: 314

twobac

2010-04-02 21:47:56

Hi Ram,

Wow 314 loads, what a target to reach for, How many Hours was that?

Thanks for posting the step by step changes needed to make this multi player, can you explain how to increase the number of loads that each player will mine before then next player logs in.

I am stoked that I managed to amend the script to check for the pin screen and add a bank pin :) but to increase the loads is beyond my level of knowledge atm.

Loads of thanks in advance :)

Sir R. M8gic1an

2010-04-03 10:10:20

Ok guys, update your SRLs to #425 and download the latest version

It wont any longer wait for ages for a rock nor just hover over the mithril.

The waiting way too long was just scar's stupidity. The hovering mithril was my own stupidity :)

~RM

RAM

2010-04-04 00:44:56

From: twobac
Hi Ram,

Wow 314 loads, what a target to reach for, How many Hours was that?

Thanks for posting the step by step changes needed to make this multi player, can you explain how to increase the number of loads that each player will mine before then next player logs in.

I am stoked that I managed to amend the script to check for the pin screen and add a bank pin :) but to increase the loads is beyond my level of knowledge atm.

Loads of thanks in advance :)


This script is stable enough to run days on multiple characters…I average about 4 loads/hour so…Sorry, I don't have the time to explain, but it would just require adding a new integer ;)…with the minor problems it has with the colors and the symbols changing, I find that switching after each player is perfect timing for my army of 10 :)

g0tp0t

2010-04-04 02:15:09

LOL, i thought i posted this like a week ago but, change this:

        while (SCount <= InvCount) do
to this:
        while (SCount >= InvCount) do
or this which makes more sense to humans:tongue::
        while not (SCount < InvCount) do

Sir R. M8gic1an

2010-04-04 07:16:41

From: g0tp0t
LOL, i thought i posted this like a week ago but, change this:

        while (SCount <= InvCount) do
to this:
        while (SCount >= InvCount) do
or this which makes more sense to humans:tongue::
        while not (SCount < InvCount) do


Thank you for the effort, but you are wrong.
SCount = start count
InvCount = current count.

I want it to break the loop when InvCount is bigger than SCount, so run it while SCount is = to InvCount.

Actually the best solution is

while SCount = InvCount. My logic failed :p

~RM

Town

2010-04-04 10:39:26

I had been having infinite loop problems whenever the script got a random, likely because of something dumb I had done when making it switch players. RAM, I copied your changes and hopefully that will help.

RAM

2010-04-04 21:47:47

From: Town
I had been having infinite loop problems whenever the script got a random, likely because of something dumb I had done when making it switch players. RAM, I copied your changes and hopefully that will help.


I'm thinking the problem was in SmartColors and the reason RM said to update was because he fixed it ? :D

Never hurts to add in a few extra randoms checks ;)

Loads:119 and rising with new version, seems to running alot smoother :)

I've been trying to figure out the correct use for RM's SRLProggry report….

{procedure ProgressReport;
begin
ClearReport;
SRLProgressReport(ResultReportBox, 'RM Guild Miner', 'RM tweaked by RAM', ScriptVersion,
['Time Running', 'OtherValues', 'Et cetera'],
[TimeRunning, Mined, 'ect']);
SRLRandomsReport;
SRLPlayerReport(ResultReportBox, 15, (HowManyPlayers = 11), [true, true, true, true, true, true],

end; }

g0tp0t

2010-04-04 21:49:53

From: Rasta Magician
Thank you for the effort, but you are wrong.
SCount = start count
InvCount = current count.

I want it to break the loop when InvCount is bigger than SCount, so run it while SCount is = to InvCount.

Actually the best solution is

while SCount = InvCount. My logic failed :p

~RM


lol, the '=' is what i posted first (or tried lol) but i figured that you had the <= as a failsafe, like incase something happened to disapear dfrom your inventory, but lol, not fail, it works.

i luffs yeww

2010-04-04 22:18:21

Nothing just disappears from your inventory unless there's an update, which would break the script anyway.

Sir R. M8gic1an

2010-04-05 09:47:21

Version 0.52

It now will no longer go near the gate at the top, so it shouldn't get stuck thre or go to scorpions anymore :)

Unfortunately I can't thoroughly test because the internet at my holiday house is really shitty. But let me know how it goes :) I did my best in testing!

~RM

Sir R. M8gic1an

2010-04-05 11:40:19

v0.55; Further tweaked the getting away from the top of the guild and added SRL Stats :)

Those two day long proggies wil be stored now :)

~RM

RAM

2010-04-05 12:53:00

Sweet :)

Town

2010-04-05 17:36:21

Loads: 123

I stopped it so that I could get the new version. This is getting better and better.

Sir R. M8gic1an

2010-04-05 19:10:34

From: Town
Loads: 123

I stopped it so that I could get the new version. This is getting better and better.


Loving it. :)

~RM

twobac

2010-04-05 22:32:42

ok where do I get this from, ScriptStats.scar?

i luffs yeww

2010-04-05 23:11:55

Bleh. I helped apx900 with this earlier. I can help you by using TeamViewer, if you can't figure it out.

DISREGARD THAT I SUCK COCKS.

Comment out line five.

RM, I don't understand this. {$Define RM} is commented, yet it still says it's not. 'o.O

RAM

2010-04-06 02:33:09

Says it's not reconciling Username or PW, and I created a new account to double check ;) ?

Sir R. M8gic1an

2010-04-06 06:26:10

From: i luffs yeww
Bleh. I helped apx900 with this earlier. I can help you by using TeamViewer, if you can't figure it out.

DISREGARD THAT I SUCK COCKS.

Comment out line five.

RM, I don't understand this. {$Define RM} is commented, yet it still says it's not. 'o.O


Inorite? I think i'll just remove that from the releases.

RAM: Do you mean for SRL Stats? I dunno if that is the case…. It's working for me, so I can't say much.. :p Are you sure you put in the right user id?

twobac: just comment out that line. Also, get scar 3.23 beta and the latest SRL.

I'll release a version in a couple of mins without that problem.

~RM

RAM

2010-04-06 15:22:17

Yes, SRL stats, I created a new account to double check….

Town

2010-04-06 16:20:22

Should it be opening the boxes it gets from randoms (which are being solved consistently)?

RAM

2010-04-06 16:27:53

From: Town
Should it be opening the boxes it gets from randoms (which are being solved consistently)?


I just PMed RM my modified DeclarePlayer ;), but the inbox isn't saving messages again, but here it is in short version… :) ~RM, please send back to me :p

procedure DeclarePlayers;
var NumPlayers,i,a:integer;
begin
NumPlayers:= 2;
NumberOfPlayers(Numplayers);
for i := 0 to NumPlayers-1 do
begin
Players[i].BoxRewards := ['mote', 'ostume', 'ystery', 'XP', 'Gem', 'ithril', 'oal', 'une', 'oins'];
end;

with Players[0] do
begin
Name := ''; //Player username
Pass := ''; //Player password
Nick := ''; //Player nickname - 3-4 letters of Player username.
Active :=False;
Integers[P_MITHP] := 0; // x / 100 to check for mith
end;

with Players[0] do
begin
Name := ''; //Player username
Pass := ''; //Player password
Nick := ''; //Player nickname - 3-4 letters of Player username.
Active :=False;
Integers[P_MITHP] := 0; // x / 100 to check for mith
end;
end;

Town

2010-04-06 16:31:08

Alright, I thought that was the case.

Was the integer 'a' meant to have a purpose?

Sir R. M8gic1an

2010-04-07 09:34:00

From: Town
Alright, I thought that was the case.

Was the integer 'a' meant to have a purpose?


I'm guessing not. I'll add reward boxes into the Declare Players as RAM has.

Also, RAM, are you putting in your ID and not you username?

eg. My id is 83, not RMagician

From my digging I found this:

user - ID
Ramit - 346 - Registered yesterday, which makes me guess it's you.

:)

And no, to answer your PM, you don't need the include.

Finally, here's the propper declare players:

Procedure DeclarePlayers;
var
i: integer;
begin
NumberOfPlayers(1);
CurrentPlayer := 0;

for i := 0 to HowManyPlayers-1 do
Players[i].BoxRewards := ['mote', 'ostume', 'ystery', 'XP', 'Gem', 'ithril', 'oal', 'une', 'oins'];


with Players[0] do
begin
Name :='';
Pass :='';
Nick :='';
Active := True;

Integers[P_MITHP] := 100; // x / 100 to check for mith
end;

end;

~RM

RAM

2010-04-07 12:32:46

Ramit was the one I registered as a test yesterday, Ramalot is the first one, and I've had no luck with the stats thus far, even with other scripts, I'll investigate it a bit further later…

Thanks for updating Declare Players, I had a little slop left in there :p

Town

2010-04-08 11:16:53

The MM ladder autocolor often picks the big boulders instead of the actual ladder. This isn't a big deal unless it's close enough to the top gate that it thinks one of the boulders on the other side is the ladder.

I may be wrong and they just share colors. It's one of the two.

Sir R. M8gic1an

2010-04-08 12:35:43

From: Town
The MM ladder autocolor often picks the big boulders instead of the actual ladder. This isn't a big deal unless it's close enough to the top gate that it thinks one of the boulders on the other side is the ladder.

I may be wrong and they just share colors. It's one of the two.


I made them share colors, to ensure it'd find it.

And it shouldn't get close to the top gate anymore… I need propper internet to do furthertesting and tweaking :(

~RM

nikos

2010-04-10 09:10:08

Got stuck in infinite loop while in a evil Bob random. It was trying to relocate in guild constantly for hours.
I think i may be banned from this..
Anyway i think it still hovers over mithril ore once in a while without clicking it.

Town

2010-04-10 11:27:06

From: nikos
Got stuck in infinite loop while in a evil Bob random. It was trying to relocate in guild constantly for hours.
I think i may be banned from this..
Anyway i think it still hovers over mithril ore once in a while without clicking it.


You probably won't get banned. That happens to me on a nightly basis (not always the same account, of course). I guess if I had read the script I would have found this earlier. I'll uncomment those couple of lines in MineLoop.

Sir R. M8gic1an

2010-04-11 10:21:44

Glad you guys found that, I'll be editing it for the next version :)

~RM

RAM

2010-04-12 14:47:29

Stopped because of update….

/~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
| SRL 38 Randoms Report |
| www.villavu.com |
|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
| SRL Logs : 91 |
| Molly's Missed : 1 |
\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/

/~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\
| –>RM Guild Miner.5512<–43–>tweaked by RAM<– |
<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>
Worked for 16 Hours, 28 Minutes and 41 Seconds
Mined 79 loads at a rate of 0 per hour
<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>

<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>
# : Nick - Active - Mining Lvl Worked Location
0 : rs = T - Lvl : 0 W:13301 min. L: Banked load
1 : rust = T - Lvl : 0 W:148 min. L: Banked load
2 : ingo = T - Lvl : 0 W:152 min. L: Banked load
3 : ary = T - Lvl : 0 W:175 min. L: Banked load
4 : arb = T - Lvl : 0 W:161 min. L: Banked load
5 : ace = T - Lvl : 0 W:38 min. L: Banked load
6 : ette = T - Lvl : 0 W:189 min. L: Banked load
7 : izza = T - Lvl : 0 W:150 min. L: Banked load
8 : od = T - Lvl : 0 W:155 min. L: Banked load
9 : ell = T - Lvl : 0 W:134 min. L: Banked load
10: tf = T - Lvl : 0 W:129 min. L: Banked load
<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>

Sir R. M8gic1an

2010-04-13 09:22:16

[php]
[=========================================]
[ RM Guild Miner 0.6 ]
[ by Rasta Magician ]
[=========================================]
[ Time Running : 5 Minutes And 39 Seconds ]
[ Total Loads : 1 ]
[=========================================]
[ RM Guild Miner 0.6 ]
[=========================================]
[====================]
[ icia ]
[ Active : True ]
[ Worked : 05m 37s ]
[ Banked : 0 ]
[ Level : 76 ]
[====================]
[/php]

I just started running version 0.6 ; Once I iron out the proggy stuff I'll release it. Just to let you know it's coming :)

Edit: Pretty much finished. You'll notice the progress report is printed out as soon as the load is done, and therefore in the proggie the 'Banked' will always be one less than the 'total loads'. I'll be releasing tonight.

~RM

RAM

2010-04-13 09:37:54

Any Chance of making use of the new XP Button ? :)

Town

2010-04-13 15:25:39

Still without any multiplayer built-in? It may be greedy of me to ask that, since it takes me just as long, if not less time to implement it than it would take you.

mastaraymond

2010-04-13 15:34:30

I've got a army with 60+ mining which I definitely want to mine me some coal!

Sir R. M8gic1an

2010-04-13 19:28:56

From: Town
Still without any multiplayer built-in? It may be greedy of me to ask that, since it takes me just as long, if not less time to implement it than it would take you.


I've only got one guild miner, but I'll look into propper multiplayer implementation soon. I might be asking you or RAM for an extra account ;)

Releasing in a minute.

Edit: Released. This version other than proggie also has several tweaks, which were generally to do with Randoms and the gate problem.

[php]
[==================================================]
[ RM Guild Miner 0.6 ]
[ by Rasta Magician ]
[==================================================]
[ Time Running : 2 Hours, 18 Minutes And 5 Seconds ]
[ Total Loads : 15 ]
[==================================================]
[ RM Guild Miner 0.6 ]
[==================================================]
[========================]
[ icia ]
[ Active : True ]
[ Worked : 02h 18m 04s ]
[ Banked : 14 ]
[ Level : 76 ]
[========================]
[/php]

Stopped due to Mordaut.

~RM

easyas4

2010-04-15 01:31:00

Hey RM, Ive got 6 characters with 60+ mining. Ive trained them specifically so i could beta test this script. I hadn't read your first post all the way through and didnt realize you didn't have multiplayer or weren't set up for an un-equipped pick. :duh:

I ran the script once just to see how it worked and i noticed some things other people had mentioned already, having trouble finding the ladder going down and trying to mine on the other side of the gate.

I guess this post is mainly just letting you know i got some characters ready to test when you update the script a little more. I'd try and get them to 40 attack but i havent found a reliable fighter than can get me from 1-40 and I'm pretty lazy and dont want to get 6 characters to 40 attack. If you know a script like that then let me know brahseph, otherwise ill be watching this thread for an update. :)

~Easy

Edit:
I might be asking you or RAM for an extra account

Also if you need another account to test your multiplayer I'd be happy to lend you one of mine if you feel the need.

Brain

2010-04-15 01:51:38

feel free to hit me up for loaner accounts with 60+ mining, you might have to move them to fally though

Sir R. M8gic1an

2010-04-15 06:16:54

I've got account already, thanks everyone :)

easyas4, read through the thread, find RAM's version of the script. He's incorporated multiplayer.

Also, make sure you have the latest Dev Revision of SRL and the latest version of the script… it should no longer go through the gate nor have any trouble finding the ladder.

Make sure you also have scar 3.23 beta. You can download it from the scar SVN. Find some tutorials on how to auto if you don't have the latest SRL or SCAR.

~RM

EpicProject

2010-04-15 10:47:49

Very nice script, I only have 30att so im on free world atm, got rune pick in inventory with 0 bank slots left so it stays. =D But after it clicks 'deposit all' it just sits there, BUT if i alt+tab and go back to SMART it will close bank and continue? Is there anything i can do to fix this?

EDIT: Updated SRL, tried changing this part of the bank function a little:

[php]
begin
writeln('in here');
wait(1000+random(500));
DepositAll;
Inc(Players[CurrentPlayer].Banked);
CloseBank;
wait(500+random(500));
Result := true;
break;
end;
[/php]
Still no fix, -.-

EDIT: FIXED. Ok, I am a noob for not following your instructions about weilding a pickaxe. But is there a way i can fix this easily?

RAM

2010-04-15 13:52:14

From: EpicProject
Very nice script, I only have 30att so im on free world atm, got rune pick in inventory with 0 bank slots left so it stays. =D But after it clicks 'deposit all' it just sits there, BUT if i alt+tab and go back to SMART it will close bank and continue? Is there anything i can do to fix this?

EDIT: Updated SRL, tried changing this part of the bank function a little:

[php]
begin
writeln('in here');
wait(1000+random(500));
DepositAll;
Inc(Players[CurrentPlayer].Banked);
CloseBank;
wait(500+random(500));
Result := true;
break;
end;
[/php]Still no fix, -.-

EDIT: FIXED. Ok, I am a noob for not following your instructions about weilding a pickaxe. But is there a way i can fix this easily?


Try looking back a few pages…someone has already posted a procedure for weileded and unweilded pick use. GL

Town

2010-04-15 19:59:21

Time Running : 12 Hours, 47 Minutes And 34 Seconds
Total Loads : 102

Sir R. M8gic1an

2010-04-15 21:26:01

This script has now reached top 10, of the scripts that use SRL Stats. I see this as a huge compliment to my work, so thank you everyone :)

~RM

nikos

2010-04-15 23:02:30

definately rasta magician you make some of the best scripts :D

RAM

2010-04-16 11:55:28

Script is running good, but I think there is problems in the latest SRL, doesn't seem to want to log the next player in after going false, anyone else experiencing this ?

E: Mistakes on my part…RS updated….and 1 char banned…I suspect it was because of repeatedly logging into a random without solving…as i have been to busy lately to check them.

Sir R. M8gic1an

2010-04-16 17:48:59

From: RAM
Script is running good, but I think there is problems in the latest SRL, doesn't seem to want to log the next player in after going false, anyone else experiencing this ?

E: Mistakes on my part…RS updated….and 1 char banned…I suspect it was because of repeatedly logging into a random without solving…as i have been to busy lately to check them.


My apologies and condolescenses… But then again, I dont know if there is much I could do to avoid a ban..

~RM

Town

2010-04-16 20:04:01

From: RAM
Script is running good, but I think there is problems in the latest SRL, doesn't seem to want to log the next player in after going false, anyone else experiencing this ?


I don't think so. Mine is running up until each update.

sk80rdie76

2010-04-16 22:26:02


[===================================================]
[ RM Guild Miner 0.6 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 3 Hours, 50 Minutes And 26 Seconds ]
[ Total Loads : 30 ]
[===================================================]
[ RM Guild Miner 0.6 ]
[===================================================]

i luffs yeww

2010-04-16 23:23:53

Uhh.. 30 loads in almost four hours? 'o.O

RAM

2010-04-17 00:20:51

From: Rasta Magician
My apologies and condolescenses… But then again, I dont know if there is much I could do to avoid a ban..

~RM


Never did get the Auto-Responder fixed either :redface:

Sir R. M8gic1an

2010-04-17 05:56:52

From: RAM
Never did get the Auto-Responder fixed either :redface:


About that.. I think that with the latest version, or at least with the one I'll release once im home, if you press F12 and open up scar, you can send text to runescape.

~RM

sk80rdie76

2010-04-17 12:42:28

From: i luffs yeww
Uhh.. 30 loads in almost four hours? 'o.O


it sleeps and my guy has 88 mining

will6100

2010-04-18 15:14:51

[===================================================]
[ RM Guild Miner 0.6 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 12 Hours, 51 Minutes And 1 Seconds ]
[ Total Loads : 80 ]
[===================================================]
[ RM Guild Miner 0.6 ]
[===================================================]
[====================]
[ bad ]
[ Active : True ]
[ Worked : 54m 43s ]
[ Banked : 79 ]
[ Level : 0 ]
[====================]

worked good, stopped cause was in random

Sir R. M8gic1an

2010-04-18 15:19:26

From: will6100
[===================================================]
[ RM Guild Miner 0.6 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 12 Hours, 51 Minutes And 1 Seconds ]
[ Total Loads : 80 ]
[===================================================]
[ RM Guild Miner 0.6 ]
[===================================================]
[====================]
[ bad ]
[ Active : True ]
[ Worked : 54m 43s ]
[ Banked : 79 ]
[ Level : 0 ]
[====================]

worked good, stopped cause was in random


Nice!

Althogh I can see there's some sort of bug in Time Worked… will have to look into it.

~RM

Sir R. M8gic1an

2010-04-19 08:38:39

Uploaded V0.63.

Includes several tweaks.

~RM

Look Me

2010-04-19 09:31:35

Failed when compiling
Line 1576: [Error] (24837:1): Unknown identifier 'WaitInvMaxCount' in script C:\Program Files\SCAR 3.22\Scripts\RM guild miner.scar


With the new version.

Sir R. M8gic1an

2010-04-19 09:33:52

From: Look Me
Failed when compiling
Line 1576: [Error] (24837:1): Unknown identifier 'WaitInvMaxCount' in script C:\Program Files\SCAR 3.22\Scripts\RM guild miner.scar


With the new version.


Update your SRL.

~RM

mysterious123

2010-04-19 10:05:24

I updated SRL and Scar yesterday and I got this error:

Line 756: [Hint] (24017:1): Variable 'TRASH' never used in script C:\Documents and Settings\Desktop\ScarNew\Scripts\V0.63 - RM Guild Miner.scar
Line 1199: [Hint] (24460:1): Variable 'CINVCOUNT' never used in script C:\Documents and Settings\Desktop\ScarNew\Scripts\V0.63 - RM Guild Miner.scar
Line 1199: [Hint] (24460:1): Variable 'COLORCOUNT' never used in script C:\Documents and Settings\Desktop\ScarNew\Scripts\V0.63 - RM Guild Miner.scar
Line 1577: [Error] (24838:1): Unknown identifier 'WaitInvMaxCount' in script C:\Documents and Settings\Desktop\ScarNew\Scripts\V0.63 - RM Guild Miner.scar



I put everything in the right folders. (Other scripts work)

Sir R. M8gic1an

2010-04-19 10:06:29

From: mysterious123
I updated SRL and Scar yesterday and I got this error:




I put everything in the right folders. (Other scripts work)


Update SRL today :rolleyes:

~RM

mysterious123

2010-04-19 10:15:45

If a script doesn't work as good as it used to, could it be possible that my internet connection is involved?

Sir R. M8gic1an

2010-04-19 10:18:41

From: mysterious123
If a script doesn't work as good as it used to, could it be possible that my internet connection is involved?


I guess you could try v0.6 and compare. The only thing that was slightly tweaked was banking, where only a few loops were added, but shouldn't change the timing of things in any way, as it is only failsafes to what was already there.

[php]
[===================================================]
[ RM Guild Miner 0.6 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 4 Hours, 18 Minutes And 24 Seconds ]
[ Total Loads : 26 ]
[===================================================]
[ RM Guild Miner 0.6 ]
[===================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ icia | True | 04:18:22 | 25 | 65535 ]
[===========================================]
[/php]

Stopped due to random

[php]
[====================================================]
[ RM Guild Miner 0.63 ]
[ by Rasta Magician ]
[====================================================]
[ Time Running : 10 Hours, 55 Minutes And 16 Seconds ]
[ Total Loads : 62 ]
[====================================================]
[ RM Guild Miner 0.63 ]
[====================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ icia | True | 11:27:57 | 61 | 77 ]
[===========================================]
[/php]

It then crossed the gate. After 11 hours! >.> Oh well, I already have ideas on how to avoid that. (Yes, more failsafes!)

~RM

Sir R. M8gic1an

2010-04-20 07:49:27

Uploaded V0.64.

If you didn't update your SRL for 0.63, you will have to do it for 0.64;

Town, are you still running v0.55 ? I left it there just in case, although V0.6 is absolutely stable, and V0.63 got me an 11H proggy.

V0.64 now has better MM Door detection, meaning it won't end up at the scorpions.

A bug that I noticed yesterday, and is recurring ever since V0.5 is that if an object is dropped it will walk away from it, thinking it is the door.

I'm not sure how well V0.64 will react if someone else gets a random (Should be rare enough) - as I'm not sure if the NPC dot will show up on the map. We'll see I guess!

~RM

Town

2010-04-20 11:33:25

I'm sticking with v0.6. The only time it stops is when I get a random at this point, so there's no reason for me to change unless you make it run substantially faster. I just noticed that I never changed the SRL Stats information, though, so I'm about a week or two behind on that.

Sir R. M8gic1an

2010-04-21 07:17:07

Important:
All users of version V0.64 or lower, go to the line

while (SCount = InvCount) do
begin
//and add
RMRandoms;

~RM

Nebuli

2010-04-21 17:47:29

Oh man, had a 5h proggy (like 42 trips and would have gone longer without an update) but I deleted it. :((( anyways, AWESOME script, only thing I can think of that needs refining is the rock finding process, sometimes it keeps clicking empty rocks when the guild is kinda crowded. When the guild is empty, it works so well it's hilarious lol.

grats

2010-04-21 23:20:32

wow this has evolved extremely well since I've been gone, heh… I will be home for like 3 weeks then I'm off on more adventures O_O i'll try this out now :P

twobac

2010-04-21 23:52:49

I like the recent changes, good that it seams to be avoiding the door to the other section of mine.

Single player proggy
[PHP][===================================================]
[ RM Guild Miner 0.64 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 1 Hours, 33 Minutes And 12 Seconds ]
[ Total Loads : 8 ]
[===================================================]
[ RM Guild Miner 0.64 ]
[===================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ m01 | True | 00:08:25 | 7 | 65 ]
[===========================================][/PHP]

I have noticed the following.
1. The run selection on the return to the bank is not working all the time for me. it works about 40% of the time, when it does not, it either selects run when already walking or it leaves the run set to running.

2. On the progress rep, Loads never equals banked, see proggy below, player 'm05' banked is set to '0'

3. Level is only displayed for 1st player, (due to the half-arsed, temp fix, setup multi player for multiplayer


Multiplayer proggy
[PHP][==========================================]
[ RM Guild Miner 0.64 ]
[ by Rasta Magician ]
[==========================================]
[ Time Running : 50 Minutes And 36 Seconds ]
[ Total Loads : 5 ]
[==========================================]
[ RM Guild Miner 0.64 ]
[==========================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ m01 | True | 00:06:23 | 1 | 65 ]
[ m02 | True | 00:09:16 | 1 | 0 ]
[ m03 | True | 00:11:22 | 1 | 0 ]
[ m04 | True | 00:14:30 | 1 | 0 ]
[ m05 | True | 00:49:01 | 0 | 0 ]
[ —————————————– ]
[ m06 | True | 00:00:00 | 0 | 0 ]
[ m07 | True | 00:00:00 | 0 | 0 ]
[===========================================][/PHP]

I am trying to amend the script to mine mutliple loads before switching, as this is a great way to learn 'how to'. :) long way to go yet :)

Sir R. M8gic1an

2010-04-22 04:59:15

Added multiplayer and fixed the loads issue. I'll be uploading tonight.

[php]
[==========================================]
[ RM Guild Miner 0.641 ]
[ by Rasta Magician ]
[==========================================]
[ Time Running : 29 Minutes And 22 Seconds ]
[ Total Loads : 5 ]
[==========================================]
[ RM Guild Miner 0.641 ]
[==========================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ icia | True | 00:07:48 | 2 | 78 ]
[ rust | True | 00:27:08 | 3 | 67 ]
[===========================================]
[/php]

:) Thanks for the account RAM!

Edit: This proggy is only proof of concept, as I didn't want to kidnap RAM's account for too long :p
~RM

twobac

2010-04-22 12:50:51

Looking forward to this update :)

Proggy to follow

Nebuli

2010-04-23 03:37:33

Ok now I have discovered a problem. The script sometimes clicks on a rock, then seconds later clicks somewhere else on the screen and that of course fwcks up the mining.. S:

heres a sweet proggy. And I stopped it manually.. the mining is slow, probably because the problem I explained

[===================================================]
[ RM Guild Miner 0.64 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 6 Hours, 11 Minutes And 28 Seconds ]
[ Total Loads : 34 ]
[===================================================]
[ RM Guild Miner 0.64 ]
[===================================================]

Sir R. M8gic1an

2010-04-23 07:36:11

Uploaded V0.643

Includes Multiplayer, and a fix at random finding.

@Nebuli: I'll look into that. I've added a WhileMoving in there, so it shouldn't click again after it started moving.

~RM

twobac

2010-04-23 13:48:55

Where do you define which lamp skill is used? I could not see where this is set nor why it chose Mining?


Had a player in random Cap'n Arnav, SRL failed to solve. player gets logged out ok.
[php]Checking for randoms
***** STR: FOUND RANDOM: 'Cap'n Arnav' *****
Could not identify arnav objects!
***** STR: 'Cap'n Arnav' RANDOM SOLVING FAILED! *****
Player is not Active…
NextPlayer
[/php]

then the next player got the same random, but when thid failed and the player logged out, the script misssed the log out. the script kept on going on, but with the log on screen.

[php]***** STR: FOUND RANDOM: 'Cap'n Arnav' *****
Could not identify arnav objects!
***** STR: 'Cap'n Arnav' RANDOM SOLVING FAILED! *****
** Warning in FindSymbolThroughTPA: Could not find symbol**
Searching for Coal
SC Array: 7
Using Tol: 0
Search for: 2502962
Found total: 0
Search for: 1910310
Found total: 0
Search for: 2239532
Found total: 0
Search for: 1778467
Found total: 0
Search for: 2042153
Found total: 0
Search for: 2634804
Found total: 0
Search for: 2042153
Found total: 0
Using Tol: 10
Search for: 2502962
Found total: 6737
Search for: 1910310
Found total: 3113
Search for: 2239532
Found total: 3061
Search for: 1778467
Found total: 2297
Search for: 2042153
Found total: 3775
Search for: 2634804
Found total: 4203
Search for: 2042153
Found total: 3775
Relocating in Guild
Checking for randoms
Checking for randoms
** Warning in FindSymbolThroughTPA: Could not find symbol**
Checking for randoms
WalkOutGuild
Successfully executed //manually stopped
[/php]

Sir R. M8gic1an

2010-04-23 14:48:41

Oki, I'll be checking my loops to make sure there's enough 'logged out' failsafes. Thank you.

~RM

twobac

2010-04-24 12:08:26

Proggy

[PHP][=================================================]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[=================================================]
[ Time Running : 7 Hours, 1 Minutes And 7 Seconds ]
[ Total Loads : 25 ]
[=================================================]
[ RM Guild Miner 0.643 ]
[=================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ .1. | True | 00:25:27 | 2 | 65535 ]
[ .2. | True | 01:59:33 | 8 | 64 ]
[ .3. | True | 02:06:01 | 7 | 63 ]
[ .4. | True | 01:05:38 | 3 | 64 ]
[ .5. | True | 00:52:46 | 4 | 63 ]
[ —————————————– ]
[ .6. | True | 00:03:41 | 1 | 63 ]
[ .7. | True | 00:01:30 | 0 | 85 ]
[===========================================][/PHP]

error on level, I think due to a failed random?

definit;ly need more fail safes

[PHP]Checking for randoms
***** STR: FOUND RANDOM: 'Molly's Evil Twin' *****
Length of Cross Count = 81
Cross found at 259, 186
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 8 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 10 Up/Down
Length of Cross Count = 27
Cross found at 188, 95
Length of Cross Count = 27
Cross found at 188, 95
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 6 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 5 Up/Down
Length of Cross Count = 14
Cross found at 226, 50
Length of Cross Count = 14
Cross found at 226, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 13
Cross found at 227, 50
Length of Cross Count = 5
Cross found at 230, 52
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 11
Cross found at 233, 50
Length of Cross Count = 10
Cross found at 234, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 14
Cross found at 226, 50
Length of Cross Count = 14
Cross found at 226, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 13
Cross found at 226, 50
Length of Cross Count = 14
Cross found at 226, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 14
Cross found at 226, 50
Length of Cross Count = 14
Cross found at 226, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Length of Cross Count = 19
Cross found at 230, 50
Tile Width (perspective) is: 33.8
This means that the crosshair must be moved 7 Left/Right
Tile Width (perspective) is: 17.9
This means that the crosshair must be moved 3 Up/Down
Length of Cross Count = 19
Cross found at 230, 50
Successfully executed
[/PHP]
Not sure which player got caught, looked this morning and home page was displayed, along with web browser with about 25 tabs open on rs web site. (SRL issue not ur script).

:)

RAM

2010-04-24 19:17:34

From: twobac
Where do you define which lamp skill is used? I could not see where this is set nor why it chose Mining?


In your SRL folder…SRL.SCAR (just below CompileSRL.SCAR)…line 135 :)

twobac

2010-04-24 20:48:14

Cheers RAM :), thats good to know!

Almost a 6.43 proggy!
[PHP][===================================================]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 6 Hours, 34 Minutes And 58 Seconds ]
[ Total Loads : 28 ]
[===================================================]
[ RM Guild Miner 0.643 ]
[===================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ 001| True | 01:03:02 | 11 | 65 ]
[ 002| False | 01:01:01 | 5 | 64 ]
[ 003| False | 00:42:52 | 2 | 63 ]
[ 004| False | 00:10:46 | 1 | 64 ]
[ 005| False | 00:20:59 | 2 | 63 ]
[ —————————————– ]
[ 006| False | 00:58:41 | 5 | 63 ]
[ 007| False | 00:19:21 | 1 | 85 ]
[ 008| False | 00:11:51 | 1 | 79 ]
[===========================================][/PHP]

Players 2, 3, 5, 6, 7 - All 'Lost' (from SMS) - all located in Bank, empty inv.
Player 4 - 'Lost' (from SMS) - In guild with half full inv.
Player 8 - 'Lost' (from SMS) - In Bank with full inv.

Script has a few probs when carrying a Mith Pic, keeps looking for the uptext mine lol, not sure if you can fix that. I guess I better equip them with addy! lol.

Reset players 2 to 8, still going :)

p.s. Any idea what the pale blue dots are for on the MM? I was watching 2 other players on the MM and they had blue dots, rather than white ones?

Sir R. M8gic1an

2010-04-25 05:39:25

Ok, so I woke up to find my player actively in Port Sarim. I have no clue how long he was there for. This made me notice a big fail in the mainloop.

I'll be fixing that today, as well as adding better debug, and especially better debug for 'lost' so that I know where your players (twobac) failed.

They obviously were nowhere wrong, they just think they were for some reason. I need to know why :S because the bank sometimes does return false falses, but I've added so many failsafes to it that I'm finding it annoying that it might still fail.

Also, about avoiding your mith pic…
- 1 You're much better off with rune pics. If you can't equip them, someone made a small fix for that. I might be able to semi-take care of it today.
- 2 I'd have to change the structure of SmartColors.. which will require some though in order to not mess up the include.

~RM

Rich

2010-04-25 05:48:42

Off-topic: Twobac, blue dots are players wearing the same team cape as you :)

twobac

2010-04-25 08:45:37

Thanks R1ch, off course!!! :)

[php][====================================================]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[====================================================]
[ Time Running : 13 Hours, 12 Minutes And 48 Seconds ]
[ Total Loads : 49 ]
[====================================================]
[ RM Guild Miner 0.643 ]
[====================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ 001| False | 01:55:34 | 13 | 65 ]
[ 002| False | 01:31:21 | 8 | 64 ]
[ 003| True | 02:54:01 | 7 | 63 ]
[ 004| False | 00:41:02 | 3 | 64 ]
[ 005| False | 00:36:33 | 2 | 63 ]
[ —————————————– ]
[ 006| False | 02:10:39 | 9 | 63 ]
[ 007| False | 00:35:56 | 2 | 85 ]
[ 008| False | 00:56:17 | 5 | 79 ]
[===========================================][/php]

Latest run just stopped. not sure why?

last section of debug
[php]Loads: 49
Door on MM: 65
Checking for randoms
Searching for Mith
SC Array: 7
Using Tol: 0
Search for: 8085342
Found total: 0
Search for: 7559512
Found total: 4
Search for: 7493463
Found total: 0
Search for: 7362133
Found total: 0
Search for: 6770767
Found total: 0
Search for: 6902097
Found total: 0
Search for: 7559512
Found total: 4
Using Tol: 5
Search for: 8085342
Found total: 6
Search for: 7559512
Found total: 10
Search for: 7493463
Found total: 12
Search for: 7362133
Found total: 12
Search for: 6770767
Found total: 8
Search for: 6902097
Found total: 10
Search for: 7559512
Found total: 8
Searching for Coal
SC Array: 7
Using Tol: 0
Search for: 2239532
Found total: 2
Search for: 2371375
Found total: 6
Search for: 2503218
Found total: 0
Search for: 2371375
Found total: 0
Search for: 2371375
Found total: 0
Search for: 1910310
Found total: 0
Search for: 2503218
Found total: 0
Using Tol: 10
Search for: 2239532
Found total: 0
Search for: 2371375
Found total: 0
Search for: 2503218
Found total: 0
Search for: 2371375
Found total: 0
Search for: 2371375
Found total: 0
Search for: 1910310
Found total: 0
Search for: 2503218
Found total: 0
WalkOutGuild
Successfully executed
[/php] Last true player loc, in guild half inv. will check the others later on.

Sir R. M8gic1an

2010-04-25 09:24:56

Uploaded V0.65

Includes Unwielded pick and a fix @ Mainloop
PICK MUST BE IN INV SLOT #1

It also includes better debugging.

~RM

twobac

2010-04-25 12:56:32

Running now :)

E; When a player starts within the guild, the script does not setup the player in the same way as when in the bank.
i.e. the camera angle does not change.

E2; Watched the player go to the bank, open, bank all Coal then Bank all Mith, then close bank then log out. Maybe add a count inv to check inv changed?

[php]Gathered Colors
02:17:32 PM: Manic Miner 1: BorPScreen: True
02:17:32 PM: Manic Miner 1: in here
02:17:33 PM: Manic Miner 1: leaving False items in inv
02:17:33 PM: Manic Miner 1: BorPScreen: True
02:17:38 PM: Manic Miner 1: leaving False items in inv
02:17:38 PM: Manic Miner 1: BorPScreen: True
02:17:38 PM: Manic Miner 1: leaving False items in inv
02:17:38 PM: Manic Miner 1: BorPScreen: True
02:17:39 PM: Manic Miner 1: banking failed…. lag?
02:17:50 PM: Manic Miner 1: Unable to bank, going false
Player is not Active…
NextPlayer[/php]

Sir R. M8gic1an

2010-04-25 13:30:03

From: twobac
Running now :)

E; When a player starts within the guild, the script does not setup the player in the same way as when in the bank.
i.e. the camera angle does not change.

E2; Watched the player go to the bank, open, bank all Coal then Bank all Mith, then close bank then log out. Maybe add a count inv to check inv changed?

[php]Gathered Colors
02:17:32 PM: Manic Miner 1: BorPScreen: True
02:17:32 PM: Manic Miner 1: in here
02:17:33 PM: Manic Miner 1: leaving False items in inv
02:17:33 PM: Manic Miner 1: BorPScreen: True
02:17:38 PM: Manic Miner 1: leaving False items in inv
02:17:38 PM: Manic Miner 1: BorPScreen: True
02:17:38 PM: Manic Miner 1: leaving False items in inv
02:17:38 PM: Manic Miner 1: BorPScreen: True
02:17:39 PM: Manic Miner 1: banking failed…. lag?
02:17:50 PM: Manic Miner 1: Unable to bank, going false
Player is not Active…
NextPlayer[/php]


You had the pick in inventory?
Also, did you set the

Players[].Booleans[P_WIELDED] correctly? False if in Inv

edit: I think I found the bug. V0.652 coming right out.

~RM

Sir R. M8gic1an

2010-04-25 13:36:20

Download 0.652 :)

~RM

twobac

2010-04-25 19:48:03

sorry was using the declarePlayers from 0.643, i missed the new line.

running 0.652 now :)

NCDS

2010-04-26 13:31:49


01:20:18 AM: nick here: Full Load
Socket Error # 10060
Connection timed out.
Happened instantly when I got a full load, but the connection was fine? I was watching it at the time this happened.


[==========================================]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[==========================================]
[ Time Running : 49 Minutes And 14 Seconds ]
[ Total Loads : 6 ]
[==========================================]
[ RM Guild Miner 0.643 ]
[==========================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ ERR | True | 00:06:09 | 6 | 70 ]
[===========================================]
other than that, everything was working nicely :)

MylesMadness

2010-04-26 13:37:16

Its because stats are down. Thats why all the stat sigs look stupid

Benson

2010-04-26 13:46:23

Failed when compiling
Line 615: [Hint] (21712:1): Variable 'NEWCOLOR' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar
Line 615: [Hint] (21712:1): Variable 'CTS' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar
Line 1280: [Hint] (23478:1): Variable 'CINVCOUNT' never used in script C:\DOCUME~1\Dad\LOCALS~1\Temp\V0.652 - RM Guild Miner.scar
Line 1280: [Hint] (23478:1): Variable 'COLORCOUNT' never used in script C:\DOCUME~1\Dad\LOCALS~1\Temp\V0.652 - RM Guild Miner.scar
Line 1700: [Error] (23898:1): Unknown identifier 'WaitInvMaxCount' in script C:\DOCUME~1\Dad\LOCALS~1\Temp\V0.652 - RM Guild Miner.scar


I get this error when trying to compile.

NCDS

2010-04-26 13:55:50

From: Benson
Failed when compiling
Line 615: [Hint] (21712:1): Variable 'NEWCOLOR' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar
Line 615: [Hint] (21712:1): Variable 'CTS' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar
Line 1280: [Hint] (23478:1): Variable 'CINVCOUNT' never used in script C:\DOCUME~1\Dad\LOCALS~1\Temp\V0.652 - RM Guild Miner.scar
Line 1280: [Hint] (23478:1): Variable 'COLORCOUNT' never used in script C:\DOCUME~1\Dad\LOCALS~1\Temp\V0.652 - RM Guild Miner.scar
Line 1700: [Error] (23898:1): Unknown identifier 'WaitInvMaxCount' in script C:\DOCUME~1\Dad\LOCALS~1\Temp\V0.652 - RM Guild Miner.scar


I get this error when trying to compile.

Update your Scar/SRL.

http://villavu.com/forum/showthread.php?t=47714

twobac

2010-04-26 14:39:13

[php][===================================================]
[ RM Guild Miner 0.652 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 4 Hours, 42 Minutes And 40 Seconds ]
[ Total Loads : 24 ]
[===================================================]
[ RM Guild Miner 0.652 ]
[===================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ 1 | True | 00:47:28 | 4 | 65 ]
[ 2 | False | 01:01:39 | 6 | 65 ]
[ 3 | True | 00:36:08 | 2 | 63 ]
[ 4 | True | 00:21:39 | 2 | 64 ]
[ 5 | True | 00:26:01 | 2 | 63 ]
[ —————————————– ]
[ 6 | True | 00:33:19 | 3 | 63 ]
[ 7 | True | 00:27:54 | 2 | 85 ]
[ 8 | True | 00:24:03 | 3 | 79 ]
[===========================================][/php]
2 failed as he could not get out of the mine
debug
[php]01:12:38 AM: Manic Miner02: Couldn't Click Ladder
01:12:39 AM: Manic Miner02: Blind Click
01:13:42 AM: Manic Miner02: Logged Out - Failed WalkOutGuild
01:13:42 AM: Manic Miner02: Didn't manage to get out of guild
01:13:42 AM: Manic Miner02: ToBank
01:13:42 AM: Manic Miner02: Checking for randoms
NextPlayer
SwitchToPlayer(PlayerNo: 2, Active: False);
Welcome to Runescape.[/php]

Great script! :)

Benson

2010-04-28 01:56:37

From: NCDS
Update your Scar/SRL.

http://villavu.com/forum/showthread.php?t=47714


Thanks for the guide, Everything worked out great. Um, question: if I got my SRL stats id and password say, 2 years ago, and cannot remember it, where would I go to find/recover it? i tried searching the forums using the search function but it seems every script thread ever made has reference to stats.

enig.ma

2010-04-28 03:16:37



[==================================================]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[==================================================]
[ Time Running : 8 Hours, 48 Minutes And 6 Seconds ]
[ Total Loads : 68 ]
[==================================================]
[ RM Guild Miner 0.643 ]
[==================================================]
[============================================]
[ Nick | Active | Worked | Banked | Level ]
[============================================]
[ masp | True | 02:45:30 | 68 | 67 ]



great script. its still going. Only thing is the time running shows 8+hours which is correct, but the worked time showed 2+hours.

There was no rest.

Thanks for the great script RM!

edit: The press f12 for chat is amazing!

Sir R. M8gic1an

2010-04-28 03:59:28

From: Benson
Thanks for the guide, Everything worked out great. Um, question: if I got my SRL stats id and password say, 2 years ago, and cannot remember it, where would I go to find/recover it? i tried searching the forums using the search function but it seems every script thread ever made has reference to stats.


There is a new stats system.
http://scriptmanager.freehostia.com/index.php

@Enigma: Thank you :)

~RM

Benson

2010-04-28 11:32:28

[==================================================]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[==================================================]
[ Time Running : 8 Hours, 22 Minutes And 0 Seconds ]
[ Total Loads : 25 ]
[==================================================]
[ RM Guild Miner 0.643 ]
[==================================================]

About to check if those are the correct amount banked and such. If it is how would i mod it to make it faster?

Sir R. M8gic1an

2010-04-28 13:20:28

From: Benson
[==================================================]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[==================================================]
[ Time Running : 8 Hours, 22 Minutes And 0 Seconds ]
[ Total Loads : 25 ]
[==================================================]
[ RM Guild Miner 0.643 ]
[==================================================]

About to check if those are the correct amount banked and such. If it is how would i mod it to make it faster?


Set yourself up in an empty world, and make yourself a IsRockGone function ;) Nice progress report. Do notice that guild mining takes its time depending on mining level and the crowd around you.

~RM

NCDS

2010-04-28 13:43:20

Seems that today when I run it (with updated SRL), it checks the music tab after every click and debugs "Checking for randoms".

I don't remember it doing that the other day? nor would I imagine you would want it to do that.

Edit: The above comment can now be ignored ;)

Sir R. M8gic1an

2010-04-28 17:47:11

From: NCDS
Seems that today when I run it (with updated SRL), it checks the music tab after every click and debugs "Checking for randoms".

I don't remember it doing that the other day? nor would I imagine you would want it to do that.

Edit: The above comment can now be ignored ;)


I imagine that would be SRL thinking there's a random..

~RM

Benson

2010-04-29 02:43:24

Sweet, I'll look up a tutorial to work on an IsRockGone function. Yea, mining can take some time but i was watching it for a while, and it think it was srl/the script being a little slow finding rocks. Regardless, i'll see what i can mod up and hopefully still have it compile and i'll run it tomorrow night. Currently running csGuld miner to get them a proggy :D

PS: anyway to increase the time between breaks? or minimize the breaks? I couldn't find it in the script. knowing my scripting skill level however it's probably right in front of my nose.

NCDS

2010-04-29 14:15:03

From: Rasta Magician
I imagine that would be SRL thinking there's a random..

~RM


Yeah my apologies. Apparently there was a bug in SRL's anti randoms yesterday.
Thats why I put:
From: NCDS
Edit: The above comment can now be ignored

:p

Benson

2010-04-29 22:26:44

Failed when compiling
Line 615: [Hint] (21712:1): Variable 'NEWCOLOR' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar
Line 615: [Hint] (21712:1): Variable 'CTS' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar
Line 1280: [Hint] (23478:1): Variable 'CINVCOUNT' never used in script
Line 1280: [Hint] (23478:1): Variable 'COLORCOUNT' never used in script
Line 1700: [Error] (23898:1): Unknown identifier 'WaitInvMaxCount' in script

Runescape was updated, you might have to update your hooks or some part of the script :D just thought i'd throw a heads-up :D

i luffs yeww

2010-04-29 22:40:02

^


Successfully compiled (6052 ms)
Line 1280: [Hint] (24692:1): Variable 'CINVCOUNT' never used in script
Line 1280: [Hint] (24692:1): Variable 'COLORCOUNT' never used in script

wat

(Also, I just noticed that those have a space at the end. Huh. Never noticed. :p)

Benson

2010-04-29 23:58:13

Ok, so my problem lies in this:

I went through the process that cohen i believe laid out to download scar/srl properly. However i cannot download scripts unless i have scar 3.22 installed… but for some reason 3.22 is also the default scar on my computer and opens all the scripts. I just had it opened in that by mistake, it compiled now. However, how do i fix this "having to have scar3.22" installed thinger, cause its really becoming a hassle

i luffs yeww

2010-04-30 00:46:03

Open SCAR 3.23, go to Tools > Associate .scar files. :)

Sir R. M8gic1an

2010-04-30 08:07:45

No hooks updating needed here ;) I don't use reflection :P

~RM

Benson

2010-04-30 11:56:29

ok, :D here comes the epic proggggggy :D


[====================================================]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[====================================================]
[ Time Running : 11 Hours, 47 Minutes And 31 Seconds ]
[ Total Loads : 43 ]
[====================================================]
[ RM Guild Miner 0.643 ]
[====================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ kind | True | 00:17:18 | 43 | 74 ]
[===========================================]


Nice script. Was still working when i stopped it, but since i'm only using one character i didn't want to auto more then 12 hours …that's a little suspicious. it was sleeping when i decided to make it stop :D great run :D

Benson

2010-05-02 12:34:59

09:34:19 AM: ckindy: Entering Bank function
09:34:19 AM: ckindy: Checking for randoms
09:34:23 AM: ckindy: entering func InGuild
09:34:23 AM: ckindy: Checking for randoms
09:34:27 AM: ckindy: In Guild? False
09:34:27 AM: ckindy: Black Points: 126
09:34:28 AM: ckindy: In Guild? False
09:34:28 AM: ckindy: Black Points: 124
09:34:28 AM: ckindy: In Guild? False
09:34:28 AM: ckindy: Black Points: 122
09:34:28 AM: ckindy: banking
09:34:28 AM: ckindy: BorPScreen: False
SC Array: 6
Using Tol: 0
Search for: 4020591
Found total: 62
Found with color number: 0
09:34:33 AM: ckindy: BorPScreen: True
09:34:33 AM: ckindy: in here
09:34:34 AM: ckindy: leaving False items in inv
09:34:34 AM: ckindy: BorPScreen: True
09:34:37 AM: ckindy: Banked..
09:34:47 AM: ckindy: Unable to bank, going false
Successfully executed

Failed after 11 Hours, heres the proggy:

[===================================================]
[ RM Guild Miner 0.643 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 11 Hours, 4 Minutes And 28 Seconds ]
[ Total Loads : 35 ]
[===================================================]
[ RM Guild Miner 0.643 ]
[===================================================]
[===========================================]
[ Nick | Active | Worked | Banked | Level ]
[===========================================]
[ kind | True | 00:20:17 | 35 | 75 ]
[===========================================]

good script :D

Sir R. M8gic1an

2010-05-02 12:56:00

Nice proggies man :D Thanks so much ^.^

~RM

Sir R. M8gic1an

2010-05-05 09:27:45

Great improvements today guys!

V0.7
First big thing is FollowRock1 :)
This is a newly made function from scratch that follows the rock. For our own pleasure, it now paints it on Smart for us to see how well it is doing. This is how cool it looks:

This functions does not affect the work flow for now, as it only seems to be 85%ish accurate. I want to add an extra failsafe function into it before I make it affect the work flow. But you can already see how good it will be:)
Also, if you leave me feedback of which cases it fails at, that would be useful :)

Adding on to that, The work flow breaker, F11 !!
Basically, if you're watching your miner, and someone steals his rock, jsut press F11 and it'll start looking for another rock :)

~RM

NCDS

2010-05-05 10:18:52

Awesome updates!

That f11 deal is a pretty good idea!

Sir R. M8gic1an

2010-05-05 10:31:12

Just a small post on how I'll be including these new functions into the workflow:

These new functionsaren't and hardly will ever be 100%. I'm aiming to get it around 95% ish accurate. In order for this not to detract from the scripts quality in any way, these functions will only affect the work flow when they are 100% sure that they detected it right.

Meaning that if the function isn't sure if it detected everything correctly, then it won't affect the work flow.

Result:
95% of the times it'll be faster.
the other 5% it'll be as fast as it is right now :)

No losses! (hopefully)

edit: When the function is sure it detected correctly, the green box pops up. Otherwise it just debugs the TPA in red.

edit 2: For those testing, the most important information I need is this: Does the green box ever show up in the wrong place?

~RM :)

————————

V 0.71

Ok guys, today I won't have any more time.
Follow rock is still not yet perfect, but on those situations when it fails it doesn't affect the work flow.

I've added IsRockHere, which is closer to being perfect (haven't had the time to test too extensively).

The work flow is now affected. I've been watching it run, and it really does wonders.
If you find that it is malfunctioning, reverse to version V0.7, otherwise enjoy :)

~RM

————————–

#5 in script Stats :D

Thank you guys :)

~RM

Sir R. M8gic1an

2010-05-08 06:02:33

[php]
[==================================================]
[ RM Guild Miner 0.73 ]
[ by Rasta Magician ]
[==================================================]
[ Time Running : 8 Hours, 8 Minutes And 44 Seconds ]
[ Total Loads : 39 ]
[==================================================]
[ RM Guild Miner 0.73 ]
[==================================================]
[=================================================]
[ Nick | Active | Worked | Banked | Level | Loc ]
[=================================================]
[ icia | True | 00:23:46 | 39 | 80 | ]
[=================================================]
[/php]

***** STR: FOUND RANDOM: 'Prison Pete' *****
***** STR: 'Prison Pete' RANDOM SOLVING FAILED! *****
Finishing loop… :(


v 0.73
Improved FollowRock Algorithm
Improved Color Management
Stopped Script from clicking InBlackGuild.

{ RM --------------------------------------------------------------------------]
[ Does not move mouse onto 'BlackGuildMap'; Else moves normally. ]
[------------------------------------------------------------------------------}
function RMMMouse(x, y, rx, ry: integer; RMClick: (LeftC, RightC, Move)): boolean;
var
xb, yb, CTS: integer;
h, s: extended;
begin
GetCTS(CTS, h, s);
SetCTS(1, 0.20, 0.20);
for xb := 0 to 2 do
begin
for yb:= 0 to 2 do
if not SimilarColors(GetColor(x+ xb, y + yb), MM_BLACK, 10) then
break
else
writeln(GetColor(x+ xb, y + yb));

if (yb < 3) then break;
end;

if (xb < 3) then
case RMClick of
LeftC : Mouse(x, y, rx, ry, true);
RightC : Mouse(x, y, rx, ry, false);
Move : MMouse(x, y, rx, ry);
end
else exit;

Result := true;

SetCTS(CTS, h, s);
end;

Enjoy guys :D

~RM

Town

2010-05-09 10:56:43

You may want to make an option for whether or not to draw on the canvas. For whatever reason, Scar crashed after about an hour with those running.

Otherwise, still going strong.

Also, I've seen the green box show up over rocks with no ore. That causes the miner to stay there until ore comes back in the rock while it pretends to mine.

Sir R. M8gic1an

2010-05-09 11:01:39

From: Town
You may want to make an option for whether or not to draw on the canvas. For whatever reason, Scar crashed after about an hour with those running.

Otherwise, still going strong.

Also, I've seen the green box show up over rocks with no ore. That causes the miner to stay there until ore comes back in the rock while it pretends to mine.


I guess people can just disable debug once the script starts, like you did.
As for the green box.. that's rather unexpected, as IsRockGone paints a blue box when it returns true.

~RM

mastaraymond

2010-05-12 19:12:06

Heya! Been running it a few things I noticed.. It was busy in the mine, so all the rocks were mined.. As a result the script logged out :(.

Also, it doesn't seem to detect whether a rock is gone.. The green box covers the rock pretty much, but it never turned blue (did turn Red sometimes).

Also, when it goes up (in the mine) to much it seems to click on the MM instantly, instead of checking whether there is a coal rock available. (Might even want to check the bottom of the screen only if you want to make sure it's behind the fence?)

Other than that it seems to be running pretty smooth.

Ha! Fixed 'the' bug..


if not (InvCount > SCount) then
Instead of
if not InvCount > SCount
As that would do the bitwise not operation on InvCount before comparing.

Sir R. M8gic1an

2010-05-12 19:27:36

From: mastaraymond
Heya! Been running it a few things I noticed.. It was busy in the mine, so all the rocks were mined.. As a result the script logged out :(.

Also, it doesn't seem to detect whether a rock is gone.. The green box covers the rock pretty much, but it never turned blue (did turn Red sometimes).

Also, when it goes up (in the mine) to much it seems to click on the MM instantly, instead of checking whether there is a coal rock available. (Might even want to check the bottom of the screen only if you want to make sure it's behind the fence?)

Other than that it seems to be running pretty smooth.


My char died, so I won't be checking anything out anytime soon :(

If it didn't turn blue it means that between the FollowRock and IsRockHere functions, where a TPoint is passed between them to keep track of it, it somehow lost it.

I was going to write a ReCaptureRock function, as sometimes lag also makes it lose the rock..


The reason why it goes back down the guild it because at that distance you (usually) either don't have rocks or have the torches, which are the same color as the coal.

If there is no coal but the torches are there, the script will believe the torches to be coal rocks. This is due to the way SmartColors is setup, but is a small drawback compared to using another TPA algorithm. SmartColors pretty much won't hover over any players wearing black, etc, whereas nearly every other algo would.

~RM

Sir R. M8gic1an

2010-05-12 19:29:04

From: mastaraymond


Ha! Fixed 'the' bug..


if not (InvCount > SCount) then
Instead of
if not InvCount > SCount
As that would do the bitwise not operation on InvCount before comparing.


And what was that causing to bug :confused:

(that loop never seemed to fail for me.. :p)

~RM

mastaraymond

2010-05-12 19:34:27

From: Rasta Magician
And what was that causing to bug :confused:

(that loop never seemed to fail for me.. :p)

~RM

Yeah that bugs me, I guess PS just randomly choses whatever it likes :p.

About the torches; I guess you could easily filter them out of the results.

If you find a possible rock spot, just create a box around it and look for the 'flame' color, if it appears too much, it must kinda be a torch. You could even check if the flame color tends to shift a lot (as it moves).. And beside that flame check, you could check if inside this box is some 'rock' color, that light brown as the torches are surrounded by the darker brown. Should filter out the torches.

mastaraymond

2010-05-12 19:39:03

Ah! I found out why that wouldn't fail before…

InvCount used to return a Byte, which like I stated here: http://villavu.com/forum/showthread.php?p=709574 , should be avoided..

Because Bytes don't have negative numbers, the not operation made the byte some high number (like 250).. Which is always bigger than SCount, and therefore it would work. However, in the latest SVN I swapped the byte for an Integer.. Doing a not operation on an integer makes the Int a negative number, which is never bigger than SCount. Therefore it would fail in combination with the latest SRL :p.

Sir R. M8gic1an

2010-05-12 19:46:01

I guess everyday you learn something.

For others to see:

var i: integer;

begin
i := 5;
writeln(i);
writeln(not i);
writeln(not (i));
writeln(not i < 6);
writeln(not (i < 6));
end.


Successfully compiled (105 ms)
5
-6
-6
1
0
Successfully executed


~RM

mastaraymond

2010-05-13 05:28:06

So, here's a Diff file to make it compatible with Simba. Added a define for SmartDebug; Made it SetRun false on the way back to the bank, Set Run true on the way to the guild.. And when inside the guild made it SetRun true if it has >= 70 energy. Oh, and made the debug function write the time it's running, rather than the local time (not sure if you like that).

--- C:/Remake/Scripts/V0.73 - RM Guild Miner.scar	do mei 13 11:15:00 2010
+++ C:/Remake/Scripts/V0.73 - RM Guild Miner.simba do mei 13 11:24:56 2010
@@ -20,6 +20,8 @@
Unwielded pick
}

+{$define SmartDebug}
+{$define SimbaDebugConsole}
const
//SRL Stats
SCRIPT_ID = '43';
@@ -166,6 +168,13 @@
COLOR_OUT_LADDER = 3958140;
COLOR_IN_LADDER = 3754838;

+{$ifndef Smart}
+{$undef SmartDebug}
+{$endif}
+
+{$ifndef Simba}
+{$undef SimbaDebugConsole}
+{$endif}

type
TMode = record
@@ -530,8 +539,14 @@
begin
if SCRIPT_DEBUG then
begin
- writeln(TheTime+': '+Players[CurrentPlayer].Name+': '+What);
+ {$ifdef SimbaDebugConsole}
+ DebugLn('[' + MsToTime(GetTimeRunning,Time_Bare)+']: '+Players[CurrentPlayer].Name+': '+What);
+ {$else}
+ Writeln('[' + MsToTime(GetTimeRunning,Time_Bare)+']: '+Players[CurrentPlayer].Name+': '+What);
+ {$endif}
+ {$ifndef Simba}
DisGuise(What);
+ {$endif}
end;
end;

@@ -637,21 +652,30 @@
[ Clears Canvas ]
[------------------------------------------------------------------------------}
Procedure ClearSmartPaint(canvas: TCanvas);
+{$ifdef SmartDebug}
var
CleanBMP: integer;
+{$endif}
begin
+ {$ifdef SmartDebug}
CleanBMP := BitmapFromString(MIX2, MIY2, '');
+ {$ifdef Simba}
+ DrawBitmap(CleanBMP,Canvas,0,0);
+ {$else}
SafeDrawBitmap(CleanBMP, canvas, 0, 0);
+ {$endif}

try
FreeBitmap(CleanBMP);
except end;
+ {$endif}
end;

{ caused edited by RM ---------------------------------------------------------]
[ Paint a TPA onto the Smart Debug Canvas ]
[------------------------------------------------------------------------------}
procedure DrawDots(pixels : TpointArray);
+{$ifdef SmartDebug}
var
i : integer;
drawing : TBitmap;
@@ -671,12 +695,16 @@
try
FreeBitmap(drawing);
except end;
+{$else}
+begin
+{$endif}
end;

{ RM based on DrawBoxes by caused ---------------------------------------------]
[ Draws a box, Rock size. ]
[------------------------------------------------------------------------------}
procedure DrawBox(Box: TPointArray; color: TColor);
+{$ifdef SmartDebug}
var
drawing : TBitmap;
TP : TPoint;
@@ -701,6 +729,9 @@
try
FreeBitmap(drawing);
except end;
+{$else}
+begin
+{$endif}
end;

{ RM --------------------------------------------------------------------------]
@@ -708,7 +739,9 @@
[------------------------------------------------------------------------------}
Procedure ProgressReport;
begin
+ {$ifndef Simba}
ClearReport;
+ {$endif}

PTime.CurrTime := GetSystemTime - PTime.StartTime;
Players[CurrentPlayer].Worked := PTime.PreviousTime + PTime.CurrTime;
@@ -836,7 +869,7 @@

{ RM --------------------------------------------------------------------------]
[ Sets the different mining modes ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
procedure SetMode(myMode: integer);
begin
case myMode of
@@ -866,7 +899,7 @@
{ RM --------------------------------------------------------------------------]
[ Results true if sentence matches one of the texts. Uses Pos. Returns the ]
[ Array index. ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Function InStrArrExPosReverse(S: String; StrArr: TStringArray; Var Where: Integer): Boolean;
Var
I, H: Integer;
@@ -1263,7 +1296,7 @@
begin
RMDebug('walking to ' + IntToStr(where));

- SetRun(true);
+// SetRun(true);

if Where = SYMBOL_BANK then
TP := Point(MMCX - 10, MMCY - 35)
@@ -1394,6 +1427,7 @@
begin
if not LoggedIn then exit;
RMDebug('WalkOutGuild');
+ SetRun(false);

if not InvFull then exit;

@@ -1464,7 +1498,7 @@

{ RM --------------------------------------------------------------------------]
[ Keeps track of rock while player moves around ]
-{------------------------------------------------------------------------------}
+ ------------------------------------------------------------------------------}
Function FollowRock(Rock: integer; var ThePoint: TPoint): boolean;
var
ATPA: T2DPointArray;
@@ -1538,14 +1572,13 @@

{ RM --------------------------------------------------------------------------]
[ Checks if the Rock we are mining still has ore ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Function IsRockHere(Rock, SCount: integer; Where: TPoint): boolean;
var
timer: integer;
Box: TBox;
TPA: TPointArray;
begin
-
//Avoids errors if it wrongly located the rock
if Distance(Where.x, Where.y, MSCX, MSCY) > 50 then
begin
@@ -1588,7 +1621,7 @@

{ RM --------------------------------------------------------------------------]
[ Mines Ore ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Function MineOre(var which: integer): boolean;
var
TP: TPoint;
@@ -1616,7 +1649,7 @@

{ RM --------------------------------------------------------------------------]
[ Mining Loop ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Procedure MineLoop;
var
Timer, ThePlace, TheRock, TTime, SCount, SwitchTimes: integer;
@@ -1635,6 +1668,7 @@

repeat
RMRandoms(true);
+ RunEnergy(70);
if not LoggedIn then exit;

//will only be useful when there is multiplayer or world switching.
@@ -1726,15 +1760,14 @@
RMDebug('Waiting for rock aborted by user');
break;
end;
-
- if not InvCount > SCount then
+ if not (InvCount > SCount) then
if Followed then
if not IsRockHere(TheRock, SCount, RockPoint) then
begin
RMDebug('Rock not here');
break;
end;
-
+
if GetSystemTime > Timer then
begin
RMDebug('Rock took too long');
@@ -1793,6 +1826,8 @@
Result := false;

RMDebug('ToGuild');
+
+ SetRun(true);

RMRandoms(true);

@@ -2116,7 +2151,7 @@

{ RM --------------------------------------------------------------------------]
[ Prepares the Player for Mining ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Procedure SetupPlayer;
begin
TimeGoing := (GetSystemTime + FIXED_TIME*60*1000 + Random(RAND_TIME*60*1000));
@@ -2137,7 +2172,7 @@

{ RM --------------------------------------------------------------------------]
[ Sets up All necessities ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Procedure SetupScript;
begin
Smart_Server := RM_SERVER;
@@ -2165,10 +2200,16 @@
Stats_ScriptID := SCRIPT_ID;
Stats_UserID := USER_ID;
Stats_Password := USER_PW;
-
+
+ {$ifndef Simba}
ClearReport;
+ {$else}
+ AddOnTerminate('ProgressReport');
+ {$endif}
AddToReport(IntToStr(RMColors[_Coal].Color));
+ {$ifdef SmartDebug}
SmartSetDebug(True);
+ {$endif}

end;

@@ -2233,4 +2274,4 @@
until(AllPlayersInactive)
FreeDTM(BankDTM);
writeln('Finishing loop... :( ');
-end.
\ No newline at end of file
+end.

Sir R. M8gic1an

2010-05-13 07:38:31

From: mastaraymond
So, here's a Diff file to make it compatible with Simba. Added a define for SmartDebug; Made it SetRun false on the way back to the bank, Set Run true on the way to the guild.. And when inside the guild made it SetRun true if it has >= 70 energy. Oh, and made the debug function write the time it's running, rather than the local time (not sure if you like that).

--- C:/Remake/Scripts/V0.73 - RM Guild Miner.scar	do mei 13 11:15:00 2010
+++ C:/Remake/Scripts/V0.73 - RM Guild Miner.simba do mei 13 11:24:56 2010
@@ -20,6 +20,8 @@
Unwielded pick
}

+{$define SmartDebug}
+{$define SimbaDebugConsole}
const
//SRL Stats
SCRIPT_ID = '43';
@@ -166,6 +168,13 @@
COLOR_OUT_LADDER = 3958140;
COLOR_IN_LADDER = 3754838;

+{$ifndef Smart}
+{$undef SmartDebug}
+{$endif}
+
+{$ifndef Simba}
+{$undef SimbaDebugConsole}
+{$endif}

type
TMode = record
@@ -530,8 +539,14 @@
begin
if SCRIPT_DEBUG then
begin
- writeln(TheTime+': '+Players[CurrentPlayer].Name+': '+What);
+ {$ifdef SimbaDebugConsole}
+ DebugLn('[' + MsToTime(GetTimeRunning,Time_Bare)+']: '+Players[CurrentPlayer].Name+': '+What);
+ {$else}
+ Writeln('[' + MsToTime(GetTimeRunning,Time_Bare)+']: '+Players[CurrentPlayer].Name+': '+What);
+ {$endif}
+ {$ifndef Simba}
DisGuise(What);
+ {$endif}
end;
end;

@@ -637,21 +652,30 @@
[ Clears Canvas ]
[------------------------------------------------------------------------------}
Procedure ClearSmartPaint(canvas: TCanvas);
+{$ifdef SmartDebug}
var
CleanBMP: integer;
+{$endif}
begin
+ {$ifdef SmartDebug}
CleanBMP := BitmapFromString(MIX2, MIY2, '');
+ {$ifdef Simba}
+ DrawBitmap(CleanBMP,Canvas,0,0);
+ {$else}
SafeDrawBitmap(CleanBMP, canvas, 0, 0);
+ {$endif}

try
FreeBitmap(CleanBMP);
except end;
+ {$endif}
end;

{ caused edited by RM ---------------------------------------------------------]
[ Paint a TPA onto the Smart Debug Canvas ]
[------------------------------------------------------------------------------}
procedure DrawDots(pixels : TpointArray);
+{$ifdef SmartDebug}
var
i : integer;
drawing : TBitmap;
@@ -671,12 +695,16 @@
try
FreeBitmap(drawing);
except end;
+{$else}
+begin
+{$endif}
end;

{ RM based on DrawBoxes by caused ---------------------------------------------]
[ Draws a box, Rock size. ]
[------------------------------------------------------------------------------}
procedure DrawBox(Box: TPointArray; color: TColor);
+{$ifdef SmartDebug}
var
drawing : TBitmap;
TP : TPoint;
@@ -701,6 +729,9 @@
try
FreeBitmap(drawing);
except end;
+{$else}
+begin
+{$endif}
end;

{ RM --------------------------------------------------------------------------]
@@ -708,7 +739,9 @@
[------------------------------------------------------------------------------}
Procedure ProgressReport;
begin
+ {$ifndef Simba}
ClearReport;
+ {$endif}

PTime.CurrTime := GetSystemTime - PTime.StartTime;
Players[CurrentPlayer].Worked := PTime.PreviousTime + PTime.CurrTime;
@@ -836,7 +869,7 @@

{ RM --------------------------------------------------------------------------]
[ Sets the different mining modes ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
procedure SetMode(myMode: integer);
begin
case myMode of
@@ -866,7 +899,7 @@
{ RM --------------------------------------------------------------------------]
[ Results true if sentence matches one of the texts. Uses Pos. Returns the ]
[ Array index. ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Function InStrArrExPosReverse(S: String; StrArr: TStringArray; Var Where: Integer): Boolean;
Var
I, H: Integer;
@@ -1263,7 +1296,7 @@
begin
RMDebug('walking to ' + IntToStr(where));

- SetRun(true);
+// SetRun(true);

if Where = SYMBOL_BANK then
TP := Point(MMCX - 10, MMCY - 35)
@@ -1394,6 +1427,7 @@
begin
if not LoggedIn then exit;
RMDebug('WalkOutGuild');
+ SetRun(false);

if not InvFull then exit;

@@ -1464,7 +1498,7 @@

{ RM --------------------------------------------------------------------------]
[ Keeps track of rock while player moves around ]
-{------------------------------------------------------------------------------}
+ ------------------------------------------------------------------------------}
Function FollowRock(Rock: integer; var ThePoint: TPoint): boolean;
var
ATPA: T2DPointArray;
@@ -1538,14 +1572,13 @@

{ RM --------------------------------------------------------------------------]
[ Checks if the Rock we are mining still has ore ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Function IsRockHere(Rock, SCount: integer; Where: TPoint): boolean;
var
timer: integer;
Box: TBox;
TPA: TPointArray;
begin
-
//Avoids errors if it wrongly located the rock
if Distance(Where.x, Where.y, MSCX, MSCY) > 50 then
begin
@@ -1588,7 +1621,7 @@

{ RM --------------------------------------------------------------------------]
[ Mines Ore ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Function MineOre(var which: integer): boolean;
var
TP: TPoint;
@@ -1616,7 +1649,7 @@

{ RM --------------------------------------------------------------------------]
[ Mining Loop ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Procedure MineLoop;
var
Timer, ThePlace, TheRock, TTime, SCount, SwitchTimes: integer;
@@ -1635,6 +1668,7 @@

repeat
RMRandoms(true);
+ RunEnergy(70);
if not LoggedIn then exit;

//will only be useful when there is multiplayer or world switching.
@@ -1726,15 +1760,14 @@
RMDebug('Waiting for rock aborted by user');
break;
end;
-
- if not InvCount > SCount then
+ if not (InvCount > SCount) then
if Followed then
if not IsRockHere(TheRock, SCount, RockPoint) then
begin
RMDebug('Rock not here');
break;
end;
-
+
if GetSystemTime > Timer then
begin
RMDebug('Rock took too long');
@@ -1793,6 +1826,8 @@
Result := false;

RMDebug('ToGuild');
+
+ SetRun(true);

RMRandoms(true);

@@ -2116,7 +2151,7 @@

{ RM --------------------------------------------------------------------------]
[ Prepares the Player for Mining ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Procedure SetupPlayer;
begin
TimeGoing := (GetSystemTime + FIXED_TIME*60*1000 + Random(RAND_TIME*60*1000));
@@ -2137,7 +2172,7 @@

{ RM --------------------------------------------------------------------------]
[ Sets up All necessities ]
-{------------------------------------------------------------------------------}
+[------------------------------------------------------------------------------}
Procedure SetupScript;
begin
Smart_Server := RM_SERVER;
@@ -2165,10 +2200,16 @@
Stats_ScriptID := SCRIPT_ID;
Stats_UserID := USER_ID;
Stats_Password := USER_PW;
-
+
+ {$ifndef Simba}
ClearReport;
+ {$else}
+ AddOnTerminate('ProgressReport');
+ {$endif}
AddToReport(IntToStr(RMColors[_Coal].Color));
+ {$ifdef SmartDebug}
SmartSetDebug(True);
+ {$endif}

end;

@@ -2233,4 +2274,4 @@
until(AllPlayersInactive)
FreeDTM(BankDTM);
writeln('Finishing loop... :( ');
-end.
\ No newline at end of file
+end.


Well I'd be happy to add a .simba to the first post with full credit to you, if you feel like posting it ;)

~RM

mastaraymond

2010-05-13 09:50:56

From: Rasta Magician
Well I'd be happy to add a .simba to the first post with full credit to you, if you feel like posting it ;)

~RM

Ah, don't worry about the credits; A working script is all that matters ;).

Here you go (besides, this works in Simba and SCAR, no need for a special Simba version ;)).


{ Last Updated: 11:32 GMT 7th May 2010 }
// RM
// Guild Miner
{$define SMART}
{.include srl/srl.scar}
{.include srl/srl/misc/SmartColors.scar}
{.include srl/srl/misc/Reports.scar}


{||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}
{|||| REMEMBER TO ALWAYS USE THE LATEST DEVELOPER REVISION |||}
{||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||}

{
avoid rocks with animation
magic mining
detecting where players are far from rocks
avoid clicking black guild
WhileMining
Unwielded pick
}

{$define SmartDebug}
{$define SimbaDebugConsole}
const
//SRL Stats
SCRIPT_ID = '43';
USER_ID = '';
USER_PW = '';

//Custom Vars
STATS_LOADS = 1;

//Player Modifiable
//Debug
SCRIPT_DEBUG = true; //false to not debug. I WILL NOT BE ABLE TO PROPERLY HELP YOU WITHOUT DEBUG
//SMART
RM_SERVER = 124; //SMART Server
RM_SIGNED = True;

//Playing time per player (minutes)
FIXED_TIME = 20; //minimum time it will run
RAND_TIME = 10; // + random(RAND_TIME)

DETECT_ROCK_TIME = 750;

//UpText waits
UT_WAIT_FRENZY = 300;
UT_WAIT_FAST = 600;
UT_WAIT_HUMAN = 1000;

//InvCount waits
IC_WAIT_FRENZY = 10000;
IC_WAIT_FAST = 15000;
IC_WAIT_HUMAN = 7000;

//Random wait after rock
R_WAIT_FRENZY = 300;
R_WAIT_FAST = 500;
R_WAIT_HUMAN = 750;

//Script Management
MIN_DOOR_DIST = 55; //Distance to Guild Door
MAX_BANK_TRIES = 2; //Attempts to bank before going false
WALK_ATTEMPTS = 2; //Attempts to walk ToBank or ToGuild before going false


//Script Only
AUTHOR = 'Rasta Magician';
VERSION = '0.73';
SCRIPT_NAME = 'RM Guild Miner';


//Player Indexes

//bools
P_WIELDED = 0;

//ints
P_MITHP = 0; // x / 100 to check for mith
P_BANK_TRIES = 1;

W_GUILD = 2; //Attempts to walk to Guild
W_BANK = 3; //Attempts to walk to bank

//Location Indexes
LOC_BANK = 0;
LOC_OUT = 1;
LOC_GUILD = 2;

//Inside Guild Locs
GUILD_ENTRANCE = 3;
GUILD_LEFT = 4;
GUILD_CENTER = 5;
GUILD_TOP = 6;

//Symbols
SYMBOL_BANK = 0;
SYMBOL_DUNGEON = 1;
SYMBOL_MINING = 3;

//SmartColors indexes
ROCK_COAL = 0;
ROCK_MITH = 1;

LADDER_OUTSIDE = 2;
LADDER_INSIDE = 3;

BANK_BOOTH = 4;

//Black Counts
PICK_BLACK_COUNT = 95;

//PickAxe Indexes
AXE_BRONZE = 0;
AXE_IRON = 1;
AXE_STEEL = 2;
AXE_MITH = 3;
AXE_ADDY = 4;
AXE_RUNE = 5;
AXE_DRAGON = 6;

//PickAxe Level Requirements
LVL_BRONZE = 1;
LVL_IRON = 1;
LVL_STEEL = 6;
LVL_MITH = 21;
LVL_ADDY = 31;
LVL_RUNE = 41;
LVL_DRAGON = 61;

//Mining Mode
FRENZY = 0;
FAST = 1;
HUMAN = 2;

//Mining Stages
STAGE_TO_ROCK = 0;
STAGE_WAIT_ROCK = 1;

//Mining Messages & Indexes
SWING_PICK = 0;
MANAGE_MINE = 1;
NO_ORE = 2;

MSG_SWING_PICK = 'swing your pick' ;
MSG_MANAGE_MINE = 'manage to mine' ;
MSG_NO_ORE = 'no ore currently';

//Preset Colors
BLACK_OUTLINE = 65536;
SYMBOL_OUTLINE = 65536;
SYMBOL_FILL = 12632256;

MM_BLACK = 66819; {66309, 67328}
MM_DOOR = 15921921; {133101, 197111, 239, 394231, 328180}
MM_NPC = 128501; {60909, 195836, 1179390, 1179390, 56797, 195836}

_Coal = 0;
_Mith = 1;
_Bank = 2;
_LadderOutside = 3;
_LadderInside = 4;

COLOR_COAL = 2371118;
COLOR_MITH = 7559513; {7954013, 8085343, 7822428, 7822428, 7493719, 6770768, 7230805}
COLOR_BANK = 4153982;
COLOR_OUT_LADDER = 3958140;
COLOR_IN_LADDER = 3754838;

{$ifndef Smart}
{$undef SmartDebug}
{$endif}

{$ifndef Simba}
{$undef SimbaDebugConsole}
{$endif}

type
TMode = record
WaitUpText : integer;
WaitInvCount : integer;
WaitRandom : integer;
end;

TSymbol = record
Color : integer;
Tol : integer;
Hue : extended;
Sat : extended;
end;

TPlayerTime = record
StartTime : integer;
PreviousTime : integer;
CurrTime : integer;
end;

TRMColor = record
Color : integer;
Tol : integer;
CTS : integer;
h, s : extended;
end;

var
RMColors : Array[0..5] of TRMColor;

Procedure RMLoadColors;
var
i,
totalcolors: integer; //Not as constant for ease of maintainability
begin
totalcolors := 5;

for i:=0 to totalcolors do
case i of
_Coal :
with RMColors[_Coal] do
begin
Color := COLOR_COAL;
Tol := 10;
CTS := 2;
h := 0.35;
s := 0.43;
end;

_Mith :
with RMColors[_Mith] do
begin
Color := COLOR_MITH;
Tol := 10;
CTS := 2;
h := 0.13;
s := 0.14;
end;

_Bank :
with RMColors[_Bank] do
begin
Color := COLOR_BANK;
Tol := 5;
CTS := 2;
h := 0.03;
s := 1.08;
end;

_LadderOutside :
with RMColors[_LadderOutside] do
begin
Color := COLOR_OUT_LADDER;
Tol := 5;
CTS := 2;
h := 0.05;
s := 1.21;
end;

_LadderInside :
with RMColors[_LadderInside] do
begin
Color := COLOR_IN_LADDER;
Tol := 5;
CTS := 2;
h := 0.05;
s := 1.55;
end;

end;

end;

var
UseMode: TMode;
Loads: integer;
TimeGoing: integer;
BankDTM: integer;
PickDTM: integer;
PTime: TPlayerTime;




{ RM --------------------------------------------------------------------------]
[ End User Input for players ]
[------------------------------------------------------------------------------}
Procedure DeclarePlayers;
var
i: integer;
begin
NumberOfPlayers(1);
CurrentPlayer := 0;

for i := 0 to HowManyPlayers-1 do
Players[i].BoxRewards := ['mote', 'ostume', 'ystery', 'XP', 'Gem', 'ithril', 'oal', 'une', 'oins'];


with Players[0] do
begin
Name :='';
Pass :='';
Nick :='';
Active := True;

Integers[P_MITHP] := 100; // x / 100 to check for mith
Booleans[P_WIELDED] := true; //False => Inv 1st Spot!
end;

end;

//-------------------- SRL Stats Functions by Nielsie95 ----------------------//
{$IFNDEF RM}
const
Stats_Link = 'http://scriptmanager.freehostia.com/submit.php';

var
Stats_UserID, Stats_Password, Stats_ScriptID: string;
Stats_LastTime: Integer;

Stats_CustomVars: array [1..20] of Integer;

procedure Stats_CheckOutput(s: string);
var
i: Integer;
sa: TStringArray;
begin
sa := Explode(#10, s);
for i := 0 to High(sa) do
if (Trim(sa[i]) <> '') then
if StartsWith('ERROR(1)', sa[i]) then
begin
writeln('STATS: "' + sa[i] + '"');
Stats_UserID := '';
Stats_Password := '';
end
else if StartsWith('ERROR(2)', sa[i]) then
begin
writeln('STATS: "' + sa[i] + '"');
Stats_ScriptID := '';
end
else
writeln('STATS: "' + sa[i] + '"');

end;

function Stats_GetScriptInfo(out Version, News, Link: string; out OutDated: Boolean; out LastUpdate_HoursAgo: Integer): Boolean;
var
Client: Integer;
s: string;
sa: TStringArray;
begin
Result := False;
if (Stats_ScriptID = '') then
Exit;

Client := InitializeHTTPClient(False, False);
ClearPostData(Client);
AddPostVariable(Client, 'do', 'getinfo');
AddPostVariable (Client, 'sID', Stats_ScriptID);

s := PostHTTPPageEx(Client, Stats_Link);
sa := Explode(#10'GLUE'#10, s);
if (Length(sa) = 5) then
begin
Result := True;
Version := sa[0];
News := sa[1];
Link := sa[2];
OutDated := sa[3] = '1';
LastUpdate_HoursAgo := StrToIntDef(sa[4], -1);
end
else
Stats_CheckOutput(s);

FreeHTTPClient(Client );
end;

var
Stats_GlobalVars: array[1..24] of Integer;

procedure Stats_SendReport;
var
i, Client, Time: Integer;
s: string;
begin
if (Stats_UserID = '') and (Stats_Password = '') and (Stats_ScriptID = '') then
Exit;

Client := InitializeHTTPClient(False, False);
ClearPostData(Client);
AddPostVariable(Client, 'do', 'submit');

Time := (GetTimeRunning - Stats_LastTime) div 1000 div 60;
if (Time < 5) then
Time := 0
else
Stats_LastTime := GetTimeRunning;
AddPostVariable(Client, 'sTime', IntToStr(Time));

if (Stats_UserID <> '') and (Stats_Password <> '') then
begin
AddPostVariable(Client, 'uID', Stats_UserID);
AddPostVariable(Client, 'uPass', Stats_Password);
end
else
begin
AddPostVariable(Client, 'uID', '-1');
AddPostVariable(Client, 'uPass', '');
end;

if (Stats_ScriptID <> '') then
begin
AddPostVariable (Client, 'sID', Stats_ScriptID);

for i := Low(Stats_CustomVars) to High(Stats_CustomVars) do
begin
AddPostVariable(Client, 'rndCustom' + IntToStr(i), IntToStr(Stats_CustomVars[i]));
Stats_CustomVars[i] := 0;
end;
end
else
begin
AddPostVariable (Client, 'sID', '-1');
end;

for i := Low(Stats_GlobalVars) to High(Stats_GlobalVars) do
begin
case i of
1: s := IntToStr(SRL_Logs - Stats_GlobalVars[i]);
2: s := IntToStr(Banks - Stats_GlobalVars[i]);
3: s := IntToStr(RandSolved[rand_Death] - Stats_GlobalVars[i]);
else if ((i - 3) < Length(RandSolved) - 1 {for Death}) then
s := IntToStr(RandSolved[i - 3] - Stats_GlobalVars[i]);
end;
AddPostVariable(Client, 'rndGlobal' + IntToStr(i), s);
Stats_GlobalVars[i] := Stats_GlobalVars[i] + StrToInt(s);
end;

s := PostHTTPPageEx(Client, Stats_Link);
Stats_CheckOutput(s);
FreeHTTPClient(Client);

if (SRL_Procs[srl_OnSendStats] <> nil) then
SRL_Procs[srl_OnSendStats]();
end;

procedure Stats_SendAccountInfo;
var
i, Client: Integer;
Accounts: TStringArray;
begin
if (Stats_UserID = '') and (Stats_Password = '') then
Exit;

Client := InitializeHTTPClient(False, False);
ClearPostData(Client);
AddPostVariable(Client, 'do', 'setaccounts');
AddPostVariable(Client, 'uID', Stats_UserID);
AddPostVariable(Client, 'uPass', Stats_Password);
if (Stats_ScriptID <> '') then
AddPostVariable (Client, 'sID', Stats_ScriptID)
else
AddPostVariable (Client, 'sID', '-1');

SetLength(Accounts, HowManyPlayers);
for i := 0 to HowManyPlayers - 1 do
Accounts[i] := Implode('.|?stat?|.', [Players[i].Name, Players[i].Loc, IntToStr(Integer(Players[i].Active))]);

AddPostVariable(Client, 'accInfo', Implode(#10'ACC'#10, Accounts));
Stats_CheckOutput(PostHTTPPageEx(Client, Stats_Link));
FreeHTTPClient(Client);
end;

procedure Stats_ManageAccounts;
var
i, ii, Client: Integer;
s: string;
Accounts, Stats: TStringArray;
begin
if (Stats_UserID = '') and (Stats_Password = '') then
Exit;

Client := InitializeHTTPClient(False, False);
ClearPostData(Client);
AddPostVariable(Client, 'do', 'getaccounts');
AddPostVariable(Client, 'uID', Stats_UserID);
AddPostVariable(Client, 'uPass', Stats_Password);
AddPostVariable (Client, 'sID', '-1');

s := PostHTTPPageEx(Client, Stats_Link);
Accounts := Explode(#10'ACC'#10, s);
for i := 0 to High(Accounts) do
begin
Stats := Explode('.|?stat?|.', Accounts[i]);
if (Length(Stats) = 3) then
begin
for ii := 0 to HowManyPlayers - 1 do
if (LowerCase(Players[ii].Name) = LowerCase(Stats[0])) then
begin
Players[ii].Loc := Stats[1];
Players[ii].Active := Stats[2] = '1';
Break;
end;
end
else
begin
Stats_CheckOutput(s);
Break;
end;
end;

FreeHTTPClient(Client);
stats_SendAccountInfo;
end;
{$ENDIF}
//-------------------- SRL Stats Functions by Nielsie95 ----------------------//

{ RM --------------------------------------------------------------------------]
[ Gets CTS Info ]
[------------------------------------------------------------------------------}
procedure GetCTS(var speed: integer; var H, S: extended);
begin
speed := GetColorToleranceSpeed;
GetColorspeed2Modifiers(H, S);
end;

{ RM --------------------------------------------------------------------------]
[ Sets CTS info ]
[------------------------------------------------------------------------------}
procedure SetCTS(speed: integer; H, S: extended);
begin
ColorToleranceSpeed(speed);
SetColorspeed2Modifiers(H, S);
end;

{ RM --------------------------------------------------------------------------]
[ Progress Report ]
[------------------------------------------------------------------------------}
Procedure RMDebug(What: String);
begin
if SCRIPT_DEBUG then
begin
{$ifdef SimbaDebugConsole}
DebugLn('[' + MsToTime(GetTimeRunning,Time_Bare)+']: '+Players[CurrentPlayer].Name+': '+What);
{$else}
Writeln('[' + MsToTime(GetTimeRunning,Time_Bare)+']: '+Players[CurrentPlayer].Name+': '+What);
{$endif}
{$ifndef Simba}
DisGuise(What);
{$endif}
end;
end;

{ RM --------------------------------------------------------------------------]
[ Does not move mouse onto 'BlackGuildMap'; Else moves normally. ]
[------------------------------------------------------------------------------}
function RMMMouse(x, y, rx, ry: integer; RMClick: (LeftC, RightC, Move)): boolean;
var
xb, yb, CTS: integer;
h, s: extended;
begin
GetCTS(CTS, h, s);
SetCTS(1, 0.20, 0.20);
for xb := 0 to 2 do
begin
for yb:= 0 to 2 do
if not SimilarColors(GetColor(x+ xb, y + yb), MM_BLACK, 10) then
break
else
writeln(GetColor(x+ xb, y + yb));

if (yb < 3) then break;
end;

if (xb < 3) then
case RMClick of
LeftC : Mouse(x, y, rx, ry, true);
RightC : Mouse(x, y, rx, ry, false);
Move : MMouse(x, y, rx, ry);
end
else exit;

Result := true;

SetCTS(CTS, h, s);
end;

{ RM --------------------------------------------------------------------------]
[ Makes a box of BoxSize with center SPoint, within the MS ]
[------------------------------------------------------------------------------}
function MakeMSBox(SPoint: TPoint; BoxSize: integer): TBox;
begin
Result.x1 := Max(SPoint.x - BoxSize, MSX1);
Result.x2 := Min(SPoint.x + BoxSize, MSX2);
Result.y1 := Max(SPoint.y - BoxSize, MSY1);
Result.y2 := Min(SPoint.y + BoxSize, MSY2);
end;

{ RM --------------------------------------------------------------------------]
[ FindColorsTolerance in a TBox ]
[------------------------------------------------------------------------------}
function FindColorsToleranceBox(var TPA: TPointArray; Color, Tolerance: Integer; Box: TBox): boolean;
begin
Result := FindColorsTolerance(
TPA,
Color,
Box.x1,
Box.y1,
Box.x2,
Box.y2,
Tolerance
);
end;

{ RM --------------------------------------------------------------------------]
[ Finds an ore. I'm really lazy. ]
[------------------------------------------------------------------------------}
function FindOreBox(var TPA: TPointArray; Rock: integer; Box: TBox): boolean;
var
H, S: extended;
CTS, color, tol: integer;
begin
GetCTS(CTS, H, S);

if Rock = ROCK_COAL then
begin
color := RMColors[_Coal].Color;
tol := RMColors[_Coal].Tol;

SetCTS(
RMColors[_Coal].CTS,
RMColors[_Coal].h,
RMColors[_Coal].s
);

end else begin
color := RMColors[_Mith].Color;
tol := RMColors[_Mith].Tol;

SetCTS(
RMColors[_Mith].CTS,
RMColors[_Mith].h,
RMColors[_Mith].s
);
end;

Result := FindColorsToleranceBox(TPA, color, tol, Box);

SetCTS(CTS, H, S);
end;

{ RM --------------------------------------------------------------------------]
[ Clears Canvas ]
[------------------------------------------------------------------------------}
Procedure ClearSmartPaint(canvas: TCanvas);
{$ifdef SmartDebug}
var
CleanBMP: integer;
{$endif}
begin
{$ifdef SmartDebug}
CleanBMP := BitmapFromString(MIX2, MIY2, '');
{$ifdef Simba}
DrawBitmap(CleanBMP,Canvas,0,0);
{$else}
SafeDrawBitmap(CleanBMP, canvas, 0, 0);
{$endif}

try
FreeBitmap(CleanBMP);
except end;
{$endif}
end;

{ caused edited by RM ---------------------------------------------------------]
[ Paint a TPA onto the Smart Debug Canvas ]
[------------------------------------------------------------------------------}
procedure DrawDots(pixels : TpointArray);
{$ifdef SmartDebug}
var
i : integer;
drawing : TBitmap;
begin
drawing := TBitmap.Create;
drawing.canvas.handle := SmartGetDebugDC;
drawing.canvas.Pen.Color := clRed;

ClearSmartPaint(drawing.canvas);

for i:= 0 to high(pixels) do
begin
drawing.canvas.moveto(pixels[i].x-1,pixels[i].y);
drawing.canvas.LineTo(pixels[i].x,pixels[i].y);
end;

try
FreeBitmap(drawing);
except end;
{$else}
begin
{$endif}
end;

{ RM based on DrawBoxes by caused ---------------------------------------------]
[ Draws a box, Rock size. ]
[------------------------------------------------------------------------------}
procedure DrawBox(Box: TPointArray; color: TColor);
{$ifdef SmartDebug}
var
drawing : TBitmap;
TP : TPoint;
B: TBox;
begin
drawing := TBitmap.Create;
drawing.canvas.handle := SmartGetDebugDC;
drawing.canvas.Pen.Color := color;

ClearSmartPaint(drawing.canvas);

TP := MiddleTPA(Box);
B := MakeMSBox(TP, 20);

drawing.canvas.moveto(B.x1,B.y1);
drawing.canvas.LineTo(B.x2,B.y1);
drawing.canvas.LineTo(B.x2,B.y2);

drawing.canvas.LineTo(B.x1,B.y2);
drawing.canvas.LineTo(B.x1,B.y1);

try
FreeBitmap(drawing);
except end;
{$else}
begin
{$endif}
end;

{ RM --------------------------------------------------------------------------]
[ Progress Report ]
[------------------------------------------------------------------------------}
Procedure ProgressReport;
begin
{$ifndef Simba}
ClearReport;
{$endif}

PTime.CurrTime := GetSystemTime - PTime.StartTime;
Players[CurrentPlayer].Worked := PTime.PreviousTime + PTime.CurrTime;

SRLProgressReport(
ResultReportBox, SCRIPT_NAME, AUTHOR, VERSION,
['Time running', 'Total Loads'],
[TimeRunning, Loads]
);

SRLPlayerReport(
ResultReportBox, SKILL_MINING, false,
[true, true, true, true, false, false],
[],
[], [], [], []
);

Players[CurrentPlayer].Worked := PTime.PreviousTime;
Stats_SendReport;
Stats_ManageAccounts;
end;

{ RM --------------------------------------------------------------------------]
[ Checks for Bank or Pin Screen ]
[------------------------------------------------------------------------------}
function RMRandoms(RDebug: boolean): boolean;
var s: string;
begin
if RDebug then
RMDebug('Checking for randoms');

Result := FindNormalRandoms;

if IsFKeyDown(12) then
begin
s := Readln('What would you like to type ingame?');

if s = '' then
exit;

TypeSend(s);
end;
end;

{ RM --------------------------------------------------------------------------]
[ Checks for Bank or Pin Screen ]
[------------------------------------------------------------------------------}
function BorPScreen: boolean;
begin
Result := ((BankScreen)or(PinScreen));
RMDebug('BorPScreen: ' + BoolToStr(Result));
end;

{ RM --------------------------------------------------------------------------]
[ Figures out the best axe to use ]
[------------------------------------------------------------------------------}
function BestAxe: integer;
begin

case Players[CurrentPlayer].Level[Skill_Mining] of

LVL_DRAGON .. 99 : Result := AXE_DRAGON ;
LVL_RUNE .. LVL_DRAGON : Result := AXE_RUNE ;
LVL_ADDY .. LVL_RUNE : Result := AXE_ADDY ;
LVL_MITH .. LVL_ADDY : Result := AXE_MITH ;
LVL_STEEL .. LVL_MITH : Result := AXE_STEEL ;
else Result := AXE_IRON;

end;

end;

{ RM --------------------------------------------------------------------------]
[ Sets a Player to False ]
[------------------------------------------------------------------------------}
Procedure DeActivatePlayer(Reason: String);
begin
LogOut;
Players[CurrentPlayer].Active := false;
Players[CurrentPlayer].Loc := Reason;
RMDebug('Logged Out - '+Reason);
end;

{ RM --------------------------------------------------------------------------]
[ Checks where the PickAxe is. ]
[------------------------------------------------------------------------------}
Function CheckPickAxe: boolean;
var
CT, i, x, y : Integer;
TC: TIntegerArray;
begin
Result := true;
exit;

RMRandoms(true);
if not LoggedIn then exit;

SetLength(TC, 2);
CT := GetCurrentTab;
if CT = TAB_INV then
TC := [TAB_INV, TAB_EQUIP]
else
TC := [TAB_EQUIP, TAB_INV];


for i:= 0 to 1 do
begin
GameTab(TC[i]);
if FindDTM(PickDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
Result := true;
Players[CurrentPlayer].Booleans[P_WIELDED] := (TC[i] = TAB_EQUIP);
if Players[CurrentPlayer].Booleans[P_WIELDED] then
RMDebug('Pick is Equipped')
else
RMDebug('Pick is in Inv');
exit;
end else
RMDebug('No Pick, Tab: '+IntToStr(TC[i]));
end;

if i > 1 then
DeActivatePlayer('No Pick');
end;

{ RM --------------------------------------------------------------------------]
[ Sets the different mining modes ]
[------------------------------------------------------------------------------}
procedure SetMode(myMode: integer);
begin
case myMode of
FRENZY:
begin
with UseMode do
begin
WaitUpText := UT_WAIT_FRENZY;
WaitInvCount := IC_WAIT_FRENZY;
WaitRandom := R_WAIT_FRENZY;
end;

end;
FAST:
with UseMode do
begin
WaitUpText := UT_WAIT_FAST;
WaitInvCount := IC_WAIT_FAST;
WaitRandom := R_WAIT_FAST;
end;

end;
end;



{ RM --------------------------------------------------------------------------]
[ Results true if sentence matches one of the texts. Uses Pos. Returns the ]
[ Array index. ]
[------------------------------------------------------------------------------}
Function InStrArrExPosReverse(S: String; StrArr: TStringArray; Var Where: Integer): Boolean;
Var
I, H: Integer;
Begin
H := High(StrArr);
For I := 0 To H Do
If (Pos(LowerCase(StrArr[i]), LowerCase(S)) > 0) Then
Begin
Where := i;
Result := True;
Break;
End;
End;

{ RM --------------------------------------------------------------------------]
[ Finds symbol Which through TPA Analysis ]
[------------------------------------------------------------------------------}
Function FindSymbolWithTPA(Which: integer; var Where: TPoint): boolean;
var
TPA : TPointArray;
ATPA: T2DPointArray;
TBArr : TBoxArray;
i, h, t, waste, CTS: integer;
Hue, Sat: extended;
TIA: TIntegerArray;
Symb: TSymbol;
begin
RMRandoms(true);
if not FindColors(TPA, SYMBOL_OUTLINE, MMX1, MMY1, MMX2, MMY2) then
begin
srl_warn('FindSymbolThroughTPA', 'Could not find symbol', warn_AllVersions);
exit;
end;

ATPA := SplitTPA(TPA, 2);

t := 0;
h := High(ATPA);
SetLength(TIA, h + 1);
SetLength(TBArr, h + 1);

for i:= 0 to h do
begin
TBArr[i] := GetTPABounds(ATPA[i]);
if FindColor(waste, waste, SYMBOL_FILL, TBArr[i].x1, TBArr[i].y1, TBArr[i].x2, TBArr[i].y2) then
begin
TIA[t] := i;
Inc(t);
end;
end;

if (t = 0) then
begin
RMDebug('Impossible walk');
Result := false;
exit;
end;

SetLength(TIA, t);

case which of

SYMBOL_BANK :
with Symb do
begin
Color := 6542813; {2216175, 4694448, 9697013}
Tol := 15;
Hue := 0.10;
Sat := 1.49;
end;

SYMBOL_DUNGEON:
with Symb do
begin
Color := 6645236; {10526972, 2763504, 5263604}
Tol := 13;
Hue := 0.0;
Sat := 0.29;
end;


SYMBOL_MINING:
with Symb do
begin
Color := 8092796;
Tol := 14;
Hue := 2.39;
Sat := 0.03;

end;
end;

GetCTS(CTS, Hue, Sat);
SetCTS(2, Symb.Hue, Symb.sat);

for i:= 0 to t-1 do
begin
h := TIA[i];
if FindColorsToleranceBox(TPA, Symb.Color, Symb.Tol, TBArr[h]) then
begin
Where := MiddleTPA(TPA);
Result := true;
break;
end;
end;

SetCTS(CTS, Hue, Sat);

if i = t then
RMDebug('could not find symbol fill');

end;

{ RM --------------------------------------------------------------------------]
[ Clicks the Rocks/Ladder Zone ]
[------------------------------------------------------------------------------}
function FindMMLadder(var TP: TPoint): boolean;
var
TB: TBox;
ATPA: T2DPointArray;
TPA: TPointArray;
CTS, i: integer;
H, S: extended;
begin
result := false;

GetCTS(CTS, H, S);
SetCTS(2, 0.45, 4.10);

{143195, 403800, 404566}
if not FindColorsTolerance(TPA, 996441, MMX1, MMY1, MMX2, MMY2, 6) then
begin
SetCTS(CTS, H, S);
exit;
end else begin
SetCTS(CTS, H, S);

//avoiding confusion with mining symbol
ATPA := TPAtoATPAEx(TPA, 10, 20);

for i := 0 to High(ATPA) do
begin
TB := GetTPABounds(ATPA[i]);
RMDebug('x axis: ' + IntToStr(TB.x2 - TB.x1));
RMDebug('y axis: ' + IntToStr(TB.y2 - TB.y1));
if ((TB.x2 - TB.x1) > 5) then
if ((TB.y2 - TB.y1) > 11) then
Result := true
else
Result := false
else
Result := false;

if Result then
begin
TPA := ATPA[i];
TP := MiddleTPA(TPA);

if not InCircle(TP.x, TP.y, MMCX, MMCY, ((MMX2 - MMX1) / 2) - 5) then
begin
Result := false;
continue;
end;

break;
end;

end;

end;
end;

{ RM --------------------------------------------------------------------------]
[ Finds NPCs on MM ]
[------------------------------------------------------------------------------}
function FindNPCMM(var TP: TPoint): boolean;
var
TPA: TPointArray;
ATPA: T2DPointArray;
CTS: integer;
H, S: extended;
begin
GetCTS(CTS, H, S);
SetCTS(2, 0.00, 0.17);

Result := FindColorsTolerance(TPA, MM_NPC, MMX1, MMY1, MMX2, MMCY, 5);

if Result then
begin
ATPA := TPAToATPAEx(TPA, 4, 4); // 4*4 = NPC size
SortATPAFromFirstPoint(ATPA, Point(MMCX, MMCY));

TP := MiddleTPA(ATPA[0]);
end;

SetCTS(CTS, H, S);
end;

{ RM --------------------------------------------------------------------------]
[ Finds the door to noobie guild on Minimap ]
[------------------------------------------------------------------------------}
Function FindMMDoor(var TP: TPoint): boolean;
var
TPA: TPointArray;
ATPA: T2DPointArray;
i, CTS: integer;
H, S: extended;
begin
{Can also look for NPCs, they only exist on the other side!}
GetCTS(CTS, H, S);
SetCTS(2, 24.97, 0.80);

Result := FindColorsTolerance(TPA, MM_DOOR, MMX1, MMY1, MMX2, MMCY, 2);

if Result then
begin
Result := False;
ATPA := SplitTPA(TPA, 2);
SortATPAFromFirstPoint(ATPA, Point(MMCX, MMCY));
for i:= High(ATPA) DownTo 0 do
if (Length(ATPA[i]) <= 5) then
begin
Result := true;
TP := MiddleTPA(ATPA[i]);
end;

end;

if not Result then
Result := FindNPCMM(TP);

SetCTS(CTS, H, S);

end;

{ RM --------------------------------------------------------------------------]
[ Finds text <> MSG_SWING_PICK and returns its line ]
[------------------------------------------------------------------------------}
Function FindNeutralText(var text: string): integer;
var
i: integer;
begin
for i := 8 DownTo 1 do
begin
text := lowercase(GetChatBoxText(i, clMessage));
if not (Pos(MSG_SWING_PICK, text) > 0 ) then
break;
end;

Result := i;
end;

{ RM --------------------------------------------------------------------------]
[ Returns true if successfully started mining a rock. False otherwise ]
[------------------------------------------------------------------------------}
function CheckChat(PreviousMessage: string; CheckPlace, Stage, Time: integer): boolean;
var
ChatMessage: string;
NewMsg, MyTime: integer;
begin
RMDebug('in check chat');
MyTime := GetSystemTime + Time;



ChatMessage := lowercase(GetChatBoxText(CheckPlace, clMessage));
while MyTime > GetSystemTime do
begin

if IsFKeyDown(11) then
begin
Result := false;
writeln('Chat wait aborted by user');
exit;
end;

if PreviousMessage = ChatMessage then
begin
wait(50);
ChatMessage := lowercase(GetChatBoxText(CheckPlace, clMessage));
end else
break;
wait(100);
end;

ChatMessage := lowercase(GetChatBoxText(8, clMessage)); // 8 = last line of chat box

if ChatMessage = PreviousMessage then
begin
RMDebug('No Chat change');
exit;
end;

if not InStrArrExPosReverse(ChatMessage, [MSG_SWING_PICK, MSG_MANAGE_MINE, MSG_NO_ORE], NewMsg) then
begin
RMDebug('New: unidentified chat; ' + ChatMessage);
// relocating
if Pos('reach that', ChatMessage) > 0 then
Mouse(MMCX, MMCY + 60, 5, 5, true);
wait(4000+random(2000));
exit;
end;

case Stage of
STAGE_TO_ROCK:
begin
case NewMsg of

SWING_PICK:
begin
Result := true;
exit;
end;

else
begin
Result := false;
exit;
end;

end;
end;

STAGE_WAIT_ROCK:
Result := not (ChatMessage = MSG_SWING_PICK);

end;

end;

{ RM --------------------------------------------------------------------------]
[ Returns true if in guild = Wanted ]
[------------------------------------------------------------------------------}
function InGuild(time: integer; Wanted: boolean): boolean;
var
t, CTS: integer;
TPA: TPointArray;
H, S: extended;
begin
RMDebug('entering func InGuild');
RMRandoms(true);
if not LoggedIn then exit;

GetCTS(CTS, H, S);
SetCTS(1, 0.20, 0.20);

t := GetSystemTime + time;
while t >= GetSystemTime do
begin
FindColorsTolerance(TPA, MM_BLACK, MMX1, MMY1, MMX2, MMY2, 10);
Result := (Length(TPA) > 2000);

RMDebug('In Guild? '+ BoolToStr(Result));
RMDebug('Black Points: ' + IntToStr(Length(TPA)));

if Result = Wanted then
break
else
wait(250);
end;

ColorToleranceSpeed(CTS);
SetColorspeed2Modifiers(H, S);
end;

{ RM --------------------------------------------------------------------------]
[ Returns Which Part of the Guild we are in ]
[------------------------------------------------------------------------------}
function AtGuildLoc : integer;
var
TP: TPoint;
begin
{
//Inside Guild Locs
GUILD_ENTRANCE = 3;
GUILD_LEFT = 4;
GUILD_CENTER = 5;
GUILD_TOP = 6;
}
if FindMMLadder(TP) then
if Distance(TP.x, TP.y, MMCX, MMCY) < 7 then
Result := GUILD_TOP
else

end;


{ RM --------------------------------------------------------------------------]
[ Walks to Where ]
[------------------------------------------------------------------------------}
function WalkSymbol(Where: integer): boolean;
var
TP, TP2: TPoint;
begin
RMDebug('walking to ' + IntToStr(where));

// SetRun(true);

if Where = SYMBOL_BANK then
TP := Point(MMCX - 10, MMCY - 35)
else
TP := Point(MMCX + 10, MMCY + 35);

if not FindSymbolWithTPA(Where, TP2) then
begin
RMDebug('couldn''t find symbol. Blind Click');
MouseMM(TP.x, TP.y, 3, 3);
Result := false;

while IsMoving do
FFlag(5);

end else begin
Mouse(TP2.x, TP2.y, 2, 2, true);
Result := true;
end;

if not Result then
if FindSymbolWithTPA(Where, TP) then
begin
Mouse(TP.x, TP.y, 2, 2, true);
Result := true;
end else begin
RMDebug('Unable to Symbol Walk');
Result := false;
exit;
end;

if Result then
begin
FFlag(5);
while IsMoving do
FFlag(5);
end;

RMDebug('Walked: ' + BoolToStr(Result));

end;




{ RM --------------------------------------------------------------------------]
[ Clicks the Rocks/Ladder Zone ]
[------------------------------------------------------------------------------}
function ClickMMLadder: boolean;
var
TP: TPoint;
begin
RMDebug('Clicking MM Ladder');
Result := FindMMLadder(TP);

if Result then
begin
Mouse(TP.x, TP.y, 3, 3, true);
RMDebug('Clicked MM Ladder');
end else
RMDebug('Couldn''t Click Ladder');

end;

{ RM --------------------------------------------------------------------------]
[ Moves around in the Guild ]
[------------------------------------------------------------------------------}
function RelocateGuild: boolean;
var
TP: TPoint;
begin
RMDebug('Relocating in Guild');

RMRandoms(true);

if FindSymbolWithTPA(SYMBOL_MINING, TP) then
begin
Mouse(TP.x, TP.y, 10, 10, true);
Result := true;
end;
end;

{ RM --------------------------------------------------------------------------]
[ Clicks away from MM door if close to it. ]
[------------------------------------------------------------------------------}
function GetAwayFromDoor: boolean;
var
DoorTP: TPoint;
i, dist: integer;
begin
Result := FindMMDoor(DoorTP);

if not Result then
begin
RMDebug('No door on MM');
exit;
end else
RMDebug('Door on MM: ' + IntToStr(distance(DoorTP.x, DoorTP.y, MMCX, MMCY)));


dist := distance(DoorTP.x, DoorTP.y, MMCX, MMCY);
Result := (dist < MIN_DOOR_DIST);

if Result then
begin
Mouse(MMCX, MMCY + MIN_DOOR_DIST - dist + 10, 3, 5, true)

for i := 0 to 9 do
begin
wait(100)
if IsMoving then
break;
end;

while (IsMoving)or(FFlag(0)) do
wait(100);
end;

end;

{ RM --------------------------------------------------------------------------]
[ Gets out of the guild ]
[------------------------------------------------------------------------------}
Procedure WalkOutGuild;
var
i: integer;
ClickedLadder: Boolean;
begin
if not LoggedIn then exit;
RMDebug('WalkOutGuild');
SetRun(false);

if not InvFull then exit;

repeat
RMRandoms(true);
if not LoggedIn then exit;


//just in case we lagged and are outside of guild
if not InGuild(500, false) then
break;

RMDebug('getting out of guild');

RMDebug('walking to guild entrance');
for i:= 0 to 2 do
begin

if not LoggedIn then break;

if not InGuild(500, false) then
break;

if ClickMMLadder then
ClickedLadder := True
else begin
Mouse(MMCX - 50, MMCY + 15, 5, 5, true);
RMDebug('Blind Click');
ClickedLadder := False;
end;

FFlag(10);
while IsMoving do
while FFlag(0) do
wait(500);

if ClickedLadder then
begin
RMDebug('Clicked MM ladder');
break;
end;
end;

if not ClickedLadder then
begin
DeActivatePlayer('Failed WalkOutGuild');
RMDebug('Didn''t manage to get out of guild');
exit;
end;

wait(random(500));

RMDebug('looking for ladder');
if not SmartColorsEx(LADDER_INSIDE) then
continue
else begin
while IsMoving do
while FFlag(0) do
wait(500);
wait(2000+Random(1000));
end;

until(not InGuild(10000, false))

RMDebug('out of guild');
wait(1000+Random(1000));
end;

{ RM --------------------------------------------------------------------------]
[ Keeps track of rock while player moves around ]
------------------------------------------------------------------------------}
Function FollowRock(Rock: integer; var ThePoint: TPoint): boolean;
var
ATPA: T2DPointArray;
TPA: TPointArray;
time: integer;
TB: TBox;
OldPoint : TPoint;
BreakNext: boolean;
begin
time := 0;

repeat
wait(20);
OldPoint := ThePoint;

TB := MakeMSBox(ThePoint, 50);

if not FindOreBox(TPA, Rock, TB) then
begin
SetLength(TPA, 1);
TPA[0] := Point(0, 0);
DrawDots(TPA);
exit;
end;

ATPA := TPAToATPAEx(TPA, 20, 20);

if (Length(ATPA) > 1) then
SortATPAFromFirstPoint(ATPA, Point(MSCX, MSCY));

try
ThePoint := MiddleTPA(ATPA[0]);
except
ThePoint := MiddleTPA(TPA);
end;




if GetSystemTime > time then
begin
DrawDots(TPA);
time := GetSystemTime + 1000;
end;

if BreakNext then
break;

if not (FlagDistance > 0) then
if not IsMoving then
BreakNext := true;

until(false)

if Distance(ThePoint.x, ThePoint.y, MSCX, MSCY) > 50 then
begin
Result := false;
{ I wish to keep it there for now, to be able to better trim.
TPA[0] := Point(0, 0);
DrawDots(TPA);
}
end else begin
Result := true;
DrawDots(TPA);
DrawBox(TPA, clLime);
end;

ThePoint := MiddleTPA(TPA);

end;

{ RM --------------------------------------------------------------------------]
[ Checks if the Rock we are mining still has ore ]
[------------------------------------------------------------------------------}
Function IsRockHere(Rock, SCount: integer; Where: TPoint): boolean;
var
timer: integer;
Box: TBox;
TPA: TPointArray;
begin
//Avoids errors if it wrongly located the rock
if Distance(Where.x, Where.y, MSCX, MSCY) > 50 then
begin
Result := true;
exit;
end;

Box := MakeMSBox(Where, 20);

timer := GetSystemTime + DETECT_ROCK_TIME;
Result := false;

while Timer > GetSystemTime do
begin

if InvCount > SCount then
begin
Result := false;
break;
end;

if FindOreBox(TPA, Rock, Box) then
begin
DrawBox(TPA, clBlue);
Result := true;
exit;
end;

wait(100);
end;

if not Result then
begin
SetLength(TPA, 1);
TPA[0] := Where;
DrawBox(TPA, clRed);
end;

end;

{ RM --------------------------------------------------------------------------]
[ Mines Ore ]
[------------------------------------------------------------------------------}
Function MineOre(var which: integer): boolean;
var
TP: TPoint;
begin
if Random(100) <= Players[CurrentPlayer].Integers[P_MITHP] then
if FindSymbolWithTPA(SYMBOL_MINING, TP) then
if (TP.x - 5) < MMCX then
if (TP.y - 5) < MMCY then
begin
RMDebug('Searching for Mith');
Result := SmartColorsEx(ROCK_MITH);
which := ROCK_MITH;
end;


if not Result then
begin
RMDebug('Searching for Coal');
Result := SmartColorsEx(ROCK_COAL);
which := ROCK_COAL;
end;

end;


{ RM --------------------------------------------------------------------------]
[ Mining Loop ]
[------------------------------------------------------------------------------}
Procedure MineLoop;
var
Timer, ThePlace, TheRock, TTime, SCount, SwitchTimes: integer;
str: string;
Switch, Followed: boolean;
RockPoint: TPoint;
begin
RMDebug('MineLoop');

if not InGuild(500, true) then
exit;

RMDebug('MineLoop - In guild.');

TTime := GetSystemTime + 15*60*1000;

repeat
RMRandoms(true);
RunEnergy(70);
if not LoggedIn then exit;

//will only be useful when there is multiplayer or world switching.
{
if TTime < GetSystemTime then
begin
RMDebug('Load took too long');
LogOut;
Players[CurrentPlayer].Active := false;
Players[CurrentPlayer].Loc := 'Load took too long';
exit;
end;
}

GameTab(TAB_INV);
if InvFull then
begin
RMDebug('Full Load');
Inc(Loads);
Inc(Stats_CustomVars[STATS_LOADS]);
Inc(Players[CurrentPlayer].Banked);
ProgressReport;
break;
end;

RMDebug('Loads: '+ IntToStr(Loads));

SetMode(Random(2));


while IsMoving do
while FFlag(0) do
wait(250);

GameTab(TAB_INV);
SCount := InvCount;
Timer := GetSystemTime;

if GetAwayFromDoor then
RMDebug('Moved away from MM door.');

if MineOre(TheRock) then
begin

RMRandoms(true);

if ((GetSystemTime - Timer) > 5000) then
Switch := true; //avoiding bad / empty locations of guild

ThePlace := FindNeutralText(str);

GetMousePos(RockPoint.x, RockPoint.y);

if not FollowRock(TheRock, RockPoint) then
begin
RMDebug('FollowRock failed - unable to follow rock');
//continue;
end else begin
Followed := true;
SwitchTimes := 0;
Switch := False;
{
RMDebug('Moving Mouse to rock');
RMDebug('RockPoint X: ' + IntToStr(RockPoint.x));
RMDebug('RockPoint Y: ' + IntToStr(RockPoint.y));
//RMMMouse(RockPoint.x, RockPoint.y, 3, 3, Move); - 7th May 2010
//wait(5000);
}
end;

if CheckChat(str, ThePlace, STAGE_TO_ROCK, 5000) then
begin
Switch := False;

Timer := GetSystemTime + UseMode.WaitInvCount;
RMDebug('Max wait time for rock: '+IntToStr(UseMode.WaitInvCount));

Gametab(TAB_INV);

while (SCount = InvCount) do
begin

RMRandoms(false);

wait(100);

if IsFKeyDown(11) then
begin
RMDebug('Waiting for rock aborted by user');
break;
end;
if not (InvCount > SCount) then
if Followed then
if not IsRockHere(TheRock, SCount, RockPoint) then
begin
RMDebug('Rock not here');
break;
end;

if GetSystemTime > Timer then
begin
RMDebug('Rock took too long');

if Followed then
if IsRockHere(TheRock, SCount, RockPoint) then
if CheckAndClick(RockPoint, SCObjectsArray[ROCK_COAL]) then
Timer := GetSystemTime + UseMode.WaitInvCount
else
break
else
break
else
break;

end;

end;
wait(Random(UseMode.WaitRandom));
end;

end else
Switch := True;

if Switch then
begin
Inc(SwitchTimes);

if SwitchTimes > 3 then
begin
Players[CurrentPlayer].Active:= False;
Players[CurrentPlayer].Loc := 'lost';
LogOut;
exit;
end;

RelocateGuild;
Switch := False;
end;

while IsMoving do
wait(500);
until(false)
end;

function Bank: boolean; forward;

{ RM --------------------------------------------------------------------------]
[ Walks from bank to mining guild ]
[------------------------------------------------------------------------------}
function ToGuild: boolean;
var
i: integer;
begin
if not LoggedIn then exit;
Result := false;

RMDebug('ToGuild');

SetRun(true);

RMRandoms(true);

if not LoggedIn then exit;

for i := 0 to 2 do
begin

if InvFull then
exit;

//just in case we lagged and are INSIDE the guild
if InGuild(500, true) then
begin
Result := true;
exit;
end;

RMDebug('getting to guild');

if not WalkSymbol(SYMBOL_DUNGEON) then
continue;

wait(100+random(1000));

While IsMoving do
while FFlag(0) do
wait(500);

break;

end;

if i > 2 then
begin
Players[CurrentPlayer].Active := false;
LogOut;
Players[CurrentPlayer].Loc := 'Lost - ToGuild';
RMDebug('Player got lost on way to guild');
end else
Result := SmartColorsEx(LADDER_OUTSIDE);



end;

{ RM --------------------------------------------------------------------------]
[ Walks from mining guild to bank ]
[------------------------------------------------------------------------------}
function ToBank: boolean;
var
i, bx, by: integer;
WhichAngle: extended;
begin
if not LoggedIn then exit;

Result := false;
RMDebug('ToBank');
RMRandoms(true);

if not LoggedIn then exit;
if not InvFull then exit;


for i:= 0 to 2 do
begin
if InGuild(500, false) then
break;

RMDebug('getting to bank');

if not WalkSymbol(SYMBOL_BANK) then
if not FindDtmRotated(BankDTM, bx, by, MMX1, MMY1, MMX2, MMY2, Radians(-30), Radians(30), 0.05, WhichAngle) then
continue
else
RMMMouse(bx, by, 0, 0, LeftC);

RMDebug('waiting while moving');
While IsMoving do
while FFlag(0) do
wait(500);

RMDebug('done waiting');
break;

end;

if i <= 2 then
Result := Bank;

if Result then exit;

Players[CurrentPlayer].Active := false;
LogOut;
Players[CurrentPlayer].Loc := 'lost - ToBank';
RMDebug('Unable to bank, going false');

end;

{ RM --------------------------------------------------------------------------]
[ Deposits Items ]
[------------------------------------------------------------------------------}
Procedure DepositItems(All: boolean);
begin
if not BorPScreen then exit;

if All then
DepositAll
else
Deposit(2, 28, True);
{
for i := 1 to 28 do
if ExistsItem(I) then
begin
writeln('Checking Item: '+IntToStr(i));
IBox := InvBox(I);
if not FindDTM(PickDTM, x, y, IBox.x1, IBox.y1, IBox.x2, IBox.y2) then
Deposit(i, i, True)
else
writeln('Found Pick at: '+IntToStr(i));
end;
}
end;

{ RM --------------------------------------------------------------------------]
[ Banks ]
[------------------------------------------------------------------------------}
function Bank: boolean;
var i: integer;
begin
if not LoggedIn then exit;

RMDebug('Entering Bank function');
RMRandoms(true);
if not LoggedIn then exit;

if InvCount = Integer(not Players[CurrentPlayer].Booleans[P_WIELDED]) then
exit;

if InGuild(500, true) then
exit;

RMDebug('banking');

repeat
for i := 0 to 1 do
begin
if BorPScreen then break;

if i = 0 then
if SmartColorsEx(BANK_BOOTH) then
break;

if i = 1 then
if FindBank(BANK_FE) then
break;

RMRandoms(true);
end;

if i > 1 then
begin
RMDebug('Unable to find bank.');
Result := false;

Inc(Players[CurrentPlayer].Integers[P_BANK_TRIES]);

if Players[CurrentPlayer].Integers[P_BANK_TRIES] <= MAX_BANK_TRIES then
begin
RMDebug('trying again');
ToBank;
end;

exit;
end;

Players[CurrentPlayer].Integers[P_BANK_TRIES] := 0;

wait(2000+random(1000));
while IsMoving do
while FFlag(0) do
wait(100);

if WaitFunc(@BorPScreen, 100, 5000) then
begin
RMDebug('in here');
wait(1000+random(500));

i := 0;
repeat
RMDebug('leaving ' + BoolToStr(not Players[CurrentPlayer].Booleans[P_WIELDED]) + ' items in inv');
DepositItems(Players[CurrentPlayer].Booleans[P_WIELDED]);
WaitInvMaxCount(Integer(not Players[CurrentPlayer].Booleans[P_WIELDED]), 5000);

inc(i);
if i > 2 then
begin
RMDebug('banking failed.... lag?');
CloseBank;
exit;
end;

until(InvCount = Integer(not Players[CurrentPlayer].Booleans[P_WIELDED]))

i := 0;
repeat
CloseBank;
wait(500+random(500));

inc(i);
if i > 2 then
begin
RMDebug('lagging at closing bank..');
wait(3000 + random(1000));
i := 0;
end;

until(not BankScreen)

RMDebug('Banked..');
Result := true;
exit;
end;
until(BorPScreen)
end;

{ RM --------------------------------------------------------------------------]
[ Rests the player if it has been running for more than 20+rand(10) minutes ]
[------------------------------------------------------------------------------}
Procedure SetupPlayer; forward;
Procedure Rest;
begin

if AllPlayersInactive then
exit;

if (GetSystemTime > TimeGoing) then
begin
if PlayersActive > 1 then
NextPlayer(Players[CurrentPlayer].Active)
else begin
RMDebug('sleeping');
LogOut;
wait(3*60*1000 + Random(3*60*1000));
LoginPlayer;
end;

SetupPlayer;
TimeGoing := (GetSystemTime + FIXED_TIME*60*1000 + Random(RAND_TIME*60*1000));
RMDebug('restarted');
end;
end;

{ RM --------------------------------------------------------------------------]
[ Sets up SmartColors ]
[------------------------------------------------------------------------------}
Procedure SetupColors;
begin
{
SetupSmartColorsDetailsEx(
Index, ColorMin, ColorMax,
MaxColors, BoxSize, Tol,
Dist, ClickStyle, R_RL_Chance
: integer);
}

//coal
MakeObjEx( ROCK_COAL,
RMColors[_Coal].Color,
RMColors[_Coal].Tol,
RMColors[_Coal].h,
RMColors[_Coal].s,
['ine', 'ock'], ['ine'] );

SetupSmartColorsDetailsEx(ROCK_COAL, 3, 100, 7, 30, 5, 15, 3, 15);

//mith
MakeObjEx( ROCK_MITH,
RMColors[_Mith].Color,
RMColors[_Mith].Tol,
RMColors[_Mith].h,
RMColors[_Mith].s,
['ine', 'ock'], ['ine'] );

SetupSmartColorsDetailsEx(ROCK_MITH, 3, 100, 7, 30, 10, 15, 3, 15);

//bank booth
MakeObjEx( BANK_BOOTH,
RMColors[_Bank].Color,
RMColors[_Bank].Tol,
RMColors[_Bank].h,
RMColors[_Bank].s,
['ank', 'ooth'],
['qui', 'ick', 'kly'] );

SetupSmartColorsDetailsEx(BANK_BOOTH, 3, 300, 7, 50, 10, 15, 2, 100);

//Outside Ladder
MakeObjEx( LADDER_OUTSIDE,
RMColors[_LadderOutside].Color,
RMColors[_LadderOutside].Tol,
RMColors[_LadderOutside].h,
RMColors[_LadderOutside].s,
['limb', 'own', 'adder'],
['down'] );

SetupSmartColorsDetailsEx(LADDER_OUTSIDE, 2, 100, 7, 150, 20, 20, 2, 15);

//Inside Ladder
MakeObjEx( LADDER_INSIDE,
RMColors[_LadderInside].Color,
RMColors[_LadderInside].Tol,
RMColors[_LadderInside].h,
RMColors[_LadderInside].s,
['limb', 'up', 'adder'],
['limb'] );

SetupSmartColorsDetailsEx(LADDER_INSIDE, 2, 200, 7, 50, 20, 20, 2, 15);

end;

{ RM --------------------------------------------------------------------------]
[ Prepares the Player for Mining ]
[------------------------------------------------------------------------------}
Procedure SetupPlayer;
begin
TimeGoing := (GetSystemTime + FIXED_TIME*60*1000 + Random(RAND_TIME*60*1000));

if not LoggedIn then
LoginPlayer;

SetAngle(true);
Players[CurrentPlayer].Integers[P_BANK_TRIES] := 0;

PTime.StartTime := GetSystemTime;
PTime.PreviousTime := Players[CurrentPlayer].Worked;
PTime.CurrTime := GetSystemTime - PTime.StartTime;

Players[CurrentPlayer].Level[Skill_Mining] := GetSkillLevel(Skill_Mining);
CheckPickAxe;
end;

{ RM --------------------------------------------------------------------------]
[ Sets up All necessities ]
[------------------------------------------------------------------------------}
Procedure SetupScript;
begin
Smart_Server := RM_SERVER;
Smart_Signed := RM_SIGNED;
AllowPVP := false;

DeclarePlayers;

RMLoadColors;
SetupColors;
SetupSRL;

ActivateClient;

BankDTM := DTMFromString('78DA630C67666098C580028E1CD90367FF070' +
'2467FA09A45103E2354FCCF1F260626243E6310116AC2A8A4268A' +
'08357184D500001B001913');

PickDTM := DTMFromString('78DA639CC0CCC0F088910104202404B023F11' +
'9416A1EA3AAE929F44255D30F54F31EDD1C4654353D4035BF08A8' +
'E902AAF947404D3B50CD33026A1A816A9E1250331BA8E62501351' +
'309AB0100CDF50F0F');

//SRL Stats
Stats_ScriptID := SCRIPT_ID;
Stats_UserID := USER_ID;
Stats_Password := USER_PW;

{$ifndef Simba}
ClearReport;
{$else}
AddOnTerminate('ProgressReport');
{$endif}
AddToReport(IntToStr(RMColors[_Coal].Color));
{$ifdef SmartDebug}
SmartSetDebug(True);
{$endif}

end;




begin

SetupScript;

repeat

SetupPlayer;

repeat
if not LoggedIn then break;

if not ToGuild then
begin
Inc(Players[CurrentPlayer].Integers[W_GUILD]);
if Players[CurrentPlayer].Integers[W_GUILD] > WALK_ATTEMPTS then
begin
DeActivatePlayer('Failed ToGuild');
continue;
end;
end;


if not InvFull then
begin
if not InGuild(5000, true) then
continue; //waits to be inside guild

RMDebug('getting to rocks');

wait(random(1000));
RMMMouse(MMCX + 50, MMCY, 5, 5, LeftC);
wait(500);
while IsMoving do
while FFLag(0) do
wait(200);
end;

MineLoop;
WalkOutGuild;

if not ToBank then
begin
Inc(Players[CurrentPlayer].Integers[W_BANK]);
if Players[CurrentPlayer].Integers[W_BANK] > WALK_ATTEMPTS then
begin
DeActivatePlayer('Failed ToBank');
continue;
end;
end;

Rest;


until(IsFKeyDown(12))

until(AllPlayersInactive)
FreeDTM(BankDTM);
writeln('Finishing loop... :( ');
end.

Sir R. M8gic1an

2010-05-13 10:01:07

Uploaded :)

~RM

NCDS

2010-05-17 18:43:54

Hmm everything seems to work good still but Scar and SMART both seem to crash sometimes when dealing with the ladder.

I'm not too sure whats causing it as I have all the canvas drawing commented out.

i luffs yeww

2010-05-18 00:02:08

^ Try Simba? Just wondering if it works for Simba, nothing else. :p

mastaraymond

2010-05-18 15:17:12

From: i luffs yeww
^ Try Simba? Just wondering if it works for Simba, nothing else. :p

Well if you looked at the first post it states "V0.731 -
 RM Guild Miner.scar (56.2 KB, 10 views)"

Pretty sure that would solve your wonders :)

Wizzup?

2010-05-18 15:37:24

From: mastaraymond
Well if you looked at the first post it states "V0.731 -
 RM Guild Miner.scar (56.2 KB, 10 views)"

Pretty sure that would solve your wonders :)


He means that NCDS should try it with Simba, and see if it solves his bug. :)

Sir R. M8gic1an

2010-05-19 21:02:14

Ladder finding uses SmartColors, the exact same way bank & rock finding works, therefore it's unlikely that whatever is causing the problem to be in the actual finding. If it is failing due to the script then it would be somewhere in the calling of the finding function.

A lil inspiration today:

{ RM --------------------------------------------------------------------------]
[ Moves mouse and (can) click at x, y. ]
[------------------------------------------------------------------------------}
procedure RMMouse(x, y, rx, ry: integer; RMClick: (LeftC, RightC, Move));
begin
case RMClick of
LeftC : Mouse(x, y, rx, ry, true);
RightC : Mouse(x, y, rx, ry, false);
Move : MMouse(x, y, rx, ry);
end;
end;

{ RM --------------------------------------------------------------------------]
[ Does not move mouse onto 'BlackGuildMap'; Else moves normally. ]
[------------------------------------------------------------------------------}
function RMMMouse(x, y, rx, ry: integer; RMClick: (LeftC, RightC, Move)): boolean;
var
xb, yb, CTS: integer;
h, s: extended;
begin

if
not InRange(x, MMX1, MMY1)
or
not InRange(y, MMY1, MMY2)

then begin

RMMouse(x, y, rx, ry, RMClick);
Result := true;

end;


GetCTS(CTS, h, s);
SetCTS(1, 0.20, 0.20);
for xb := 0 to 2 do
begin
for yb:= 0 to 2 do
if not SimilarColors(GetColor(x+ xb, y + yb), MM_BLACK, 10) then
break
else
writeln(GetColor(x+ xb, y + yb));

if (yb < 3) then break;
end;

if (xb < 3) then
case RMClick of
LeftC : Mouse(x, y, rx, ry, true);
RightC : Mouse(x, y, rx, ry, false);
Move : MMouse(x, y, rx, ry);
end
else exit;

Result := true;

SetCTS(CTS, h, s);
end;

added:

{ RM --------------------------------------------------------------------------]
[ Moves mouse and (can) click at x, y. ]
[------------------------------------------------------------------------------}
procedure RMMouse(x, y, rx, ry: integer; RMClick: (LeftC, RightC, Move));
begin
case RMClick of
LeftC : Mouse(x, y, rx, ry, true);
RightC : Mouse(x, y, rx, ry, false);
Move : MMouse(x, y, rx, ry);
end;
end;

//added this to RMMMouse

if
not InRange(x, MMX1, MMY1)
or
not InRange(y, MMY1, MMY2)

then begin

RMMouse(x, y, rx, ry, RMClick);
Result := true;

end;

// ^ Loving the standards, making me feel like I'm reading a book.
[/scar]

~RM

bion92

2010-05-23 19:14:38

I keep getting this error:

[Runtime Error] : Exception: Access violation at address 00511B9C in module 'scar.exe'. Read of address 00000034 in line 47 in script D:\SCAR 3.23 beta version\includes\SRL\SRL\Core\Animation.scar

Is my srl not new enough or something else?

i luffs yeww

2010-05-23 20:07:37

^ One way to find out is to update SRL. :)

mastaraymond

2010-05-25 13:21:01

You should set the compass to north somewhere in the script, it doesn't do that ;-).

mysterious123

2010-05-27 08:00:55

Manually stopped, I just love how the script works.
Will run again.

[===================================================]
[ RM Guild Miner 0.73 ]
[ by Rasta Magician ]
[===================================================]
[ Time Running : 4 Hours, 32 Minutes And 55 Seconds ]
[ Total Loads : 25 ]
[===================================================]
[ RM Guild Miner 0.73 ]
[===================================================]
[=================================================]
[ Nick | Active | Worked | Banked | Level | Loc ]
[=================================================]
[ Nick | True | 00:26:59 | 25 | 66 | ]
[=================================================]

Press Play

2010-05-29 03:38:54

[==========================================]
[ RM Guild Miner 0.73 ]
[ by Rasta Magician ]
[==========================================]
[ Time Running : 49 Minutes And 20 Seconds ]
[ Total Loads : 6 ]
[==========================================]
[ RM Guild Miner 0.73 ]
[==========================================]
It's the first time I've used this script. I found that it still mined coal that other players are mining. Isn't your script supposed to avoid those rocks? I really really like the Rock Following; the Rock Tracking. It's heaps awesome :)

I stopped the script manually because SMART had a 'white screen' and the script was in a continuous loop. The player was not logged in and it was not doing anything.

Hope these notes help :)

Good script (Y)

EDIT:
From: Rasta Magician

Avoid rocks with animation - Change of Mind, 7th May 2010

I re-read your first post. Lol sorry. I probably read the script before you changed your mind :P

BlueWorld

2010-06-01 14:36:54

idk but think pick animation thing just broke during the recentupdate =/ cause the green box doesn't move anymore and its click fastish?

Najorin

2010-06-02 18:41:45

[===================================================]
[ RM Guild Miner 0.73 ]
[===================================================]
[=================================================]
[ Nick | Active | Worked | Banked | Level | Loc ]
[=================================================]
[ *** | True | 03:13:02 | 29 | 68 | ]
[=================================================]

Sir R. M8gic1an

2010-06-02 20:03:52

From: BlueWorld
idk but think pick animation thing just broke during the recentupdate =/ cause the green box doesn't move anymore and its click fastish?


Mining picks are not used to detect any rock animation ;)

c0rrupt, nice proggy :)

~RM

xSaintias

2010-06-04 13:36:45

mine alway seems to get stuck around the 1 hour time frame (8 Loads). I'm not sure, but i will come back and it has executed even though it is not in a random or had any problem in the script. Not sure if its a coincidence, but anybody know why it would keep stopping at an hour (8 Loads).

Sir R. M8gic1an

2010-06-04 13:37:45

From: xSaintias
mine alway seems to get stuck around the 1 hour time frame (8 Loads). I'm not sure, but i will come back and it has executed even though it is not in a random or had any problem in the script. Not sure if its a coincidence, but anybody know why it would keep stopping at an hour (8 Loads).


Post the debug ;)

~RM

jas0npc

2010-07-04 05:52:49

Status: [=========================================]
Status: [ RM Guild Miner 0.73 ]
Status: [=========================================]
Status: [=================================================]
Status: [ Nick | Active | Worked | Banked | Level | Loc ]
Status: [=================================================]
Status: [ xxx | True | 00:49:14 | 4 | 81 | ]
Status: [=================================================]

not much of a run, stopped by me, will give it a longer go later.

kufo

2010-07-08 22:31:30

Ok i got it set to run 2 people. Well when it gets to teh 2nd person. It always clicks on the demo version of runescape for some reason. I hav e no idea why.I've never really had any problems with scripts till now so im stumped…

Sir R. M8gic1an

2010-07-09 06:57:03

From: kufo
Ok i got it set to run 2 people. Well when it gets to teh 2nd person. It always clicks on the demo version of runescape for some reason. I hav e no idea why.I've never really had any problems with scripts till now so im stumped…


Update your SRL ;)

~RM

kufo

2010-07-09 12:10:24

It's updated. It runs the first person fine. But it works now. I didn't notice it had a option for what world to go into.I didn't catch that the first time. Now it seems to be working but it will only do like 2 loads a piece tyhen gets lost. I change the getting lost to do more tries. but doesn't seem to do anything

Sir R. M8gic1an

2010-07-09 12:28:18

From: kufo
It's updated. It runs the first person fine. But it works now. I didn't notice it had a option for what world to go into.I didn't catch that the first time. Now it seems to be working but it will only do like 2 loads a piece tyhen gets lost. I change the getting lost to do more tries. but doesn't seem to do anything


Well, in all honesty that sucks, but I no longer have a guild miner nor keep this script updated. So… I'd suggest you maybe try a different script? :) There's a reflection made guild miner that seemed to work quite well.

~RM

kufo

2010-07-09 13:09:13

From: Rasta Magician
Well, in all honesty that sucks, but I no longer have a guild miner nor keep this script updated. So… I'd suggest you maybe try a different script? :) There's a reflection made guild miner that seemed to work quite well.

~RM


It does work some still. I got it up to 14 loads before it failed. It ain't too bad i just check it every hour and it's usually just in bank with an empty inventory. So it still gets a bit of coal.

ashman26

2010-08-25 18:10:26

does anyone get the following error message???

Line 615: [Hint] (21714:1): Variable 'NEWCOLOR' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar
Line 615: [Hint] (21714:1): Variable 'CTS' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar

What does it mean and how can i rectify this?

NCDS

2010-08-25 18:49:07

From: ashman26
does anyone get the following error message???

Line 615: [Hint] (21714:1): Variable 'NEWCOLOR' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar
Line 615: [Hint] (21714:1): Variable 'CTS' never used in script C:\Program Files\SCAR 3.22\includes\srl\srl\misc\SmartColors.scar

What does it mean and how can i rectify this?

Means exactly what it say's. "Variable 'NEWCOLOR' never used in script" ;)

It simply means the variables are not used in the script. It's more of a warning message than an error message, and should not terminate the script.

jizzoe

2010-08-26 00:49:11

good script

Sir R. M8gic1an

2010-08-26 05:50:40

From: jizzoe
good script


It's outdated. I'd be surprised if it actually mined a load.

~RM

EvilChicken!

2010-08-26 08:51:43

From: Rasta Magician
It's outdated. I'd be surprised if it actually mined a load.

~RM


Why don't you update it?

I'm really surprised over how few people maintain their scripts in comparison to how much effort they initially put into them. I mean, scripts do break, it's inevitable. I just don't see why it's so difficult to put thirty more minutes into a script one's already put hours into.

Absolutely no offence intended, RM. You know me.

Sir R. M8gic1an

2010-08-26 11:34:58

From: EvilChicken!
Why don't you update it?

I'm really surprised over how few people maintain their scripts in comparison to how much effort they initially put into them. I mean, scripts do break, it's inevitable. I just don't see why it's so difficult to put thirty more minutes into a script one's already put hours into.

Absolutely no offence intended, RM. You know me.


Character got banned from a new script I was making. Therefore, no character of my own to test it with, which makes me lose enthusiasm. Also the fact that I barely script now-a-days due to time.

Also, I usually make the scripts for a reason; This one was to show SmartColors in action, which it did pretty well :) Then… it's time to let someone else make a script; I wouldn't want to take the 'market' away from other people who have not yet had the chance to maintain a script with high usage.

~RM

jizzoe

2010-08-28 02:35:48

its gotten me 52 loads over a 7 hr spand today

CX gamer

2010-08-29 07:22:11

Status: [==========================================]
Status: [ RM Guild Miner 0.73 ]
Status: [ by Rasta Magician ]
Status: [==========================================]
Status: [ Time Running : 11 Minutes And 57 Seconds ]
Status: [ Total Loads : 1 ]
Status: [==========================================]
Status: [ RM Guild Miner 0.73 ]
Status: [==========================================]
Status: [=================================================]
Status: [ Nick | Active | Worked | Banked | Level | Loc ]
Status: [=================================================]
Status: [ cx | True | 02:42:40 | 1 | 60 | ]
Status: [=================================================]
It banked unwielded rune pick. XD

Sir R. M8gic1an

2010-08-29 08:55:47

Heh. Good to see it does run after all :)

I guess some bits might need a bit of tweaking.

~RM

CX gamer

2010-08-29 09:07:09

Yes the script itself ran fluently. :D
Though I did some tweaking to make it faster, but that's what const's are for. ;)

jizzoe

2010-08-31 16:46:49

Status: [=================================================]
Status: [====================================================]
Status: [ RM Guild Miner 0.73 ]
Status: [ by Rasta Magician ]
Status: [====================================================]
Status: [ Time Running : 14 Hours, 39 Minutes And 27 Seconds ]
Status: [ Total Loads : 101 ]
Status: [====================================================]
Status: [ RM Guild Miner 0.73 ]
Status: [====================================================]
Status: [=================================================]
Status: [ Nick | Active | Worked | Banked | Level | Loc ]
Status: [=================================================]
Status: [ ebr | True | 01:00:38 | 101 | 90 | ]
Status: [=================================================]

Gold

2010-09-03 23:27:39

So can someone upload the tweaked version :D

I could really use this.

Sir R. M8gic1an

2010-09-03 23:47:40

The version being used is the one I uploaded ;) (you can see that by the version in the proggy)

~RM

Gold

2010-09-03 23:58:20

From: Sir R. Magician
The version being used is the one I uploaded ;) (you can see that by the version in the proggy)

~RM


Yes, but as you stated yourself it has some flaws. I'm not one with any scripting ability so I guess I'll have to wait till someone decides to make a new one.

Sir R. M8gic1an

2010-09-04 00:01:26

From: goldrush655
Yes, but as you stated yourself it has some flaws. I'm not one with any scripting ability so I guess I'll have to wait till someone decides to make a new one.


It ran for 14h without any tweaking my friend.. That might suffice for you, no?

~RM

Gold

2010-09-04 00:04:41

From: Sir R. Magician
Well, in all honesty that sucks, but I no longer have a guild miner nor keep this script updated. So… I'd suggest you maybe try a different script? :) There's a reflection made guild miner that seemed to work quite well.

~RM


Well, seems you have changed your mind haha.

Sir R. M8gic1an

2010-09-04 00:09:14

From: goldrush655
Well, seems you have changed your mind haha.


Heh. I guess; I don't keep it updated, but apparently it is updated enough.

~RM

jizzoe

2010-09-07 19:13:39

Status: [===================================================]
Status: [ RM Guild Miner 0.73 ]
Status: [ by Rasta Magician ]
Status: [===================================================]
Status: [ Time Running : 8 Hours, 12 Minutes And 10 Seconds ]
Status: [ Total Loads : 60 ]
Status: [===================================================]
Status: [ RM Guild Miner 0.73 ]
The following DTMs were not freed: [1, 2]
No Reflection update

TomTuff

2010-09-08 10:17:44

Status: [===================================================]
Status: [ RM Guild Miner 0.73 ]
Status: [ by Rasta Magician ]
Status: [===================================================]
Status: [ Time Running : 10 Hours, 4 Minutes And 59 Seconds ]
Status: [ Total Loads : 47 ]
Status: [===================================================]
Status: [ RM Guild Miner 0.73 ]
Status: [===================================================]
Status: [=================================================]
Status: [ Nick | Active | Worked | Banked | Level | Loc ]
Status: [=================================================]
Status: [ oom | True | 01:22:21 | 47 | 62 | ]
Status: [=================================================]

stopped by hand

Sir R. M8gic1an

2010-09-08 12:03:30

Yay :D

~RM

EvilChicken!

2010-09-09 06:56:40

I believe it's safe to remove the "BETA" tag from the title of this thread now, Sir? :p

WhiteShadow

2010-09-09 18:34:05

Status: [==================================================]
Status: [ RM Guild Miner 0.73 ]
Status: [ by Rasta Magician ]
Status: [==================================================]
Status: [ Time Running : 2 Hours, 13 Minutes And 4 Seconds ]
Status: [ Total Loads : 17 ]
Status: [==================================================]
Status: [ RM Guild Miner 0.73 ]
Status: [==================================================]
Status: [=================================================]
Status: [ Nick | Active | Worked | Banked | Level | Loc ]
Status: [=================================================]
Status: [ lala | True | 04:24:19 | 17 | 62 | ]
Status: [=================================================]

Great script, love the mining procedures.

Guild mining itself isn't very good experience or money though.

$42k/hr 6k xp/hr. o_0 My miner sucks and there's tons of other people though. ^^

jizzoe

2010-09-09 23:08:47

its good if you have a high minning lv i have 91 my self and get 1k coal in 5hrs

jizzoe

2010-09-18 21:07:11

please update script..i updated my srl and its laggy and isnt as good as before the upodate clicks different rock before finshing minning a rock

doublex8

2010-09-30 17:14:42

From: Sir R. Magician
There's a reflection made guild miner that seemed to work quite well.

~RM


Where can I find this script?

EDIT: nvm I think I found it sorry

jizzoe

2010-10-01 03:02:59

wheres this guild miner? with the reflection

doublex8

2010-10-01 14:21:16

I believe Magician was talking about this guild miner here.

kevinconklin

2010-10-02 10:03:09

ive been watching the script for a while and alot of the time it ends up just running around the mining guild because it will click a rock and then before my character mines the rock it will click another one. and maybe have it turn on run, because i notice that sometimes my run is at 100% and my char is just walking to bank and rocks,etc

null

2010-10-02 15:00:06

From: kevinconklin
ive been watching the script for a while and alot of the time it ends up just running around the mining guild because it will click a rock and then before my character mines the rock it will click another one. and maybe have it turn on run, because i notice that sometimes my run is at 100% and my char is just walking to bank and rocks,etc


Yes, this script does this.
It only runs while mining. Going to the bank run is saved. Personally, the time frame which mining takes for a bank load is enough to run continuously. Isn't it?

I'm still a fan of this script however.:wowzers:

Sir R. M8gic1an

2010-10-02 23:28:26

The running is not something I had much time to look into to. An ideal system would run to guild, run while mining and rest on the way back. Or if it had enough energy, it could rest at the bank. And if it is getting ores too slowly because of other players stealing then due to them running, it could rest until it reaches 100%. That way it can continue on running and whoever was running before will probably be done.

Damn, I really gotta suggest this idea to msi >.>

~RM

null

2010-10-03 00:57:34

From: Sir R. Magician
The running is not something I had much time to look into to. An ideal system would run to guild, run while mining and rest on the way back. Or if it had enough energy, it could rest at the bank. And if it is getting ores too slowly because of other players stealing then due to them running, it could rest until it reaches 100%. That way it can continue on running and whoever was running before will probably be done.

Damn, I really gotta suggest this idea to msi >.>

~RM


Thanks for suggesting the idea :) For all you know MSI could make an .include for Energy.


:norris:

Sir R. M8gic1an

2011-02-08 11:52:29

This script has potential, although I dont have the time to work on it.

If anyone wants to take on the updating of this at JM level feel free to do so, and I'd be more than happy to see it done. If you do bother to look through the code and something feels over the top / unclear you can always PM me ;)

e: I just realized the script is no longer here. Some copies are certainly still floating around and I've defo got a backup somewhere.

e2, @Ray:

{$ifndef Smart}
{$undef SmartDebug}
{$endif}

{$ifndef Simba}
{$undef SimbaDebugConsole}
{$endif}
Just noticed this man, amazing, simply amazing. Cheers so much for that.

~RM