Drakan
2007-06-12 01:21:39
drags111 - SRL Member Application Form
drags111
What is the meaning to life?
–Eat or Be Eaten
Where you Referred to SRL? If yes, by whom?
–no
Programming Knowledge
–Html, VB, Some C++
Other Communitys
–Mopar, Sythe, RSCheata
How Long have You Played Runescape
–about a 1 1/2 years
Are you affilated in anyway with Jagex LTD?
–No
—————————————————–
Please write down a paragraph about Yourself.
–I've been able to script in scar for about 6 months now. I'm ambitious, and can get the job done. I'm available many hours of the day, and im on SRL a lot. I love to script in SCAR and really hope I can be a proud Member of the SRL team.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
MY DEATHWALK! In Alpha staging.
program New;
{.include SRL/srl.scar}
var
Road: Integer;
procedure declare;
begin
SetupSRL;
ActivateClient;
wait(3000);
Road := FindRoadColor;
wait(300);
end;
procedure DeathWalk;
begin
PerfectNorth;
wait(1000);
RadialRoadWalk(Road, 82, 108, 53, 0, 0); //First Corner out of caste walls.
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 311, 349, 68, 0, 0);
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 316, 342, 64, 0, 0); //General Store.
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 332, 365, 67, 0, 0);
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 350, 383, 68, 0, 0); //Second big corner.
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 262, 286, 67, 0, 0); //Farmer in sight.
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 279, 312, 69, 0, 0); //Pass Farmer.
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 245, 277, 68, 0, 0); //Under Windmill.
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 286, 311, 69, 0, 0);
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 245, 286, 69, 0, 0); //In between potatoes and wheat.
Road := FindRoadColor;
wait(300);
SetRun(True);
RadialRoadWalk(Road, 245, 286, 69, 0, 0); //Above wheat.
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 200, 244, 63, 0, 0); //To the left of Wheat.
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 190, 227, 63, 0, 0); //SW of wheat.
Road := FindRoadColor;
wait(300);
SetRun(False);
RadialRoadWalk(Road, 169, 208, 67, -2, 0); //East of red house
Road := FindRoadColor;
wait(300);
RadialRoadWalk(Road, 232, 276, 63, 0, 2); //Next to bank.
end;
begin
declare;
deathwalk;
end.
Trips completed to bank so far: 5
Screw Ups: 1. (I was testing something new. didnt work. didnt like it)
P.S.
Its in alpha stage right now. I'm adding failsafes as best I can for the locations it goes. ;)
{ | |
___|*|______________
__ |_*_ * ______________/
| |_ |*|
| | |____ |_| _
| |/ __ \____ ____| |______
____| | / |/ |/ | ____|
| _ | | / __ | __ |_____ |
| [_] | | | |__|| [__] | |
|_______|_| \_____|\___ |______|
/ /
Script Productions/ /
2006 __/ /
\___/
{ , ,
/ \ /\___/\ / \
| \ ( ) / |
| | \ --\* */-- / | |
|\| | \ / \_/ \ / | |/|
| \ * * / |
\ \ \ Drags111's / / /
\ \ Scripts / /
|\ \ 2007 / /|
\ /
\ /| |\ /
\ / | | \ /
\ / \ /
=======================================
|=======================================|
| ~Version .01~ |
|Script Name: Drags Draynor Netter (DDN)|
|Author: Drags111 |
|What It Does: It will fish and bank |
| shrimp and anchovies at draynor. |
| does not bait fish. |
| |
|Requirements: ScarDIVI 3.06 and SRL 3.7|
|RECOMMENDED!!! Have players that arn't |
| going to be attacked by |
| wizards!!!!!! |
| |
|Setup: Put characters in Draynor Bank |
| in a bank slot and have a net |
| in your inventory FIRST slot |
| and nets in your bank NEAR THE |
| TOP. |
| Do Setup line 43 and Setup |
| Players starting on line 54. |
| |
|POST ALL ERRORS ON SRL OR MSN ME AT |
|Drags111@hotmail.com THANKS! |
=======================================
| Version .02 Changes |
=======================================
| |
| Fixed Whirlpool Detection. |
| Fixed minor banking problem. |
| Added AntiBan features. |
=======================================
}
program DraynorNetter;
{.include SRL/SRL.scar}
{.include SRL/SRL/extended/xDTM.scar}
{.include SRL/SRL/extended/xSymbol.scar}
{.include SRL/SRL/extended/xBank.scar}
{.include srl/srl/misc/playerform.scar}
{.include SRL/SRL/extended/xText.scar}
{.include SRL/SRL/extended/xObject.scar}
{.include SRL/SRL/extended/xAntiBan.scar}
const
NumOfPlayers = 1; //Number of players you will be using.
//Dont Touch Vars!!!!!!!!!!!!!!
var
FishSymbol, BankSymbol, Loacation, WhirlPoolDTM, Whirlpool, Fished, LoadsDone, WhirlpoolCol, net2, FishSpot, i, fishingwhite, Net: Integer; PickedUp, Fishing, banktest, NowFishing: boolean;
procedure DeclarePlayers;
begin
HowManyPlayers := NumOfPlayers;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := ''; //3 Characters of your name DO NOT PUT FIRST LETTER! Example: if name was Zezima put something like ezi or zim.
Players[0].Integer1 := 2; //How many loads you want this player to do.
Players[0].Integer2 := 20; //Max fishing lvl to get to until fisher stops.
Players[0].Loc := ''; //Leave Alone
Players[0].Active := True;
end;
//Colors. Only change if walking/fishing screws up. :)
procedure DeclareStuff;
begin
FishSymbol := 16745504; //Color of the Blue of the fish sumbol
BankSymbol := 1145222; //Color of the DARK yellow on the bank symbol.
fishingwhite := 15978680; //Color of light blue part of fishing spot.
WhirlpoolCol := 12104628; //Color of the whirlpool;
Fished := 0;
LoadsDone := 0;
end;
procedure DeclareDTMs;
begin
net := DTMFromString('78DA63B466626078CC8006189148206D0954F' +
'394801A07A09A9704D47800D5BC25A02600A8E62301354140356F' +
'08A80901AA79815F0D0088550879');
Net2 := DTMFromString('78DA63E4646060E062400126061A60214620F' +
'E0F048CBC400627AA1A170B6D30CD08E533B201096E22D410630E' +
'1BAA1A1B03343520F7B0E33707009D0F083B');
FishSpot := DTMFromString('78DA63FCC4C0C070910105CC38F086410E483' +
'342F98C1F31D5E4B52C4255F399083520BB2E10A1E6127E3500EE' +
'831204') //Credit To Dankness for DTM of the FishSpot! :)
Whirlpool := DTMFromString('78DA6314606060006124B075CF1930CD08E53' +
'37202097154358BD7EC4155C30A240451D5ACDD7204550D0B90E0' +
'4155B37EC7094CBB58D0EC5A8B669720A69AF9AB76A3AA910212E' +
'CA86A761DBA88AA46124870A1AA99B9641BAA1A114CBB566F398A' +
'698E30AA9A85E8EE01859F04AA9A39CBD0ECE2C754337BE956143' +
'5005E201A82');
WhirlPoolDTM := DTMFromString('78DA63D4606460B8C380024E9EBAC02002A41' +
'9A17C466D20EB16AA9A03BBF7A2AA5107B29EA1AAD9B46D27AA1A' +
'6320EB36AA9A43474EA2AA5105B2EEA1AA397FE1128A1A001C7C1' +
'117');
end;
{*******************************************************************************
procedure HandleWhirlPool;
By: Dankness
Description: Finds and Handles Whirlpools by Standing still and waiting
*******************************************************************************}
procedure HandleWhirlPool;
begin
if (FindMSDtm(x, y, WhirlPoolDTM)) then
begin
Status('Whirlpool found!');
WhirlPools := WhirlPools + 1;
Mouse(647, 82, 2, 2, True);
FTWait(50 + Random(15));
repeat
HoverSkill('fishing', False);
if (not (LoggedIn)) then Exit;
FTWait(2 + Random(2));
until (not (FindMSDtm(x, y, WhirlPoolDTM)));
end;
end;
{*******************************************************************************
function WithDrawDTM(DTM,HowMany:integer):boolean;
By: Boreas
Description: temporary until B4
*******************************************************************************}
function WithDrawDTM(DTM, HowMany: integer): boolean;
begin
if not (loggedin) then exit;
if not (FindDTM(DTM, x, y, msx1, msy1, msx2, msy2)) then
exit;
withdraw((((((y - 62) div 38) * 8) + ((x - 79) div 47) + 8) mod 8) + 1,
(((((y - 62) div 38) * 8) + (x - 79) div 47) / 8) + 1, HowMany);
result := true;
end;
{*******************************************************************************
function SimpleBank:boolean;
By: Fawki
Description: Used in Dankness's Netter Originaly from Fawk.
*******************************************************************************}
function SimpleBank: Boolean; // Stolen from Fawki's Lumby Miner
var sx, sy, dx, dy, Mark2, Tries: integer;
begin
SX := MSCX - 20; SY := MSCY;
repeat
sx := Sx - 3;
sy := sy - 10 + Random(10);
MMouse(sx, sy, 0, 0);
if IsUpTextMulti('e Bank', 'Booth', 'ooth') then
begin
GetMousePos(Dx, Dy);
Mouse(Dx, Dy, 0, 0, False);
if ChooseOption(Dx, Dy, 'uickly') then
begin
MarkTime(Mark2);
repeat
Wait(10);
if TimeFromMark(Mark2) > 20000 then
begin
writeln('couldnt find the bank. Exiting');
Exit;
end;
until BankScreen;
end;
Result := True;
Exit;
end;
wait(1);
Tries := Tries + 1;
until (tries > 6)
end;
procedure BankTester;
begin
if not (loggedin) then exit;
SimpleBank;
wait(300);
if not (SimpleBank) then
begin
i := 0
repeat
i := i + 1
OpenBankGlass('db', true, true);
wait(1000);
until (BankScreen) or (i > 10)
end;
if (i > 10) then
begin
Status('Bank not found. Logging out...')
Logout;
wait(300);
Writeln('Bank was not able to be opened.')
Exit;
end;
Closebank;
wait(200);
BankTest := True
i := 0
end;
function FindNet: Boolean;
begin
if not (loggedin) then exit;
Gametab(4);
Status('Looking for net...');
if (FindDTM(Net, x, y, mix1, miy1, mix2, miy2)) then
begin
Writeln('Found DTM of Net In Inventory.');
wait(100);
Status('Net Found')
Result := True;
wait(100);
end;
if not (FindDTM(Net, x, y, mix1, miy1, mix2, miy2)) then
begin
Writeln('Net Not Found In Inventory. Now Checking Bank. Call#1');
Status('Net not found...');
wait(300);
Result := False;
end;
end;
procedure WithdrawNet;
begin
if not (loggedin) then exit;
if not (FindNet) then
begin
Status('Net not found...');
wait(300);
i := i + 1;
SimpleBank;
wait(300);
if not (SimpleBank) then
begin
i := 0
repeat
i := i + 1
OpenBankGlass('db', true, true);
wait(1000);
until (BankScreen) or (i > 10)
end;
i := 0;
FixBank;
Deposit(1, 28, 2);
repeat
i := i + 1;
wait(1000);
WithDrawDTM(Net, 1);
wait(700);
Deposit(2, 28, 2);
Status('Withdrawing: Attempt ' + inttostr(i));
until (FindDTM(Net, x, y, mix1, miy1, mix2, miy2))
CloseBank;
wait(100);
writeln('Withdrew Net');
end;
end;
function AreWeInBank: Boolean;
begin
if not (loggedin) then exit;
MakeCompass('N');
SymbolAccuracy := 0.4;
if (FindSymbol(x, y, 'bank')) or (FindMMColorTol(x, y, BankSymbol, 10)) then
begin
Writeln('Bank Symbol Found On Minimap.');
wait(150);
Mouse(x, y, 1, 1, true);
Flag
Result := True;
Players[CurrentPlayer].Loc := 'Bank';
end;
if not (FindSymbol(x, y, 'bank')) then
begin
Writeln('Bank Symbol Not Found. Please Move Your Character To The Bank. Call#2');
wait(150);
Result := False;
wait(100);
TerminateScript;
end;
end;
procedure WalkTo;
begin
if not (loggedin) then exit;
Status('Walking to fishing spot...');
wait(500);
Gametab(11);
wait(500);
SetRun(true);
wait(500);
MakeCompass('N');
wait(500);
Mouse(627, 109, 1, 1, true);
Flag;
FindSymbol(x, y, 'fish');
wait(500);
Mouse(x, y, 1, 1, true);
Flag;
end;
function AtFish: Boolean;
begin
if not (loggedin) then exit;
if (FindSymbol(x, y, 'fish')) then
begin
Mouse(x, y, 2, 2, true);
FFlag(4);
Writeln('We have arrived at the fishing spot.');
wait(500);
Players[CurrentPlayer].Loc := 'Fish';
Result := True;
end
else
Writeln('Symbol not found. Moving and Checking again.')
Mouse(644, 136, 1, 1, true);
Flag;
if (FindSymbol(x, y, 'fish')) then
begin
Mouse(x, y, 1, 1, true);
Writeln('We have arrived at the fishing spot.');
wait(500);
Players[CurrentPlayer].Loc := 'Fish';
Flag;
end
else
begin
Writeln('Symbol was lost. Checked Twice.')
Logout;
Exit;
end;
end;
procedure BeginFishing;
begin
if not (loggedin) then exit;
i := 0;
repeat
if (FindDTM(FishSpot, x, y, MSX1, MSY1, MSX2, MSY2)) then ;
begin
MMouse(x, y, 1, 1);
wait(500);
if (IsUpText('Net')) then
begin
Mouse(x, y, 1, 1, false);
wait(1000);
ClickOption('Net', 1);
wait(1000);
Fishing := True;
end;
end;
until (Fishing = True) or (i > 10);
end;
function WhirlpoolPresent: Boolean;
begin
if not (loggedin) then exit;
MakeCompass('N');
if (FindDTM(Whirlpool, x, y, 163, 81, 271, 224)) then
begin
Writeln('Found Whirlpool');
Result := True;
end;
if (not (FindDTM(Whirlpool, x, y, 163, 81, 271, 224))) then
begin
Writeln('No Whirlpools :)');
end;
end;
procedure LostNet;
begin
BeginFishing;
if (FindText(x, y, 'ou need', NPCChars, 117, 366, 378, 429)) then
begin
Writeln('Lost Fishing Net');
i := 0;
repeat
i := i + 1;
Writeln('Trying to recover net. Attempt Number: ' + inttostr(i));
if (FindObj(x, y, 'Small fishing net', 2963528, 20)) then
begin
Mouse(x, y, 0, 0, false);
wait(1000);
ClickOption('ake', 1);
Writeln('Recovered Net');
PickedUp := True;
end;
until (PickedUp) or (i > 10);
if (i > 10) then
Fishing := False;
end;
end;
procedure WhirlpoolHandler;
begin
if not (loggedin) then exit;
MakeCompass('N');
wait(500);
Mouse(655, 84, 0, 0, true);
Flag;
Wait(7000 + Random(1000));
if (FindNet) and (AtFish) then
begin
FindSymbol(x, y, 'fish');
wait(500);
Mouse(x, y, 1, 1, true);
Flag;
BeginFishing;
end;
end;
function FishSpotChange: Boolean;
begin
if not (loggedin) then exit;
MakeCompass('N');
wait(1000);
if (FindDTM(FishSpot, x, y, 189, 174, 233, 199)) then
begin
Result := True;
Writeln('Still Fishing :)');
end;
if (not (FindDTM(FishSpot, x, y, 189, 174, 233, 199))) then
begin
Result := False;
Writeln('SpotChanged');
end;
end;
procedure AntiBanning;
begin
Status('AntiBanning');
AntiBan;
RotateEvery(1);
end;
procedure WaitWhileFish;
begin
if not (loggedin) then exit;
repeat
if (WeAreDead) then
begin
Logout;
wait(1000);
Writeln('We Died... That sucks. Most likely wizards. Try training some combat ;)');
Players[CurrentPlayer].Loc := 'Dead'
LostNet;
wait(1000);
ClickToContinue;
wait(1000);
end;
if (not (FishSpotChange)) then
begin
BeginFishing;
end;
if (WhirlPoolPresent) then
begin
WhirlPoolHandler;
end;
wait(1000);
if (ClickToContinue) then
begin
BeginFishing;
end;
wait(1000);
if (FindFight) then
begin
RunAwayDirection('S');
Flag;
wait(9000);
RunBack;
Flag;
FindSymbol(x, y, 'fish');
wait(500);
Mouse(x, y, 1, 1, true);
Flag;
end;
Wait(1000);
AntiBanning;
wait(1000);
if (InvFull) then
begin
Fishing := False;
end;
if (FindNewBox) then
begin
OpenBox;
wait(1000);
SolveBox;
wait(1000);
BeginFishing;
end;
wait(1000);
if not (FindNet) then
begin
LostNet;
end;
Wait(1000);
FindNormalRandoms;
wait(1000);
until (not (Fishing)) or (not (LoggedIn));
end;
procedure WalkBack;
begin
if not (loggedin) then exit;
if (AtFish) then
begin
Mouse(660, 70, 1, 1, True);
Flag;
AreWeInBank;
Flag;
end;
if (not (AtFish)) and (not (AreWeInBank)) then
begin
Writeln('We Are Lost...');
Logout;
Exit;
end;
if (not (AtFish)) or (AreWeInBank) then
begin
AreWeInBank;
end;
end;
procedure DepositFish;
begin
if not (loggedin) then exit;
SimpleBank;
wait(300);
if not (SimpleBank) then
begin
i := 0
repeat
i := i + 1
OpenBankGlass('db', true, true);
wait(1000);
until (BankScreen) or (i > 10)
end;
FixBank;
wait(1000);
Deposit(2, 28, 2);
wait(1000);
CloseBank;
Fished := Fished + 28;
LoadsDone := LoadsDone + 1
end;
procedure ProgressReport;
begin
Writeln('___________________________________')
Writeln('===___Drag`s Draynor Fisher___===')
Writeln(' BETA Version ')
Writeln('---------Progress Report---------')
Writeln('___________________________________')
Writeln('Number of Players: ' + inttostr(NumOfPlayers))
Writeln('Player: ' + Players[CurrentPlayer].Name)
Writeln('Fish Banked: ' + IntToStr(Fished))
Writeln('Loads Done: ' + IntToStr(LoadsDone))
Writeln('Current Players Location: ' + Players[CurrentPlayer].Loc)
Writeln('___________________________________')
Writeln(' Thankyou for using ')
Writeln(' Drag`s Draynor Netter! ')
Writeln('Please Post all errors on forums ')
Writeln('or email me at [email]drags111@hotmail.com[/email]')
Writeln('___________________________________')
end;
procedure MainLoop;
begin
if not (loggedin) then exit;
begin
repeat
AreWeInBank;
FindNet;
if (not (FindNet)) then
begin
WithdrawNet;
end;
if (InvCount > 1) then
begin
i := 0
SimpleBank;
wait(300);
if not (SimpleBank) then
begin
i := 0
repeat
i := i + 1
OpenBankGlass('db', true, true);
wait(1000);
until (BankScreen) or (i > 10)
end;
Fixbank;
wait(1000);
Deposit(2, 28, 2);
Wait(1000);
CloseBank;
wait(1000);
end;
WalkTo;
BeginFishing;
WaitWhileFish;
WalkBack;
DepositFish;
ProgressReport;
if ((loggedin) and ((LoadsDone mod players[currentplayer].integer1) = 0)) then nextplayer(True);
until (False);
end;
end;
begin
SetupSRL;
DeclareDTMS;
DeclarePlayers;
DeclareStuff;
ClearDebug;
ActivateClient;
Wait(2000);
if (not (LoggedIn)) then
LoginPlayer;
Wait(1000);
SetRun(True);
Wait(1000);
MakeCompass('N');
Wait(1000);
BankTester;
if (BankTest) then
repeat
if (not (LoggedIn)) then
LogInPlayer;
MainLoop;
Logout;
NextPlayer(False);
until (False);
end.
——————————————————
<!– END TEMPLATE: formanswers –>