SRL Archive - Archive

blackfire553 - SRL Member Application


blackfire553

2011-06-17 15:00:21

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


Are you affilated in anyway with Jagex LTD?
Yes, i agreed to their TOS

Were you Referred to SRL?



What is your general programming knowledge?
Java CS1 course, a little OpenGL (LWGJL) in Java, taking a C++ course right now


Are you a member of any other communities?
Society


Tell us about yourself…
From: blackfire553
I am a weldor, full time student, part time minimum wage slave. I like bodybuilding (mid 1970s) but as a sport contemporary bodybuilding is ruined. I have a technician class amateur radio license, upgrading to general class at Defcon this year.



Please show us one (or multiple) of your scripts.
This is a WIP, but i'm working on a different script and figured maybe i could be a member.
program FighterScript;
{$DEFINE SMART}
{$i SRL/SRL.scar}
{$i srl/srl/misc\stats.simba}
{$i Reflection\Reflection.Simba}
(*
Items:
Bones - 526
*)
const
SRL_STATS_USERNAME = 'Anonymous';//SRL Stats username
SRL_STATS_PASSWORD = 'anon1337';//SRL Stats password
SMART_WORLD = 37;//World
SMART_MEMBER = false;//Members
SMART_SIGNED_CLIENT = true;//Signed/unsigned
SMART_SUPER_DETAIL = false;//Super detail
var
Me : TMe;
procedure DeclarePlayers;
begin
HowManyPlayers := 4;
CurrentPlayer := 2;
NumberOfPlayers(HowManyPlayers);
//------------------------------------------------------------------------------
Players[0].Name := '';//Username
Players[0].Pass := '';//Password
Players[0].Active := False;//Use this character
Players[0].Strings[2] := 'Goblin';//NPC name
Players[0].Booleans[0] := true;//Pick/bury up bones
Players[0].Integers[0] := 5;//Ground item find tolerance
//------------------------------------------------------------------------------
Players[1].Name := '';//Username
Players[1].Pass := '';//Password
Players[1].Active := False;//Use this character
Players[1].Strings[2] := 'Goblin';//NPC name
Players[1].Booleans[0] := false;//Pick/bury up bones
Players[1].Integers[0] := 5;//Ground item find tolerance
//------------------------------------------------------------------------------
Players[2].Name := '';//Username
Players[2].Pass := '';//Password
Players[2].Active := True;//Use this character
Players[2].Strings[2] := 'Goblin';//NPC name
Players[2].Booleans[0] := false;//Pick/bury up bones
Players[2].Integers[0] := 5;//Ground item find tolerance
//------------------------------------------------------------------------------
Players[3].Name := '';//Username
Players[3].Pass := '';//Password
Players[3].Active := False;//Use this character
Players[3].Strings[2] := 'Goblin';//NPC name
Players[3].Booleans[0] := false;//Pick/bury up bones
Players[3].Integers[0] := 5;//Ground item find tolerance
//------------------------------------------------------------------------------
end;
procedure PickUpBones;
var
BonesOnGround : TGroundItemArray;
BonesPoint : TPoint;
i : integer;
begin
if not (LoggedIn) then
Exit;
BonesOnGround := GetItemsNear(Players[CurrentPlayer].Integers[0]);
For i := 1 to high(BonesOnGround) do
begin
if R_InvFull then
Exit;
if BonesOnGround[i].ID = 526 then
begin
BonesPoint := TileToMS(BonesOnGround[i].Tile,2);
Mouse(BonesPoint.x,BonesPoint.Y,1,1,false);
if ChooseOption('ake Bones') then
begin
stats_IncVariable('Bones (Collected)',1);
writeln('got bones');
wait(2000);
end;
end;
end;
end;
procedure BuryBones;
var
i : integer;
begin
if not (LoggedIn) then
Exit;
For i := 1 to 28 do
begin
if (GetItemIDAt(i) = 526) then
begin
R_ClickItem(i,true,'');
stats_IncVariable('Bones (Burried)',1);
wait(500+random(400));
end;
end;
end;
function GetFight : boolean;
var
NPCs : TNPCArray;
NPCPoint : TPoint;
i : integer;
begin
NPCs := GetAllNPCs(false);
For i := 0 to high(NPCs) do
begin
if (NPCs[i].Interacting = -1) and (NPCs[i].Name = Players[CurrentPlayer].Strings[2]) then
begin
NPCPoint := TileToMS(NPCs[i].Tile,NPCs[i].Height);
if (NPCPoint.x >= 0) and (NPCPoint.y >= 0) then
begin
NPCs := GetAllNPCs(false);
NPCPoint := TileToMS(NPCs[i].Tile,NPCs[i].Height);
Mouse(NPCPoint.x,NPCPoint.y,1,1,false);
ChooseOption('ttack');
writeln(NPCs[i].Name)
writeln(IntToStr(NPCs[i].ID));
wait(2000);
Me := GetMe;
if (Me.Interacting <> -1) then
begin
writeln('Got a fight');
Result := true;
Exit;
end;
end;
end;
end;
end;
procedure Fight;
var
Tries : Integer;
begin
if not (LoggedIn) then
Exit;
if Me.interacting = -1 then
begin
writeln('failed to get a fight');
Exit;
end;
Tries := 3;
repeat
Tries := Tries - 1;
wait(1000);
Me := GetMe;
If (Me.Interacting <> -1) then
begin
Tries := 3;
end;
until(Tries = 0);
if Players[CurrentPlayer].Strings[2] = 'Goblin' then
stats_IncVariable('Goblins Killed',1);
writeln('Fight complete');
end;
procedure FindRandoms;
begin
if not (LoggedIn) then
Exit;
writeln('Checking for randoms');
if FindNormalRandoms then
begin
writeln('Solved a random event');
Exit;
end;
end;
procedure AntiBan;
begin
case random(100) of
0:BoredHuman;
1:RandomRClick;
2:HoverSkill('Attack',False);
3:HoverSkill('Strength',False);
end;
wait(1000);
end;
procedure CheckHP;
begin
if not (LoggedIn) then
Exit;
writeln('Checking HP');
if (HPPercent < 50) then
begin
If not (IsResting) then
SetRest;
repeat
if not (LoggedIn) then
Exit;
writeln('Waiting for HP');
FindRandoms;
AntiBan;
wait(20000);
until(HPPercent > 80);
end;
end;
begin
Smart_Server := SMART_WORLD;
Smart_Members := SMART_MEMBER;
Smart_Signed := SMART_SIGNED_CLIENT;
Smart_SuperDetail := SMART_SUPER_DETAIL;
ClearDebug;
SetupSRL;
SetupSRLStats(136,SRL_STATS_USERNAME,SRL_STATS_PASSWORD);
SetupReflection;
DeclarePlayers;
LoginPlayer;
SetAngle(true);
repeat
CheckHP;
GetFight;
Fight;
FindRandoms;
AntiBan;
if Players[CurrentPlayer].Booleans[0] = true then
begin
PickUpBones;
if R_InvFull then
BuryBones;
end;
SRLRandomsReport;
Stats_Commit;
If not LoggedIn then
NextPlayer(Players[CurrentPlayer].Active);
until(AllPlayersInactive);
end.

footballjds

2011-06-17 15:07:41

no from me
Simple script that appears incomplete
Expresses no knowledge of SRL.
Show very little knowledge of SRL-Reflection.
No use of color

TomTuff

2011-06-17 15:09:22

No failsafes, bad standards, too much reflection. You could have used a with..do statement for DeclarePlayers, and in your for..to..do loops you from 1 to x, not from 0 to x which should probably be fixed.

Come back later, you have a good foundation for your scritping ability but it's not quite up to par in my opinion.

blackfire553

2011-06-17 15:30:08

From: TomTuff
No failsafes, bad standards, too much reflection. You could have used a with..do statement for DeclarePlayers, and in your for..to..do loops you from 1 to x, not from 0 to x which should probably be fixed.

Come back later, you have a good foundation for your scritping ability but it's not quite up to par in my opinion.


Thanks, i was trying to figure out why it was acting all wonky.

Sabzi

2011-06-17 16:30:00

No. Reasons were said.

Markus

2011-06-17 16:38:53

I doubt you'll get in so I hope no one minds if I close this..

Most things are already said, you got the foundation down but your script still needs some more work. You may apply again in two weeks and I'd like to see you doing so! :)