SRL Archive - Archive

Bad Boy JH - SRL Member Application


Bad Boy JH

2009-12-15 00:38:15

How Long have You Played Runescape?
3 Year(s)


Are you affilated in anyway with Jagex LTD?
No

Were you Referred to SRL?



What is your general programming knowledge?
I had to learn some Python for School.


Are you a member of any other communities?
I have Joined Freddy's Forums, for the Neopets Scripting Section, which i regularly contribute to under "jameshibbard"


Tell us about yourself…
From: Bad Boy JH
I am 16, from Newcastle Australia, Taking 3U maths, Adv English, Chemistry, Business Studies and Software design and Development for the HSC which I am currently undertaking. My passions are computing and Sport, but mainly only watching sport, although i do love playing. Spare time is spent playing computer games including Runescape and Tribal Wars.



Please show us one (or multiple) of your scripts.
//Yes the Script isn't Tidy, but it works unless I get a runtime error in the Text.scar script. 
//[Runtime Error] : Exception: Canvas does not allow drawing in line 279 in script C:\Program Files\SCAR 3.22\includes\SRL\SRL\Core\Text.scar

//start Near Al Kharid Bank
//Setup lines 11-25

program New;
{.include SRL/SRL.scar}
{.include SRL/SRL/skill/Cooking.scar}
{.include SRL/SRL/Core/Animation.scar}

Var count, x, y:integer;
Tpoint:TPoint;

const
trips=1; //how many trips you want to do
itemx=270;//X cordinate of food
itemy=110;//Y cordinate of food
food='tuna';//the food you want to cook for example 'tuna'

procedure DeclarePlayers;
begin
NumberOfPlayers(1);
CurrentPlayer:= 0;

Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;//Use this player?
Players[0].Pin := '';//Bank pin. Leave blank if you don't have one.
Players[0].BoxRewards := ['Xp', 'mote'];
end;


procedure ItemWithdraw;
begin
MMouse(itemx, itemy, 5, 5)
if(IsUpText(food))then
begin
mouse(itemx, itemy, 5, 5, false)
wait(500)
mouse(itemx, itemy+75, 5, 5, true)
end else
begin
writeln(Food + ' not at (' + inttostr(itemx) + ',' + inttostr(itemy) + '). terminating script....Idiot.')
terminatescript
end;
end;


procedure AntiBan;
begin
FindNormalRandoms;
case random(80) of
0: Gametab(20+random(13));
4: RandomMovement;
5: HoverSkill('cooking', false);
6: RandomRClick;
end;
gametab(tab_inv);
FindNormalRandoms;
end;

procedure bank;
begin
OpenBankNPC
wait(750)
depositall
wait(750)
ItemWithdraw
wait(750)
end;


procedure walktorange;
begin
if(findsymbol(x, y, 'Cook'))then
mouse(x+5, y, 5, 5, true) else
begin
findsymbol(x, y, 'Kebab Shop')
mouse(x-5, y, 5, 5, true)
end;
repeat
wait(100)
until(PixelShift(IntToBox(MMCX-30, MMCY-30, MMCX+30, MMCY+30), 500) < 200)
end;

procedure cook;
var I:integer;
begin
repeat
wait(50)
until(findrange(x, y))
TPoint:=itemcoords(1)
mouse(TPoint.x, TPoint.y, 5, 5, True)
mouse(x, y, 5, 5, true)
wait(2500)
mouse(255, 408, 5, 5, false)
wait(500)
mouse(236, 459, 5, 5, True)
for I:=1 to 33 do
begin
wait(2000)
antiban
end;
end;

procedure walktobank;
begin
findsymbol(x, y, 'Bank')
mouse(x, y, 5, 5, true)
repeat
wait(100)
until(PixelShift(IntToBox(MMCX-30, MMCY-30, MMCX+30, MMCY+30), 500) < 200)
end;




begin
SetUpSRL
SetupCooking

DeclarePlayers
LoginPlayer
walktobank
gametab(25)
repeat
bank
antiban
walktorange
cook
walktobank
inc(count)
writeln('count' + inttostr(count))
antiban
until(count=trips)
Logout;
end.

Kyle Undefined

2009-12-15 03:16:32

First of all, I couldn't even get it to compile. Had to remove the "{.include SRL/SRL/Core/Animation.scar}" line.

Secondly, you defiantly need to work on your standards. Standards help make it easier to read the code and find errors. Here's an example:

var
count, x, y : Integer;
Tpoint : TPoint;

This spreads out your vars so they are easier to read. You don't have to do it the way I did, but to me it's easier to read.

Third, your constants could be made into your Declare Players. Never use exact coord clicking, it's not safe. Again with the standars. Example:

procedure DeclarePlayers;
begin
NumberOfPlayers(1);
CurrentPlayer:= 0;

Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;//Use this player?
Players[0].Pin := '';//Bank pin. Leave blank if you don't have one.
Players[0].BoxRewards := ['Xp', 'mote'];
Players[0].Strings[0] := 'tuna'; // fish you want to cook
Players[0].Integers[0] := 1; // How many trips you want to do
end;

Fourth, your withdraw procedure could be made better. Why don't you try searching for the food? Although I don't know the exact code, this will lead you in the right path. Example:

procedure ItemWithdraw;
begin
if(BankScreen)then
begin
SearchBank(Players[CurrentPlayer].Strings[0]);
// Check to see if the item was found
// If it is, then withdraw
// If not, terminate script
end;
end;
Also, this is not a something a member would do ;) You could lose respect for it.

'terminating script....Idiot.'

Fifth, your Bank procedure needs standards and better waits. Don't forget the semicolons ";" Don't use solid wait times, add some randomness to it like this:

procedure Bank;
begin
OpenBankNPC;
Wait(750 + Random(200));
DepositAll;
Wait(750 + Random(200));
ItemWithdraw;
Wait(750 + Random(200));
end;

Sixth, your WalkToRange procedure needs standards and failsafes. If both of the symbols fail then your script will stop. Example:

procedure WalkToRange;
begin
if(FindSymbol(x, y, 'Cook'))then
Mouse(x+5, y, 5, 5, True)
else
begin
FindSymbol(x, y, 'Kebab Shop');
Mouse(x-5, y, 5, 5, True);
end;
repeat
Wait(100 + Random(250));
until(PixelShift(IntToBox(MMCX-30, MMCY-30, MMCX+30, MMCY+30), 500) < 200);
end;

Seventh, your Cook procedure really needs standards work and the semicolons. I don't understand why you're going from 1 to 33 since your inventory can only hold 28. Example:

procedure Cook;
var
I : Integer;
begin
repeat
Wait(50 + Random(100));
until(FindRange(x, y));
TPoint := ItemCoords(1);
Mouse(TPoint.x, TPoint.y, 5, 5, True);
// Don't know why you have two mouse's in a row, maybe you forgot a wait?
Mouse(x, y, 5, 5, True);
Wait(2500 + Random(500));
Mouse(255, 408, 5, 5, False);
Wait(500 + Random(500));
Mouse(236, 459, 5, 5, True);
for I := 1 to 28 do
begin
Wait(2000 + Random(400));
AntiBan;
end;
end;

Eighth, your WalkToBank procedure needs standards work yet again and failsaifes. Also need random waits and semicolons. Example:

procedure WalkToBank;
begin
FindSymbol(x, y, 'Bank');
Mouse(x, y, 5, 5, True);
repeat
Wait(100 + Random(200));
until(PixelShift(IntToBox(MMCX-30, MMCY-30, MMCX+30, MMCY+30), 500) < 200);
end;

Ninth, your MainLoop needs standards work, and the semicolons. Then, make count equal the amount the script user entered in the DeclarePlayers procedure. Example:

begin
SetUpSRL;
SetupCooking;
DeclarePlayers;
LoginPlayer;
WalkToBank;
GameTab(25);
repeat
Bank;
AntiBan;
WalkToRange;
Cook;
WalkToBank;
Inc(Count);
WriteLn('Count := ' + IntToStr(Count));
AntiBan;
until(Count = Players[CurrentPlayer].Integers[0]);
Logout;
end.

And finally tenth, all though I'm sure you put countless time making this script, it's not ready for members sorry. Good luck next time :D

~Camo

Bad Boy JH

2009-12-15 06:10:48

I always Provide reasons for what I do,

1st about it compiling, I don't know why, but I couldn't get it to compile WITHOUT that line OR WITH it, citing the process to check if the player is moving being doubled, so i removed it, added the animation.scar include and it compiled… Don't know what happened, but i assume its to do with Scar downloading issues.

2nd yes I know standards need to be worked on, and I am trying to figure out what good standards are, and been searching around the forums, but I have been in and out of hospital recently, so i haven't been able to follow up with that.

3rd and 4th i have tried a variety of ways to get that to work, but this was the easiest, and i have used the MMouse which has a variable on where the mouse moves. that "terminating script…Idiot" remark, was meant as a joke, that is sort of my sense of humor, I will, try and keep that out of my scripts in the future though.

5th, OK good advice, will take that into account in future…

6th, I have been adding stuff, but its hard to figure out another way, I figured only other way was to search for the dot, that would be covering the symbol.

7th, It does not go on how long the tuna takes to cook, I have just figured every 2 secs would be a good time to do an anti ban procedure, and it takes about 66 secs to cook the tuna.

8th there is no need for randoms there.. its waiting until the player stops moving…. if i added random wait AFTER i stop moving before moving on, that would make sense. for the fail safes, see above… going to get it to look for the dots.

9th I found scripts don't always need semicolons, so I tend to only put them where they are necessary, to avoid putting them where they shouldn't be

Dervish

2009-12-15 06:35:37

Standards, semicolons, failsafes are missing :'(.

If you complexed it a little more, It'd be a yes.

cycrosism

2009-12-15 07:10:49

Hi.

I suggest you read this thread http://www.villavu.com/forum/showthread.php?t=3562

There is a suggestion there that says


DO NOT try to apply with a low post count. I usually don't care about post count, and hate forums that do. I am not saying make a bunch of useless posts either. Just don't try to apply as soon as you get here. Let us get to know you first, or it's pretty much an automatic no.


To become accepted into SRL members you must be a active member of the community, for god sakes you arn't even a Junior member yet, you are still a registered user. You need to contribute more to the community.

To start off, you should make a few scripts, post them in the Junior member scripts (When you get junior members), get feedback from others and improve your scripts, learning newer and better ways to script (and learning new things too like TPA's) and when you feel good enough to apply to SRL members you should apply with a script that has gotten lots of positive feedback, and one that works good.

Gu3st...

2009-12-15 11:52:20

Remember attitude is 70% of the vote, and you haven't shown any bad or good attitude yet… give it some time, be friends with some members here and show us that you earn the respect of being a srl member, read some tutorials on TPA and other advanced stuff and then reapply :)

The code should be at least 300 lines (The script that got me in was over 2k lines)

Naike

2009-12-15 15:46:14

For having 9 posts, you're doing VERY good.

Keep going, and don't stop here, you'll get in if you keep at it.

Very impressing, I have to say.
I've seen people with 100+ posts coming with so much crap that you start to wonder, really.

Once again, good work.
Remember, attitude is a big part of being an SRL member, so just be respectful and mature in the future(not saying you're not atm :p).

Just because you learned so damn fast, and I had a "wat" moment, I'll give you a yes.

Bionicle

2009-12-15 16:59:16

This is a no…sorry. Here is why.
  • Too short…application scripts should be at least 300 lines
  • No DTM's
  • No advanced walking, only symbol finding
  • No Arrays of any kind
  • Not Multiplayer
  • Standards are way off
  • Easy-ban script (will get into more detail later)

Now, instead of pulling apart your script with the pros and cons like I usually do, I'm going to pull apart your script, and give you helpful points and tips. Remember, everyone started out new too, my first script wasn't much better :). I'm going to go through each and everyone of your procedures, plus the main loop and the beginning.

Beginning

Here is your beginning:
//Yes the Script isn't Tidy, but it works unless I get a runtime error in the Text.scar script. 
//[Runtime Error] : Exception: Canvas does not allow drawing in line 279 in script C:\Program Files\SCAR 3.22\includes\SRL\SRL\Core\Text.scar

//start Near Al Kharid Bank
//Setup lines 11-25

program New;
{.include SRL/SRL.scar}
{.include SRL/SRL/skill/Cooking.scar}
{.include SRL/SRL/Core/Animation.scar}

Var count, x, y:integer;
Tpoint:TPoint;

const
trips=1; //how many trips you want to do
itemx=270;//X cordinate of food
itemy=110;//Y cordinate of food
food='tuna';//the food you want to cook for example 'tuna'
1) 'Yes the Script isn't Tidy, but it works', you should have fixed that up before applying if you are actually serious about making it into the SRL members.

2) You don't need the include animation.scar, as I am pretty sure it is already included with the include SRL.scar.

3) The X and Y coordinates (yes, it is coordinates, not cordinates :p) you can find with a DTM, so even if the spot changes, it will still find them. It also makes it easier for the user. Besides, with an application script, DTMs are one of the things you should put in to show your knowledge. You can make multiple DTMs for the different foods, then you can use them in a case statement with your food const in a procedure to load the DTM. If you don't know how to use DTMs, look at this tutorial: http://www.villavu.com/forum/showthread.php?t=51105.

DeclarePlayers

Here is your DeclarePlayers:
procedure DeclarePlayers;
begin
NumberOfPlayers(1);
CurrentPlayer:= 0;

Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;//Use this player?
Players[0].Pin := '';//Bank pin. Leave blank if you don't have one.
Players[0].BoxRewards := ['Xp', 'mote'];
end;

1) You can add some of your const in here, just in case they want to cook different foods on their different accounts. You can do this by putting
Strings[0] := 'tuna'; //What food do you want to cook on this account?
Then if you want to call it later, for the current player, you can use: Players[CurrentPlayer].Strings[0].

2) STANDARDS! After every beginning, you need to indent by two spaces, then the end must line up with its beginning, like this:
procedure DeclarePlayers;
begin
NumberOfPlayers(1);
CurrentPlayer:= 0;

Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;//Use this player?
Players[0].Pin := '';//Bank pin. Leave blank if you don't have one.
Players[0].BoxRewards := ['Xp', 'mote'];
end;

3) Just something that looks better, you can call it as a case, like this:
procedure DeclarePlayers;
begin
NumberOfPlayers(1);
CurrentPlayer:= 0;

with Players[0] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;//Use this player?
Pin := '';//Bank pin. Leave blank if you don't have one.
BoxRewards := ['Xp', 'mote'];
end;
end;
You don't have to though, just something that looks better in my opinion ;).

ItemWithdraw

This is what you got:
procedure ItemWithdraw;
begin
MMouse(itemx, itemy, 5, 5)
if(IsUpText(food))then
begin
mouse(itemx, itemy, 5, 5, false)
wait(500)
mouse(itemx, itemy+75, 5, 5, true)
end else
begin
writeln(Food + ' not at (' + inttostr(itemx) + ',' + inttostr(itemy) + '). terminating script....Idiot.')
terminatescript
end;
end;

1) ugh..standards again…after the 'then' the begin isn't indented, it's what's after the begin. Also add a semi-colon after every procedure:
procedure ItemWithdraw;
begin
MMouse(itemx, itemy, 5, 5);
if(IsUpText(food))then
begin
mouse(itemx, itemy, 5, 5, false);
wait(500);
mouse(itemx, itemy+75, 5, 5, true);
end else
begin
writeln(Food + ' not at (' + inttostr(itemx) + ',' + inttostr(itemy) + '). terminating script....Idiot.');
terminatescript;
end;
end;

2) This was the Easy-Ban that I was talking about before. All your 'Wait's NEED random to it. If every load, it waits EXACTLY 500 ms, that doesn't seem very human..try this:
Wait(400+random(200));
This will add any number of ms between one and 200 to the wait of 400. This is more human-like and will be less likely to ban you.

3) Be nice :) 'terminating script….Idiot.' try… 'terminating script…fix the coordinates kind sir! :) Have a nice day!'

AntiBan

This is what you have:
procedure AntiBan;
begin
FindNormalRandoms;
case random(80) of
0: Gametab(20+random(13));
4: RandomMovement;
5: HoverSkill('cooking', false);
6: RandomRClick;
end;
gametab(tab_inv);
FindNormalRandoms;
end;
First of all…good standards :).

1) Why 0, 4, 5, 6? 0, 1, 2, 3 works fine.

2) Why a random of 80? This doesn't fit that well…you generally want your antiban to do something one in every ten times. That means if you have four, a random of 40.

3) Try some more advanced antiban, and add more. The same four antiban will get a bit suspicious after a while. Try looking at this tutorial on antiban: http://www.villavu.com/forum/showthread.php?t=50810

Bank

This is what you have:
procedure bank;
begin
OpenBankNPC
wait(750)
depositall
wait(750)
ItemWithdraw
wait(750)
end;

1) Not much to say…just standards again:
procedure bank;
begin
OpenBankNPC;
wait(750);
depositall;
wait(750);
ItemWithdraw;
wait(750);
end;

2) Add random to your waits…like i said before :) :
procedure bank;
begin
OpenBankNPC;
wait(650+random(300));
depositall;
wait(650+random(300));
ItemWithdraw;
wait(650+random(300));
end;

WalkToRange

This is what you've got:
procedure walktorange;
begin
if(findsymbol(x, y, 'Cook'))then
mouse(x+5, y, 5, 5, true) else
begin
findsymbol(x, y, 'Kebab Shop')
mouse(x-5, y, 5, 5, true)
end;
repeat
wait(100)
until(PixelShift(IntToBox(MMCX-30, MMCY-30, MMCX+30, MMCY+30), 500) < 200)
end;

1) Standards again…nothing new, so I'll just fix it. Look it over:
procedure walktorange;
begin
if(findsymbol(x, y, 'Cook'))then
mouse(x+5, y, 5, 5, true);
else
begin
findsymbol(x, y, 'Kebab Shop');
mouse(x-5, y, 5, 5, true);
end;
repeat
wait(100);
until(PixelShift(IntToBox(MMCX-30, MMCY-30, MMCX+30, MMCY+30), 500) < 200);
end;


2) You need random in your wait, so its not obvious that you're botting :p also you could add random to your x/y coordinates instead of +5/-5, even though the 5, 5 adds random, this really isn't necessary:
procedure walktorange;
begin
if(findsymbol(x, y, 'Cook'))then
mouse(x+random(5), y, 5, 5, true);
else
begin
findsymbol(x, y, 'Kebab Shop');
mouse(x+random(5), y, 5, 5, true);
end;
repeat
wait(100);
until(PixelShift(IntToBox(MMCX-30, MMCY-30, MMCX+30, MMCY+30), 500) < 200);
end;

Cook

This is what you have:
procedure cook;
var I:integer;
begin
repeat
wait(50)
until(findrange(x, y))
TPoint:=itemcoords(1)
mouse(TPoint.x, TPoint.y, 5, 5, True)
mouse(x, y, 5, 5, true)
wait(2500)
mouse(255, 408, 5, 5, false)
wait(500)
mouse(236, 459, 5, 5, True)
for I:=1 to 33 do
begin
wait(2000)
antiban
end;
end;

1) Standards/waits again.
procedure cook;
var
I:integer;
begin
repeat
wait(50+random(50));
until(findrange(x, y));
TPoint:=itemcoords(1);
mouse(TPoint.x, TPoint.y, 5, 5, True);
mouse(x, y, 5, 5, true);
wait(2500);
mouse(255, 408, 5, 5, false);
wait(500);
mouse(236, 459, 5, 5, True);
for I:=1 to 33 do
begin
wait(2000+random(500));
antiban;
end;
end;

2) The wait(50)…so if it doesn't find it, it will just keep waiting? Try something like this:
repeat
wait(50+random(50));
Inc(N);
if N := 25 then
begin
Writeln('Couldn't find the range...logging out');
Logout;
TerminateScript;
end else
Wait(10+random(10));
until(findrange(x, y));
This way, if it can't find the range, it will log out, instead of waiting to be auto-logged. Just add N to the var as an integer.

3) Why do you have to mouse procedures side by side? I have no idea what purpose that will solve..

4) Also whats with the crap load of antiban? The 33 repeat times…waiting 2 seconds and antibanning…why?

WalkToBank

This is what you have:
procedure walktobank;
begin
findsymbol(x, y, 'Bank')
mouse(x, y, 5, 5, true)
repeat
wait(100)
until(PixelShift(IntToBox(MMCX-30, MMCY-30, MMCX+30, MMCY+30), 500) < 200)
end;

1) Well…i can only really pick on the standards and the wait :p :
procedure walktobank;
begin
findsymbol(x, y, 'Bank');
mouse(x, y, 5, 5, true);
repeat
wait(100+random(100));
until(PixelShift(IntToBox(MMCX-30, MMCY-30, MMCX+30, MMCY+30), 500) < 200);
end;

WalkToBank

This is what you have:
begin
SetUpSRL
SetupCooking

DeclarePlayers
LoginPlayer
walktobank
gametab(25)
repeat
bank
antiban
walktorange
cook
walktobank
inc(count)
writeln('count' + inttostr(count))
antiban
until(count=trips)
Logout;
end.

1) Again, really only the standards…:
begin
SetUpSRL;
SetupCooking;
DeclarePlayers;
LoginPlayer;
walktobank;
gametab(25);
repeat
bank;
antiban;
walktorange;
cook;
walktobank;
inc(count);
writeln('count' + inttostr(count));
antiban;
until(count=trips);
Logout;
end.

Tips & Hints

1) Multiplayer is always good in a script. It is fairly easy to put in, first of all in your declare players, add more players :p :
procedure DeclarePlayers;
begin
NumberOfPlayers(4);
CurrentPlayer:= 0;

with Players[0] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;//Use this player?
Pin := '';//Bank pin. Leave blank if you don't have one.
BoxRewards := ['Xp', 'mote'];
end;

with Players[1] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;//Use this player?
Pin := '';//Bank pin. Leave blank if you don't have one.
BoxRewards := ['Xp', 'mote'];
end;

with Players[2] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;//Use this player?
Pin := '';//Bank pin. Leave blank if you don't have one.
BoxRewards := ['Xp', 'mote'];
end;

with Players[3] do
begin
Name := '';
Pass := '';
Nick := '';
Active := True;//Use this player?
Pin := '';//Bank pin. Leave blank if you don't have one.
BoxRewards := ['Xp', 'mote'];
end;
end;

And change your pain loop around, add nextplayer instead of logout, and add an extra repeat-until(allplayersinactive):

begin
SetUpSRL;;
SetupCooking;
DeclarePlayers;
LoginPlayer;
repeat
walktobank;
gametab(25);
repeat
bank;
antiban;
walktorange;
cook;
walktobank;
inc(count);
writeln('count' + inttostr(count))
antiban;
until(count=trips);
NextPlayer;
until(allplayersinactive);
end.

2) The DTM

This will be way better then the user adding in the coordinates themselves. Look at that DTM tutorial i showed you before, then have a look at the following.

You will need a procedure to load the DTM. Call it LoadDTM.

procedure LoadDTM;
case food of
'tuna': tuna := DTMFromString('DTM');
'salmon': salmon := DTMFromString('DTM');
'lobster': lobster := DTMFromString('DTM');
'shark': shark := DTMFromString('DTM');
end;

Obviously you will need to make the DTM's and add more food. You will need to put all the food, in this case tuna, salmon, lobster and shark, in the global variables as integers. Now use LoadDTM; then FindDTM(food); and then after you are done with it, free it with FreeDTM(food); such as:

procedure ItemWithdraw;
begin
FindDTM(food);
if(IsUpText(food))then
begin
mouse(x, y, 5, 5, false);
wait(500+random(200));
mouse(x, y+75, 5, 5, true);
end else
begin
writeln(Food + ' not at (' + inttostr(itemx) + ',' + inttostr(itemy) + '). terminating script....Idiot.');
terminatescript;
end;
end;
Then in your bank procedure:
procedure bank;
begin
OpenBankNPC;
wait(650+random(300));
depositall;
wait(650+random(300));
LoadDTM;
wait(10+random(5));
ItemWithdraw;
wait(10+random(5));
FreeDTM(food);
wait(650+random(300));
end;

Now, in your cook procedure…i honestly have NO clue how that would work. I suggest re-writing the whole procedure, using a repeat of searching for the DTM of the food 28 times, and using a DTM for the range, back and fourth. I'm not going to write it out for you, cause you need to learn some things on your own ;).

tl;dr: READ IT :p

I'm sorry, try to make the script more advance, and in applying for members later on, try to incorporate all the things I made in my list waaay above :). Good luck next time :p.

~bionicle

Awkwardsaw

2009-12-15 17:38:08

my only advice is to follow the advice that has previously been stated. :)

i'm also giving you a yes, because of what n1ke said. :)

Bad Boy JH

2009-12-15 21:14:28

You have all mentioned stuff about needing failsafes, and advanced walking procedures. I assume these are such things as radial walk? but why over complicate, findsymbol has worked fine for me.

Bionicle

2009-12-15 21:39:55

From: Bad Boy JH
You have all mentioned stuff about needing failsafes, and advanced walking procedures. I assume these are such things as radial walk? but why over complicate, findsymbol has worked fine for me.


For member application scripts, it is to show your knowledge in SCAR, not to just make it work.

Naike

2009-12-16 18:06:35

From: Bad Boy JH
You have all mentioned stuff about needing failsafes, and advanced walking procedures. I assume these are such things as radial walk? but why over complicate, findsymbol has worked fine for me.


Basically, You need to over prove your skills..
Even if it does work, make it work, and add that little special touch to it.

Radialwalk is one of our walking methods, there are more advanced ones as well.

Btw, Feel free to add my msn if you need help/questions: [email]n_1_c_e@hotmail.com[/email]

Baked0420

2009-12-18 17:07:19

you use coords to find the food, rather then just make a couple dtm's/bmp's of common foods, you use itemy+75 instead of ChooseOption, which would be better. Your standards are off. You need to clean up the script and make it more efficient and a bit more advanced. Good luck with your app :)


EDIT: looked over real quickly, so I didn't write much, but what I said, and what else I probably would've said if I read it all, has all probably already been said. Just read what everyone's said, and take their advice, if you don't get in, then fix up the script with what everyone's said and try again.