SRL Archive - Archive

itschris917 - SRL Member Application Form


itSchRis917

2007-07-08 11:04:01

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

What is the meaning to life?


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

Programming Knowledge
no other programming languages

Other Communitys
sythe

How Long have You Played Runescape
2 years

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

Well, ever since the summer has begun, i have had a bit more time to focus on the cheating aspect of runescape A.K.A. macroing, before i would just use other people's scripts and not worry about how they work, now i have grown to understand and appreciate the people who create these macros. Scar scripting has become a hobby for me, its something i do for fun, and i think thats what matters, im having fun. I dont mean to sound like a little league baseball coach "We had fun kids! Thats all that matters!" , but it has grown to be something that i enjoy doing, and dont really care if i get any monetary gain, or even the satisfaction of someone using my script, i just like creating them.

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

Well, i was going to post this in the SRL free scripts section, but seeing as how there are still quite a few leechers on SRL-forums, i figured people might just use my script and not give me any feedback, so i decided to post here, and also take a shot at becoming an SRL member. I would love it, if you gave constructive criticism, or even just criticism, i really want to know what i can improve on. Be as harsh as needed.


program ArenaAlcher;
{.include SRL\SRL.scar}


var
Alchs, PeopleDot, lowalch, highalch, MageLevel, GainedLvls:integer;
WaitTime1, RandomWaitTime1:integer;
Version:extended;


CONST //////////////////////////////////////////////
WaitTime = 15; //in MINUTES time to stay logged out if //
//Person is found. Currently set to 15 min. //
//////////////////////////////////////////////

//////////////////////////////////////////////
RandomWaitTime = 2; //In MINUTES random time to stay logged //
//out. //
//////////////////////////////////////////////

ITEMTOALCH = 4345174; //////////////////////////////////////////////
//Color of the item you want to alch //
//////////////////////////////////////////////


procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers); // set arraylength
CurrentPlayer := 0;

Players[0].Name :='lazydude67';//Username //
Players[0].Pass :='';//Password //
Players[0].Nick :='azy';//3 or 4 LOWERCASE letters of username //
Players[0].String1 :='Low';//HIGH OR LOW ALCH //
Players[0].Loc :='Arena';//Player's Location. //
// VALID ARGUMENTS: //
// .ARENA //
// .BANK //
// .OTHER //
Players[0].Integer1 :=1000;//NUMBER OF ALCHS DESIRED //
Players[0].Active :=True;// Is the player Active? //
end;


{*******************************************************************************
function GetXP(Skill: String): Integer;
By: Masquerader
Description: Returns current xp for a skill.
*******************************************************************************}

function GetXp1(skill: string): Integer;
var
textx,texty,x1, y1, x2, y2, LeftCorner, RightCorner,len: Integer;
xp:string;
t:tpoint;
begin
LeftCorner:= DTMFromString('78DA63346164603006622C0026CA684A841A9' +
'03926449883A6E6FFFF0598E60411614E100173406A8289703301' +
'3500C6560919');
RightCorner:= DTMFromString('78DA635CC2C8C0100CC458004C947131916A8' +
'250D5FCFFBF0055CD124C3558CD3121600E488D3101739610A9C6' +
'04BF1A00F7DF0C91');
result:=-1;
GameTab(2);
t:=skilltocoords(skill);
MMouse(t.x, t.y + 12, 5, 5);
repeat
wait(10);
until findcolor(x,y,10551295,554, 205, 743, 465);
wait(300+random(100))
if((FindDtm(LeftCorner,x1,y1,554, 205, 743, 465))and(FindDtm(RightCorner,x2,y2,554, 205, 743, 465))) then
if(istextinareaex(x1,y1,x2,y2,textx,texty,'XP', 0, smallchars,false,true, 0,2,0))then
begin
len:=(x2-textx-22)div 7
xp:=trim(gettextatex(textx+22,texty,5,smallchars,false,false,0,3,0,len,false,tr_digits))
try
Result:= StrToInt(xp);
except
WriteLn('Failed to get XP');
end;
end;
freedtm(leftcorner);
freedtm(rightcorner);
end;

function ClickContinue : boolean;
begin
if FindColor(x,y,16711680,5,345,510,465) and (not FindColor(x,y,0,18,434,25,434)) then //Finds blue NPC text and not the black line seperating text
begin
if FindNPCChatText('level') then GainedLvls := GainedLvls + 1;
while FindNpcChatText('ontinu') do
begin
Mouse(x,y,20,5,true);
Wait(500 + random(500));
result := true;
end;
end;
end;


procedure ProgRep;
begin
Writeln('Magic level is : '+inttostr(GetSkillLevel('Magic')));
Writeln('Next Magic level is in : '+inttostr(NextLevelAt('Magic')-GetXP1('Magic'))+ 'XP.');
Writeln('Total Magic XP gained : '+inttostr(Alchs*65));
Writeln('Number of Alchs performed : '+inttostr(Alchs));
Writeln('Worked for: '+ScriptTime2(1));
Writeln('You have gained a total of '+inttostr(GainedLvls)+ 'magic levels.');

end;


procedure SkillCheck;
var
Tries:Integer;
begin
repeat
Mouse(586,186,2,2,true);
Tries:=Tries+1;
until(GetColor(587,173)=2763390) OR (Tries=3);
MMouse(588,371,4,4);
Wait(3000+random(250));
end;

//Taken from Fawki (i believe, i cant remember)
function FindAllBitmapsIn(TheBmp,startx,starty,endx,endy:integer):array of tpoint;
var tmpbool:boolean;
AL:integer;
curx,cury,tmpx,tmpy,height:integer;
begin
tmpbool:=FindBitmapIn(TheBmp,tmpx,tmpy,startx,starty,endx,endy);
if tmpbool then
begin
curx:=startx;
cury:=starty;
/////auto height finder///////
tmpbool:=FindBitmapIn(TheBmp,tmpx,tmpy,startx,starty,endx,endy);
height:=0;
repeat
height:=height+1;
tmpbool:=FindBitmapIn(TheBmp,tmpx,tmpy,startx,tmpy,endx,tmpy+height);
until tmpbool;
//writeln('height '+inttostr(height));
///////////
repeat
tmpbool:=FindBitmapIn(TheBmp,tmpx,tmpy,curx,cury,endx,cury+height);
if tmpbool then
begin
curx:=tmpx+1;
AL:=getarraylength(result);
setarraylength(result,AL+1);
result[AL].x:=tmpx;
result[AL].y:=tmpy;
end;
if not tmpbool then
begin
curx:=startx;
cury:=cury+1;
end;
until cury=endy+1;
end;
end;


Function CountPeople:Integer; //Taken from Fawki (i believe, i cant remember)
var People:array of Tpoint;
var Count:integer;
begin
People := (FindAllBitmapsIn(PeopleDot, 521,3,761,173));
Count := getarraylength(People);
Result := Count;
writeln('Found '+IntToStr(getarraylength(People))+' People.');
setarraylength(People,0);

end;



procedure ArenaLowAlch;
var
Tries:integer;
begin
If(CountPeople>0)THEN
BEGIN
Repeat
Mouse(634,475,4,4,true);
Tries:=Tries+1;
Until(GetColor(634,475)=2171233)OR (Tries=3);
Mouse(639,376,4,4,true);
Wait(WaitTime1+Random(RandomWaitTime1));
LoginPlayer;
END;
MouseSpeed:=Random(27);
IF(Not(GetColor(734,176)=2829182))THEN
Mouse(731,179,2,2,true);
If(FindBitmapToleranceIn(lowalch,x,y,558,214,736,454,5))then
BEGIN
Tries:=Tries+1;
Mouse(x+5,y+7,2,2,true);//clicks low alch//)
If FindColorSpiralTolerance(x,y,itemtoalch,558,214,736,454,5)then
Mouse(x,y,4,4,true);//clicks item to alch//
Wait(2200+Random(600));
FindNormalRandoms;
ClickContinue;
If(Random(500)< 10) THEN
begin
SkillCheck;
ProgRep;
end;
Alchs:=Alchs+1;
end;

end;

procedure BankHighAlch;
Var
Tries:integer;
begin
MouseSpeed:=Random(27);
IF(Not(GetColor(734,176)=2829182))THEN
Mouse(731,179,2,2,true);
If(FindBitmapToleranceIn(highalch,x,y,558,214,736,454,5))then
BEGIN
Tries:=Tries+1;
Mouse(x+5,y+7,2,2,true);//clicks high alch//
If FindColorSpiralTolerance(x,y,itemtoalch,558,214,736,454,5)then
Mouse(x,y,4,4,true);//clicks item to alch//
Wait(2200+Random(600));
FindNormalRandoms;
ClickContinue;
If(Random(500)< 10) THEN
begin
SkillCheck;
ProgRep;
end;
Alchs:=Alchs+1;
end;
end;


procedure BankLowAlch;
Var
Tries:integer;
begin
MouseSpeed:=Random(27);
IF(Not(GetColor(734,176)=2829182))THEN
Mouse(731,179,2,2,true);
If(FindBitmapToleranceIn(lowalch,x,y,558,214,736,454,5))then
BEGIN
Tries:=Tries+1;
Mouse(x+5,y+7,2,2,true);//clicks low alch//)
If FindColorSpiralTolerance(x,y,itemtoalch,558,214,736,454,5)then
Mouse(x,y,4,4,true);//clicks item to alch//
Wait(2200+Random(600));
FindNormalRandoms;
ClickContinue;
If(Random(500)< 10) THEN
begin
SkillCheck;
ProgRep;
end;
Alchs:=Alchs+1;
end;
end;

procedure ArenaHighAlch;
var
Tries:integer;
begin
If(CountPeople>0)THEN
BEGIN
Repeat
Mouse(634,475,4,4,true);
Tries:=Tries+1;
Until(GetColor(634,475)=2171233)OR (Tries=3);
Mouse(639,376,4,4,true);
Wait(WaitTime1+Random(RandomWaitTime1));
LoginPlayer;
END;
MouseSpeed:=Random(27);
IF(Not(GetColor(734,176)=2829182))THEN
Mouse(731,179,2,2,true);
If(FindBitmapToleranceIn(highalch,x,y,558,214,736,454,5))then
BEGIN
Tries:=Tries+1;
Mouse(x+5,y+7,2,2,true);//clicks high alch//
If FindColorSpiralTolerance(x,y,itemtoalch,558,214,736,454,5)then
Mouse(x,y,4,4,true);//clicks item to alch//
Wait(2200+Random(600));
FindNormalRandoms;
ClickContinue;
If(Random(500)< 10) THEN
begin
SkillCheck;
MageLevel:=GetSkillLevel('Magic');
ProgRep;
end;
Alchs:=Alchs+1;
end;
end;


procedure LoadBMP;
begin
PeopleDot := BitmapFromString(4, 5, 'z78DA3330000137570434C010' +
'8140576710C41471310241B026435723107436054188880102182' +
'28B0000E71C1BCB');
lowalch := BitmapFromString(18, 17, 'z78DAAD95CD1283200C845' +
'F0921D2F6A850DFFF91FA133A93CEB2186B3DEC41C27E93908054' +
'91749D4596B436CD5225EEA8890FAF6F62DAD9E5F127BBD4F39EE' +
'F972DAFA5C412543B2C3F97ACDA2C2CA5B1B062E31A3A5691E5DA' +
'FB935296FBDCFDF1A7F2FA178B6541FCC5CE05A99EAB0F4FB0184' +
'5358532A5C367D758A41318C5AA25EECC3E64ADFFD1B343997309' +
'337A6ECB9643B18A319A63FBF3F6D9A100ABC61AC30D598CFB550' +
'DEB890AF1CAF213D91D45EF5E3317CBD3E8C31A130FF415990E65' +
'79889D6E19DFAEE4F5B144E462670ABE7DC3397D00C5F388CA');
highalch := BitmapFromString(20, 17, 'z78DAB594C10EC3200C43' +
'7F890265DB9142FBFF9FB44ED12423375990D61E7CA8933C4CA16' +
'BC93DC71535E79A36D6D3CBE9298AF5E1F32C9A0E33996512998E' +
'7364FE5EF6C751B6D6620BA2175CA633C55E9B9217893FF22A295' +
'CFB43F421A9994225DECC5577DBF3F5FFC4B5B30FEE2CD79F68F2' +
'5CA9E7793685E34E6944D114DA92C6DBE4E65EB8406416125135B' +
'AFDCFB11527BBFE5D443CEA514243F5BBFE1AE4F6D86378695D9A' +
'EBAFD1D6205DDC6BBBFE1A8D5ECF57DF2EECB55D7F8DCDE55EDB6' +
'5AE87CEBB8DBDA2B68B6BB36BB8F20DF9B3B9C1');
end;








procedure DetermineAlchSpotAndType;
begin
If Players[CurrentPlayer].String1 = 'High' THEN
begin
If Players[CurrentPlayer].Loc = 'Arena' THEN
repeat
ArenaHighAlch;
until(Alchs=Players[CurrentPlayer].Integer1);
end;

If Players[CurrentPlayer].String1='Low' THEN
begin
If Players[CurrentPlayer].Loc = 'Arena' THEN
repeat
ArenaLowAlch;
until(Alchs=Players[CurrentPlayer].Integer1);
end;

If Players[CurrentPlayer].String1='High' THEN
begin
If Players[CurrentPlayer].Loc = 'Bank' THEN
repeat
BankHighAlch;
until(Alchs=Players[CurrentPlayer].Integer1);
end;

If Players[CurrentPlayer].String1='Low' THEN
begin
If Players[CurrentPlayer].Loc = 'Bank' THEN
repeat
BankLowAlch;
until(Alchs=Players[CurrentPlayer].Integer1);
end;
end;

begin
SetupSRL;
DeclarePlayers;
GetAllLevels;
WaitTime1:=WaitTime * 60000;
RandomWaitTime1:=RandomWaitTime * 60000;
Version:=1.2;
DisguiseScar('Arena Alcher '+FloatToStr(Version));
ActivateClient;
Alchs:=0;
LoadBMP;
LoginPlayer;
DetermineAlchSpotAndType;
SkillCheck;
ProgRep;
Logout;
Writeln('Arena Alcher '+Floattostr(Version)+' brought to you by: Chris Scattaglia and Brad Smock.');
Writeln('Thanks for choosing Arena Alcher ' +Floattostr(Version)+ ' for your macroing needs.');
end.

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

RAM

2007-07-08 11:39:04

How much did "Brad" help you with this ?

~RAM

itSchRis917

2007-07-08 11:45:28

Brad only provided the account… And i dont know what Brad you know, but the Brad i know, doesnt know anything about scripting. He's my best friend and lives down the street, he needed an alcher, so i offered to make one for him, and we figured we'd make a project out of it, because some of my brother's friends want to buy it. So it has grown a lot in the past week and a half.

YoHoJo

2007-07-08 14:30:07

Simple. didnt use multiplayer right. And some other reasons too
No Sorry.
Try making something more advanced, try smaller bitmaps, try learning how to use multiplayer.

JAD

2007-07-08 15:31:30

Most of the script is by other people to.. You should check out my tut (links in sig) Learning the things to become a SRL member. That may help you on your way to becoming a bit more advanced and familiar with a lot of things =)

Sorry, but it's a no for now.

3Garrett3

2007-07-08 16:43:18

also, i was wondering why half of your begins and ends and things are in CAPS and half arnt?

Santa_Clause

2007-07-08 20:33:53

I was wondering exactly the same thing. His standards aren't really correct. No from me, sorry.

LordGregGreg

2007-07-08 23:06:39

Your post count is 25…
Please get to know the community better, try to help out some new scripters.
Good luck.

GoF

2007-07-10 05:27:23

The script is ok, but not good enough in my opinion.. I'll say no.

Harry

2007-07-10 21:28:12

No, try harder next time. :D