SRL Archive - Archive

Junkj - SRL Member Application -


Mr. Doctor

2009-08-15 02:53:14

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


Are you affilated in anyway with Jagex LTD?
no

Were you Referred to SRL?



What is your general programming knowledge?
scar


Are you a member of any other communities?
moparisthebest,playstation forums and some others.


Tell us about yourself…
From: Junkj
Im a 13 year old kid whos into scar, i applied 2 times no dice, i tried again and this time i tried more then i did before, i play a lot games, buy my own stuff and play soccer.



Please show us one (or multiple) of your scripts.
//JUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRK
//JUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRK
//JUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRK
//JUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRK
//JUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRKJUNKJ LRK
///////////////////////////////////////////////////////////////////
// JUNK's LRK
//bitmap eating procedure infight to keep fighting if not done
//bitmap hp checker cooked meat eater(sorry)
//failsafes small const, big result
//////////////////////////////V1.00////////////////////////////////


program LRK;
{.include srl/srl.scar}
{.include srl/skill/fighting.scar}

Var
x,y,foodbmp,kill,hpchk :integer;
/////////////////////fill this in/////////////////////////////////////////////
const //
mousecolor= 4013378;// your mouse color //
eat= ''; //do you want to eat?Cooked meat can only be eaten yes or no only //
//cook raw beef from a fire and get Cookes meat //
howmanykills= 10; //how many do you want to kill //
//////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////dont touch the rest
procedure EatFood; // thanks to marpis
begin
foodbmp := BitmapFromString(13, 12, 'beNpzMpoV7zEpyqU/0rnWV' +
'2BAENBqZERdZbhUEmkaJagn3KkxwGZqjCseK7pCHer8rEs9zBal+A' +
'AjAqvi9mB7oDkQZSsz/Zek+cIVQyIOiIDmAJW1BNlV+1hmAwB9+ZV' +
'I');
if(eat=('yes'))then
begin
Writeln('said yes to eat.');
GameTab(tab_Inv);
wait(100+random(20));
if (FindBitmapToleranceIn(foodbmp, x, y, MIX1, MIY1, MIX2, MIY2, 20)) then
begin
Mouse(x, y, 2, 2, true);
writeln('Ate food successfully!');
wait(1500+random(200));
end
else
if not(FindBitmapToleranceIn(foodbmp, x, y, MIX1, MIY1, MIX2, MIY2, 20))then
writeln('Could not find food');
end
else
if (eat=('no'))then
begin
Writeln('Said no to eat');
end;
end;

Procedure hpcheck; //marpis again tought me bitmaps
begin
gametab(2);
hpchk := BitmapFromString(32, 11, 'beNp1kzFOQzEQRB0EHIEmBT0' +
'NFR1NpFD84iMFJVJCASfgBJwCDkNHkXugXCU89KRh5Q/RKJq1d2fX' +
'Y//dehwHsFwuVg8jZBju5JvNClI5u+bUtPCaAKcEDtnu1pYnGfL0/' +
'Mhixw3VF114PDZgJiUUOhtbdEkLuzhGxxe3N0CFZMpRZqu1nxa1EN' +
'gIZEJDmlauD3ZxkdkqR5wE9Pm5aDm1/scTpTr+p//MlgPqD9xGlqe' +
'RFkk0rePqd2FECD2CLQwpb20WxCWd0duaAFx0ZhR8J1blIvg5Gyv7' +
'65NABbcoMXy/PAWv83PBSvXcuyPfa2Ul/jvk18u9OFzNREb9uDgDU' +
'33H1vlcIlz/dSlv5vD5BmqLeqLody3q8/Dz0ajWfh+PW1P9/1pMj6' +
'CNfoD1LsK335Y7N7k=');
if(FindBitmapToleranceIn(foodbmp, x, y, MIX1, MIY1, MIX2, MIY2, 20)) then
begin
writeln('Health is 3, eating food');
EatFood;
end
else
if not(FindBitmapToleranceIn(foodbmp, x, y, MIX1, MIY1, MIX2, MIY2, 20)) then
begin
writeln('Health not 3,skipping eat');
end;
end;

Procedure clickkiller;
begin
hpcheck;
if FindObj(x, y, 'ttack', mousecolor, 35) then
begin
writeln('found the fight');
mouse(x,y,3,3,false);
Chooseoption('ttack');
boredhuman;
randommovement;
sleepandmovemouse(5000);
if(infight)then
begin
repeat
writeln('Not done with fight, repeating until its done');
boredhuman;
randommovement;
sleepandmovemouse(5000);
until not(infight)
if not (infight) then
writeln('done with fight');
kill:=kill+1
end;
end;
end;

procedure proggy;
begin
writeln('Killed aprroximitely ' + inttostr(kill));
writeln('ran for '+ (timerunning));
writeln('Junkjs Lumbridge Rat Killer');
writeln('end of the script');
end;

begin;
setupsrl;
cleardebug;
activateclient;
repeat
clickkiller;
hpcheck;
until(kill>=howmanykills)
if(kill>=howmanykills)then
logout;
proggy;
terminatescript;
end.

Shuttleu

2009-08-15 02:57:09

sorry its a no from me

~shut

Awkwardsaw

2009-08-15 03:01:44

nope, sorry.

you have really bad standards =\

and its really simple too.

you dont free your bitmaps, which is a HUGE no-no. i also didnt see anything to impressive, as in no tpas or dtms.

just a note: findobj is really a horrible object finder, you should look into making your own :)

Baked0420

2009-08-15 03:15:03

-You use your foodbmp to check your health
-You don't use hpchk
-You use a string for a boolean, you have user input yes or no for the eat constant, a boolean would've been better
-Some people may capitalize or lower either yes or no in eat, and you don't have a lowercase(eat)='no' or 'yes' in there, so if they do capitilize, it won't ever match, whether they wanna eat or not.
-No Tpa's or DDTM's or any of those, only a FindObj, could've used a more advanced way of searching
-No multiplayer
-Only goes the kills once, maybe change it to switchplayer after you do the amount of kills, or sleep if only one character, then do it again
-It searched for what to kill… by mousecolor? well maybe its a rat killer you made?
-Clean up your standards next time before applying ;) that'll definitely help some, it's readable, but the spacing is kinda jumpy, and you have no spacing in the main loop.
-I like how it says Gametab(Tab_Inv), at least you aren't putting 4 and are keeping up with the includes and how to be efficient :)

EDIT: That GameTab(Tab_Inv) comes from the procedure marpis showed you with eating, even the wait is the same after it, and then later you use GameTab(2), so I guess you didn't use the constant on your own, next time don't use two and use Tab_Stats, or whatever it was you were aiming for.


-Never free'd bitmaps, FreeBitmap(hpchk); and FreeBitmap(foodbmp); should be in there somewhere, I like to place mine in a procedure called ScriptTerminate; because whenever a script stops that gets called, so you know all your Bitmaps get freed, same with dtm's, but you don't have any

I'm sorry, but I'm going to have to say no, try again soon, you're a decent scripter, but I think you need to get the hang of things a little more. Next time try to add ddtm's, tpa's, remember to free stuff, use better standards, and try to improve on anything mentioned above.


EDIT: ninja'd by awkward, ha we said a lot of the same things.


EDIT2: Just noticed another thing, in your Eatfood; why not just load the bitmap if the person wants to eat, that way if they don't want to, you don't both having to load it, and then later in the script, you could have if(lowercase(eat)='yes') then FreeBitmap(foodbmp);

and I compared your Eatfood; to the one showed to you in your other thread by marpis, I'm glad you decided to make your own bitmap and procedure, and not just use his. Although I see you did leave a thing or two from his in there, there bitmap and everything is new. Just left in Tab_Inv the wait after it, and marpis's lines for searching for food and if it found food. Next time completely remake it, but you did show your knowledge in the procedure, all the stuff I saw that your completely remade was alright.

JAD

2009-08-15 03:15:47

Junkj,

This is a great start. But in order to get SRL members, you are probably going to need to use a different script idea and a little bit more advanced of concepts. Some things to work on though:


When people input strings as constants (like they do for your eat constant) they may use an upper case letter, which would throw your whole eating thing off. if you do:


if(LowerCase(eat) = 'yes')then

This will convert eat into all lower case letters (in case the user used uper case letters). But a Boolean constant would actually be more appropriate here. A Boolean is a true or false data holder, which sounds perfect in this case because the user only has 2 options (true to eat, false to not eat). So you could do


const
eat = true; //true to eat, false not to eat

And then wherever you use it you would do like:


if(eat = true)then

When you look for the food bitmap and move the mouse, you really should look for some uptext in the upper left hand corner just to make sure that it's the food.


MMouse(x,y,2,2);
if(IsUpText('Eat'))then
begin
GetMousePos(x,y);
Mouse(x,y,0,0,true);
end;

Your hpchk bitmap is pretty large. You may want to shrink that.

In clickkiller you find the object but then add randomness to the clicking the mouse. Bad idea, because then it will move the mouse there, check the uptext, and click somewhere else. Do a


GetMousePos(x,y);
Mouse(x,y,0,0,true);

I would add some randomness to your sleepandmovemouse so you do not get banned:


SleepAndMoveMouse(5000+random(1000));


You are on your way. Good luck!

Mr. Doctor

2009-08-15 03:43:06

Thanks jad and baked. Now i can know why i didnt make it for the third time.

edit- i wasnt making fun of you guys because you 2 are the only ones who gave me advice.

Sir R. M8gic1an

2009-08-15 03:54:42

JAD Pretty much said it all. Be sure to read some tutorials, both scripting related and forum ranks related, as you will find out what we expect SRL Members to be able to code. It is a great start, and we all started somewhere, don't give up on it;

~RM

Laimonas171

2009-08-15 04:09:07

I voted No. Nice try I think you should read a little bit more tutorials, then try again. :) Don't be angry if you try you will get in someday. :)

Reasons:


  1. Script is short/simple
  2. Bitmaps never free'd, also they are large.
  3. Example
    [COLOR=#000000][B]Procedure[/B][/COLOR] hpcheck; [COLOR=#008000]//marpis again tought me bitmaps[/COLOR]
    [COLOR=#000000][B]begin[/B][/COLOR]
    gametab([COLOR=#000080]2[/COLOR]);
    hpchk := BitmapFromString([COLOR=#000080]32[/COLOR], [COLOR=#000080]11[/COLOR], [COLOR=#ff00ff]'beNp1kzFOQzEQRB0EHIEmBT0'[/COLOR] +
    [COLOR=#ff00ff]'NFR1NpFD84iMFJVJCASfgBJwCDkNHkXugXCU89KRh5Q/RKJq1d2fX'[/COLOR] +
    [COLOR=#ff00ff]'Y//dehwHsFwuVg8jZBju5JvNClI5u+bUtPCaAKcEDtnu1pYnGfL0/'[/COLOR] +
    [COLOR=#ff00ff]'Mhixw3VF114PDZgJiUUOhtbdEkLuzhGxxe3N0CFZMpRZqu1nxa1EN'[/COLOR] +
    [COLOR=#ff00ff]'gIZEJDmlauD3ZxkdkqR5wE9Pm5aDm1/scTpTr+p//MlgPqD9xGlqe'[/COLOR] +
    [COLOR=#ff00ff]'RFkk0rePqd2FECD2CLQwpb20WxCWd0duaAFx0ZhR8J1blIvg5Gyv7'[/COLOR] +
    [COLOR=#ff00ff]'65NABbcoMXy/PAWv83PBSvXcuyPfa2Ul/jvk18u9OFzNREb9uDgDU'[/COLOR] +
    [COLOR=#ff00ff]'33H1vlcIlz/dSlv5vD5BmqLeqLody3q8/Dz0ajWfh+PW1P9/1pMj6'[/COLOR] +
    [COLOR=#ff00ff]'CNfoD1LsK335Y7N7k='[/COLOR]);
    [COLOR=#000000][B]if[/B][/COLOR](FindBitmapToleranceIn(foodbmp, x, y, MIX1, MIY1, MIX2, MIY2, [COLOR=#000080]20[/COLOR])) [COLOR=#000000][B]then[/B][/COLOR]
    [COLOR=#000000][B]begin[/B][/COLOR]
    writeln([COLOR=#ff00ff]'Health is 3, eating food'[/COLOR]);
    EatFood;
    FreeBitmap(foodbmp); [COLOR=SeaGreen]// Look Here this one release your Bitmap.[/COLOR]
    [COLOR=#000000][B]end[/B][/COLOR]
    [COLOR=#000000][B]else[/B][/COLOR]
    [COLOR=#000000][B]if[/B][/COLOR] [COLOR=#000000][B]not[/B][/COLOR](FindBitmapToleranceIn(foodbmp, x, y, MIX1, MIY1, MIX2, MIY2, [COLOR=#000080]20[/COLOR])) [COLOR=#000000][B]then[/B][/COLOR]
    [COLOR=#000000][B]begin[/B][/COLOR]
    writeln([COLOR=#ff00ff]'Health not 3,skipping eat'[/COLOR]);

    [COLOR=#000000][B]end;[/B][/COLOR]
    [COLOR=#000000][B]end[/B][/COLOR];
  4. Here is 4 Procedures including Proggy.
  5. Here is no DTMs.
  6. RadialWalk. or something.
  7. Your antiban is not human like. always same.
  8. Procedure clickkiller;
    begin
    hpcheck;
    if FindObj(x, y, 'ttack', mousecolor, 35) then
    begin
    writeln('found the fight');
    mouse(x,y,3,3,false);
    Chooseoption('ttack');
    [B] boredhuman;
    randommovement;[/B]
    sleepandmovemouse(5000);
    if(infight)then
    begin
    repeat
    writeln('Not done with fight, repeating until its done');
    [B] boredhuman;
    randommovement;[/B]
    sleepandmovemouse(5000);
    until not(infight)
    if not (infight) then
    writeln('done with fight');
    kill:=kill+1
    end;
    end;
    end;
    You should use something like this fragment from my script.
    procedure AntiBan;
    begin
    case random(53) of // random case choose one of procedures.
    0,1: HoverSkill('Mining', False); //looks at skill if 0 or 1
    2,3: GameTab(1 + Random(7)); // click on game tabs randomly (upper tabs)
    4,5,6: RandomMovement;
    7: HoverSkill('Mining', False);
    8: BoredHuman;
    9: PickUpMouse;
    10,11,12,13: SetRun(True); // it activates Running.
    14:
    end;
    end;
  9. No antirandoms.
  10. Example.
    procedure FindRandoms;
    begin
    FindNormalRandoms;
    end;
    I think you should take another script. Like mining banking/selling, Woodcutting or other skill

Good luck.

~Laimonas171

Baked0420

2009-08-15 04:20:35

No problem, you're doing good though, just read some intermediate and try some adavanced tuts, and see if you can apply them to a script, good luck.

Simtoon

2009-08-15 07:05:22

Yes, don't be sad try again. :)

ZephyrsFury

2009-08-15 07:18:18

From: Awkwardsaw
just a note: findobj is really a horrible object finder, you should look into making your own :)


WHAT?!? FindObj IS NOT a horrible object finder… where did you get that idea?

Awkwardsaw

2009-08-15 07:28:57

From: ZephyrsFury
WHAT?!? FindObj IS NOT a horrible object finder… where did you get that idea?


i didnt mean horrible :p especially for its ease to use, its a great object finder.. its just that usually you can make your own thats more relient and sometimes faster imo

BobboHobbo

2009-08-15 07:34:12

From: Awkwardsaw
i didnt mean horrible :p especially for its ease to use, its a great object finder.. its just that usually you can make your own thats more relient and sometimes faster imo


FindObj is a great for simple static things in my opinion, TPA's are just awesome for everything, but if you do not know how to use them or make them, its hard, as FindObj is rather simple and decent.

OnTopic:

Sorry im voting no, all has been explained above, just keep trying and never give up!

TRiLeZ

2009-08-15 08:29:00

Everyone pretty much said it all.
Its too simple, bad standards, bmps never freed, antiban is always called after the same event and always the same antiban procedures, no dtms, no ddtms, not multiplayer, no tpas, you dont even declare players; if a player logs out, it dosnt log it back in and if the player logs out, the script will be stuck in an endless loop.

What I suggest is you learn DTMs, (D)DTMs, How to make the script multiplayer and TPAs. Go find some tutorials on how to learn them.

Next time you apply, make a more complex script like a tree cutter and banker or something that would take some hard work.

I vote no.

[JS]

2009-08-15 09:57:09

Yeah as said by everyone else on your mistakes. Just keep it up, find another SRL member or even a dev to help you out a bit and check out the IRC. Also like most others said try more tutorials..also give fixing up old scripts a try learning what procedures do certain things. :)

cycrosism

2009-08-15 10:57:10

You call the bitmap in your eating procedure before you check if the user even is eating and you don't free it

hpcheck - you don't need this just use GetSkill/GetSkillInfo or whatever.

In your ClickKiller make things a bit more random


mouse(x, y, 3, 3, Rbool);
Chooseoption('ttack');

You really shouldn't make it repeat an antiban you should make an antiban procedure and make a case random so it doesnt do it all the time.

The proggy is a bit dissapointing.

Script too short.

No from me

Laur€ns

2009-08-15 11:42:17

I voted yes to cheer you up, but I think you should understand that it is not because of your script. I know you have it in you, though. Keep it up.

Griff

2009-08-15 23:01:58

From: Laur€ns;615998
I voted yes to cheer you up, but I think you should understand that it is not because of your script. I know you have it in you, though. Keep it up.


Cause saying that and voting yes probably really cheered him up… :p

Anyways, it's a no from me, because it's not really advanced enough, but I look forward to seeing your application in a month to see how much you've improved!

Coh3n

2009-08-16 01:58:24

I voted no, sorry. Everything has been mentioned already. Considering you are only 13, I'd say you're well on your way to becoming a member. If my 13 year old brother was half as smart as you then he would go places. :p

bugger0001

2009-08-17 01:44:42

I voted no. Reasons are stated in previous posts. If you need some help then I'm willing to help you. Just send me a PM and I'll send you my contacts(MSN, IM, Skype or IRC) ;)

marpis

2009-08-17 02:33:16

From: Awkwardsaw

findobj is really a horrible object finder


From: ZephyrsFury
WHAT?!? FindObj IS NOT a horrible object finder… where did you get that idea?


From: Awkwardsaw
i didnt mean horrible :p especially for its ease to use, its a great object finder.. its just that usually you can make your own thats more relient and sometimes faster imo


Lawl, taste Zephs Fury :p

Sorry, I had to go a bit off the topic, but this was just hilarious

Awkwardsaw

2009-08-17 03:14:51

From: marpis
Lawl, taste Zephs Fury :p

Sorry, I had to go a bit off the topic, but this was just hilarious


i lol'd too :p [/offtopic]

Sir R. M8gic1an

2009-08-26 14:02:59

I am sorry, but it seems like you won't make it this time; However, you are on the right way, don't give up. Keep on reading tuts and scripting, practice makes perfect.

~RM