SRL Archive - Archive

bobbohobbo - SRL Member Application Form


BobboHobbo

2007-08-24 19:40:04

<!– BEGIN TEMPLATE: formanswers –>
bobbohobbo - SRL Member Application Form
bobbohobbo

What is the meaning to life?


Where you Referred to SRL? If yes, by whom?
no


Programming Knowledge
HTML

Other Communitys
Umm Fagex but i dont go on it.

How Long have You Played Runescape
About 3 years

Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.

Im 13 and love to script :)

Hmm a bit about my expernce in this area aye, umm well i like writing scripts its fun and it feels good that im releasing scripts to the community and doing stuff on the forums not leeching like others :)

——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted

{:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
------------------------------------------------------------------
<:-------------BH - Rhimngton Woodcutter + Firemaker!----------:>
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::[Instructions]
:: 1. Low Detail highest brightness!
:: 2. Fill in the Declare Players
:: 3. Put your characters somewhere where is alot of trees.
:: 4. Drag the (+) into Runescape and press play!
:: 5. Enjoy! Post progress reports and bugs.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: [Script History]
:: Friday 24 of August 2007 - First Release!
::
::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::[Credits]
:: SantaClause, he helped me with things. Thanks!
::YoHoJo, For his awesome EntFinder
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: [What does the script do]
:: It woodcuts Normal Logs,Oaks and Willows then burns them.
:: If gets stuck, i made to move somewhere else.
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

{.include SRL\SRL.scar}
{.include SRL\SRL\Skill\Woodcutting.SCAR}
const
DirrectionR = 'N'; //Which way to run if in fight and so on.
Burn = 150; //How many LOGS to burn before changing accounts
// There s about 26 Logs ea load


var
Tinderbox, AxeH, WoodcutLv, FiremakeLv, TreeToCut, Normal, x, y: Integer;
Oak, Willow, NL, OL, WL, Burnt, Swapplayer, EntAvoid, LogMask: Integer;

procedure DeclarePlayers;
begin
HowManyPlayers := 10;
CurrentPlayer := 0;
NumberOfPlayers(HowManyPlayers);

Players[0].Name := 'User';
Players[0].Pass := 'Pass';
Players[0].Nick := 'Nick'; //3 letters of your username, example jonno you would choose onn.
Players[0].Active := True;

Players[1].Name := 'Username';
Players[1].Pass := 'Password';
Players[1].Nick := 'Nickname'; //3 letters of your username, example jonno you would choose onn.
Players[1].Active := True;

Players[2].Name := 'Username'; // take away the { on the left to show these
Players[2].Pass := 'Password';
Players[2].Nick := 'Nickname'; //3 letters of your username, example jonno you would choose onn.
Players[2].Active := True;

Players[3].Name := 'Username';
Players[3].Pass := 'Password';
Players[3].Nick := 'Nickname'; //3 letters of your username, example jonno you would choose onn.
Players[3].Active := True;

Players[4].Name := 'Username';
Players[4].Pass := 'Password';
Players[4].Nick := 'Nickname'; //3 letters of your username, example jonno you would choose onn.
Players[4].Active := True;

NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
Swapplayer := Swapplayer + 1;
end;



procedure LoadDTMS;
begin
Tinderbox := DTMFromString('78DA63DCCFCCC0B08A910119C4D973303C04D' +
'220D1FF40C0B81BA8662EAA1A902C17540D987712A86636013567' +
'806A9613507304A8662301353B816A361350B301A8663D01351B8' +
'16A961150B30DA866217E35005E0E1297');
AxeH := DTMFromString('78DA63EC63666058C1C8800C9A92781974804' +
'220D1FF40C0D80D54B305550D48968B01A206CCEB01AA5949400D' +
'C8AE8504D44C04AA994540CD1CA09AD944A8594C847BD61150D30' +
'B54B309BF1A00B817109E');
NL := DTMFromString('78DA63E465616058CAC80002109281A125D59' +
'6E12194FF1F081839806AE6C3646100550FA310116AA4816AE612' +
'50230F54B39C801A39A09AF504D48802D56C24A0861BA8660B013' +
'520BF6F20A08609A8661501356C4035CBF0AB010069480E46');
OL := DTMFromString('78DA63DCCDCCC0708A9101194CC877627808A' +
'441A2FF8180710B50CD61543510591809A4F711A1E638116A4E62' +
'BA0743CD19A09A0B04D41C02AAB94240CD56A09A6B04D4AC03AAB' +
'94440CD26A09A93F8D50000C00C15B6');
WL := DTMFromString('78DA637CC6CCC0708A91011984F9CA333C04D' +
'220D1FF40C0780FA8E630AA1A882C8C04D22F8850F311A8E62001' +
'35DF806ACE1350F31AA8E62A01354F806AAE13507317A8E60A013' +
'537816A4EE357030026DF1521');
LogMask := BitmapFromString(31, 25, 'z78DAED97810D002008C35' +
'EE20AFF3FC90F0806852EB207A88EC030EBD1726530C5D938FCA7' +
'24B7C8575AAF5FCA712D5397D0695D7EFD49AEDB2DEAE47106E62' +
'EF349983BD77781CF9CEFA5211FF221AF9F90BAE4CC1BE434E757' +
'DE869555EE7232F39B56FE519954845FDD2F1893E2')

end;

procedure FindTinderDTM;
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
Writeln('Tinderbox found!');
wait(1000);
end;
begin
if FindDTM(AxeH, x, y, 553, 209, 725, 457) then
begin
Writeln('Axe found!')
MMouse(x, y, 1, 1);
if (IsUpText('axe')) then
wait(1000);
Exit;
end else
Writeln('Tinderbox or axe not found, Make sure its in your Inventory');
TerminateScript;
end;
end;

procedure Check;
begin
GameTab(4);
LoadDTMS;
FindTinderDTM;
FreeDTM(AxeH);
end;

procedure EntFinder; // Thanks to YoHoJo.
var
EX, EY: integer;
FX, FY: integer;
SafeEntWait: LongInt;

begin
Status('Checking For Ent')
if
(FindObjCustom(EX, EY, ['Tree', 'Willow', 'Oak'], [4690821], 5)) then
begin
MMouse(EX, EY, 0, 0)
if FindColorTolerance(FX, FY, 55769, 85, 15, 115, 15, 20) then
begin
Status('Ent Found');
MouseFindFlag(645, 83, 2, 2);
MarkTime(SafeEntWait)
repeat
FTWait(5)
FindNormalRandoms;
if not (LoggedIn) then
NextPlayer(False);
until TimeFromMark(SafeEntWait) > 29000 + Random(10000)
EntAvoid := EntAvoid + 1
end;
end;
end;

function FindFastRandoms: Boolean; //By WT-Fakawi.
var
i: Integer;
begin
for i := 1 to 8 do
begin
case I of
1: if FindDead then
Result := True;
2: if FindMod then
Result := True;
3: if FindMime then
Result := True;
4: if FindMaze then
Result := True;
5: if FindQuiz then
Result := True;
6: if FindDemon then
Result := True;
7: begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
7: begin
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
8: RC;
end;
wait(1);

end;
end;


///////////////////////////////////////////////////////////////////////////

procedure FindRandoms;
begin
FindFastRandoms;
FindNormalRandoms;
Wait(20)
FindTalk;
FTWait(3)
EntFinder;
if (FindFight) then
begin
RunAwayDirection(DirrectionR);
Wait(8000 + Random(2000));
RunBack;
end;
Wait(20)
FindTalk;
end;

procedure AntiBannage;
begin
case random(16) of
0: GameTab(5 + Random(12));
1: BoredHuman;
2: GameTab(4 + Random(12));
3: GameTab(1 + Random(12));
4: GameTab(2 + Random(12));
5: RandomMovement
6: BoredHuman;
7: PickUpMouse;
8: RandomRClick;
9: BoredHuman;
10: GameTab(1 + Random(12));
11: RandomMovement;
12: GameTab(5 + Random(12));
13: GameTab(6 + Random(12));
14: BoredHuman;
15: GameTab(7 + Random(12));
end;
end;


procedure MoveIfProblem;
begin
MouseFindFlag(643, 78, 2, 2)
end;

procedure FmOak;
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
if IsUpText('Oak') then
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
mouse(x, y, 4, 4, true);
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
Mouse(x, y, 5, 5, true);
end;
end;
end;
end;
end;

procedure FmNormal;
begin
if FindDTM(NL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
if IsUpText('Logs') then
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
mouse(x, y, 4, 4, true);
if FindDTM(NL, x, y, 553, 209, 725, 457) then
begin
Mouse(x, y, 5, 5, true);
end;
//Begins Drop
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 2, 2)
if IsUpText('Oak') then
begin
Mouse(x, y, 3, 3, false);
Wait(200 + Random(50)); ;
ChooseOption('Drop');
end;
end;
end;

end;
end;
end;
end;


procedure CantLightWaitBH;
begin
if InChatMulti('can', 'ire h', 'lig') then
begin
MouseFindFlag(643, 78, 2, 2);
end;
end;

procedure CantLightWillow;
begin
if InChatMulti('of 30', 'willow', 'ow logs.') then
begin
if FindDTM(WL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
if IsUpText('Willow') then
mouse(x, y, 1, 1, false);
ChooseOption('Drop');
end;
end;
end;

procedure CantLightOak;
begin
if InChatMulti('of 15', 'oak', 'ak logs.') then
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
if IsUpText('Oak') then
wait(100);
Mouse(x, y, 1, 1, False);
wait(500);
ChooseOption('Drop');
end;
end;
end;


procedure LightWaitBH;
begin
if InChat('You at') then
repeat
if (not (LoggedIn)) then
begin
Exit;
end else
ClicktoContinue;
FTWait(1);
until InChatMulti('cat', 'Con', 'ire');
end;



procedure LightLogs;
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
wait(100);
Mouse(x, y, 5, 5, true);
end;
begin
if FindDTM(NL, x, y, 553, 209, 725, 457) or
FindDTM(OL, x, y, 553, 209, 725, 457) or
FindDTM(WL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
mouse(x, y, 1, 1, true);
wait(1000);
end;
begin
LightWaitBH;
wait(1000);
CantLightWaitBH;
CantLightOak;
CantLightWillow;
ClickToContinue;
wait(1000);
Burnt := Burnt + 1;
end;
end;
end;




procedure check1;
begin
Setrun(false);
WoodcutLv := GetSkillLevel('woodcutting')
FiremakeLv := GetSkillLevel('firemaking')
WriteLn('Starting WC level: ' + IntToStr(WoodcutLv));
WriteLn('Starting FM level: ' + IntToStr(FiremakeLv));
end;

procedure CutNormalLogs;
begin
if invfull then
Exit;
if FindObj(x, y, 'Tree', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;


procedure CutOakLogs;
begin
if invfull then
Exit;
begin
wait(6000 + random(2000));
if FindObj(x, y, 'Oak', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;
end;

procedure CutWillowLogs;
begin
if invfull then
begin Exit;
wait(8000 + random(2000));
if FindObj(x, y, 'Willow', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;
end;

procedure DoWhatToCut;
begin
Writeln('Began DoWhatToCut;');
if ((GetSkillLevel('woodcutting')) < 15) and
((GetSkillLevel('woodcutting')) >= 1) then
TreeToCut := Normal;
if ((GetSkillLevel('woodcutting')) < 30) and
((GetSkillLevel('woodcutting')) >= 15) then
TreeToCut := Oak;
if ((GetSkillLevel('woodcutting')) < 99) and
((GetSkillLevel('woodcutting')) >= 30) then
TreeToCut := Willow;

end;

procedure WhatToCut;
begin
Writeln('Began WhatToCut;');
if (TreeToCut = Normal) then
begin
CutNormalLogs;
end;
if (TreeToCut = Oak) then
begin
CutOakLogs;
end;
if (TreeToCut = Willow) then
begin
CutWillowLogs;
end;
end;

procedure ProgressReport;
begin
ClearDebug;
Writeln('[]¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤');
Writeln('¤ BH - WoodCutter + Burner Progress ');
Writeln('¤ Report! ');
WriteLn('¤ Worked for ' + TimeRunning + '.');
Writeln('¤ Burnt Logs ' + IntToStr(Burnt) + ' Time/s' + ' ');
Writeln('¤ Logged in ' + IntToStr(Swapplayer) + ' Time/s' + ' ');
WriteLn('¤ Ents Avoided ' + IntToStr(EntAvoid) + ' Time/s');
Writeln('[]¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤');
end;

procedure Setup;
begin
Burnt := 0;
end;
begin
ActivateClient;
SetupSRL;
ActivateClient;
wait(100);
Setup;
DeclarePlayers;
if (not (loggedIn)) then
begin
LoginPlayer;
end;
begin
Check;
check1
FindRandoms;
AntiBannage;
DoWhatToCut;
repeat
repeat;
FindRandoms;
AntiBannage;
ProgressReport;
WhatToCut;
until (invfull);
if (invfull) then
begin
repeat
LightLogs;
FindRandoms;
ProgressReport;
until (not (FindBitmapMaskTolerance(LogMask, x, y, 553, 209, 725, 457, 10, 2))) or
(Burnt = (Burn));
if (Burnt >= Burn) then
begin
NextPlayer(True);
Burnt := 0;
end;
end;
until (false);
end;
end.

——————————————————
<!– END TEMPLATE: formanswers –>

Harry

2007-08-24 19:52:17

Hmmmmmmmmmmmm….

I thought you said you were leaving SRL + SCAR like a few months ago? :S

Anyways, it looks good from my point of view, I will vote yesh, unless I change my mind otherwise :p

BobboHobbo

2007-08-24 19:56:17

Ye i did leave, but i didnt leave SRL forums just the scripting and runescape, just came back to it now. (Not Runescape though) :)

Dan Cardin

2007-08-24 20:08:18

if ur wondering i am the other yes

BobboHobbo

2007-08-24 20:21:01

From: dan cardin
if ur wondering i am the other yes


Thanks Dan :)

3Garrett3

2007-08-24 20:46:59

From: dan cardin
if ur wondering i am the other yes

.

Santa_Clause

2007-08-24 22:14:09

Yes :p

Kik

2007-08-24 22:21:05

Looks good to me; multiplayer, dtms, good use of SRL - could have used a bit more failsafes, though (what script couldn't? :p ).

I also see you making alot of good, helpful posts around here.

It's a yes.

pwnaz0r

2007-08-24 22:25:26

Looks good to me

From: kikwit
Looks good to me; multiplayer, dtms, good use of SRL - could have used a bit more failsafes, though (what script couldn't? :p ).

It's a yes.

[Offtopic]
Btw you just got SRL Members and as I was looking on my tutorial "Path to SRL members, you were on there saying that you hoped my tutorial helped you to get in or something". GJ with that ;)
[/Offtopic]

WhiteShadow

2007-08-24 22:45:09

procedure CutNormalLogs;
begin
if invfull then
Exit;
if FindObj(x, y, 'Tree', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;


procedure CutOakLogs;
begin
if invfull then
Exit;
begin
wait(6000 + random(2000));
if FindObj(x, y, 'Oak', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;
end;

procedure CutWillowLogs;
begin
if invfull then
begin Exit;
wait(8000 + random(2000));
if FindObj(x, y, 'Willow', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;
end;

Why would you have something like this, when you could make one procedure with parameters? Your woodcutting procedures are very basic.

procedure WhatToCut;
begin
Writeln('Began WhatToCut;');
if (TreeToCut = Normal) then
begin
CutNormalLogs;
end;
if (TreeToCut = Oak) then
begin
CutOakLogs;
end;
if (TreeToCut = Willow) then
begin
CutWillowLogs;
end;
end;

You don't know how to use case of?

procedure FmOak;
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
if IsUpText('Oak') then
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
mouse(x, y, 4, 4, true);
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
Mouse(x, y, 5, 5, true);
end;
end;
end;
end;
end;

procedure FmNormal;
begin
if FindDTM(NL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
if IsUpText('Logs') then
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
mouse(x, y, 4, 4, true);
if FindDTM(NL, x, y, 553, 209, 725, 457) then
begin
Mouse(x, y, 5, 5, true);
end;
//Begins Drop
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 2, 2)
if IsUpText('Oak') then
begin
Mouse(x, y, 3, 3, false);
Wait(200 + Random(50)); ;
ChooseOption('Drop');
end;
end;
end;

end;
end;
end;
end;

You have these 2 procedures in your script, but you don't even use them.

procedure ProgressReport;
begin
ClearDebug;
Writeln('[]¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤');
Writeln('¤ BH - WoodCutter + Burner Progress ');
Writeln('¤ Report! ');
WriteLn('¤ Worked for ' + TimeRunning + '.');
Writeln('¤ Burnt Logs ' + IntToStr(Burnt) + ' Time/s' + ' ');
Writeln('¤ Logged in ' + IntToStr(Swapplayer) + ' Time/s' + ' ');
WriteLn('¤ Ents Avoided ' + IntToStr(EntAvoid) + ' Time/s');
Writeln('[]¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤');
end;

Debug player stats.

procedure LightWaitBH;
begin
if InChat('You at') then
repeat
if (not (LoggedIn)) then
begin
Exit;
end else
ClicktoContinue;
FTWait(1);
until InChatMulti('cat', 'Con', 'ire');
end;

Time marker?

procedure CantLightWillow;
begin
if InChatMulti('of 30', 'willow', 'ow logs.') then
begin
if FindDTM(WL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
if IsUpText('Willow') then
mouse(x, y, 1, 1, false);
ChooseOption('Drop');
end;
end;
end;

procedure CantLightOak;
begin
if InChatMulti('of 15', 'oak', 'ak logs.') then
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
if IsUpText('Oak') then
wait(100);
Mouse(x, y, 1, 1, False);
wait(500);
ChooseOption('Drop');
end;
end;
end;

Err, check stats before you start chopping things?

NL := DTMFromString('78DA63E465616058CAC80002109281A125D59' +
'6E12194FF1F081839806AE6C3646100550FA310116AA4816AE612' +
'50230F54B39C801A39A09AF504D48802D56C24A0861BA8660B013' +
'520BF6F20A08609A8661501356C4035CBF0AB010069480E46');
OL := DTMFromString('78DA63DCCDCCC0708A9101194CC877627808A' +
'441A2FF8180710B50CD61543510591809A4F711A1E638116A4E62' +
'BA0743CD19A09A0B04D41C02AAB94240CD56A09A6B04D4AC03AAB' +
'94440CD26A09A93F8D50000C00C15B6');
WL := DTMFromString('78DA637CC6CCC0708A91011984F9CA333C04D' +
'220D1FF40C0780FA8E630AA1A882C8C04D22F8850F311A8E62001' +
'35DF806ACE1350F31AA8E62A01354F806AAE13507317A8E60A013' +
'537816A4EE357030026DF1521');

One universal log dtm would of been enough.

Your script is also lacking if (not(LoggedIn))then NextPlayer(False);

Sorry, it's a little simple. "/

ZephyrsFury

2007-08-24 23:12:45

I sort of have to agree with what WhiteShadow said but I do think you are a good scripter… I'll have think about it.

In your FindTinderDTM procedure you have this line(s).

end else
Writeln('Tinderbox or axe not found, Make sure its in your Inventory');
TerminateScript;

You should replace the TerminateScript with something like this:

end else
begin
Writeln('Tinderbox or axe not found, Make sure its in your Inventory');
Players[CurrentPlayer].Loc := 'No Tinderbox';
Players[CurrentPlayer].Active := False;
LogOut;
Exit;
end;


Then you would need to put
 if (not(LoggedIn)) then Exit 
in every procedure/function so it will just skip right to the end and run
NextPlayer(Players[CurrentPlayer].Active)
which will change characters and set Players.Active based on whether the player is workable (the number burnt = burn but it still can continue) or not (its lost the tinderbox or axe).

EDIT: I'm voting yes.

RAM

2007-08-25 00:09:48

Semi-original Idea for a script…I like it, as mentioned, it could use some refining, but hopefully you will use the criticism posted here in a constructive way ;) …You've also made some positive contributions to the community over these last months :)

@Kikwit…Welcome, be sure to read this please….. http://www.villavu.com/forum/showthread.php?t=1288

Good Luck,

~RAM

Edit: I decided to actually come back and vote yes….don't let me down ;)

Santa_Clause

2007-08-25 00:25:04

From: WhiteShadow
procedure CutNormalLogs;
begin
if invfull then
Exit;
if FindObj(x, y, 'Tree', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;


procedure CutOakLogs;
begin
if invfull then
Exit;
begin
wait(6000 + random(2000));
if FindObj(x, y, 'Oak', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;
end;

procedure CutWillowLogs;
begin
if invfull then
begin Exit;
wait(8000 + random(2000));
if FindObj(x, y, 'Willow', 4690821, 5) then
begin
getmousepos(x, y);
mouse(x, y, 0, 0, true);
end;
end;
end;

Why would you have something like this, when you could make one procedure with parameters? Your woodcutting procedures are very basic.

procedure WhatToCut;
begin
Writeln('Began WhatToCut;');
if (TreeToCut = Normal) then
begin
CutNormalLogs;
end;
if (TreeToCut = Oak) then
begin
CutOakLogs;
end;
if (TreeToCut = Willow) then
begin
CutWillowLogs;
end;
end;

You don't know how to use case of?

procedure FmOak;
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
if IsUpText('Oak') then
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
mouse(x, y, 4, 4, true);
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
Mouse(x, y, 5, 5, true);
end;
end;
end;
end;
end;

procedure FmNormal;
begin
if FindDTM(NL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
if IsUpText('Logs') then
begin
if FindDTM(Tinderbox, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 1, 1);
if (IsUpText('ind')) then
mouse(x, y, 4, 4, true);
if FindDTM(NL, x, y, 553, 209, 725, 457) then
begin
Mouse(x, y, 5, 5, true);
end;
//Begins Drop
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 2, 2)
if IsUpText('Oak') then
begin
Mouse(x, y, 3, 3, false);
Wait(200 + Random(50)); ;
ChooseOption('Drop');
end;
end;
end;

end;
end;
end;
end;

You have these 2 procedures in your script, but you don't even use them.

procedure ProgressReport;
begin
ClearDebug;
Writeln('[]¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤');
Writeln('¤ BH - WoodCutter + Burner Progress ');
Writeln('¤ Report! ');
WriteLn('¤ Worked for ' + TimeRunning + '.');
Writeln('¤ Burnt Logs ' + IntToStr(Burnt) + ' Time/s' + ' ');
Writeln('¤ Logged in ' + IntToStr(Swapplayer) + ' Time/s' + ' ');
WriteLn('¤ Ents Avoided ' + IntToStr(EntAvoid) + ' Time/s');
Writeln('[]¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤-¤');
end;

Debug player stats.

procedure LightWaitBH;
begin
if InChat('You at') then
repeat
if (not (LoggedIn)) then
begin
Exit;
end else
ClicktoContinue;
FTWait(1);
until InChatMulti('cat', 'Con', 'ire');
end;

Time marker?

procedure CantLightWillow;
begin
if InChatMulti('of 30', 'willow', 'ow logs.') then
begin
if FindDTM(WL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
if IsUpText('Willow') then
mouse(x, y, 1, 1, false);
ChooseOption('Drop');
end;
end;
end;

procedure CantLightOak;
begin
if InChatMulti('of 15', 'oak', 'ak logs.') then
begin
if FindDTM(OL, x, y, 553, 209, 725, 457) then
begin
MMouse(x, y, 5, 5);
wait(500);
if IsUpText('Oak') then
wait(100);
Mouse(x, y, 1, 1, False);
wait(500);
ChooseOption('Drop');
end;
end;
end;

Err, check stats before you start chopping things?

NL := DTMFromString('78DA63E465616058CAC80002109281A125D59' +
'6E12194FF1F081839806AE6C3646100550FA310116AA4816AE612' +
'50230F54B39C801A39A09AF504D48802D56C24A0861BA8660B013' +
'520BF6F20A08609A8661501356C4035CBF0AB010069480E46');
OL := DTMFromString('78DA63DCCDCCC0708A9101194CC877627808A' +
'441A2FF8180710B50CD61543510591809A4F711A1E638116A4E62' +
'BA0743CD19A09A0B04D41C02AAB94240CD56A09A6B04D4AC03AAB' +
'94440CD26A09A93F8D50000C00C15B6');
WL := DTMFromString('78DA637CC6CCC0708A91011984F9CA333C04D' +
'220D1FF40C0780FA8E630AA1A882C8C04D22F8850F311A8E62001' +
'35DF806ACE1350F31AA8E62A01354F806AAE13507317A8E60A013' +
'537816A4EE357030026DF1521');

One universal log dtm would of been enough.

Your script is also lacking if (not(LoggedIn))then NextPlayer(False);

Sorry, it's a little simple. "/


I asked him if he knew how to use cases and he didn't so I just told him to do it that way.

BobboHobbo

2007-08-25 00:29:27

All will be fixed :)

Thanks Shadow for going though everything i really apreciate it. Ill learn from what you said, thanks.

EDIT*
Thanks RAM :)

Santa_Clause

2007-08-25 00:52:38

Dang. I just realised I was in the credits :p

BobboHobbo

2007-08-25 00:58:11

From: SantaClause
Dang. I just realised I was in the credits :p


Lol, ya i added that because your the one who helped me with the start bit :)

ZephyrsFury

2007-08-25 03:01:41

From: bobbohobbo
All will be fixed :)

Thanks Shadow for going though everything i really apreciate it. Ill learn from what you said, thanks.

EDIT*
Thanks RAM :)


If you need any help with anything feel free to pm/email/add me on msn… My addy is in my profile. :D

BobboHobbo

2007-08-25 04:01:59

From: ZephyrsFury
If you need any help with anything feel free to pm/email/add me on msn… My addy is in my profile. :D


Kk ill add you.

MasterKill

2007-08-25 04:29:17

Its a good start. yes.

BobboHobbo

2007-08-25 04:45:44

Thanks Master :)

n3ss3s

2007-08-25 05:09:40

Yes from me, but a lil tip… Use FreeDTM and FreeBitmap.

BobboHobbo

2007-08-25 06:05:25

From: n3ss3s
Yes from me, but a lil tip… Use FreeDTM and FreeBitmap.


Ya i did use freeDTM for the axe :) i cant free the others then i get errors :)

n3ss3s

2007-08-25 06:12:46

You need to free them in the right places, and call again :)

Im going to test my script for an hour or two…

Kik

2007-08-25 11:15:48

From: RAM_RUNE
Semi-original Idea for a script…I like it, as mentioned, it could use some refining, but hopefully you will use the criticism posted here in a constructive way ;) …You've also made some positive contributions to the community over these last months :)

@Kikwit…Welcome, be sure to read this please….. http://www.villavu.com/forum/showthread.php?t=1288

Good Luck,

~RAM


That was one of the first things I read :D

WT-Fakawi

2007-08-26 05:21:36

In!