SRL Archive - General

VE Woodcutting ~ Ready to test!


Coh3n

2010-02-23 23:49:55

Hey everyone,

Today I finished with the mainloop, and I made the necessary tweaks and such for it to work with one load (all I had time to test). From what I've tested, the walking is awesome, the tree chopping is awesome.

I know everyone is busy, but please test if you get the time. There are 8 accounts in the RunMe.scar file when you download MSI, feel free to use them, just please put them back in the bank/at trees when you're finished.

Here is a working progress report.
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 3 Hours, 5 Minutes and 11 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to perform skill: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 04m 26s }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE }
{ }
{ Skill: Woodcutting }
{ Time: 04m 26s }
{ Loads: 1 }
{ Experience: 1,400 }
{ Level: 41 }
{ Item: Normal logs }
{ Amount: 56 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 28m 55s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 28m 55s }
{ Loads: 6 }
{ Experience: 4,200 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 168 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 20m 11s }
{ Active: False }
{ Reason: Failed to walk to Varrock east bank, index: 3 }
{ }
{ Skill: Woodcutting }
{ Time: 20m 11s }
{ Loads: 4 }
{ Experience: 2,800 }
{ Level: 40 }
{ Item: Normal logs }
{ Amount: 112 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Lost }
{ Time: 35m 41s }
{ Active: False }
{ Reason: Failed to walk to Varrock east trees, index: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 35m 41s }
{ Loads: 6 }
{ Experience: 4,200 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 168 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 32m 03s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 32m 03s }
{ Loads: 6 }
{ Experience: 4,200 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 168 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 35m 44s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 35m 44s }
{ Loads: 7 }
{ Experience: 4,900 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 196 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]

Here is a list of the things that need to be done:
If you do something on this list, please let me know so I can check it off.

Cheers,
Coh3n

Blumblebee

2010-02-24 00:44:00

i will test, I'm excited this is almost complete :)

marpis

2010-02-24 15:30:42

Please commit this, I don't have the username/pass to the villavu repo, only to googlecode :-\

New GetObject, WaitWhileChopping works better with these settings:

{*******************************************************************************
Function MSI_GetObject(Which: Integer): TMSObject;
By: marpis
Description: Load object info
*******************************************************************************}
Function MSI_GetObject(Which: Integer): TMSObject;
Begin
Case Which Of
Obj_Tree:
With Result Do
Begin
UpText := 'Tree';
Option := 'Chop down';
Colors := [736046];
Tol := 5;
Hue := 1.54;
Sat := 5.00;
FindAllColors := False;
W := 25;
H := 25;
Accuracy := 5;
ExcludeSelf := True;
RightClickOnly := False;
Tries := 5;
Anim := False;
WaitToMove := True;
BadColors := [];
BadColorTolerance := 10;
End;

Obj_Oak:
With Result Do
Begin
UpText := 'Oak';
Option := 'Chop down';
Colors := [736046];
Tol := 5;
Hue := 1.54;
Sat := 5.00;
FindAllColors := False;
W := 30;
H := 30;
Accuracy := 10;
ExcludeSelf := True;
RightClickOnly := False;
Tries := 5;
Anim := False;
WaitToMove := True;
BadColors := [];
BadColorTolerance := 10;
End;
End;
End;

Coh3n

2010-02-24 15:36:43

Will do, I'm about to commit a ton of stuff anyway. Here's the first successful progress report!
[PHP]
______________________________________________________________________________
| MSI Player Extreme Report |
——————————————————————————
| empty cohen in Varrock at VE_Trees |
| |
| empty cohen is at Woodcutting level 0. |
| empty cohen was Woodcutting for 01m 01s |
| empty cohen autoed 28 normal logs |
——————————————————————————
[/PHP]

NCDS

2010-02-24 17:54:19

From: marpis
Please commit this, I don't have the username/pass to the villavu repo, only to googlecode :-\

New GetObject, WaitWhileChopping works better with these settings:

{*******************************************************************************
Function MSI_GetObject(Which: Integer): TMSObject;
By: marpis
Description: Load object info
*******************************************************************************}
Function MSI_GetObject(Which: Integer): TMSObject;
Begin
Case Which Of
Obj_Tree:
With Result Do
Begin
UpText := 'Tree';
Option := 'Chop down';
Colors := [736046];
Tol := 5;
Hue := 1.54;
Sat := 5.00;
FindAllColors := False;
W := 25;
H := 25;
Accuracy := 5;
ExcludeSelf := True;
RightClickOnly := False;
Tries := 5;
Anim := False;
WaitToMove := True;
BadColors := [];
BadColorTolerance := 10;
End;

Obj_Oak:
With Result Do
Begin
UpText := 'Oak';
Option := 'Chop down';
Colors := [736046];
Tol := 5;
Hue := 1.54;
Sat := 5.00;
FindAllColors := False;
W := 30;
H := 30;
Accuracy := 10;
ExcludeSelf := True;
RightClickOnly := False;
Tries := 5;
Anim := False;
WaitToMove := True;
BadColors := [];
BadColorTolerance := 10;
End;
End;
End;


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

@Cho3n, just in case you care about those account's the VillaVu SVN isn't password protected for downloading it. Though, I don't think anyone else knows about it at this point.

Coh3n

2010-02-24 21:16:58

From: NCDS
http://villavu.com/forum/showthread.php?t=54426 ;)

@Cho3n, just in case you care about those account's the VillaVu SVN isn't password protected for downloading it. Though, I don't think anyone else knows about it at this point.

Yeah I just left those in for anyone to test with. I don't care about them at all, they're just there in case someone needs an account. :)

Thanks though, and to answer your question from the other thread: it looks like the banking function is looping though all the ATPA's until it finds the correct uptext. The problem is, it takes A LOT of moving the mouse around before it actually finds the booth. Then, when the bank is finally open, it continues to move the mouse around to colors that resemble the booth colors.

EDIT: Also, I've been testing this with a lot, and this comes up quite often:

05:13:53 PM: honour cohen: Entering Func: CreateWalkIndex(WALK_BANK_Final);: Failed to find bankers on MiniMap.
05:13:53 PM: honour cohen: Player Action: MSI_MainLoop: Failed to walk to bank!
Thus, causing the script to switch players.

EDIT2: I also got this a couple times:

Tree AutoColor = 1467951
05:20:44 PM: broddi cohen: Player Action: MSI_MainLoop: Failed to walk to location!
So I'm not sure why it would walk to the final location when it found the tree color.

Got this on another character:

Couldn't find the bank. Exiting
Couldn't find the bank. Exiting
05:37:51 PM: run cohen: Player Action: MSI_MainLoop: Failed to bank materials!

And here is the final progress report:
[PHP]
______________________________________________________________________________
| MSI Player Extreme Report |
——————————————————————————
| empty cohen in Varrock at VE_Bank |
| |
| empty cohen is at Woodcutting level 0. |
| empty cohen was Woodcutting for 13m 13s |
| empty cohen autoed 56 normal logs |
——————————————————————————
______________________________________________________________________________
| MSI Player Extreme Report |
——————————————————————————
| troll cohen in Varrock at VE_Bank |
| |
| troll cohen is at Woodcutting level 0. |
| troll cohen was Woodcutting for 05m 42s |
| troll cohen autoed 28 normal logs |
——————————————————————————
______________________________________________________________________________
| MSI Player Extreme Report |
——————————————————————————
| cohen gorak in Varrock at VE_Bank |
| |
| cohen gorak is at Woodcutting level 0. |
| cohen gorak was Woodcutting for 00s |
| cohen gorak autoed 0 normal logs |
——————————————————————————
______________________________________________________________________________
| MSI Player Extreme Report |
——————————————————————————
| honour cohen in Varrock at VE_Bank |
| |
| honour cohen is at Woodcutting level 0. |
| honour cohen was Woodcutting for 00s |
| honour cohen autoed 0 normal logs |
——————————————————————————
______________________________________________________________________________
| MSI Player Extreme Report |
——————————————————————————
| broddi cohen in Varrock at VE_Bank |
| |
| broddi cohen is at Woodcutting level 0. |
| broddi cohen was Woodcutting for 05m 50s |
| broddi cohen autoed 28 normal logs |
——————————————————————————
______________________________________________________________________________
| MSI Player Extreme Report |
——————————————————————————
| cohen abyss in Varrock at VE_Bank |
| |
| cohen abyss is at Woodcutting level 0. |
| cohen abyss was Woodcutting for 06m 50s |
| cohen abyss autoed 28 normal logs |
——————————————————————————
______________________________________________________________________________
| MSI Player Extreme Report |
——————————————————————————
| pirate cohen in Varrock at VE_Bank |
| |
| pirate cohen is at Woodcutting level 0. |
| pirate cohen was Woodcutting for 00s |
——————————————————————————
______________________________________________________________________________
| MSI Player Extreme Report |
——————————————————————————
| run cohen in Varrock at VE_Bank |
| |
| run cohen is at Woodcutting level 0. |
| run cohen was Woodcutting for 00s |
| run cohen autoed 28 normal logs |
——————————————————————————
[/PHP]

Basically what seems to need improvement is banking and walking. Maybe for walking ~ if can't find the bankers, then walk a little further west on the MM. For banking ~ I just think the SRL functions need a rewrite.

EDIT3: I forgot to say why the script stopped:

[Runtime Error] : Exception: Access violation at address 045CD0D0 in module 'WizzyPlugin.dll'. Read of address 12BE8000 in line 318 in script C:\Users\Cohen\Desktop\SCAR\includes\srl\srl\MSI\Objects.scar

NCDS

2010-02-24 21:30:34

Ok, I have some time to do some testing now so I'll see what I can do.

And I'll look into that banking thing.

Coh3n

2010-02-24 21:33:59

From: NCDS
Ok, I have some time to do some testing now so I'll see what I can do.

And I'll look into that banking thing.

Okay awesome, thanks. I really think we need to get everyone in on this before we move on to the next project. There is still a lot that's not done such as more details in the progress report (i.e. why that player stopped), extra features like when to switch players/break.

There are only 5 or 6 of us in total, and one person can't do everything.

Sir R. M8gic1an

2010-02-24 21:35:06

Looking very good. For banking you can use SmartColors. I've been using it in my guildminer and it just works wonders.


//bank booth
MakeObjEx(BANK_BOOTH, COLOR_BANK, 5, 0.03, 1.08, ['ank', 'ooth'], ['ickly', 'quic', 'qui', 'ick']);
SetupSmartColorsDetailsEx(BANK_BOOTH, 3, 300, 7, 50, 10, 15, 2, 100);

The colors and tols are for FEB, but the rest of the settings would probably work well enough. :)

~RM

Coh3n

2010-02-24 21:36:54

From: Rasta Magician
Looking very good. For banking you can use SmartColors. I've been using it in my guildminer and it just works wonders.


//bank booth
MakeObjEx(BANK_BOOTH, COLOR_BANK, 5, 0.03, 1.08, ['ank', 'ooth'], ['ickly', 'quic', 'qui', 'ick']);
SetupSmartColorsDetailsEx(BANK_BOOTH, 3, 300, 7, 50, 10, 15, 2, 100);

The colors and tols are for FEB, but the rest of the settings would probably work well enough. :)

~RM

Exactly. I don't want to put down all marpis's work on objects.scar, but to be honest, it would have been easier/better/more organized to have objects.scar designated to creating smartcolor objects. Afterall, smart colors is proven to be very fast and efficient.

EDIT: I think there is a lot of needless code in MSI right now. Just things that aren't necessary. Either it's there for skills/locations that we don't support/will not support for a long time. Objects.scar could be shorted to just using smart colors. There is also A LOT of inconsistancy (i.e. constants, script headers, function headers). I know I'm kind of ranting, but it's stuff I've noticed over the last couple days.

EDIT2: Also, RM, how come we have a TProggy type, etc.? It would be less of a pain to just use Players.Integers/Booleans/Strings. I wasn't sure if you had a different reason for it or not.

Sir R. M8gic1an

2010-02-24 22:27:10

From: Coh3n


EDIT2: Also, RM, how come we have a TProggy type, etc.? It would be less of a pain to just use Players.Integers/Booleans/Strings. I wasn't sure if you had a different reason for it or not.


Well the reason for it had been for the specific skill cus I couldn't think of a way to index them in the array effectively, but on second thought…


const
P_SKILL_NAME = 0;
P_SKILL_LEVEL = 0;
P_SKILL_XP = 0;
P_SKILL_TIME = 1;
P_SKILL_STATUS = 0;

for i:= 0 to TOTAL_SKILLS - 1 do
with Players[CurrentPlayer] do
if Strings[P_SKILL_NAME + i*5] <> '' then
begin
writeln(Strings[P_SKILL_NAME);
writeln(Integers[P_SKILL_LEVEL]);
writeln(Extended[P_SKILL_XP]);
writeln(Integers[P_SKILL_TIME]);
writeln(Booleans[P_SKILL_STATUS]);
end;

This is considering that in MSI the player will be able to automatically switch between skills

~RM

Coh3n

2010-02-24 23:06:02

Uhm, I don't understand that. Why the i * 5?

EDIT: Now that I think about it, using TProggy may be better for organization purposes. When I was setting everything up, it wasn't difficult to get everything in line and working properly.

NCDS

2010-02-25 00:49:41

Walking is all fixed up. Refer to this thread: http://villavu.com/forum/showthread.php?t=55187

I will talk with Naum about the banking in the morning.

Sir R. M8gic1an

2010-02-25 04:37:50

From: Coh3n
Uhm, I don't understand that. Why the i * 5?

EDIT: Now that I think about it, using TProggy may be better for organization purposes. When I was setting everything up, it wasn't difficult to get everything in line and working properly.


I meant to do + i * 5 on all of them.

So that it runs throug the several skills in the players array.

~RM

marpis

2010-02-25 04:40:50

From: Coh3n
Exactly. I don't want to put down all marpis's work on objects.scar, but to be honest, it would have been easier/better/more organized to have objects.scar designated to creating smartcolor objects. Afterall, smart colors is proven to be very fast and efficient.


I've thought about that, but SmartColors alone doesn't contain min colors found etc. so first we'd have to expand SmartColors functions, and I believe that RM is the only person who understands SmartColors enough to update it.

Coh3n

2010-02-25 10:19:52

From: Rasta Magician
I meant to do + i * 5 on all of them.

So that it runs throug the several skills in the players array.

~RM

Well right now I set it up so you can only do one skill (:o sorry). How would we determine the objects for each skill? Unless we can do this:

with Players[0] do
begin
Name := '';
Pass := '';
Nick := '';
Active := '';
Pin := '';
Arrays[P_SKILLS] := [SKILL_MINING, SKILL_WOODCUTTING];
Arrays[P_OBJECTS] := [[OBJ_ROCK_TIN, OBJ_ROCK_IRON], [OBJ_TREE, OBJ_OAK]];
end;

From: marpis
I've thought about that, but SmartColors alone doesn't contain min colors found etc. so first we'd have to expand SmartColors functions, and I believe that RM is the only person who understands SmartColors enough to update it.

Don't you set the min/max colors, etc. when you create an object?

EDIT: I just thought of another thing if we used SmartColors ~ there wouldn't be any type mismatch errors between calling SmartColors, and the players arrays because they're both Variants. Right now, there is a separate procedure checking/converting the Players arrays to integer arrays so the objects will work with the Wooductting functions.

Blumblebee

2010-02-25 11:30:25

I don't see an issue with our current color finding methods, I'm not going to lie. I thought they ran quite smoothly tbh.

Coh3n

2010-02-25 11:42:33

From: Blumblebee
I don't see an issue with our current color finding methods, I'm not going to lie. I thought they ran quite smoothly tbh.

There's no problem with it, I'm just saying it's a lot of code that isn't necessary. The only thing I'd say that needs to be edited, is the massive amounts of debug info to puts out. Either that, or we have the proggy print in the report box (like tara's chicken killer).

Blumblebee

2010-02-25 11:52:53

From: Coh3n
There's no problem with it, I'm just saying it's a lot of code that isn't necessary. The only thing I'd say that needs to be edited, is the massive amounts of debug info to puts out. Either that, or we have the proggy print in the report box (like tara's chicken killer).


yeah debugging is a bit much, but in our testing phase that's not always a bad thing.

I really dislike our progress reports too. They look silly and are ineffective for multiple players (imo).

And even if it is unnecessary, it's easy to update code everyone has a good understanding of, opposed to using code only one person has an understanding of.

Coh3n

2010-02-25 12:04:52

From: Blumblebee
yeah debugging is a bit much, but in our testing phase that's not always a bad thing.

I really dislike our progress reports too. They look silly and are ineffective for multiple players (imo).

And even if it is unnecessary, it's easy to update code everyone has a good understanding of, opposed to using code only one person has an understanding of.

Yeah, if no one minds, I'd like to redesign the progress report. :)

And that's the beautiful thing about both SmartColors and marpis's object finding - the only thing that will need updating is the object's records.

I'm on board for what ever everyone else wants to do. I'd like to see SmartColors utilized, but if more people would rather stay with the current method, then I'm not going to argue.

Sir R. M8gic1an

2010-02-25 15:08:27

SmartColors does take Min and Max colors into account ;)

In a way yes, I am probably the only person who is versatile enough in SmartColors to do something extreme with it. This does not mean you guys shouldn't look into it, because it is extremely powerful ;) object finding < 1 ms.

The progress report does need to be able to manage several skills. I don't mind what you do with it, as long as it meets that requirement.

As for object finding, it's probably best if you do stick with something you all know rather than try to implement something that is new to all of you. However, do learn the bits and bobs of smartcolors for your own benefit. ;)

~RM

Coh3n

2010-02-25 16:50:41

From: Rasta Magician
SmartColors does take Min and Max colors into account ;)

In a way yes, I am probably the only person who is versatile enough in SmartColors to do something extreme with it. This does not mean you guys shouldn't look into it, because it is extremely powerful ;) object finding < 1 ms.

The progress report does need to be able to manage several skills. I don't mind what you do with it, as long as it meets that requirement.

As for object finding, it's probably best if you do stick with something you all know rather than try to implement something that is new to all of you. However, do learn the bits and bobs of smartcolors for your own benefit. ;)

~RM

That's the thing, we aren't going to need to do anything extreme with it unless there's some massive update that breaks it. All we would have to do is update the records (which isn't hard at all). I think it would be better to utilize SmartColors. It wouldn't be that hard to learn if needed. It just uses the concepts we all know, in different ways to optimize object finding.

For multiple skills, the DeclarePlayers needs to be edited accordingly. I still don't know exactly what you meant when you gave an example of using Players.Strings/Booleans/etc. It very well may be better to stick with the TProggy.

As for implementing something new, the current object finding is new to us as marpis wrote it. No matter the code that gets put into MSI is going to be different then what we're used to, simply because we didn't write it. Also, I doubt that there will be any tweaks made to marpis's code anymore (with the exception of loading objects). The WaitWhileChopping, etc functions are still going to be useful. MSI being such a large project, when many objects get added, it'll also take up a lot of space, where as with SMART colors it takes 2 lines to create the object, and setup the details.

Blumblebee

2010-02-25 16:56:59

From: Coh3n
That's the thing, we aren't going to need to do anything extreme with it unless there's some massive update that breaks it. All we would have to do is update the records (which isn't hard at all). I think it would be better to utilize SmartColors. It wouldn't be that hard to learn if needed. It just uses the concepts we all know, in different ways to optimize object finding.

For multiple skills, the DeclarePlayers needs to be edited accordingly. I still don't know exactly what you meant when you gave an example of using Players.Strings/Booleans/etc. It very well may be better to stick with the TProggy.

As for implementing something new, the current object finding is new to us as marpis wrote it. No matter the code that gets put into MSI is going to be different then what we're used to, simply because we didn't write it. Also, I doubt that there will be any tweaks made to marpis's code anymore (with the exception of loading objects). The WaitWhileChopping, etc functions are still going to be useful. MSI being such a large project, when many objects get added, it'll also take up a lot of space, where as with SMART colors it takes 2 lines to create the object, and setup the details.


I dunno whatever you guys think is best I suppose. I would prefer to use marpis' way of loading/storing/finding objects and object records. I find that considering they both work, whatever is deemed easier in the long run should be our choice. I just think marpis' has the ability to be tweak/edited throughout the entirety of MSI, and smart colors does not come with that same functionality. besides, I don't find a difference in 1ms object finding and 10ms object finding, but that's just me.

Coh3n

2010-02-25 17:00:37

From: Blumblebee
I dunno whatever you guys think is best I suppose. I would prefer to use marpis' way of loading/storing/finding objects and object records. I find that considering they both work, whatever is deemed easier in the long run should be our choice. I just think marpis' has the ability to be tweak/edited throughout the entirety of MSI, and smart colors does not come with that same functionality. besides, I don't find a difference in 1ms object finding and 10ms object finding, but that's just me.

What do you mean it can be tweaked/edited throughout the entirety of MSI? Like the settings can be modified any any point in time? If so, I'm pretty sure SmartColors has the ability to do the same thing.

Blumblebee

2010-02-25 17:45:45

From: Coh3n
What do you mean it can be tweaked/edited throughout the entirety of MSI? Like the settings can be modified any any point in time? If so, I'm pretty sure SmartColors has the ability to do the same thing.


yeah pretty much, I mean just that throughout MSI's run here at SRL we should be able to easily implement new techniques if they arise, adjust code here and there for better functionality etc. I just dislike using stuff that only the elite (as almost everyone here could take the time to understand how smartcolors works I suppose) can understand.

that's my two bits, just where I stand. I will support the decision we end up making, whatever it may be. Thought I'd play a little devils advocate before just jumping over to smart colors.

RAM

2010-02-25 17:46:37

Testing right now…using the Players in the script…if anyone else needs to use them, let me know and i'll log out…they were there so i just hit run :p

Edit…
23/07/2009: SCAR 3.21 has been released, it has many bugfixes and
some nice new features, be sure to check it out at:
http://freddy1990.com/scar.php
If you downloaded 3.21 on 22-23/07, please redownload it. I modified
it so it sends me some extra data with error reports to help debugging.
(Forums: http://freddy1990.com/forums)
(IRC: irc.dal.net #freddy1990)
(Donate: http://freddy1990.com/donate.php)
Successfully compiled (6542 ms)
Line 68: [Hint] (12260:1): Variable 'HOLDER' never used in script C:\Documents and Settings\Owner\Desktop\SCAR80\includes\SRL\SRL\Core\CAutoRespond.scar
Line 133: [Hint] (12325:1): Variable 'TEMPRESP' never used in script C:\Documents and Settings\Owner\Desktop\SCAR80\includes\SRL\SRL\Core\CAutoRespond.scar
STARTING, using auto responder: False.
SRL Compiled in 5890 msec
SMART Initialized.
Loaded: Server 152, Members: False, Signed: True, Super Detail: False.
Setting up MSI took 0 ms.
Troll Cohen
Creating the NickTPA.
05:44:15 PM: troll cohen: Entering Func: MSI_PlayerSetup: Current Woodcutting level is 18.
05:44:17 PM: troll cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
05:44:17 PM: troll cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
05:44:18 PM: troll cohen: Entering Func: MSI_FindTool: Searching GameTab: 3.
05:44:18 PM: troll cohen: Entering Func: MSI_FindTool: Found Color: 5855581. For Tool: Steel Hatchet.
05:44:18 PM: troll cohen: Entering Func: MSI_FindTool: Found Color: 6118753. For Tool: Steel Hatchet.
05:44:18 PM: troll cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
05:44:20 PM: troll cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
05:44:20 PM: troll cohen: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
05:44:21 PM: troll cohen: Entering Func: MSI_FindTool: Searching GameTab: 2.
05:44:21 PM: troll cohen: Entering Func: MSI_FindTool: Found Color: 3618618. For Tool: Iron Hatchet.
05:44:21 PM: troll cohen: Entering Func: MSI_FindTool: Found DTM: Iron Hatchet.
05:44:21 PM: troll cohen: Entering Func: MSI_FindTool: Successfully Found Tool: Iron Hatchet.
Tree AutoColor = 1795124
05:44:29 PM: troll cohen: Player Action: MSI_MainLoop: Failed to walk to location!
NextPlayer
SwitchToPlayer(PlayerNo: 2, Active: False);
Cohen Gorak
Creating the NickTPA.
05:45:04 PM: cohen gorak: Entering Func: MSI_PlayerSetup: Current Woodcutting level is 11.
05:45:06 PM: cohen gorak: Entering Func: MSI_FindTool: Searching GameTab: 0.
05:45:06 PM: cohen gorak: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
05:45:07 PM: cohen gorak: Entering Func: MSI_FindTool: Searching GameTab: 3.
05:45:07 PM: cohen gorak: Entering Func: MSI_FindTool: Found Color: 5855581. For Tool: Steel Hatchet.
05:45:07 PM: cohen gorak: Entering Func: MSI_FindTool: Found Color: 6118753. For Tool: Steel Hatchet.
05:45:07 PM: cohen gorak: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
05:45:09 PM: cohen gorak: Entering Func: MSI_FindTool: Searching GameTab: 0.
05:45:09 PM: cohen gorak: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
05:45:10 PM: cohen gorak: Entering Func: MSI_FindTool: Searching GameTab: 2.
05:45:10 PM: cohen gorak: Entering Func: MSI_FindTool: Found Color: 3618618. For Tool: Iron Hatchet.
05:45:10 PM: cohen gorak: Entering Func: MSI_FindTool: Found DTM: Iron Hatchet.
05:45:10 PM: cohen gorak: Entering Func: MSI_FindTool: Successfully Found Tool: Iron Hatchet.
Tree AutoColor = 1794610
05:46:53 PM: cohen gorak: Entering Func: MSI_CountMaterials: Found 28 of item Logs
Couldn't find the bank. Exiting
05:48:32 PM: cohen gorak: Player Action: MSI_MainLoop: Failed to bank materials!
NextPlayer
SwitchToPlayer(PlayerNo: 3, Active: False);
Honour Cohen
Creating the NickTPA.
05:49:07 PM: honour cohen: Entering Func: MSI_PlayerSetup: Current Woodcutting level is 11.
05:49:08 PM: honour cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
05:49:08 PM: honour cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
05:49:10 PM: honour cohen: Entering Func: MSI_FindTool: Searching GameTab: 3.
05:49:10 PM: honour cohen: Entering Func: MSI_FindTool: Found Color: 5855581. For Tool: Steel Hatchet.
05:49:10 PM: honour cohen: Entering Func: MSI_FindTool: Found Color: 6118753. For Tool: Steel Hatchet.
05:49:10 PM: honour cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
05:49:11 PM: honour cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
05:49:11 PM: honour cohen: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
05:49:13 PM: honour cohen: Entering Func: MSI_FindTool: Searching GameTab: 2.
05:49:13 PM: honour cohen: Entering Func: MSI_FindTool: Found Color: 3618618. For Tool: Iron Hatchet.
05:49:13 PM: honour cohen: Entering Func: MSI_FindTool: Found DTM: Iron Hatchet.
05:49:13 PM: honour cohen: Entering Func: MSI_FindTool: Successfully Found Tool: Iron Hatchet.
Tree AutoColor = 1597746
05:49:44 PM: honour cohen: Detail: MSI_FindObjectsTPA: Own character!
05:49:44 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:49:44 PM: honour cohen: Detail: MSI_FindObjects: 48 objects found!
05:49:44 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:49:44 PM: honour cohen: Detail: MSI_FindObjects: 48 objects found!
05:49:48 PM: honour cohen: Detail: MSI_FindObjects: 2 objects found!
3
05:49:49 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:49:49 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:49:49 PM: honour cohen: Detail: MSI_FindObjects: 41 objects found!
05:49:49 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:49:49 PM: honour cohen: Detail: MSI_FindObjects: 41 objects found!
05:49:53 PM: honour cohen: Detail: MSI_FindObjects: 2 objects found!
4
05:49:53 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:49:53 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:49:53 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:49:53 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:49:53 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:49:56 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:49:56 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:49:57 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:49:57 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:49:57 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:49:57 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:49:58 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:49:58 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:49:58 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:49:58 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:50:05 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:50:05 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:50:06 PM: honour cohen: Detail: MSI_FindObjectsTPA: Own character!
05:50:06 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:06 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:06 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:06 PM: honour cohen: Detail: MSI_FindObjects: 23 objects found!
05:50:06 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:50:06 PM: honour cohen: Detail: MSI_FindObjects: 23 objects found!
05:50:09 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:09 PM: honour cohen: Detail: MSI_FindObjects: 2 objects found!
20
20
20
20
20
20
0
05:50:14 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:14 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:14 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:14 PM: honour cohen: Detail: MSI_FindObjects: 17 objects found!
05:50:14 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:50:14 PM: honour cohen: Detail: MSI_FindObjects: 17 objects found!
05:50:19 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:50:19 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:50:20 PM: honour cohen: Detail: MSI_FindObjectsTPA: Own character!
05:50:20 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:20 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:20 PM: honour cohen: Detail: MSI_FindObjects: 36 objects found!
05:50:24 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:50:24 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:50:25 PM: honour cohen: Detail: MSI_FindObjectsTPA: Own character!
05:50:25 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:25 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:25 PM: honour cohen: Detail: MSI_FindObjects: 29 objects found!
05:50:25 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:50:25 PM: honour cohen: Detail: MSI_FindObjects: 29 objects found!
05:50:28 PM: honour cohen: Detail: MSI_FindObjects: 3 objects found!
13
13
13
13
13
13
13
13
4
05:50:36 PM: honour cohen: Detail: MSI_FindObjectsTPA: Own character!
05:50:36 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:36 PM: honour cohen: Detail: MSI_FindObjects: 42 objects found!
05:50:39 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:50:39 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:50:40 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:40 PM: honour cohen: Detail: MSI_FindObjects: 37 objects found!
05:50:49 PM: honour cohen: Detail: MSI_FindObjects: 1 objects found!
0
05:50:50 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:50 PM: honour cohen: Detail: MSI_FindObjects: 42 objects found!
05:50:50 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:50:50 PM: honour cohen: Detail: MSI_FindObjects: 42 objects found!
05:50:53 PM: honour cohen: Detail: MSI_FindObjects: 3 objects found!
2
05:50:54 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:54 PM: honour cohen: Detail: MSI_FindObjects: 35 objects found!
05:50:57 PM: honour cohen: Detail: MSI_FindObjects: 3 objects found!
2
05:50:58 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:58 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:58 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:50:58 PM: honour cohen: Detail: MSI_FindObjects: 35 objects found!
05:51:01 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:51:01 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:51:02 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:02 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:02 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:02 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:02 PM: honour cohen: Detail: MSI_FindObjects: 41 objects found!
05:51:02 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:51:02 PM: honour cohen: Detail: MSI_FindObjects: 41 objects found!
05:51:07 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:51:07 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:51:07 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:07 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:51:08 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:51:08 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:51:11 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:51:11 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:51:12 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:12 PM: honour cohen: Detail: MSI_FindObjects: 27 objects found!
05:51:12 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:51:12 PM: honour cohen: Detail: MSI_FindObjects: 27 objects found!
05:51:16 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:16 PM: honour cohen: Detail: MSI_FindObjects: 3 objects found!
13
13
13
** Warning in SkillToCoords: Invalid Skill Name/Number: 'Random'**
0
05:51:24 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:24 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:24 PM: honour cohen: Detail: MSI_FindObjects: 28 objects found!
05:51:24 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:51:24 PM: honour cohen: Detail: MSI_FindObjects: 28 objects found!
05:51:24 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:51:24 PM: honour cohen: Detail: MSI_FindObjects: 28 objects found!
05:51:25 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:51:25 PM: honour cohen: Detail: MSI_FindObjects: 28 objects found!
05:51:30 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:51:30 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:51:31 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:31 PM: honour cohen: Detail: MSI_FindObjects: 26 objects found!
05:51:31 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:51:31 PM: honour cohen: Detail: MSI_FindObjects: 26 objects found!
05:51:34 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:51:34 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:51:35 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:35 PM: honour cohen: Detail: MSI_FindObjects: 19 objects found!
05:51:35 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:51:35 PM: honour cohen: Detail: MSI_FindObjects: 19 objects found!
05:51:38 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:38 PM: honour cohen: Detail: MSI_FindObjects: 1 objects found!
0
05:51:39 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:39 PM: honour cohen: Detail: MSI_FindObjects: 6 objects found!
05:51:39 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:51:39 PM: honour cohen: Detail: MSI_FindObjects: 6 objects found!
05:51:45 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:51:45 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:51:46 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:46 PM: honour cohen: Detail: MSI_FindObjects: 27 objects found!
05:51:51 PM: honour cohen: Detail: MSI_FindObjects: 2 objects found!
** Warning in SkillToCoords: Invalid Skill Name/Number: 'Random'**
0
05:51:59 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:59 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:51:59 PM: honour cohen: Detail: MSI_FindObjects: 40 objects found!
05:52:00 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:00 PM: honour cohen: Detail: MSI_FindObjects: 40 objects found!
05:52:03 PM: honour cohen: Detail: MSI_FindObjects: 3 objects found!
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
0
05:52:10 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:52:10 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:52:10 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:10 PM: honour cohen: Detail: MSI_FindObjects: 34 objects found!
05:52:21 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:52:21 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:52:21 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:52:21 PM: honour cohen: Detail: MSI_FindObjects: 20 objects found!
05:52:22 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:22 PM: honour cohen: Detail: MSI_FindObjects: 20 objects found!
05:52:25 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:52:25 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:52:26 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:52:26 PM: honour cohen: Detail: MSI_FindObjects: 14 objects found!
05:52:26 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:26 PM: honour cohen: Detail: MSI_FindObjects: 14 objects found!
05:52:26 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:26 PM: honour cohen: Detail: MSI_FindObjects: 14 objects found!
05:52:26 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:26 PM: honour cohen: Detail: MSI_FindObjects: 14 objects found!
05:52:32 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:52:32 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:52:33 PM: honour cohen: Detail: MSI_FindObjectsTPA: Own character!
05:52:33 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:52:33 PM: honour cohen: Detail: MSI_FindObjects: 9 objects found!
05:52:33 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:33 PM: honour cohen: Detail: MSI_FindObjects: 9 objects found!
05:52:37 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:52:37 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:52:37 PM: honour cohen: Detail: MSI_FindObjects: 12 objects found!
05:52:37 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:37 PM: honour cohen: Detail: MSI_FindObjects: 12 objects found!
05:52:37 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:37 PM: honour cohen: Detail: MSI_FindObjects: 12 objects found!
05:52:38 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:38 PM: honour cohen: Detail: MSI_FindObjects: 12 objects found!
05:52:43 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:52:43 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:52:43 PM: honour cohen: Detail: MSI_FindObjectsTPA: Own character!
05:52:43 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:52:43 PM: honour cohen: Detail: MSI_FindObjects: 25 objects found!
05:52:44 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:44 PM: honour cohen: Detail: MSI_FindObjects: 25 objects found!
05:52:48 PM: honour cohen: Detail: MSI_FindObjects: 19 objects found!
05:52:48 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:52:48 PM: honour cohen: Detail: MSI_FindObjects: 19 objects found!
05:52:53 PM: honour cohen: Detail: MSI_FindObjects: 1 objects found!
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
** Warning in SkillToCoords: Invalid Skill Name/Number: 'Random'**
6
05:53:21 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:53:21 PM: honour cohen: Detail: MSI_FindObjects: 45 objects found!
05:53:26 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:53:26 PM: honour cohen: Detail: MSI_FindObjects: 3 objects found!
26
27
27
27
27
27
27
27
27
27
0
05:53:30 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:53:30 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:53:30 PM: honour cohen: Detail: MSI_FindObjects: 48 objects found!
05:53:30 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:53:30 PM: honour cohen: Detail: MSI_FindObjects: 48 objects found!
05:53:30 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:53:30 PM: honour cohen: Detail: MSI_FindObjects: 48 objects found!
05:53:34 PM: honour cohen: Detail: MSI_FindObjects: 1 objects found!
0
05:53:35 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:53:35 PM: honour cohen: Detail: MSI_FindObjects: 47 objects found!
05:53:35 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:53:35 PM: honour cohen: Detail: MSI_FindObjects: 47 objects found!
05:53:39 PM: honour cohen: Detail: MSI_FindObjects: 2 objects found!
7
7
0
05:53:40 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:53:40 PM: honour cohen: Detail: MSI_FindObjects: 27 objects found!
05:53:41 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:53:41 PM: honour cohen: Detail: MSI_FindObjects: 27 objects found!
05:53:46 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:53:46 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:53:47 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:53:47 PM: honour cohen: Detail: MSI_FindObjects: 17 objects found!
05:53:47 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:53:47 PM: honour cohen: Detail: MSI_FindObjects: 17 objects found!
05:53:47 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:53:47 PM: honour cohen: Detail: MSI_FindObjects: 17 objects found!
05:53:51 PM: honour cohen: Detail: MSI_FindObjects: 1 objects found!
0
05:53:52 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:53:52 PM: honour cohen: Detail: MSI_FindObjects: 24 objects found!
05:53:52 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:53:52 PM: honour cohen: Detail: MSI_FindObjects: 24 objects found!
05:53:56 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:53:56 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:53:56 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:53:56 PM: honour cohen: Detail: MSI_FindObjects: 17 objects found!
05:53:56 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:53:56 PM: honour cohen: Detail: MSI_FindObjects: 17 objects found!
05:54:04 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:54:04 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:54:04 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:04 PM: honour cohen: Detail: MSI_FindObjects: 15 objects found!
05:54:10 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:54:10 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:54:11 PM: honour cohen: Detail: MSI_FindObjectsTPA: Own character!
05:54:11 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:11 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:11 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:11 PM: honour cohen: Detail: MSI_FindObjects: 30 objects found!
05:54:11 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:54:11 PM: honour cohen: Detail: MSI_FindObjects: 30 objects found!
05:54:14 PM: honour cohen: Detail: MSI_FindObjects: 2 objects found!
8
8
8
0
05:54:16 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:16 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:16 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:16 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:16 PM: honour cohen: Detail: MSI_FindObjects: 26 objects found!
05:54:20 PM: honour cohen: Detail: MSI_FindObjects: 3 objects found!
9
9
9
9
9
9
9
9
9
9
9
9
0
05:54:29 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:29 PM: honour cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:54:29 PM: honour cohen: Detail: MSI_FindObjects: 22 objects found!
05:54:29 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:54:29 PM: honour cohen: Detail: MSI_FindObjects: 22 objects found!
05:54:34 PM: honour cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:54:34 PM: honour cohen: Detail: MSI_FindObjects: Objects not found!
05:54:35 PM: honour cohen: Detail: MSI_FindObjects: 24 objects found!
05:54:35 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:54:35 PM: honour cohen: Detail: MSI_FindObjects: 24 objects found!
05:54:36 PM: honour cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:54:36 PM: honour cohen: Detail: MSI_FindObjects: 24 objects found!
05:54:40 PM: honour cohen: Detail: MSI_FindObjects: 4 objects found!
2
05:55:11 PM: honour cohen: Entering Func: MSI_CountMaterials: Found 28 of item Logs
05:55:34 PM: honour cohen: Detail: MSI_OpenBank: Successfuly Opened The Bank - veb
______________________________________________________________________________
| MSI Player Extreme Report |
------------------------------------------------------------------------------
| in Varrock at VE_Bank |
| |
| is at Woodcutting level 0. |
| was Woodcutting for 00s |
------------------------------------------------------------------------------
______________________________________________________________________________
| MSI Player Extreme Report |
------------------------------------------------------------------------------
| troll cohen in Varrock at VE_Bank |
| |
| troll cohen is at Woodcutting level 0. |
| troll cohen was Woodcutting for 00s |
------------------------------------------------------------------------------
______________________________________________________________________________
| MSI Player Extreme Report |
------------------------------------------------------------------------------
| cohen gorak in Varrock at VE_Bank |
| |
| cohen gorak is at Woodcutting level 0. |
| cohen gorak was Woodcutting for 00s |
| cohen gorak autoed 28 normal logs |
------------------------------------------------------------------------------
______________________________________________________________________________
| MSI Player Extreme Report |
------------------------------------------------------------------------------
| honour cohen in Varrock at VE_Bank |
| |
| honour cohen is at Woodcutting level 0. |
| honour cohen was Woodcutting for 06m 23s |
| honour cohen autoed 28 normal logs |
------------------------------------------------------------------------------
______________________________________________________________________________
| MSI Player Extreme Report |
------------------------------------------------------------------------------
| broddi cohen in Varrock at VE_Bank |
| |
| broddi cohen is at Woodcutting level 0. |
| broddi cohen was Woodcutting for 00s |
------------------------------------------------------------------------------
______________________________________________________________________________
| MSI Player Extreme Report |
------------------------------------------------------------------------------
| cohen abyss in Varrock at VE_Bank |
| |
| cohen abyss is at Woodcutting level 0. |
| cohen abyss was Woodcutting for 00s |
------------------------------------------------------------------------------
______________________________________________________________________________
| MSI Player Extreme Report |
------------------------------------------------------------------------------
| pirate cohen in Varrock at VE_Bank |
| |
| pirate cohen is at Woodcutting level 0. |
| pirate cohen was Woodcutting for 00s |
------------------------------------------------------------------------------
______________________________________________________________________________
| MSI Player Extreme Report |
------------------------------------------------------------------------------
| run cohen in Varrock at VE_Bank |
| |
| run cohen is at Woodcutting level 0. |
| run cohen was Woodcutting for 00s |
------------------------------------------------------------------------------
Tree AutoColor = 1597746
05:55:55 PM: honour cohen: Player Action: MSI_MainLoop: Failed to walk to location!
NextPlayer
SwitchToPlayer(PlayerNo: 4, Active: False);
Broddi Cohen
Creating the NickTPA.
05:56:27 PM: broddi cohen: Entering Func: MSI_PlayerSetup: Current Woodcutting level is 7.
05:56:29 PM: broddi cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
05:56:29 PM: broddi cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
05:56:30 PM: broddi cohen: Entering Func: MSI_FindTool: Searching GameTab: 3.
05:56:30 PM: broddi cohen: Entering Func: MSI_FindTool: Found Color: 5855581. For Tool: Steel Hatchet.
05:56:30 PM: broddi cohen: Entering Func: MSI_FindTool: Found Color: 6118753. For Tool: Steel Hatchet.
05:56:30 PM: broddi cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
05:56:32 PM: broddi cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
05:56:32 PM: broddi cohen: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
05:56:33 PM: broddi cohen: Entering Func: MSI_FindTool: Searching GameTab: 2.
05:56:33 PM: broddi cohen: Entering Func: MSI_FindTool: Found Color: 3618618. For Tool: Iron Hatchet.
05:56:33 PM: broddi cohen: Entering Func: MSI_FindTool: Found DTM: Iron Hatchet.
05:56:33 PM: broddi cohen: Entering Func: MSI_FindTool: Successfully Found Tool: Iron Hatchet.
Tree AutoColor = 1795120
05:56:57 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:56:57 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:56:57 PM: broddi cohen: Detail: MSI_FindObjects: 61 objects found!
05:56:57 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:56:57 PM: broddi cohen: Detail: MSI_FindObjects: 61 objects found!
05:57:00 PM: broddi cohen: Detail: MSI_FindObjects: 3 objects found!
2
05:57:01 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:01 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:01 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:01 PM: broddi cohen: Detail: MSI_FindObjects: 59 objects found!
05:57:04 PM: broddi cohen: Detail: MSI_FindObjects: 3 objects found!
15
12
12
7
8
0
05:57:10 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:10 PM: broddi cohen: Detail: MSI_FindObjects: 56 objects found!
05:57:11 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:57:11 PM: broddi cohen: Detail: MSI_FindObjects: 56 objects found!
05:57:14 PM: broddi cohen: Detail: MSI_FindObjects: 4 objects found!
23
22
19
19
19
19
19
19
19
20
0
05:57:25 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:25 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:25 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:25 PM: broddi cohen: Detail: MSI_FindObjects: 46 objects found!
05:57:26 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:57:26 PM: broddi cohen: Detail: MSI_FindObjects: 46 objects found!
05:57:31 PM: broddi cohen: Detail: MSI_FindObjects: 3 objects found!
8
8
8
0
05:57:33 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:33 PM: broddi cohen: Detail: MSI_FindObjects: 45 objects found!
05:57:33 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:57:33 PM: broddi cohen: Detail: MSI_FindObjects: 45 objects found!
05:57:38 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:57:38 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:57:38 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:38 PM: broddi cohen: Detail: MSI_FindObjects: 39 objects found!
05:57:39 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:57:39 PM: broddi cohen: Detail: MSI_FindObjects: 39 objects found!
05:57:42 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:57:42 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:57:43 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:43 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:43 PM: broddi cohen: Detail: MSI_FindObjects: 28 objects found!
05:57:43 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:57:43 PM: broddi cohen: Detail: MSI_FindObjects: 28 objects found!
05:57:48 PM: broddi cohen: Detail: MSI_FindObjects: 1 objects found!
0
05:57:48 PM: broddi cohen: Detail: MSI_FindObjects: 25 objects found!
05:57:49 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:57:49 PM: broddi cohen: Detail: MSI_FindObjects: 25 objects found!
05:57:54 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:57:54 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:57:54 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Own character!
05:57:54 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:54 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:54 PM: broddi cohen: Detail: MSI_FindObjects: 15 objects found!
05:57:54 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:57:54 PM: broddi cohen: Detail: MSI_FindObjects: 15 objects found!
05:57:58 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:57:58 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:57:59 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:57:59 PM: broddi cohen: Detail: MSI_FindObjects: 10 objects found!
05:57:59 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:57:59 PM: broddi cohen: Detail: MSI_FindObjects: 10 objects found!
05:58:03 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
13
13
0
05:58:05 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
05:58:05 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:05 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
05:58:05 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:05 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:58:06 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
05:58:06 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:06 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
05:58:10 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:58:10 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:58:11 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:11 PM: broddi cohen: Detail: MSI_FindObjects: 12 objects found!
05:58:14 PM: broddi cohen: Detail: MSI_FindObjects: 3 objects found!
27
0
05:58:19 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:19 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
05:58:20 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:20 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
05:58:20 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:20 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
05:58:27 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:58:27 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:58:27 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:27 PM: broddi cohen: Detail: MSI_FindObjects: 32 objects found!
05:58:28 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:28 PM: broddi cohen: Detail: MSI_FindObjects: 32 objects found!
05:58:32 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:58:32 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:58:33 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:33 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:33 PM: broddi cohen: Detail: MSI_FindObjects: 22 objects found!
05:58:33 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:33 PM: broddi cohen: Detail: MSI_FindObjects: 22 objects found!
05:58:38 PM: broddi cohen: Detail: MSI_FindObjects: 1 objects found!
0
05:58:39 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:39 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:39 PM: broddi cohen: Detail: MSI_FindObjects: 26 objects found!
05:58:39 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:39 PM: broddi cohen: Detail: MSI_FindObjects: 26 objects found!
05:58:44 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
24
24
24
24
24
24
0
05:58:47 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:47 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
05:58:47 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:47 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
05:58:52 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:58:52 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:58:53 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:53 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:53 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:58:53 PM: broddi cohen: Detail: MSI_FindObjects: 21 objects found!
05:58:53 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:58:53 PM: broddi cohen: Detail: MSI_FindObjects: 21 objects found!
05:58:58 PM: broddi cohen: Detail: MSI_FindObjects: 3 objects found!
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
17
0
05:59:09 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:59:09 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:59:09 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:59:09 PM: broddi cohen: Detail: MSI_FindObjects: 23 objects found!
05:59:16 PM: broddi cohen: Detail: MSI_FindObjects: 1 objects found!
0
05:59:17 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:59:17 PM: broddi cohen: Detail: MSI_FindObjects: 17 objects found!
05:59:21 PM: broddi cohen: Detail: MSI_FindObjects: 4 objects found!
6
6
6
6
6
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
23
0
05:59:35 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:59:35 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:59:35 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:59:35 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
05:59:36 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:59:36 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
05:59:39 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
8
8
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
0
05:59:53 PM: broddi cohen: Detail: MSI_FindObjects: 24 objects found!
05:59:53 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:59:53 PM: broddi cohen: Detail: MSI_FindObjects: 24 objects found!
05:59:53 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:59:53 PM: broddi cohen: Detail: MSI_FindObjects: 24 objects found!
05:59:57 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
05:59:57 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
05:59:57 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
05:59:57 PM: broddi cohen: Detail: MSI_FindObjects: 23 objects found!
05:59:58 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
05:59:58 PM: broddi cohen: Detail: MSI_FindObjects: 23 objects found!
06:00:01 PM: broddi cohen: Detail: MSI_FindObjects: 3 objects found!
22
22
22
22
22
0
06:00:04 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:04 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:04 PM: broddi cohen: Detail: MSI_FindObjects: 15 objects found!
06:00:04 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:04 PM: broddi cohen: Detail: MSI_FindObjects: 15 objects found!
06:00:08 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:00:08 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:00:09 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:09 PM: broddi cohen: Detail: MSI_FindObjects: 31 objects found!
06:00:09 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:09 PM: broddi cohen: Detail: MSI_FindObjects: 31 objects found!
06:00:13 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:00:13 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:00:14 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:14 PM: broddi cohen: Detail: MSI_FindObjects: 32 objects found!
06:00:14 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:14 PM: broddi cohen: Detail: MSI_FindObjects: 32 objects found!
06:00:18 PM: broddi cohen: Detail: MSI_FindObjects: 4 objects found!
14
14
0
06:00:20 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:20 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:20 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:20 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:20 PM: broddi cohen: Detail: MSI_FindObjects: 33 objects found!
06:00:20 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:20 PM: broddi cohen: Detail: MSI_FindObjects: 33 objects found!
06:00:24 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:00:24 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:00:25 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:25 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:25 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:25 PM: broddi cohen: Detail: MSI_FindObjects: 26 objects found!
06:00:25 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:25 PM: broddi cohen: Detail: MSI_FindObjects: 26 objects found!
06:00:32 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:00:32 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:00:33 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:33 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:33 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
06:00:33 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:33 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
06:00:36 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:00:36 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:00:37 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:37 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:37 PM: broddi cohen: Detail: MSI_FindObjects: 12 objects found!
06:00:37 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:37 PM: broddi cohen: Detail: MSI_FindObjects: 12 objects found!
06:00:41 PM: broddi cohen: Detail: MSI_FindObjects: 1 objects found!
10
13
13
0
06:00:43 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:43 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
06:00:43 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:43 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
06:00:50 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:00:50 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:00:51 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:51 PM: broddi cohen: Detail: MSI_FindObjects: 22 objects found!
06:00:51 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:51 PM: broddi cohen: Detail: MSI_FindObjects: 22 objects found!
06:00:52 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:00:52 PM: broddi cohen: Detail: MSI_FindObjects: 22 objects found!
06:00:56 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
2
06:00:57 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:00:57 PM: broddi cohen: Detail: MSI_FindObjects: 17 objects found!
06:01:00 PM: broddi cohen: Detail: MSI_FindObjects: 3 objects found!
19
19
19
0
06:01:02 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:01:02 PM: broddi cohen: Detail: MSI_FindObjects: 13 objects found!
06:01:02 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:02 PM: broddi cohen: Detail: MSI_FindObjects: 13 objects found!
06:01:07 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:01:07 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
5
5
0
06:01:08 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:01:08 PM: broddi cohen: Detail: MSI_FindObjects: 10 objects found!
06:01:08 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:08 PM: broddi cohen: Detail: MSI_FindObjects: 10 objects found!
06:01:09 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:09 PM: broddi cohen: Detail: MSI_FindObjects: 10 objects found!
06:01:09 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:09 PM: broddi cohen: Detail: MSI_FindObjects: 10 objects found!
06:01:09 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:09 PM: broddi cohen: Detail: MSI_FindObjects: 10 objects found!
06:01:15 PM: broddi cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:01:15 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:16 PM: broddi cohen: Detail: MSI_FindObjects: 8 objects found!
06:01:17 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:17 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:01:17 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:01:17 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
06:01:18 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:18 PM: broddi cohen: Detail: MSI_FindObjects: 2 objects found!
06:01:22 PM: broddi cohen: Detail: MSI_FindObjects: 1 objects found!
0
06:01:23 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:01:23 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:23 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:23 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:23 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:23 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:24 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:24 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:24 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:24 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:25 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:25 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:01:25 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:01:25 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:26 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:26 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:26 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:26 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:26 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:26 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:27 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:27 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:27 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:27 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:01:28 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:01:28 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:28 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:28 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:28 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:28 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:29 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:29 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:29 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:29 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:30 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:30 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:01:30 PM: broddi cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:01:30 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:30 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:30 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:30 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:30 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:31 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:31 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:31 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:31 PM: broddi cohen: Detail: MSI_FindObjects: 9 objects found!
06:01:31 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:31 PM: broddi cohen: Detail: MSI_FindObjects: Objects not found!
06:01:31 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
06:01:32 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:32 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
06:01:32 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:32 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
06:01:32 PM: broddi cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:01:32 PM: broddi cohen: Detail: MSI_FindObjects: 18 objects found!
06:01:40 PM: broddi cohen: Detail: MSI_FindObjects: 1 objects found!
0
06:02:06 PM: broddi cohen: Entering Func: MSI_CountMaterials: Found 27 of item Logs
06:02:30 PM: broddi cohen: Detail: MSI_OpenBank: Successfuly Opened The Bank - veb
06:02:36 PM: broddi cohen: Player Action: MSI_MainLoop: Failed to bank materials!
NextPlayer
SwitchToPlayer(PlayerNo: 5, Active: False);
Creating the NickTPA.
06:02:46 PM: cohen abyss: Entering Func: MSI_PlayerSetup: Current Woodcutting level is 0.
06:02:46 PM: cohen abyss: Entering Func: MSI_FindTool: Searching GameTab: 0.
06:02:46 PM: cohen abyss: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
06:02:46 PM: cohen abyss: Entering Func: MSI_FindTool: Searching GameTab: 2.
06:02:46 PM: cohen abyss: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
06:02:46 PM: cohen abyss: Entering Func: MSI_FindTool: Searching GameTab: 0.
06:02:47 PM: cohen abyss: Entering Func: MSI_FindTool: Error Finding DTM: Bronze Hatchet.
06:02:47 PM: cohen abyss: Entering Func: MSI_FindTool: Searching GameTab: 3.
06:02:47 PM: cohen abyss: Entering Func: MSI_FindTool: Error Finding DTM: Bronze Hatchet.
06:02:47 PM: cohen abyss: Entering Func: MSI_SetupPlayer: Invalid Player.Integers[P_LOC].
06:02:47 PM: cohen abyss: Entering Func: MSI_SetupPlayer: Unable to Open Bank.
06:02:47 PM: cohen abyss: Player Action: MSI_MainLoop: Failed to setup player!
NextPlayer
SwitchToPlayer(PlayerNo: 6, Active: False);
Creating the NickTPA.
06:02:58 PM: pirate cohen: Entering Func: MSI_PlayerSetup: Current Woodcutting level is 0.
06:02:58 PM: pirate cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
06:02:58 PM: pirate cohen: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
06:03:00 PM: pirate cohen: Entering Func: MSI_FindTool: Searching GameTab: 2.
06:03:00 PM: pirate cohen: Entering Func: MSI_FindTool: Found Color: 3618618. For Tool: Iron Hatchet.
06:03:00 PM: pirate cohen: Entering Func: MSI_FindTool: Found DTM: Iron Hatchet.
06:03:00 PM: pirate cohen: Entering Func: MSI_FindTool: Successfully Found Tool: Iron Hatchet.
Tree AutoColor = 1795120
06:03:35 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Own character!
06:03:35 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:03:35 PM: pirate cohen: Detail: MSI_FindObjects: 56 objects found!
06:03:38 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Own character!
06:03:38 PM: pirate cohen: Detail: MSI_FindObjects: 1 objects found!
25
25
25
25
0
06:03:41 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:03:41 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:03:41 PM: pirate cohen: Detail: MSI_FindObjects: 52 objects found!
06:03:41 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:03:41 PM: pirate cohen: Detail: MSI_FindObjects: 52 objects found!
06:03:44 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
14
14
14
14
14
0
06:03:47 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:03:47 PM: pirate cohen: Detail: MSI_FindObjects: 44 objects found!
06:03:47 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:03:47 PM: pirate cohen: Detail: MSI_FindObjects: 44 objects found!
06:03:51 PM: pirate cohen: Detail: MSI_FindObjects: 4 objects found!
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
11
16
16
16
16
16
0
06:04:07 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:07 PM: pirate cohen: Detail: MSI_FindObjects: 38 objects found!
06:04:07 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:04:07 PM: pirate cohen: Detail: MSI_FindObjects: 38 objects found!
06:04:15 PM: pirate cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:04:15 PM: pirate cohen: Detail: MSI_FindObjects: Objects not found!
06:04:16 PM: pirate cohen: Detail: MSI_FindObjects: 22 objects found!
06:04:16 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:04:16 PM: pirate cohen: Detail: MSI_FindObjects: 22 objects found!
06:04:16 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:04:16 PM: pirate cohen: Detail: MSI_FindObjects: 22 objects found!
06:04:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:04:22 PM: pirate cohen: Detail: MSI_FindObjects: Objects not found!
06:04:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Own character!
06:04:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:22 PM: pirate cohen: Detail: MSI_FindObjects: 40 objects found!
06:04:26 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
13
13
13
0
06:04:32 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:32 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:32 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:32 PM: pirate cohen: Detail: MSI_FindObjects: 33 objects found!
06:04:39 PM: pirate cohen: Detail: MSI_FindObjects: 1 objects found!
0
06:04:40 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:40 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:40 PM: pirate cohen: Detail: MSI_FindObjects: 40 objects found!
06:04:41 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:04:41 PM: pirate cohen: Detail: MSI_FindObjects: 40 objects found!
06:04:45 PM: pirate cohen: Detail: MSI_FindObjects: 1 objects found!
0
06:04:45 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:45 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:45 PM: pirate cohen: Detail: MSI_FindObjects: 31 objects found!
06:04:46 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:04:46 PM: pirate cohen: Detail: MSI_FindObjects: 31 objects found!
06:04:49 PM: pirate cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:04:49 PM: pirate cohen: Detail: MSI_FindObjects: Objects not found!
06:04:50 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:50 PM: pirate cohen: Detail: MSI_FindObjects: 27 objects found!
06:04:50 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:04:50 PM: pirate cohen: Detail: MSI_FindObjects: 27 objects found!
06:04:55 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:55 PM: pirate cohen: Detail: MSI_FindObjects: 1 objects found!
0
06:04:56 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:56 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:56 PM: pirate cohen: Detail: MSI_FindObjects: 38 objects found!
06:04:59 PM: pirate cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:04:59 PM: pirate cohen: Detail: MSI_FindObjects: Objects not found!
06:04:59 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:04:59 PM: pirate cohen: Detail: MSI_FindObjects: 33 objects found!
06:04:59 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:04:59 PM: pirate cohen: Detail: MSI_FindObjects: 33 objects found!
06:05:00 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:05:00 PM: pirate cohen: Detail: MSI_FindObjects: 33 objects found!
06:05:04 PM: pirate cohen: Detail: MSI_FindObjects: 2 objects found!
4
06:05:05 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:05:05 PM: pirate cohen: Detail: MSI_FindObjects: 33 objects found!
06:05:09 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:05:09 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:05:09 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:05:09 PM: pirate cohen: Detail: MSI_FindObjects: 33 objects found!
06:05:09 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:05:09 PM: pirate cohen: Detail: MSI_FindObjects: 33 objects found!
06:05:14 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
15
15
15
15
15
15
15
15
17
7
** Warning in SkillToCoords: Invalid Skill Name/Number: 'Random'**
0
06:05:25 PM: pirate cohen: Detail: MSI_FindObjects: 44 objects found!
06:05:26 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:05:26 PM: pirate cohen: Detail: MSI_FindObjects: 44 objects found!
06:05:30 PM: pirate cohen: Detail: MSI_FindObjects: 2 objects found!
5
5
5
0
06:05:31 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:05:31 PM: pirate cohen: Detail: MSI_FindObjects: 35 objects found!
06:05:32 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:05:32 PM: pirate cohen: Detail: MSI_FindObjects: 35 objects found!
06:05:38 PM: pirate cohen: Detail: MSI_FindObjects: 2 objects found!
2
06:05:38 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:05:38 PM: pirate cohen: Detail: MSI_FindObjects: 25 objects found!
06:05:38 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:05:38 PM: pirate cohen: Detail: MSI_FindObjects: 25 objects found!
06:05:39 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:05:39 PM: pirate cohen: Detail: MSI_FindObjects: 25 objects found!
06:05:42 PM: pirate cohen: Detail: MSI_FindObjects: 2 objects found!
0
06:05:43 PM: pirate cohen: Detail: MSI_FindObjects: 18 objects found!
06:05:47 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
17
18
7
0
06:05:49 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:05:49 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:05:49 PM: pirate cohen: Detail: MSI_FindObjects: 19 objects found!
06:05:49 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:05:49 PM: pirate cohen: Detail: MSI_FindObjects: 19 objects found!
06:05:56 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:05:56 PM: pirate cohen: Detail: MSI_FindObjects: 31 objects found!
06:05:56 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:05:56 PM: pirate cohen: Detail: MSI_FindObjects: 31 objects found!
06:06:03 PM: pirate cohen: Detail: MSI_FindObjects: 2 objects found!
10
7
7
7
7
7
7
7
7
7
7
7
7
6
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
4
06:06:20 PM: pirate cohen: Detail: MSI_FindObjects: 44 objects found!
06:06:21 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:06:21 PM: pirate cohen: Detail: MSI_FindObjects: 44 objects found!
06:06:26 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
10
10
10
10
10
10
10
10
10
10
10
10
9
9
9
9
9
9
9
9
9
9
0
06:06:34 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:06:34 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:06:34 PM: pirate cohen: Detail: MSI_FindObjects: 41 objects found!
06:06:35 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:06:35 PM: pirate cohen: Detail: MSI_FindObjects: 41 objects found!
06:06:35 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:06:35 PM: pirate cohen: Detail: MSI_FindObjects: 41 objects found!
06:06:35 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:06:35 PM: pirate cohen: Detail: MSI_FindObjects: 41 objects found!
06:06:39 PM: pirate cohen: Detail: MSI_FindObjects: 4 objects found!
0
06:06:44 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:06:44 PM: pirate cohen: Detail: MSI_FindObjects: 45 objects found!
06:06:44 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:06:44 PM: pirate cohen: Detail: MSI_FindObjects: 45 objects found!
06:06:44 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:06:44 PM: pirate cohen: Detail: MSI_FindObjects: 45 objects found!
06:06:49 PM: pirate cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:06:49 PM: pirate cohen: Detail: MSI_FindObjects: Objects not found!
06:06:50 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:06:50 PM: pirate cohen: Detail: MSI_FindObjects: 28 objects found!
06:06:50 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:06:50 PM: pirate cohen: Detail: MSI_FindObjects: 28 objects found!
06:06:52 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
19
1
06:06:53 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:06:53 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:06:53 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:06:53 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:06:53 PM: pirate cohen: Detail: MSI_FindObjects: 27 objects found!
06:06:58 PM: pirate cohen: Detail: MSI_FindObjects: 1 objects found!
7
7
7
7
0
06:07:05 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:07:05 PM: pirate cohen: Detail: MSI_FindObjects: 5 objects found!
06:07:06 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:07:06 PM: pirate cohen: Detail: MSI_FindObjects: 5 objects found!
06:07:13 PM: pirate cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:07:13 PM: pirate cohen: Detail: MSI_FindObjects: Objects not found!
06:07:13 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:07:13 PM: pirate cohen: Detail: MSI_FindObjects: 14 objects found!
06:07:13 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:07:13 PM: pirate cohen: Detail: MSI_FindObjects: 14 objects found!
06:07:21 PM: pirate cohen: Detail: MSI_FindObjects: 4 objects found!
24
15
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
20
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
16
06:07:46 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:07:46 PM: pirate cohen: Detail: MSI_FindObjects: 49 objects found!
06:07:47 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:07:47 PM: pirate cohen: Detail: MSI_FindObjects: 49 objects found!
06:07:50 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:07:50 PM: pirate cohen: Detail: MSI_FindObjects: 2 objects found!
23
23
0
06:07:54 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:07:54 PM: pirate cohen: Detail: MSI_FindObjects: 52 objects found!
06:07:59 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
11
9
9
9
9
9
9
9
9
0
06:08:06 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:08:06 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:08:06 PM: pirate cohen: Detail: MSI_FindObjects: 43 objects found!
06:08:11 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
15
15
15
15
15
15
15
15
15
15
15
15
17
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
20
20
20
0
06:08:28 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:08:28 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:08:28 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:08:28 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:08:28 PM: pirate cohen: Detail: MSI_FindObjects: 42 objects found!
06:08:28 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:08:28 PM: pirate cohen: Detail: MSI_FindObjects: 42 objects found!
06:08:35 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
9
9
9
5
5
5
5
5
5
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
11
14
14
14
14
14
14
14
06:09:03 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:03 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:03 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:03 PM: pirate cohen: Detail: MSI_FindObjects: 35 objects found!
06:09:06 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:06 PM: pirate cohen: Detail: MSI_FindObjects: 2 objects found!
1
06:09:07 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Own character!
06:09:07 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:07 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:07 PM: pirate cohen: Detail: MSI_FindObjects: 29 objects found!
06:09:10 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:10 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
4
06:09:11 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:11 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:11 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:11 PM: pirate cohen: Detail: MSI_FindObjects: 25 objects found!
06:09:11 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:09:11 PM: pirate cohen: Detail: MSI_FindObjects: 25 objects found!
06:09:16 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:16 PM: pirate cohen: Detail: MSI_FindObjects: 2 objects found!
16
10
10
0
06:09:17 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:17 PM: pirate cohen: Detail: MSI_FindObjects: 25 objects found!
06:09:18 PM: pirate cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:09:18 PM: pirate cohen: Detail: MSI_FindObjects: 25 objects found!
06:09:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:09:22 PM: pirate cohen: Detail: MSI_FindObjects: Objects not found!
06:09:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:22 PM: pirate cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:09:22 PM: pirate cohen: Detail: MSI_FindObjects: 27 objects found!
06:09:25 PM: pirate cohen: Detail: MSI_FindObjects: 3 objects found!
14
14
14
14
14
14
14
06:09:48 PM: pirate cohen: Entering Func: CreateWalkIndex(WALK_BANK_Final);: Failed to find bankers on MiniMap.
06:09:48 PM: pirate cohen: Player Action: MSI_MainLoop: Failed to walk to bank!
NextPlayer
SwitchToPlayer(PlayerNo: 7, Active: False);
Run Cohen
Creating the NickTPA.
06:10:21 PM: run cohen: Entering Func: MSI_PlayerSetup: Current Woodcutting level is 7.
06:10:22 PM: run cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
06:10:22 PM: run cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
06:10:24 PM: run cohen: Entering Func: MSI_FindTool: Searching GameTab: 3.
06:10:24 PM: run cohen: Entering Func: MSI_FindTool: Found Color: 5855581. For Tool: Steel Hatchet.
06:10:24 PM: run cohen: Entering Func: MSI_FindTool: Found Color: 6118753. For Tool: Steel Hatchet.
06:10:24 PM: run cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
06:10:25 PM: run cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
06:10:25 PM: run cohen: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
06:10:26 PM: run cohen: Entering Func: MSI_FindTool: Searching GameTab: 2.
06:10:26 PM: run cohen: Entering Func: MSI_FindTool: Found Color: 3618618. For Tool: Iron Hatchet.
06:10:26 PM: run cohen: Entering Func: MSI_FindTool: Found DTM: Iron Hatchet.
06:10:26 PM: run cohen: Entering Func: MSI_FindTool: Successfully Found Tool: Iron Hatchet.
Tree AutoColor = 1599537
06:11:00 PM: run cohen: Detail: MSI_FindObjectsTPA: Own character!
06:11:00 PM: run cohen: Detail: MSI_FindObjects: 65 objects found!
06:11:00 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:00 PM: run cohen: Detail: MSI_FindObjects: 65 objects found!
06:11:04 PM: run cohen: Detail: MSI_FindObjects: 3 objects found!
21
21
21
21
0
06:11:06 PM: run cohen: Detail: MSI_FindObjectsTPA: Own character!
06:11:06 PM: run cohen: Detail: MSI_FindObjects: 59 objects found!
06:11:06 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:06 PM: run cohen: Detail: MSI_FindObjects: 59 objects found!
06:11:07 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:07 PM: run cohen: Detail: MSI_FindObjects: 59 objects found!
06:11:10 PM: run cohen: Detail: MSI_FindObjects: 3 objects found!
19
19
19
0
06:11:11 PM: run cohen: Detail: MSI_FindObjects: 53 objects found!
06:11:11 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:11 PM: run cohen: Detail: MSI_FindObjects: 53 objects found!
06:11:12 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:12 PM: run cohen: Detail: MSI_FindObjects: 53 objects found!
06:11:16 PM: run cohen: Detail: MSI_FindObjects: 4 objects found!
22
22
0
06:11:17 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:11:17 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:11:17 PM: run cohen: Detail: MSI_FindObjects: 34 objects found!
06:11:17 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:17 PM: run cohen: Detail: MSI_FindObjects: 34 objects found!
06:11:22 PM: run cohen: Detail: MSI_FindObjects: 3 objects found!
0
06:11:22 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:11:22 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:11:22 PM: run cohen: Detail: MSI_FindObjects: 40 objects found!
06:11:23 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:23 PM: run cohen: Detail: MSI_FindObjects: 40 objects found!
06:11:26 PM: run cohen: Detail: MSI_FindObjects: 4 objects found!
18
18
18
18
18
18
18
18
18
18
18
0
06:11:31 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:11:31 PM: run cohen: Detail: MSI_FindObjects: 34 objects found!
06:11:31 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:31 PM: run cohen: Detail: MSI_FindObjects: 34 objects found!
06:11:31 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:31 PM: run cohen: Detail: MSI_FindObjects: 34 objects found!
06:11:36 PM: run cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:11:36 PM: run cohen: Detail: MSI_FindObjects: Objects not found!
06:11:36 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:11:36 PM: run cohen: Detail: MSI_FindObjects: 23 objects found!
06:11:37 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:37 PM: run cohen: Detail: MSI_FindObjects: 23 objects found!
06:11:40 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:11:40 PM: run cohen: Detail: MSI_FindObjects: 2 objects found!
8
8
8
8
8
8
8
8
8
8
8
8
8
12
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
8
0
06:11:57 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:11:57 PM: run cohen: Detail: MSI_FindObjects: 25 objects found!
06:11:57 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:11:57 PM: run cohen: Detail: MSI_FindObjects: 25 objects found!
06:12:01 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:12:01 PM: run cohen: Detail: MSI_FindObjects: 1 objects found!
8
8
8
8
0
06:12:07 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:12:08 PM: run cohen: Detail: MSI_FindObjects: 32 objects found!
06:12:08 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:12:08 PM: run cohen: Detail: MSI_FindObjects: 32 objects found!
06:12:12 PM: run cohen: Detail: MSI_FindObjectsTPA: Own character!
06:12:12 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:12:12 PM: run cohen: Detail: MSI_FindObjects: 36 objects found!
06:12:13 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:12:13 PM: run cohen: Detail: MSI_FindObjects: 36 objects found!
06:12:13 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:12:13 PM: run cohen: Detail: MSI_FindObjects: 36 objects found!
06:12:16 PM: run cohen: Detail: MSI_FindObjects: 3 objects found!
0
06:12:17 PM: run cohen: Detail: MSI_FindObjectsTPA: Own character!
06:12:17 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:12:17 PM: run cohen: Detail: MSI_FindObjects: 36 objects found!
06:12:20 PM: run cohen: Detail: MSI_FindObjectsTPA: No colors found!
06:12:20 PM: run cohen: Detail: MSI_FindObjects: Objects not found!
06:12:21 PM: run cohen: Detail: MSI_FindObjectsTPA: Not enough points!
06:12:21 PM: run cohen: Detail: MSI_FindObjects: 32 objects found!
06:12:21 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:12:21 PM: run cohen: Detail: MSI_FindObjects: 32 objects found!
06:12:21 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:12:21 PM: run cohen: Detail: MSI_FindObjects: 32 objects found!
06:12:22 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:12:22 PM: run cohen: Detail: MSI_FindObjects: 32 objects found!
06:12:22 PM: run cohen: Detail: MSI_FindObjects: Uptext didn't match!
06:12:22 PM: run cohen: Detail: MSI_FindObjects: 32 objects found!
Successfully executed

first couple of players logged in with full inventory..walked to gate across from V east gate and logged out…

finally got 1 to log in with empty inventory…chopped a load…banked…miss-clicked trees inside of wall and logged out there…

a couple of perfect runes with ones loggin in with empty inventories….

I noticed it does some searching on screen before deposting logs….

my test more later with my own players….

NCDS

2010-02-25 17:55:46

From: RAM
Testing right now…using the Players in the script…if anyone else needs to use them, let me know and i'll log out…they were there so i just hit run :p


Your fine, Coh3n kept them in there for that purpose ;)

Coh3n

2010-02-25 17:56:37

From: Blumblebee
yeah pretty much, I mean just that throughout MSI's run here at SRL we should be able to easily implement new techniques if they arise, adjust code here and there for better functionality etc. I just dislike using stuff that only the elite (as almost everyone here could take the time to understand how smartcolors works I suppose) can understand.

that's my two bits, just where I stand. I will support the decision we end up making, whatever it may be. Thought I'd play a little devils advocate before just jumping over to smart colors.

That's exactly what I want you to do. :p That's why I brought it up. Hopefully we'll have some other people comment about it soon.

Sir R. M8gic1an

2010-02-26 09:06:14

Back to SmartColors, the advantage with using marpis' code is that all MSI can edit it, while SmartColors can only be edited by devs. You could always just add a variation of SC to MSI if it came to the need of it.

~RM

Coh3n

2010-02-26 10:40:26

From: Rasta Magician
Back to SmartColors, the advantage with using marpis' code is that all MSI can edit it, while SmartColors can only be edited by devs. You could always just add a variation of SC to MSI if it came to the need of it.

~RM

I agree. I finished the progress report last night and there are a lot of advantages of having the MSI-specific object finding. I know I was all for SC, but my opinion has changed. :p

NCDS

2010-02-28 14:40:40

Ok so has anyone made any other progress with anything?

I'm going to test right now and I'll edit..

Edit:
Compiling errors?!

Line 161: [Error] (25612:35): Unknown identifier 'MSI_ARRAYS' in script C:\Users\Administrator\SRL\Scar 3.23 Beta\includes\srl\srl\MSI\MainLoop.scar
@Coh3n:
Yeah it seems you forgot something.. ;)
Not really sure whats going on with that, so I'll let you put it in.
Let me know when you commit.

Coh3n

2010-02-28 17:33:59

Read the thread about the new proggy. You have to add something to you SRL. Its pretty inconvenient but RM gave me an idea on how to alter it so we don't have to change the SRL include.

I am away today and tomorrow and was away yesterday (I'm on my phone right now), so I hope to make the necessary adjustments tomorrow night or Tuesday + start on the organization. For now, you can edit your SRL just to test if you don't mind.

Cheers,
Coh3n

NCDS

2010-02-28 17:49:32

Ah alright, I'll look into it then.

Coh3n

2010-03-02 00:24:31

From: NCDS
Ah alright, I'll look into it then.

I've edited the first post, and updated to rev. 30.

@RAM: Thanks for that feedback (I didn't see the edit until now :p). NCDS did some updating to the walking, and I wrote a new OpenBank function, so some of those issues should be improved. :)

Cazax

2010-03-02 07:30:44

Successfully compiled (2424 ms)
SRL Compiled in 16 msec
SMART Initialized.
Loaded: Server 152, Members: False, Signed: True, Super Detail: False.
Setting up MSI took 0 ms.
09:27:56 AM: empty cohen: Entering Func: MSI_PlayerSetup: Current Woodcutting level is 16.
09:28:04 AM: empty cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
09:28:04 AM: empty cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
09:28:11 AM: empty cohen: Entering Func: MSI_FindTool: Searching GameTab: 3.
09:28:11 AM: empty cohen: Entering Func: MSI_FindTool: Found Color: 5855581. For Tool: Steel Hatchet.
09:28:11 AM: empty cohen: Entering Func: MSI_FindTool: Found Color: 6118753. For Tool: Steel Hatchet.
09:28:11 AM: empty cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
09:28:19 AM: empty cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
09:28:19 AM: empty cohen: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
09:28:26 AM: empty cohen: Entering Func: MSI_FindTool: Searching GameTab: 2.
09:28:26 AM: empty cohen: Entering Func: MSI_FindTool: Found Color: 3618618. For Tool: Iron Hatchet.
09:28:26 AM: empty cohen: Entering Func: MSI_FindTool: Found DTM: Iron Hatchet.
09:28:26 AM: empty cohen: Entering Func: MSI_FindTool: Successfully Found Tool: Iron Hatchet.
Tree AutoColor = 1467442
Successfully executed
It's a bit slow when checking tabs, walked to the trees and didn't do anything… and you have to start logged in right? Also tell me what can I do :)

Coh3n

2010-03-02 10:40:42

From: Cazax
Successfully compiled (2424 ms)
SRL Compiled in 16 msec
SMART Initialized.
Loaded: Server 152, Members: False, Signed: True, Super Detail: False.
Setting up MSI took 0 ms.
09:27:56 AM: empty cohen: Entering Func: MSI_PlayerSetup: Current Woodcutting level is 16.
09:28:04 AM: empty cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
09:28:04 AM: empty cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
09:28:11 AM: empty cohen: Entering Func: MSI_FindTool: Searching GameTab: 3.
09:28:11 AM: empty cohen: Entering Func: MSI_FindTool: Found Color: 5855581. For Tool: Steel Hatchet.
09:28:11 AM: empty cohen: Entering Func: MSI_FindTool: Found Color: 6118753. For Tool: Steel Hatchet.
09:28:11 AM: empty cohen: Entering Func: MSI_FindTool: Error Finding DTM: Steel Hatchet.
09:28:19 AM: empty cohen: Entering Func: MSI_FindTool: Searching GameTab: 0.
09:28:19 AM: empty cohen: Entering Func: MSI_FindTool: Error Finding DTM: Iron Hatchet.
09:28:26 AM: empty cohen: Entering Func: MSI_FindTool: Searching GameTab: 2.
09:28:26 AM: empty cohen: Entering Func: MSI_FindTool: Found Color: 3618618. For Tool: Iron Hatchet.
09:28:26 AM: empty cohen: Entering Func: MSI_FindTool: Found DTM: Iron Hatchet.
09:28:26 AM: empty cohen: Entering Func: MSI_FindTool: Successfully Found Tool: Iron Hatchet.
Tree AutoColor = 1467442
Successfully executed
It's a bit slow when checking tabs, walked to the trees and didn't do anything… and you have to start logged in right? Also tell me what can I do :)

I agree, I don't like how it goes back and forth. I'm sure the MSI_FindTool function can be easily edited to check for all the necessary tools before switching tabs.

I don't know why it all of the sudden stopped chopping the trees. The players I tested with last night also stopped because they couldn't cut the trees. The debug says the uptext didn't match.

As for something you can do… there isn't really anything when it comes to writing new functions. The main thing right now is we need to make the script work well. So fix some bugs, make improvements, and test. If there is anything that could be changed, change it, commit it, and let us know. :)

Here are some things off the top of my head that need to be done:
  • MSI_FindTool needs to be improved
  • MSI_Deposit needs to be improved (it currently jumps around the screen for several seconds before depositing)
  • Now, apparently it's having trouble cutting the trees
I'm going to add this list to the first post. If something gets done, let me know so I can remove it. :)

EDIT: The first post as a more updated list. ;)

Coh3n

2010-03-03 11:40:22

Sorry for double post, but here's the results from my testing.
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: Failed to perform skill: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 13m 48s }
{ Experience: 2,100 }
{ Level: -1 }
{ Item: Normal logs }
{ Amount: 84 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to bank }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 19 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 11m 49s }
{ Experience: 1,400 }
{ Level: -1 }
{ Item: Normal logs }
{ Amount: 56 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 0 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 0 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 0 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 0 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 0 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]
The first player was in the Quiz random. Apparently we don't have MSI randoms handling yet. :duh:

The second player was stuck in the building just north of the bank.

The third character was on it's way to the trees, when I'm guessing my internet timed out because when I got home the script was still running even though the character was logged out. I'm assuming this is because we haven't added in any if (not LoggedIn) then Exit; failsafes. This causing it not to switch players I guess.

I've added the necessary things to the list on the first page.

EDIT: Here's another progress report.
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
// Was pre-set to false
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 0 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
// This was my fault, I set his starting loc to the trees, when he was in the bank
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: Failed to perform skill: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 19 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
// Was at the trees, not sure why it returned false
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location }
{ }
{ Skill: Woodcutting }
{ Time: 30m 55s }
{ Experience: 3,500 }
{ Level: 23 }
{ Item: Normal logs }
{ Amount: 140 }
{ }
{—————————————————————-}
// Was stuck in the building north of the bank
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to deposit items }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 700 }
{ Level: 16 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
// Was standing a few tiles north of the tea stall (south-east of the bank)
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to deposit items }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 700 }
{ Level: 16 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
// Was in the Varrock museum, apparently clicking way to far west of the trees
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 7 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
// Was standing on the path just north, outside the bank
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to bank }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Experience: 0 }
{ Level: 11 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
// Was a few tiles south of the south enterance of the Varrock museum
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to bank }
{ }
{ Skill: Woodcutting }
{ Time: 09m 46s }
{ Experience: 1,400 }
{ Level: 16 }
{ Item: Normal logs }
{ Amount: 56 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]
My conclusion for this run:
  • We need walking failsafes, radial walking perhaps?
  • The progress report needs to be shorter (I can easily rearrange it)

Blumblebee

2010-03-03 11:45:16

From: Coh3n

My conclusion for this run:
  • We need walking failsafes, radial walking perhaps?
  • The progress report needs to be shorter (I can easily rearrange it)


I agree on both, I will fix up the walking during my spare today. I forgot my googlecode account so I can't commit (sorry :redface:), I'll post up the walking when I finish it. I think I'm going to change how we implement the walking a bit, as a better looping system might help to add failsafes easier.

ex.

 if not CreateWalkIndex(blah_BLAH_looksbetter_BLAH) then
if not RadialWalk(RoadColor, etc) then
etc

instead of adding the radial walks directly into CreateWalkIndex (if that's what it's called still). I suck at explaining stuff :p so I'll just do it, run it by you guys and if you don't like it I'll do it a different way

Coh3n

2010-03-03 11:47:07

From: Blumblebee
I agree on both, I will fix up the walking during my spare today. I forgot my googlecode account so I can't commit (sorry :redface:), I'll post up the walking when I finish it. I think I'm going to change how we implement the walking a bit, as a better looping system might help to add failsafes easier.

ex.

 if not CreateWalkIndex(blah_BLAH_looksbetter_BLAH) then
if not RadialWalk(RoadColor, etc) then
etc

instead of adding the radial walks directly into CreateWalkIndex (if that's what it's called still). I suck at explaining stuff :p so I'll just do it, run it by you guys and if you don't like it I'll do it a different way

That's exactly what I meant. Look at the list on the first post if you haven't already. ;)

NCDS

2010-03-03 11:52:13

From: Blumblebee
I agree on both, I will fix up the walking during my spare today. I forgot my googlecode account so I can't commit (sorry :redface:), I'll post up the walking when I finish it.

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

From: Blumblebee

I think I'm going to change how we implement the walking a bit, as a better looping system might help to add failsafes easier.

ex.

 if not CreateWalkIndex(blah_BLAH_looksbetter_BLAH) then
if not RadialWalk(RoadColor, etc) then
etc

instead of adding the radial walks directly into CreateWalkIndex (if that's what it's called still). I suck at explaining stuff :p so I'll just do it, run it by you guys and if you don't like it I'll do it a different way

I'm quite sure I know what you mean, and it should work just fine :) I have nothing but time as well today so let me know when you commit it!

Coh3n

2010-03-03 11:55:02

From: NCDS
http://villavu.com/forum/showthread.php?t=54426 ;)


I'm quite sure I know what you mean, and it should work just fine :) I have nothing but time as well today so let me know when you commit it!

There's a whole list of things on the first page that can be done if you're up for it. Just copy the files you're working on and worked on the duplicates so your commits don't get interfered. I should have time in a couple hours to get the progress report (or something smaller, depending on time) done.

NCDS

2010-03-03 12:00:04

From: Coh3n
There's a whole list of things on the first page that can be done if you're up for it. Just copy the files you're working on and worked on the duplicates so your commits don't get interfered. I should have time in a couple hours to get the progress report (or something smaller, depending on time) done.


I just woke up ~5 mins ago, so give me an hour to take a shower/ do a few other things and I'll get on it!

I'll edit with what I am doing..

Coh3n

2010-03-03 15:10:52

From: NCDS
I just woke up ~5 mins ago, so give me an hour to take a shower/ do a few other things and I'll get on it!

I'll edit with what I am doing..

Okay.

I started working on the progress report, and I don't know if it would be better to make it shorter. I mean, sure, it's long, but it's very clear and understandable. The users will know exactly why the player stopped, and how many of each item, for each skill the player did. I would much rather have it this way (which still looks good), then making it shorter, harder to read/understand, and maybe look a little better.

Thoughts?

NCDS

2010-03-03 15:12:58

From: Coh3n
Okay.

I started working on the progress report, and I don't know if it would be better to make it shorter. I mean, sure, it's long, but it's very clear and understandable. The users will know exactly why the player stopped, and how many of each item, for each skill the player did. I would much rather have it this way (which still looks good), then making it shorter, harder to read/understand, and maybe look a little better.

Thoughts?


I agree, I think it look's just fine. If your going to use 8 players you should expect a longer proggy anyways, right? :p

Coh3n

2010-03-03 15:19:35

From: NCDS
I agree, I think it look's just fine. If your going to use 8 players you should expect a longer proggy anyways, right? :p

Very true. :)

EDIT: I may add a total time running part to it, just so it no one has to add up the time for each player. :p

EDIT2: I added if (not LoggedIn) then Exit; failsafe to the necessary functions. Hopefully I got them all.

BobboHobbo

2010-03-06 07:16:31

Great job guys to see its still going strong. Have fun with tweaking the script to work, especially on such a large scale, well I think its pretty large xD.

Goodluck, hopefully you guys can tweak it to work as it should.

Coh3n

2010-03-06 15:12:57

From: BobboHobbo
Great job guys to see its still going strong. Have fun with tweaking the script to work, especially on such a large scale, well I think its pretty large xD.

Goodluck, hopefully you guys can tweak it to work as it should.

Thanks, and we could always use testers. ;)

Coh3n

2010-03-08 00:09:50

Has anyone done (or thought of doing) any work on this lately?

I'm sorry I've been inactive the last few days. I kind of messed up my computer. I ended having to wipe the hard drive, reinstall Vista, and I decided to additionally install Ubuntu (which I plan on running permanently). Since I'm the master of procrastination, my school work as built up, and I've been doing a lot of that. Also, I've had a butt load of hockey lately as it is playoffs.

Anyway, hopefully tomorrow fix up some stuff on the list. :)

Blumblebee

2010-03-08 00:18:17

From: Coh3n
Has anyone done (or thought of doing) any work on this lately?

I'm sorry I've been inactive the last few days. I kind of messed up my computer. I ended having to wipe the hard drive, reinstall Vista, and I decided to additionally install Ubuntu (which I plan on running permanently). Since I'm the master of procrastination, my school work as built up, and I've been doing a lot of that. Also, I've had a butt load of hockey lately as it is playoffs.

Anyway, hopefully tomorrow fix up some stuff on the list. :)


I'm going to have a bitch of a time for the next couple of weeks due to volleyball (6 times a week 3h practice+3h drive) so I won't be doing much, but I'll try my best to do some walking work.

Coh3n

2010-03-08 21:10:51

From: Blumblebee
I'm going to have a bitch of a time for the next couple of weeks due to volleyball (6 times a week 3h practice+3h drive) so I won't be doing much, but I'll try my best to do some walking work.

No worries, we all have other things to do. :p And damn, that's quite the commitment.

EDIT: Updated the first post. I fixed MSI_FindTool.

NCDS

2010-03-08 21:52:45

I can put in the walking failsafes sometime tonight/tomorrow and have something committed tomorrow night.

As far as random handling goes, I don't see any reason to take it further than FindNormalRandoms. Unless someone objects, I can also put that in when I commit the walking.

For MSI_Deposit, I'll talk to Naum about it and we will come up with a fix. (it might actually just be something simple, I haven't really looked);

Coh3n

2010-03-08 22:16:54

From: NCDS
I can put in the walking failsafes sometime tonight/tomorrow and have something committed tomorrow night.

As far as random handling goes, I don't see any reason to take it further than FindNormalRandoms. Unless someone objects, I can also put that in when I commit the walking.

For MSI_Deposit, I'll talk to Naum about it and we will come up with a fix. (it might actually just be something simple, I haven't really looked);

Okay thanks for the update. If Naum's busy, I can always help to fix it. ;)

Also, about FindNormalRandoms. It got me thinking about SRL Stats. Should we implement them? Or would it not work well considering the size of the include. I was thinking we could have very general vairables (i.e. Logs Chopped, Ores Mined, etc.).

NCDS

2010-03-08 22:21:09

Yeah I like that idea. I definitely wouldn't mind seeing how long this can run for.

Coh3n

2010-03-09 14:02:29

From: NCDS
Yeah I like that idea. I definitely wouldn't mind seeing how long this can run for.

Yeah. I'll add stats to the first post. :)

EDIT: Updated a few things ~ see change log for details.

Blumblebee

2010-03-09 19:46:39

ok, due to me forgetting my googlecode account pass and shit (I don't think I have the rights to commit to the new url anyways) I am just going to post these here.

Walking_Color.scar
  • added WalkPath(index: byte): Boolean;
  • failsafes for everything but entering the tree's and the bank
{==============================================================================\
| MSI Group Scripting Include |
| Walking_Color.scar |
|==============================================================================|
| For all the walking functions that are color based. |
| |
\_____________________________________________________________________________}

{ const Varrock East Woodcutting
Description: Constants used for the walking to and from the trees at the
Varrock east bank. }

const
WALK_WC_VE_TREE_1 = 0; // rock
WALK_WC_VE_TREE_2 = 1; // road
WALK_WC_VE_TREE_3 = 2; // path
WALK_WC_VE_TREE_4 = 3; // final

WALK_WC_VE_BANK_1 = 4; // rock
WALK_WC_VE_BANK_2 = 5; // path
WALK_WC_VE_BANK_3 = 6; // road
WALK_WC_VE_BANK_4 = 7; // final

{ const AutoColor
Description: Constants used for the walking autocoloring. }
const
SRLAC_RoadColour = 6579821;
SRLAC_VarrockRoadColour = 8291719;
SRLAC_FallyRoadColour = 7831173;
SRLAC_LumbyRoadColour = 8225677;
SRLAC_DirtRoadColour = 1853272;
SRLAC_WaterColour = 10850700;
SRLAC_RockColour = 5789528;
SRLAC_SandColour = 0;
SRLAC_BankerColour = 1179390;
SRLAC_TreeColour = 1532978;

Procedure SortColors(var Colors: tIntegerArray; col: Integer);
var
tempB: tIntegerArray;
Tol: ShortInt;
I: Integer;
timer, L: LongInt;
begin
timer := getsystemtime;
tempB := Colors;
SetArrayLength(Colors, 0);
Tol := 0;
while Length(Colors) < (Length(tempB)/2 or 5) do
begin
if Getsystemtime-timer > 100 then Break;
for i := 0 to High(tempB) do
begin
if SimilarColors(tempB[i], col, Tol) then
begin
L := GetArrayLength(Colors);
SetArrayLength(Colors, L+1);
Colors[L] := tempB[i];
end;
if Tol > 10 then Break;
Inc(Tol);
end;
end;
end;

{******************************************************************************}
{ Function FindMMLocation(Var X, Y: Integer; Location: TMMLocation): Boolean; }
{ By: marpis }
{ Rev: 35 }
{ Date: 30 Nov 09 }
{ Description: Finds a location in minimap. First tries to find DTM, then }
{ colors, and if still not found it will find it by symbol }
{******************************************************************************}
Function MSI_FindMMLocation(Var X, Y: Integer; Location: TMMLocation): Boolean;
Var
SA, EA, tmp_Ang: Extended;
N, I, II, III, H, HH, Score, Step: Integer;
ATPA: T2DPointArray;
tmp_TPA: TPointArray;
X1, Y1, X2, Y2: Integer;
Begin
If (Not LoggedIn) Then Exit;

X := -1;
Y := -1;
Step := (Location.W * Location.H) / 10;

{ DTM Search }
If (Location.DTM > -1) Then
While (N < 10) Do
Begin
If FindDTMRotated(Location.DTM, X, Y, MMX1, MMY1, MMX2, MMY2, SA, EA, 0.02, tmp_Ang) Then
Begin
Result := True;
Exit;
End;
Inc(N);
SA := SA - (N * 0.02);
EA := EA + (N * 0.02);
End;

{ Color search }
If (Length(Location.Colors) = 0) Then
Exit;

H := High(Location.Colors);
SetLength(ATPA, H + 1);

For I := 0 To H Do
Begin
FindColorsSpiralTolerance(MMCX, MMCY, ATPA[I], Location.Colors[I], MMX1, MMY1, MMX2, MMY2, Location.Tolerances[I]);
FilterPointsPie(ATPA[I], 0.0, 360.0, 0.0, 76.0, MMCX, MMCY);
End;

{ Go through every TPA that contains one color. }
For I := 0 To H Do
Begin
HH := High(ATPA[I]);

{ Go through every 10th point in ATPA[I] to avoid lag. }
For II := 0 To HH Do
Begin
If ((II Mod Step) <> 0) Then
Continue;

Score := 0;

X1 := ATPA[I][II].X - (Location.W / 2);
Y1 := ATPA[I][II].Y - (Location.H / 2);
X2 := ATPA[I][II].X + (Location.W / 2);
Y2 := ATPA[I][II].Y + (Location.H / 2);

{ Go through every TPA again, calculating surrounding color counts. }
For III := 0 To H Do
Begin
tmp_TPA := MSI_ReturnPointsInBox(ATPA[III], IntToBox(X1, Y1, X2, Y2));
If (Length(tmp_TPA) >= Location.Counts[III]) Then
Inc(Score);
End;

{ If there are enough points of all colors, the location has been found. }
If (Score = H) Then
Begin
Result := True;
X := (X1 + X2) shr 1;
Y := (Y1 + Y2) shr 1;
Exit;
End;

End;
End;

{ Symbol Search }
If (Location.Symbol <> '') Then
If FindSymbol(X, Y, Location.Symbol) Then
Begin
Result := True;
Exit;
End;
End;

Function AutoColorMM(const color: Integer): Integer;
var
TPA: tPointArray;
List: tIntegerArray;
I: Integer;
begin
for i := 0 to 20 do
begin
FindColorsTolerance(TPA, color, MMx1, MMy1, MMx2, MMy2, 5+i);
if Length(TPA) > 0 then Break;
end;
if Length(TPA) <= 0 then Exit;
List := getColors(TPA);
sortColors(List, color);
if Length(List) <= 0 then Exit;
result := List[0];
end;

Function FindNewVarrockRoadColor: Integer;
begin
Result := AutoColorMM(SRLAC_VarrockRoadColour);
end;

Function CreateWalkTPA(x, y, color, width, height, tolerance: Integer): TpointArray;
var
TPA: tPointArray;
aTPA: t2DPointArray;
i: Integer;
L, P: Integer;
begin
FindColorsSpiralTolerance(x, y, TPA, color, MMx1, MMy1, MMx2, MMy2, tolerance);
aTPA := TPAtoATPAEx(TPA, width, height);
for i := 0 to High(aTPA) do
begin
if Length(aTPA) > 5 then
begin
l := getarraylength(Result);
SetArrayLength(Result, l+1);
Result[l] := MiddleTpa(aTPA[i]);
end;
end;
if Length(result) = 0 then Exit;
for i := 0 to High(Result) do
if rs_OnMiniMap(result[i].x, result[i].y) then Inc(p);
if p = 0 then SetArrayLength(Result, 0);
end;

Function walkTPApoint(TPA: tPointArray; sortP: tPoint; flagDist: shortInt): Boolean;
var
i: Integer;
t: LongInt;
begin
t := getSystemTime;
if Length(TPA) <= 0 then Exit;
SortTPAFrom(TPA, sortP);
for i := 0 to High(TPA) do
begin
if rs_OnMiniMap(TPA[i].x, TPA[i].y) then
begin
Mouse(TPA[i].x, TPA[i].y, random(8), random(8), true);
wait(randomRange(1000, 2000));
while not FlagPresent do
begin
wait(250+randomRange(150, 350));
if getSystemTime-t > randomRange(2500, 3750) then
continue;
end;
FFlag(flagDist);
Result := True;
Exit;
end;
end;
end;

Function CreateColorBox(Color: Integer): TBox;
var
TPA: tPointArray;
begin
FindColors(TPA, Color, MMx1, MMy1, MMx2, MMy2);
if Length(TPA) <= 0 then Exit;
Result := GetTPABounds(TPA);
end;

Function FindColorInBox(Color: Integer; Box: TBox): Boolean;
var
TPA: tPointArray;
i: Integer;
begin
FindColorsTolerance(TPA, Color, Box.x1-5, Box.y1-5, Box.x2+5, Box.y2+5, 15);
if Length(TPA) <= 0 then Exit;
SortTPAFrom(TPA, Point(687, 50));
for i := 0 to High(TPA) do
begin
if not rs_OnMiniMap(TPA[i].x, TPA[i].y) then continue;
Mouse(TPA[i].x, TPA[i].y, 5, 5, True);
Wait(750+random(450));
if FlagPresent then
begin
FFlag(10);
Result := True;
Exit;
end;
end;
end;

Function CreateWalkIndex(index: Integer): Boolean;
var
i: Integer;
aTPA: t2DPointArray;
TPA: tPointArray;
p: tPoint;
RockColor, TreeColor, BC: Integer;
t: LongInt;
begin
case index of
WALK_WC_VE_TREE_1:
begin
if countColor(RoadColor, MMx1, MMy1, MMx2, MMy2) <= 5 then RoadColor := FindNewVarrockRoadColor;
if FindColorInBox(RoadColor, CreateColorBox(FindRockColor)) then
begin
Result := True;
Exit;
end;
TPA := CreateWalkTPA(MMx2, MMy1, RoadColor, 2, 2, 8);
if Length(TPA) <= 0 then Exit;
Result := walkTPApoint(TPA, Point(MMx2-randomRange(5, 15), MMy1), random(10));
Exit;
end;

WALK_WC_VE_TREE_2:
begin
TPA := CreateWalkTPA(MMx2, MMcy, RoadColor, 2, 2, 8);
if Length(TPA) <= 0 then Exit;
Result := walkTPAPoint(TPA, Point(MMx2, MMcy), random(15));
if Result then Exit;
if not LinearWalkTolerance(RoadColor, randomRange(80, 90), randomRange(59, 68), random(8), random(8), 8) then
if not RadialWalkTolerance(RoadColor, 80, 90, randomRange(55, 69), random(8), random(8), 10) then
begin
WriteLn('Walking Failed Here. Submit a Fix.');
logOut;
NextPlayer(False);
Exit;
end;
Result := True;
Exit;
end;

WALK_WC_VE_TREE_3:
begin
RockColor := AutoColorMM(SRLAC_RockColour);
TPA := CreateWalkTPA(MMcx, MMy1, RockColor, 2, 2, 8);
if length(TPA) <= 0 then Exit;
for i := 0 to High(TPA) do
begin
if TPA[i].y > MMcy then continue;
Mouse(TPA[i].x, TPA[i].y, 5, 5, true);
t := getSystemTime;
while not flagPresent() do
begin
if getSystemTime-t > randomRange(2000, 2500) then
Exit;
wait(250+random(500));
end;
FFlag(random(8));
Result := True;
Exit;
end;
end;

WALK_WC_VE_TREE_4:
begin
TreeColor := AutoColorMM(SRLAC_TreeColour);
writeLn('Tree AutoColor = '+IntToStr(TreeColor));
FindColorsTolerance(TPA, TreeColor, MMx1, MMy1, MMx2, MMy2, 8);
if Length(TPA) <= 0 then Exit;
aTPA := SplitTPAEx(TPA, 10, 10);
if Length(aTPA) <= 0 then Exit;
SortATPASize(aTPA, true);
p := MiddleTPA(aTPA[0]);
if (p.x < MMcx+20) and (p.y < MMcy) then
begin
Mouse(p.x, p.y, 5, 5, true);
Flag();
Result := True;
Exit;
end;
end;

WALK_WC_VE_BANK_1:
begin
RockColor := AutoColorMM(SRLAC_RockColour);
TPA := CreateWalkTPA(MMcx, MMy2, RockColor, 2, 2, randomRange(5, 10));
if Length(TPA) <= 0 then Exit;
SortTPAFrom(TPA, point(700, 150));
for i := 0 to High(TPA) do
begin
if (TPA[i].y < MMcy-10) then continue;
Mouse(TPA[i].x-5, TPA[i].y, Random(8), Random(8), true);
t := getSystemTime;
while not flagPresent() do
begin
if getSystemTime-t > randomRange(2000, 2500) then
Exit;
wait(250+random(500));
end;
FFlag(RandomRange(5, 10));
Result := True;
Exit;
end;
end;

WALK_WC_VE_BANK_2:
begin
RoadColor := FindNewVarrockRoadColor();
FindColorsTolerance(TPA, RoadColor, MMx1, MMCy, MMCx, MMy2, 4);
if Length(TPA) <= 0 then
Exit;
SortTPAFrom(TPA, Point(MMCx, MMCy));

for t := 0 to 4 do
begin
i := Length(TPA) - RandomRange(1, 4);
try
if rs_OnMiniMap(TPA[i].x, TPA[i].y) then
BC := 1;
except
Continue;
end;
if BC = 1 then
Break;
end;

if t = 4 then
begin
MSI_Debug('CreatWalkIndex(WALK_WC_VE_BANK_2)', 'Failed to find road on minimap', Debug_Functions);
Exit;
end;

Mouse(TPA[i].x, TPA[i].y, 0, 0, True);
FFlag(5);
Result := True;
Exit;
end;

WALK_WC_VE_BANK_3:
begin
TPA := CreateWalkTPA(MMx1, MMcy, RoadColor, 3, 3, 8);
if Length(TPA) <= 0 then
Exit;
SortTPAFrom(TPA, point(MMx1-10, MMcy));
for i := 0 to High(TPA) do
begin
if not RS_onMinimap(TPA[i].x, TPA[i].y) then Continue;
Mouse(TPA[i].x, TPA[i].y, 5, 5, true);
t := getSystemTime;
while not flagPresent() do
begin
if getSystemTime-t > randomRange(2000, 2500) then
Exit;
wait(250+random(500));
end;
FFlag(RandomRange(3, 7));
Result := True;
Exit;
end;
end;

WALK_WC_VE_BANK_4:
begin
for i := 0 to 2 do
begin
BC := AutoColorMM(SRLAC_BankerColour);
FindColorsTolerance(TPA, BC, MMx1, MMCy + 18, MMCx, MMy2, 1);
if Length(TPA) > 5 then
Break;
if i = 2 then
begin
MSI_Debug('CreateWalkIndex(WALK_BANK_Final);', 'Failed to find bankers on MiniMap.', Debug_Functions);
Exit;
end;
end;

SortTPAFrom(TPA, Point(MMCx, MMCy));
for i := 0 to High(TPA) do
begin
t := Random(High(TPA));
if rs_OnMiniMap(TPA[t].x, TPA[t].y) then
Break;
if i = High(TPA) then
begin
MSI_Debug('CreateWalkIndex(WALK_BANK_Final);', 'Points not on MiniMap!', Debug_Functions);
Exit;
end;
end;

Mouse(TPA[t].x, TPA[t].y - RandomRange(3, 7), 3, 3, True);
t := getSystemTime;
while not flagPresent() do
begin
if getSystemTime-t > randomRange(2000, 2500) then
Exit;
wait(250+random(500));
end;

FFlag(3);
Result := True;
end;
end;
end;



Function WalkPath(index: byte): Boolean;
var
i: Integer;
begin
if not CreateWalkIndex(index) then
begin
case index of
WALK_WC_VE_TREE_1:
begin
if not RadialWalkTolerance(RoadColor, 45, 90, randomRange(60, 70), random(8), random(8), 10) then
if not RadialWalkTolerance(findRockColor, 45, 90, randomRange(60, 70), 3, 3, 10) then
begin
MSI_Debug('WalkPath('+inttoStr(index)+');', 'Failed to find bankers on MiniMap.', Debug_Functions);
Exit;
end;
end;

WALK_WC_VE_TREE_2:
begin
if not RadialWalkTolerance(RoadColor, 75, 105, randomRange(60, 70), random(5), random(5), 10) then
if not RadialWalkTolerance(RoadColor, 65, 115, randomRange(60, 70), random(5), random(5), 10) then
begin
MSI_Debug('WalkPath('+inttoStr(index)+');', 'Failed to find bankers on MiniMap.', Debug_Functions);
Exit;
end;
end;

WALK_WC_VE_TREE_3:
begin
if not RadialWalkTolerance(RoadColor, 0, 35, randomRange(60, 70), 10, 10, 10) then
if not RadialWalkTolerance(findRockColor, 345, 35, 60, 2, 2, 10) then
if not RadialWalkTolerance(RoadColor, 0, 45, randomRange(60, 70), 5, 5, 10) then
begin
MSI_Debug('WalkPath('+inttoStr(index)+');', 'Failed to find bankers on MiniMap.', Debug_Functions);
Exit;
end;
end;

WALK_WC_VE_TREE_4:
begin
Exit; // Not sure of any other failsafe for this. A (D)DTM perhaps?
end;

WALK_WC_VE_BANK_1:
begin
if not RadialWalkTolerance(findRockColor, 350, 50, 65, 5, 5, 10) then
begin
mouseBox(631, 114, 667, 130, 1); // random co-ord clicking
wait(randomRange(1000, 2000));
if FlagPresent then
begin
result := true;
FFlag(randomRange(8, 14));
end;
end else
begin
MSI_Debug('WalkPath('+inttoStr(index)+');', 'Failed to find bankers on MiniMap.', Debug_Functions);
Exit;
end;
end;

WALK_WC_VE_BANK_2:
begin
if not RadialWalkTolerance(RoadColor, 180, 200, randomRange(60, 70), random(5), random(5), 10) then
if not RadialWalkTolerance(RoadColor, 170, 220, randomRange(60, 70), 3, 3, 10) then
begin
MSI_Debug('WalkPath('+inttoStr(index)+');', 'Failed to find bankers on MiniMap.', Debug_Functions);
Exit;
end;
end;

WALK_WC_VE_BANK_3:
begin
if not RadialWalkTolerance(RoadColor, 255, 280, randomRange(60, 70), random(8), random(8), 10) then
if not RadialWalkTolerance(RoadColor, 245, 290, randomRange(60, 70), 5, 5, 10) then
begin
MSI_Debug('WalkPath('+inttoStr(index)+');', 'Failed to find bankers on MiniMap.', Debug_Functions);
Exit;
end;
end;

WALK_WC_VE_BANK_4:
begin
Exit; // add a DTM of Bankers here.
end;
end;
end;
result := true;
end;

Mainloop.scar
{==============================================================================\
| MSI Group Scripting Include |
| Mainloop.scar |
|==============================================================================|
| For all the script Artificial Inteligence |
| |
| * function MSI_BestTool: Integer; * by Coh3n |
| * function MSI_WorstTool: Integer; * by Coh3n |
| * function MSI_SetupPlayer: Boolean; * by Coh3n |
| * function MSI_GetObjectList: TIntegerArray; * by Coh3n |
| * function MSI_WalkToLoc: Boolean; * by The MSI Team |
| * function MSI_WalkToBank: Boolean; * by The MSI Team |
| * function MSI_DoSkill: Boolean; * by The MSI Team |
| * procedure MSI_CountItems: Boolean; * by Coh3n |
| * function MSI_BankMaterials: Boolean; * by The MSI Team |
| * function MSI_MainLoop: Boolean; * by The MSI Team |
\_____________________________________________________________________________}

{ const Hatchet/Pickaze requirements.
Constants representing the requirements to use each pickaxe/hatchet. }
const
REQ_BRONZE = 1;
REQ_IRON = 1;
REQ_STEEL = 6;
REQ_MITHRIL = 21;
REQ_ADAMANT = 31;
REQ_RUNE = 41;
REQ_MAX_LEVEL = 99;

{******************************************************************************}
{ function MSI_BestTool: Integer; }
{ By: Coh3n }
{ Rev: 55 }
{ Date: 26 Dec 09 }
{ Description: Determines the best tool for the job at hand. }
{******************************************************************************}
function MSI_BestTool: Integer;
var
skillsArr: TStringArray;
currSkill, currLevel: Integer;
begin
if (not Loggedin) then
Exit;

{ In order for this to work properly, the skillsArr indexes must correspond
to the skills constants in SRL's Players.scar }
skillsArr := [ 'attack', 'strength', 'defence', 'range', 'prayer', 'magic',
'runecrafting', 'hitpoints', 'agility', 'herblore', 'thieving',
'crafting', 'fletching', 'slayer', 'mining', 'smithing',
'fishing', 'cooking', 'firemaking', 'woodcutting', 'farming',
'construction', 'hunting', 'summoning' ];

{ Get the current level of the chosen skill, and then look for the required
tool, starting with the best one for that player's skill level. }
currSkill := PlayerSkills[CurrentPlayer][CurrentSkill] - 1;
currLevel := GetSkillLevel(skillsArr[currSkill]);

MSI_Debug('MSI_PlayerSetup', 'Current ' + Capitalize(skillsArr[currSkill])
+ ' level is ' + IntToStr(currLevel) + '.', debug_Functions);

case PlayerSkills[CurrentPlayer][CurrentSkill] of
SKILL_WOODCUTTING, SKILL_MINING:
case (currLevel) of
REQ_RUNE..REQ_MAX_LEVEL: Result := HATCHET_RUNE;
REQ_ADAMANT..REQ_RUNE: Result := HATCHET_ADAMANT;
REQ_MITHRIL..REQ_ADAMANT: Result := HATCHET_MITHRIL;
REQ_STEEL..REQ_MITHRIL: Result := HATCHET_STEEL;

else
Result := HATCHET_IRON;
end;
end;
end;

{******************************************************************************}
{ function MSI_WorstTool: Integer; }
{ By: Coh3n }
{ Rev: 55 }
{ Date: 23 Feb 2010 }
{ Description: Determines the worst tool for the job at hand. }
{******************************************************************************}
function MSI_WorstTool: Integer;
begin
if (not LoggedIn) then
Exit;

case (PlayerSkills[CurrentPlayer][CurrentSkill]) of
SKILL_WOODCUTTING:
Result := HATCHET_BRONZE;
end;
end;

{******************************************************************************}
{ function MSI_SetupPlayer: Boolean; }
{ By: Coh3n }
{ Rev: 54 }
{ Date: 21 Dec 09 }
{ Description: Sets up the player for autoing. }
{******************************************************************************}
function MSI_SetupPlayer: Boolean;
var
bestTool, worstTool, x, y, i, j , k: Integer;
bankCheck: Boolean;
gameTabs: TIntegerArray;
begin
if (not LoggedIn) then
LoginPlayer;

SetAngle(True);
SetRun(True);

{ Starts by looking for the best tool for that player's skill level, and
moves down from there. }
bestTool := MSI_BestTool;
worstTool := MSI_WorstTool;
gameTabs := [tab_Equip, tab_Inv];

for j := 0 to High(gameTabs) do
for i := bestTool downto worstTool do
begin
Result := MSI_FindTool(i, gameTabs[j], x, y);
if (Result) then
Exit;
end;

{ If the required tool isn't found, then will open the bank and attempt to
withdraw the proper tool. }
if (not Result) then
begin
case (Players[CurrentPlayer].Integers[P_LOC]) of
LOC_VE_BANK:
bankCheck := MSI_OpenBank(OBJ_BANK_VE, Players[CurrentPlayer].Pin);

else
MSI_Debug('MSI_SetupPlayer', 'Invalid Player.Integers[P_LOC].',
debug_Functions);
end;

if bankCheck then
for k := bestTool downto 0 do
begin
Result := MSI_Withdraw([k], [1]);
if (Result) then
Break
else

begin
CloseBank;
MSI_Debug('MSI_PlayerSetup', 'Couldn''t Withdraw Tool.',
debug_Functions);
end;
end
else
MSI_Debug('MSI_SetupPlayer', 'Unable to Open Bank.', debug_Functions);
end;
end;

{******************************************************************************}
{ function MSI_GetObjectList: TIntegerArray; }
{ By: Coh3n }
{ Rev: 5 }
{ Date: 24 Feb 2010 }
{ Description: Converts the variant array to an integer array }
{******************************************************************************}
function MSI_GetObjectList(whichPlayer, whichSkill: Integer): TIntegerArray;
var
i: Integer;
tempStr: String;
objects: TVariantArray;
begin
objects := PlayerObjects[whichPlayer][whichSkill];
SetLength(Result, Length(objects));

try
for i := 0 to High(objects) do
begin
tempStr := IntToStr(objects[i]);
Result[i] := StrToInt(tempStr);
end;
except
MSI_Debug('MSI_GetObjectList', 'Invalid object type in DeclarePlayers!', debug_Functions);
Exit;
end;
end;

{******************************************************************************}
{ function MSI_GetItemList: TIntegerArray; }
{ By: Coh3n }
{ Rev: 5 }
{ Date: 24 Feb 2010 }
{ Description: Gets the materials required depending on the object autoed }
{******************************************************************************}
function MSI_GetItemList(whichPlayer, whichSkill: Integer): TIntegerArray;
var
i: Integer;
objects: TIntegerArray;
begin
objects := MSI_GetObjectList(whichPlayer, whichSkill);
SetLength(Result, Length(objects));

for i := 0 to High(objects) do
case objects[i] of
OBJ_TREE: Result[i] := LOGS_NORMAL;
OBJ_OAK: Result[i] := LOGS_OAK;
end;
end;

{******************************************************************************}
{ function MSI_GetExpList: TIntegerArray; }
{ By: Coh3n }
{ Rev: 5 }
{ Date: 24 Feb 2010 }
{ Description: Gets the experience gained by obtaining items in the item list }
{******************************************************************************}
function MSI_GetExpList: TExtendedArray;
var
i: Integer;
objects: TIntegerArray;
msObjs: TMSObjectArray;
begin
objects := MSI_GetObjectList(CurrentPlayer, CurrentSkill);
SetLength(Result, Length(objects));

msObjs := MSI_GetObjects(objects);
for i := 0 to High(objects) do
Result[i] := msObjs[i].Exp;
end;

{******************************************************************************}
{ function MSI_WalkToLoc: Boolean; }
{ By: The MSI Team }
{ Rev: 5 }
{ Date: 23 Feb 2010 }
{ Description: Walks to the proper location depending on skill/location }
{******************************************************************************}
function MSI_WalkToLoc: Boolean;
var
i: Integer;
begin
if (not LoggedIn) then
Exit;

case PlayerSkills[CurrentPlayer][CurrentSkill] of
SKILL_WOODCUTTING:
case Players[CurrentPlayer].Integers[P_LOC] of
LOC_VE_BANK:
begin
RoadColor := FindNewVarrockRoadColor();
for i := WALK_WC_VE_TREE_1 to WALK_WC_VE_TREE_3 do
WalkPath(i);

Result := WalkPath(WALK_WC_VE_TREE_4);
if Result then
Players[CurrentPlayer].Integers[P_LOC] := LOC_VE_TREES;
end;

LOC_VE_TREES: Result := True;

else
MSI_Debug('MSI_WalkToLoc', 'Invalid location for woodcutting skill.', debug_Functions);
end;
else
MSI_Debug('MSI_WalkToLoc', 'Invalid player skill!', debug_Functions);
end;
end;

{******************************************************************************}
{ function MSI_WalkToBank: Boolean; }
{ By: The MSI Team }
{ Rev: 5 }
{ Date: 23 Feb 2010 }
{ Description: Walks to the bank depending on skill/location }
{******************************************************************************}
function MSI_WalkToBank: Boolean;
var
i: Integer;
begin
if (not InvFull) or (not LoggedIn) then
Exit;

case PlayerSkills[CurrentPlayer][CurrentSkill] of
SKILL_WOODCUTTING:
case Players[CurrentPlayer].Integers[P_LOC] of
LOC_VE_TREES:
begin
RoadColor := FindNewVarrockRoadColor;
for i := WALK_WC_VE_BANK_1 to WALK_WC_VE_BANK_3 do
WalkPath(i);

Result := WalkPath(WALK_WC_VE_BANK_4);
if Result then
Players[CurrentPlayer].Integers[P_LOC] := LOC_VE_BANK;
end;

LOC_VE_BANK: Result := True;

else
MSI_Debug('MSI_WalkToBank', 'Invalid location for woodcutting skill.', debug_Functions);
end;
else
MSI_Debug('MSI_WalkToBank', 'Invalid player skill!', debug_Functions);
end;
end;

{******************************************************************************}
{ function MSI_DoSkill: Boolean; }
{ By: The MSI Team }
{ Rev: 5 }
{ Date: 23 Feb 2010 }
{ Description: Performs the specified skill }
{******************************************************************************}
function MSI_DoSkill: Boolean;
var
objectTypes: TIntegerArray;
begin
if (not LoggedIn) then
Exit;

objectTypes := MSI_GetObjectList(CurrentPlayer, CurrentSkill);

case PlayerSkills[CurrentPlayer][CurrentSkill] of
SKILL_WOODCUTTING:
Result := MSI_ChopInvFull(objectTypes);

else
MSI_Debug('MSI_WalkToBank', 'Invalid player skill!', debug_Functions);
end;
end;

{******************************************************************************}
{ procedure MSI_CountItems; }
{ By: Coh3n }
{ Rev: 5 }
{ Date: 24 Feb 2010 }
{ Description: Counts the materials and calculates the experience gained }
{ from items in the inventory }
{******************************************************************************}
procedure MSI_CountItems;
var
itemCount, expCount, i: Integer;
items: TIntegerArray;
exps: TExtendedArray;
begin
if (not LoggedIn) then
Exit;

items := MSI_GetItemList(CurrentPlayer, CurrentSkill);
exps := MSI_GetExpList;

for i := 0 to High(items) do
begin
MSI_GetItem(items[i]);
itemCount := CountItems('dtm', MSI_Item[items[i]].DTM, []);
expCount := Round(exps[i] * itemCount);

AddToProggy(i, itemCount, ADD_ITEMS); //Adds amount of item
AddToProggy(-1, expCount, ADD_EXP); //Adds exp to skill

MSI_Debug('MSI_CountItems', 'Found ' + IntToStr(itemCount) + ' of item '
+ MSI_Item[items[i]].Name, DEBUG_FUNCTIONS);
end;
end;

{******************************************************************************}
{ function MSI_BankMaterials: Boolean; }
{ By: The MSI Team }
{ Rev: 5 }
{ Date: 23 Feb 2010 }
{ Description: Banks the specified materials }
{******************************************************************************}
function MSI_BankMaterials: Boolean;
begin
if (not LoggedIn) then
Exit;

case PlayerSkills[CurrentPlayer][CurrentSkill] of
SKILL_WOODCUTTING:
case Players[CurrentPlayer].Integers[P_LOC] of
LOC_VE_BANK:
begin
MSI_CountItems;
if (not MSI_OpenBank(OBJ_BANK_VE, Players[CurrentPlayer].Pin)) then
ProgressReportArray[CurrentPlayer].FalseReason := 'Failed to open bank: OBJ_BANK_VE';

Result := MSI_Deposit([LOGS_NORMAL, LOGS_OAK], [28, 28]);
if (not Result) then
ProgressReportArray[CurrentPlayer].FalseReason := 'Failed to deposit items'
else
AddToProggy(-1, -1, ADD_LOADS);
end;

else
MSI_Debug('MSI_BankMaterials', 'Invalid location for woodcutting skill.', debug_Functions);
end;
else
MSI_Debug('MSI_BankMaterials', 'Invalid player skill!', debug_Functions);
end;
end;

{******************************************************************************}
{ procedure MSI_HandleBreaking; }
{ By: MSI_HandleBreaking }
{ Description: Simple procedure for breaking }
{******************************************************************************}
procedure MSI_HandleBreaking;
begin
if (not LoggedIn) then
Exit;

if (BankScreen) then
CloseBank;

if (HowManyPlayers > 1) then
begin
MSI_Debug('MSI_HandleBreaking', 'Taking a short break', Debug_PlayerActions);
ExitToLobby;
Wait((BreakTime * 60000) + RandomRange(-300000, 300000));
MSI_Debug('MSI_MainLoop', 'Break over, continuing to play', Debug_PlayerActions);
if (AtLobbyScreen) then
MouseBox(80, 450, 560, 470, 1);
end else
begin
MSI_Debug('MSI_MainLoop', 'Switching players', Debug_PlayerActions);
NextPlayer(True);
end;
end;

{******************************************************************************}
{ procedure MSI_MainLoop; }
{ By: The MSI Team }
{ Date: 23 Feb 2010 }
{ Description: The MainLoop - performs all actions of the script }
{******************************************************************************}
procedure MSI_MainLoop;
var
loadTime, totalLoads, i: Integer;
begin
repeat
if (AllPlayersInactive) then
begin
MSI_Debug('MSI_MainLoop', 'All players are now inactive, terminating script...', Debug_PlayerActions);
ProgressReport;
TerminateScript;
end;

if (not MSI_SetupPlayer) then
begin
MSI_Debug('MSI_MainLoop', 'Failed to setup player!', Debug_PlayerActions);
Players[CurrentPlayer].Active := False;
ProgressReportArray[CurrentPlayer].FalseReason := 'Failed to setup player';
ProgressReport;
NextPlayer(False);
Continue;
end;

repeat
MarkTime(loadTime);

if (not MSI_WalkToLoc) then
begin
MSI_Debug('MSI_MainLoop', 'Failed to walk to location!', Debug_PlayerActions);
Players[CurrentPlayer].Active := False;
ProgressReportArray[CurrentPlayer].FalseReason := 'Failed to walk to location';
Players[CurrentPlayer].Integers[P_LOC] := LOC_LOST;
ProgressReport;
NextPlayer(False);
Break;
end;

if (not MSI_DoSkill) then
begin
MSI_Debug('MSI_MainLoop', 'Failed to perform skill!', Debug_PlayerActions);
Players[CurrentPlayer].Active := False;
ProgressReportArray[CurrentPlayer].FalseReason := 'Failed to perform skill: ' + IntToStr(CurrentSkill);
ProgressReport;
NextPlayer(False);
Break;
end;

if (not MSI_WalkToBank) then
begin
MSI_Debug('MSI_MainLoop', 'Failed to walk to bank!', Debug_PlayerActions);
Players[CurrentPlayer].Active := False;
ProgressReportArray[CurrentPlayer].FalseReason := 'Failed to walk to bank';
Players[CurrentPlayer].Integers[P_LOC] := LOC_LOST;
ProgressReport;
NextPlayer(False);
Break;
end;

if (not MSI_BankMaterials) then
begin
MSI_Debug('MSI_MainLoop', 'Failed to bank materials!', Debug_PlayerActions);
Players[CurrentPlayer].Active := False;
ProgressReport;
NextPlayer(False);
Break;
end;

ProgressReportArray[CurrentPlayer].SkillInfo[CurrentSkill].SkillTime :=
ProgressReportArray[CurrentPlayer].SkillInfo[CurrentSkill].SkillTime + TimeFromMark(loadTime);

ProgressReport;

for i := 0 to High(PlayerSkills[CurrentPlayer]) do
IncEx(totalLoads, ProgressReportArray[CurrentPlayer].SkillInfo[CurrentSkill].TotalLoads);

Writeln('Total Loads: ' + IntToStr(totalLoads)); // Just for testing
if (totalLoads >= BreakAfter) then
MSI_HandleBreaking;

until(not Players[CurrentPlayer].Active);
until(AllPlayersInactive);
end;

things I noticed while running the script…

1. the tree finding is really good, but it only right clicks.
2. script banks too fast, the player hasn't stopped moving. this is why the bank finding is everywhere, a simple wait(randomRange(750, 1500)); would fix that problem.
3. some walking is still an issue. I'll get to fixing the main part of the walking now, just thought I'd run by the new walking routine and see if it's what you guys are looking for or if I'm going in the wrong direction.

Coh3n

2010-03-09 20:00:27

Sweet, I'll commit that in a few minutes. I can fix the right click thing (I think). I thought I had the script wait for the player to stop moving before trying to open the bank, but maybe not. I'll check that over as well.

The walking is almost exactly what I was talking about. Do you not use the TPA parts now? The way you changed the mainloop only uses the RadialWalking. My thinking was that in the function you use Radial walking, you use the TPA walking if radial walking fails. I'm thinking to do radial walking first because the TPA walking seems to walk to the wrong place a lot (i.e. to the museum).

EDIT: Also, http://villavu.com/forum/showthread.php?t=54426.

EDIT2: Nevermind about the the not using TPA part, I missed it the first time. :p But what do you think about using Radial Walking first? Since the TPA rarely fails, it just walks to the wrong area (sometimes way out of the way).

EDIT3: Committed. :) Oh, and I forgot to add to the change log, but I increased the area it looks for the bankers. Hopefully that gets rid of the bug where if it was standing beside the bank it would fail.

Blumblebee

2010-03-10 01:25:37

From: Coh3n
Sweet, I'll commit that in a few minutes. I can fix the right click thing (I think). I thought I had the script wait for the player to stop moving before trying to open the bank, but maybe not. I'll check that over as well.

The walking is almost exactly what I was talking about. Do you not use the TPA parts now? The way you changed the mainloop only uses the RadialWalking. My thinking was that in the function you use Radial walking, you use the TPA walking if radial walking fails. I'm thinking to do radial walking first because the TPA walking seems to walk to the wrong place a lot (i.e. to the museum).

EDIT: Also, http://villavu.com/forum/showthread.php?t=54426.

EDIT2: Nevermind about the the not using TPA part, I missed it the first time. :p But what do you think about using Radial Walking first? Since the TPA rarely fails, it just walks to the wrong area (sometimes way out of the way).

EDIT3: Committed. :) Oh, and I forgot to add to the change log, but I increased the area it looks for the bankers. Hopefully that gets rid of the bug where if it was standing beside the bank it would fail.


Ok I can handle using RadialWalk first (although we may need to test the radialwalk better, I didn't test it tbh just drew up the concepts and make the radials where I figured it would be good :p).

Also, I have realized one of the last major bugs in the walking, and I will fix it soon (the script sometimes doesn't find the rocks to walk up to and instead click the rocks by the bank).

just an idea, but from now on when we test, if left overnight we should use a hypercam or something on SMART so we can pinpoint each error and how it occurs.

Coh3n

2010-03-10 10:59:59

From: Blumblebee
Ok I can handle using RadialWalk first (although we may need to test the radialwalk better, I didn't test it tbh just drew up the concepts and make the radials where I figured it would be good :p).

Also, I have realized one of the last major bugs in the walking, and I will fix it soon (the script sometimes doesn't find the rocks to walk up to and instead click the rocks by the bank).

just an idea, but from now on when we test, if left overnight we should use a hypercam or something on SMART so we can pinpoint each error and how it occurs.

Yeah, I noticed that walking error also.

Another thing, the when walking to the bank, it seems to return true on the second last point. It will start looking for the bank even though it hasn't walked into the bank yet. What do you think about adding a failsafe in MSI_OpenBank so that after a certain amount of tries, if it can't find the bank, it will click the bank symbol. Since the symbol is consistent for every bank, it won't mess up the procedure. I use this method in my Draynor script, and I find it quite effective. Even if it sometimes clicks outside the bank, because of the detail settings, it can still find and open the bank.

And, I like your idea about the hypercam. I've never used it before, and I'm testing scripts using a virtual machine with 192MB of ram, so I don't know how well it would work, but I guess it's worth a shot.

EDIT: Here's a progress report from last night. I will edit with the account info. in a minute.
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen } // Was standing at the trees. Since the WCing level is -1, I'm pretty sure my connection just timed out
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: Failed to perform skill: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: -1 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen } // Was in the Varrock museum with a full inventory of logs.
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 25 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak } // Was in the bank. I must have had his starting location wrong XD
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: Failed to perform skill: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: -1 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen } // Was one tile outside the south Museum enterence with a full inventory of logs.
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to deposit items }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 700 }
{ Level: 21 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen } // Was inside the bank, not sure why it wouldn't open it.
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to deposit items }
{ }
{ Skill: Woodcutting }
{ Time: 13m 37s }
{ Loads: 3 }
{ Experience: 2,800 }
{ Level: 22 }
{ Item: Normal logs }
{ Amount: 112 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss } // Was by the rocks near the Varrock gate. By the looks of things, the walking returned true, two paths too early.
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to deposit items }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 700 }
{ Level: 19 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen } // Was just west of the Varrock gate. Again, looks like it returned true a couple paths too early.
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to deposit items }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 700 }
{ Level: 19 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen } // Was in the Pinball random.
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: Failed to perform skill: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: -1 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]

EDIT2: I was also thinking ~ What about taking out the skill time part and just adding a total time? Would slightly shorten the proggy, and to be honest, I don't really think it's needed. Plus, people care more about the total time, then individual times (seeing as it already has load/logs/etc.).

Blumblebee

2010-03-10 11:27:36

I like that, although I don't like how we enter the bank atm. I think we should walk along the road until we find the DTM of the bank, that way it knows when it's found the bank/has not found the bank.

And the MSI_Bank failsafe is a really good idea. have a case statement or something that it will walk to the bank in the set walking loop (like VEB or VWB etc).

Coh3n

2010-03-10 11:29:34

From: Blumblebee
I like that, although I don't like how we enter the bank atm. I think we should walk along the road until we find the DTM of the bank, that way it knows when it's found the bank/has not found the bank.

And the MSI_Bank failsafe is a really good idea. have a case statement or something that it will walk to the bank in the set walking loop (like VEB or VWB etc).

I agree with your first point, I don't know what you mean in the second. Do you mean have a case so it looks for the DTM? Because I was just talking about using the symbol.

Blumblebee

2010-03-10 11:34:27

From: Coh3n
I agree with your first point, I don't know what you mean in the second. Do you mean have a case so it looks for the DTM? Because I was just talking about using the symbol.


uhm a new parameter is added to MSI_Bank which now makes it

function MSI_Bank(idunnoiftheresonehere: Integer; Bank_Index: Byte): boolean;

BankIndex = final walk into bank via the script, that being a dtm, tpa, or symbol finding.

so

 if not result and tries > 2 then
begin
if not WalkPath(Bank_Index) then
begin
writeln('we messed up');
exit;
end;
continue; // or a goto or sumthing
end;

This then forces us to make a better final walk (I really don't like how we're doing it atm).

I will have limited time today and tomorrow, but I might have some of friday, a lot of sunday and monday to get the walking better. And If you don't like that idea, we can always just do findsymbol(x, y, 'bank') or something too.

Coh3n

2010-03-10 11:40:48

No I like that idea, it's more accurate that way, plus we can make it have more than one failsafe if we wanted. I can add this to the banking later today. :) I'll probably use the TPA/Symbol since I'm terrible at making DTMs for the MM. So unless someone can make one that works awesome, I'll stick with what we have.

The script is getting better though :)

I think I'll also add in a powerskill to the DeclarePlayers, just so its there. The script will last forever powerchopping. :p

NCDS

2010-03-10 12:56:55

Sorry about yesterday, my internet got shut off cause my lazy ass roommates didn't go pay the bill.

Also, If by the last bank walking click your talking about where I had it just search for the row of Bankers on MM then click just north of them, then I can think of a couple good fail safes we could use there.

I'll update and run it a few times now to see whats still messing up..

Coh3n

2010-03-10 14:54:44

From: NCDS
Sorry about yesterday, my internet got shut off cause my lazy ass roommates didn't go pay the bill.

Also, If by the last bank walking click your talking about where I had it just search for the row of Bankers on MM then click just north of them, then I can think of a couple good fail safes we could use there.

I'll update and run it a few times now to see whats still messing up..

No problem. :)

And yeah, that's what I was talking about. Except the walking function returns true, even though it didn't walk to the last point (or didn't appear to). There could be something wrong with the walking function, but it works sometimes, so I'm not sure.

EDIT: Please update, I committed a lot of stuff. :)

NCDS

2010-03-10 17:07:11

Ok, I think I solved the Returning true when it shouldn't problem.

I'm going to make up a fail safe for it quick then I'll commit.


E: Has anyone else found the character south of VEB? I think I know what caused it, I'm just wondering if this has been an on going problem, or if it may have been a fluke?

E2: Just had a very successful run after a few tweaks, no mistakes what so ever. I'm going to let it run a bit now and see how it goes.

Coh3n

2010-03-11 23:55:51

From: NCDS
Ok, I think I solved the Returning true when it shouldn't problem.

I'm going to make up a fail safe for it quick then I'll commit.


E: Has anyone else found the character south of VEB? I think I know what caused it, I'm just wondering if this has been an on going problem, or if it may have been a fluke?

E2: Just had a very successful run after a few tweaks, no mistakes what so ever. I'm going to let it run a bit now and see how it goes.

I've had it end up in the Arrow shop west of the bank, inbtween the arrow shop/bank, east of the bank, in the museum and in the dummy building. That's all I can think of right now.

Also, you didn't commit anything, did you? If it's working well, commit it! So we all can test. :D

I was reading a thread on the infinite loop in NextPlayer since that's happened to me about 100 times now. We could use this in the mainloop -> http://villavu.com/forum/showpost.php?p=686668&postcount=7

EDIT: The proggy on the first page was from last night. I set all the players to powerchop, and all players were standing by the trees when they stopped (with the exception of Pirate Cohen whom was in the Evil Bob random). The reason they stopped was because the MSI_Powerchop function was returning false negatives. I should be able to fix that now, or later today. :)

EDIT2: The NEW proggy on the first page is from this morning after I fixed the Powerchopping bug. It stopped because my internet fails. Anyone have any good ideas on a failsafe for connection loses?

EDIT3: Added the connection lost failsafe (hopefully it works right, I didn't get to test if fully yet). And added a line to avoid the infinite loop in NextPlayer.

Sir R. M8gic1an

2010-03-14 08:35:11

For SRL-Stats, get the needed functions in a new file, Stats.scar

~RM

Coh3n

2010-03-14 11:41:17

From: Rasta Magician
For SRL-Stats, get the needed functions in a new file, Stats.scar

~RM

Okay. Any good ideas on a name to register with? MSI Scripts, MSI Development? Also any ideas for custom variables?

Sir R. M8gic1an

2010-03-14 11:46:39

From: Coh3n
Okay. Any good ideas on a name to register with? MSI Scripts, MSI Development? Also any ideas for custom variables?


I think that all the different kind of collected items should go as custom vars… (normals, oaks, yews, etc)

As for name, That's something we actually have to come up with. New thread is in order!

~RM

Coh3n

2010-03-14 11:48:21

From: Rasta Magician
I think that all the different kind of collected items should go as custom vars… (normals, oaks, yews, etc)

As for name, That's something we actually have to come up with. New thread is in order!

~RM

Okay. And that's what I was thinking too. However, we're only limited to 20 custom vars. Once the script gets huge, we're going to run out quick.

NCDS

2010-03-14 12:02:51

From: Coh3n
Okay. And that's what I was thinking too. However, we're only limited to 20 custom vars. Once the script gets huge, we're going to run out quick.


Make them types? or arrays? would just limit the number of vars we would need to use.

Sir R. M8gic1an

2010-03-14 12:17:29

From: NCDS
Make them types? or arrays? would just limit the number of vars we would need to use.


stats website ;)

I'm sure we could get nielsie to allow some more space.

~RM

Coh3n

2010-03-14 12:53:58

From: Rasta Magician
stats website ;)

I'm sure we could get nielsie to allow some more space.

~RM

Okay, and I heard Wizzup was almost done the new Stats anyway. Not sure how that'll work, but it would be nice to have MSI be the first script that has the new stats. We'd get a head start. :p

Also, I edited the first post with a report I got last night. Stopped because of an access violation error.

Sir R. M8gic1an

2010-03-14 12:55:48

We should have how much time each player has run for as well…


const
P_THIS_TIME = 5:
P_TOTAL_TIME = 6;

//...
MarkTime(Players[CurrentPlayer].Integers[P_THIS_TIME]);

//proggie
if i = CurrentPlayer then
TimeRun := TimeFromMark(Players[CurrentPlayer].Integers[P_THIS_TIME]) +
Players[CurrentPlayer].Integers[P_TOTAL_TIME]
else
TimeRun := Players[CurrentPlayer].Integers[P_TOTAL_TIME];


//on log out
IncEx(
Players[CurrentPlayer].Integers[P_TOTAL_TIME],
TimeFromMark(Players[CurrentPlayer].Integers[P_THIS_TIME])
);

~RM

Coh3n

2010-03-14 12:57:38

From: Rasta Magician
We should have how much time each player has run for as well…

~RM

Well before it was how much time each player was doing each skill. Is there a reason it was each skill, instead of just the player as a whole?

Sir R. M8gic1an

2010-03-14 13:01:32

From: Coh3n
Well before it was how much time each player was doing each skill. Is there a reason it was each skill, instead of just the player as a whole?


Can we have both?

Also, check the edit above.

~RM

Coh3n

2010-03-14 13:03:42

From: Rasta Magician
Can we have both?

Also, check the edit above.

~RM

I can see the reasoning in having the time each player is logged in, but why for each skill? It just seems like it's something that people wouldn't really care about, but that's just my opinion.

Sir R. M8gic1an

2010-03-14 13:09:57

From: Coh3n
I can see the reasoning in having the time each player is logged in, but why for each skill? It just seems like it's something that people wouldn't really care about, but that's just my opinion.


Analysis purposes.

"Oh, my slave was mining for 5 hours and only got 100 irons? Maybe I should keep it mining copper, because apparently iron has too much competition"

~RM

NCDS

2010-03-14 13:24:27

From: Coh3n
Okay, and I heard Wizzup was almost done the new Stats anyway. Not sure how that'll work, but it would be nice to have MSI be the first script that has the new stats. We'd get a head start. :p

Also, I edited the first post with a report I got last night. Stopped because of an access violation error.


I believe that error was cause by marpis' MSI_FindObjTPA as I got it a minute ago as well. It's caused by the one tree that is south of all the others. Sometimes the script manages to click it, then it cannot find any of the other trees anymore. That's where I got the error at least.

It could be fixxed with simething as simple as:

if not FindTree then
WalkToTrees(The_Last_Click_Of_Walk)
if you understand what I mean there..


I've got the walking going pretty good right now. The only click that is giving me any trouble at all now is the one to get inside the bank. That's because it sometimes mistakes othr NPC's on MM as the bankers. I plan to fix that with a simple ATPA sorting method.

So Coh3n, as I said on MSN, I should be able to have stable walking to committed tonight. I also have idea's for failsafes for most of the click's.

Coh3n

2010-03-14 13:37:38

From: NCDS
I believe that error was cause by marpis' MSI_FindObjTPA as I got it a minute ago as well. It's caused by the one tree that is south of all the others. Sometimes the script manages to click it, then it cannot find any of the other trees anymore. That's where I got the error at least.

It could be fixxed with simething as simple as:

if not FindTree then
WalkToTrees(The_Last_Click_Of_Walk)
if you understand what I mean there..


I've got the walking going pretty good right now. The only click that is giving me any trouble at all now is the one to get inside the bank. That's because it sometimes mistakes othr NPC's on MM as the bankers. I plan to fix that with a simple ATPA sorting method.

So Coh3n, as I said on MSN, I should be able to have stable walking to committed tonight. I also have idea's for failsafes for most of the click's.

Okay awesome. :) Commit the if (not FindTree) statement when you commit the walking. Once you've committed the walking, all that's left to do is add Stats, Reflection walking, and the organization stuff. I think that's all anyway.

Is there someone that knows a lot about using Defines that can properly implement the reflection walking? I'm also unavailable for probably the rest of today, and tomorrow.

This is good, we're getting really close. :)

Oh and RM, the times things makes sense, I'll add that to the first post.

Naum

2010-03-14 13:41:24

Maybe error-prone code could be put in a try..except statement; so in the case that it did muck-up - then the script wouldn't stop.
Just a thought.

Great work so far everyone - it's nearing completion :)

NCDS

2010-03-14 13:50:39

From: Naum
Maybe error-prone code could be put in a try..except statement; so in the case that it did muck-up - then the script wouldn't stop.
Just a thought.

Great work so far everyone - it's nearing completion :)


That seems like good practice to me anyways. IMO, try..except blocks should be used in more situations.

I'll add them in were I see fit.

Coh3n

2010-03-14 14:07:29

Awesome, I'm looking forward to seeing the updates when I get home tomorrow. :)

Remember to check the list on the first page if you're looking for things to do.

Blumblebee

2010-03-14 15:15:35

From: NCDS
That seems like good practice to me anyways. IMO, try..except blocks should be used in more situations.

I'll add them in were I see fit.


no! Try…Except statements slow down procedures/functions dramatically. They should never be used unless absolutely necessary imo, there is much better ways to get around try..except blocks, tbh I can only think of a few situations that would require try..except blocks.

NCDS

2010-03-14 15:17:10

From: Blumblebee
no! Try…Except statements slow down procedures/functions dramatically. They should never be used unless absolutely necessary imo, there is much better ways to get around try..except blocks, tbh I can only think of a few situations that would require try..except blocks.


hmm, I guess I've never really noticed that :redface:

No problem then.

E: Walking is good to go and committed :) Hasn't failed for me yet anyways.
I also added RunEnergy before the walking segments.

Does anyone think we should incorporate Resting? Say you bank a load then rest till Energy is 50%+ then go?

Also, with the banking, it only banks logs, if anything else ends up in Inventory it doesn't get banked. Why not just use the deposit all button as long as the "tool" is equipped? otherwise we will need to add into the banking function to check all Inv slots until nothing is left(except the "tool").

Test and let me know how the walking does for everyone else. I'm sure there is still something else that will mess up somewhere.

Coh3n

2010-03-14 21:10:46

From: NCDS
hmm, I guess I've never really noticed that :redface:

No problem then.

E: Walking is good to go and committed :) Hasn't failed for me yet anyways.
I also added RunEnergy before the walking segments.

Does anyone think we should incorporate Resting? Say you bank a load then rest till Energy is 50%+ then go?

Also, with the banking, it only banks logs, if anything else ends up in Inventory it doesn't get banked. Why not just use the deposit all button as long as the "tool" is equipped? otherwise we will need to add into the banking function to check all Inv slots until nothing is left(except the "tool").

Test and let me know how the walking does for everyone else. I'm sure there is still something else that will mess up somewhere.


I'll test it right now. I don't think it's really necessary to incorporate resting. At least not right now.

I agree about the Deposit-All thing. In my scripts, I have a Boolean in the DeclarePlayers determining whether the tool is equipped or not. I'd rather not do it that way, though. What do you guys think about creating a Players.Booleans[P_TOOL], and set it to True (equipped) or False (in inventory) in the MSI_SetupPlayer procedure? That way we can still use it in the banking functions.

NCDS

2010-03-14 21:19:07

From: Coh3n

I agree about the Deposit-All thing. In my scripts, I have a Boolean in the DeclarePlayers determining whether the tool is equipped or not. I'd rather not do it that way, though. What do you guys think about creating a Players.Booleans[P_TOOL], and set it to True (equipped) or False (in inventory) in the MSI_SetupPlayer procedure? That way we can still use it in the banking functions.


That sounds fine to me, go ahead and add it if you'd like.

Naum

2010-03-15 04:12:46

Tried it on one load this morning:

{----------------------------------------------------------------}
{ MSI Extreme Player Report }
{----------------------------------------------------------------}
{ Time Running: 4 Minutes and 45 Seconds }
{----------------------------------------------------------------}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{----------------------------------------------------------------}

Worked good :).
I'm leaving it on for the time that I go to school, I'll see how it runs.

Coh3n

2010-03-15 16:32:35

Here's a report I got earlier today.

[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 1 Hours, 9 Minutes and 40 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location } //was standing in the bank
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 37 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location } //was standing at the location
{ }
{ Skill: Woodcutting }
{ Loads: 4 }
{ Experience: 2,800 }
{ Level: 40 }
{ Item: Normal logs }
{ Amount: 112 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE } //was standing at the tea stall - it was the final point that returned true as it was still looking for the bank
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 1,400 }
{ Level: 37 }
{ Item: Normal logs }
{ Amount: 56 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: Failed to walk to bank } //was standing between the Varrock museum and the Varrock east wall
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 28 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location } //was standing in the bank
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location } //was standing in the bank
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 31 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location } //was standing in the bank
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 31 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location } // was standing in the bank
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 34 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]

As you can see, the walking still seems to fail. However, I haven't logged in to any of the accounts yet, so I'll check that and edit this post.

E: Okay, so it looks like for most of the players it was walking to the first point out of the bank that messed up. I attached some screenshots of the players that were actually "lost".

NCDS

2010-03-15 17:06:46

From: Coh3n
Here's a report I got earlier today.

[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 1 Hours, 9 Minutes and 40 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location }
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 37 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location }
{ }
{ Skill: Woodcutting }
{ Loads: 4 }
{ Experience: 2,800 }
{ Level: 40 }
{ Item: Normal logs }
{ Amount: 112 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE }
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 1,400 }
{ Level: 37 }
{ Item: Normal logs }
{ Amount: 56 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: Failed to walk to bank }
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 28 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location }
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location }
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 31 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location }
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 31 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location }
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 34 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]

As you can see, the walking still seems to fail. However, I haven't logged in to any of the accounts yet, so I'll check that and edit this post.


When you check the accounts, let me know where they were/what click messed up and I'll fix it.

Sir R. M8gic1an

2010-03-15 18:34:51

From: NCDS
When you check the accounts, let me know where they were/what click messed up and I'll fix it.


Players[CurrentPlayer].Loc := 'Lost on walk to tree 2';

Please ^

~RM

NCDS

2010-03-15 18:38:06

From: Rasta Magician
Players[CurrentPlayer].Loc := 'Lost on walk to tree 2';

Please ^

~RM


I thought about that yesterday while I was committing actually. I'm not quite sure why I didn't add it.

I can right now.



Edit: I added it as a global var called WalkIndex.
I compiled it but did not test so if someone gets the time, please confirm that it works?

Coh3n

2010-03-16 13:34:22

From: NCDS
I thought about that yesterday while I was committing actually. I'm not quite sure why I didn't add it.

I can right now.



Edit: I added it as a global var called WalkIndex.
I compiled it but did not test so if someone gets the time, please confirm that it works?

Please write in the change log when you commit. :)

E: I'll test the WalkIndex variable right now, and also get the locations of those players :)

E2: I edited my post above with the player's locations, it also looks like the BreakAfter variable isn't working properly as it was switching players after every load. I'll look into that now.

E3: I've also noticed that it doesn't seem to be picking up any randoms. Does anyone know if we actually have FindNormalRandoms anywhere? :p

E4: I just found another big walking bug. He was trying to walk to the bank, it walked to the first point fine, then after it repeatedly clicked 1 or two tiles away from the middle of the minimap causing the player to very slowly walk south (1 or 2 tiles at a time), then it switched direction and did the same thing going north. After about 2 minutes of this, the player logged out and was set to false.

E5: Just did it again with the next player. It may have something to do with the WalkIndex variable.

E6: I really hate to be a douchebag, but I made this in 15 minutes:

function MSI_RadialWalk(which: Integer): Boolean;
begin
case which of
WALK_WC_VE_TREE_1:
Result := RadialWalkTolerance(MSI_AutoColorMM(VARROCK_ROAD_COLOR), 45, 65, 70, -2, 1, 10);

WALK_WC_VE_TREE_2:
Result := RadialWalkTolerance(MSI_AutoColorMM(VARROCK_ROAD_COLOR), 80, 95, 70, -2, 1, 10);

WALK_WC_VE_TREE_3:
Result := RadialWalkTolerance(MSI_AutoColorMM(ROCK_COLOR), 345, 360, 60, -2, 1, 10);

WALK_WC_VE_TREE_4:
Result := RadialWalkTolerance(MSI_AutoColorMM(TREE_COLOR), 320, 340, 40, -2, 1, 10);

WALK_WC_VE_BANK_1:
Result := RadialWalkTolerance(MSI_AutoColorMM(ROCK_COLOR), 130, 160, 70, -2, 1, 10);

WALK_WC_VE_BANK_2:
Result := RadialWalkTolerance(MSI_AutoColorMM(VARROCK_ROAD_COLOR), 185, 205, 70, -2, 1, 10);

WALK_WC_VE_BANK_3:
Result := RadialWalkTolerance(MSI_AutoColorMM(VARROCK_ROAD_COLOR), 255, 275, 70, -2, 1, 10);

WALK_WC_VE_BANK_4:
Result := RadialWalkTolerance(MSI_AutoColorMM(BANKER_COLOR), 185, 220, 50, -2, 1, 10);
end;
end;
And it worked perfectly, and that's without failsafes. I know we would never use it like this, as I'm sure I got lucky that it worked, but my point is that we're using TPA walking when we could use RadialWalking. RRW is TPA walking, except you can make it more accurate with the radials. And with failsafes, there's not reason why it would fail.

I remember reading Zeph's tutorial on walking, and I remember him saying RRW is the most accurate way when used properly, and he's the king of walking. :p I just think our current method is too much of an unnecessary hassle.

NCDS

2010-03-16 15:43:57

From: Coh3n

And it worked perfectly, and that's without failsafes. I know we would never use it like this, as I'm sure I got lucky that it worked, but my point is that we're using TPA walking when we could use RadialWalking. RRW is TPA walking, except you can make it more accurate with the radials. And with failsafes, there's not reason why it would fail.


You can use all the same concept of RW in a TPA loop though, only even more customizable. In my experience RW and RRW have proven to be extremely in accurate at times.

I still stick with my opinion that with color scripting, tpa walking is the best. It just takes time to get perfected as there are many thing's that could throw it off.

I'm sure I can find time tonight to look at the walking bug, and I'll go through and add fail safes too. I understand this is getting a tad ridiculous, but I promise you will be amazed with the outcome when this walking is finally finished.




Edit: You were right about WalkIndex begin the problem. I had index := WalkIndex; instead of WalkIndex := index :p

E2: I think something may be wrong with the reflection Defines. I commented it out and still got an error for not having ref installed. Shouldn't it not be like that? or do you need to have it installed anyways?

Sir R. M8gic1an

2010-03-16 16:38:11

From: NCDS
You can use all the same concept of RW in a TPA loop though, only even more customizable. In my experience RW and RRW have proven to be extremely in accurate at times.

I still stick with my opinion that with color scripting, tpa walking is the best. It just takes time to get perfected as there are many thing's that could throw it off.

I'm sure I can find time tonight to look at the walking bug, and I'll go through and add fail safes too. I understand this is getting a tad ridiculous, but I promise you will be amazed with the outcome when this walking is finally finished.




Edit: You were right about WalkIndex begin the problem. I had index := WalkIndex; instead of WalkIndex := index :p

E2: I think something may be wrong with the reflection Defines. I commented it out and still got an error for not having ref installed. Shouldn't it not be like that? or do you need to have it installed anyways?



{$IFDEF REFLECTION}
{.include reflection}
{$ENDIF}

Not having that might be the problem.
Note: the defines have to be on seperate lines

~RM

NCDS

2010-03-16 16:45:58

Alright, thanks.

I'll make sure we have it quick.

Coh3n

2010-03-16 16:46:34

From: Rasta Magician
{$IFDEF REFLECTION}
{.include reflection}
{$ENDIF}

Not having that might be the problem.
Note: the defines have to be on seperate lines

~RM

I'm pretty sure that doesn't work like you want it to because it still tries to include reflection even if it's not defined.

@NCDS: I better me amazed. ;) It's just taking longer than I had hoped.

EDIT: We do have

{$IFDEF REFLECTION}
{.include reflection}
{$ENDIF}

Nava2

2010-03-16 17:13:25

If I remember correctly, scar fails with defines included into includes.. I could be remembering falsely though.

NCDS

2010-03-16 17:50:50

I can't get it to compile at all. I even installed reflection.

Coh3n

2010-03-16 18:02:31

From: NCDS
I can't get it to compile at all. I even installed reflection.

What errors do you get?

Make sure the {$DEFINE REFLECTION} isn't or is commented.

NCDS

2010-03-16 18:34:31

From: Coh3n
What errors do you get?

Make sure the {$DEFINE REFLECTION} isn't or is commented.


reflection.scar does not exist.

It is commented.

Coh3n

2010-03-16 18:45:08

From: NCDS
reflection.scar does not exist.

It is commented.

Okay, then obviously the {$IFDEF..} isn't working for including reflection. Just comment the {.include …reflection.scar} in Setup.scar.

NCDS

2010-03-18 17:16:07

Updated walking again. It's working extremely well ATM.

I had to re-write the first walk index for walking to trees as it was picking up random spots on the MS for some reason. I also updated the varrock road color constant.

Please test and post what index, if any, that it messes up on.

Blumblebee

2010-03-18 17:46:05

From: NCDS
Updated walking again. It's working extremely well ATM.

I had to re-write the first walk index for walking to trees as it was picking up random spots on the MS for some reason. I also updated the varrock road color constant.

Please test and post what index, if any, that it messes up on.


fine with me, I`m suprised with the first walk index messing up but its good you fixed it :)

I`ll give it a test and see how it runs, great work btw :)

E: walking is marvelous :) I like it a lot, it is much cleaner than before, good work.

NCDS

2010-03-18 19:55:14

From: Blumblebee
fine with me, I`m suprised with the first walk index messing up but its good you fixed it :)

I`ll give it a test and see how it runs, great work btw :)

E: walking is marvelous :) I like it a lot, it is much cleaner than before, good work.


Thanks :)

Glad to see it's working for other people. Hopefully it will hold up this time!

Naum

2010-03-20 15:48:23

From: NCDS
Thanks :)

Glad to see it's working for other people. Hopefully it will hold up this time!


Sorry :(. It didn't hold up, it didn't manage one load. It clicks on other buildings instead of the Bank. Somehow, it ended up at the pub located in the south of varrock :confused:.
Walking needs to be reinforced, I didn't use reflection walking in case you're wondering. :(

In other news, I decided to commit a proggie saver. It now saves proggies, I've commited the older 'overkill' version as I'm going to be not-that-active for a while and I'm having to fix some errors in the other version. And why not have something that saves the progress report now, than one which saves it later.
Created a new folder called MSI Progress Reports, this needs to be cleared before each commit :).

Coh3n

2010-03-20 16:00:41

From: Naum
In other news, I decided to commit a proggie saver. It now saves proggies, I've commited the older 'overkill' version as I'm going to be not-that-active for a while and I'm having to fix some errors in the other version. And why not have something that saves the progress report now, than one which saves it later.
Created a new folder called MSI Progress Reports, this needs to be cleared before each commit :).

What errors were you having? It seemed pretty simple to me…

EDIT: Did you use one of my accounts? Because I started the script before I left home. Hopefully it didn't interfere. :p

Naum

2010-03-20 16:13:25

From: Coh3n
What errors were you having? It seemed pretty simple to me…

EDIT: Did you use one of my accounts? Because I started the script before I left home. Hopefully it didn't interfere. :p


Well it would be in range of the bank, then click somewhere completely irrelevant, then move the mouse over things for 5 minutes until it timed out. Give it a run, it may be my computer - who knows.

I only used troll cohen xP, when I logged in it was in the bank. Hopefully, it didn't affect anything…?

Coh3n

2010-03-20 16:14:44

From: Naum
Well it would be in range of the bank, then click somewhere completely irrelevant, then move the mouse over things for 5 minutes until it timed out. Give it a run, it may be my computer - who knows.

I only used troll cohen xP, when I logged in it was in the bank. Hopefully, it didn't affect anything…?

Ah, well we'll see when I get home. :p

When I said errors I was talking about the "simple" version of the proggy saver.

Naum

2010-03-20 16:16:31

From: Coh3n
Ah, well we'll see when I get home. :p

When I said errors I was talking about the "simple" version of the proggy saver.


Oh. lol. Try making it this is what I got down so far:

{==============================================================================\
| MSI Group Scripting Include |
| Debug.scar |
|==============================================================================|
| For all debugging and progress report routines |
| |
| Procedure MSIDebug(ProcName, TheMessage: string; DebugLevel:integer); by: Rasta Magician
\_____________________________________________________________________________}


{******************************************************************************}
{ Procedure MSI_Debug(ProcName, TheMessage: string; DebugLevel:integer); }
{ By: Rasta Magician }
{ Rev: 10 }
{ Date: 13 Sep 09 }
{ Description: Used for Debugging. Will debug to DebugBox if }
{ DebugLevel >= Debug_LevelToDebug }
{******************************************************************************}
Procedure MSI_Debug(ProcName, TheMessage: string; DebugLevel:integer);
var
DebugMSG: string;
begin
if DebugLevel < Debug_LevelToDebug then exit;
DebugMSG := TheTime+': ';

try
DebugMSG := DebugMSG + Players[CurrentPlayer].Name+': ';
except end;

case DebugLevel of
//to add some more detail
DEBUG_PLAYER_ACTIONS: DebugMSG := DebugMSG + 'Player Action: ';
DEBUG_FUNCTIONS : DebugMSG := DebugMSG + 'Entering Func: ';
DEBUG_SMALL_DETAILS : DebugMSG := DebugMSG + 'Detail: ';
end;

DebugMSG := DebugMSG + ProcName + ': ';
DebugMSG := DebugMSG + TheMessage;
writeln(DebugMSG);
end;

{******************************************************************************}
{ procedure AddToProggy(item, quantity, which: Integer); }
{ By: The MSI Team }
{ Description: Adds specified element to the progress report - if parameter }
{ is unused, set to -1 }
{******************************************************************************}
const
ADD_EXP = 0;
ADD_ITEMS = 1;
ADD_LOADS = 2;

procedure AddToProggy(item, quantity, which: Integer);
begin
if (quantity = 0) then
Exit;

case which of
ADD_EXP: IncEx(ProgressReportArray[CurrentPlayer].SkillInfo[CurrentSkill].TotalEXP, quantity);
ADD_ITEMS: IncEx(ProgressReportArray[CurrentPlayer].SkillInfo[CurrentSkill].ObjQuants[item], quantity);
ADD_LOADS: Inc(ProgressReportArray[CurrentPlayer].SkillInfo[CurrentSkill].TotalLoads);
end;
end;

Function SkillTextArray(what: variant): TStringArray;
begin
case what of
Skill_Attack : Result := ['Attack', 'Attacked'];
Skill_Strength : Result := ['Stength', 'Strengthed'];
Skill_Defense : Result := ['Defence', 'Defended'];
Skill_Range : Result := ['Range', 'Ranged'];
Skill_Prayer : Result := ['Prayer', 'Prayed'];
Skill_Mage : Result := ['Magic', 'Maged'];
Skill_RuneCrafting : Result := ['Runecrafting', 'RuneCrafted'];
Skill_HP : Result := ['Hitpoints', 'HPed'];
Skill_Agility : Result := ['Agility', 'Agilised'];
Skill_Herblore : Result := ['Herblore', 'Herblored'];
Skill_Thieving : Result := ['Thieving', 'Thieved'];
Skill_Crafting : Result := ['Crafting', 'Crafted'];
Skill_Fletching : Result := ['Flecthing', 'Flecthed'];
Skill_Slayer : Result := ['Slayer', 'Slayed'];
Skill_Mining : Result := ['Mining', 'Mined'];
Skill_Smithing : Result := ['Smithing', 'Smithed'];
Skill_Fishing : Result := ['Fishing', 'Fished'];
Skill_Cooking : Result := ['Cooking', 'Cooked'];
Skill_FireMaking : Result := ['Firemaking', 'Burned'];
Skill_WoodCutting : Result := ['Woodcutting', 'Chopped'];
Skill_Farming : Result := ['Farming', 'Farmed'];
Skill_Construction : Result := ['Construction', 'Constructed'];
Skill_Hunter : Result := ['Hunter', 'Hunted'];
Skill_Summoning : Result := ['Summoning', 'Summoned'];
end;
end;

{******************************************************************************}
{ procedure GetReportInfo; }
{ By: Coh3n }
{ Description: Gets the necessary proggy info that ISN'T reset during runtime }
{******************************************************************************}
procedure GetReportInfo;
var
i, level: Integer;
skills: TVariantArray;
theSkill: TStringArray;
begin
{ Gets the levels of each skill in the Players array }
skills := PlayerSkills[CurrentPlayer];
for i := 0 to High(skills) do
begin
theSkill := SkillTextArray(skills[i]);
level := GetSkillLevel(theSkill[0]);
ProgressReportArray[CurrentPlayer].SkillInfo[i].Level := level;
end;

{ Gets the player's location }
ProgressReportArray[CurrentPlayer].PlayerLoc := Players[CurrentPlayer].Integers[P_LOC];
{ Gets teh player's activity }
ProgressReportArray[CurrentPlayer].PlayerStatus := Players[CurrentPlayer].Active;
end;

Function ObjTextArray(Skill, WhatItem: variant): TStringArray;
begin
case Skill of
Skill_Attack :
case WhatItem of
0: Result := [];
end;
Skill_Strength :
case WhatItem of
0: Result := [];
end;
Skill_Defense :
case WhatItem of
0: Result := [];
end;
Skill_Range :
case WhatItem of
0: Result := [];
end;
Skill_Prayer :
case WhatItem of
0: Result := [];
end;
Skill_Mage :
case WhatItem of
0: Result := [];
end;
Skill_RuneCrafting :
case WhatItem of
0: Result := [];
end;
Skill_HP :
case WhatItem of
0: Result := [];
end;
Skill_Agility :
case WhatItem of
0: Result := [];
end;
Skill_Herblore :
case WhatItem of
0: Result := [];
end;
Skill_Thieving :
case WhatItem of
0: Result := [];
end;
Skill_Crafting :
case WhatItem of
0: Result := [];
end;
Skill_Fletching :
case WhatItem of
0: Result := [];
end;
Skill_Slayer :
case WhatItem of
0: Result := [];
end;
Skill_Mining :
case WhatItem of
0: Result := [];
end;
Skill_Smithing :
case WhatItem of
0: Result := [];
end;
Skill_Fishing :
case WhatItem of
0: Result := [];
end;
Skill_Cooking :
case WhatItem of
0: Result := [];
end;
Skill_FireMaking :
case WhatItem of
0: Result := [];
end;
Skill_WoodCutting :
case WhatItem of
LOGS_NORMAL: Result := ['Normal logs'];
LOGS_OAK: Result := ['Oak logs'];
end;
Skill_Farming :
case WhatItem of
0: Result := [];
end;
Skill_Construction :
case WhatItem of
0: Result := [];
end;
Skill_Hunter :
case WhatItem of
0: Result := [];
end;
Skill_Summoning :
case WhatItem of
0: Result := [];
end;
end;
end;

Function LocToText(Which: Integer): string;
begin
case Which of
LOC_LOST:
Result := 'Lost';

LOC_VE_BANK:
Result := 'Varrock east bank';

LOC_VE_TREES:
Result := 'Varrock east trees';

LOC_IN_RANDOM:
Result := 'In random';

CITY_VARROCK:
Result := 'Varrock';

else
MSI_Debug('LocToText', 'Invalid location!', debug_Functions);
end;
end;


{******************************************************************************}
{ function GroupDigits(n: integer; token: String): String; }
{ By: PriSoner and Nava2 }
{ Description: Formats an integer into groups of 3 seperated by `token' and }
{ returns a formatted string (i.e 1234567 would become 1,234,567) }
{******************************************************************************}
function GroupDigits(n: integer; token: String): String;
var
b: integer;
begin
Result := IntToStr(n);
b := length(Result) + 1;
if b > 3 then
repeat
b := b - 3;
if b > 1 then
insert(token, Result, b);
until (b < 3);
end;

{******************************************************************************}
{ procedure WriteProggieToFile(Txt : String); }
{ By: Naum }
{ Description: Writes text 'Txt' to a progress report file and prints }
{******************************************************************************}

Var FileH : Integer;
Path, FileName, ProgTitle : String;

Procedure WriteProggyToFile(Txt : String);
Begin
Path := AppPath+'Includes\SRL\SRL\MSI\MSI Progress Reports\';
FileName := Copy(TheTime, 1, Pos('PM', TheTime) - 2);
FileName := Replace(FileName, ':', '-');
AddToReport(Txt);
FileH := ReWriteFile(ProgTitle + '.txt', False);
Try
WriteFileString(FileH, Txt+#13+#10);
Except end;
End;

{******************************************************************************}
{ procedure ProgressReport; }
{ By: Coh3n }
{ Description: Prints the progress report of each player }
{******************************************************************************}

function MSI_GetItemList(whichPlayer, whichSkill: Integer): TIntegerArray; forward;
procedure ProgressReport;
var
i, j, k: integer;
skill, item: TStringArray;
intItems: TIntegerArray;
begin
ClearReport;
GetReportInfo;
ProgTitle := Path + FileName+ ' ' + TheDate(Date_Formal);
WriteProggyToFile('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>');
WriteFileString(FileH, #13+#10+'This proggie was written ' + TheDate(Date_Formal) + ' at ' + TheTime);

WriteProggyToFile('{----------------------------------------------------------------}');
WriteProggyToFile('{ MSI Extreme Player Report }');
WriteProggyToFile('{----------------------------------------------------------------}'); //64 from '{' to '}'
WriteProggyToFile('{ ' + PadR('Time Running: ' + TimeRunning, 59) + '}');
WriteProggyToFile('{----------------------------------------------------------------}');

for i := 0 to (HowManyPlayers - 1) do
with ProgressReportArray[i] do
begin
WriteProggyToFile('{ }');
// { Player 0: Player Name }
WriteProggyToFile('{ ' + PadR('Player ' + IntToStr(i) + ': ' + Capitalize(PlayerName), 59) + '}'); //PlayerName
// { City: Varrock }
WriteProggyToFile('{ ' + PadR('City: ' + LocToText(PlayerCity), 59) + '}'); //PlayerCity
// { Location: VE_Trees }
WriteProggyToFile('{ ' + PadR('Location: ' + LocToText(PlayerLoc), 59) + '}'); //PlayerLoc
// { Active: True }
WriteProggyToFile('{ ' + PadR('Active: ' + Capitalize(BoolToStr(PlayerStatus)), 59) + '}'); //PlayerStatus
if (not PlayerStatus) then
// { Reason: Failed to bank items } //FalseReason
WriteProggyToFile('{ ' + PadR('Reason: ' + FalseReason, 57) + '}');
WriteProggyToFile('{ }');

for j := 0 to High(SkillInfo) do //SkillInfo
with SkillInfo[j] do
begin
skill := SkillTextArray(PlayerSkills[CurrentPlayer][j]);
// { Skill: Woodcutting }
WriteProggyToFile('{ ' + PadR('Skill: ' + skill[0], 59) + '}');
// { Loads: 45 }
WriteProggyToFile('{ ' + PadR('Loads: ' + IntToStr(TotalLoads), 57) + '}'); //TotalLoads
// { Experience: 38,650 }
WriteProggyToFile('{ ' + PadR('Experience: ' + GroupDigits(Round(TotalEXP), ','), 57) + '}'); //TotalEXP
// { Level: 91 }
WriteProggyToFile('{ ' + PadR('Level: ' + IntToStr(Level), 57) + '}'); //Level

intItems := MSI_GetItemList(i, j);
for k := 0 to High(intItems) do //TotalObj
begin
item := ObjTextArray(PlayerSkills[CurrentPlayer][j], intItems[k]);
// { Item: Normal logs }
WriteProggyToFile('{ ' + PadR('Item: ' + item[0], 55) + '}');
// { Amount: 1,546 }
WriteProggyToFile('{ ' + PadR('Amount: ' + GroupDigits(ObjQuants[k], ','), 55) + '}'); //ObjQuants
end;

WriteProggyToFile('{ }');
WriteProggyToFile('{----------------------------------------------------------------}');
end;
end;

WriteProggyToFile('{----------------------------------------------------------------}');
CloseFile(FileH);
end;

Had to create a few global vars, haven't gotten to test it out yet - still have to iron out errors. Maybe you can help finishing it off, because I'm tired and I'm prolly not looking at it from a different perspective or w/e :)

Sir R. M8gic1an

2010-03-20 20:44:06


{==============================================================================\
| MSI Group Scripting Include |
| Debug.scar |
|==============================================================================|
| For all debugging and progress report routines |
| |
| Procedure MSIDebug(ProcName, TheMessage: string; DebugLevel:integer); by: Rasta Magician
\_____________________________________________________________________________}

Why aren't the other functions named on there?

~RM

Coh3n

2010-03-20 23:17:00

From: Rasta Magician

Why aren't the other functions named on there?

~RM

I'm going to say more than half of the MSI scripts don't have the proper functions in the headers yet. I'm going to add it to the first post actually.

EDIT: Here's a run from earlier today:
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 1 Hours, 34 Minutes and 11 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location(3) } // Was standing 2 tiles outside the Varrock gates
{ }
{ Skill: Woodcutting }
{ Loads: 4 }
{ Experience: 2,800 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 112 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False } // Was preset to false ~ we need to set a default reason if this happens
{ Reason: }
{ }
{ Skill: Woodcutting }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 0 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: Failed to setup player } // Is in the Mime random
{ }
{ Skill: Woodcutting }
{ Loads: 0 }
{ Experience: 0 }
{ Level: -1 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE } // Again, was at the tea stall, so the last point to the bank messed up
{ }
{ Skill: Woodcutting }
{ Loads: 0 }
{ Experience: 700 }
{ Level: 31 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Active: False }
{ Reason: Failed to perform skill: 0 } // In the Maze random
{ }
{ Skill: Woodcutting }
{ Loads: 1 }
{ Experience: 700 }
{ Level: -1 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Lost }
{ Active: False }
{ Reason: Failed to walk to location(3) } // Was in the Varrock bank, not sure why it wanted to walk to the last point first
{ }
{ Skill: Woodcutting }
{ Loads: 4 }
{ Experience: 2,800 }
{ Level: 33 }
{ Item: Normal logs }
{ Amount: 112 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE } // Another one at the tea stall
{ }
{ Skill: Woodcutting }
{ Loads: 0 }
{ Experience: 700 }
{ Level: 32 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE } // Was about 5 or 6 tiles south of the Varrock gates (outside), with a full inventory of logs
{ }
{ Skill: Woodcutting }
{ Loads: 0 }
{ Experience: 700 }
{ Level: 35 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]
@NCDS: I don't mean to be a douchbag or anything, but are you still convinced you can make it perfect?

Blumblebee

2010-03-21 00:00:50

From: Coh3n
I'm going to say more than half of the MSI scripts don't have the proper functions in the headers yet. I'm going to add it to the first post actually.

EDIT: Here's a run from earlier today:
- stuffhere

@NCDS: I don't mean to be a douchbag or anything, but are you still convinced you can make it perfect?


I think he can, er we can however I think that we are too much into TPA's and not enough into exactness (er if that makes sense). DTM's and smarter indexes (ex. we should be looking for a color that is only seen when the bank is perfectly in view). I have not looked at the code recently so I will do so on monday (I'm off playing volleyball for ID camps at colleges) and see what changes I can make.

Coh3n

2010-03-21 09:50:28

From: Blumblebee
I think he can, er we can however I think that we are too much into TPA's and not enough into exactness (er if that makes sense). DTM's and smarter indexes (ex. we should be looking for a color that is only seen when the bank is perfectly in view). I have not looked at the code recently so I will do so on monday (I'm off playing volleyball for ID camps at colleges) and see what changes I can make.

Okay. We have a bunch of other things that need to be done anyhow. I should be able to get some of it done within the next couple days. The girlfriend takes up most of my time when she in town. :p

EDIT: I added the total player times, and total skill times.

NCDS

2010-03-21 20:06:31

Yes Coh3n, I'm positive :p at least, I'd like to think I am.

I was away with Nathan(my son) for the weekend unexpectedly. I'm pretty sure I have an idea that will completely failsafe the last walk to bank click, which seems to cause the most problems. However, it's because of a previous click messing up and clicking to short for whatever reason.

I have a couple thing's I plan to try out tonight. It's not far to be honest. Just a couple minor thing's that keep messing it up.

Blumblebee, get on MSN sometime!

Coh3n

2010-03-21 21:22:13

Lol alright. :p

I committed some stuff. I added all the other tree records to Objects.scar. We still need the ItemInfo records for all the logs to associate with each tree.

E: Here's a short run. Stopped because of an Access violation in WizzyPlugin. Does anyone know if you can get rid of this?
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 40 Minutes and 33 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen } // Was set to powerchop by accident
{ City: Varrock }
{ Location: Lost }
{ Time: 50s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 42m 01s }
{ Loads: 4 }
{ Experience: 2,100 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 84 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Varrock east trees } // I set the starting location wrong XD
{ Time: 00s }
{ Active: False }
{ Reason: Failed to perform skill: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 13m 11s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 40 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to setup player } // Is in a random, I forgot to set to false
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Varrock east bank } //Still active…
{ Time: 10m 37s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 37m 30s }
{ Loads: 3 }
{ Experience: 2,100 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 84 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to location(3) } //Also in random, and I forgot to set to false
{ }
{ Skill: Woodcutting }
{ Time: 38m 01s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Lost }
{ Time: 38m 55s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 38m 55s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 33 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 39m 40s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 39m 40s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 32 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 40m 25s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 40m 25s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 35 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]
The last three characters were all in the bank. Every time I test, it seems to be only those three that mess up the first point when walking to the trees. :confused:

E2: Oh and obviously the times aren't working. :p

E3: It's not just those three characters that the walking bug occurs (Failed to walk to location(3)), it's the last three active characters that complete a cycle. So if I start at player 5, players 2, 3 and 4 will get the error. :confused: Then the same error continues. See:
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 45 Minutes and 56 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 40 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 32 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Lost }
{ Time: 18m 42s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 17m 42s }
{ Loads: 3 }
{ Experience: 2,100 }
{ Level: 34 }
{ Item: Normal logs }
{ Amount: 84 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 31m 19s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 11m 14s }
{ Loads: 2 }
{ Experience: 1,400 }
{ Level: 32 }
{ Item: Normal logs }
{ Amount: 56 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 38m 29s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 06m 19s }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 35 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]
I started it at player 5. Player 5, 6 and 7 worked perfectly for all they're loads. Then once it got to player 0, that error came up and continued through all the active players.

E4: WOW, the proggy needs to be fixed, someone test it and see how slow it is. It takes ~ 30 seconds to print the whole thing.

E5: Here's another run:
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 19 Minutes and 46 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen } //was at the trees and I said he started at the trees, not sure why it would try to walk
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen } //was in the bank…
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 40 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen } //was at the trees ~ starting loc was correctly setup
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 32 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss } //was in the bank
{ City: Varrock }
{ Location: Lost }
{ Time: 06m 59s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 06m 59s }
{ Loads: 2 }
{ Experience: 1,400 }
{ Level: 35 }
{ Item: Normal logs }
{ Amount: 56 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen } //was in the museum
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 32 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen } //was along the outside of the Varrock wall, just south of the trees
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to location(3) }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 35 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]

E6: This player ended up along the inside of the Varrock stone wall, 9 or 10 tiles north of the Museum.
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 17 Minutes and 0 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 04m 47s }
{ Active: False }
{ Reason: Failed to walk to Varrock east trees, index: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 04m 47s }
{ Loads: 1 }
{ Experience: 700 }
{ Level: 39 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
[/PHP]

I may have narrowed the "Failed to walk to location(3)" error thanks to the changes in debugging I made. With the new debugging, the accounts that had this error, will now have a blank FalseReason which means something's is going wrong within the MSI_ColorWalk function. The function is setup to set the FalseReason if the character fails to walk to a certain point. Since the false reason wasn't set, I don't think it failed, it just didn't attempt. I've looked through the function and I can't figure out why this is happening. What REALLY confuses me is that the first player ALWAYS works, but then players after that always have this problem.

I'll be able to look into it more later if no one else can figure it out. But, wow, I'm confused.

E7: Looking through the debug box, this kept coming up:

12:20:06 PM: honour cohen: Entering Func: MSI_WalkToLoc: Invalid location for woodcutting skill
WOW I think I got it! Due to the addition of MSI_UnsetPlayer, in the Mainloop, the script would set the CurrentPlayer's loc to LOC_LOST after switching players, thus causing this error. I'm 99% sure this is it, but I'm going to test before I commit.

Coh3n

2010-03-22 16:46:29

Okay, sorry for double post, but my last one is kind of jumbled. :p

Update to revision 53, I've fixed the walking bug (was an error on my part in the mainloop). I also did a lot of orgainizing form the "Prerelease Orgainzation" thread.

Blumblebee

2010-03-22 16:48:00

From: Coh3n
Okay, sorry for double post, but my last one is kind of jumbled. :p

Update to revision 53, I've fixed the walking bug (was an error on my part in the mainloop). I also did a lot of orgainizing form the "Prerelease Orgainzation" thread.


i tried to read the last one and got completely lost lol, so the walking errors we because of the mainloop?

Coh3n

2010-03-22 16:52:19

From: Blumblebee
i tried to read the last one and got completely lost lol, so the walking errors we because of the mainloop?

Lol I'm not surprised, and yeah. After I added the MSI_UnsetPlayer procedure, I forgot to delete the line that reset the player's location to lost. So it would set the player's loc to LOC_LOST after it already switched players, instead of setting the player that was actually lost to lost. I think that made sense? :p

Blumblebee

2010-03-22 16:58:55

From: Coh3n
Lol I'm not surprised, and yeah. After I added the MSI_UnsetPlayer procedure, I forgot to delete the line that reset the player's location to lost. So it would set the player's loc to LOC_LOST after it already switched players, instead of setting the player that was actually lost to lost. I think that made sense? :p


sort of made sense :p I'm glad you hopefully fixed the problem :)

Coh3n

2010-03-22 17:00:45

From: Blumblebee
sort of made sense :p I'm glad you hopefully fixed the problem :)

Yeah it's fixed. I've already tested it. :)

NCDS

2010-03-22 17:13:37

So is walking functioning well since your MainLoop fix? or are certain clicks still messing up?

I have a failsafe for the last walk to bank click that I have to commit still, but I want to make sure it work's right first.

Coh3n

2010-03-22 20:22:39

From: NCDS
So is walking functioning well since your MainLoop fix? or are certain clicks still messing up?

I have a failsafe for the last walk to bank click that I have to commit still, but I want to make sure it work's right first.

Yeah it was working well. Here's a good run, I've also added it to the first post. It stopped because my SCAR froze when I tried to delete the debug box contents.
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 3 Hours, 5 Minutes and 11 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to perform skill: 0 }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 04m 26s }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE } // was at the tea stall again
{ }
{ Skill: Woodcutting }
{ Time: 04m 26s }
{ Loads: 1 }
{ Experience: 1,400 }
{ Level: 41 }
{ Item: Normal logs }
{ Amount: 56 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 28m 55s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 28m 55s }
{ Loads: 6 }
{ Experience: 4,200 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 168 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 20m 11s }
{ Active: False }
{ Reason: Failed to walk to Varrock east bank, index: 3 } // was just south of the trees, along the wall
{ }
{ Skill: Woodcutting }
{ Time: 20m 11s }
{ Loads: 4 }
{ Experience: 2,800 }
{ Level: 40 }
{ Item: Normal logs }
{ Amount: 112 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Lost }
{ Time: 35m 41s }
{ Active: False }
{ Reason: Failed to walk to Varrock east trees, index: 0 } // was wayy north of the trees with a full inventory
{ }
{ Skill: Woodcutting }
{ Time: 35m 41s }
{ Loads: 6 }
{ Experience: 4,200 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 168 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 32m 03s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 32m 03s }
{ Loads: 6 }
{ Experience: 4,200 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 168 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 35m 44s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 35m 44s }
{ Loads: 7 }
{ Experience: 4,900 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 196 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]
Much, much better I'd say. :)

E: Also, the more debug info. there is in the debug box, the slower the report gets printed. After 3 hours, it was taking upwards of 45 seconds to completely print. Originally, I thought it was the MSI_SaveReport function that was slowing it down because it reads the whole debug box.

I don't see why having more info in the debug would cause it to print slower. Any ideas?

Sir R. M8gic1an

2010-03-23 19:07:33

As to the lag, here's a suggestion:

How about if we have the progress report printed in the report box. The report box can be cleared before each proggy, which would avoid it clogging up.

As for the debug box and it filling up, I have never hd such a problem before and I extensively debug my scripts. However, we could save the debug, meaning that every x minutes we could save the debug to a file and clear it. One file per run, constantly add to it.

I think that ^ would be a good solution, especially considering that MSI debugs time and player, it should be easy enough to follow what was going on just by reading the debug.

~RM

Coh3n

2010-03-23 22:26:33

From: Rasta Magician
As to the lag, here's a suggestion:

How about if we have the progress report printed in the report box. The report box can be cleared before each proggy, which would avoid it clogging up.

As for the debug box and it filling up, I have never hd such a problem before and I extensively debug my scripts. However, we could save the debug, meaning that every x minutes we could save the debug to a file and clear it. One file per run, constantly add to it.

I think that ^ would be a good solution, especially considering that MSI debugs time and player, it should be easy enough to follow what was going on just by reading the debug.

~RM

The report box is already cleared each time the progress report is called.

I like your suggestion, but I don't like how it reads the whole debug box. Especially after Wizzup's suggestion on the other thread. Naum said he was running into problems creating the function, but he didn't really explain what the problems were. It would be much better to have a procedure like:

procedure MSI_SaveToFile(s: String);
begin
Writeln(s);
AddToReport(s);
SaveFileString(s);
end;
I know it's not that simple as SaveFileString (or whatever it's called) requires an integer (which I don't really understand right now), but that would be MUCH better then reading the whole debug box, don't you think?

Sir R. M8gic1an

2010-03-24 08:03:13

From: Coh3n
The report box is already cleared each time the progress report is called.

I like your suggestion, but I don't like how it reads the whole debug box. Especially after Wizzup's suggestion on the other thread. Naum said he was running into problems creating the function, but he didn't really explain what the problems were. It would be much better to have a procedure like:

procedure MSI_SaveToFile(s: String);
begin
Writeln(s);
AddToReport(s);
SaveFileString(s);
end;
I know it's not that simple as SaveFileString (or whatever it's called) requires an integer (which I don't really understand right now), but that would be MUCH better then reading the whole debug box, don't you think?


Definitely.

~RM

Naum

2010-03-24 16:29:48

From: Rasta Magician
Definitely.

~RM


Done it.
08:26:04 PM: CompileMSI: MSI has compiled :)
Successfully executed
Someone check how it runs :)

Still not sure about making the log info (saving and clearing the debug box [as RM suggested]) - seeing as this is sorted out. Please indicate if you would like me to make this, giving relevant details. Thanks :)

In other news…
The walking of the script was really bad; sorry, it walked to this place (shown below) 4 times - even when reset! I had to manually walk it back to the bank to get it to print a report. lol.


I was using colour walking :/. If I can help in anyway please tell me.

Coh3n

2010-03-24 16:52:33

Nice! I honestly don't see the point in saving the debug any more, unless for some reason it still causes lag. As for the walking - it was working better than ever for me, but it's still not perfect. I don't know if it can be made perfect with such a long path. I think once we can compliment reflection and gather color info, we'll be able to make it better. I hope, anyway.

NCDS

2010-03-24 18:27:43

I'm going to work on the walking now for a bit.

Naum, I have no idea why it ended up there for you. That's never happened for me?

Naum

2010-03-24 18:34:14

From: NCDS
I'm going to work on the walking now for a bit.

Naum, I have no idea why it ended up there for you. That's never happened for me?


I really just don't know. I don't know whether it's my PC or if the script has some weird vendetta against me; or envies me because of my extreme good looks. I don't know (maybe the latter ;)).
I guess I'll give it another run and provide some more extensive feedback. But thanks for taking the time to work on it :), your work isn't un-noticed by me.

Just some other issues:
The whole of SRL is just not as stable as before, each time I re-maximize SMART it goes blank - then the script thinks it's logged out and starts tying in the user and pass into the chat box! I've even seen it (LoginPlayer) go and report the player I'm using - when its already logged in!!!
Also, when it doesn't find the bank it just carries on searching and freezes :(

If you need me to help you in any part just hit me up on MSN - I have currently no priority atm, so I'm mainly free :)

NCDS

2010-03-24 19:02:27

I don't think it's just your PC. I just ran it and couldn't even get 2 successful clicks…

I don't know who changed what, but something got messed up real bad.


Edit: Someone else please test. Everytime I start it, it clicks on the bank floor slightly below where my char is standing, which is odd, because that's not even within the search params…

Coh3n

2010-03-24 21:15:15

Everything seems to be working fine for me. :confused:

Also, Naum, check the first post for a list of things that can be done. I know some probably suck, but someone has to do them. :p

Sir R. M8gic1an

2010-03-24 21:24:42

To answer Naum's question, I think its worth saving the debug, independently of whether there is still lag or not.

~RM

Naum

2010-03-25 16:23:44

From: Rasta Magician
To answer Naum's question, I think its worth saving the debug, independently of whether there is still lag or not.

~RM


Finished it! Check the latest version out, it should save after 10 minutes but this is dependent on how often the proggie is called.
If someone could test it (I've tested it on mine), then it would be very nice :)

Coh3n

2010-03-26 11:07:24

From: Naum
Finished it! Check the latest version out, it should save after 10 minutes but this is dependent on how often the proggie is called.
If someone could test it (I've tested it on mine), then it would be very nice :)

I'll run the script tonight and edit in the morning with how things went. :)

E: Stopped because of another access violation.
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 2 Hours, 14 Minutes and 40 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to Varrock east bank, index: 1 } //Was at the tea stall
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 40 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 23m 28s }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE } //was just outside varrock, on the path
{ }
{ Skill: Woodcutting }
{ Time: 23m 28s }
{ Loads: 5 }
{ Experience: 4,200 }
{ Level: 43 }
{ Item: Normal logs }
{ Amount: 168 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 19m 38s }
{ Active: False }
{ Reason: Failed to walk to Varrock east trees, index: 3 } //was inbetween the Varrock museum and city wall
{ }
{ Skill: Woodcutting }
{ Time: 19m 38s }
{ Loads: 4 }
{ Experience: 2,800 }
{ Level: 35 }
{ Item: Normal logs }
{ Amount: 112 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Lost }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to walk to Varrock east trees, index: 1 } //same as player 3
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: 40 }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 09m 47s }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE } //was in the guard house just outside Varrock
{ }
{ Skill: Woodcutting }
{ Time: 09m 47s }
{ Loads: 2 }
{ Experience: 2,100 }
{ Level: 39 }
{ Item: Normal logs }
{ Amount: 84 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 40m 54s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 40m 54s }
{ Loads: 8 }
{ Experience: 5,600 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 224 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Varrock east bank } //in Arnav random
{ Time: 15m 15s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 15m 15s }
{ Loads: 3 }
{ Experience: 2,100 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 84 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]

I've attached the Logs/Reports made. For the reports, wouldn't it be better to replace the current one? Instead of creating a new one? Just a thought. Also, for the reports, would it be better to add to the current one? That way there's only one file.

Naum

2010-03-26 13:06:14

From: Coh3n

I've attached the Logs/Reports made. For the reports, wouldn't it be better to replace the current one? Instead of creating a new one? Just a thought. Also, for the reports, would it be better to add to the current one? That way there's only one file.


Concept sounds amazing; it's just the scripting which will need time. As we have it, the current proggie saver saves every report under a .txt file of time and date. Since the time will vary, there will have to be a global var created to store the file name, and then it will have to be added on and such.
Furthermore, the idea of replacing the current one is bogus. Many people usually would have their best or finest progress report saved, re-starting the script would over-write it. This would just be counter-intuitive to what the savers' purpose is.

Moreover, adding to the current one would be good. That way you can have each file saved under a date, and time denoting headers and such (a bit like INI files). For example:

15 March, 2010

Progress Report Saved at 09:09:07

-blah -


————————————

Progress Report Saved at 18:10:07

-blah-


————————————


I'd be in for this concept and indeed adding to the report file sounds like a good idea. I'll probably code it over the weekend, unless you want to code it before-hand?

Also, does the whole log saving work as it is supposed to?

Coh3n

2010-03-26 13:54:39

I didn't mean replacing any existing progress report files. I meant replace the ones made during runtime, so it will only create one file per run. Know what I mean?

When I was talking about adding to the current one, I meant adding to the current log. Again, so it only makes one log file per run, instead of many. As you probably saw it created many log files instead of just one.

Coh3n

2010-03-29 14:00:25

Here's a run after I added the Hybrid walking functions. Will commit in a second.
[PHP]
{—————————————————————-}
{ MSI Extreme Player Report }
{—————————————————————-}
{ Time Running: 2 Hours, 2 Minutes and 26 Seconds }
{—————————————————————-}
{ }
{ Player 0: Empty Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 29m 42s }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE }
{ }
{ Skill: Woodcutting }
{ Time: 29m 42s }
{ Loads: 6 }
{ Experience: 4,900 }
{ Level: 41 }
{ Item: Normal logs }
{ Amount: 196 }
{ }
{—————————————————————-}
{ }
{ Player 1: Troll Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 700 }
{ Level: 43 }
{ Item: Normal logs }
{ Amount: 28 }
{ }
{—————————————————————-}
{ }
{ Player 2: Cohen Gorak }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 3: Honour Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 38m 18s }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE }
{ }
{ Skill: Woodcutting }
{ Time: 38m 18s }
{ Loads: 7 }
{ Experience: 5,600 }
{ Level: 38 }
{ Item: Normal logs }
{ Amount: 224 }
{ }
{—————————————————————-}
{ }
{ Player 4: Broddi Cohen }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 09m 31s }
{ Active: False }
{ Reason: Failed to open bank: OBJ_BANK_VE }
{ }
{ Skill: Woodcutting }
{ Time: 09m 31s }
{ Loads: 2 }
{ Experience: 2,100 }
{ Level: 42 }
{ Item: Normal logs }
{ Amount: 84 }
{ }
{—————————————————————-}
{ }
{ Player 5: Cohen Abyss }
{ City: Varrock }
{ Location: Varrock east bank }
{ Time: 10m 08s }
{ Active: True }
{ }
{ Skill: Woodcutting }
{ Time: 10m 08s }
{ Loads: 2 }
{ Experience: 1,400 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 56 }
{ }
{—————————————————————-}
{ }
{ Player 6: Pirate Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{ }
{ Player 7: Run Cohen }
{ City: Varrock }
{ Location: Varrock east trees }
{ Time: 00s }
{ Active: False }
{ Reason: User set to false }
{ }
{ Skill: Woodcutting }
{ Time: 00s }
{ Loads: 0 }
{ Experience: 0 }
{ Level: Not yet defined }
{ Item: Normal logs }
{ Amount: 0 }
{ }
{—————————————————————-}
{—————————————————————-}
[/PHP]
One player was in a random, the rest were all around the area of the house just outside Varrock. I'm not exactly sure how this happened because it should have walked to the reflection points. I think I need to change the reflection points, and I'm sure some other tweaks are necessary.

Feel free to try it out. ;)

Oh and in that 2 hour run, it created 8 log files and 13 progress report files. Would be much better if we shrunk that down to 1 each. :)

E: I've updated the list on the first page. There hasn't been much activity here in the last few days, what are people up to? :)

Naum

2010-03-29 15:01:14

Meh, lack of activity on my part. I'm studying for exams in this period of time. Also attempting to finish the maze solver (66.66% done!!, you can have your account back btw: thanks! :)). I'm also working on some simba script, so yeah: this is mainly the reason I am 'inactive' as you would call it.

Coh3n

2010-03-29 15:02:51

From: Naum
Meh, lack of activity on my part. I'm studying for exams in this period of time. Also attempting to finish the maze solver (66.66% done!!, you can have your account back btw: thanks! :)). I'm also working on some simba script, so yeah: this is mainly the reason I am 'inactive' as you would call it.

Haha exams are always a bitch. Good thing I only have part time classes this year. :rolleyes:

NCDS

2010-03-29 15:36:42

I've just been caught up in finishing this yew chopper.

For some reason nothing with MSI work's for me, or has over the past couple days, but it's so unorganized still that I can't really figure out what is going wrong.

I might have some time later tonight to get into it a bit, other wise I think I have tomorrow off from work so I can work on it then.

Coh3n

2010-03-29 15:38:15

From: NCDS
I've just been caught up in finishing this yew chopper.

For some reason nothing with MSI work's for me, or has over the past couple days, but it's so unorganized still that I can't really figure out what is going wrong.

I might have some time later tonight to get into it a bit, other wise I think I have tomorrow off from work so I can work on it then.

Okay. What stuff in particular is unorganized? I should be able to fix it pretty easily.

NCDS

2010-03-29 15:42:27

From: Coh3n
Okay. What stuff in particular is unorganized? I should be able to fix it pretty easily.


I just notice that we have repeated constants declared in different .scar's.

I guess the main problem is that it takes forever to single out an error as there are so many interchangeable functions and different scripts to look through.

Nothing anyone has done wrong though.

Coh3n

2010-03-29 15:46:52

From: NCDS
I just notice that we have repeated constants declared in different .scar's.

I guess the main problem is that it takes forever to single out an error as there are so many interchangeable functions and different scripts to look through.

Nothing anyone has done wrong though.

Wouldn't a repeated constant result in a duplicate identifier error?

And pinpointed errors should be the easy part if we have a proper debug system.

Sir R. M8gic1an

2010-03-30 06:54:48

As for reducing it to 1 file each….

Just save it by script start time, rather than current time or something. That way it'll always save to the same place. You can have a variable keep the start time ;)

~RM

Coh3n

2010-03-30 11:32:19

From: Rasta Magician
As for reducing it to 1 file each….

Just save it by script start time, rather than current time or something. That way it'll always save to the same place. You can have a variable keep the start time ;)

~RM

Right now it uses GetTimeRunning. When it calls MSI_SaveLog it replaces the file with the name of the current time/date, and since the time always changes, it would create a new file (I'm guessing). Does that make sense? Lol EDIT: So basically the same thing you said, I just didn't realize it at the time. :duh:

E: Not sure about this, but would something like this work?

procedure MSI_SaveDebug;
var
theFile: Integer;
path, fileName: String;
begin
if (GetTimeRunning > (logCount * 600000)) then
begin
path := AppPath + 'Includes\SRL\SRL\msi\MSI Logs\';
theFile := OpenFile(path + IntToStr(MsToTime(scriptStart)) + '.txt', False); //not sure if this creates the file if it doesn't exist

if (logCount >= 1) then
WriteFileString(theFile, 'Log written ' + TheTime + ' on ' + TheDate(Date_Formal) + #13 + #10);
WriteFileString(theFile, #13 + #10 + GetDebugText);

ClearDebug;
Inc(logCount);
CloseFile(theFile);
end;
end;
Didn't really change anything, just the file name. And since the file name stays the name, it makes sense that it would just rewrite it.

NCDS

2010-03-30 13:59:21

From: Coh3n
Wouldn't a repeated constant result in a duplicate identifier error?

And pinpointed errors should be the easy part if we have a proper debug system.


If I remember correctly, I saw 2 or 3 different constants for varrock road color the other day. That's really the only specific thing I can remember right now.

Last time I ran it, it would just hover the mouse over the west windows in the bank. I was a bit intoxicated at the time, otherwise I would have been able to fix it/provide more info on it. :redface:

Coh3n

2010-03-30 14:34:03

From: NCDS
If I remember correctly, I saw 2 or 3 different constants for varrock road color the other day. That's really the only specific thing I can remember right now.

Last time I ran it, it would just hover the mouse over the west windows in the bank. I was a bit intoxicated at the time, otherwise I would have been able to fix it/provide more info on it. :redface:

Lol don't worry. :p

I've been meaning to tweak the banking record. For some reason, whenever I try to add DebugTPA/ATPA to marpis's object functions, the window never shows up. :(

As for the constants, there are a lot of useless constants around. I comment them out as I see them, or delete if I see duplicated. I'll catch them as I go through the organization. :p

Coh3n

2010-04-03 13:00:59

Stopped this manually:
[PHP]
{—————————————————————-}

{ MSI Extreme Player Report }

{—————————— 1.0 —————————–}

{ Time Running: 2 Hours, 45 Minutes and 4 Seconds }

{—————————————————————-}

{ }

{ Player 0: Empty Cohen }

{ City: Varrock }

{ Location: Lost }

{ Time: 00s }

{ Active: False }

{ Reason: Failed to walk to Varrock east bank, index: 1 }

{ }

{ Skill: Woodcutting }

{ Time: 00s }

{ Loads: 0 }

{ Experience: 0 }

{ Level: 43 }

{ Item: Normal logs }

{ Amount: 0 }

{ }

{—————————————————————-}

{ }

{ Player 1: Troll Cohen }

{ City: Varrock }

{ Location: Varrock east bank }

{ Time: 15m 18s }

{ Active: True }

{ }

{ Skill: Woodcutting }

{ Time: 15m 18s }

{ Loads: 3 }

{ Experience: 2,100 }

{ Level: Not yet defined }

{ Item: Normal logs }

{ Amount: 84 }

{ }

{—————————————————————-}

{ }

{ Player 2: Cohen Gorak }

{ City: Varrock }

{ Location: Varrock east bank }

{ Time: 15m 21s }

{ Active: True }

{ }

{ Skill: Woodcutting }

{ Time: 15m 21s }

{ Loads: 3 }

{ Experience: 2,100 }

{ Level: Not yet defined }

{ Item: Normal logs }

{ Amount: 84 }

{ }

{—————————————————————-}

{ }

{ Player 3: Honour Cohen }

{ City: Varrock }

{ Location: Varrock east bank }

{ Time: 04m 21s }

{ Active: True }

{ }

{ Skill: Woodcutting }

{ Time: 04m 21s }

{ Loads: 1 }

{ Experience: 700 }

{ Level: Not yet defined }

{ Item: Normal logs }

{ Amount: 28 }

{ }

{—————————————————————-}

{ }

{ Player 4: Broddi Cohen }

{ City: Varrock }

{ Location: Powerskilling }

{ Time: 28m 21s }

{ Active: True }

{ }

{ Skill: Woodcutting }

{ Time: 28m 21s }

{ Loads: 4 }

{ Experience: 7,560 }

{ Level: 47 }

{ Item: Willow logs }

{ Amount: 112 }

{ }

{—————————————————————-}

{ }

{ Player 5: Cohen Abyss }

{ City: Varrock }

{ Location: Powerskilling }

{ Time: 16m 58s }

{ Active: True }

{ }

{ Skill: Woodcutting }

{ Time: 16m 58s }

{ Loads: 4 }

{ Experience: 4,592 }

{ Level: 43 }

{ Item: Willow logs }

{ Amount: 68 }

{ }

{—————————————————————-}

{ }

{ Player 6: Pirate Cohen }

{ City: Varrock }

{ Location: Powerskilling }

{ Time: 52m 20s }

{ Active: True }

{ }

{ Skill: Woodcutting }

{ Time: 52m 20s }

{ Loads: 4 }

{ Experience: 3,780 }

{ Level: Not yet defined }

{ Item: Willow logs }

{ Amount: 56 }

{ }

{—————————————————————-}

{ }

{ Player 7: Run Cohen }

{ City: Varrock }

{ Location: Powerskilling }

{ Time: 11m 20s }

{ Active: True }

{ }

{ Skill: Woodcutting }

{ Time: 11m 20s }

{ Loads: 2 }

{ Experience: 3,780 }

{ Level: 40 }

{ Item: Willow logs }

{ Amount: 56 }

{ }

{—————————————————————-}

{—————————————————————-}
[/PHP]
Everything seems to be working awesome. The proggy saves perfectly, I'm just putting finishing touches on the debug saver. After that, there's only a couple small things to do before we can release. :)

E: Not sure why everything's double spaced. Could be that I copied it from the file?

Naum

2010-04-03 13:06:39

Double Spaced - Remove the #10+#13 after the writefile whatever.
That should fix it.

Coh3n

2010-04-03 13:08:22

From: Naum
Double Spaced - Remove the #10+#13 after the writefile whatever.
That should fix it.

But it's not double spaced in the .txt.

Naum

2010-04-03 13:10:18

From: Coh3n
But it's not double spaced in the .txt.


I guess its because of the PHP tags then…

Coh3n

2010-04-05 16:13:30

From: Naum
I guess its because of the PHP tags then…

Apparently it's cause I'm using Ubuntu, according to Nava. :p

Nava2

2010-04-05 16:16:26

Linux uses different characters for new line, windows uses two chars, linux uses one. So when you copied from a .txt (windows format) you actually copied two newline chars, and your browser *may* have interpreted that as you wanting two carriages each time.

Again, all speculation :)

Coh3n

2010-04-05 20:15:21

From: Nava2
Linux uses different characters for new line, windows uses two chars, linux uses one. So when you copied from a .txt (windows format) you actually copied two newline chars, and your browser *may* have interpreted that as you wanting two carriages each time.

Again, all speculation :)

Yeah… that. :p

I think we're ready for to release. I can't think of anything else that needs to be done, other than adding stats. Would anyone else rather wait until Wizzup finishes with the new stats?

Blumblebee

2010-04-05 21:39:49

sure, i'll be out for 10-15 days (volleyball, literally tore half my finger off, 10 stitches) just so you all know. Is the walking now working well?

Coh3n

2010-04-05 21:41:58

From: Blumblebee
sure, i'll be out for 10-15 days (volleyball, literally tore half my finger off, 10 stitches) just so you all know. Is the walking now working well?

Yeah it seems to be working pretty well. I mean, obviously it's not perfect, but I don't see how it can get much better. :p

I've had it run 30+ trips without messing up. And that's with just color as my hooks are outdated.

E: Oh, and OUCH! How did you manage that?

Blumblebee

2010-04-05 21:45:08

From: Coh3n
Yeah it seems to be working pretty well. I mean, obviously it's not perfect, but I don't see how it can get much better. :p

I've had it run 30+ trips without messing up. And that's with just color as my hooks are outdated.

E: Oh, and OUCH! How did you manage that?


that's good, i figure we need to set a strong example for everyone else. And it's a long, painful story haha. I only have one hand so i'm not gunna type it all out haha.

Coh3n

2010-04-05 21:48:28

From: Blumblebee
that's good, i figure we need to set a strong example for everyone else. And it's a long, painful story haha. I only have one hand so i'm not gunna type it all out haha.

Lol alright. :p

The script also works as an awesome power chopper. I haven't gotten very long reports though because of my shitty internet connection, but still good nonetheless.