Page 2 of 2 FirstFirst 12
Results 26 to 48 of 48

Thread: Cow Killa

  1. #26
    Join Date
    Jun 2007
    Posts
    235
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    dont know if you tried to fix it but new version still lags 4 me

  2. #27
    Join Date
    Apr 2008
    Posts
    28
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Yeah it's back to lagging people out but by the looks of my char you get it to work fine

  3. #28
    Join Date
    Oct 2006
    Posts
    2,297
    Mentioned
    1 Post(s)
    Quoted
    0 Post(s)

    Default

    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]

  4. #29
    Join Date
    Apr 2008
    Posts
    28
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by the scar noob View Post
    This may sound a little meany, but do I have a chance of making one by myself afterall? A better one?

    -Tsn.
    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

  5. #30
    Join Date
    Dec 2006
    Location
    Program TEXAS home of AUTOERS
    Posts
    7,934
    Mentioned
    26 Post(s)
    Quoted
    237 Post(s)

    Default

    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

  6. #31
    Join Date
    Oct 2007
    Location
    Sweden
    Posts
    199
    Mentioned
    1 Post(s)
    Quoted
    23 Post(s)

    Default

    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.

  7. #32
    Join Date
    Oct 2006
    Posts
    2,297
    Mentioned
    1 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by P1NKY View Post
    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
    Meh, too late. Someone else and me are on something else

    -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]

  8. #33
    Join Date
    Apr 2008
    Posts
    28
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by P1NKY View Post
    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
    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.

  9. #34
    Join Date
    Apr 2007
    Location
    The Netherlands
    Posts
    5,553
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by sex° View Post
    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.
    Change Name Or Get Infraction.
    ~Hermen

  10. #35
    Join Date
    Aug 2007
    Location
    Georgia, U.S.
    Posts
    890
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    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 \/\/\/\/\/\/

  11. #36
    Join Date
    Aug 2007
    Location
    Georgia, U.S.
    Posts
    890
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    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.

  12. #37
    Join Date
    Oct 2007
    Location
    Sweden
    Posts
    199
    Mentioned
    1 Post(s)
    Quoted
    23 Post(s)

    Default

    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...

    \~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/
    /\/\/\/\/\/\ 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 \/\/\/\/\/\/
    I think it killed about 8-10 cows and picked up just as many hides.
    Previously known as Billy Opel.

  13. #38
    Join Date
    Apr 2007
    Posts
    225
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    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

  14. #39
    Join Date
    Mar 2007
    Posts
    26
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    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.

  15. #40
    Join Date
    Aug 2007
    Location
    Georgia, U.S.
    Posts
    890
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    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

  16. #41
    Join Date
    Mar 2008
    Posts
    47
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    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

  17. #42
    Join Date
    Mar 2007
    Posts
    26
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    well it works for me...

  18. #43
    Join Date
    Feb 2008
    Posts
    36
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    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.

  19. #44
    Join Date
    May 2008
    Location
    Your mom's bedroom
    Posts
    68
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    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

  20. #45
    Join Date
    Sep 2007
    Posts
    45
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    has this script out dates as it dont work for me.

  21. #46
    Join Date
    Dec 2008
    Posts
    2,813
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    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

  22. #47
    Join Date
    Jan 2008
    Posts
    94
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Please update this script.

  23. #48
    Join Date
    Nov 2008
    Location
    Belgium
    Posts
    254
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    They removed the bank there, so its pointless

Page 2 of 2 FirstFirst 12

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •