rawsilk
2008-12-05 04:50:39
<!– BEGIN TEMPLATE: formanswers –>
rawsilk - SRL Member Application Form
rawsilk
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Delphi
Other Communitys
Ragezone
How Long have You Played Runescape
10 years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
I've played runescape for a long time. I prefer the simplest method when it comes to scripting since they tend to screw up less. Sometimes the simplest method is very complex though. Live in Canada, W00t. Play/Beta Test many online games, GM for MU Online. In university (Don't know why you'd care). I'm working on a script that does manythings. Basically you make a list of what you want your player to do, and the script does it in that order. It will range from fighting to skill training to banking and also air and mind rune crafters. I'm so happy that reflection came out since this makes the walking parts a breeze. and I'm thinking of putting a zammy wine gatherer since they seem to sell well. Below is a dwarf fighter I made using reflection. It needs refining but I only made it last night/this morning.
MEANING TO LIFE IS 42.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
——————————————————
<!– END TEMPLATE: formanswers –>
rawsilk - SRL Member Application Form
rawsilk
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Delphi
Other Communitys
Ragezone
How Long have You Played Runescape
10 years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
I've played runescape for a long time. I prefer the simplest method when it comes to scripting since they tend to screw up less. Sometimes the simplest method is very complex though. Live in Canada, W00t. Play/Beta Test many online games, GM for MU Online. In university (Don't know why you'd care). I'm working on a script that does manythings. Basically you make a list of what you want your player to do, and the script does it in that order. It will range from fighting to skill training to banking and also air and mind rune crafters. I'm so happy that reflection came out since this makes the walking parts a breeze. and I'm thinking of putting a zammy wine gatherer since they seem to sell well. Below is a dwarf fighter I made using reflection. It needs refining but I only made it last night/this morning.
MEANING TO LIFE IS 42.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
{.Script Info:
# ScriptName = Dawrf Killer
# Author = Rawsilk
# Description = Kills dwarves and picks up valuables
# Version = 0.1
# Date = Dec 2008
# Comments = SRL#28 SMART & Reflection
/Script Info}
program DawrfKiller;
{---------------------------------------------------------------------
PLACE CHARACTERS IN DWARVEN MINES AT NORTH-EAST CORNER
(NORTH OF SCORPIONS NEAR THE IRON ROCKS)
ALL PLAYERS SHOULD HAVE A COMBAT OF 25+ OTHERWISE THEY MAY DIE.
THERE IS NO EMERGENCY RUN THING INCASE YOUR ABOUT TO DIE.
IF YOU ARE WORRIED ABOUT LOSING GEAR THEN WAIT UNTIL YOU COMBAT IS 30+
AND/OR WEAR ONLY 3 PIECES OF GEAR.
THIS WILL GET YOU ABOUT 42K EXPERIENCE PER HOUR ONCE YOUR COMBAT IS
ABOUT 55+
THIS WILL GET YOU ABOUT 2K GOLD AND 45 NATURE AND CHAOS RUNES PER HOUR
IF YOUR COMBAT LEVEL IS ABOUT 55+
NOT BAD FOR LVL 10 MOBS ;)
----------------------------------------------------------------------}
{.Include SRL\SRL\Misc\Smart.Scar}
{.Include SRL\SRL.Scar}
{.Include SRL\SRL\Reflection\Reflection.Scar}
const
FightTime = 7;
NumOfPlayers = 2;
Procedure DeclarePlayers;
Begin
NumberOfPlayers(NumOfPlayers);
CurrentPlayer := 0;
Players[0].Name :='';
Players[0].Pass :='';
Players[0].Nick :='';
Players[0].Active:=True;
Players[1].Name :='';
Players[1].Pass :='';
Players[1].Nick :='';
Players[1].Active:=True;
{ Players[2].Name :='';
Players[2].Pass :='';
Players[2].Nick :='';
Players[2].Active:=True;
Players[3].Name :='';
Players[3].Pass :='';
Players[3].Nick :='';
Players[3].Active:=True; }
end;
procedure MyAntiRandoms;
begin
end;
procedure WalkThePath(Path:TPointArray);
var
i: Integer;
begin
for i := 0 to High(Path) do
begin
WalkToTile(Path[i], 1, 1);
end;
end;
function AnvilRelocate: TPointArray; //next update
begin
end;
function LadderRelocate: TPointArray; //next update
begin
end;
function ScorpionRelocate: TPointArray; //next update
begin
end;
function FightTimeEstimate:integer;
begin
if Players[CurrentPlayer].Level[2] < 11 then
Result:= 15000+3000;
if ((Players[CurrentPlayer].Level[2] > 10) and (Players[CurrentPlayer].Level[2] < 16)) then
Result:= 14000+3000;
if ((Players[CurrentPlayer].Level[2] > 15) and (Players[CurrentPlayer].Level[2] < 21)) then
Result:= 13000+3000;
if ((Players[CurrentPlayer].Level[2] > 20) and (Players[CurrentPlayer].Level[2] < 26)) then
Result:= 12000+3000;
if ((Players[CurrentPlayer].Level[2] > 25) and (Players[CurrentPlayer].Level[2] < 31)) then
Result:= 11000+3000;
if ((Players[CurrentPlayer].Level[2] > 30) and (Players[CurrentPlayer].Level[2] < 40)) then
Result:= 10000+3000;
if Players[CurrentPlayer].Level[2] > 39 then
Result:= 9000+3000;
end;
function FindDwarf:Boolean; //warning this does not work yet because I havn't had time to pick locations... in next update
var
P:TPoint;
begin
SetRun(True);
Writeln(Players[CurrentPlayer].Name + ' is relocating');
if DistanceFrom(Point(0,0{relocateed place}))<13 then //close to relocation point
begin
WalkToTile(Point(0,0{relocateed place}), 1, 1);
R_FFlag(0);
Wait(1200);
if DistanceFrom(Point(0,0{relocateed place})) < 5 then
begin
Writeln(Players[CurrentPlayer].Name + ' safely relocated');
Wait(1000);
end else
begin
Writeln(Players[CurrentPlayer].Name + ' might still be lost');
end;
Result:=True;
Exit;
end;
if DistanceFrom(Point(0,0){Anvil})<16{Within MM Distance} then //Close to Anvil
begin
WalkThePath(AnvilRelocate);
R_FFlag(0);
Wait(1200);
if DistanceFrom(Point(0,0{relocateed place})) < 5 then
begin
Writeln(Players[CurrentPlayer].Name + ' safely relocated');
Wait(1000);
end else
begin
Writeln(Players[CurrentPlayer].Name + ' might still be lost');
end;
Result:=True;
Exit;
end;
if DistanceFrom(Point(0,0){Ladder})<DistanceFrom(Point(0,0){Scorpions}) then //closer to North ladder
begin
WalkThePath(LadderRelocate);
R_FFlag(0);
Wait(1200);
if DistanceFrom(Point(0,0{relocateed place})) < 5 then
begin
Writeln(Players[CurrentPlayer].Name + ' safely relocated');
Wait(1000);
end else
begin
Writeln(Players[CurrentPlayer].Name + ' might still be lost');
end;
Result:=True;
Exit;
end;
if DistanceFrom(Point(0,0){Ladder})<DistanceFrom(Point(0,0){Scorpions}) then //closer to Scorpions
begin
WalkThePath(ScorpionRelocate);
R_FFlag(0);
Wait(1200);
if DistanceFrom(Point(0,0{relocateed place})) < 5 then
begin
Writeln(Players[CurrentPlayer].Name + ' safely relocated');
Wait(1000);
end else
begin
Writeln(Players[CurrentPlayer].Name + ' might still be lost');
end;
Result:=True;
Exit;
end;
Result:=False;
Wait(10000);
Writeln(Players[CurrentPlayer].Name + ' cannot find dwarf so we will wait for a few seconds for a dwarf to find us');
Writeln('so we will wait for a few seconds for a dwarf to find us');
end;
function FightDwarf:boolean;
var
Dwarf:array of TNPC;
h,i,j,x,y:integer;
begin
if not(R_LoggedIn) then NextPlayer(False);
repeat
Dwarf:=SortNPCs(GetNPCsByName('Dwarf'));
if GetArrayLength(Dwarf) = 0 then
repeat
FindDwarf;
h:=h+1;
until(True or (h = 3));
if (h = 3) then NextPlayer(False);
until(GetArrayLength(Dwarf) > 0);
repeat
if (not Dwarf[i].InFight) then
begin
MMouse(TileToMSEx(Dwarf[i],0).X,TileToMSEx(Dwarf[i],0).Y,2,2);
if IsUpText('Attack')then
GetMousePos(x, y);
Case Random(1) of
0: begin
Mouse(x,y,0,0,True);
FFlag(0);
Result:=True;
MarkTime(j);
repeat
Wait(100);
until(Dwarf[i].InFight or (TimeFromMark(j)>FightTimeEstimate));
end;
1: begin
Mouse(x,y,0,0,False);
ChooseOption('Attack');
FFlag(0);
Result:=True;
MarkTime(j);
repeat
Wait(100);
until(Dwarf[i].InFight or (TimeFromMark(j)>FightTimeEstimate));
end;
end;
end else
begin
i:=i+1;
end;
until((Result = True) or (i = High(Dwarf)));
Result:=False;
end;
procedure Pickup;
var
Item:Array of TGroundItem;
x,y,i:integer;
begin
for i:= 0 to High(GetAllGroundItems(Item,52)) do
begin
if Item[i].ID=996{coin}then //or Item[i].ID= {Chaos Rune} or Item[i].ID= {Nature Rune} then I'll put these other items in the update
MMouse(TileToMSEx(Item[i],0).X,TileToMSEx(Item[i],0).Y,0,0);
GetMousePos(x, y);
Mouse(x,y,0,0,False);
ChooseOption('ickup');
end;
end;
procedure InitPlayer;
begin
SetGraphics(4, '', '' ,'', '', '', '', '', '');
Retaliate(True);
SetAudio(0, 0, 0, Mono);
SetChat('on',1);
SetChat('friends',2);
SetChat('on',3);
GetAllLevels;
wait(300);
if (Players[CurrentPlayer].Level[1] <= PLayers[CurrentPlayer].Level[2]) and (Players[CurrentPlayer].Level[1] <= PLayers[CurrentPlayer].Level[3]) then
SetFightMode(1);
if (Players[CurrentPlayer].Level[2] <= PLayers[CurrentPlayer].Level[1]) and (Players[CurrentPlayer].Level[2] <= PLayers[CurrentPlayer].Level[3]) then
SetFightMode(2);
if (Players[CurrentPlayer].Level[3] <= PLayers[CurrentPlayer].Level[1]) and (Players[CurrentPlayer].Level[3] <= PLayers[CurrentPlayer].Level[2]) then
SetFightMode(3);
wait(200);
R_MakeCompass('n');
SetAngle(True);
end;
procedure Setup;
begin
SetupSRL;
{ SRLID := SRL_ID;
SRLPassword := SRL_PASS; }
SMARTSetupEx(152, False, True, False);
Wait(5000);
SetTargetDC(SmartGetDC);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1321539);
DeclarePlayers;
LoginPlayer;
end;
var
t:integer;
begin
Setup;
repeat
InitPlayer;
MarkTime(t);
repeat
While FightDwarf do
repeat
MyAntiRandoms;
Pickup;
Sleep(70+Random(50));
until(False);
until(TimeFromMark(t) > 60000*(FightTime + Random(2)));
NextPlayer(True);
until(PlayersActive = 0);
end.
——————————————————
<!– END TEMPLATE: formanswers –>