dont know if you tried to fix it but new version still lags 4 me
dont know if you tried to fix it but new version still lags 4 me
Yeah it's back to lagging people outbut by the looks of my char you get it to work fine
![]()
This may sound a little meany, but do I have a chance of making one by myself afterall? A better one?![]()
-Tsn.
[QUOTE=Santa_Clause;277761]I love you too TSN :p[/QUOTE]
[CENTER][URL="http://www.stats.srl-forums.com/sigs"][IMG]http://www.stats.srl-forums.com/sigs/1324.png[/IMG][/URL][/CENTER]
skilld u is a really busy guy, but the idea was free for anyone to use in a script. If you wish to do so thats fine, I'm sure skilld u wont argue against it because it'll probably be less of a hassle for him. This script was never supposed to be a script just a general outline that developed into a script which developed into bugs![]()
sex i dont line ur name first of all... doesnt look appropiate for this community.
and second of all skilld u is trying so hush. and try to learn to script by urself.
Tsn. you have every right to make a script same as anyone else. so go ahead if you wish doesnt really matter
The new update solved the color issue but now it doesn't fight the cows. First it walks south to the fence, then it just ends up in a loop, searching the grass/ground. I have no clue on what it's doing...
Maby you could add some info in the debug, or somewhere, about what the script is doing, what procedure it's on. Hope you understand what I mean.
[Off-topic]Has srl crached recently? I couldn't get in here two days ago nor yesteday.[/off-topic]
Previously known as Billy Opel.
One my name has a meaning, it's not just sex. I've used it for years it used to be the gfx team name that I was in. Two I know skilld u is trying I mean hello I talk to him everyday on MSN and hes using one of my chars to script with, but when he agreed to it he just said he was going to provide a general outline so that it could help me learn scripting. But he gained time to script it, I'm in no rush I mean really I don't have much of a use for it. I provided the idea to help the community mainly since no one had done it yet, I was simply stating TSN was more than welcome to make the script since it was a free to use idea.
I'm trying to learn how to script, and guess what I've been a member then less than 2 weeks so sorry I'm not a pro a scripting like some people on here. You don't have to jump down a new users throat for posting, it wasn't like I said "oh skilld u sucks so bad please god someone else make this script," because one hes trying to help me, two I don't feel that way at all, and three the scripting hes done so far is a lot better than most.
If it's killing the community to have my name since you run this forum, then I'll request a name change. And I guess before I post anymore ideas I'll approve it by the almighty P1nky because god knows it was a bad sin for me to come in and do it, how dare me...
Edit: Oh and P1nky I don't like your name, it's definitely not appropriate for this community either. It's in all capital letters which provokes anger and it's written in 1337 speak which presents a bad image to the views of this forum that no one here can speak proper english.
please leave him alone, he is the one that gave me the idea to make this script, i think i got it working so expect new version later today. I still haven't gotten the calibration working correctly; so for now it has been disabled.but here is a short proggy from new version:
SCAR Code:/\/\/\/\/\/\ cow killa /\/\/\/\/\/\
[ Killed: 9 cows ]
[ Completed: 0 loads ]
[ Collected: 7 hides ]
[ Calibrated: 8 times ]
[ Ate: 0 times ]
[ Failed DDTMs: ]
[ Ran For: 7 Minutes and 2 Seconds]
/\/\/\/\/\/\/ cow killa \/\/\/\/\/\/
just upped a new version. No TPA's this time, couldn't get them to work right, so i just use findobjcustom. post them proggies, should run long time.
![]()
When I started the script I got a whole bunch of variable hints, but it worked good anyway.It finds the cows now and everything is working as it should be, apart from the cows killed and the hides collected in the proggy.
Seems like if it missklick on a cow it thinks that the char has killed it, then it klicks on it again and now the cow gets killed for "real". In the proggy it is 2 cows killed.
And about the hides i think the script adds a hide to the proggy everytime it see a raw beef and right klick on it.
Btw, maby you could make it use run after the login.
Edit: It got in to a loop, trying to kill the dairy cow...
I think it killed about 8-10 cows and picked up just as many hides.\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
/\/\/\/\/\/\ cow killa /\/\/\/\/\/\
[ Killed: 70 cows ]
[ Completed: 0 loads ]
[ Collected: 38 hides ]
[ Ate: 0 times ]
[ Failed DDTMs: ]
[ Ran For: 20 Minutes and 19 Seconds]
/\/\/\/\/\/\/ cow killa \/\/\/\/\/\/![]()
Previously known as Billy Opel.
yeah im running it , whateva
sometimes i get stuck on the dairy cow
some hints in the beginning of the script that dont mean anything
...anti-ban talking goes too fast for me. does 6-10 phrases in like a minute.
not every minute but every 5-10 or so-
learning and shit... i'll be good eventually
heres an edited one, it doesnt talk that much, and wont get stuck at dairy cow
SCAR Code:// -------------------------------------------------------------------------- //
// pwnt! //
// -------------------------------------------------------------------------- //
// -- -- //
// -- Cow Killa v0.4 -- //
// -- by -- //
// -- skilld u -- //
// -- edited by ericjzhang/chaosdestany -- //
// -------------------------------------------------------------------------- //
// -- -- //
// -- Kills Cows and Banks Hides. -- //
// -- -- //
// -------------------------------------------------------------------------- //
// -- Instructions -- //
// -------------------------------------------------------------------------- //
// -- -- //
// -- Equip yourself with Three Pieces of armor -- //
// -- Place your Players In the Cow pen north of Lumbridge, by the Bank -- //
// -- Don't have anything too expensive with you. -- //
// -- Pick the color of the tree! -- //
// -- -- //
// -------------------------------------------------------------------------- //
// -- Features -- //
// -------------------------------------------------------------------------- //
// -- -- //
// -- Should Never Get Lost, Uses A DTM for calibration! -- //
// -- Kills Cows! -- //
// -- Banks Hides! -- //
// -- Death Walk! -- //
// -- AutoEat if Health gets low! -- //
// -------------------------------------------------------------------------- //
// -- Upcoming Features -- //
// -------------------------------------------------------------------------- //
// -- Range and Mage option -- //
// -- Which Skill To Train Option -- //
// -- stole this thing from-- //
// -- Wizzup? and Fakawi mager-- //
// -------------------------------------------------------------------------- //
program cowkilla;
{.include SRL\SRL\misc/SMART.scar}
{.include SRL\SRL.scar}
{.include SRL\SRL\skill\magic.scar}
{.include SRL\SRL\skill\fighting.scar}
var
x, y, i, Eaten, Loads, Calibrated, CalibrateDTM, CowsKilled, LoadsDone, Hides, Hide, Exxey: integer;
Loop: string;
DDTMfailed : array[1..12] of Integer;
//----------------------------------------------------------------------------//
const ShouldWeEat = False; //<- Should we eat or not?
const FoodColor = 123456;//<- fill in the color of the food.
const RemoteMaster = ''; //<- fill in the Nickname of the RC master.
const MySRLID = '';//<- your SRL ID (for stats) in here.
const MySRLPassword = '';//<- your SRL PW (for stats) in here.
const NumLoads = 10000; //<- Loads before Switching players
//----------------------------------------------------------------------------//
procedure DeclarePlayers;
begin
CurrentPlayer := 0;
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
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 :=False;
Players[2].Name :='';
Players[2].Pass :='';
Players[2].Nick :='';
Players[2].Active :=False;}
end;
procedure TakeMyScreen(Reason: string); //from hy71194 =]
begin
WriteLn('Attempting to take a screenie of something.. Please wait.');
try
SaveScreenshot(ScriptPath + reason + TimeRunning + '.bmp');
WriteLn('Screenshot of: ' + reason + TimeRunning);
WriteLn('Send to skilld u on SRL Forums');
except
Writeln('Failed to save screenshot of: ' + reason);
end
end;
procedure DeadWalk; forward;
function FindGrassColor: integer; forward;
function DDTMMaster(Number: integer; Recursive: boolean): boolean; forward;
procedure ResetMe;
begin
for i := 0 to HowManyPlayers - 1 do
Players[i].Active := True;
Cast('Home Teleport');
Wait(7000 + random(2000));
DeadWalk;
end;
procedure DeadWalk;
begin
if not DDTMMaster(1, True) then
if not RadialWalk(FindRoadColor, 80, 99, 60, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(5, true) then
if not RadialWalk(FindRoadColor, 322, 332, 55, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(6, true) then
if not RadialWalk(FindRoadColor, 309, 315, 57, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(2, true) then
if not RadialWalk(FindRoadColor, 0, 1, 60, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(7, true) then
if not RadialWalk(FindRoadColor, 347, 353, 63, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(8, true) then
if not RadialWalk(FindRoadColor, 265, 270, 71, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(9, true) then
if not RadialWalk(FindRoadColor, 283, 290, 63, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(10, true) then
if not RadialWalk(FindRoadColor, 251, 265, 54, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(11, true) then
if not RadialWalk(FindRoadColor, 334, 340, 57, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(12, true) then
if not RadialWalk(FindRoadColor, 23, 38, 67, 5, 5) then Exit; NextPlayer(false);
if not RadialWalk(FindGrassColor, 315, 325, 49, 5, 5) then Exit; NextPlayer(false);
if not DDTMMaster(3, true) then Exit; NextPlayer(false);
end;
procedure TehRespond;
begin
if InChat('hey') or InChat('hi') or InChat('whats up?') or InChat('ello')
or InChat('wassup') or InChat('sup') or InChat('h ey') or InChat('h ello')
or InChat('hows it going') or InChat('was up') or InChat('w hats up') then
begin
case Random(10) of
0 : TypeSend('hi');
1 : TypeSend('hello');
2 : TypeSend('hey');
3 : TypeSend('sup');
4 : TypeSend('hola');
5 : TypeSend('yo');
6 : TypeSend('dont feel like talking now, sorry');
7 : TypeSend('sup');
8 : TypeSend('not now');
9 : TypeSend('please leave me alone');
end;
end;
if InChat('lol') or InChat('funny') or InChat('ha')or
InChat('wow') or InChat('rofl') or InChat('omg')then
begin
case Random(10) of
0 : TypeSend('lol');
1 : TypeSend('lmao');
2 : TypeSend('');
3 : TypeSend('');
4 : TypeSend('');
5 : TypeSend('');
6 : TypeSend('');
7 : TypeSend('');
end;
end;
if InChat(Players[CurrentPlayer].Nick) then
begin
case Random(10) of
0 : TypeSend('leave me alone');
1 : TypeSend('get away from me please');
2 : TypeSend('');
3 : TypeSend('');
4 : TypeSend('');
5 : TypeSend('');
6 : TypeSend('');
7 : TypeSend('');
8 : TypeSend('');
9 : TypeSend('');
10 : TypeSend('');
11 : TypeSend('');
12 : TypeSend('');
end;
end;
if InChat('noob') or InChat('newb') or InChat('nub') or InChat('choob')
or InChat('ch00b') or InChat('n00b') or InChat('nooby') or InChat('nublet')
or InChat('newby') or InChat('nubby') then
begin
case Random(11) of
0 : TypeSend('thanks');
1 : TypeSend('w/e');
2 : TypeSend('thnx');
3 : TypeSend('thank you');
4 : TypeSend('thanks :p');
5 : TypeSend('your a noob');
6 : TypeSend('im not nub');
7 : TypeSend('i pwn you.');
8 : TypeSend('go away');
9 : TypeSend('you nub');
10 : TypeSend(';p');
end;
end;
if InChat('bye') or InChat('cya') or InChat('gtg') or InChat('im leaving')
or InChat('im going') or InChat('see you later') or InChat('l8r mate')
or InChat('l8r') or InChat('ttyl') or InChat('ttfn') or InChat('b ye')
or InChat('by') then
begin
case Random(11) of
0 : TypeSend('c ya');
1 : TypeSend('bye');
2 : TypeSend('ttyl');
3 : TypeSend('b ye');
4 : TypeSend('by');
5 : TypeSend('ttfn');
6 : TypeSend('b y');
7 : TypeSend('l8r');
8 : TypeSend('cya');
9 : TypeSend('l8r mate');
10 : TypeSend('bye');
end;
end;
end;
procedure AntiBan;
begin
case random(200) of
0, 16, 17, 18, 19: begin
MakeCompass('S');
Wait(50 + random(100));
MakeCompass('W');
Wait(50 + random(100));
MakeCompass('N');
Wait(50 + random(100));
SetAngle(false);
Wait(50 + random(100));
SetAngle(true);
end;
1, 20, 21, 22, 23: begin
MakeCompass('W');
Wait(50 + random(100));
MakeCompass('E');
Wait(50 + random(100));
MakeCompass('S');
Wait(50 + random(100));
MakeCompass('N');
end;
2, 24, 25, 26, 27: begin
KeyDown(VK_Left);
Wait(1000 + random(500));
KeyUp(VK_Left);
Wait(50 + random(100));
KeyDown(VK_Right);
Wait(1000 + random(500));
KeyUp(VK_Right);
Wait(50 + random(100));
MakeCompass('N');
end;
3, 28, 29, 30: begin
KeyDown(VK_Down);
Wait(1000 + random(500));
KeyUp(VK_Down);
Wait(50 + random(100));
KeyDown(VK_Up);
Wait(1000 + random(500));
KeyUp(VK_Up);
end;
4, 31, 32, 33: AlmostLogout;
5, 6, 7: RandomMovement;
8, 9, 10: MMouse(5 + random(250), 5 + random(250), 5, 5);
11, 12, 13, 14, 15: begin
Mouse(5 + random(100), 5 + random(100), 5, 5, false);
Wait(50 + random(25));
MMouse(5 + random(50), 5 + random(50), 5, 5);
end;
34, 35, 36, 37: HoverSkill('random', false);
38, 39, 40: RandomMovement;
41, 42, 43: BoredHuman;
44, 45, 46: PickUpMouse;
end
end;
//starblaster <3
function FindObjCustomEx(var cx, cy: Integer; Text: TStringArray; Color: TIntegerArray; Tolerance: Integer): Boolean;
var
a, b, c, i, x1, y1, x2, y2: Integer;
Start: Boolean;
begin
for b := 0 to (GetArrayLength(Color)-1) do
begin
if (FindColorSpiralTolerance(cx, cy, color[b], MSX1, MSY1, MSX2, MSY2, Tolerance)) then
begin
Start := True;
Break;
end;
end;
if(Start)then
begin
x1 := 245;
y1 := 165;
x2 := 277;
y2 := 185;
repeat
if not(LoggedIn)then break;
a := a + 1;
if (a = 1) then
c := c + 1
else if (a = 3) then
c := c + 1;
for i := 1 to c do
begin
if (a = 1) then
begin
x1 := x1 + 30;
x2 := x2 + 30;
end else
if (a = 2) then
begin
y1 := y1 - 20;
y2 := y2 - 20;
end else
if (a = 3) then
begin
x1 := x1 - 30;
x2 := x2 - 30;
end else
if (a = 4) then
begin
y1 := y1 + 20;
y2 := y2 + 20;
end;
if (x1 = 485) and (x2 = 517) then
x2 := x2 - 2;
if (y1 = 325) and (y2 = 345) then
y2 := y2 - 7;
if (x2 > 515) then
Break;
for b := 0 to (GetArrayLength(Color)-1) do
begin
if (FindColorTolerance(cx, cy, Color[b], x1, y1, x2, y2, tolerance)) then
begin
MMouse(cx, cy, 0, 0)
if (IsUpTextMultiCustom(Text)) then
begin
Result := True;
Exit;
end;
end;
end;
end;
if (a = 4) then
a := 0;
until (x2 > 515) or (Result = True);
end;
end;
function Kill(colors: TIntegerArray): boolean;
var
CowTPA: TPointArray;
Mid: TPoint;
k: integer;
begin
if not LoggedIn or FindDead then Exit;
for k := 0 to High(colors) do
if FindColorsTolerance(CowTPA, colors[k], MSX1, MSY1, MSX2, MSY2, 10) then
begin
Mid := MiddleTPA(CowTPA);
repeat
MMouse(Mid.x, Mid.y, 5, 5);
Wait(1000 + random(500));
until IsUpText('tta');
if IsUpText('tta') then
begin
GetMousePos(x, y);
case random(2) of
0, 1: begin
Mouse(x, y, 5, 5, true);
Flag;
end;
2: begin
Mouse(x, y, 5, 5, false);
ChooseOption('ttack');
Flag;
end;
end;
Result := True;
Break;
end;
end;
end;
function Kill2: boolean;
begin
if FindObjCustomEx(x, y, ['lf', 'alf', 'ttack'], [4411236, 11712444, 12107201], 10) then
begin
Mouse(x, y, 5, 5, true);
FFlag(5);
Result := True;
end;
end;
function FindGrassColor: Integer; //-20 + 20
var
H,S,L,X,Y,Z : Extended;
R,G,B,P,A,TestColor,xx,xy : Integer;
TPA : TPointArray;
begin
if Not(LoggedIn) then Exit;
xx:= MMCX;
xy := MMCY;
FindColorsSpiralTolerance(xx, xy, TPA, 5611431, MMX1, MMY1, MMX2, MMY2, 60)
P := High(TPA);
for A := 0 to P do
begin
if RS_OnMinimap(TPA[A].X, TPA[A].Y) then
begin
TestColor := GetColor(TPA[A].X, TPA[A].Y);
if SimilarColors(TestColor, 5611431, 50) then
begin
ColorToRGB(TestColor, R, G, B);
ColorToHSL(TestColor, H, S, L);
ColorToXYZ(TestColor, X, Y, Z);
if InRange(R - G, -12, 28) then //-20 + 20
if InRange(R - B, 62, 102) then
if InRange(G - B, 54, 94) then
if InRange(Round(S) - Round(H), 3, 49) then//-15 + 15
if InRange(Round(L) - Round(H), 19, 0) then
if InRange(Round(S) - Round(L), -31, -1) then
if InRange(Round(X) - Round(Y), -11, 3) then //-7 + 7
if InRange(Round(Y) - Round(Z), 13, 27) then
if GetColor(TPA[A].X + 2, TPA[A].Y + 2) = TestColor then
if GetColor(TPA[A].X + 1, TPA[A].Y + 1) = TestColor then
begin
Result := TestColor;
Exit;
end;
end;
end;
end;
Writeln('Couldnt find Color!');
Result := 0;
end;
function FindTreeRootColor: Integer; //-20 + 20
var
H,S,L,X,Y,Z : Extended;
R,G,B,P,A,TestColor,xx,xy : Integer;
TPA : TPointArray;
begin
if Not(LoggedIn) then Exit;
xx:= MMCX;
xy := MMCY;
FindColorsSpiralTolerance(xx, xy, TPA, 206396, MMX1, MMY1, MMX2, MMY2, 60)
P := High(TPA);
for A := 0 to P do
begin
if RS_OnMinimap(TPA[A].X, TPA[A].Y) then
begin
TestColor := GetColor(TPA[A].X, TPA[A].Y);
if SimilarColors(TestColor, 206396, 50) then
begin
ColorToRGB(TestColor, R, G, B);
ColorToHSL(TestColor, H, S, L);
ColorToXYZ(TestColor, X, Y, Z);
if InRange(R - G, 2, 42) then //-20 + 20
if InRange(R - B, 37, 77) then
if InRange(G - B, 15, 55) then
if InRange(Round(S) - Round(H), 65, 17) then//-15 + 15
if InRange(Round(L) - Round(H), -13, 0) then
if InRange(Round(S) - Round(L), 63, 93) then
if InRange(Round(X) - Round(Y), -6, 8) then //-7 + 7
if InRange(Round(Y) - Round(Z), -5, 9) then
if GetColor(TPA[A].X + 2, TPA[A].Y + 2) = TestColor then
if GetColor(TPA[A].X + 1, TPA[A].Y + 1) = TestColor then
begin
Result := TestColor;
Exit;
end;
end;
end;
end;
Writeln('Couldnt find Color!');
Result := 0;
end;
function FindTreeTopColor: Integer; //-20 + 20
var
H,S,L,X,Y,Z : Extended;
R,G,B,P,A,TestColor,xx,xy : Integer;
TPA : TPointArray;
begin
if Not(LoggedIn) then Exit;
xx:= MMCX;
xy := MMCY;
FindColorsSpiralTolerance(xx, xy, TPA, 539678, MMX1, MMY1, MMX2, MMY2, 60)
P := High(TPA);
for A := 0 to P do
begin
if RS_OnMinimap(TPA[A].X, TPA[A].Y) then
begin
TestColor := GetColor(TPA[A].X, TPA[A].Y);
if SimilarColors(TestColor, 539678, 50) then
begin
ColorToRGB(TestColor, R, G, B);
ColorToHSL(TestColor, H, S, L);
ColorToXYZ(TestColor, X, Y, Z);
if InRange(R - G, -50, -10) then //-20 + 20
if InRange(R - B, 2, 42) then
if InRange(G - B, 32, 72) then
if InRange(Round(S) - Round(H), 35, 2) then//-15 + 15
if InRange(Round(L) - Round(H), -28, 0) then
if InRange(Round(S) - Round(L), 48, 78) then
if InRange(Round(X) - Round(Y), -9, 5) then //-7 + 7
if InRange(Round(Y) - Round(Z), -4, 10) then
if GetColor(TPA[A].X + 2, TPA[A].Y + 2) = TestColor then
if GetColor(TPA[A].X + 1, TPA[A].Y + 1) = TestColor then
begin
Result := TestColor;
Exit;
end;
end;
end;
end;
Writeln('Couldnt find Color!');
Result := 0;
end;
function FindBlackRootColor: Integer; //-20 + 20
var
H,S,L,X,Y,Z : Extended;
R,G,B,P,A,TestColor,xx,xy : Integer;
TPA : TPointArray;
begin
if Not(LoggedIn) then Exit;
xx:= MMCX;
xy := MMCY;
FindColorsSpiralTolerance(xx, xy, TPA, 1549, MMX1, MMY1, MMX2, MMY2, 60)
P := High(TPA);
for A := 0 to P do
begin
if RS_OnMinimap(TPA[A].X, TPA[A].Y) then
begin
TestColor := GetColor(TPA[A].X, TPA[A].Y);
if SimilarColors(TestColor, 1549, 50) then
begin
ColorToRGB(TestColor, R, G, B);
ColorToHSL(TestColor, H, S, L);
ColorToXYZ(TestColor, X, Y, Z);
if InRange(R - G, -13, 27) then //-20 + 20
if InRange(R - B, -7, 33) then
if InRange(G - B, -14, 26) then
if InRange(Round(S) - Round(H), 77, 10) then//-15 + 15
if InRange(Round(L) - Round(H), -20, 0) then
if InRange(Round(S) - Round(L), 82, 112) then
if InRange(Round(X) - Round(Y), -7, 7) then //-7 + 7
if InRange(Round(Y) - Round(Z), -7, 7) then
if GetColor(TPA[A].X + 2, TPA[A].Y + 2) = TestColor then
if GetColor(TPA[A].X + 1, TPA[A].Y + 1) = TestColor then
begin
Result := TestColor;
Exit;
end;
end;
end;
end;
Writeln('Couldnt find Color!');
Result := 0;
end;
function FindDarkRootColor: Integer; //-20 + 20
var
H,S,L,X,Y,Z : Extended;
R,G,B,P,A,TestColor,xx,xy : Integer;
TPA : TPointArray;
begin
if Not(LoggedIn) then Exit;
xx:= MMCX;
xy := MMCY;
FindColorsSpiralTolerance(xx, xy, TPA, 6445, MMX1, MMY1, MMX2, MMY2, 60)
P := High(TPA);
for A := 0 to P do
begin
if RS_OnMinimap(TPA[A].X, TPA[A].Y) then
begin
TestColor := GetColor(TPA[A].X, TPA[A].Y);
if SimilarColors(TestColor, 6445, 50) then
begin
ColorToRGB(TestColor, R, G, B);
ColorToHSL(TestColor, H, S, L);
ColorToXYZ(TestColor, X, Y, Z);
if InRange(R - G, 0, 40) then //-20 + 20
if InRange(R - B, 25, 65) then
if InRange(G - B, 5, 45) then
if InRange(Round(S) - Round(H), 76, 15) then//-15 + 15
if InRange(Round(L) - Round(H), -15, 0) then
if InRange(Round(S) - Round(L), 76, 106) then
if InRange(Round(X) - Round(Y), -7, 7) then //-7 + 7
if InRange(Round(Y) - Round(Z), -6, 8) then
if GetColor(TPA[A].X + 2, TPA[A].Y + 2) = TestColor then
if GetColor(TPA[A].X + 1, TPA[A].Y + 1) = TestColor then
begin
Result := TestColor;
Exit;
end;
end;
end;
end;
Writeln('Couldnt find Color!');
Result := 0;
end;
function Calibrate: boolean;
begin
{CalibrateDTM := DTMFromString('78DA637CCAC0C0F08A0105D8A8F1306800694' +
'620FE0F048CB240D65B5435DEBA7C703520C0781F48EC27A06631' +
'90F880AA46474A0455CD632021C088570D00610B0DFC'); }
CalibrateDTM := DTMFromString('78DA63E4666060E06340017FFE3031B002694' +
'620FE0F048CBC986ACE9C6180AB0101461E20C183AAE6DF3F3E54' +
'355CF8ED02AB01B9871F55CDDDBB6876F162AA01C9629823805F0' +
'D00B3750E35');
if DTMRotated(CalibrateDTM, x, y, MMX1, MMy1, mmx2, mmy2) then
begin
Mouse(x, y, 5, 5, true);
FFlag(0);
Result := True;
Calibrated := Calibrated + 1;
ReportVars[5] := ReportVars[5] + 1;
end else
Result := False;
end;
function EatTime: boolean; //stolen from haxor :D
begin
Result := not FindColor(x, y, 65280, 730, 30, 740, 40);
end;
procedure EatSome;
begin
if FindColorTolerance(x, y, FoodColor, mix1, miy1, mix2, miy2, 10) then
begin
Mouse(x, y, 5, 5, true);
Wait(500 + random(500));
end;
end;
procedure PickupHide(colors: TIntegerArray);
var
HideTPA: TPointArray;
Mid: TPoint;
k: integer;
begin
if not LoggedIn or FindDead then Exit;
for k := 0 to High(colors) do
if FindColorsTolerance(HideTPA, colors[k], MSX1, MSY1, MSX2, MSY2, 10) then
begin
Mid := MiddleTPA(HideTPA);
repeat
MMouse(Mid.x, Mid.y, 5, 5);
Wait(500);
until IsUpText('ake');
if IsUpText('ake') then
begin
GetMousePos(x, y);
Mouse(x, y, 5, 5, false);
ChooseOption('ake Cowhi');
Flag;
Hides := Hides + 1;
ReportVars[1] := ReportVars[1] + 1;
end;
end;
end;
function PickUpHide2: boolean;
begin
if FindObjCustomEx(x, y, ['eef', 'ake', 'ide'], [1319583, 11579578, 12829642, 5864095], 10) then
begin
Mouse(x, y, 5, 5, false);
ChooseOption('owhi');
Hides := Hides + 1;
ReportVars[1] := ReportVars[1] + 1;
FFlag(5);
Result := True;
end;
end;
procedure OpenDepositer;
var
Colors: TIntegerArray;
BankTPA: TPointArray;
i, k: integer;
begin
if FindObjCustomEx(x, y, ['pen'], [5987413, 4934727, 5855827, 3436859], 10) then
begin
Mouse(x, y, 5, 5, true);
FFlag(0);
end;
{Colors := [5987413, 4934727, 5855827, 3436859];
if not LoggedIn or FindDead then Exit;
for k := 0 to High(colors) do
if FindColorsTolerance(BankTPA, colors[k], MSX1, MSY1, MSX2, MSY2, 10) then
begin
repeat
for i := 0 to High(BankTPA) do
begin
MMouse(BankTPA[i].x, BankTPA[i].y, 5, 5);
Wait(500);
end;
until IsUpText('pen');
if IsUpText('pen') then
begin
GetMousePos(x, y);
Mouse(x, y, 5, 5, true);
Flag;
end;
end;}
end;
procedure OpenGate;
var
Colors: TIntegerArray;
GateTPA: TPointArray;
i, k: integer;
begin
Colors := [3892097, 3694203, 4222092];
if not LoggedIn or FindDead then Exit;
for k := 0 to High(colors) do
if FindColorsTolerance(GateTPA, colors[k], MSX1, MSY1, MSX2, MSY2, 10) then
begin
repeat
for i := 0 to High(GateTPA) do
begin
MMouse(GateTPA[i].x, GateTPA[i].y, 5, 5);
Wait(500);
end;
until IsUpText('pen');
if IsUpText('pen') then
begin
GetMousePos(x, y);
Mouse(x, y, 5, 5, true);
Flag;
end;
end;
end;
function LoadDDTMs(CaseNumber: integer): integer;
var
dtmMainPoint: TDTMPointDef;
dtmSubPoints: Array [0..3] of TDTMPointDef;
dtSubPoints: Array [0..4] of TDTMPointDef;
WalkOneDDTM, TaCowsDDTM, TaBankDDTM: TDTM;
begin
case CaseNumber of
1: begin //FirstDeadWalkPoint
dtmMainPoint.x := 688;
dtmMainPoint.y := 84;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 685;
dtmSubPoints[0].y := 105;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 687;
dtmSubPoints[1].y := 74;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 686;
dtmSubPoints[2].y := 54;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 688;
dtmSubPoints[3].y := 75;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
2: begin //walk 4 death walk
dtmMainPoint.x := 602;
dtmMainPoint.y := 45;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 601;
dtmSubPoints[0].y := 22;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 606;
dtmSubPoints[1].y := 60;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 610;
dtmSubPoints[2].y := 47;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 600;
dtmSubPoints[3].y := 20;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
3: begin //to cows from bank
dtmMainPoint.x := 650;
dtmMainPoint.y := 112;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindTreeTopColor;
dtmMainPoint.Tolerance := 1;
dtSubPoints[0].x := 651; //main point root
dtSubPoints[0].y := 116;
dtSubPoints[0].AreaSize := 1;
dtSubPoints[0].AreaShape := 0;
dtSubPoints[0].Color := FindTreeRootColor;
dtSubPoints[0].Tolerance := 1;
dtSubPoints[1].x := 661; //lower tree root
dtSubPoints[1].y := 107;
dtSubPoints[1].AreaSize := 1;
dtSubPoints[1].AreaShape := 0;
dtSubPoints[1].Color := FindTreeRootColor;
dtSubPoints[1].Tolerance := 10;
dtSubPoints[2].x := 657; //top tree root
dtSubPoints[2].y := 99;
dtSubPoints[2].AreaSize := 1;
dtSubPoints[2].AreaShape := 0;
dtSubPoints[2].Color := FindTreeRootColor;
dtSubPoints[2].Tolerance := 10;
dtSubPoints[3].x := 659; //tree next to main
dtSubPoints[3].y := 114;
dtSubPoints[3].AreaSize := 1;
dtSubPoints[3].AreaShape := 0;
dtSubPoints[3].Color := FindTreeRootColor;
dtSubPoints[3].Tolerance := 10;
dtSubPoints[4].x := 659; //tree next to main top
dtSubPoints[4].y := 110;
dtSubPoints[4].AreaSize := 1;
dtSubPoints[4].AreaShape := 0;
dtSubPoints[4].Color := FindTreeTopColor;
dtSubPoints[4].Tolerance := 1;
TaCowsDDTM.MainPoint := dtmMainPoint;
TaCowsDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TaCowsDDTM);
end;
4: begin //to bank
dtmMainPoint.x := 820;
dtmMainPoint.y := 277;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindGrassColor;
dtmMainPoint.Tolerance := 1;
dtSubPoints[0].x := 827; //tree top point
dtSubPoints[0].y := 287;
dtSubPoints[0].AreaSize := 1;
dtSubPoints[0].AreaShape := 0;
dtSubPoints[0].Color := FindTreeTopColor;
dtSubPoints[0].Tolerance := 1;
dtSubPoints[1].x := 844; //npc color
dtSubPoints[1].y := 266;
dtSubPoints[1].AreaSize := 1;
dtSubPoints[1].AreaShape := 0;
dtSubPoints[1].Color := 60909;
dtSubPoints[1].Tolerance := 10;
dtSubPoints[2].x := 817; //bank symbol
dtSubPoints[2].y := 263;
dtSubPoints[2].AreaSize := 1;
dtSubPoints[2].AreaShape := 0;
dtSubPoints[2].Color := 1103344;
dtSubPoints[2].Tolerance := 10;
dtSubPoints[3].x := 861; //general store
dtSubPoints[3].y := 291;
dtSubPoints[3].AreaSize := 1;
dtSubPoints[3].AreaShape := 0;
dtSubPoints[3].Color := 66139;
dtSubPoints[3].Tolerance := 10;
dtSubPoints[4].x := 845; //tree root
dtSubPoints[4].y := 260;
dtSubPoints[4].AreaSize := 1;
dtSubPoints[4].AreaShape := 0;
dtSubPoints[4].Color := FindTreeRootColor;
dtSubPoints[4].Tolerance := 1;
TaBankDDTM.MainPoint := dtmMainPoint;
TaBankDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(TaBankDDTM);
end;
5: begin //Second DeadWalkPoint
dtmMainPoint.x := 614;
dtmMainPoint.y := 45;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 629;
dtmSubPoints[0].y := 58;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 593;
dtmSubPoints[1].y := 29;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 615;
dtmSubPoints[2].y := 49;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 614;
dtmSubPoints[3].y := 51;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
6: begin //third dead walk
dtmMainPoint.x := 590;
dtmMainPoint.y := 58;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 600;
dtmSubPoints[0].y := 70;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 580;
dtmSubPoints[1].y := 39;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 598;
dtmSubPoints[2].y := 67;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 579;
dtmSubPoints[3].y := 32;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
7: begin //fifth walk point
dtmMainPoint.x := 624;
dtmMainPoint.y := 30;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 612;
dtmSubPoints[0].y := 12;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 621;
dtmSubPoints[1].y := 41;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 621;
dtmSubPoints[2].y := 26;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 626;
dtmSubPoints[3].y := 31;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
8: begin //sixth walk point
dtmMainPoint.x := 615;
dtmMainPoint.y := 35;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 577;
dtmSubPoints[0].y := 33;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 627;
dtmSubPoints[1].y := 46;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 602;
dtmSubPoints[2].y := 32;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 604;
dtmSubPoints[3].y := 29;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
9: begin //walk 7 point
dtmMainPoint.x := 573;
dtmMainPoint.y := 72;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 558;
dtmSubPoints[0].y := 68;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 609;
dtmSubPoints[1].y := 75;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 595;
dtmSubPoints[2].y := 76;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 572;
dtmSubPoints[3].y := 73;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
10: begin // walk 8 point
dtmMainPoint.x := 572;
dtmMainPoint.y := 72;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 559;
dtmSubPoints[0].y := 59;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 595;
dtmSubPoints[1].y := 77;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 580;
dtmSubPoints[2].y := 66;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 569;
dtmSubPoints[3].y := 76;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
11: begin // walk 9 point
dtmMainPoint.x := 568;
dtmMainPoint.y := 64;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 557;
dtmSubPoints[0].y := 67;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 599;
dtmSubPoints[1].y := 62;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 568;
dtmSubPoints[2].y := 68;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 607;
dtmSubPoints[3].y := 65;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
12: begin // walk 10 point
dtmMainPoint.x := 598;
dtmMainPoint.y := 42;
dtmMainPoint.AreaSize := 1;
dtmMainPoint.AreaShape := 0;
dtmMainPoint.Color := FindRoadColor;
dtmMainPoint.Tolerance := 1;
dtmSubPoints[0].x := 586;
dtmSubPoints[0].y := 25;
dtmSubPoints[0].AreaSize := 1;
dtmSubPoints[0].AreaShape := 0;
dtmSubPoints[0].Color := FindRoadColor;
dtmSubPoints[0].Tolerance := 1;
dtmSubPoints[1].x := 589;
dtmSubPoints[1].y := 65;
dtmSubPoints[1].AreaSize := 1;
dtmSubPoints[1].AreaShape := 0;
dtmSubPoints[1].Color := FindRoadColor;
dtmSubPoints[1].Tolerance := 1;
dtmSubPoints[2].x := 592;
dtmSubPoints[2].y := 33;
dtmSubPoints[2].AreaSize := 1;
dtmSubPoints[2].AreaShape := 0;
dtmSubPoints[2].Color := FindRoadColor;
dtmSubPoints[2].Tolerance := 1;
dtmSubPoints[3].x := 591;
dtmSubPoints[3].y := 76;
dtmSubPoints[3].AreaSize := 1;
dtmSubPoints[3].AreaShape := 0;
dtmSubPoints[3].Color := FindRoadColor;
dtmSubPoints[3].Tolerance := 1;
WalkOneDDTM.MainPoint := dtmMainPoint;
WalkOneDDTM.SubPoints := dtmSubPoints;
Result := AddDTM(WalkOneDDTM);
end;
end;
end;
function DDTMmaster(Number:integer; Recursive:boolean):boolean; //stole this idea from king vash <3
var
MouseRan,ddtm,flagger:integer;
begin
if not LoggedIn then Exit;
Writeln('DDTMMaster(' + inttostr(number) + ')');
MakeCompass('n');
Result := False;
Flagger := 5;
MouseRan := 5;
case Number of
1: ddtm := LoadDDTMs(1);// 1 is first dead walk point
2: ddtm := LoadDDTMs(2);// 2 is fourth dead walk point
3: ddtm := LoadDDTMs(3);// 3 is to cows from bank
4: ddtm := LoadDDTMs(4);// 4 is to bank from cows
5: ddtm := LoadDDTMs(5);// 5 is second dead walk point
6: ddtm := LoadDDTMs(6);// 6 is third dead walk point
7: ddtm := LoadDDTMs(7);// 7 is fifth dead walk point
8: ddtm := LoadDDTMs(8);// 8 is sixth dead walk point
9: ddtm := LoadDDTMs(9);// 9 is seventh dead walk point
10: ddtm := LoadDDTMs(10);// 10 is eighth dead walk point
11: ddtm := LoadDDTMs(11);// 11 is ninth dead walk point
12: ddtm := LoadDDTMs(12);// 12 is tenth dead walk point
end;
if not LoggedIn then Exit;
if (DTMRotated(ddtm, x, y, mmx1 , mmy1, mmx2, mmy2)) then
begin
Status(Loop + 'Found DDTM(' + inttostr(number) + ')');
if rs_onminimap(x, y) and rs_onminimap(x, y) then
Mouse(x, y, MouseRan, MouseRan, true) // Yes: Click there
else
begin // No : DDTM plus offset is not onscreen
Writeln('DDTMMaster(' + inttostr(number) + ') OffMiniMap helper was just called from ' + loop) // Debug this fact
if rs_onminimap(x, y) and rs_onminimap(x, y) then
Mouse(x, y, 6, 6, True) // Yes : Click somewhere to DDTM
else Mouse(x, y, 3, 3, True); // No : Click close to DDTM // Wait till your Close
if (DTMRotated(ddtm, x, y, mmx1 , mmy1, mmx2, mmy2)) // Find The DDTM again
then Mouse(x, y, 5, 5, true) // Found and Clicked properly
end;
Result:=True; // Result is True!
Ftwait(4); // Look for Bad Stuff
FFlag(flagger); // Wait Till player is appropiate distance away
end;
FreeDTM(ddtm);
if not Result then
begin
if Recursive then Result := DDTMMaster(number, False)
else
begin
Players[CurrentPlayer].Loc := ('F in DDTMMaster(' + inttostr(number) + ')');
Writeln(Players[CurrentPlayer].Loc);
Inc(DDTMFailed[number]);
end;
end;
end;
procedure WalkToBank;
begin
if not DDTMMaster(4, true) then
if not RadialWalk(FindGrassColor, 0, 13, 51, 5, 5) then
if not RadialWalk(FindGrassColor, 322, 337, 53, 5, 5) then
begin
WriteLn('walking to Bank failed =[');
TakeMyScreen('WalkToBankFail');
NextPlayer(false);
end;
end;
procedure CloseIt;
begin
Exxey := BitmapFromString(6, 1, 'beNpLdCtIREUAPdcGiw==');
if FindBitmap(Exxey, x, y) then
begin
Mouse(x, y, 5, 5, true);
Wait(500 + random(500));
end;
end;
procedure DepositStuff;
begin
Hide := DTMFromString('78DA637461626078C2800276AE5FC7C005A41' +
'981F83F10300602D5DC6340038C4824907606AAB94E408D0550CD' +
'5D026AAC806ADE1150E30954F389801A7FA09AA7F8D50000C9150' +
'E5C');
if FindDTM(Hide, x, y, msx1, msy1, msx2, msy2) then
begin
Mouse(x, y, 5, 5, false);
ChooseOption('ll');
Wait(500 + random(500));
CloseIt;
Loads := Loads + 1;
LoadsDone := LoadsDone + 1;
ReportVars[3] := ReportVars[3] + 1;
end;
end;
procedure WalkToCows;
begin
if not DDTMMaster(3, true) then
if not RadialWalk(FindGrassColor, 152, 136, 43, 5, 5) then
if not RadialWalk(FindGrassColor, 118, 143, 43, 5, 5) then
begin
WriteLn('walking to Cows failed =[');
TakeMyScreen('WalkToCowsFail');
NextPlayer(false);
end;
end;
procedure FreeDTMs;
begin
FreeBitmap(Exxey);
FreeDTM(Hide);
end;
procedure Report;
begin
ClearReport;
SRLRandomsReport;
AddToReport('/\/\/\/\/\/\ cow killa /\/\/\/\/\/\');
AddToReport(Padr('[ Killed: ' + IntToStr(CowsKilled) + ' cows', 34) + ']');
AddToReport(Padr('[ Completed: ' + IntToStr(LoadsDone) + ' loads', 34) + ']');
AddToReport(Padr('[ Collected: ' + IntToStr(Hides) + ' hides', 34) + ']');
{AddToReport(Padr('[ Calibrated: ' + IntToStr(Calibrated) + ' times', 34) + ']');}
AddToReport(Padr('[ Ate: ' + IntToStr(Eaten) + ' times', 34) + ']');
AddToReport(Padr('[ Failed DDTMs: ', 34) + ']');
for i := 1 to 10 do
if (DDTMfailed[i] > 0) then
AddToReport(Padr('[' + IntToStr(i) + '=' + IntToStr(DDTMfailed[i]) + ',', 34) + ']');
AddToReport(Padr('[ Ran For: ' + TimeRunning, 34) + ']');
AddToReport('/\/\/\/\/\/\/ cow killa \/\/\/\/\/\/');
SendSRLReport;
end;
procedure MainLoop;
begin
repeat
repeat
repeat
RC;
if FindDead then DeadWalk;
if InFight then
begin
repeat
Wait(500 + random(500));
until not InFight;
end;
SetAngle(true);
MakeCompass('N');
if not Kill2{([4411236, 11712444, 12107201])} then
Calibrate;
begin
AntiBan;
TehRespond;
if InFight then
begin
repeat
Wait(500 + random(500));
until not InFight;
end;
CowsKilled := CowsKilled + 1;
ReportVars[0] := ReportVars[0] + 1;
PickUpHide2{([1319583, 11579578, 12829642, 5864095])};
if ShouldWeEat then
if EatTime then
begin
EatSome;
Eaten := Eaten + 1;
ReportVars[2] := ReportVars[2] + 1;
end;
Report;
end;
until InvFull;
WalkToBank;
DepositStuff;
WalkToCows;
Report;
until Loads >= NumLoads;
NextPlayer(LoggedIn);
Loads := 0;
until False;
end;
begin
SmartSetupEx(41, false, true);
wait(10000+random(5000));
SetTargetDC(SmartGetDC);
repeat
wait(100);
until(SmartGetColor(253, 233)<>1118604);
SetupSRL;
ScriptId := '817';
SRLId := MySRLId;
SRLPassword := MySRLPassword;
ClearDebug;
DeclarePlayers;
ActivateClient;
if LoggedIn then Logout;
LoginPlayer;
repeat
MainLoop;
ResetMe;
until False;
FreeDTMs;
end.
i can fix the counting errors, and im still working on a good way to calibrate. also trying to figure out what is wrong with the TPA's
He starts talking to himself..
"Hello"
"Lol"
"Funny funny"
"Omg"
"Rofl"
"Omg"
"Omg"
"Omg"
"Lol"
"Haha"
So I stopped it. =\.
Fyi to ericjzhang, yours doesn't work. At all. >.>.
Doesn't open up SMART
http://www.fenjer.com/adnan/SRLStats/4738.png
Hy71194's Fight Cave Runner is OWNS!!!!!!!!!
Drizzt's FallyCowCruncher is ownage too! <3<3<3
well it works for me...
ok i just started your script. so far so good. i have been watching and the responder seems a little much. maybe more of a wait time? i will post proggy when i wake up.
EDIT: accidently closed first proggy but this is what i had.
1 person got through 5 loads
2 person was stuck in lumby castle walking around
didnt get to the rest of the accounts
your on the right track with this script. tell me when you update and i will test again.
Weird it attacks goblins instead![]()
If I see you autoing with level 3/default clothes/crap name I WILL report you. Auto Correctly. - put this in your sig
has this script out dates as it dont work for me.

you could look at the last post date..
5-25-2008..
this is 3-12-2009..
that means it's been about 10 months since the last post..
hopefully you can figure it out next time![]()
Please update this script.
They removed the bank there, so its pointless
There are currently 1 users browsing this thread. (0 members and 1 guests)