Results 1 to 15 of 15

Thread: AIO Catacomb Killer

  1. #1
    Join Date
    Feb 2012
    Location
    SRL Jail
    Posts
    1,319
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default AIO Catacomb Killer

    My newest project (in the sig) is an AIO Catacomb Killer. I've looked around and I haven't been able to find one (other than Flight's, which is in SCAR and Reflection, and Harry's only kills Dragith Nurn). I will be progressing room by room and keep you all updated with pictures and code.

    Room 1
    - Warped Cockroach
    - Level 1
    Simba Code:
    'Warped Cockroach' : begin // 6x6
                              Col := 2634855;
                              Hue := 0.08;
                              Sat := 0.43;
                              Tol := 16;
                             end; // Level 1, Room 1

    Room 2
    - Corpse Spider
    - Level 3
    Simba Code:
    'Corpse Spider' : begin // 3x3
                            Col := 4674914;
                            Hue := 0.16;
                            Sat := 0.31;
                            Tol := 19;
                            vDTM := DTMFromString('mQwAAAHicY2ZgYNjIyMCwG4hXAvF1IP8qEF8DYksTRYbq0iiG5FBLBn4gH4YZkTAQAABUVweX');
                          end; // Level 3, Room 2

    Room 3
    - Warped Fly
    - Level 5
    Simba Code:
    'Warped Fly' : begin
                         vDTM := This one is hard...
                       end; // Level 5, Room 3

    Room 4
    - Crawling Corpse Torso
    - Level 7
    Simba Code:
    'Crawling Corpse Torso' : begin
                                    vDTM := DTMFromString('mQwAAAHicY2ZgYKhkZGAoBuJaIG6C0jVAnBzrxRAV6cTQ0xTFIAJUB8OMSBgIABNBBpQ=');
                                  end; // Level 7, Room 4

    Room 5
    - Warped Rat
    - Level 9
    Simba Code:
    'Warped Rat' : begin //3x3
                        Col := 3952212;
                        Hue := 0.25;
                        Sat := 0.46;
                        Tol := 13;
                       end; // Level 9, Room 5

    Room 6
    - Skeleton
    - Level 11
    Simba Code:
    'Skeleton' : begin //3x3
                      Col := 6730715;
                      Hue := 0.05;
                      Sat := 1.84;
                      Tol := 21;
                     end; // Level 11, Room 6

    Room 7
    - Warped Bat
    - Level 12
    Simba Code:
    'Warped Bat' : begin
                        vDTM := This one is hard...
                       end; // Level 12, Room 7

    Room 8
    - Corpse Archer
    - Level 13
    Simba Code:
    'Corpse Archer' : begin
                            vDTM := DTMFromString('mWAAAAHicY2FgYHgExO+A+BkQ3wHi10D8EYi/QcWLu6IYggItGTQ1FBmCQp0YJIFiyJgRDYMAALCCC00=');
                          end; // Level 13, Room 8

    Room 9
    - Skoblin
    - Level 14
    Simba Code:
    'Skoblin' : begin //3x3
                      Col := 6130846;
                      Hue := 0.10;
                      Sat := 0.58;
                      Tol := 13;
                    end; // Level 14, Room 9

    Room 10
    - Corpse Mage
    - Level 15
    Simba Code:
    'Corpse Mage' : begin //3x3
                         Col := 6643783;
                         Hue := 3.44;
                         Sat := 0.65;
                         Tol := 12;
                        end; // Level 15, Room 10

    Room 11
    - Dragith Nurn
    - Level 20
    Simba Code:
    procedure DragithNurner; // I got this idea from Harry's Catacomb Grabber.
    var
    x, y, Plinth: Integer;
    GetIt: Extended;

    begin
      Plinth := DTMFromString('mggAAAHicY2NgYPjPyMDwC4jZmRgYmJgg/G9AHA/ECVCcBsRRQJwExFP6WjBwdWE2Ay7AiANDAAArCA/o');
        if FindDTMRotated(Plinth, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, GetIt) then
          begin
            mouse(x,y,1,1,False);
            ChooseOption('ouch');
          end;
      Wait(5000 + Random(1500));
    end;

    So that's the progress thus far. Here's the whole code:
    Simba Code:
    program JOEbotsCatacombs;
    {$DEFINE SMART}
    {$i SRL/srl.simba}
    {$i sps/sps.simba}
    {$i ObjectDTM\ObjDTMInclude.simba}

    {================================ ! FILL THIS OUT ! ==========================================}
    {=============================================================================================}
    {_____________________________________________________________________________________________}
    {=============================================================================================}
    {=============================================================================================}
    procedure DeclarePlayers;  // Login information. You want to play, dont you? Fancy Shmancy
    begin
      HowManyPlayers := 2; // You can add more if you want, Just copy and paste a Player Section and write a different number in the [0], [1], [2] Box
      NumberOfPlayers(HowManyPlayers);
      CurrentPlayer := 0; // Starts at Players[0]


      with Players[0] do
        begin
          Name        := '';  // Enter your username in the blue things
          Pass        := ''; // Enter your password in the blue things
          Nick        := '';
          Pin         := '';
          Active      := True;
          BoxRewards := ['Xp', 'ostume', 'aphire'];
        end;

      with Players[1] do // Multiplayer!
        begin
          Name        := '';  // Enter your username in the blue things
          Pass        := ''; // Enter your password in the blue things
          Nick        := '';
          Pin         := '';
          Active      := True;
          BoxRewards := ['Xp', 'ostume', 'aphire'];
        end;
    end;
    {=============================================================================================}
    {=============================================================================================}
    {_____________________________________________________________________________________________}
    {=============================================================================================}
    {=============================================================================================}





                                            { !!!STOP!!! }
    {=============================================================================================}
    { *                      PLEASE DO NOT EDIT ANYTHING BEYOND THIS POINT                      *
    {  *                           UNLESS YOU KNOW WHAT YOU ARE DOING                            *
    ( *                        OR WISH TO BORROW SOMETHING FROM THE SCRIPT                      *
    (  *                      IF THERE IS A PROBLEM OR A BUG WITH THE SCRIPT                     *
    ( *                                 LET ME KNOW SO I CAN FIX IT                             *
    (  *                           IF YOU HAVE ANY ADVICE OR SUGGESTIONS                         *
    ( *                          POST THEM ON THE ORIGINAL THREAD OR PM ME                      *
    (  *                                   ! THANK YOU AND ENJOY !                               *
    {=============================================================================================}


    procedure iWelcomeU;
    begin
      WriteLn('******************************************************************');
      WriteLn('******************* JOEbots Catacombs- Enjoy! ********************');
      WriteLn('******************************************************************');
    end;

    procedure iNotBanned;
    begin
      if(not LoggedIn) then Exit;
        case Random(250) of

          10:
            begin
              Hoverskill('Strength', False);
              wait(1551+Random(2111));
            end;

          20:
            begin
              Hoverskill ('Attack', False);
              wait(1661+Random(2221));
            end;

          30:
            begin
              Hoverskill ('Defence', False);
              wait(1771+Random(2331));
            end;

          40: RandomRClick;


          50: PickUpMouse;


        end;
    end;

    procedure AntiRandoms;
    begin
      FindNormalRandoms;
      LampSkill := 'Strength';
      LevelUp;
    end;

    procedure Loot;
    var
    Hue, Sat: Extended;
    Col, Tol: Integer;
    begin
      case Pickup of
        'Runes' : begin
                    Col := 11711143;
                    Hue := 5.35;
                    Sat := 0.32;
                    Tol := 9;
                  end;

        'Coins' : begin
                    Col := 4905207;
                    Hue := 0.72;
                    Sat := 4.24;
                    Tol := 2;
                  end;
      end;
    end;

    procedure Monsters;
    var
    vDTM, Col, Tol: Integer;
    Hue, Sat: Extended;

    begin
      case Victim of
        'Warped Cockroach' : begin // 6x6
                              Col := 2634855;
                              Hue := 0.08;
                              Sat := 0.43;
                              Tol := 16;
                             end; // Level 1, Room 1

        'Corpse Spider' : begin // 3x3
                            Col := 4674914;
                            Hue := 0.16;
                            Sat := 0.31;
                            Tol := 19;
                            vDTM := DTMFromString('mQwAAAHicY2ZgYNjIyMCwG4hXAvF1IP8qEF8DYksTRYbq0iiG5FBLBn4gH4YZkTAQAABUVweX');
                          end; // Level 3, Room 2

        'Warped Fly' : begin
                         vDTM :=
                       end; // Level 5, Room 3

        'Crawling Corpse Torso' : begin
                                    vDTM := DTMFromString('mQwAAAHicY2ZgYKhkZGAoBuJaIG6C0jVAnBzrxRAV6cTQ0xTFIAJUB8OMSBgIABNBBpQ=');
                                  end; // Level 7, Room 4

        'Warped Rat' : begin //3x3
                        Col := 3952212;
                        Hue := 0.25;
                        Sat := 0.46;
                        Tol := 13;
                       end; // Level 9, Room 5

        'Skeleton' : begin //3x3
                      Col := 6730715;
                      Hue := 0.05;
                      Sat := 1.84;
                      Tol := 21;
                     end; // Level 11, Room 6

        'Warped Bat' : begin
                        // DTM
                       end; // Level 12, Room 7

        'Corpse Archer' : begin
                            vDTM := DTMFromString('mWAAAAHicY2FgYHgExO+A+BkQ3wHi10D8EYi/QcWLu6IYggItGTQ1FBmCQp0YJIFiyJgRDYMAALCCC00=');
                          end; // Level 13, Room 8

        'Skoblin' : begin //3x3
                      Col := 6130846;
                      Hue := 0.10;
                      Sat := 0.58;
                      Tol := 13;
                    end; // Level 14, Room 9

        'Corpse Mage' : begin //3x3
                         Col := 6643783;
                         Hue := 3.44;
                         Sat := 0.65;
                         Tol := 12;
                        end; // Level 15, Room 10

        {'Dragith Nurn' - Special}

      end;
    end;

    procedure DragithNurner; // I got this idea from Harry's Catacomb Grabber.
    var
    x, y, Plinth: Integer;
    GetIt: Extended;

    begin
      Plinth := DTMFromString('mggAAAHicY2NgYPjPyMDwC4jZmRgYmJgg/G9AHA/ECVCcBsRRQJwExFP6WjBwdWE2Ay7AiANDAAArCA/o');
        if FindDTMRotated(Plinth, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, GetIt) then
          begin
            mouse(x,y,1,1,False);
            ChooseOption('ouch');
          end;
      Wait(5000 + Random(1500));
    end;
    Mind you I've been working on this for about 2 days...

    And now for the even more reworked code and a couple additions- this is just about the skeleton of my script, should work if you try it Give me some feedback on this one, and maybe some suggestions!
    Simba Code:
    program JOEbotsCatacombs;
    {$DEFINE SMART}
    {$i SRL/srl.simba}
    {$i sps/sps.simba}
    {$i ObjectDTM\ObjDTMInclude.simba}

    // This script is made for F2P, if you want Members capabilities: Please lend me a Members account!

    const
      Collector = True; // True to Pick up items
      Pickup = 'Coins'; // If Collector is True, then Choose what you want to Pick up (Listed Below)
      Bury = True; // True to Bury Bones
      Victimise = True; // True to Attack Stuff
      Victim = 'Corpse Mage'; // If Victimise is True, then Choose a Monster (Listed Below and on Original Thread)
      DragithNurn = False; // True to Attack Dragith Nurn instead of other Monsters

    var
      A, B, vDTM, Col, Tol, L1, L2, lTol, pCol, pTol: Integer;
      Hue, Sat, pHue, pSat, GetIt: Extended;

    {================================ ! FILL THIS OUT ! ==========================================}
    {=============================================================================================}
    {_____________________________________________________________________________________________}
    {=============================================================================================}
    {=============================================================================================}
    procedure DeclarePlayers;  // Login information. You want to play, dont you? Fancy Shmancy
    begin
      HowManyPlayers := 2; // You can add more if you want, Just copy and paste a Player Section and write a different number in the [0], [1], [2] Box
      NumberOfPlayers(HowManyPlayers);
      CurrentPlayer := 0; // Starts at Players[0]


      with Players[0] do
        begin
          Name        := '';  // Enter your username in the blue things
          Pass        := ''; // Enter your password in the blue things
          Nick        := '';
          Pin         := '';
          Active      := True;
          BoxRewards := ['Xp', 'ostume', 'aphire'];
        end;

      with Players[1] do // Multiplayer!
        begin
          Name        := '';  // Enter your username in the blue things
          Pass        := ''; // Enter your password in the blue things
          Nick        := '';
          Pin         := '';
          Active      := True;
          BoxRewards := ['Xp', 'ostume'];
        end;
    end;
    {=============================================================================================}
    {=============================================================================================}
    {_____________________________________________________________________________________________}
    {=============================================================================================}
    {=============================================================================================}





                                              { !!!STOP!!! }
    {=============================================================================================}
    { *                       PLEASE DO NOT EDIT ANYTHING BEYOND THIS POINT                      *
    {  *                           UNLESS YOU KNOW WHAT YOU ARE DOING                            *
    ( *                        OR WISH TO BORROW SOMETHING FROM THE SCRIPT                      *
    (  *                      IF THERE IS A PROBLEM OR A BUG WITH THE SCRIPT                     *
    ( *                                 LET ME KNOW SO I CAN FIX IT                             *
    (  *                           IF YOU HAVE ANY ADVICE OR SUGGESTIONS                         *
    ( *                          POST THEM ON THE ORIGINAL THREAD OR PM ME                      *
    (  *                                   ! THANK YOU AND ENJOY !                               *
    {=============================================================================================}


    // I'm serious, STOP.

    procedure iWelcomeU;
    begin
      WriteLn('******************************************************************');
      WriteLn('******************* JOEbots Catacombs- Enjoy! ********************');
      WriteLn('******************************************************************');
    end;

    procedure iNotBanned;
    begin
      if(not LoggedIn) then Exit;
        case Random(250) of

          10:
            begin
              SetAngle(SRL_ANGLE_HIGH);
              Hoverskill('Strength', False);
              wait(1551+Random(2111));
            end;

          20:
            begin
              SetAngle(SRL_ANGLE_HIGH);
              Hoverskill ('Attack', False);
              wait(1661+Random(2221));
            end;

          30:
            begin
              Hoverskill ('Defence', False);
              wait(1771+Random(2331));
            end;

          40: RandomRClick;


          50: PickUpMouse;


        end;
    end;

    procedure AntiRandoms;
    begin
      FindNormalRandoms;
      LampSkill := 'Strength';
      LevelUp;
    end;

    function InFight: Boolean;
    begin
      Result := srl_InFight;
    end;

    procedure LootType;
    var
      pHue, pSat: Extended;
      pCol, pTol: Integer;

    begin
      if (Collector = True) then
        begin
          case Pickup of
            'Runes' : begin
                        pCol := 11711143;
                        pHue := 5.35;
                        pSat := 0.32;
                        pTol := 9;
                      end;

            'Coins' : begin
                        pCol := 4905207;
                        pHue := 0.72;
                        pSat := 4.24;
                        pTol := 2;
                      end;
          end;
        end;
    end;

    procedure Boner;
    var
      bDTM, IbDTM, x, y: Integer;
      GetIt: Extended;

    begin
      if(Bury = True)then
        begin // On the ground
          bDTM := DTMFromString('mLgAAAHicY2JgYIhkZGAIBuKpQDwTiK9dPsdw7/o1Bi6gHAgzQjEDAwC2IAb5');
          SetAngle(SRL_ANGLE_HIGH);
            if FindDTMRotated(bDtm, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, GetIt) then
              begin
                MMouse(x, y, 1, 1);
                clickMouse2(false);
                ChooseOption('ake');
              end;
        end;

          begin // Inventory
            IbDTM := DTMFromString('mLgAAAHicY2JgYHjMxMDwFojnMDIwzAXiKX09DEvnzWFgBcqBMCMUMzAAAML4Bqs=');
            SetAngle(SRL_ANGLE_HIGH);
              if FindDTMRotated(IbDtm, x, y, MIX1, MIY1, MIX2, MIY2, -Pi/4, Pi/4, Pi/60, GetIt) then
                  begin
                    MMouse(x, y, 1, 1);
                    clickMouse2(false);
                    ChooseOption('ury');
                  end;
          end;
    end;

    procedure Monsters; // Got this idea from LeetzGhettoBot- Ingenius.
    var
      A, B, vDTM, Col, Tol, lTol, L1, L2: Integer;
      Hue, Sat: Extended;

    begin
      if (Victimise = True) then
      begin
        case Victim of
          'Warped Cockroach' : begin
                                Col := 2634855;
                                Hue := 0.08;
                                Sat := 0.43;
                                Tol := 16;
                                A := 6;
                                B := 6;
                                vDTM := DTMFromString('mLgAAAHicY2JgYFjCCMEXgOyzQDwn0AmMJYFsEGaEYgYGAKIUBXw=');
                                L1 := 3229093;
                                L2 := 2700395;
                                lTol := 25;
                               end; // Level 1, Room 1

          'Corpse Spider' : begin
                              Col := 4674914;
                              Hue := 0.16;
                              Sat := 0.31;
                              Tol := 19;
                              A := 3;
                              B := 3;
                              vDTM := DTMFromString('mQwAAAHicY2ZgYNjIyMCwG4hXAvF1IP8qEF8DYksTRYbq0iiG5FBLBn4gH4YZkTAQAABUVweX');
                              L1 := 5405060;
                              L2 := 5928315;
                              lTol := 15;
                            end; // Level 3, Room 2

          'Warped Fly' : begin
                           vDTM := DTMFromString('mQwAAAHicY2ZgYDjFyMBwDIi3A7EUEPMDsQAQB4UGMezdtRVMcwHVwTAjEgYCACJyBsk=');
                           L1 := 13028302;
                           L2 := 12435142;
                           lTol := 15;
                         end; // Level 5, Room 3

          'Crawling Corpse Torso' : begin
                                      vDTM := DTMFromString('mQwAAAHicY2ZgYKhkZGAoBuJaIG6C0jVAnBzrxRAV6cTQ0xTFIAJUB8OMSBgIABNBBpQ=');
                                      L1 := 5931660;
                                      L2 := 3231058;
                                      lTol := 15;
                                    end; // Level 7, Room 4

          'Warped Rat' : begin
                          Col := 3952212;
                          Hue := 0.25;
                          Sat := 0.46;
                          Tol := 13;
                          A := 3;
                          B := 3;
                          vDTM := DTMFromString('mLgAAAHicY2JgYJBkZGAQAeLnQPZ7II4KtGQoTvRi4AeyQZgRihkYAHKOBCo=');
                          L1 := 3755354;
                          L2 := 4875635;
                          lTol := 15;
                         end; // Level 9, Room 5

          'Skeleton' : begin
                        Col := 6730715;
                        Hue := 0.05;
                        Sat := 1.84;
                        Tol := 21;
                        A := 3;
                        B := 3;
                        vDTM := DTMFromString('mLgAAAHicY2JgYPgKxEyMDAwKQKwExNe29TAs7ctm4AeKgzAjFDMwAACKaQUV');
                        {vDTM := DTMFromString('mLgAAAHicY2JgYBBgYmDgAuJZjAwMk4C4ujCbwcvXi4EVKAfCjFDMwAAAX8QDkw=='); If the other one doesn't work, use this one}
                        L1 := 10276847;
                        L2 := 8694470;
                        lTol := 15;
                       end; // Level 11, Room 6

          'Warped Bat' : begin
                          vDTM := DTMFromString('mLgAAAHicY2JgYGBhYmD4z8jAcBjI3gHELaXZDE6uTgysQDYIM0IxAwMAiwMEvQ==');
                          L1 := 0; // NEEDED
                          L2 := 0; // DEDEEN
                          lTol := 0; // NEEDED
                         end; // Level 12, Room 7

          'Corpse Archer' : begin
                              vDTM := DTMFromString('mWAAAAHicY2FgYHgExO+A+BkQ3wHi10D8EYi/QcWLu6IYggItGTQ1FBmCQp0YJIFiyJgRDYMAALCCC00=');
                              L1 := 4873571;
                              L2 := 3230026;
                              lTol := 10;
                            end; // Level 13, Room 8

          'Skoblin' : begin
                        Col := 6130846;
                        Hue := 0.10;
                        Sat := 0.58;
                        Tol := 13;
                        A := 3;
                        B := 3;
                        vDTM := DTMFromString('mLgAAAHicY2JgYNgCxLuAeCUQLwHivYuqGaY0JTPwA9kgzAjFDAwAsvIGMQ==');
                        L1 := 7048860;
                        L2 := 7049893;
                        lTol := 17;
                      end; // Level 14, Room 9

          'Corpse Mage' : begin
                           Col := 6643783;
                           Hue := 3.44;
                           Sat := 0.65;
                           Tol := 12;
                           A := 3;
                           B := 3;
                           vDTM := DTMFromString('mLgAAAHicY2JgYDBgZGBQBeLXQPZLIK4ujWLoaYpi4AeyQZgRihkYAIi/BQA=');
                           {vDTM := DTMFromString('mLgAAAHicY2JgYOBgZGD4AaR1gLQuEHv5WjJ4hToxcIDkgJgRihkYAFodAyI='); If the other one doesn't work, use this one}
                           L1 := 5404027;
                           L2 := 5405051;
                           lTol := 15;
                          end; // Level 15, Room 10

          {'Dragith Nurn' - Special}

        end;
      end;
    end;

    procedure DragithNurner; // I got this idea from Harry's Catacomb Grabber.
    var
      x, y, Plinth: Integer;
      GetIt: Extended;

    begin
      if (DragithNurn = True) then
        begin
          Plinth := DTMFromString('mggAAAHicY2NgYPjPyMDwC4jZmRgYmJgg/G9AHA/ECVCcBsRRQJwExFP6WjBwdWE2Ay7AiANDAAArCA/o');
            SetAngle(SRL_ANGLE_HIGH);
              if FindDTMRotated(Plinth, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, GetIt) then
                begin
                  MMouse(x,y,1,1);
                  ClickMouse2(False);
                  ChooseOption('ouch');
                    if (DidRedClick) then
                      Wait(5000 + Random(1500)); // You should be able to kill the monster by this time
                end;
        end;
    end;

    function LastStand (L1, L2, lTol: Integer): Boolean; // Simple, Easy, Solid Attack Failsafe
    var
      x,y: Integer;

    begin
      if FindObjCustom(x, y, ['att', 'ack'], [L1, L2], lTol) then
        MMouse (x, y, 3, 3);
        ClickMouse2 (False);
        ChooseOption ('ttack');
          if (DidRedClick) then
        wait(5000+Random(5000));
    end;

    procedure Attack (Hue, Sat, GetIt: Extended; Col, Tol, vDTM: Integer);
    var
      tmpCTS, CTS, I, x ,y: Integer;
      TPA: TPointArray;
      ATPA: T2DPointArray;

    begin
      begin
        CTS := GetColorToleranceSpeed;
        ColorToleranceSpeed(2);
        SetColorSpeed2Modifiers(Hue, Sat);
        FindColorsSpiralTolerance(MSCX, MSCY, TPA, Col, MSX1, MSY1, MSX2, MSY2, Tol);
        ColorToleranceSpeed(CTS);
        ATPA := TPAToATPAEx(TPA, A, B);

          for I := 0 to High(ATPA) do
            begin
              MiddleTPAEx(ATPA[i], x, y);
              MMouse(x, y, 1, 1);
                begin
                  clickMouse2(false);
                  chooseoption('ttack');
                    if (DidRedClick) then
                      Wait(5000 + Random(1500)); // You should be able to kill the monster by this time
                end;
        ColorToleranceSpeed(tmpCTS);
        SetColorSpeed2Modifiers(0.22, 0.22);
    end;

      begin
        SetAngle(SRL_ANGLE_HIGH);
          if FindDTMRotated(vDtm, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, GetIt) then
            begin
              MMouse(x, y, 1, 1);
              clickMouse2(false);
              ChooseOption('ttack');
                if (DidRedClick) then
                  Wait(5000 + Random(1500)); // You should be able to kill the monster by this time
            end;
      end;
        if not FindDTMRotated(vDtm, x, y, MSX1, MSY1, MSX2, MSY2, -Pi/4, Pi/4, Pi/60, GetIt) then
          begin
            LastStand(L1, L2, lTol);
          end;
    end;
    end;

    procedure Picker (pHue, pSat, GetIt: Extended; pCol, pTol: Integer);
    var
      tmpCTS, CTS, I, x ,y: Integer;
      TPA: TPointArray;
      ATPA: T2DPointArray;

    begin
      CTS := GetColorToleranceSpeed;
      ColorToleranceSpeed(2);
      SetColorSpeed2Modifiers(Hue, Sat);
      FindColorsSpiralTolerance(MSCX, MSCY, TPA, pCol, MSX1, MSY1, MSX2, MSY2, pTol);
      ColorToleranceSpeed(CTS);
      ATPA := TPAToATPAEx(TPA, 2, 2);

        for I := 0 to High(ATPA) do
          begin
            MiddleTPAEx(ATPA[i], x, y);
            MMouse(x, y, 1, 1);
              begin
                clickMouse2(false);
                chooseoption('ake');
                  if (DidRedClick) then
                    Wait(1000 + Random(1500));
              end;
                // Equip procedure for arrows and coins in developement
          end;
      ColorToleranceSpeed(tmpCTS);
      SetColorSpeed2Modifiers(0.22, 0.22);
    end;

    begin
      Smart_server := 11;
      Smart_Signed := TRUE;
      Smart_Members := FALSE;
      Smart_SuperDetail := FALSE;

      SetupSRL;
      DeclarePlayers;
      LoginPlayer;
      Wait(2000);
      iWelcomeU;
      GameTab(tab_Inv);

      if (not(LoggedIn)) then
        if Players[CurrentPlayer].Active then
            LoginPlayer;

      repeat
        repeat
          if (not InFight) then
            Attack(Hue, Sat, GetIt, Col, Tol, vDTM);
            DragithNurner;
          if (not InFight) then
            Boner;
            Picker(pHue, pSat, GetIt, pCol, pTol);

        until (not LoggedIn);
        NextPlayer(Players[CurrentPlayer].Active = False);
      until AllPlayersInactive;
    end.

    { ********=*****====*****===****=====*****=**********=================
          *    *   *    *       *   *    *   *    * *       * Scripts *
          *    *   *    ****    ****     *   *    * *       * Scripts *
      *   *    *   *    *       *   *    *   *    * *       * Scripts *
      *****    *****    *****   ****     *****    * *       * Scripts *}

    Please not that the simba tags distort the code standards!

    ~Joe
    Last edited by Joe; 04-30-2012 at 09:54 PM.

  2. #2
    Join Date
    Jan 2012
    Location
    Calgary, AB, Canada
    Posts
    1,819
    Mentioned
    5 Post(s)
    Quoted
    120 Post(s)

    Default

    Is this for the lumbridge catacombs? If so Harry has a Dragith Nurn killer, I run it on my pure 24/7. GL though maybe I could help with monster finding like TPA's and such
    Current Project: Retired

  3. #3
    Join Date
    Feb 2012
    Location
    SRL Jail
    Posts
    1,319
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    This one is AIO, and would kill any monster and detect which room you are in and just adapt. I'm planning on making this a huge project.

    And if I need some help I'll be sure to ask you, Gucci!

  4. #4
    Join Date
    Jan 2012
    Location
    Calgary, AB, Canada
    Posts
    1,819
    Mentioned
    5 Post(s)
    Quoted
    120 Post(s)

    Default

    Nice the deathwalk Harry has is pretty nice if you wanna ask him to let you use it as it works very well
    Current Project: Retired

  5. #5
    Join Date
    Nov 2011
    Posts
    1,532
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    IMO only the dragith room and the corpse mage room has training value, due to the fact that they can be botted 24/7 with little to no food.

    IIRC Corpse mage has a max hit of 2
    Current activity: Recovering from vacation
    - Nulla pars vitae vacare officio potest -
    SRL membership? Can I buy that?
    Scripts - AGS - SWF - WAR - EMS - W100S-EM
    If you need scripting help, you can pm me. Remember, if you need help you have to ask for it properly though

  6. #6
    Join Date
    Dec 2006
    Location
    Sweden
    Posts
    10,812
    Mentioned
    3 Post(s)
    Quoted
    16 Post(s)

    Default

    Quote Originally Posted by Er1k View Post
    IMO only the dragith room and the corpse mage room has training value, due to the fact that they can be botted 24/7 with little to no food.
    This. Unless you're doing it on a very very low level account, the only worthwhile room is the last one. Not to mention the fact that the last room is the only room without "competition", due to the statue spawning the monster. I'd suggest training elsewhere and then killing Nurn in the last chamber, but good luck on your project.


    Send SMS messages using Simba
    Please do not send me a PM asking for help; I will not be able to help you! Post in a relevant thread or make your own! And always remember to search first!

  7. #7
    Join Date
    Feb 2012
    Location
    SRL Jail
    Posts
    1,319
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by Harry View Post
    This. Unless you're doing it on a very very low level account, the only worthwhile room is the last one. Not to mention the fact that the last room is the only room without "competition", due to the statue spawning the monster. I'd suggest training elsewhere and then killing Nurn in the last chamber, but good luck on your project.
    It's more for my personal scripting developement than others leveling. Plus if it has all the rooms, then the training value is the same, as low level players, medium and high can use this.

  8. #8
    Join Date
    Jan 2012
    Posts
    522
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    I think he's aiming for the accomplishment rather than training.

  9. #9
    Join Date
    Feb 2012
    Location
    SRL Jail
    Posts
    1,319
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by phyaskou View Post
    i think he's aiming for the accomplishment rather than training.
    bingo!
    EDIT: Man I missed my 500th post...

  10. #10
    Join Date
    Jan 2012
    Posts
    522
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by JOEbot View Post
    bingo!
    EDIT: Man I missed my 500th post...
    I do think accomplishment is more better on hard tasks rather than the reward in the end.

  11. #11
    Join Date
    Nov 2011
    Posts
    1,532
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Even though the achievement means something, the cost effectiveness should always be taken into account. I am not sure if you had that before, but releasing something that no one gives a damn about certainly isn't the best thing you want to.

    I don't mean to discourage anybody here, but I would think twice whether I should do it and if there's a better way to do it before making something nowadays.

    I know people need to practice in order to learn scripting, but having 293843204 choppers/miners/alcher/whatever in the script section isn't exactly what we really need, right? But the catacombs may be somewhat useful, I don't know - so good luck
    Current activity: Recovering from vacation
    - Nulla pars vitae vacare officio potest -
    SRL membership? Can I buy that?
    Scripts - AGS - SWF - WAR - EMS - W100S-EM
    If you need scripting help, you can pm me. Remember, if you need help you have to ask for it properly though

  12. #12
    Join Date
    Oct 2011
    Posts
    120
    Mentioned
    0 Post(s)
    Quoted
    2 Post(s)

    Default

    Goodluck this will be awesome for f2p
    Decision Runite
    85+ Mining
    Progress:
    {[( l l l l l l l l l l l l l )]}
    Previously known as Perfecticus

  13. #13
    Join Date
    Feb 2012
    Location
    SRL Jail
    Posts
    1,319
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by Er1k View Post
    Even though the achievement means something, the cost effectiveness should always be taken into account. I am not sure if you had that before, but releasing something that no one gives a damn about certainly isn't the best thing you want to.

    I don't mean to discourage anybody here, but I would think twice whether I should do it and if there's a better way to do it before making something nowadays.

    I know people need to practice in order to learn scripting, but having 293843204 choppers/miners/alcher/whatever in the script section isn't exactly what we really need, right? But the catacombs may be somewhat useful, I don't know - so good luck

    I think it would be great... this way you could start at the warped cockroaches, and work your way up. You could have a pure LIVE down there with this script rather than misc scripts to get to Harry's dragith nurn killer (which I am making a variation of as well)

  14. #14
    Join Date
    Dec 2011
    Location
    The Netherlands
    Posts
    1,631
    Mentioned
    47 Post(s)
    Quoted
    254 Post(s)

    Default

    The personal value after creating a script is definately important. I've also decided to work on a big project (Great Orb Project script) and once it's finished I will feel satisfied because I've managed to complete such a big project. There are other big projects I could've made, but no-one has made a color script for GOP yet. Which makes it more interesting to make, atleast for me.

    Nice progress so far, but I advise you to use Arrays to store the different colors from the monsters.

    This is what I use to define at which altar the bot currently is
    Simba Code:
    function DefineArea:String;
    var
      AltarMMCol, AltarMMTol, ColorCount: Array of Integer;
      AltarMMHue, AltarMMSat: Array of Extended;
      PossibleAltars: Array of String;
      i: Integer;

    begin;
      AltarMMCol := [6274014, 3035750, 2056526, 10194822, 6908504, 16119532];
      AltarMMTol := [15, 12, 9, 2, 17, 2];
      AltarMMHue := [0.07, 0.16, 0.95, 2.70, 2.95, 24.65];
      AltarMMSat := [2.64, 1.29, 1.87, 2.72, 0.22, 15.69];
      PossibleAltars := ['Fire', 'Earth', 'Air', 'Water', 'Body', 'Mind'];
      ColorCount := [3000, 5000, 5000, 5000, 5000, 200];

      for i := 0 to 5 do
      begin
        ColorToleranceSpeed(2);
        SetColorspeed2Modifiers(AltarMMHue[i], AltarMMSat[i]);
        if CountColorTolerance(AltarMMCol[i], MMX1, MMY1, MMX2, MMY2, AltarMMTol[i]) > ColorCount[i] then
          begin
            ColorToleranceSpeed(1);
            Result:=PossibleAltars[i]
            Exit;
          end;
      end;
    end;

    Should get you the idea. Makes the script a bit faster I believe, and it looks more professional / advanced.

    Good luck

    Script source code available here: Github

  15. #15
    Join Date
    Feb 2012
    Location
    SRL Jail
    Posts
    1,319
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by J J View Post
    The personal value after creating a script is definately important. I've also decided to work on a big project (Great Orb Project script) and once it's finished I will feel satisfied because I've managed to complete such a big project. There are other big projects I could've made, but no-one has made a color script for GOP yet. Which makes it more interesting to make, atleast for me.

    Nice progress so far, but I advise you to use Arrays to store the different colors from the monsters.

    This is what I use to define at which altar the bot currently is
    Simba Code:
    function DefineArea:String;
    var
      AltarMMCol, AltarMMTol, ColorCount: Array of Integer;
      AltarMMHue, AltarMMSat: Array of Extended;
      PossibleAltars: Array of String;
      i: Integer;

    begin;
      AltarMMCol := [6274014, 3035750, 2056526, 10194822, 6908504, 16119532];
      AltarMMTol := [15, 12, 9, 2, 17, 2];
      AltarMMHue := [0.07, 0.16, 0.95, 2.70, 2.95, 24.65];
      AltarMMSat := [2.64, 1.29, 1.87, 2.72, 0.22, 15.69];
      PossibleAltars := ['Fire', 'Earth', 'Air', 'Water', 'Body', 'Mind'];
      ColorCount := [3000, 5000, 5000, 5000, 5000, 200];

      for i := 0 to 5 do
      begin
        ColorToleranceSpeed(2);
        SetColorspeed2Modifiers(AltarMMHue[i], AltarMMSat[i]);
        if CountColorTolerance(AltarMMCol[i], MMX1, MMY1, MMX2, MMY2, AltarMMTol[i]) > ColorCount[i] then
          begin
            ColorToleranceSpeed(1);
            Result:=PossibleAltars[i]
            Exit;
          end;
      end;
    end;

    Should get you the idea. Makes the script a bit faster I believe, and it looks more professional / advanced.

    Good luck
    This looks really sophisticated. I'll look into this, and if I don't get it, I'll shoot you a PM, thanks!

Thread Information

Users Browsing this Thread

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

Tags for this Thread

Posting Permissions

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