kingstun
2009-03-03 17:06:04
<!– BEGIN TEMPLATE: formanswers –>
kingstun - SRL Member Application Form
kingstun
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Java, PHP, HTML, VB6, .NET
Other Communitys
How Long have You Played Runescape
4-5 Years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
I started playing RuneScape in late 2004, since then I play on or off on my main. I just recently to start to script SCAR and noticed how easy and fun it can be. I just created my third script that which will be used with this application. I am a a faster learner as you may know from my previous application.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
——————————————————
<!– END TEMPLATE: formanswers –>
kingstun - SRL Member Application Form
kingstun
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Java, PHP, HTML, VB6, .NET
Other Communitys
How Long have You Played Runescape
4-5 Years
Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.
I started playing RuneScape in late 2004, since then I play on or off on my main. I just recently to start to script SCAR and noticed how easy and fun it can be. I just created my third script that which will be used with this application. I am a a faster learner as you may know from my previous application.
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
{--------------------------------------------------------------------------------------------------------------------------------------]
_________
| | ______________ ____ ___ __
| _____| | | | | \ \ / /
| | ____ |____ ____| | | \ \ / / ________ ____ _____ ___ _________
| | / \ | | | |_________ \ \ / / | _____| \ \ / \ / / / _____/
| | / \ | | | ____ | \ \/ / | |____ \ \ / \ / / / /____
| |_____ / /\ \ | | | | | | \ | | ____| \ \/ /\ \/ / \______ /
| | / /__\ \ | | | | | | | | | |_____ \ / \ / ______/ /
|_________| /___/ \___\ |______| |____| |____| |______| |________| \______/ \_____/ |_______/
BETA
By Kingstun!
[**************************************************************************************************************************************]
[ >>>> DESCRIPTION <<<< ]
[**************************************************************************************************************************************]
This script will go to Catherby Yews and cut it and bank it! This script has good anti-ban and anti-randoms!
[**************************************************************************************************************************************]
[ >>>> INSTRUCTIONS <<<< ]
[**************************************************************************************************************************************]
1. Make your sure account is in Catherby Bank.
2. Fill out Lines 46-54!
3. Fill out Declare Players.
4. Hit Run and Enjoy!
[**************************************************************************************************************************************]
[ >>>> FEATURES <<<< ]
[**************************************************************************************************************************************]
Anti-Ban MultiPlayer
Anti-Randoms SRL Stats
Custom Banking Kickass Form comming Soon!
[**************************************************************************************************************************************]
[ >>>> BUGS <<<< ]
[**************************************************************************************************************************************]
Script still needs alot of Testing!
None as of yet!
[**************************************************************************************************************************************]
[ >>>> CREDITS <<<< ]
[**************************************************************************************************************************************]
BumbleBee and DansTheMan- AutoResponder
Tootoot222 and Raymond- NextPlayer2 Procedure
Tootoot222- Helped me alot in IRC!
SRL Dev- Without them, no RS Autoing :)
TorrentOfFlame- His Tut On FindObjTPAs
ZephyrsFury- His Intro Layout (Hope this is what it is called)
[**************************************************************************************************************************************]
[ >>>> UP COMMING SCRIPTS <<<< ]
[**************************************************************************************************************************************]
1. Expect A Guild Miner
[**************************************************************************************************************************************]
[ I DO NOT AND WILL NOT TAKE RESPONSIBILITY FOR ANY ACTION TAKEN AGAINST YOUR ]
[ ACCOUNT(S) AS A RESULT OF USING MY SCRIPT. USE IT AT YOUR OWN RISK!!! ]
[ ]
[ DO NOT POST THIS SCRIPT ON ANY OTHER WEBSITES WITHOUT MY KNOWLEDGE ]
[ AND CONSENT OR ELSE THE SCRIPT WILL NOT BE UPDATE ANYMORE. ]
Have any Questions? Then PM Kingstun ON srl-forums.com. ]
[**************************************************************************************************************************************}
program CathYews;
{.include SRL/SRL/Misc/SMART.Scar}
{.include SRL/SRL.Scar}
{.include srl/srl/skill/woodcutting.scar}
//Read the stuff on the right then fill out this!\\
const
World = 2; //World to login into Using SMART
LoadsToDo = 39; //How many loads before switching characters
SRLStatsID = ''; //Your SRL Stats ID
SRLStatsPass = ''; //Your SRL Stats Password
Ver = '0.4'; //DO NOT CHANGE THIS!
HowLongToSleep = 15; //How many minutes to sleep
Smart = True; //Using SMART?
Signed= True; //Want to use a Signed client in SMART?
Responder = True; //Want use the responder?
Skill = 'Woodcutting'; //Choose a skill to level up from the lamp random (Skill must be perfectly spelled with the first letter as a capital)
{*****************************************************************************DO NOT TOUCH!*************************************************************}
var
x, y, Loads, TreeDTM, BankDTM, ChatTimed, nap, wclvl, logsdropped, OriginalWcLvl, CurrentWcLvl, LevelUps, ExpGained :Integer;
ExpGain :Extended;
ChatMsg, JustTalked: Byte;
{*******************************************************************************************************************************************************}
procedure DeclarePlayers;
begin
HowManyPlayers := 1; //Change this to number players you got
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name := ''; // Enter your Username here
Players[0].Pass := ''; // Enter your password here
Players[0].Nick := ''; // Enter 3 - 4 letters from your username here
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; }
end;
//-------------------------------DO NOT TOUCH ANYTHING BELOW THIS!----------------------------\\
procedure AntiBannage;
begin
case Random(20) of
0: MMouse(0, 0, 700, 500);
1:
begin
case Random(10) of
0: Hoverskill('Woodcutting', false);
1: Hoverskill('Mining', false);
end;
end;
2: BoredHuman;
3: RandomMovement;
4: PickupMouse;
5:
begin
GameTab(random(10));
wait(3500 + Random(1000));
GameTab(4);
end;
end;
end;
{*******************************************************************************
procedure NextPlayer2(Active: Boolean);
By: Dankness and modified by Ron and by Raymond and Tootoot222
Description: Logs in the next player.
Boolean: True - Current player is ok. False - Current player is false.
Doesn't go into an infinate loop when all players are false
*******************************************************************************}
procedure NextPlayer2(Active: Boolean);
begin
if RandomPlayer then
RandomNextPlayer(Active)
else
begin
WriteLn('NextPlayer2(Active: ' + BoolToStr(Active)+ ');');
Players[CurrentPlayer].Active := Active;
Logout;
PlayerCurTime := (GetSystemTime div 1000);
Players[CurrentPlayer].Worked := Players[CurrentPlayer].Worked +
((PlayerCurTime - PlayerStartTime) / 60);
if(AllPlayersInactive) then
Exit;
CurrentPlayer := (CurrentPlayer + 1) mod Length(Players);
while Players[CurrentPlayer].Active = False do
CurrentPlayer := (CurrentPlayer + 1) mod Length(Players);
SRL_Logs := SRL_Logs + 1;
LoginPlayer;
end;
end;
//Anti-Random\\
procedure AntiRandoms;
begin
FindNormalRandoms;
If(FindFight) Then
begin
SetRun(True);
RunAway('N', True, 1, 15000 + random(5000));
end;
if (FindEnt(x, y, True)) then
begin
Mouse(MMCX + 3, MMCY - 4, 3, 3, true);
wait(1000);
repeat
wait(100+random(100));
FindNormalRandoms;
until not (FindEnt(x, y, True))
end;
LampSkill := skill;
end;
function Responses: integer; //Credits to Bumblebee and DansTheMan
var
level, laugh, noob, auto, greet: TStringArray;
begin
if (JustTalked = 1) then
Exit;
level := ['lvl', 'level', 'Woodcut', 'Wcing', 'Wc', 'Woodcutting'];
laugh := ['Lol', 'Rofl', 'Lawl', 'Haha', 'funny', 'Lmao', 'Lmfao'];
noob := ['noob', 'Nub', 'N00b', 'Nooblet'];
Auto := ['macro', 'autoer', 'cheater', 'bot', 'autoing'];
greet := ['Hi', 'Hello', 'Hey', 'Sup', 'Howdy', 'Hiya'];
if (InChatArr(level)) then
begin
if (ChatMsg = 1) then
Exit;
case (Random(4)) of
0: TypeSend('My WC lvl is ' +
IntToStr(Players[CurrentPlayer].Integers[2]));
1: TypeSend('Wcing is ' + IntToStr(Players[CurrentPlayer].Integers[2]) +
' you?');
2: TypeSend('I have ' + IntToStr(Players[CurrentPlayer].Integers[2]) +
' wcing');
3: IntToStr(Players[CurrentPlayer].Integers[2])
end;
ChatMsg := 1;
JustTalked := 1;
Exit;
end;
if (InChatArr(laugh)) then
begin
if (ChatMsg = 2) then
Exit;
case (Random(6)) of
0: TypeSend('lol');
1: TypeSend('lawl');
2: TypeSend('rofl');
3: TypeSend('haha');
4: TypeSend('lmao');
5: TypeSend('lmfao');
end;
ChatMsg := 2;
JustTalked := 1;
Exit;
end;
if (InChatArr(Noob)) then
begin
if (ChatMsg = 3) then
Exit;
case (Random(4)) of
0: TypeSend('Your A Noob');
1: TypeSend('NubCake');
2: TypeSend('Nooob');
3: TypeSend('Nubz');
end;
ChatMsg := 3;
JustTalked := 1;
Exit;
end;
if (InChatArr(Auto)) then
begin
if (ChatMsg = 4) then
Exit;
case (Random(5)) of
0: TypeSend('im not bot');
1: TypeSend('haha bots are lame');
2: TypeSend('whos bot?');
3: TypeSend('macros are lame');
4: TypeSend('autoer?');
end;
ChatMsg := 4;
JustTalked := 1;
Exit;
end;
if (InChatArr(Greet)) then
begin
if (ChatMsg = 5) then
Exit;
case (Random(7)) of
0: TypeSend('hello');
1: TypeSend('hey');
2: TypeSend('wut up');
3: TypeSend('sup');
4: TypeSend('hiya');
5: TypeSend('how goes it');
6: TypeSend('whats up?');
end;
ChatMsg := 5;
JustTalked := 1;
Exit;
end;
Result := 1;
end;
procedure Chat; //Credits BumbleeBee and DansTheMan
var
LastChat: Integer;
begin
if not (Players[CurrentPlayer].booleans[2]) then
Exit;
LastChat := ChatMsg;
if (TimeFromMark(ChatTimed) > 39999 + RandomRange(-12999, 4999)) then
ChatMsg := 0;
ChatMsg := Responses;
if (ChatMsg > LastChat) then
MarkTime(ChatTimed);
if (ChatMsg > 0) then
ReportVars[0] := ReportVars[0]
+ 1;
end;
procedure proggy;
begin
ClearDebug;
Writeln('***************Cath Yews By Kingstun****************')
Writeln('|The script has been running for ' + TimeRunning + '. ');
Writeln('|Logs Chopped: ' + IntToStr(LogsDropped) + '');
Writeln('|Starting Wc Lvl: ' + InttoStr(OriginalWcLvl) +'');
Writeln('|Current Wc Lvl: ' + IntToStr(CurrentWcLvl) + '');
Writeln('|' + IntToStr(Loads) + ' loads done so far!');
Writeln('*************************************************');
end;
procedure CheckVer; //NaumanAkhlaQ's- Modified a Little
var
Version : String;
begin
Version := GetPage('http://thewindowsforum.co.cc/ver.txt');
ReportVars[1] := ReportVars[1] + 1;
If (Version = Ver) Then
begin
WriteLn('Script up to date!');
end else
begin
WriteLn('Please get the update version!');
TerminateScript;
end;
end;
procedure sleepp;
begin
if(not(LoggedIn)) then
Exit;
if(TimeFromMark(nap) > HowLongToSleep * 60000) then
begin
logout;
sleep(15 * 60000 + random(15 * 60000));
loginplayer;
Marktime(nap);
end;
end;
procedure WalkToYews;
var
TAngle: Extended;
begin
MakeCompass('N');
TreeDTM := DTMFromString('78DA635462646030076264D003A160A28C8A4' +
'09601AA1A565634359A98E670B16331C70E550D1B039A1A3920CB' +
'14558D84A7145C0D13100300279202FB');
RadialWalk(FindRoadColor, 243, 250, 85, -1, 0);
RadialWalk(FindRoadColor, 295, 315, 90, -1, 0);
RadialWalk(206, 225, 315, 80, -1, 0);
if (FindSymbol(x, y, 'tree')) then
begin
Mouse(x, y, 5, 5, True);
Flag;
Writeln('Walked to Yew!');
FreeDTM(TreeDTM);
end else
begin
if FindDTMRotated(TreeDTM, X, Y, 664, 29, 689, 58, -pi, pi, 0.2, TAngle) then
begin
Flag;
Writeln('Walked to Yews Using FailSafe :/!');
end;
FreeDTM(TreeDTM);
end;
end;
procedure WalkToBank;
var
BAngle, SA : Extended;
begin
MakeCompass('N');
AntiRandoms;
BankDTM := DTMFromString('78DA63EC606460D8C980021E5D9000D38C503' +
'E2348CD6654357F3F3761AAD98BAAE6DD191D5435FD40D62E5435' +
'3C4088A2A611D33D0CCC9CA86A7A81AC4DA84A823CBD50D400008' +
'8F50EC1');
RadialWalk(206, 0, 90, 66, -1, 0);
RadialWalk(FindRoadColor, 90, 180, 75, -1, 0);
RadialWalk(FindRoadColor, 135, 180, 80, -1, 0);
SA:= SymbolAccuracy;
SymbolAccuracy:= 0.4;
if (FindSymbol(x, y, 'bank')) then
begin
Mouse(x, y, 5, 5, True);
SymbolAccuracy:= SA;
Flag;
Writeln('Walked to Bank!');
end else
begin
if FindDTMRotated(BankDTM, X, Y, 664, 29, 689, 58, -pi, pi, 0.2, BAngle) then
begin
Flag;
Writeln('Walked to Bank Using FailSafe :/!');
end;
FreeDTM(BankDTM);
end;
end;
procedure YewCutter;
begin
MakeCompass('N');
if (not LoggedIn) then
Exit;
MouseSpeed := RandomRange(13, 16);
if FindObjTPA(x, y, 5344899, 30, 2, 15, 25, 10, ['ew', 'yew', 'ye']) then
begin
repeat
if not (LoggedIn) then
begin
NextPlayer2(False);
LoginPlayer;
end;
Chat;
FindObjTPA(x, y, 2381645, 30, 2, 15, 25, 10, ['ew', 'yew', 'ye'])
Mouse(x, y, 4, 4, True);
Wait(100 + Random(300));
GetMousePos(x, y);
Wait(100 + Random(200));
case Random(25) of
0 : begin
Mouse(x, y, 4, 4, False);
AntiBannage;
AntiRandoms;
Chat;
Wait(100 + Random(200));
ChooseOption('hop');
WriteLn('Chopping Tree Using R Click.');
GetMousePos(x, y);
end;
1 : begin
Mouse(x, y, 4, 4, True);
AntiBannage;
AntiRandoms;
Chat;
WriteLn('Chopping Tree Using L Click.');
GetMousePos(x, y);
end;
end
until (Invfull);
ReportVars[2] := ReportVars[2] + 28;
Wait(2000 + Random(400));
AntiRandoms;
AntiBannage;
end;
end;
procedure Banking;
begin
if FindObjTPA(x, y, 7442848, 30, 2, 15, 25, 10, ['anker', 'nker', 'nker']) then
begin
Mouse(x, y, 0, 0, False);
Wait(100 + Random(200));
ChooseOption('ickly');
WriteLn('Banking!');
end;
if (BankScreen) or (PinScreen) then
begin
if (PinScreen) then
begin
InPin(IntToStr(Players[CurrentPlayer].Integers[1]));
Wait(600 + Random(100));
end;
if (BankScreen) then
begin
Deposit(2, 28, true);
end;
begin
CloseBank;
Wait(250 + random(150));
AntiRandoms;
end;
end;
end;
procedure GetOriginalWcLevel;
begin
GameTab(2);
OriginalWcLvl := GetSkillLevel('Woodcutting');
if(wclvl>59) then
begin
writeln('Your woodcutting level is not high enough to chop yews. Get it up to 60 then you can use this script.');
Logout;
NextPlayer2(False);
Exit;
end;
end;
procedure GetCurrentWcLevel;
begin
GameTab(2);
CurrentWcLvl := GetSkillLevel('Woodcutting');
end;
Procedure HowManyLevelsGained;
begin
GetCurrentWcLevel;
LevelUps := CurrentWcLvl - OriginalWcLvl;
ExpGain := LogsDropped * 175;
ExpGained := Round(ExpGain);
ReportVars[3] := LevelUps;
ReportVars[4] := ExpGained;
end;
procedure FinalProggy;
begin
proggy;
Writeln('|You have leveled up ' + IntToStr(LevelUps) + ' |');
end;
procedure MainLoop;
begin
CheckVer;
MouseSpeed := 12;
SmartSetupEx(37, false, Signed, false);
Settargetdc(smartgetdc);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1118604);
ScriptID := '1193';
SRLID := SRLStatsID;
SRLPassword := SRLStatsPass;
ActivateClient;
DeclarePlayers;
repeat
if not loggedin then Loginplayer;
SetAngle(True);
MarkTime(nap);
Loads := 0;
GetOriginalWcLevel;
repeat
WalkToYews;
YewCutter;
WalkToBank;
Banking;
SRLRandomsReport;
sleepp;
GetCurrentWcLevel;
proggy;
AntiRandoms;
until Loads > LoadsToDo;
NextPlayer2(True);
until(AllPlayersinactive);
FinalProggy;
SRLRandomsReport;
Writeln('########################################################');
Writeln('Please post proggress reports on the thread for updates.');
Writeln(' Made by KingstuN! ');
Writeln('########################################################');
end;
begin
SetupSRL;
MainLoop;
end.
——————————————————
<!– END TEMPLATE: formanswers –>