SRL Archive - Archive

Bonfield - SRL Member Application Form


Bonfield

2008-02-10 18:33:53

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

What is the meaning to life?


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


Programming Knowledge
no

Other Communitys


How Long have You Played Runescape
2 years i think

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

i enjoy the challenge of scripting, here is an autofighter that i released a while ago to the SRLjunior members sectio, i decidedto update it to the latest SRL, i would really like to be able to contribute more to these forums

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

program Autofighter;
{.include SRL/srl.scar}
{.include SRL\SRL\Skill\Fighting.scar}

{this is an autofighter that i made
all u have to do is fill out lines 16-32 and run}



var
m, monsters, Att,Str,Def, x, y, ArrowGround, ArrowInv, ArrowInvent:Integer;
Goal : String;

const
Startplayer = 0;
mColor1 = 10066062; //colour of monster
mColor2 = 9211010; //colour of monster
mColor3 = 9474182; //colour of monster
UseRange = true; // Will you be ranging?
PickArrows = false; // If your ranging, pick up arrows? (Can only pick up iron, steel, and mithril arrows)
ArrowType = 'Mithril'; // Arrow type (Iron, Steel or Mithril))
Monster = 'Giant rat'; //Monsters name
tol = 5;
mode = 2; //1 att 2 str 3 controlled 4 defence
EvenSkills = True; //true or false
Eat = 'No'; //yes/no}
Eathp = 5; //when you want to eat
Foodname = ''; //name
Foodcolor = 1; //colour of food
VerNumber = '5'; //Version Number
MaxTime = 5000; //Maximum wait time!

Procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := StartPlayer;

Players[0].Name :='name';
Players[0].Pass :='pass';
Players[0].Nick :='nick';
Players[0].Active := True;
end;

procedure WriteLns(Text: string);
begin
WriteLn(Text);
Wait(200);
end;

procedure Credits;
begin
WriteLns(' [ B ]');
WriteLns(' [ B o ]');
WriteLns(' [ B o n ]');
WriteLns(' [ B o n f ]');
WriteLns(' [ B o n f i ]');
WriteLns(' [ B o n f i e ]');
WriteLns(' [ B o n f i e l ]');
WriteLns(' [ B o n f i e l d ]');
WriteLns(' [ B o n f i e l d s ]');
WriteLns(' [ B o n f i e l d s A ]');
WriteLns(' [ B o n f i e l d s A u ]');
WriteLns(' [ B o n f i e l d s A u t ]');
WriteLns(' [ B o n f i e l d s A u t o ]');
WriteLns(' [ B o n f i e l d s A u t o F ]');
WriteLns(' [ B o n f i e l d s A u t o F i ]');
WriteLns(' [ B o n f i e l d s A u t o F i g ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t e ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t e r]');
ClearDebug;
WriteLn('tell me how my script goes =] =]') ;
end;

procedure ProgressReport;
Begin
ClearDebug;
Writeln('<|----------------------------------------------|>');
Writeln(' AutoFighter v'+VerNumber+' by Bonfield ');
Writeln(' ');
Writeln('| Worked for ' + TimeRunning + '');
Writeln(' ');
Writeln(' Attacked ' + IntToStr(Monsters));
Writeln('<|----------------------------------------------|>');

end;

procedure LoadDTM;

begin;
ArrowInvent := DTMFromString('78DA63FCCCC8C01002C44820362A184CC3441' +
'96F0259EDA86ADC34A551D55C05B23251D5F03133A0AAF9006495' +
'A3AAE1674053F315C88A4055A3A3A982A20600B75108DB');

end;


procedure EquipArrows;
begin;
GameTab(4);
if FindDTM(ArrowInvent,x, y,558, 210, 738, 446) then MMouse( x, y, 2, 2);
if IsUpText('rro') then
Mouse(x ,y, 1, 1, True);
end;


procedure ArrowColors;
begin;
if (UseRange = true) and (PickArrows = true) then
begin
if (arrowtype = 'Iron') then
begin
arrowground := 3750205;
arrowinv := 4342342;
end;

if (arrowtype = 'Steel') then
begin
arrowground := 9079445;
arrowinv := 9079445;
end;

if (arrowtype = 'Mithril') then
begin
arrowground := 5585209;
arrowinv := 5322294;
end;
end;
end;


procedure Mode2name;
begin
if not LoggedIn then exit;
if(Mode = 1) then Goal := 'Attack';
if(Mode = 2) then Goal := 'Strength';
if(Mode = 3) then Goal := 'Strength';
if(Mode = 4) then Goal := 'Defence';
end;

procedure EatFood;
begin
if (not (LoggedIn)) then exit;
if (eat = 'Yes') then
begin
repeat
if (gethp < Eathp) then
begin
Gametab(4);
if FindColorTolerance(x, y, Foodcolor, MIX1, MIY1, MIX2, MIY2, 4)
then
begin
Mouse(x ,y, 1, 1, False);
if isuptext(foodname) then
begin
Mouse(x, y, 5, 5, true);
end else
begin
WriteLn('could not find food');
end;
end;
end;
until ((gethp > eathp) or (not (LoggedIn)));
end;
end;



procedure FindRandoms;
begin
FindNormalRandoms;
end;

procedure SkillCheck;
begin
if not LoggedIn then exit;
if(Mode = 1) then
begin
HoverSkill('Attack',false);
end;
if(Mode = 2) then
begin
HoverSkill('Strength',false);
end;
if(Mode = 3) then
begin
HoverSkill('Attack',false);
wait(1000 + random(500));
HoverSkill('Strength',false);
end;
if(Mode = 4) then
begin
HoverSkill('Defence',false);
end;
end;

Procedure ArrowPickup;
begin
if (FindColorSpiralTolerance(x, y, arrowground, MSX1, MSY1, MSX2, MSY2, 8)) then
begin
MMouse(x, y, 0, 0);
wait(10 + random(10));
if (IsUpText('ake')) or (IsUpText('arrow')) or (IsUpText(arrowtype)) then
begin
Mouse(x, y, 0, 0, true);
wait(50 + random(10));
FFlag(1);
wait(1000 + random(100));
GameTab(4);
wait(100 + random(50));
if (FindColorSpiralTolerance(x, y, arrowinv, MIX1, MIY1, MIX2, MIY2, 8)) then
begin
Mouse(x, y, 0, 0, true);
end;
end;
end;
end;

function AttackTheMonster2(Color1, Color2, Color3, Tolerance: Integer; MonsterName: string): Boolean; {thanks to mastaraymond for the help}
var
i, x, y: Integer;
begin
if not LoggedIn then Exit;
Flag;
for i := 1 to 5 do
begin
if (FindColorTolerance(x, y, Color1, MSX1, MSY1, MSX2, MSY2, Tolerance + i)) or
(FindColorTolerance(x, y, Color2, MSX1, MSY1, MSX2, MSY2, Tolerance + i)) or
(FindColorTolerance(x, y, Color3, MSX1, MSY1, MSX2, MSY2, Tolerance + i)) then
begin
MMouse(x, y, 3, 3);
Wait(80 + Random(60));
if (IsUpTextMulti('Att','tta','ack' + MonsterName)) then
begin
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
Wait(40 + Random(20));
Flag;
Exit;
end;
end;
end;
end;

Function MakeTBoxOfTPointArrays(Points1,Points2,Points3:TPointArray;var ThePoint:TPoint): Boolean; //thanks to mastaraymond for the help explaining TPA's
Var
I,II,III:integer;
L,LL,LLL:integer;
TempBox:TBox;
begin;
if not LoggedIn then Exit;
L:= Length(Points1);
LL:= Length(Points2);
LLL:= Length(Points3);
if (L = 0) or (LL = 0) or (LLL = 0) then
begin;
Result:= False;
Exit;
end;
For I:= 0 to L-1 do
begin;
TempBox.x1:= (Points1[I].x-10);
TempBox.y1:= (Points1[I].y-10);
TempBox.x2:= (Points1[I].x+10);
TempBox.y2:= (Points1[I].x+10);
For II:= 0 to LL-1 do
if IntInBox(Points2[II].x,Points2[II].y,TempBox) then
For III:= 0 to LLL-1 do

if IntInBox(Points2[II].x,Points2[II].y,TempBox) then
For III:= 0 to LLL do
if IntInBox(Points3[III].x,Points3[III].y,TempBox) then
begin;
Result:=True;
ThePoint.x:=Round(((Points1[I].x + Points2[II].x + Points3[III].x ) div 3));
ThePoint.y:=Round(((Points1[I].y + Points2[II].y + Points3[III].y ) div 3));
exit;
end;
end;
end;

function AttackTheMonster(Color1, Color2, Color3, Tolerance: Integer; MonsterName: string): Boolean; //thanks to mastaraymond for the help explaining TPA's
var
i, x, y: Integer;
PointsColors1,PointsColors2,PointsColors3:TPointArray;
TempPoint:TPoint;
begin;
Flag;
FindColorsSpiralTolerance(MSCX,MSCY,PointsColors1,Color1,MSX1,MSY1,MSX2,MSY2,Tolerance);
FindColorsSpiralTolerance(MSCX,MSCY,PointsColors2,Color2,MSX1,MSY1,MSX2,MSY2,Tolerance);
FindColorsSpiralTolerance(MSCX,MSCY,PointsColors3,Color3,MSX1,MSY1,MSX2,MSY2,Tolerance);
if MakeTBoxOfTPointArrays(PointsColors1,PointsColors2,PointsColors3,TempPoint) then
begin;
if not LoggedIn then Exit;
MMouse(TempPoint.x,TempPoint.y, 3, 3);
Wait(80 + Random(60));
for I:= 0 to 3 do
if (IsUpTextMulti('Att','tta','ack' + MonsterName)) then
begin;
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
Wait(40 + Random(20));
Flag;
Exit;
end;
end;
if AttackTheMonster2(Color1, Color2, Color3, Tolerance,MonsterName) then Result:=true;
end;

procedure Fighter;
var
TempTime:Integer;

begin
if not LoggedIn then Exit;
m:= 0;
if AttackTheMonster(mcolor1, mcolor2, mcolor3, tol, monster) then
begin;
TempTime:=GetSystemTime;
FindNormalRandoms;
Repeat
Wait(50+random(100));
FindNormalRandoms
until ((GetSystemTime - TempTime) >= MaxTime) or (not(LoggedIn));
Monsters := m + 1;
ProgressReport;
end else if not AttackTheMonster(MColor1,MColor2,MColor3,Tol,Monster) then
begin;
Writeln('We cant find the monster sorry! Logging out!');
NextPlayer(false);
end;
end;


procedure Setup;
begin;
Declareplayers;
Credits;
SetupSRL;
ActivateClient;
SRLRandomsReport;
end;


begin
setup;
repeat
if (not (loggedin)) then
begin
loginplayer;
SetRun(true);
setfightmode(mode);
wait(2000 + random(1000));
SetAngle(true);
end;
FindNormalRandoms;
wait(200 + random(200));
fighter;
if PickArrows = True then ArrowPickup;
wait(200 + random(200));
until (false);
ProgressReport;
Logout;
End.

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

Bonfield

2008-02-10 19:22:53

someone voted no

any reason y? i would really like some constructive critisim on this script

MylesMadness

2008-02-10 19:25:53

why?:
procedure FindRandoms;
begin
FindNormalRandoms;
end;
You just wanted to add some length didn't you? You never even used it.
procedure Credits;
begin
WriteLns(' [ B ]');
WriteLns(' [ B o ]');
WriteLns(' [ B o n ]');
WriteLns(' [ B o n f ]');
WriteLns(' [ B o n f i ]');
WriteLns(' [ B o n f i e ]');
WriteLns(' [ B o n f i e l ]');
WriteLns(' [ B o n f i e l d ]');
WriteLns(' [ B o n f i e l d s ]');
WriteLns(' [ B o n f i e l d s A ]');
WriteLns(' [ B o n f i e l d s A u ]');
WriteLns(' [ B o n f i e l d s A u t ]');
WriteLns(' [ B o n f i e l d s A u t o ]');
WriteLns(' [ B o n f i e l d s A u t o F ]');
WriteLns(' [ B o n f i e l d s A u t o F i ]');
WriteLns(' [ B o n f i e l d s A u t o F i g ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t e ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t e r]');
ClearDebug;
WriteLn('tell me how my script goes =] =]') ;
end;
your sig wouldn't even apear because of the no wait between them and the clear debug
              begin
WriteLn('could not find food');
end;
stuff like that where theirs only one line after the else you dont need a begin end;. Sorry its a no. Way to simple

Edit:I was the first no

Bonfield

2008-02-10 19:35:16

From: Mylesmadness
why?:
procedure FindRandoms;
begin
FindNormalRandoms;
end;
You just wanted to add some length didn't you? You never even used it.

dont i call it in my main loop? i did anyways i edited it alot last night
EDIT: your right i dont call on it at all i use findnormalrandoms through the script

procedure Credits;
begin
WriteLns(' [ B ]');
WriteLns(' [ B o ]');
WriteLns(' [ B o n ]');
WriteLns(' [ B o n f ]');
WriteLns(' [ B o n f i ]');
WriteLns(' [ B o n f i e ]');
WriteLns(' [ B o n f i e l ]');
WriteLns(' [ B o n f i e l d ]');
WriteLns(' [ B o n f i e l d s ]');
WriteLns(' [ B o n f i e l d s A ]');
WriteLns(' [ B o n f i e l d s A u ]');
WriteLns(' [ B o n f i e l d s A u t ]');
WriteLns(' [ B o n f i e l d s A u t o ]');
WriteLns(' [ B o n f i e l d s A u t o F ]');
WriteLns(' [ B o n f i e l d s A u t o F i ]');
WriteLns(' [ B o n f i e l d s A u t o F i g ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t e ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t e r]');
ClearDebug;
WriteLn('tell me how my script goes =] =]') ;
end;
your sig wouldn't even apear because of the no wait between them and the clear debug
i just use that as an intro its not meant to stay there for long
              begin
WriteLn('could not find food');
end;
stuff like that where theirs only one line after the else you dont need a begin end;. Sorry its a no. Way to simple

Edit:I was the first no


i never knew that il fix it on my script, does doing it this way effect anything? thanks for letting me know what you think about it

footballjds

2008-02-10 20:00:00

and i was the second.

Bonfield

2008-02-10 20:02:44

From: footballjds
and i was the second no, i don't believe srl members should be good, they should be "KNOCKING SOCKS OFF AMAZING".



thanks any ideas to make the script better?

Widget

2008-02-10 20:10:29

From: Mylesmadness

procedure Credits;
begin
WriteLns(' [ B ]');
WriteLns(' [ B o ]');
WriteLns(' [ B o n ]');
WriteLns(' [ B o n f ]');
WriteLns(' [ B o n f i ]');
WriteLns(' [ B o n f i e ]');
WriteLns(' [ B o n f i e l ]');
WriteLns(' [ B o n f i e l d ]');
WriteLns(' [ B o n f i e l d s ]');
WriteLns(' [ B o n f i e l d s A ]');
WriteLns(' [ B o n f i e l d s A u ]');
WriteLns(' [ B o n f i e l d s A u t ]');
WriteLns(' [ B o n f i e l d s A u t o ]');
WriteLns(' [ B o n f i e l d s A u t o F ]');
WriteLns(' [ B o n f i e l d s A u t o F i ]');
WriteLns(' [ B o n f i e l d s A u t o F i g ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t e ]');
WriteLns(' [ B o n f i e l d s A u t o F i g h t e r]');
ClearDebug;
WriteLn('tell me how my script goes =] =]') ;
end;
your sig wouldn't even apear because of the no wait between them and the clear debug


procedure WriteLns(Text: string);
begin
WriteLn(Text);
Wait(200);
end;
You could try actually reading his script :rolleyes:.

I'm withholding my vote for now.

gerauchert

2008-02-10 21:11:29

Looks sloppy in my opinion. You have a decent knowledge of scripting, but I dont think you are quite there yet, I vote no.

Things to work on:

- Standards (mostly right, but get sloppy at times)
- Cleaning up code (unnecessary begins, ends, and procedures)
- Failsafes (I really dont see many)
- Complexity to the script (add stuff that isnt so "average" use your brain to make some cool additions to your script ;) )

Good luck and apply with a kick ass script in one month :)

MylesMadness

2008-02-10 21:14:12

@Widget!,
Right…I read(I missed that part) the code and see if it compiles. I never really run it.

footballjds

2008-02-10 21:29:14

like others say, it don't got enough umph to it :(

Bonfield

2008-02-10 21:33:02

thanks for all the feedback il guess that there is a little bit to work on, il add more failsafes and some new procedures

EDIT: it does compile

Raskolnikov

2008-02-10 23:06:42

Hmm,

Your a very nice person to work with. I think you aren't incompetent or any of the sort. The standards need to be worked on though… I'm holding my vote but leaning towards a no…

Cut em2 it

Sir R. M8gic1an

2008-02-11 03:25:38

no, why? just yesturday i saw the same procedures and functions in another app. one sec.

Copy Busted- not >.>



edit: from pwnzr's app:
he cleaned up some of the crap, but compare these procedures:
WriteLns, EatFood, ProgressReport, AttackTheMonster, AttackTheMonster2, MakeTBoxOfTPointArrays, Main-Loop!

program MyAutoFighter;
{.include SRL/SRL.scar}


var
m, monsters, Att,Str,Def:Integer;

Const
Color1 = 2577265; // color of monster to attack
Color2 = 15198954; // color of monster to attack
Color3 = 1847094; // color of monster to attack
NumberOfUsers = 1; // how many characters are you going to use with this script
StartPlayer = 0; // number of start player in DeclarePlayers
FoodColor = 000000; // color of food
HpToEat = 10; // when to eat



///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
VersionNumber = 1.0;
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Procedure DeclarePlayers;


Begin
HowManyPlayers:= NumberOfUsers;
NumberOfPlayers( HowManyPlayers );
CurrentPlayer := StartPlayer;


Players[0].Name :='UserName';
Players[0].Pass :='Password';
Players[0].Nick :='3-4 Letters Of Youre Username';
Players[0].integers[3] := 40; // Attack level to Train to
Players[0].integers[4] := 99; // Strength level to Train to
Players[0].integers[5] := 10; // Defence level to Train to
Players[0].Active:=True;


Players[1].Name :='UserName';
Players[1].Pass :='Password';
Players[1].Nick :='3-4 Letters Of Youre Username';
Players[1].integers[3] := 40; // Attack level to Train to
Players[1].integers[4] := 99; // Strength level to Train to
Players[1].integers[5] := 10; // Defence level to Train to
Players[1].Active:=True;

end;


Procedure FindEnemy;
var x, y: Integer;
Begin
If
(FindColorSpiral(x,y,Color1,2,2,418,304)) Or
(FindColorSpiral(x,y,Color2,2,2,418,304)) Or
(FindColorSpiral(x,y,Color3,2,2,418,304)) Then
Begin
Writeln('Found Enemy Now Starting Script')
End Else
Writeln('We cant find the monster sorry! Logging out!');
end;

procedure AttackMode;
var
i,att,str,def:integer;
begin
if not(loggedIn) then exit;
if (players[currentplayer].skill='') then
begin
gametab(2);
wait(200);
att:=getskilllevel('attack');
str:=getskilllevel('strength');
def:=getskilllevel('defence');
if dbug then writeln(inttostr(att)+' attack');
if dbug then writeln(inttostr(str)+' strength');
if dbug then writeln(inttostr(def)+' defence');
marktime(a);
if (lowercasE(players[currentplayer].skill)='attack') then
if (att<players[currentplayer].integers[3]) then exit else players[currentplayer].skill:='';
if (lowercasE(players[currentplayer].skill)='strength') then
if (str<players[currentplayer].integers[4]) then exit else players[currentplayer].skill:='';
if (lowercasE(players[currentplayer].skill)='defence') then
if (def<players[currentplayer].integers[5]) then exit else players[currentplayer].skill:='';
for i:=0 to 0 do
begin
if (players[currentplayer].skill='') then
begin
if (att<players[currentplayer].integers[3]) then
if not(players[currentplayer].integers[3]=99) then
begin
players[currentplayer].skill:='attack';
break;
end;
if (str<players[currentplayer].integers[4]) then
if not(players[currentplayer].integers[4]=99) then
begin
players[currentplayer].skill:='strength';
break;
end;
if (def<players[currentplayer].integers[5]) then
if not(players[currentplayer].integers[5]=99) then
begin
players[currentplayer].skill:='defence';
break;
end;
if (players[currentplayer].integers[3]=99) then players[currentplayer].skill:='attack';
if (players[currentplayer].integers[4]=99) then players[currentplayer].skill:='strength';
if (players[currentplayer].integers[5]=99) then players[currentplayer].skill:='defence';
end;
end;
gametab(1);
case lowercase(players[currentplayer].skill) of
'attack': setfightmode(1);
'strength': setfightmode(2);
'defence','defense': setfightmode(4);
end;
end;
end;


function AttackTheMonster2(Color1, Color2, Color3, Tolerance: Integer; MonsterName: string): Boolean;
var
i, x, y: Integer;
begin
if not LoggedIn then Exit;
Flag;
for i := 1 to 5 do
begin
if (FindColorTolerance(x, y, Color1, MSX1, MSY1, MSX2, MSY2, Tolerance + i)) or
(FindColorTolerance(x, y, Color2, MSX1, MSY1, MSX2, MSY2, Tolerance + i)) or
(FindColorTolerance(x, y, Color3, MSX1, MSY1, MSX2, MSY2, Tolerance + i)) then
begin
MMouse(x, y, 3, 3);
Wait(80 + Random(60));
if (IsUpText('Attack ' + MonsterName)) then
begin
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
Wait(40 + Random(20));
Flag;
Exit;
end;
end;
end;
end;

Function MakeTBoxOfTPointArrays(Points1,Points2,Points3:TPointArray;var ThePoint:TPoint): Boolean;
Var
I,II,III:integer;
L,LL,LLL:integer;
TempBox:TBox;
begin;
if not LoggedIn then Exit;
L:= Length(Points1);
LL:= Length(Points2);
LLL:= Length(Points3);
if (L = 0) or (LL = 0) or (LLL = 0) then
begin;
Result:= False;
Exit;
end;
For I:= 0 to L-1 do
begin;
TempBox.x1:= (Points1[i].x-10);
TempBox.y1:= (Points1[i].y-10);
TempBox.x2:= (Points1[i].x+10);
TempBox.y2:= (Points1[i].x+10);
For II:= 0 to LL-1 do
if IntInBox(Points2[II].x,Points2[II].y,TempBox) then
For III:= 0 to LLL-1 do

if IntInBox(Points2[II].x,Points2[II].y,TempBox) then
For III:= 0 to LLL do
if IntInBox(Points3[III].x,Points3[III].y,TempBox) then
begin;
Result:=True;
ThePoint.x:=Round(((Points1[i].x + Points2[II].x + Points3[III].x ) div 3));
ThePoint.y:=Round(((Points1[i].y + Points2[II].y + Points3[III].y ) div 3));
exit;
end;
end;
end;

function AttackTheMonster(Color1, Color2, Color3, Tolerance: Integer; MonsterName: string): Boolean;
var
i, x, y: Integer;
PointsColors1,PointsColors2,PointsColors3:TPointArray;
TempPoint:TPoint;
begin;
Flag;
FindColorsSpiralTolerance(MSCX,MSCY,PointsColors1,Color1,MSX1,MSY1,MSX2,MSY2,Tolerance);
FindColorsSpiralTolerance(MSCX,MSCY,PointsColors2,Color2,MSX1,MSY1,MSX2,MSY2,Tolerance);
FindColorsSpiralTolerance(MSCX,MSCY,PointsColors3,Color3,MSX1,MSY1,MSX2,MSY2,Tolerance);
if MakeTBoxOfTPointArrays(PointsColors1,PointsColors2,PointsColors3,TempPoint) then
begin;
if not LoggedIn then Exit;
MMouse(TempPoint.x,TempPoint.y, 3, 3);
Wait(80 + Random(60));
for I:= 0 to 3 do
if (IsUpText('Attack ' + MonsterName)) then
begin;
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
Wait(40 + Random(20));
Flag;
Exit;
end;
end;
if AttackTheMonster2(Color1, Color2, Color3, Tolerance,MonsterName) then Result:=true;
end;

procedure Fighter;
var
TempTime:Integer;

begin
if not LoggedIn then Exit;
m:= 0;
if AttackTheMonster(mcolor1, mcolor2, mcolor3, tol, monster) then
begin;
TempTime:=GetSystemTime;
FindNormalRandoms;
Repeat
FindFastRandoms;
Wait(50+random(100));
FindNormalRandoms
until not InFight or ((GetSystemTime - TempTime) >= MaxTime) or (not(LoggedIn));
Monsters := m + 1;
ProgressReport;
end else if not FindMonster(MColor1,MColor2,MColor3,Tol,Monster) then
begin;
Writeln('We cant find the monster sorry! Logging out!');
NextPlayer(false);
end;
end;

procedure EatFood;
begin
if not LoggedIn then exit;
repeat
if(eat = 'Yes')then
begin
if(gethp < Eathp) then
begin
Gametab(4)
findobjarea(x,y,foodname,MIX1,MIY1,MIX2,MIY2,foodcolor,5,true);
Mouse(x,y,5,5,true);
isuptext(foodname);
end;
end;
until (gethp > eathp) or(not(LoggedIn));
end;


procedure DoAntiRandoms;
begin
FindTalk;
FindNormalRandoms;
if (FindFight = true) then
begin
RunAwayDirection('N');
Wait(10000 + random(2000));
RunBack;
end;
end;


function DoAntiBan: Boolean;
begin
AntiBan;
wait(50 + random(100));
BoredEvery(3 + random(3));
wait(100 + random(100))
RotateEvery(7 + random(4));
wait(750 + random(250));
LeaveScreenEvery(5 + random(7));
wait(500 + random(150));
end;

procedure ProgressReport;
Begin
ClearDebug;
Writeln('<|----------------------------------------------|>');
Writeln(' AutoFighter v'+VersionNumber+' by Pwnzr ');
Writeln(('Worked for ' + TimeRunning + '');
Writeln(' Attacked ' + IntToStr(Monsters));
Writeln('<|----------------------------------------------|>');
end;

procedure WriteLns(Text: string);
begin
WriteLn(Text);
Wait(200);
end;

procedure Intro;
begin
WriteLns('`||''|. ');
WriteLns(' || || ... ... ... .. ... ...... ... .. ');
WriteLns(' ||...|` || || | || || ` .|` ||` '' ');
WriteLns(' || ||| ||| || || .|. || ');
WriteLns('.||. | | .||. ||. ||....| .||. ');
ClearDebug;
WriteLn('tell me how my script goes =] =]') ;
end;


Procedure Setup;
begin;
Declareplayers;
Credits;
SetupSRL;
ActivateClient;
SRLRandomsReport;
end;


begin
setup;
repeat
if (not (loggedin)) then
begin
loginplayer;
SetRun(true);
AttackMode;
wait(2000 + random(1000));
highestangle;
end;
FindNormalRandoms;
wait(200 + random(200));
fighter;
wait(200 + random(200));
until (false);
ProgressReport;
Logout;
End.


Gu3st...

2008-02-11 04:09:58

YEA! I was sure i had seen that somewhere else!

Edit: I vote no :p

Edit2:

until (false);
ProgressReport;
Logout;

^wtf?^

ZephyrsFury

2008-02-11 04:43:19

Before you guys go ahead and assume that he copyied Pwnzr's application look at this: http://www.srl-forums.com/forum/autofighter-t15142.html?t=15142.
This script was released last July so I think its say to assume that Pwnzr copied his script from Bonfield. Besides how on earth can Bonfield copy pwnzr anyway…

Even so, I'm gonna vote no because the script is too simple. It doesn't compile. The multiplayer doesn't work properly. AntiBan is out dated and too simple. Theres hardly and failsafes and you've got procedures and functions in there that don't do anything.

Sorry,
Zeph

BobboHobbo

2008-02-11 05:16:48

Zeph owns :o

Sir R. M8gic1an

2008-02-11 05:18:13

From: ZephyrsFury
Before you guys go ahead and assume that he copyied Pwnzr's application look at this: http://www.srl-forums.com/forum/autofighter-t15142.html?t=15142.
This script was released last July so I think its say to assume that Pwnzr copied his script from Bonfield. Besides how on earth can Bonfield copy pwnzr anyway…

Even so, I'm gonna vote no because the script is too simple. It doesn't compile. The multiplayer doesn't work properly. AntiBan is out dated and too simple. Theres hardly and failsafes and you've got procedures and functions in there that don't do anything.

Sorry,
Zeph


ups, my bad, i just assumed they both would've copied from the same place.

~RM

Negaal

2008-02-11 06:13:51

…Some one verify him? compare ips with pwnzr…

Yea, I remember that procedure too:p

Agree with Zeph aswell, no from me. GL next time

Sir R. M8gic1an

2008-02-11 06:37:35

as an apology:
here's a faster way of doing your signature:

program Signature;
var
i, t:integer;
s, RMs:string;
begin
s:= '[ B o n f i e l d s A u t o F i g h t e r]';
for i:= 1 to High(s) do
begin
RMs:='';
for t:= 1 to i do
RMs:= RMs + s[t];
writeln(RMs)
wait(200);
end;
end.

~RM

Wizzup?

2008-02-11 06:39:47

From: Rasta Magician
as an apology:
here's a faster way of doing your signature:

program Signature;
var
i, t:integer;
s, RMs:string;
begin
s:= '[ B o n f i e l d s A u t o F i g h t e r]';
for i:= 1 to High(s) do
begin
RMs:='';
for t:= 1 to i do
RMs:= RMs + s[t];
writeln(RMs)
wait(200);
end;
end.

~RM

Or use setlength:

program Signature;
var
i, t:integer;
s, r:string;
begin
s:='[ BonfieldsAutoFighter ]';
for i:= low(s) to High(s) do
begin
r:=s;
SetLength(r, i);
writeln(r);
wait(200);
end;
end.

Sir R. M8gic1an

2008-02-11 06:48:46

From: Wizzup?
Remove the spaces and it will work like his does. ;)


right, and i also forgot he had ']' at the end of each line


program Signature;
var
i, t:integer;
s, RMs:string;
begin
s:= 'BonfieldsAutoFighter';
for i:= 1 to High(s) do
begin
RMs:=' [ ';
for t:= 1 to i do
RMs:= RMs + s[t] +' ';
RMs:= RMs + ']';
writeln(RMs)
wait(200);
end;
end.


~RM

Bonfield

2008-02-11 07:34:44

From: Rasta Magician
no, why? just yesturday i saw the same procedures and functions in another app. one sec.

Copy Busted- not >.>



edit: from pwnzr's app:
he cleaned up some of the crap, but compare these procedures:
WriteLns, EatFood, ProgressReport, AttackTheMonster, AttackTheMonster2, MakeTBoxOfTPointArrays, Main-Loop!

program MyAutoFighter;
{.include SRL/SRL.scar}


var
m, monsters, Att,Str,Def:Integer;

Const
Color1 = 2577265; // color of monster to attack
Color2 = 15198954; // color of monster to attack
Color3 = 1847094; // color of monster to attack
NumberOfUsers = 1; // how many characters are you going to use with this script
StartPlayer = 0; // number of start player in DeclarePlayers
FoodColor = 000000; // color of food
HpToEat = 10; // when to eat



///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
VersionNumber = 1.0;
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Procedure DeclarePlayers;


Begin
HowManyPlayers:= NumberOfUsers;
NumberOfPlayers( HowManyPlayers );
CurrentPlayer := StartPlayer;


Players[0].Name :='UserName';
Players[0].Pass :='Password';
Players[0].Nick :='3-4 Letters Of Youre Username';
Players[0].integers[3] := 40; // Attack level to Train to
Players[0].integers[4] := 99; // Strength level to Train to
Players[0].integers[5] := 10; // Defence level to Train to
Players[0].Active:=True;


Players[1].Name :='UserName';
Players[1].Pass :='Password';
Players[1].Nick :='3-4 Letters Of Youre Username';
Players[1].integers[3] := 40; // Attack level to Train to
Players[1].integers[4] := 99; // Strength level to Train to
Players[1].integers[5] := 10; // Defence level to Train to
Players[1].Active:=True;

end;


Procedure FindEnemy;
var x, y: Integer;
Begin
If
(FindColorSpiral(x,y,Color1,2,2,418,304)) Or
(FindColorSpiral(x,y,Color2,2,2,418,304)) Or
(FindColorSpiral(x,y,Color3,2,2,418,304)) Then
Begin
Writeln('Found Enemy Now Starting Script')
End Else
Writeln('We cant find the monster sorry! Logging out!');
end;

procedure AttackMode;
var
i,att,str,def:integer;
begin
if not(loggedIn) then exit;
if (players[currentplayer].skill='') then
begin
gametab(2);
wait(200);
att:=getskilllevel('attack');
str:=getskilllevel('strength');
def:=getskilllevel('defence');
if dbug then writeln(inttostr(att)+' attack');
if dbug then writeln(inttostr(str)+' strength');
if dbug then writeln(inttostr(def)+' defence');
marktime(a);
if (lowercasE(players[currentplayer].skill)='attack') then
if (att<players[currentplayer].integers[3]) then exit else players[currentplayer].skill:='';
if (lowercasE(players[currentplayer].skill)='strength') then
if (str<players[currentplayer].integers[4]) then exit else players[currentplayer].skill:='';
if (lowercasE(players[currentplayer].skill)='defence') then
if (def<players[currentplayer].integers[5]) then exit else players[currentplayer].skill:='';
for i:=0 to 0 do
begin
if (players[currentplayer].skill='') then
begin
if (att<players[currentplayer].integers[3]) then
if not(players[currentplayer].integers[3]=99) then
begin
players[currentplayer].skill:='attack';
break;
end;
if (str<players[currentplayer].integers[4]) then
if not(players[currentplayer].integers[4]=99) then
begin
players[currentplayer].skill:='strength';
break;
end;
if (def<players[currentplayer].integers[5]) then
if not(players[currentplayer].integers[5]=99) then
begin
players[currentplayer].skill:='defence';
break;
end;
if (players[currentplayer].integers[3]=99) then players[currentplayer].skill:='attack';
if (players[currentplayer].integers[4]=99) then players[currentplayer].skill:='strength';
if (players[currentplayer].integers[5]=99) then players[currentplayer].skill:='defence';
end;
end;
gametab(1);
case lowercase(players[currentplayer].skill) of
'attack': setfightmode(1);
'strength': setfightmode(2);
'defence','defense': setfightmode(4);
end;
end;
end;


function AttackTheMonster2(Color1, Color2, Color3, Tolerance: Integer; MonsterName: string): Boolean;
var
i, x, y: Integer;
begin
if not LoggedIn then Exit;
Flag;
for i := 1 to 5 do
begin
if (FindColorTolerance(x, y, Color1, MSX1, MSY1, MSX2, MSY2, Tolerance + i)) or
(FindColorTolerance(x, y, Color2, MSX1, MSY1, MSX2, MSY2, Tolerance + i)) or
(FindColorTolerance(x, y, Color3, MSX1, MSY1, MSX2, MSY2, Tolerance + i)) then
begin
MMouse(x, y, 3, 3);
Wait(80 + Random(60));
if (IsUpText('Attack ' + MonsterName)) then
begin
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
Wait(40 + Random(20));
Flag;
Exit;
end;
end;
end;
end;

Function MakeTBoxOfTPointArrays(Points1,Points2,Points3:TPointArray;var ThePoint:TPoint): Boolean;
Var
I,II,III:integer;
L,LL,LLL:integer;
TempBox:TBox;
begin;
if not LoggedIn then Exit;
L:= Length(Points1);
LL:= Length(Points2);
LLL:= Length(Points3);
if (L = 0) or (LL = 0) or (LLL = 0) then
begin;
Result:= False;
Exit;
end;
For I:= 0 to L-1 do
begin;
TempBox.x1:= (Points1[i].x-10);
TempBox.y1:= (Points1[i].y-10);
TempBox.x2:= (Points1[i].x+10);
TempBox.y2:= (Points1[i].x+10);
For II:= 0 to LL-1 do
if IntInBox(Points2[II].x,Points2[II].y,TempBox) then
For III:= 0 to LLL-1 do

if IntInBox(Points2[II].x,Points2[II].y,TempBox) then
For III:= 0 to LLL do
if IntInBox(Points3[III].x,Points3[III].y,TempBox) then
begin;
Result:=True;
ThePoint.x:=Round(((Points1[i].x + Points2[II].x + Points3[III].x ) div 3));
ThePoint.y:=Round(((Points1[i].y + Points2[II].y + Points3[III].y ) div 3));
exit;
end;
end;
end;

function AttackTheMonster(Color1, Color2, Color3, Tolerance: Integer; MonsterName: string): Boolean;
var
i, x, y: Integer;
PointsColors1,PointsColors2,PointsColors3:TPointArray;
TempPoint:TPoint;
begin;
Flag;
FindColorsSpiralTolerance(MSCX,MSCY,PointsColors1,Color1,MSX1,MSY1,MSX2,MSY2,Tolerance);
FindColorsSpiralTolerance(MSCX,MSCY,PointsColors2,Color2,MSX1,MSY1,MSX2,MSY2,Tolerance);
FindColorsSpiralTolerance(MSCX,MSCY,PointsColors3,Color3,MSX1,MSY1,MSX2,MSY2,Tolerance);
if MakeTBoxOfTPointArrays(PointsColors1,PointsColors2,PointsColors3,TempPoint) then
begin;
if not LoggedIn then Exit;
MMouse(TempPoint.x,TempPoint.y, 3, 3);
Wait(80 + Random(60));
for I:= 0 to 3 do
if (IsUpText('Attack ' + MonsterName)) then
begin;
Result := True;
GetMousePos(x, y);
Mouse(x, y, 0, 0, True);
Wait(40 + Random(20));
Flag;
Exit;
end;
end;
if AttackTheMonster2(Color1, Color2, Color3, Tolerance,MonsterName) then Result:=true;
end;

procedure Fighter;
var
TempTime:Integer;

begin
if not LoggedIn then Exit;
m:= 0;
if AttackTheMonster(mcolor1, mcolor2, mcolor3, tol, monster) then
begin;
TempTime:=GetSystemTime;
FindNormalRandoms;
Repeat
FindFastRandoms;
Wait(50+random(100));
FindNormalRandoms
until not InFight or ((GetSystemTime - TempTime) >= MaxTime) or (not(LoggedIn));
Monsters := m + 1;
ProgressReport;
end else if not FindMonster(MColor1,MColor2,MColor3,Tol,Monster) then
begin;
Writeln('We cant find the monster sorry! Logging out!');
NextPlayer(false);
end;
end;

procedure EatFood;
begin
if not LoggedIn then exit;
repeat
if(eat = 'Yes')then
begin
if(gethp < Eathp) then
begin
Gametab(4)
findobjarea(x,y,foodname,MIX1,MIY1,MIX2,MIY2,foodcolor,5,true);
Mouse(x,y,5,5,true);
isuptext(foodname);
end;
end;
until (gethp > eathp) or(not(LoggedIn));
end;


procedure DoAntiRandoms;
begin
FindTalk;
FindNormalRandoms;
if (FindFight = true) then
begin
RunAwayDirection('N');
Wait(10000 + random(2000));
RunBack;
end;
end;


function DoAntiBan: Boolean;
begin
AntiBan;
wait(50 + random(100));
BoredEvery(3 + random(3));
wait(100 + random(100))
RotateEvery(7 + random(4));
wait(750 + random(250));
LeaveScreenEvery(5 + random(7));
wait(500 + random(150));
end;

procedure ProgressReport;
Begin
ClearDebug;
Writeln('<|----------------------------------------------|>');
Writeln(' AutoFighter v'+VersionNumber+' by Pwnzr ');
Writeln(('Worked for ' + TimeRunning + '');
Writeln(' Attacked ' + IntToStr(Monsters));
Writeln('<|----------------------------------------------|>');
end;

procedure WriteLns(Text: string);
begin
WriteLn(Text);
Wait(200);
end;

procedure Intro;
begin
WriteLns('`||''|. ');
WriteLns(' || || ... ... ... .. ... ...... ... .. ');
WriteLns(' ||...|` || || | || || ` .|` ||` '' ');
WriteLns(' || ||| ||| || || .|. || ');
WriteLns('.||. | | .||. ||. ||....| .||. ');
ClearDebug;
WriteLn('tell me how my script goes =] =]') ;
end;


Procedure Setup;
begin;
Declareplayers;
Credits;
SetupSRL;
ActivateClient;
SRLRandomsReport;
end;


begin
setup;
repeat
if (not (loggedin)) then
begin
loginplayer;
SetRun(true);
AttackMode;
wait(2000 + random(1000));
highestangle;
end;
FindNormalRandoms;
wait(200 + random(200));
fighter;
wait(200 + random(200));
until (false);
ProgressReport;
Logout;
End.



hahaha someone copyied my script im guessing thers no way they got accecpted

From: ZephyrsFury
Before you guys go ahead and assume that he copyied Pwnzr's application look at this: http://www.srl-forums.com/forum/autofighter-t15142.html?t=15142.
This script was released last July so I think its say to assume that Pwnzr copied his script from Bonfield. Besides how on earth can Bonfield copy pwnzr anyway…

Even so, I'm gonna vote no because the script is too simple. It doesn't compile. The multiplayer doesn't work properly. AntiBan is out dated and too simple. Theres hardly and failsafes and you've got procedures and functions in there that don't do anything.

Sorry,
Zeph


thanks for clearing that up :)

yeah i need to fix alot i just had a quick look through and made it compile, i really need to update antiban and all that

its pretty strange that it doesnt compile for u, theres a bug in the MakeTBoxOfTPointArrays that causes an out of range error that i have to fix butt it still compiles and runs


From: Wizzup?
Or use setlength:

program Signature;
var
i, t:integer;
s, r:string;
begin
s:='[ BonfieldsAutoFighter ]';
for i:= low(s) to High(s) do
begin
r:=s;
SetLength(r, i);
writeln(r);
wait(200);
end;
end.


thanks for that its so much neater than the way i did it

and thanks to RM for the apology:)

n3ss3s

2008-02-11 08:28:12

…Some one verify him? compare ips with pwnzr…


For the second time - I mentioned it in pwnzr's app - wizzy said pwnzr's IP is clean.



Sorry, no from me..

Bonfield

2008-02-11 17:56:14

From: n3ss3s
For the second time - I mentioned it in pwnzr's app - wizzy said pwnzr's IP is clean.



Sorry, no from me..


i still cant believe someone copyied me thats pretty funny

i figured out from this app my script need alot of work still

nielsie95

2008-02-12 10:55:33

I'm afraid you're not getting in this time. Read some tutorials, fix up the script and try again in one month. :)