LordGregGreg
2007-06-10 23:34:33
<!– BEGIN TEMPLATE: formanswers –>
lordgreggreg1 - SRL Member Application Form
lordgreggreg1
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Java, Verilog, SPIM, ActionScript, C++, DHTML, Some javascript, some php
Other Communitys
rscheata (ive been there like, mabey twice, no posts)
How Long have You Played Runescape
~.5Years
Are you affilated in anyway with Jagex LTD?
No Comment
—————————————————–
Please write down a paragraph about Yourself.
Ok, really quick, I have always been a programmer, It is what I love to do, and I do it all of the time for fun. When I was a kid, I made programs for my ti-83 that my teacher were begging me for. I have all of my (recent) learning based in Java, but I am much more advanced than being tied down to one language, I was able to learn C++ in less than a week to a level that allowed me to tutor my fiancee. My mind thinks programming, and I see things how the computer would. I am currently working on my masters degree in Electronic Engineering at the University of Texas at Dallas. I have programmed everything from very high level java and php applications, down to the nitty gritty, like a twenty four bit adder/subtracter/multiplier/divider out of the actual gates. If you would like a few of my sample applications (they will be java based) just let me know, a few of them are even professional grade!
Right now I am in summer school, and I have a bit more extra time then normal. I live with my fiancee and I support myself with a Job, but even then, I am always in the habit of staying up till 2 am programing something silly. (My newest project is a java based mail receiver and sender, is a goof off application, but I plan to use it to create a web based pizza ordering form, that will send applications to an email, and then a client program at the store to automatically print them out/add then to the system).
I feel that I really can help out this community, I love the ideas behind it, and It's really the only reason why I play this game. Once I get a few scripts going with the additional SRL waffles (shh) I plan to immediately start working and developing useful library's myself.
Oh, another thing, I learn fast. (But I have obviously already learned pascal and srl)
Oh, and I am pretty friendly, (I don't even get frustrated when my fiencee is on her time of the month!), So youre really not going to be able to make me mad.
I'm not bad at tutoring people either, I don't mind it, I do it alot at school, and I have even taught Dan Cardin the power and how to use DDTM's.
Oh yeah, go to http://www.srl-forums.com/forum/auto-walk-varock-t12572p1.html
if you want to download my older versions, see how I think, and/or see how fast I work.
Enough talk! Time for something self explanatory.
P.s. The meaning of life? Why, to create/code it ofcourse! :P
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
I still have a few things I plan to do, like may be implement a ddtm check (or sound check :) ) for varock. But I am happy with this now.
First script by the way, It demonstrates everything I have ever heard that I should know to become a member (thanks JAD) and a little bit more.
——————————————————
<!– END TEMPLATE: formanswers –>
lordgreggreg1 - SRL Member Application Form
lordgreggreg1
What is the meaning to life?
Where you Referred to SRL? If yes, by whom?
no
Programming Knowledge
Java, Verilog, SPIM, ActionScript, C++, DHTML, Some javascript, some php
Other Communitys
rscheata (ive been there like, mabey twice, no posts)
How Long have You Played Runescape
~.5Years
Are you affilated in anyway with Jagex LTD?
No Comment
—————————————————–
Please write down a paragraph about Yourself.
Ok, really quick, I have always been a programmer, It is what I love to do, and I do it all of the time for fun. When I was a kid, I made programs for my ti-83 that my teacher were begging me for. I have all of my (recent) learning based in Java, but I am much more advanced than being tied down to one language, I was able to learn C++ in less than a week to a level that allowed me to tutor my fiancee. My mind thinks programming, and I see things how the computer would. I am currently working on my masters degree in Electronic Engineering at the University of Texas at Dallas. I have programmed everything from very high level java and php applications, down to the nitty gritty, like a twenty four bit adder/subtracter/multiplier/divider out of the actual gates. If you would like a few of my sample applications (they will be java based) just let me know, a few of them are even professional grade!
Right now I am in summer school, and I have a bit more extra time then normal. I live with my fiancee and I support myself with a Job, but even then, I am always in the habit of staying up till 2 am programing something silly. (My newest project is a java based mail receiver and sender, is a goof off application, but I plan to use it to create a web based pizza ordering form, that will send applications to an email, and then a client program at the store to automatically print them out/add then to the system).
I feel that I really can help out this community, I love the ideas behind it, and It's really the only reason why I play this game. Once I get a few scripts going with the additional SRL waffles (shh) I plan to immediately start working and developing useful library's myself.
Oh, another thing, I learn fast. (But I have obviously already learned pascal and srl)
Oh, and I am pretty friendly, (I don't even get frustrated when my fiencee is on her time of the month!), So youre really not going to be able to make me mad.
I'm not bad at tutoring people either, I don't mind it, I do it alot at school, and I have even taught Dan Cardin the power and how to use DDTM's.
Oh yeah, go to http://www.srl-forums.com/forum/auto-walk-varock-t12572p1.html
if you want to download my older versions, see how I think, and/or see how fast I work.
Enough talk! Time for something self explanatory.
P.s. The meaning of life? Why, to create/code it ofcourse! :P
——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted
I still have a few things I plan to do, like may be implement a ddtm check (or sound check :) ) for varock. But I am happy with this now.
First script by the way, It demonstrates everything I have ever heard that I should know to become a member (thanks JAD) and a little bit more.
{=========================================================================]
[ Greg's Anywhere to Varock Walker ]
[ ]
[ NAME : Greg's Varock Walker ]
[ WRITER : Greg H (lordgreggreg) ]
[ CATEGORY : Walker ]
[ DESCRIPTION : Takes you from "anywhere" to varock center ]
[ USAGE : For any death, or if you get lost. ]
[ AUTOCOLOR : Yes ]
[ CONTACT : lordgreggreg[at]gmail[dotcom] ]
[ ]
[=========================================================================]
[ Special Thanks and Credits ]
[ SRL Developers: Thanks you SO much for an Amazing! Library!! ]
[ YAKMAN : For a genius tool for implementing radials!! ]
[ FAWKI : For this template, tutorials, and various f(n)s ]
[ WIZZUP? : Origonal Inspiration plus srl/magic and walk ]
[ TARAJUNKY : Almost All autoColor methods ]
[ LORAX : Compass functionality ]
[ STUPID3OOO : Various mission critical functions (symbol) ]
[ DRUNKENOLDMA : lots of very very good example code...Oh wait.. ]
[ : she didn't write that code did she? Oooo. rofl ]
[ JAD : A really good general tutorial ]
[ NIELSIE95 : A Great autoColor tutorial ]
[ RKROXPUNK : Idea to use DDTMs for walking ]
[ KOOLDUDE : Coding cleanup concerning const and var declaratn ]
[ KAUTKTO : Debugging and alerting me of in precise ddtm ]
[ JAGEX : Ofcourse, for such a wonderfull and challenging ]
[ Game to script for :) ]
[ Many Many more: I have tried to rember and credit people for any ]
[ ideas and/or code I have gotten. If I forgot you ]
[ I am terribly sorry!!! and please let me know! ]
[ ]
[ ]
[=========================================================================]
[ This is my first script, please let me know of any bugs ]
[=========================================================================]
[ Instructions. ]
[=========================================================================]
[ 1. USE Runescape with Low Detail, Very Bright. ]
[ 2. Set your Screen to 32 bit TRUE color. ]
[ 3. Be sure you have SRL 3.6 or 4.0 and DIVI 3.06 ]
[ 4. Set Playernames and Passwords in DeclarePlayers. ]
[ 5. Set Location's to 'Anywhere' and watch capitalization ]
[ 6. SET HOWMANYPLAYERS inside DeclarePlayers ]
[ 7. Start script Logged Out! ]
[=========================================================================}
program GregsWalker;
{.include SRL/SRL.scar}
{.include SRL/SRL/skill/Magic.scar}
//********************* Set These Constants if Needed *******************//
const
StartPlayer = 0; // Determines who will play first
Debugging = True; // Determines whether debug talking will show
//**********************RuneScape Constants*******************************//
const
AreaSize = 1;
AreaShape = 0;
TreeColor = 1336109;//83749?
RockColor = 4472654;
TreeTolerance = 30;
var
RoadTDTM, VarockTDTM, TreeTDTM, BridgeTDTM, ChickenTDTM: TDTM;
CGx, CGy, quack: Integer;
RoadDTM, VarockDTM, TreeDTM, BridgeDTM, ChickenDTM: Integer;
Tolerance: Integer;
WhichAngle: Extended;
CGMainPoint, VMainPoint, CMainPoint, TMainPoint, BMainPoint: TDTMPointDef;
DTMSubPoints: array[0..5] of TDTMPointDef;
DTMVSubPoints: array[0..7] of TDTMPointDef;
DTMTSubPoints: array[0..5] of TDTMPointDef;
DTMCSubPoints: array[0..2] of TDTMPointDef;
DTMBSubPoints: array[0..3] of TDTMPointDef;
//************************************************************************//
const
VersionNumber = '2.5 beta';
//************************************************************************//
Procedure DeclarePlayers;
begin
HowManyPlayers := 5; // Set Number of Players here.
NumberOfPlayers(HowManyPlayers); // Sets the Players Array Length;
CurrentPlayer := StartPlayer; // CurrentPlayer = Array Index
Players[0].Name := 'Lauras my';
Players[0].Pass := 'kitten';
Players[0].Nick := 'fhawgdas';
Players[0].Loc := 'Anywhere';
Players[0].Skill := '';
Players[0].Active := True;
Players[1].Name := 'Dont';
Players[1].Pass := 'waste';
Players[1].Nick := '';
Players[1].Loc := 'Anywhere';
Players[1].Skill := '';
Players[1].Active := True;
Players[2].Name := 'Time';
Players[2].Pass := 'or';
Players[2].Nick := '';
Players[2].Loc := 'Anywhere';
Players[2].Skill := '';
Players[2].Active := True;
Players[3].Name := 'Time';
Players[3].Pass := 'will';
Players[3].Nick := '';
Players[3].Loc := 'Anywhere';
Players[3].Skill := '';
Players[3].Active := True;
Players[4].Name := 'Waste';
Players[4].Pass := 'YOU!';
Players[4].Nick := '';
Players[4].Loc := 'Anywhere';
Players[4].Skill := '';
Players[4].Active := True;
writeln(IntToStr(HowManyPlayers) + ' Players');
end;
//************************************************************************//
Function Greg(thetext: String): Boolean;
Begin
if (Debugging) then
Writeln(thetext);
Result := True;
End;
//************************************************************************//
function FindFastRandoms: Boolean; //By WT-Fakawi.
var
i: Integer;
begin
for i := 1 to 8 do
begin
case I of
1: if FindDead then
Result := True;
2: if FindMod then
Result := True;
3: if FindMime then
Result := True;
4: if FindMaze then
Result := True;
5: if FindQuiz then
Result := True;
6: if FindDemon then
Result := True;
7:
begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
8:
begin
if InBlack then
begin
Result := True;
Players[CurrentPlayer].loc := 'InBlack';
Logout;
Exit;
end;
end;
9: RC;
end;
wait(1);
end;
end;
//************************************************************************//
function FindGWestVarrockRoadColor(RX1, RY1, RX2, RY2: Integer): Integer;
//Modified from WT-Fakawi
var
c, TX, TY, WestVarrockRoad: Integer;
begin
WestVarrockRoad := BitmapFromString(8, 6, 'z78DA337734B73037341F257' +
'190007D1D3ED1');
while (c < 60) do
begin
c := c + 2;
if FindBitmapToleranceIn(WestVarrockRoad, TX, TY, RX1, RY1, RX2, RY2, c) then
begin
RoadColor := GetColor(TX, TY);
Greg('Gregs new raod color is ' + IntToStr(RoadColor));
Result := RoadColor;
break;
end;
end;
if Result = 0 then
WriteLn('ERROR: RoadColor NOT Found');
FreeBitmap(WestVarrockRoad);
end;
//************************************************************************//
procedure SetRoadGDTM;
begin
CGMainPoint.x := 682;
CGMainPoint.y := 79;
CGMainPoint.areasize := 1;
CGMainPoint.areashape := 0;
CGMainPoint.color := 7830912;
CGMainPoint.tolerance := 255; // Any Color
DTMSubPoints[0].x := 666;
DTMSubPoints[0].y := 79;
DTMSubPoints[0].areasize := AreaSize;
DTMSubPoints[0].areashape := AreaShape;
DTMSubPoints[0].color := RoadColor;
DTMSubPoints[0].tolerance := Tolerance;
DTMSubPoints[1].x := 672;
DTMSubPoints[1].y := 83;
DTMSubPoints[1].areasize := AreaSize;
DTMSubPoints[1].areashape := AreaShape;
DTMSubPoints[1].color := RoadColor;
DTMSubPoints[1].tolerance := Tolerance;
DTMSubPoints[2].x := 700;
DTMSubPoints[2].y := 76;
DTMSubPoints[2].areasize := AreaSize;
DTMSubPoints[2].areashape := AreaShape;
DTMSubPoints[2].color := RoadColor;
DTMSubPoints[2].tolerance := Tolerance;
DTMSubPoints[3].x := 708;
DTMSubPoints[3].y := 81;
DTMSubPoints[3].areasize := AreaSize;
DTMSubPoints[3].areashape := AreaShape;
DTMSubPoints[3].color := RoadColor;
DTMSubPoints[3].tolerance := Tolerance;
DTMSubPoints[4].x := 714;
DTMSubPoints[4].y := 95;
DTMSubPoints[4].areasize := AreaSize;
DTMSubPoints[4].areashape := AreaShape;
DTMSubPoints[4].color := RoadColor;
DTMSubPoints[4].tolerance := Tolerance;
DTMSubPoints[5].x := 716;
DTMSubPoints[5].y := 77;
DTMSubPoints[5].areasize := AreaSize;
DTMSubPoints[5].areashape := AreaShape;
DTMSubPoints[5].color := RoadColor;
DTMSubPoints[5].tolerance := Tolerance;
RoadTDTM.MainPoint := CGMainPoint;
RoadTDTM.SubPoints := DTMSubPoints;
RoadDTM := AddDTM(RoadTDTM);
end;
//************************************************************************//
procedure SetVarockGDTM;
begin
VMainPoint.x := 660;
VMainPoint.y := 84;
VMainPoint.areasize := 1;
VMainPoint.areashape := 0;
VMainPoint.color := 7830912;
VMainPoint.tolerance := 255; // Any Color
DTMVSubPoints[0].x := 609;
DTMVSubPoints[0].y := 54;
DTMVSubPoints[0].areasize := AreaSize;
DTMVSubPoints[0].areashape := AreaShape;
DTMVSubPoints[0].color := RoadColor;
DTMVSubPoints[0].tolerance := Tolerance;
DTMVSubPoints[1].x := 602;
DTMVSubPoints[1].y := 83;
DTMVSubPoints[1].areasize := AreaSize;
DTMVSubPoints[1].areashape := AreaShape;
DTMVSubPoints[1].color := RoadColor;
DTMVSubPoints[1].tolerance := Tolerance;
DTMVSubPoints[2].x := 618;
DTMVSubPoints[2].y := 125;
DTMVSubPoints[2].areasize := AreaSize;
DTMVSubPoints[2].areashape := AreaShape;
DTMVSubPoints[2].color := RoadColor;
DTMVSubPoints[2].tolerance := Tolerance;
DTMVSubPoints[3].x := 645;
DTMVSubPoints[3].y := 119;
DTMVSubPoints[3].areasize := AreaSize;
DTMVSubPoints[3].areashape := AreaShape;
DTMVSubPoints[3].color := RoadColor;
DTMVSubPoints[3].tolerance := Tolerance;
DTMVSubPoints[4].x := 637;
DTMVSubPoints[4].y := 53;
DTMVSubPoints[4].areasize := AreaSize;
DTMVSubPoints[4].areashape := AreaShape;
DTMVSubPoints[4].color := RoadColor;
DTMVSubPoints[4].tolerance := Tolerance;
DTMVSubPoints[5].x := 701;
DTMVSubPoints[5].y := 79;
DTMVSubPoints[5].areasize := AreaSize;
DTMVSubPoints[5].areashape := AreaShape;
DTMVSubPoints[5].color := RoadColor;
DTMVSubPoints[5].tolerance := Tolerance;
DTMVSubPoints[6].x := 697;
DTMVSubPoints[6].y := 50;
DTMVSubPoints[6].areasize := AreaSize;
DTMVSubPoints[6].areashape := AreaShape;
DTMVSubPoints[6].color := RoadColor;
DTMVSubPoints[6].tolerance := Tolerance;
DTMVSubPoints[7].x := 705;
DTMVSubPoints[7].y := 104;
DTMVSubPoints[7].areasize := AreaSize;
DTMVSubPoints[7].areashape := AreaShape;
DTMVSubPoints[7].color := RoadColor;
DTMVSubPoints[7].tolerance := Tolerance;
VarockTDTM.MainPoint := VMainPoint;
VarockTDTM.SubPoints := DTMVSubPoints;
VarockDTM := AddDTM(VarockTDTM);
end;
//************************************************************************//
procedure SetTreeGDTM;
begin
TMainPoint.x := 693;
TMainPoint.y := 39;
TMainPoint.areasize := 1;
TMainPoint.areashape := 0;
TMainPoint.color := 2181983;
TMainPoint.tolerance := 255; // Any Color
DTMTSubPoints[0].x := 650;
DTMTSubPoints[0].y := 29;
DTMTSubPoints[0].areasize := AreaSize;
DTMTSubPoints[0].areashape := AreaShape;
DTMTSubPoints[0].color := TreeColor;
DTMTSubPoints[0].tolerance := TreeTolerance;
DTMTSubPoints[1].x := 634;
DTMTSubPoints[1].y := 27;
DTMTSubPoints[1].areasize := AreaSize;
DTMTSubPoints[1].areashape := AreaShape;
DTMTSubPoints[1].color := TreeColor;
DTMTSubPoints[1].tolerance := TreeTolerance;
DTMTSubPoints[2].x := 619;
DTMTSubPoints[2].y := 31;
DTMTSubPoints[2].areasize := AreaSize;
DTMTSubPoints[2].areashape := AreaShape;
DTMTSubPoints[2].color := TreeColor;
DTMTSubPoints[2].tolerance := TreeTolerance;
DTMTSubPoints[3].x := 608;
DTMTSubPoints[3].y := 40;
DTMTSubPoints[3].areasize := AreaSize;
DTMTSubPoints[3].areashape := AreaShape;
DTMTSubPoints[3].color := TreeColor;
DTMTSubPoints[3].tolerance := TreeTolerance;
DTMTSubPoints[4].x := 658;
DTMTSubPoints[4].y := 52;
DTMTSubPoints[4].areasize := AreaSize;
DTMTSubPoints[4].areashape := AreaShape;
DTMTSubPoints[4].color := TreeColor;
DTMTSubPoints[4].tolerance := TreeTolerance;
DTMTSubPoints[5].x := 661;
DTMTSubPoints[5].y := 79;
DTMTSubPoints[5].areasize := AreaSize;
DTMTSubPoints[5].areashape := AreaShape;
DTMTSubPoints[5].color := TreeColor;
DTMTSubPoints[5].tolerance := TreeTolerance;
TreeTDTM.MainPoint := TMainPoint;
TreeTDTM.SubPoints := DTMTSubPoints;
TreeDTM := AddDTM(TreeTDTM);
end;
//************************************************************************//
procedure SetBridgeGDTM;
begin
BMainPoint.x := 696;
BMainPoint.y := 103;
BMainPoint.areasize := 1;
BMainPoint.areashape := 0;
BMainPoint.color := RoadColor;
BMainPoint.tolerance := Tolerance;
DTMBSubPoints[0].x := 653;
DTMBSubPoints[0].y := 91;
DTMBSubPoints[0].areasize := AreaSize;
DTMBSubPoints[0].areashape := AreaShape;
DTMBSubPoints[0].color := RoadColor;
DTMBSubPoints[0].tolerance := Tolerance;
DTMBSubPoints[1].x := 658;
DTMBSubPoints[1].y := 120;
DTMBSubPoints[1].areasize := AreaSize;
DTMBSubPoints[1].areashape := AreaShape;
DTMBSubPoints[1].color := RoadColor;
DTMBSubPoints[1].tolerance := Tolerance;
DTMBSubPoints[2].x := 681;
DTMBSubPoints[2].y := 80;
DTMBSubPoints[2].areasize := AreaSize;
DTMBSubPoints[2].areashape := AreaShape;
DTMBSubPoints[2].color := WaterColor;
DTMBSubPoints[2].tolerance := Tolerance;
DTMBSubPoints[3].x := 692;
DTMBSubPoints[3].y := 110;
DTMBSubPoints[3].areasize := AreaSize;
DTMBSubPoints[3].areashape := AreaShape;
DTMBSubPoints[3].color := WaterColor;
DTMBSubPoints[3].tolerance := Tolerance;
BridgeTDTM.MainPoint := BMainPoint;
BridgeTDTM.SubPoints := DTMBSubPoints;
BridgeDTM := AddDTM(BridgeTDTM);
end;
//************************************************************************//
procedure SetChickenGDTM;
begin
CMainPoint.x := 640;
CMainPoint.y := 71;
CMainPoint.areasize := 1;
CMainPoint.areashape := 0;
CMainPoint.color := RoadColor;
CMainPoint.tolerance := Tolerance;
DTMCSubPoints[0].x := 637;
DTMCSubPoints[0].y := 51;
DTMCSubPoints[0].areasize := AreaSize;
DTMCSubPoints[0].areashape := AreaShape;
DTMCSubPoints[0].color := RoadColor;
DTMCSubPoints[0].tolerance := Tolerance;
DTMCSubPoints[1].x := 648;
DTMCSubPoints[1].y := 85;
DTMCSubPoints[1].areasize := AreaSize;
DTMCSubPoints[1].areashape := AreaShape;
DTMCSubPoints[1].color := RoadColor;
DTMCSubPoints[1].tolerance := Tolerance;
DTMCSubPoints[2].x := 624;
DTMCSubPoints[2].y := 89;
DTMCSubPoints[2].areasize := AreaSize;
DTMCSubPoints[2].areashape := AreaShape;
DTMCSubPoints[2].color := RoadColor;
DTMCSubPoints[2].tolerance := Tolerance;
{DTMCSubPoints[3].x := 624;
DTMCSubPoints[3].y := 105;
DTMCSubPoints[3].areasize := AreaSize;
DTMCSubPoints[3].areashape := AreaShape;
DTMCSubPoints[3].color := RoadColor;
DTMCSubPoints[3].tolerance := Tolerance;
DTMCSubPoints[4].x := 653;
DTMCSubPoints[4].y := 98;
DTMCSubPoints[4].areasize := AreaSize;
DTMCSubPoints[4].areashape := AreaShape;
DTMCSubPoints[4].color := RoadColor;
DTMCSubPoints[4].tolerance := Tolerance;}
ChickenTDTM.MainPoint := CMainPoint;
ChickenTDTM.SubPoints := DTMCSubPoints;
ChickenDTM := AddDTM(ChickenTDTM);
end;
//************************************************************************//
procedure PlayerStats; //modified from Fawki's template
var
i: Integer;
begin
writeln('**********************************************');
writeln('Name : ' + Players[CurrentPlayer].Name);
writeln('Number : ' + IntToStr(CurrentPlayer));
writeln('Walking for : ' + IntToStr(Players[CurrentPlayer].Worked) + ' minutes.');
writeln('Location : ' + Players[CurrentPlayer].loc);
writeln('**********************************************');
for i := 0 to HowManyPlayers - 1 do
begin
writeln('Char #' + (IntToStr(i)) + ' : ' + Players[i].Name +
' - Worked for :' + IntToStr(Players[i].Worked) +
' mins and location is ' + Players[i].loc);
end;
writeln('**********************************************');
end;
//************************************************************************//
procedure ProgressReport;
begin
WriteLn(' ');
WriteLn('<====== - Gregs Varock Walker Version ' + VersionNumber +
'- Progress Report =====>');
SRLRandomsReport;
Writeln(' ');
PlayerStats;
end;
//************************************************************************//
Procedure SetUp; //once again from fawki's template
begin
SetupSRL;
DeclarePlayers;
LoginPlayer;
RoadColor := 0;
WaterColor := 0;
BankColor := 0;
end;
//************************************************************************//
procedure FindRandoms; //Guesse who? Fawki!
begin
FindNormalRandoms;
FindFastRandoms;
// if(FindFight)then RunAway;
if Findname Then
FindTalk;
end;
//************************************************************************//
procedure AntiBanage; //Significantly modifed from JAD's tutorial
begin
if (not (LoggedIn)) then
Exit;
case Random(7) of
0:
begin
HoverSkill('Mining', False);
wait(400 + random(1000));
GameTab(4);
end;
1: TypeSend('yawn');
2: RandomEmote;
3:
begin
LowestAngle;
wait(Random(3000));
HighestAngle;
end;
4: PickUpMouse;
5: PickUpMouse;
6: PickUpMouse;
end;
end;
//************************************************************************//
procedure QuackAttack; //quacks backs at ducks
begin
// I have been told that this has the same effect as saying "Nee" to old ladys...
if (FindBitmapMaskTolerance(quack, x, y, 5, 5, 515, 337, 1, 30)) then
begin
Greg('We found a duck!! Fn Awesome!!!');
Writeln('QUACK!!!');
TypeSend('Quack!');
end;
end;
//************************************************************************//
Procedure FixRoadColor;
begin
Greg('fixing color..');
Mouse(665, 83, 1, 1, True);
FFlag(2);
MakeCompass('s');
PerfectNorth;
FindGWestVarrockRoadColor(682, 66, 709, 109); //twek this
Greg('New Color found.. now using ddtm to verify');
Greg('Special Thanks to Fakawi, rkroxpunk, and Drunkenoldma');
SetRoadGDTM;
if FindDtmRotated(RoadDTM, CGx, CGy, MMX1, MMY1, MMX2, MMY2,
-Pi / 2, Pi / 2, 0.1, WhichAngle) then
begin
Greg('We found the dtm..');
RoadColor := GetColor(CGx, CGy);
Greg('Gregs new raod color is ' + IntToStr(RoadColor));
end
else
begin
Greg('We didnt find the dtm.. wtf mate?');
Greg('Increasing tolerance');
Tolerance := Tolerance + 2;
end;
end;
//************************************************************************//
Function FindChickenOut: Boolean;
begin
FindRoadColor;
SetChickenGDTM;
Result := False;
if (FindSymbol(x, y, 'farming spot')) then
begin
Greg('Symbol found at x:' + IntToStr(x) + ' y:' + IntToStr(y));
Mouse(x, y, 4, 4, True);
FFlag(9);
Result := True;
end
else
begin
if (FindDtmRotated(ChickenDTM, CGx, CGy, MMX1, MMY1, MMX2,
MMY2, -Pi / 2, Pi / 2, 0.1, WhichAngle)) then
begin
Greg('we found the raod dtm at x:' + IntToStr(CGx) + ' y:' +
IntToStr(CGy));
Result := True;
Mouse(CGx, CGy, 3, 2, True);
FFlag(3);
Mouse(603, 38, 5, 5, True);
FFlag(3);
end
else
begin
Greg('symbol nor dtm found yet...');
end;
end;
end;
//***********************************************************************//
Procedure TeleportToLumby;
begin
MarkTime(Mark);
//if (not (Loggedin) or (TimeFromMark(Mark)>120000))then break;
FindRandoms;
if (Cast('Home Teleport')) then
Greg('sucesfully casted home telly');
Wait(15000 + Random(4000));
//check to make sure it worked
Greg('Please be patent, loading and finding varock ddtm');
AntiBan;
FindRoadColor;
SetVarockGDTM;
MakeCompass('E');
PerfectNorth;
Greg('Using DDTM to verify lumby');
Greg('Special Thanks to Fakawi, rkroxpunk, and Drunkenoldma');
if FindDtmRotated(VarockDTM, CGx, CGy, MMX1, MMY1, MMX2, MMY2,
-Pi / 2, Pi / 2, 0.1, WhichAngle) then
begin
Greg('We found the dtm! You are in lumbridge..');
Greg('Found at x:' + IntToStr(CGx) + ' y:' + IntToStr(CGy));
FindRandoms;
if rs_OnMinimap(CGx + 45, CGy - 43) then
begin
Mouse(CGx + 45, CGy - 43, 2, 2, True);
wait(4000 + Random(2000));
FFlag(5);
Players[CurrentPlayer].Loc := 'Lumby';
end
else
begin
Greg('Where I want to clik isnt on mini map...');
repeat
MarkTime(Mark);
CGx := CGx - 1;
CGy := CGy + 1;
Greg('adjusting...x:' + IntToStr(CGx + 45) + 'y:' + IntToStr(CGy - 43));
if (not (Loggedin) or (TimeFromMark(Mark) > 120000) or
(CGx < -1000)) then
NextPlayer(False);
until (rs_OnMinimap(CGx + 45, CGy - 43));
Greg('found a point thats on the map...yay');
Mouse(CGx + 45, CGy - 43, 2, 2, True);
wait(4000 + Random(2000));
FFlag(5);
Players[CurrentPlayer].Loc := 'Lumby';
end;
end
else
begin
Greg('We didnt find the dtm.. wtf mate?');
Greg('You are not in lumbridge.. terminating.');
NextPlayer(False);
end;
end;
//************************************************************************//
Function ClickOtherSideRiver: Boolean;
begin
MarkTime(Mark);
Result := False;
//if (not (Loggedin) or (TimeFromMark(Mark)>120000))then break;
FindRandoms;
FindRoadColor;
FindWaterColor;
Greg('Making and finding bridge ddtm');
SetBridgeGDTM;
if FindDtmRotated(BridgeDTM, CGx, CGy, MMX1, MMY1, MMX2, MMY2,
-Pi / 2, Pi / 2, 0.1, WhichAngle) then
begin
Greg('We found the bridge dtm');
Result := True;
Mouse(CGx, CGy, 2, 2, True);
FFlag(3);
Mouse(647, 19, 5, 5, True);
FFlag(3);
end
else
begin
Greg('We didnt find the bridge ddtm yet');
//find out why not, put some fail prevention here
end;
end;
//************************************************************************//
Procedure WalkOutOfCastle;
var
firsttry: Boolean;
tries: Integer;
begin
MarkTime(Mark);
firsttry := True;
tries := 0;
//if (not (Loggedin) or (TimeFromMark(Mark)>120000))then break;
//check to make sure it worked
Greg('Please be patent, loading and finding tree ddtm');
repeat
AntiBan;
SetTreeGDTM;
PerfectNorth;
Greg('Using DDTM to verify first river click');
Greg('Special Thanks to Fakawi, rkroxpunk, and Drunkenoldma');
tries := tries + 1;
if FindDtmRotated(TreeDTM, CGx, CGy, MMX1, MMY1, MMX2, MMY2,
-Pi / 2, Pi / 2, 0.1, WhichAngle) then
begin
Greg('We found the tree dtm! .. at x:' + IntToStr(CGx) + ' y:' + IntToStr(CGy));
//slight adjustment
CGx := CGx + 10;
tries := 100000;
if rs_OnMinimap(CGx, CGy) then
begin
Mouse(CGx, CGy, 2, 2, True);
wait(4000 + Random(2000));
FFlag(5);
Players[CurrentPlayer].Loc := 'OutofCastle';
repeat
tries := tries + 1;
Greg('this is try nummber ' + IntToStr(tries));
if (FindSymbol(x, y, 'fish')) then
Begin
Mouse(x, y, 3, 3, True);
wait(1000 + random(1000));
FFlag(2);
Greg('phew, we made it');
Players[CurrentPlayer].Loc := 'OutofCastle';
tries := 10000;
break;
end;
if (tries mod 3 = 2) then
begin
ClickOtherSideRiver;
end;
until (tries > 40);
end
else
begin
Greg('Where I want to clik isnt on mini map...');
repeat
begin
MarkTime(Mark);
CGx := CGx - 1;
Greg('adjusting...');
if (not (Loggedin) or (TimeFromMark(Mark) > 120000)) then
break;
end;
until (rs_OnMinimap(CGx, CGy));
Greg('found a point thats on the map...yay');
Mouse(CGx, CGy, 2, 2, True);
wait(4000 + Random(2000));
FFlag(5);
Players[CurrentPlayer].Loc := 'OutofCastle';
end;
end
else
begin
Greg('We didnt find the dtm.. where are you trees...');
if (firsttry) then
begin
Greg('trying one last time');
Mouse(642, 61, 4, 4, True);
wait(1000 + random(1000));
FFlag(2);
firsttry := False;
end
else
begin
Greg('You are not where i think you are... tring symbol method');
repeat
tries := tries + 1;
Greg('this is try nummber ' + IntToStr(tries));
if (FindSymbol(x, y, 'fish')) then
Begin
if (tries mod 3 = 2) then
begin
if (not ClickOtherSideRiver) then
begin
Mouse(667, 102, 1, 4, True);
ClickOtherSideRiver;
end;
end;
Mouse(x, y, 3, 3, True);
wait(1000 + random(1000));
FFlag(2);
Greg('phew, we made it');
Players[CurrentPlayer].Loc := 'OutofCastle';
tries := 10000;
break;
end;
until (tries > 40);
if ((tries > 40) and (tries < 9999)) then
begin
Greg('blast!!!');
NextPlayer(False);
end;
end;
end;
until (tries > 3);
end;
//************************************************************************//
Procedure WalkPastChickens;
var
times, startr: Integer;
firstTry, startLooking: Boolean;
begin
Greg('Time to walk past that stupid chicken farm');
MarkTime(Mark);
firstTry := True;
startLooking := False;
times := 0;
startr := 382;
FindRoadColor;
Mouse(683, 46, 6, 6, True);
FFlag(5);
SetChickenGDTM;
repeat
FindRandoms;
times := times + 1;
if (RadialRoadWalk(RoadColor, startr, 346, 65 - times, 1, 1)) then //313
begin
Greg('walking a bit up the road...');
startr := 373;
if (startLooking) then
begin
if (FindChickenOut) then
times := 10000;
end;
FFlag(4);
end
else
begin
Greg('road walk didnt work... hrm');
FindRoadColor;
if (firstTry) then
begin
Greg('increasing radial');
startLooking := True;
startr := 300;
firstTry := False;
end
else
Begin
firstTry := True;
end;
end;
if (times > 5) then
startLooking := True;
if (startLooking) then
begin
if (FindChickenOut) then
times := 10000;
end;
if (not (Loggedin) or (TimeFromMark(Mark) > 300000) or (times > 14)) then
break;
until (times > 15);
Players[CurrentPlayer].Loc := 'PastChickens';
end;
//************************************************************************//
Procedure WalkDownRoad;
var
times, startr, endr: Integer;
begin
MarkTime(Mark);
//if (not (Loggedin) or (TimeFromMark(Mark)>120000))then break;
FindRandoms;
Greg('walking up the river!');
quack := CreateBitmapMaskFromText('Qua', upchars);
Greg('created quack bitmask');
//RadialRoadWalk(RoadColor, 306, 323, 75, 1, 1);
times := 0;
startr := 368;
endr := 306;
FindWaterColor;
SetRun(True);
repeat
QuackAttack;
if ((FindSymbol(x, y, 'fish')) and (times >= 14)) then
break;
if (not (Loggedin) or (TimeFromMark(Mark) > 1200000)) then
break; //two minutes
times := times + 1;
//RoadWalkGDist( dist,WaterColor, 'N',4);
if (WaterWalk(startr, endr, 75, 5, 2, 2, 2, 2)) then
begin
QuackAttack;
wait(4000 + random(1000));
FFlag(2);
Greg('walked a little bit more up the river..');
startr := 368;
endr := 306;
if (times mod 8 = 0) then
Begin
Greg('just a little sumptn sumptn');
FindRandoms;
AntiBanage;
Mouse(664, 101, 6, 6, True);
QuackAttack;
FFlag(2);
end;
//failsafe...
if (times > 40) then
Begin
Greg('We have been walking up this fn river 40 times!!');
Greg('I give up!!!...well done jagex..untill next time');
NextPlayer(False);
end;
end
else
begin
Greg('Something went wrong on river walk...');
Greg('clicking.. then Increasing range');
//Mouse(664, 101, 6, 6, True);
//FFlag(2);
//startr:=340;
endr := 240;
end;
//another failsafe check
if (times > 40) then
Begin
Greg('We have been walking up this fn river 50 times!!');
Greg('I give up!!!...well done jagex..untill next time');
NextPlayer(False);
end;
until ((FindSymbol(x, y, 'fish')) and (times >= 9));
Greg('Finaly found the fish symbol!!!');
//check to make sure it worked
Players[CurrentPlayer].Loc := 'UpTheRiver';
end;
//************************************************************************//
Procedure WalkAlongRoad;
var
G, start, times: Integer;
changeColor, changeRange, firstTry, RI: Boolean;
begin
MarkTime(Mark);
changeColor := False;
changeRange := False;
firstTry := True;
RI := False;
start := 56;
times := 0;
//if (not (Loggedin) or (TimeFromMark(Mark)>120000))then break;
FindRandoms;
Greg('walking into varock now..');
SetRun(False);
FindRoadColor;
repeat
times := times + 1;
Greg('start is:' + IntToStr(start) + ' times is:' + IntToStr(times));
if (RadialWalk(RoadColor, start, 120, 60, 2, 2)) then
Begin
start := 46;
Greg('sucesfully found more road');
firstTry := False;
End
else
begin
Greg('didnt find more raod...');
RI := False;
if (firstTry and (not (RI))) then
begin
firstTry := False;
Greg('didnt even make it first try...');
Mouse(650, 117, 1, 5, True);
FFlag(5);
RI := False;
end;
if ((not changeColor) and (not (RI))) then
begin
Greg('didnt make it, blaming road color');
G := RoadColor;
//if(RoadColorChecker) then Greg('Road checker fixed it');
FindRoadColor;
Greg('trying to fix color');
if G = RoadColor then
begin
FixRoadColor;
end;
changeColor := True;
FFlag(5);
RI := False;
end;
if (not RI) then
begin
//need a bigger range
Greg('making the range bigger');
start := 0;
changeColor := False;
end;
end;
FFlag(5);
//failsafe
if (times > 40) then
Begin
Greg('We have been walking around varock 50 times!!');
Greg('I give up!!!...well done jagex..untill next time');
NextPlayer(False);
end;
until (FindSymbol(x, y, 'water'));
Mouse(x, y, 6, 6, True);
FFlag(2);
Greg('walked into varock!');
//check to make sure it worked
Players[CurrentPlayer].Loc := 'MiddleVarock';
end;
//*************************************************************************//
//
// Main EventLoop
//
//*************************************************************************//
begin
ClearDebug;
Setup;
ActivateClient;
Tolerance := 1;
// DeleteUID;
repeat
if (Players[CurrentPlayer].loc = 'Anywhere') then
begin
ProgressReport;
PerfectNorth;
HighestAngle;
RandomEmote;
MarkTime(Mark);
TeleportToLumby;
FindRandoms;
AntiBanage;
end;
if (Players[CurrentPlayer].Loc = 'Lumby') then
begin
MarkTime(Mark);
WalkOutOfCastle;
FindRandoms;
AntiBanage;
end;
if (Players[CurrentPlayer].Loc = 'OutofCastle') then
begin
MarkTime(Mark);
ProgressReport;
WalkPastChickens;
FindRandoms;
AntiBanage;
end;
if (Players[CurrentPlayer].Loc = 'PastChickens') then
begin
MarkTime(Mark);
ProgressReport;
WalkDownRoad;
FindRandoms;
AntiBanage;
end;
if (Players[CurrentPlayer].Loc = 'UpTheRiver') then
begin
MarkTime(Mark);
ProgressReport;
WalkAlongRoad;
AntiBanage;
FindRandoms;
end;
if ((LoggedIn) and (Players[CurrentPlayer].loc = 'MiddleVarock')) then
begin
ProgressReport;
DoEmote(14);
NextPlayer(True);
end;
if (not (Loggedin)) then
NextPlayer(False);
until (False);
end.
——————————————————
<!– END TEMPLATE: formanswers –>