LordSaturn
1. Technique (50/100)
Good technique has been used. However I have seen that in quite a few places, you have used the "for to do" loop incorrectly. I'll explain in the efficiency section, as this decreases efficiency a lot.
A small point, but in case statements, when you only have the "case" acting on one thing, you don't need "begin end;"
PHP Code:
case MyName of
'Wizzup' : Writeln('I am Wizzup!');
'Fakawi' : Writeln('I am Fakawi!');
'Star' : begin
Writeln('I am Starblaster100');
Writeln('How did that happen?!');
end;
end;
function GetLostEquipment : Boolean; won't work properly! If you run out of bait, or feathers, the script will try looking on the floor for lost equipment! You may want to edit that a bit
All over your script you have things like
PHP Code:
if (Lowercase(String2) = 'net') then
however, you never setup String1, String2, String3!!! It won't work!!!
2. Individuality (65/100)
A good script, similar to what a few people may make however. I like the scripting style however. Nice job
3. Use of SRL (70/100)
Well no SRL 4, but i won't mark against that. Used a lot of Antiban procedures, and uses SRL procedures well. Could have used some of SRLs fishing bitmaps however
4. Efficiency (35/100)
PHP Code:
for i := 0 to 2 do
repeat
FindTalk;
Wait(Random(300));
HoverSkill('random', False)
Wait(Random(300))
GameTab(Random(13));
Wait(Random(300));
until
You are going to make it check twice for a whirlpool until either the DTMs disappear or the time goes over the mark. Then you are going to make it do the same again. You only need to make it check once.
PHP Code:
until (not(FindDTM(Whirlpool1, x, y, MSX1, MSY1, MSX2, MSY2)) or
not(FindDTM(Whirlpool2, x, y, MSX1, MSY1, MSX2, MSY2)) or
not(FindDTM(Whirlpool3, x, y, MSX1, MSY1, MSX2, MSY2))
unfortunately, this won't work either. It is going to wait until 1 of the DTMs disappear before carrying on, which is not what you want. You want to wait until all of the DTMs disappear! Just to make sure there is no whirlpool left.
you do it again in procedure SolveWhirlpool; its unneeded.
You have a lot of global vars, mainly because you have so many DTMs and Bitmaps. Are they all really needed? Some of the fish are exactly the same shape, so you could have made 1 DTM for about 2-3 fist in some cases. (Obviously others such as lobster and swordfish would be on their own)
You have the procedures, freeDTM, FreeBitmaps etc. but you don't use them! In a script, don't include procedure and functions that you never use - it increases compiling time, increase Memory usage and decreases efficiency.
The Procedure CheckEquipment could be shortened much more by using cases.
PHP Code:
case Players[CurrentPlayer].Strings[0] of
'net' := BMPToLookFor := SmallNet;
'rod' := BMPToLookFor := FishingRod
end;
If (FindBitmap(BMPToLOokFor, ...)) then
Writeln('Equipment Found')
else
Writeln('No Equipment Found');
or something similar, you get the picture...
In procedure Equipment; you look for lost equipment 4 times! Thats very unnecessary! Twice is enough. This is copied and pasted from above as the person before you did exactly the same thing:
I'm not sure why you have called FindRod twice here. It only needs to be called once. (I.E. Take out the First Findrod.) The beauty about Functions is that you can call them in both ways you have shown here. However, for what you want to do, you only have to call it in the second way.
PHP Code:
if (Rodfind) then //if finds no equipment performs
begin //nextplayer
LoginRoutine;
end
This will work as follows: Calls the procedure FindRod everytime. If the procedure results as "True" it will continue the "if then" statement. Otherwise it won't complete the "if then" statement.
In the procedure procedure FindRandoms; you need to add small waits.
procedure SetRandomStuff; could easily be condensed.
PHP Code:
SetAreaVolume(Random(5)
etc.
Need some waits in procedure WaitWhilstFishing;
5. Presentation (40/100)
Progress Report!!! Disappointing, even if it was 6 am =(
No commented procedures...
Scripting standards are basically perfect, no complaints
No script header? Not even a proper script name! (Program New;...)
6. Added Extras (50/100)
Extensive antiban which i like, used when waiting for the script to fish a load.
All fish fishing.
7. Script Run (50/100)
Had quite a few problems I'm afraid. Sometimes struggled to find fish spot, and started walking of in a random direction?
Total Score: 360/700