Prince
2008-02-17 15:22:05
<!– BEGIN TEMPLATE: formanswers –>
prince - SRL Member Application Form
prince
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Python, Java, Php/html
Other Communitys
Rsbot, Jmacro
How Long have You Played Runescape
3 years on and off
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Well i'm an experienced coder for a long time. learned python a year ago and am still in the process(but i know most of my stuff) in learning java.
My name is Aku, im 16, i love scripting, and i love scar.
I had only visited the other communities when scar was un-minimizable, but once smart came out, i quickly moved to here.
Been playing runesape since 05 On and OFF, i quit at rs2, started again, stopped, etc.
I love making scripts on my free time, and i love helping people that need the appropriate help
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
——————————————————
<!– END TEMPLATE: formanswers –>
prince - SRL Member Application Form
prince
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Python, Java, Php/html
Other Communitys
Rsbot, Jmacro
How Long have You Played Runescape
3 years on and off
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
Well i'm an experienced coder for a long time. learned python a year ago and am still in the process(but i know most of my stuff) in learning java.
My name is Aku, im 16, i love scripting, and i love scar.
I had only visited the other communities when scar was un-minimizable, but once smart came out, i quickly moved to here.
Been playing runesape since 05 On and OFF, i quit at rs2, started again, stopped, etc.
I love making scripts on my free time, and i love helping people that need the appropriate help
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
{============================================================================}
{ ___ _ __ }
{ / __\___ __| | ___ /\ \ \__ _ _ __ ___ ___ }
{ / / / _ \ / _` |/ _ \/ \/ / _` | '_ ` _ \ / _ \ }
{ / /__| (_) | (_| | __/ /\ / (_| | | | | | | __/ }
{ \____/\___/ \__,_|\___\_\ \/ \__,_|_| |_| |_|\___| }
{ _ _ }
{ / __\ | __ ___ __ }
{ / _\ | |/ _` \ \/ / }
{ / / | | (_| |> < }
{ \/ |_|\__,_/_/\_\ }
{ }
{ }
{ By: Prince }
{ Thanks to: footballdjs, cazax, hy71194 for helping me }
{ }
{ }
{ *********************** INSTRUCTIONS ********************* }
{ }
{ 1) Start runescape, and put your guy into the seer's bank }
{ 2) Fill out the Declare Players(There are helpnotes available there }
{ 3) Close your runescape client, hit the play button and then }
{ feel free to do whatever on ur computer as this uses smart }
{ 4) Post proggy please, they make me happy }
{ 5) Enjoy. Dont rip anything outta here without my permission }
{ }
{ }
{============================================================================}
program CodeNameFlax;
{.include SRL/SRL/misc/Smart.scar}
{.include SRL/SRL.scar}
//--------------------------------------------------------------------------\\
// Declare Players \\
//--------------------------------------------------------------------------\\
Procedure DeclarePlayers;
begin
HowManyPlayers := 5;//how many players you want to use
CurrentPlayer := 0;//which player to start at
NumberOfPlayers(HowManyPlayers);//dont touch
Players[0].Name := ''; //replace with your rs username, keep the '' there
Players[0].Pass := ''; //replace with your rs password keep '' there
Players[0].Nick := '';// 3 or 4 letters of your rs username, so if my username was user, my nick would be ser. do not put the first letter in
Players[0].Strings[0] := '';//Your bank pin put it in the ''. if you dont have one, leave it as blank
Players[0].Integers[0] := 100; // how many loads to do before changing players?
Players[0].Booleans[0] := True; //Proggy in report box? true for yes, false for debug box
Players[0].Active :=True; //Do you want this player to be used?
Players[1].Name := ''; //replace with your rs username, keep the '' there
Players[1].Pass := ''; //replace with your rs password keep '' there
Players[1].Nick := '';// 3 or 4 letters of your rs username, so if my username was user, my nick would be ser. do not put the first letter in
Players[1].Strings[0] := '';//Your bank pin put it in the ''. if you dont have one, leave it as blank
Players[1].Integers[0] := 0; // how many loads to do before changing players?
Players[1].Booleans[0] := True;
Players[1].Active :=False; //Do you want this player to be used?
Players[2].Name := ''; //replace with your rs username, keep the '' there
Players[2].Pass := ''; //replace with your rs password keep '' there
Players[2].Nick := '';// 3 or 4 letters of your rs username, so if my username was user, my nick would be ser. do not put the first letter in
Players[2].Strings[0] := '';//Your bank pin put it in the ''. if you dont have one, leave it as blank
Players[2].Integers[0] := 0; // how many loads to do before changing players?
Players[2].Booleans[0] := True;
Players[2].Active :=False; //Do you want this player to be used?
Players[3].Name := ''; //replace with your rs username, keep the '' there
Players[3].Pass := ''; //replace with your rs password keep '' there
Players[3].Nick := '';// 3 or 4 letters of your rs username, so if my username was user, my nick would be ser. do not put the first letter in
Players[3].Strings[0] := '';//Your bank pin put it in the ''. if you dont have one, leave it as blank
Players[3].Integers[0] := 0; // how many loads to do before changing players?
Players[3].Booleans[0] := True;
Players[3].Active :=False; //Do you want this player to be used?
Players[4].Name := ''; //replace with your rs username, keep the '' there
Players[4].Pass := ''; //replace with your rs password keep '' there
Players[4].Nick := '';// 3 or 4 letters of your rs username, so if my username was user, my nick would be ser. do not put the first letter in
Players[4].Strings[0] := '';//Your bank pin put it in the ''. if you dont have one, leave it as blank
Players[4].Integers[0] := 0; // how many loads to do before changing players?
Players[4].Booleans[0] := True;
Players[4].Active :=False; //Do you want this player to be used?
end;
//--------------------------------------------------------------------------\\
// Variables, Constants, etc. \\
//--------------------------------------------------------------------------\\
var
Flax, LoadsDone : Integer;
FlaxCount, FlaxInv: Integer;
const
Fence= 736601;
Flax1= 15328934;
Flax2= 12302423;
Flax3= 14999953;
BankBooth1= 10069419;
BankBooth2= 8225670;
BankBooth3= 9079695;
//--------------------------------------------------------------------------\\
// Load DTM \\
//--------------------------------------------------------------------------\\
procedure LoadDTM;
begin
Flax := DTMFromString('78DA63F463626038CBC8800C385DB819F8813' +
'448F43F1030FA00D51C425503918591403A0AA8E63C0135414035' +
'FB08A88900AAD945404D2C50CD7E026A92816AF61250130F54739' +
'40835A7F1AB0100F3F90E97');
end;
//--------------------------------------------------------------------------\\
// Check4Players \\
//--------------------------------------------------------------------------\\
Procedure Check4Players;
begin
if not LoggedIn then Exit;
if (Players[CurrentPlayer].Integers[0] = LoadsDone) then
begin
Writeln(' CHANGING PLAYERS');
NextPlayer(True);
end;
if (not LoggedIn) then NextPlayer(False);
end;
//--------------------------------------------------------------------------\\
// Anti - Ban \\
//--------------------------------------------------------------------------\\
procedure RandomMouse;
var
i, r : Integer;
begin
r := random(40)
for i := 0 to 5 do
begin
Mmouse(0+random(700), 0+random(700), r, r);
Wait(500+random(500));
end;
end;
Procedure RandomAB;//:wink:
begin
case random(15) of
0,1: HoverSkill('Fletching',False);
2,3: HoverSkill('Crafting',False);
4,5: PickUpMouse;
6,7: AlmostLogout;
8,9: BoredHuman;
10,11: RandomMovement;
12,13: RandomRClick;
end;
end;
procedure AntiBan;
begin
if (not LoggedIn) then Exit;
Status('Performing a random Anti-ban');
case random(2) of
0: RandomMouse;
1: RandomAB;
end;
end;
//--------------------------------------------------------------------------\\
// CheckRandoms \\
//--------------------------------------------------------------------------\\
procedure CheckRandoms;
begin
if (not(LoggedIn)) then Exit;
FindNormalRandoms;
FindMod;
if (FindFight = true) then RunAway ('W', True, 1, 5000+random(1000));
end;
//--------------------------------------------------------------------------\\
// AngleWalk \\
//--------------------------------------------------------------------------\\
Procedure AngleWalk(WAngle: string; Dist: Integer; WFlag: Boolean);
var
Angle : Extended;
TheAngle, x, y : Integer;
begin
Case LowerCase(WAngle) of
'n' : TheAngle := 0;
'w' : TheAngle := 90;
's' : TheAngle := 180;
'e' : TheAngle := 270;
else
begin
try
TheAngle := StrToInt(GetNumbers(WAngle));
except
WriteLn('AngleWalk Failed: Invalid string/integer entered.');
Exit;
end;
end;
end;
TheAngle := 270 - TheAngle;
if (Dist > 72) then Dist := 72;
Angle := rs_GetCompassAngleDegrees;
x := MMCX + Round(Dist * Cos((Angle + TheAngle) * (pi/180)));
y := MMCY + Round(Dist * Sin((Angle + TheAngle) * (pi/180)));
Mouse(x, y, 0, 0, True);
if WFlag then
begin
Wait(RandomRange((Dist * 24), (Dist * 26)));
FFlag(8);
end;
end;
//--------------------------------------------------------------------------\\
// TopView \\
//--------------------------------------------------------------------------\\
Procedure TopView;
var x: Integer;
begin
KeyDown(VK_UP)
Wait(1000+random(200));
for x:= 0 to 5 do
begin
Wait(random(30))
end;
KeyUp(VK_UP)
end;
//--------------------------------------------------------------------------\\
// RadialWalkTolerance \\
//--------------------------------------------------------------------------\\
function RadialWalkTolerance(TheColor, Tolerance, StartRadial, EndRadial, Radius, Xmod, Ymod: Integer): Boolean;
var
tpa: TPointArray;
i: Integer;
begin
Result := False;
if RadialWalkEx(tpa, MMCX, MMCY, TheColor, Tolerance, StartRadial, EndRadial, Radius) then
for i := 0 to High(tpa) do
if MFNF(tpa[i].x, tpa[i].y, Xmod, Ymod) then
begin
FFlag(10);
Result := True;
Break;
end;
end;
//--------------------------------------------------------------------------\\
// FlaxColorMiniMap \\
//--------------------------------------------------------------------------\\
function FlaxColorMM:integer; //Based on Boreas GetLadderColor
var
TmpBmp,MyX,MyY:integer;
MyColor: integer;
MyCanvas:tcanvas;
TmpBool:boolean;
begin
TmpBmp:= BitmapFromString(100,90,'');
MyCanvas:=GetBitmapCanvas(TmpBmp);
CopyCanvas(GetClientCanvas,MyCanvas,598,39,698,129,0,0,100,90)
for MyY:=0 to 99 do
begin
for MyX:=0 to 89 do
begin
MyColor:= MyCanvas.pixels[MyX,MyY];
if ((MyColor/256) / 256) < 193 then
begin
if ((MyColor/256) mod 256) < 115 then
begin
if ((MyColor/256) mod 256) > 86 then
begin
if (MyColor mod 256) < 119 then
begin
if (MyColor mod 256) > 75 then
TmpBool:=true;
end;
end;
end;
end;
if TmpBool then break;
end;
if TmpBool then break;
end;
if TmpBool then result:=MyColor;
WriteLn('FlaxColor = '+IntToStr(MyColor));
end;
//--------------------------------------------------------------------------\\
// GoToField \\
// ALL CREDITS TO Footballdjs, He did this for me \\
//--------------------------------------------------------------------------\\
function GoToField : boolean;
var
x, y, a, b : integer;
spots : TPointArray;
spts : Tpoint;
begin
Status('Going to flax field');
SetRun(True);
GameTab(4);
TopView;
SymbolAccuracy := 0.2;
if (FindSymbol(a, b, 'bank')) then
begin
Mouse(a, b, 5, 5, True);
FFlag(0);
SymbolAccuracy := 0.8;
FindSymbolIn(x, y, 'rare trees', MMx1, MMCy, MMx2, MMy2);
MouseFlag(x-20-random(6), y+20+random(6), 6, 6);
FindSymbolIn(x, y, 'rare trees', 575, 99, 661, 145);
MouseFlag(x+10+random(3), y+20+random(7), 6, 6);
FindColorsTolerance(spots, 10444893, MMx1, MMy1, MMx2, MMy2, 14);
if not(GetArrayLength(spots) > 5) then
begin
MouseFlag(643, 125, 25, 25);
FindColorsTolerance(spots, 10444893, MMx1, MMy1, MMx2, MMy2, 14);
end;
spts := MiddleTPA(spots);
MouseFlag(spts.x, spts.y, 5, 5);
Result := (GetArrayLength(spots) >= 5);
end;
end;
//--------------------------------------------------------------------------\\
// GoToBank \\
//--------------------------------------------------------------------------\\
procedure GoToBank;
var
x, y, a, b, Tries : Integer;
begin
if (Not LoggedIn) then Exit;
TopView;
SetRun(True);
Tries := 0;
if (InvFull) and (FindColorSpiralTolerance(x, y, Fence, 0, 0, 1000, 1000, 10)) then
begin
TopView;
MakeCompass('n');
Status('Heading to bank');
AngleWalk('w',60,True);
AngleWalk('n',60,True);
AngleWalk('n',72,True);
Tries := 0;
repeat
SymbolAccuracy := 0.2 ;
if (not FindSymbol (a, b, 'bank')) then AngleWalk('n', 15, True);
SymbolAccuracy := 0.8;
Tries := Tries + 1;
until (FindSymbol (a, b, 'bank')) or (Tries = 10);
if (Tries = 10) then
begin
WriteLn('Logged out : Lost');
LogOut;
NextPlayer(False);
end;
SymbolAccuracy := 0.8;
Mouse(a, b, random(3), random(3), True);
FFlag(0);
CheckRandoms;
AntiBan;
Status('Reached bank Sucessfully');
end;
end;
//--------------------------------------------------------------------------\\
// DepositFlax \\
//--------------------------------------------------------------------------\\
procedure DepositFlax;
var
x, y, a, b, Tries : Integer;
begin
if (Not LoggedIn) then Exit;
Tries := 0;
SymbolAccuracy := 0.2;
if (FindSymbol(a, b, 'bank')) then
begin
GameTab(4);
SymbolAccuracy := 0.8
repeat
if (FindObjCustom(x, y, ['se','ank','ooth','nk bo'], [BankBooth1,BankBooth2,BankBooth3], 8)) then
begin
CheckRandoms;
Mouse (x, y, random(5), random(5), False);
ChooseOption('uickly');
Wait(2000+random(1000));
if (PinScreen) then
begin
Status('Entering Pin');
repeat
InPin(players[currentplayer].strings[0]);
Tries := Tries + 1;
until (BankScreen) or (Tries = 3)
end;
if (Tries = 3) then
begin
WriteLn('Logged out : Could not enter pin');
Logout;
NextPlayer(False);
Exit;
end;
if (BankScreen) then
begin
Status('Depositing Items');
FixBank;
Deposit(random(29), 28, 2);
IncEx(FlaxCount,28);
LoadsDone := LoadsDone + 1;
end;
end else
Tries := Tries + 1;
until (BankScreen) or (not InvFull) or (Tries = 10);
end;
CheckRandoms;
end;
//--------------------------------------------------------------------------\\
// PickFlax \\
//--------------------------------------------------------------------------\\
procedure PickFlax;
var
x, y, a, b, c, d, Tries : Integer;
begin
if (Not LoggedIn) then Exit;
SetRun(False);
GameTab(4);
AntiBan;
Status('Attempting to pick flax');
if(FindColorSpiralTolerance(a, b, FlaxColorMM, 0, 0, 1000, 1000, 10)) then
begin
Mouse(a, b, 0, 0, True);
repeat
TopView;
MakeCompass('N');
if (FindObjCustom(x, y, ['Pick','Flax','ick','lax'], [Flax1,Flax2,Flax3], 5)) then
begin
Mouse(x, y, random(5), random(5), True);
FFlag(0);
Wait(random(200));
Status('Picking Flax');
CheckRandoms;
end else
Tries := Tries + 1;
until (InvFull) or (Tries = 20);
if (Tries = 20) then
begin
WriteLn('Logged out : Flax is unpickable');
logout;
NextPlayer(False);
Exit;
end;
end;
if (FindSymbol(c, d, 'bank')) and (not InvFull) then
begin
GoToField;
PickFlax;
end;
end;
//--------------------------------------------------------------------------\\
// ProgressReport \\
//--------------------------------------------------------------------------\\
Procedure WriteProggy(Text: String);
begin
if Players[CurrentPlayer].Booleans[0] then AddToReport(Text)
else Writeln(Text)
end;
Procedure Proggy;
begin
SRLRandomsReport;
AddtoReport('');
AddtoReport('');
WriteProggy('!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!!');
WriteProggy('! CodeName: Flax !');
WriteProggy('! Progress Report !');
WriteProggy('!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!!');
WriteProggy('! !');
WriteProggy('! Picked ' + IntToStr(FlaxCount)+' Flax !');
WriteProggy('! !');
WriteProggy('! Completed '+ IntToStr(LoadsDone) +' out of the '+IntToStr(Players[CurrentPlayer].Integers[0])+' loads wanted !');
WriteProggy('! !');
WriteProggy('! Ran for: '+TimeRunning+' !');
WriteProggy('! !');
WriteProggy('!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!!');
end;
//--------------------------------------------------------------------------\\
// _ _ \\
// | \/ | __ _(_)_ __ \\
// | |\/| |/ _` | | '_ \ \\
// | | | | (_| | | | | | \\
// |_| |_|\__,_|_|_| |_| \\
// \\
//--------------------------------------------------------------------------\\
begin
ClearDebug;
ClearReport;
case Random(6) of
0: Disguise('Windows Live Messenger');
1: Disguise('YouTube - Broadcast Yourself');
2: Disguise('MySpace');
3: Disguise('FaceBook');
4: Disguise('Kapersky Rlease 4.1.a build 0251');
5: Disguise('Mozilla Firefox - Redtube'); // LOL change this if you want
end;
SetupSRL;
ActivateClient;
DeclarePlayers;
if LoggedIn then Logout;
LoginPlayer;
repeat
If (not LoggedIn) then Exit;
TopView;
MakeCompass('N');
GoToField;
PickFlax;
GoToBank;
DepositFlax;
Proggy;
Check4Players;
until (false);
end.
——————————————————
<!– END TEMPLATE: formanswers –>