Griff
2008-11-21 20:25:06
<!– BEGIN TEMPLATE: formanswers –>
griff721 - SRL Member Application Form
griff721
What is the meaning to life?
I dunno, live, have fun, try to be good at scripting :D
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
None, kinda c++?
Other Communitys
None
How Long have You Played Runescape
5+ years, can't remember
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Well, this is my third time applying for members. The first 2 were way long ago, and I applied with very inexperienced scripts. This is my first time back scripting for a very long time, and I get I learned a lot. (Even though that's what I said the second time I applied). Hopefully I get accepted, and continue contributing.
-Griff
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
——————————————————
<!– END TEMPLATE: formanswers –>
griff721 - SRL Member Application Form
griff721
What is the meaning to life?
I dunno, live, have fun, try to be good at scripting :D
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
None, kinda c++?
Other Communitys
None
How Long have You Played Runescape
5+ years, can't remember
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Well, this is my third time applying for members. The first 2 were way long ago, and I applied with very inexperienced scripts. This is my first time back scripting for a very long time, and I get I learned a lot. (Even though that's what I said the second time I applied). Hopefully I get accepted, and continue contributing.
-Griff
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
program Ranged_Barb_Killer;
{.include SRL\SRL.scar}
var
Eat, Kills, KillTime: Integer;
PickUpArrows, GetFood: Boolean;
FoodType: Byte;
function FindBarbHallColor: Integer; Forward;
procedure SetUpVars;
begin
Eat := 30; // What Hp You want to Eat at.
Kills := 100; // How many kills you want before the script ends.
PickUpArrows := False; // Do You Wish to Pick Up Arrows?
FoodType := 1; // Currently Only supports Salmon. 1 = Salmon
GetFood := True; //Walk Back To EdgeVille to Get Food? (Not Working 100%)
end;
const
YourSRLID = '4550';
YourSRLPass = 'kevin';
procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
SRLID := YourSRLID;
SRLPassword := YourSRLpass;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;
SetPlayerNameTPAs;
end;
var
x, y, HP, ArrowsDTM, SalmonDTM: integer;
Total, Gained, Foodies: integer;
procedure ReportIt;
begin
WriteLn('| Griff721 Barb Ranged Pure');
WriteLn(' --------------------------');
WriteLn('|- Script has Ran For |' + TimeRunning + '|');
WriteLn('|- has Killed A Total Of |' + IntToStr(Total) + '| out of |' + IntToStr(Kills) + '| Barbarians');
WriteLn('|- Has Eaten |' + IntToStr(Foodies) + '| Salmon');
WriteLn('|- Total Levels Gained |' + IntToStr(Gained) + '| Levels');
WriteLn(' -------------------------');
end;
procedure LoadDTMs;
begin
ArrowsDTM := DTMFromString('78DA6354636660D8CCC8800C22CCB81994813' +
'44C94D100A86603AA1A902C8A1A2DA09ADD04D4C800D56CC1AF06009' +
'E6F04AF');
SalmonDTM := DTMFromString('78DA63E4636660D8C1C8800C9E06C83128036' +
'99828A30450CD2A543520591435C298E660A86105AAD98E5F0D00D73' +
'2050A');
end;
Function SetDDTM(WalkNumber: Integer): integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..3] of TDTMPointDef;
TempTDTM: TDTM;
begin
case WalkNumber of
1:
begin
dtmMainPoint.x := 743;
dtmMainPoint.y := 201;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 6118500;
dtmMainPoint.Tolerance := 50;
dtmSubPoints[0].x := 743;
dtmSubPoints[0].y := 201;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 6118500;
dtmSubPoints[0].Tolerance := 50;
dtmSubPoints[1].x := 739;
dtmSubPoints[1].y := 195;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 62965;
dtmSubPoints[1].Tolerance := 50;
dtmSubPoints[2].x := 746;
dtmSubPoints[2].y := 196;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 195836;
dtmSubPoints[2].Tolerance := 50;
dtmSubPoints[3].x := 747;
dtmSubPoints[3].y := 205;
dtmSubPoints[3].AreaSize := 0;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := 60909;
dtmSubPoints[3].Tolerance := 50;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
2:
begin
dtmMainPoint.x := 735;
dtmMainPoint.y := 257;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 3155950;
dtmMainPoint.Tolerance := 0;
dtmSubPoints[0].x := 735;
dtmSubPoints[0].y := 257;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 3155950;
dtmSubPoints[0].Tolerance := 0;
dtmSubPoints[1].x := 741;
dtmSubPoints[1].y := 251;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 721153;
dtmSubPoints[1].Tolerance := 0;
dtmSubPoints[2].x := 738;
dtmSubPoints[2].y := 260;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 721153;
dtmSubPoints[2].Tolerance := 0;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
3:
begin
dtmMainPoint.x := 760;
dtmMainPoint.y := 282;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1016577;
dtmMainPoint.Tolerance := 50;
dtmSubPoints[0].x := 760;
dtmSubPoints[0].y := 282;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1016577;
dtmSubPoints[0].Tolerance := 50;
dtmSubPoints[1].x := 756;
dtmSubPoints[1].y := 288;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 721153;
dtmSubPoints[1].Tolerance := 50;
dtmSubPoints[2].x := 765;
dtmSubPoints[2].y := 287;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 721153;
dtmSubPoints[2].Tolerance := 50;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
4:
begin
dtmMainPoint.x := 779;
dtmMainPoint.y := 202;
dtmMainPoint.AreaSize := 0;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 1495013;
dtmMainPoint.Tolerance := 50;
dtmSubPoints[0].x := 779;
dtmSubPoints[0].y := 202;
dtmSubPoints[0].AreaSize := 0;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 1495013;
dtmSubPoints[0].Tolerance := 50;
dtmSubPoints[1].x := 774;
dtmSubPoints[1].y := 196;
dtmSubPoints[1].AreaSize := 0;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 65793;
dtmSubPoints[1].Tolerance := 50;
dtmSubPoints[2].x := 784;
dtmSubPoints[2].y := 196;
dtmSubPoints[2].AreaSize := 0;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 65793;
dtmSubPoints[2].Tolerance := 50;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
5:
begin
dtmMainPoint.x := 885;
dtmMainPoint.y := 437;
dtmMainPoint.AreaSize := 3;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := 3495793;
dtmMainPoint.Tolerance := FindBarbHallColor;
dtmSubPoints[0].x := 885;
dtmSubPoints[0].y := 437;
dtmSubPoints[0].AreaSize := 3;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := 3495793;
dtmSubPoints[0].Tolerance := FindBarbHallColor;
dtmSubPoints[1].x := 907;
dtmSubPoints[1].y := 439;
dtmSubPoints[1].AreaSize := 3;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := 3495793;
dtmSubPoints[1].Tolerance := FindBarbHallColor;
dtmSubPoints[2].x := 882;
dtmSubPoints[2].y := 443;
dtmSubPoints[2].AreaSize := 3;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := 3495793;
dtmSubPoints[2].Tolerance := FindBarbHallColor;
TempTDTM.MainPoint := dtmMainPoint;
TempTDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TempTDTM);
end;
end;
end;
function FindGainedLevel: boolean;
begin
if not LoggedIn then
Exit;
if ClickContinue(False, False) then
begin
if FindNPCChatText('lations', Nothing) then
begin
writeln('We gained a Ranged level!');
Inc(Gained);
ClickContinue(True, True);
Result := True;
Exit;
end;
end;
end;
function FindBarbHallColor: Integer;
var
CTS, II, Count, PCount: Integer;
ColourDensity: Extended;
TPA, CPts: TPointArray;
TIA: TIntegerArray;
TB: TBox;
begin
Result := 0;
CTS := GetColorToleranceSpeed;
ColorToleranceSpeed(2);
SetColorSpeed2Modifiers(0.44, 1.42);
if (FindColorsTolerance(TPA, 2048853, MMX1, MMY1, MMX2, MMY2, 10)) then
begin
FilterPointsPie(TPA, 0.0, 360.0, 0.0, 76.0, MMCX, MMCY);
TIA := GetColors(TPA);
ClearSameIntegersAndTPA(TIA, TPA);
for II := 0 to High(TIA) do
begin
FindColorsTolerance(CPts, TIA[II], MMX1, MMY1, MMX2, MMY2, 0);
TB := GetTPABounds(CPts);
Count := Length(CPts);
try
ColourDensity := Count / ((TB.x2 - TB.x1) * (TB.y2 - TB.y1));
except end;
if (Count < 300) or (ColourDensity < 0.08) or (Count <= PCount) then Continue;
Result := TIA[II];
PCount := Count;
end;
end;
SetColorSpeed2Modifiers(0.2, 0.2);
ColorToleranceSpeed(CTS);
end;
Procedure Setup;
begin
SetupSRL;
SetUpVars;
DeclarePlayers;
LoginPlayer;
LoadDTMs;
Players[CurrentPlayer].Integers[3] := GetSkillInfo('Ranged', False);
if Players[CurrentPlayer].Integers[3] < 25 then
begin
Writeln('Ranging is too low! Please get to at least 25 before running.');
TerminateScript;
end;
if Players[CurrentPlayer].Integers[3] > 75 then
begin
KillTime := 5000+random(250);
end;
if Players[CurrentPlayer].Integers[3] > 60 then
begin
KillTime := 6000+random(250);
end;
if Players[CurrentPlayer].Integers[3] > 50 then
begin
KillTime := 5000+random(250);
end;
if Players[CurrentPlayer].Integers[3] < 49 then
begin
KillTime := 10000+random(250);
end;
GameTab(4);
if FindDtm(ArrowsDTM, x, y, MIX1,MIY1,MIX2,MIY2) then
begin
Mouse(x, y, 0, 0, false);
ChooseOption('ield');
exit;
end;
if not (FindDtm(ArrowsDTM, x, y, MIX1,MIY1,MIX2,MIY2)) then
begin
GameTab(5);
if FindDtm(ArrowsDTM, x, y, MIX1,MIY1,MIX2,MIY2) then
Mouse(x, y, 0, 0, false);
exit;
end;
if not(FindDtm(ArrowsDTM, x, y, MIX1,MIY1,MIX2,MIY2)) then
begin
Writeln('Could not find arrows! Please get arrows, and run again.');
TerminateScript;
end;
if not (Players[CurrentPlayer].Integers[3] > 25) then
begin
NextPlayer(False);
end;
end;
function WalkToEdge: Boolean; // No FailSafes, so watch out
var
WalkDTM, Walk2DTM, Walk3DTM, Walk4DTM: Integer;
begin
if not (GetFood) then Exit;
WalkDTM := SetDDTM(1);
if FindDTM(WalkDTM, X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y, 3, 3, True);
Writeln('Going back to edge.');
Wait(5000+random(250));
FFlag(0);
end;
Walk2DTM := SetDDTM(2);
if FindDTM(Walk2DTM, X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y, 3, 3, True);
FFlag(0);
Result := True;
end;
Walk3DTM := SetDDTM(3);
if FindDTM(Walk3DTM, X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y, 3, 3, True);
FFlag(0);
Result := True;
end;
if FindDTM(Walk3DTM, X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y, 3, 3, True);
FFlag(0);
Result := True;
end;
Walk4DTM := SetDDTM(4);
if FindDTM(Walk4DTM, X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y, 3, 3, True);
FFlag(0);
Result := True;
end;
If Not (result) then
begin
LogOut;
NextPlayer(False);
end;
end;
function Banking: Boolean;
begin
OpenBankFast('eb');
if ((Foodtype = 1)) then
begin
if FindDtm(SalmonDTM, x, y, MIX1,MIY1,MIX2,MIY2) then
begin
Mouse(x, y, 0, 0, false);
ChooseOption('ll');
Result := True;
end;
end;
if not(result) then
Exit;
end;
Procedure BackToBarbs;
var
WalkDTM: array [1..5] of integer;
I: Integer;
begin
if not (GetFood) then Exit;
WalkDTM[1] := SetDDTM(4);
if FindDTM(WalkDTM[1], X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y, 8, 8, True);
FFlag(0);
end;
WalkDTM[2] := SetDDTM(3);
if FindDTM(WalkDTM[2], X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y, 8, 8, True);
FFlag(0);
end;
WalkDTM[3] := SetDDTM(2);
if FindDTM(WalkDTM[3], X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y, 8, 8, True);
FFlag(0);
end;
WalkDTM[4] := SetDDTM(1);
if FindDTM(WalkDTM[4], X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y, 8, 8, True);
Wait(5000+random(250));
FFlag(0);
end;
WalkDTM[5] := SetDDTM(5);
if FindDTM(WalkDTM[4], X, Y, MMx1,MMy1,MMx2,MMy2) then
begin
Mouse(x, y - 5, 4, 4, True);
Wait(5000+random(250));
FFlag(0);
end;
for I := 1 to 5 do
begin
FreeDtm(I);
end;
end;
Procedure EatFood;
begin
if (Foodtype = 1) then
begin
if FindDtm(SalmonDTM, x, y, MIX1,MIY1,MIX2,MIY2) then
begin
Mouse(x, y, 0, 0, false);
ChooseOption('almon');
Inc(Foodies);
end;
if not (FindDtm(SalmonDTM, x, y, MIX1,MIY1,MIX2,MIY2)) then
begin
WalkToEdge;
Banking;
BackToBarbs;
end;
end;
end;
Procedure DetectHits;
begin
HP := GetSkillInfo('Hitpoints', False);
if not HP < eat then
begin
exit;
end;
SetRun(true);
GameTab(4);
EatFood;
exit;
{if FindObjTPA(x, y, 3957631, 20, 2, 15, 25, 10, ['tool', 'Stool', 'ool']) then
Mouse(x, y, 0, 0, true);
if not (FindObjTPA(x, y, 3957631, 20, 2, 15, 25, 10, ['tool', 'Stool', 'ool'])) then
begin
Exit;
end;}
end;
Procedure Randoms;
begin
if (not (LoggedIn)) then
Exit;
DetectHits;
FindNormalRandoms;
end;
Procedure AntiBan;
begin
if(not(LoggedIn))then
Exit;
case Random(17) of
0:
begin
HoverSkill('Ranged', false);
wait(2453+Random(432));
end;
1:
begin
HoverSkill('Ranged',false);
wait(2364+Random(413));
GameTab(4);
end;
2: PickUpMouse;
7:
begin
MakeCompass('N');
wait(100+random(5));
MakeCompass('S');
wait(100+random(5));
MakeCompass('N');
end;
8:
begin
RandomRClick;
wait(500 + random(500));
end;
9:
begin
IdleTime(1000 + Random(750), 500, 0.5);
Wait(300 + random(700));
end;
end;
end;
Function GetArrows: boolean;
begin
if not (PickUpArrows) then
begin
exit;
end;
if FindObjTPA(x, y, 857707, 20, 2, 15, 25, 10, ['rrow', 'arrow', 'rrow']) then
begin
Mouse(x, y, 0, 0, false);
ChooseOption('ake');
GameTab(4);
end;
if not FindObjTPA(x, y, 857707, 20, 2, 15, 25, 10, ['rrow', 'arrow', 'rrow']) then
begin
exit;
end;
if FindDtm(ArrowsDTM, x, y, MIX1,MIY1,MIX2,MIY2) then
begin
Mouse(x, y, 0, 0, false);
ChooseOption('ield');
end;
result:= true;
end;
procedure GetBarb;
begin
repeat
MakeCompass('N');
if FindObjTPA(x, y, 8619150, 20, 2, 15, 25, 5, ['arbarian', 'Barbarian', 'arian']) then
begin
Mouse(x, y, 0, 0, false);
ChooseOption('ttack')
Randoms;
FindNormalrandoms;
wait(2000+random(450));
FindObjTPA(x, y, 8619150, 20, 2, 15, 25, 5, ['arbarian', 'Barbarian', 'arian'])
end;
Randoms;
AntiBan;
Wait(KillTime);
GetArrows;
Randoms;
FindGainedLevel;
Inc(Total);
Until (Total >= Kills);
ReportIt;
end;
procedure ScriptTerminate;
begin
ReportIt;
Disguise('Terminated');
TerminateScript;
end;
Procedure MainLoop;
begin
if not LoggedIn Then Exit;
GetBarb;
end;
begin
Setup;
Mainloop;
end.——————————————————
<!– END TEMPLATE: formanswers –>