Results 1 to 18 of 18

Thread: (SRL4) bomh willow killer & banker

  1. #1
    Join Date
    Feb 2007
    Posts
    203
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default (SRL4) bomh willow killer & banker

    This is my 1st script
    This is for Scar 3.11 SRL 4.0!
    PLEASE POST PROGRESS REPORTS!

    This script will chop and bank willows at draynor.
    Setup:
    Place your players in draynor bank
    Have axe wielded or in 1st inventory slot
    Have more axes in the 1st bank slot
    Drag the crosshair over and hit play
    Thank To:
    Thank to Rune Killer i use most of his script

  2. #2
    Join Date
    May 2007
    Location
    NSW, Australia
    Posts
    2,823
    Mentioned
    3 Post(s)
    Quoted
    25 Post(s)

    Default



    YoHoJo for a great ent finder
    That is mostly mine :P but ye. Why just edit Rune Kiler's script and post it here? Most of it isnt your work, but you credited properly and made it for your own use (Probly)


  3. #3
    Join Date
    Aug 2007
    Posts
    73
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    personaly i dont like rune killers cause it cant seem to solve the lehderhosen or any other types of randosm like that.. no offense rune GREAT SCRIPT WILL TEST

  4. #4
    Join Date
    Feb 2007
    Posts
    203
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    i make it auto color, and new walk to willow and back and new random event and antiban

  5. #5
    Join Date
    May 2007
    Posts
    102
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    This is mostly my script but you did credit right and btw take out the
    SCAR Code:
    ScriptID := '279';
    As its my script ID lol

  6. #6
    Join Date
    Feb 2007
    Posts
    203
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    yup working on that right now lol sorry

  7. #7
    Join Date
    Jul 2007
    Location
    Norway.
    Posts
    1,938
    Mentioned
    3 Post(s)
    Quoted
    0 Post(s)

    Default

    New VISIBLE changes that I can see has been made:

    Double clicks the willows now. (Useless. And very detectable, isnt it?)
    Banking is a two-step process now. (VERY good job on that one)



    Not many changes, but O.K. i guess. I use your script instead of Rune Killer's.
    (BTW: RUNE KILLER THANKS A FREAKING HUGE LOT DUDE)

  8. #8
    Join Date
    Sep 2007
    Location
    Australia
    Posts
    143
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Progress Report:
    | ~ Bomhs Willow Killer & Banker ~ |
    |=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-|
    |You are my first script
    |Time Run: 0:11:10
    |Chopped: 0 Logs---- that didnt work for some reason
    |Banked: 3 Loads Of Willows
    |Avioded: 0 Number Of Ents
    --------------------------------------------

    I stopped soz
    [IMG]file:///C:/Documents%20and%20Settings/damn/My%20Documents/My%20Pictures/Vluv.html[/IMG]

  9. #9
    Join Date
    Feb 2007
    Posts
    203
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by Julza View Post
    Progress Report:
    | ~ Bomhs Willow Killer & Banker ~ |
    |=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-|
    |You are my first script
    |Time Run: 0:11:10
    |Chopped: 0 Logs---- that didnt work for some reason
    |Banked: 3 Loads Of Willows
    |Avioded: 0 Number Of Ents
    --------------------------------------------

    I stopped soz
    np and thank you for posting ur progress you the first one

  10. #10
    Join Date
    Dec 2006
    Posts
    2,244
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Looks nice just need some more failsafes

  11. #11
    Join Date
    Feb 2007
    Location
    behind you, with a GUN
    Posts
    60
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    i ran it for about 20 minutes and ended up near lumby castle, other than that it looks good
    edit: not as good as i thought, i got killed with my camo clothes on and lost them, had the body and legs and they dropped instead of willow logs, and i also got my rune axe broken... needs a LOT of imporvements.

    improvements:
    1. better ent finding
    2. better fight detection
    3. maybe tele to lumby and radial walk back if char is lost? it didnt seem to know my char was lost and was just hovering mouse over nearby trees

  12. #12
    Join Date
    Feb 2007
    Posts
    203
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by dannymet View Post
    i ran it for about 20 minutes and ended up near lumby castle, other than that it looks good
    edit: not as good as i thought, i got killed with my camo clothes on and lost them, had the body and legs and they dropped instead of willow logs, and i also got my rune axe broken... needs a LOT of imporvements.

    improvements:
    1. better ent finding
    2. better fight detection
    3. maybe tele to lumby and radial walk back if char is lost? it didnt seem to know my char was lost and was just hovering mouse over nearby trees
    wow that never happen to me before lol
    i will check
    thank bro

  13. #13
    Join Date
    Jul 2007
    Location
    USA,WV
    Posts
    21
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    stealing other ppls scripts..

  14. #14
    Join Date
    Feb 2007
    Posts
    203
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by hiro_monkey View Post
    stealing other ppls scripts..
    read before u say aything

  15. #15
    Join Date
    Aug 2007
    Location
    USA
    Posts
    370
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    looks nice...ty
    It must have been the ganja?

  16. #16
    Join Date
    Sep 2007
    Posts
    40
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    nice script man!!!
    Progress Report:
    | ~ Bomhs Willow Killer & Banker ~ |
    |=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-|
    |You are my first script
    |Time Run: 0:9:28
    |Chopped: 82 Logs
    |Banked: 3 Loads Of Willows
    |Avioded: 0 Number Of Ents
    --------------------------------

    nice work

  17. #17
    Join Date
    Feb 2007
    Posts
    203
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    | ~ Bomhs Willow Killer & Banker ~ |
    |=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-|
    |This is my first script
    |Time Run: 4:29:01
    |Chopped: 3360 Logs
    |Banked: 120 Loads Of Willows
    |Avioded: 5 Number Of Ents
    --------------------------------

    this is my newest verson
    but it need scarscape to run it property

    PHP Code:
    {=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=]
    [            ~
    Bomh's Draynor Willow Killer & Banker~                    ]
    [                           ~First Script~                              ]
    [=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=]
    |   1. Need SCAR version 3.11                                           |
    |   2. Need SRL version 4.                                              |
    |   3. Set your screen to 32 bit true color                             |
    |   4. Start script in Draynor Bank.                                    |
    |   5. Start with a axe in your first inventory slot or wielded.        |
    |   6. More axes in the 1ST BANK SLOT                                   |
    [=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
    |~Thanks To:                                                            |
    |   YoHoJo for a great ent finder                                       |
    |   Sumilion & Lorax for autoresponder                                  |
    |   RuneKillers i use most of his script                                |
    [=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=}

    Program BomhWillowSmasher;
    {.include SRL/SRL.Scar}
    {.include SRL/SRL/Core/Users.Scar}
    {.include SRL/SRL/Skill/Woodcutting.Scar}

    Const
      ScriptName = ' 
    Bomhs Willow Killer Banker ';
      YourSRLId = '';
      YourSRLPassword = '';
      AutoRespond = True; //May lag the script a little
      WillowColor = 5267552; //No need to touch this

    Var x, y, H, M, S, mx, my, i, WillowLog, BankDTM, Willow, TotalWillows, Banked,
      EntsAvioded, RemoveChatters, FreeSlot: Integer;
      LevelsGained : Integer;
      TextFound, Name : String;
      Chatters : Array[0..1000] of string;

    Procedure DeclarePlayers;
    begin
      HowManyPlayers:= 6;
      NumberOfPlayers(HowManyPlayers);
      CurrentPlayer:= 0;

      Players[0].Name        := ''; //UserName
      Players[0].Pass        := ''; //Password
      Players[0].Nick        := ''; //2-4 letters of username
      Players[0].Integers[1] := 90000; //Number of loads before switching
      Players[0].Booleans[1] := True; //Is the axe wielded?
      Players[0].Active      := True; //Active

      Players[1].Name        := '
    Username'; //UserName
      Players[1].Pass        := '
    Password'; //Password
      Players[1].Nick        := '
    Nick'; //2-4 letters of username
      Players[1].Integers[1] := 1000; //Number of loads before switching
      Players[1].Booleans[1] := True; //Is the axe wielded?
      Players[1].Active      := True;

      Players[2].Name        := '
    Username'; //UserName
      Players[2].Pass        := '
    Password'; //Password
      Players[2].Nick        := '
    Nick'; //2-4 letters of username
      Players[2].Integers[1] := 1000; //Number of loads before switching
      Players[2].Booleans[1] := True; //Is the axe wielded?
      Players[2].Active      := True; //Active

      Players[3].Name        := '
    Username'; //UserName
      Players[3].Pass        := '
    Password'; //Password
      Players[3].Nick        := '
    Nick'; //2-4 letters of username
      Players[3].Integers[1] := 1000; //Number of loads before switching
      Players[3].Booleans[1] := True; //Is the axe wielded?
      Players[3].Active      := True; //Active

      Players[4].Name        := '
    Username'; //UserName
      Players[4].Pass        := '
    Password'; //Password
      Players[4].Nick        := '
    Nick'; //2-4 letters of username
      Players[4].Integers[1] := 1000; //Number of loads before switching
      Players[4].Booleans[1] := True; //Is the axe wielded?
      Players[4].Active      := True; //Active

      Players[5].Name        := '
    Username'; //UserName
      Players[5].Pass        := '
    Password'; //Password
      Players[5].Nick        := '
    Nick'; //2-4 letters of username
      Players[5].Integers[1] := 1000; //Number of loads before switching
      Players[5].Booleans[1] := True; //Is the axe wielded?
      Players[5].Active      := True; //Active

      Writeln('
    Using '+IntToStr(HowManyPlayers)+' Players');
      NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
    end;

    procedure LoadDTMs;
    begin
      WillowLog := DTMFromString('
    78DA639CCEC4C0F0940105B83B48308800694' +
           '
    620FE0F048C3D40357719D000231209A41700D5DC22A0663150CD' +
           '
    1B026AFA816A3E1050D38EE966743500A9740DA6');
      BankDTM := DTMFromString('
    78DA63EC60626008614001FFFFFF676060042' +
           '
    310FB3F6303508D37448E09AAE6ED5B08CD08E583D50413A1269C' +
           '
    809A0AC26A00E665129F');
    end;

    function CountItemDTM(DTM: Integer): Integer;
    var
      i, x, y: Integer;
      TB: Tbox;
    begin
      if not LoggedIn then
      Exit;
      GameTab(4);
      for i := 1 to 28 do
      begin
        TB := InvBox(i);
        if ExistsItem(i) then
          if (FindDTM(DTM, x, y, TB.x1, TB.y1, TB.x2, TB.y2)) then
          begin
            Inc(Result);
          end;
      end;
    end;


    procedure DoChats;
    begin
      If(Not Loggedin)Then
      LoginPlayer
      Else NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick,UpChars);
      Exit;
      SetChat('
    on', 1);
      SetChat('
    friends', 2);
      SetChat('
    on', 3);
      SetChat('
    on', 4);
    end;

    function FindEnt2(fx, fy: Integer; AvoidWhenFound: Boolean): Boolean;
    var
      arUpTextEntColorPoints: TPointArray;
      x, y, EntTime, tcts: Integer;
    begin
      if not(LoggedIn)then
        Exit;
      GetMousePos(x, y);
      if(x <> fx)or(y <> fy)then
        MMouse(fx, fy, 0, 0);
      if(IsUpText('
    Chop'))then
      begin
        tcts := GetColorToleranceSpeed;
        ColorToleranceSpeed(2);
        SetColorspeed2Modifiers(0.4, 0.4);
        FindColorsTolerance(arUpTextEntColorPoints, 51657, 80, 6, 127, 20, 5);
        Result := Length(arUpTextEntColorPoints) > 10;
        ColorToleranceSpeed(tcts);
      end;
      if(Result)then
      begin
        WriteLn('
    Ent Found!!');
        if(AvoidWhenFound)then
        begin
          mx := 644;
          my := 83;
          Mouse(mx, my + 15, 0, 0, true);
          Writeln('
    Waiting for it to go away.');
          MarkTime(EntTime);
          while(TimeFromMark(EntTime) < 35000)do
          if (Random(20) > 15) then
          Begin
            FindNormalRandoms;
            IdleTime(500, 500, 0.4)
          end else
          Begin
            FindNormalRandoms;
            Wait(500 + random(250));
          end;
          EntsAvoided := EntsAvoided + 1;
          Mouse(mx, my - 10, 0, 0, true);
          FFlag(2);
        end;
      end;
    end;

    Function PosArray(SubStr : Array of String; S : String) : Boolean;
    Begin
      for i := 0 to GetArrayLength(SubStr) - 1 do
      Begin
        Result := Pos(SubStr[i], S) > 0;
        if Result then exit;
      end;
    end;

    procedure AutoResponder;
    begin
      GetLastChatText(TextFound);
      if Not(PosArray(['
    wc l', 'woodcutting l', 'lol', 'haha','hehe','lmao','rofl','hi ','hello','hey','yo ','bot ','macro','u noob','u nub','u loser',Players[CurrentPlayer].Name,'woot','woop'],TextFound)) then exit;
      LastChatter(Name);
      if Lowercase(Name) = Lowercase(Players[CurrentPlayer].Name) then exit;
      if TimeFromMark(RemoveChatters) >= 50000 then
      Begin
        MarkTime(RemoveChatters);
        for i := 0 to FreeSlot do
          Begin
            Chatters[i] := ''
          end;
      end;
      for i := 0 to FreeSlot do
      Begin
        if Chatters[i] = Name then exit;
      end;
      for i := FreeSlot to 1000 do
      if Chatters[i] = '' then
        Begin
          Chatters[i] := Name;
          FreeSlot := FreeSlot + 1;
          Break;
        end;
      if (PosArray(['
    wc l','woodcutting l'],TextFound)) then
        Begin
          Case Random(6) of
            0: Typesend(IntToStr(Players[CurrentPlayer].integers[2] + LevelsGained));
            1: Typesend('
    me ' + IntToStr(Players[CurrentPlayer].integers[2] + LevelsGained) + ' u?');
            2: Typesend(IntToStr(Players[CurrentPlayer].integers[2] + LevelsGained) + ' 
    =p');
            3: Typesend('
    I' + chr(39) + '' + IntToStr(Players[CurrentPlayer].integers[2] + LevelsGained));
            4: Typesend(IntToStr(Players[CurrentPlayer].integers[2] + LevelsGained) + '
    ...');
            5: Typesend('
    low =[');
          end;
          WriteLn('
    Talked to ' + Name);
          talks := talks + 1;
          exit;
        end;
      if (PosArray(['
    lol','haha','hehe','lmao','rofl'],TextFound)) then
        Begin
          Case Random(10) of
            0: Typesend('
    lol');
            1: Typesend('');
            2: Typesend('
    lmao');
            3: Typesend('
    rofl');
            4: Typesend('
    ?');
            5: Typesend('
    ...');
            6: Typesend('
    haha');
            7: Typesend('
    hehe');
            8: Typesend('
    =]');
            9: TypeSend('');
          end;
          WriteLn('
    Talked to ' + Name);
          talks := talks + 1;
          exit;
        end;
      if (PosArray(['
    Hi ','Hello','hey','sup','yo '],TextFound)) then
        Begin
          Case Random(12) of
            0: Typesend('
    hi');
            1: Typesend('
    hello');
            2: Typesend('
    hey');
            3: Typesend('
    yo');
            4: Typesend('
    sup');
            5: Typesend('
    wasup');
            6: Typesend('
    g' + chr(39) + 'day');
            7: Typesend('
    good mornin!');
            8: Typesend('
    good aftanoon!');
            9: Typesend('
    good evenin!');
            10: Typesend('
    ohaiyogozaimasu');
            11: Typesend('
    hau');
          end;
          WriteLn('
    Talked to ' + Name);
          talks := talks + 1;
          exit;
        end;
      if (PosArray(['
    bot ', 'macro'],TextFound)) then
        Begin
          Case Random(10) of
            0: Typesend('
    Wats that?');
            1: Typesend('
    wots the point in gettin sumthin else 2 play 4 u?');
            2: Typesend('
    bots r stupid');
            3: Typesend('
    i h8 bots');
            4: Typesend('
    they r ruinin rs for us =[');
            5: Typesend('
    ?');
            6: Typesend('
    bots are forcing jagex to fight back... wich affects us 2 =[');
            7: Typesend('
    they made our shop prices rise =[');
            8: Typesend('
    bots r so obvious');
            9: Typesend('
    theres no point banning them coz there r bots to even make new bots =[');
          end;
        end;
      if (PosArray(['
    u noob','u nub','u loser'],TextFound)) then
        Begin
          Case Random(10) of
            0: Typesend('
    stfu');
            1: Typesend('
    look in da mirror');
            2: Typesend('
    lmao u r');
            3: Typesend('
    ...');
            4: Typesend('
    omg...');
            5: Typesend('
    get a life');
            6: Typesend('
    gotta start sumwhea');
            7: Typesend('
    shut up');
            8: Typesend('
    hmph');
            9: TypeSend('
    =[');
          end;
          WriteLn('
    Talked to ' + Name);
          talks := talks + 1;
          exit;
        end;
      if (PosArray([Players[CurrentPlayer].Name],TextFound)) then
        Begin
          Case Random(9) of
            0: Typesend('
    me?');
            1: Typesend('
    wot u want');
            2: Typesend('
    ...');
            3: Typesend('
    leave me alone!');
            4: Typesend('
    I' + chr(39) + 'm not in the mood =(');
            5: Typesend('
    ye?');
            6: Typesend('
    yo?');
            7: Typesend('
    uh?');
            8: Typesend('
    shudup');
          end;
          WriteLn('
    Talked to ' + Name);
          talks := talks + 1;
          exit;
        end;
      if (PosArray(['
    woot','woop'],TextFound)) then
        Begin
          Case Random(9) of
            0: Typesend('
    gratz');
            1: Typesend('
    grats');
            2: Typesend('
    ...');
            3: Typesend('
    what?');
            4: Typesend('
    huh?');
            5: Typesend('
    wat?');
            6: Typesend('
    wot?');
            7: Typesend('
    uh whatd i miss?');
            8: Typesend('');
          end;
          WriteLn('
    Talked to ' + Name);
          talks := talks + 1;
          exit;
        end;
    end;

    function SolveChatRandom2: Boolean;
    var
      Event: string;
    begin
      if (not SolveChatRandoms) or (not AreTalking) then
        Exit;
      Event := GetNPCEvent;

      case Capitalize(Event) of
        '
    Unknown': Exit;
        '
    Pious Pete':                                     // Candle Lighting
          begin
            Writeln(Players[CurrentPlayer].Name + '
    Stupid Pete =(');
            Logout;
            NextPlayer(false);
            Result := True;
            Exit;
          end;
        '
    Mysterious Old Man':                             // Maze + Pinball
          begin
            if ((GetColor(83, 431) = 0) and (GetColor(88, 418) = 0)) or
               ((GetColor(83, 430) = 0) and (GetColor(88, 417) = 0)) or
               ((GetColor(151, 426) = 0) and (GetColor(470, 393) = 0) and
               (GetColor(372, 370) = 128)) then
              begin
                SolvePinball;
              end
           Exit;
          end;
        '
    Quiz Master': FindQuiz;                          // Quiz Master
        '
    Prison Pete':                                    // ScapeRune balloons
          begin
            Inc(ScapeRunes);
            Writeln(Players[CurrentPlayer].Name + '
    Yay Balloon Animals!');
            Logout;
            NextPlayer(false);
            Result := True;
            Exit;
          end;
        '
    Sergeant Damien': FindDemon;                     // Camo
        '
    Leo The Gravedigger':                            // Zombie
          begin
            Writeln(Players[CurrentPlayer].Name + '
    I Don' + chr(39) + 't Want To Dig Any Graves');
            Logout;
            NextPlayer(false);
            Result := True;
            Exit;
          end;
        '
    Evil Bob':                                       // ScapeRune island
          begin
            Inc(ScapeRunes);
            Writeln(Players[CurrentPlayer].Name + '
    An Evil CatWhat is the World Coming To?!');
            Logout;
            NextPlayer(false);
            Result := True;
            Exit;
          end;
         '
    Freaky Forester':                               // Lederhosen
          begin
            Writeln(Players[CurrentPlayer].Name + '
    Since When Do Birds Have More Than One Tail...');
            Logout;
            NextPlayer(false);
            Result := True;
            Exit;
          end;
         '
    Mr Mordaut':                                   // Surprise Exam
          begin
            Writeln(Players[CurrentPlayer].Name + '
    SchoolNO WAY!');
            Logout;
            NextPlayer(false);
            Result := True;
            Exit;
          end;
      end;
    end;

    {*******************************************************************************
    function FindNormalRandoms: Boolean;
    by: The SRL Developers Team!... all time sexiness by Mutant
    Description: Calls the '
    normal' random checks.
    *******************************************************************************}

    function FindNormalRandoms2: Boolean;
    var
      i: Integer;
    begin
      for i := 0 to 14 do
      begin
        case I of
          0: if SolveChatRandom2 then
              Result := True;
          1: if SolveTalkingRandom(Players[CurrentPlayer].Nick) then
              Result := True;
          2: Respond;
          3: if FindTalk then
              Result := True;
          4: if FindDead then
              Begin
                Writeln(Players[CurrentPlayer].Name + '
    Noooo I died =...(');
                Logout;
                NextPlayer(false);
                Result := True;
              end;
          5: if FindMod then
              Begin
                Writeln(Players[CurrentPlayer].Name + '
    Ooh A Moderator!');
                Logout;
                MakeCompass('
    N');
                HighestAngle;
                SetRun(true);
                Result := True;
              end;
          6: if FindDemon then
                Result := True;
          7: if FindMime then
              Begin
                Writeln(Players[CurrentPlayer].Name + '
    Miming?! Why Can' + chr(39) + 't You Just Talk?');
                NextPlayer(false);
                Result := True;
              end;
          8: if FindMaze then
              Begin
                Writeln(Players[CurrentPlayer].Name + '
    Aww Mazes Are Too Hard =(');
                NextPlayer(false);
                Result := True;
              end;
          9: if FindQuiz then
              Result := True;
          10: if FindTalk then // Call it twice
              Result := True;
          11: if FindLamp(LampSkill) then // Maybe we missed it?
              Result := True;
          12: if (FindBox) then
            begin
              Result := True;
              if (UseBoxSolver) then
                SolveBox
              else
                GambleBox;
            end;
          13:
            begin
              if NoGameTab then
              begin
                Wait(3000 + Random(300));
                if SolveChatRandom2 then
                begin
                  Result := True;
                  Exit;
                end;
                Logout;
                NextPlayer(false);
                Result := True;
                Exit;
              end;
            end;
          14: if RC then
              Result := True;
        end;
        if Result then
          Break;
      end;
      If Not(LoggedIn) then
      Begin
        Writeln(Players[CurrentPlayer].Name + '
    Hey Why Are We Just Sitting Here?');
        NextPlayer(false);
      end;
    end;

    {//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//}
    {------------------------------------------------------------------------------}
    {\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\}

    Procedure CheckForRandoms;
    begin
      FindEnt2(x,y,true);
      if (FindFight) then
      begin
        x := 644;
        y := 83;
        Mouse(x, y + 50, 0, 0, true);
        Wait(8500 + random(3500));
        Mouse(x, y - 50, 0, 0, true);
      end;
      FindNormalRandoms2;
      AutoResponder;
      DwarfItem;
    end;


    function FindObjMultiText2(var cx, cy: Integer; Ut1, UT2, UT3: string; color,
      tolerance: Integer): Boolean;
    var
      x, y, a, c, i, x1, y1, x2, y2: Integer;
    begin
        Color := Color;
      if (FindColorTolerance(x, y, color, msx1, msy1, msx2, msy2, tolerance)) then
      begin
        x1 := 245;
        y1 := 165;
        x2 := 277;
        y2 := 185;
        repeat
          if (not (Loggedin)) then
            Break;
          a := a + 1;
          if (a = 1) or (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;
            if (FindColorTolerance(x, y, Color, x1, y1, x2, y2, tolerance)) then
            begin
              MMouse(x, y, 0, 0)
              Wait(10);
                cx := x;
              cy := y;
              if (IsUpTextMulti(UT1, UT2, UT3)) then
              begin
                Result := True;
                Break;
              end;
            end;
          end;
          if (a = 4) then
            a := 0;
        until (x2 > 515) or (Result = True);
      end;
    end;



    procedure AntiBan;
     var
     DBanMe : Integer;
      begin
       DBanMe:= Random(4);
        case DBanMe of
         0: PickUpMouse;
         1: DragItem(1, 1 + Random(18));
         2: GameTab(1 + Random(12));
         3: DoEmote(1 + Random(20));
       end;
    end;


    function FindTheAxe : Boolean;
    var
      InvAxe, WieldAxe, Ix, Iy : Integer;
      dtmAxes: array[0..6] of Integer;
    begin
      if LoggedIn then
      begin
        GameTab(4);
        DTMAxes[1]:= DTMFromString('
    78DA63F4606260B8CD8002ECED63197418191' +
           '
    88088E13F1030FA00D5DC4355932EC2C160C4005103028C8E4035' +
           '
    D719D000231209A42D816ADE1250630D54F381801A3BA09A3BF8D' +
           '
    500005D910CA6');
        GameTab(5);
        for WieldAxe := 1 to 2 do
        begin
          if(WieldAxe = 2)then
            Break;
          if(FindDtm(dtmAxes[WieldAxe], Ix, Iy, MIX1, MIY1, MIX2, MIY2))then
            Break;
        end;
        GameTab(4);
        for InvAxe := 1 to 2 do
        begin
          if(InvAxe = 2)then
            Break;
          if(FindDtm(dtmAxes[InvAxe], Ix, Iy, MIX1, MIY1, MIX2, MIY2))then
           Break;
        end;

        if(InvAxe = 2)and(WieldAxe = 2)then
        begin
          Result := False;
          Writeln('
    No axe was found.');
          FreeDtm(dtmAxes[0]);
          Exit;
        end;
        if((InvAxe - WieldAxe) < 0)then
          EquipAxe := False
        else
          EquipAxe := True;
          Result := True;
          //FreeDtm(dtmAxes[0]);
          Writeln('
    Found axe');
      end;
    end;

    procedure CheckAxe;
    begin
      if (not(LoggedIn)) then
      Exit;
      begin
        if (FindTheAxe = True) then
        Exit;
        if (FindTheAxe = false) then
        begin
          SymbolAccuracy:= 0.4;
          Makecompass('
    N');
          HighestAngle;
          FindSymbol(x, y, '
    bank');
          OpenBankQuiet('
    db');
          Flag;
          Wait(500 + random(500));
          Withdraw(1, 1, 1);
          CloseBank;
          Players[CurrentPlayer].Booleans[1] := False;
          Writeln('
    Got a axe from the bank now back to chopping!');
          if (FindTheAxe = true)then
          Exit;
        end;
        if (FindTheAxe = false) then
        Writeln('
    No axeLogging out');
        NextPlayer(False);
      end;
    end;

    procedure Counting;
    begin
      if not LoggedIn then
      Exit;
      Willow:= CountItemDTM(WillowLog);
      Writeln('
    Count' +IntToStr(Willow));
    end;

    function InChatLine(myString: string): Boolean;
    begin
    Result := ( pos(myString, TheLine) <> 0 );
    end;


    procedure Chop;
    var CuttingTime : integer;
    begin
      MarkTime(CuttingTime);
      repeat
        if (not(LoggedIn)) then
        Exit;
        MakeCompass('
    N');
        CheckForRandoms;
        HighestAngle;
          If FindObjMultiText2(x, y, '
    Wil', 'ill', 'low', WillowColor, 5) then
        begin
          if Not(FindEnt2(x,y,false)) then
         begin
            Mouse(x, y, 1, 1, true);
            Wait(4000 +Random(3000));
            CheckForRandoms;
            AutoResponder;
          end;
        end;
      until (InvFull) or (TimeFromMark(CuttingTime) > 600000+random(60000));
      Writeln('
    Chopped a full load of willowsnow heading for the bank');
    end;

    procedure WillowsWalk;
    var WaterColor : integer;
    begin
      if (not(LoggedIn)) then
      Exit;
      MakeCompass('
    N');
      HighestAngle;
      WaterColor := FindWaterColor;
      RadialWalk(WaterColor, 225, 351, 64, 2, 2);
      Flag;
      Writeln('
    We are at the willows');
    end;

    Function FindDraynorBank(Var x, y: Integer): Boolean;

    Var
       BankA: Extended;
       I : Integer;
    Begin
      Repeat
        I := I + 1;
        Wait(1);
    //    Result:= FindDTMRotated(BankDTM, x, y, MMX1, MMY1, MMX2, MMY2, -Pi, Pi, 0.05, BankA);
        Result:= FindDTMRotated(BankDTM, x, y, MMX1, MMY1, MMX2, MMY2, -Pi, Pi, 0.1, BankA);
      Until Result Or (I > 10);
    End;

    procedure BankWalk;
    Var
       x, y: Integer;

    Begin
      If Not LoggedIn Then Exit;
      Mouse(650, 30, 5, 5, True);
      Wait(4000);
      FFlag(0);
      Wait(500);
      Wait(500);
      If FindDraynorBank(x, y) Then
      Begin
        Mouse(x, y, 0, 0, True);
        Wait(100);
        FFlag(0);
        Wait(500);
      End;
      Players[CurrentPlayer].Loc := '
    Bank';
    End;

    procedure BankIt;
    var Tries : Integer;
    begin
      if (not(LoggedIn)) then
      Exit;
      repeat
        MakeCompass('
    N');
        HighestAngle;
        OpenBankQuiet('
    db');
        Flag;
        Wait(500 + random(500));
        FixBank;
        Tries := Tries + 1;
        if (Tries = 25) then
        begin
          NextPlayer(False);
          Exit;
        end;
      until (BankScreen)
      begin
        if (BankScreen) then
        begin
          Counting;
          if (Players[CurrentPlayer].Booleans[1] = True) then
          begin
              DepositAll;
              CloseBank;
              MakeCompass('
    N');
            end;
          begin
            if (Players[CurrentPlayer].Booleans[1] = False) then
            begin
                Deposit(2, 28, 2);
                CloseBank;
                MakeCompass('
    N');
              end;
            end;
          begin
            TotalWillows:= TotalWillows + Willow;
            Banked := Banked + 1
            Writeln('
    Deposited a full load of willowsnow going to chop more');
          end;
        end;
      end;
    end;

    Procedure Starting;
    begin
      WriteLn('   
    ______  _____ ________   __  __   ___ __    ______ ______ __');
      WriteLn('
    <-/ __  / /_   // _  _  /  / /_/ /--/  /  /---/ ____// __  // /---------->');
      
    WriteLn(' / __  / //_/ // // // /  / __  /  /__   /   /___  //   __// /__');
      
    WriteLn('/_____/ /____//_//_//_/  /_/ /_/     /__/   /_____//_/\_\ /____/    /' ScriptName ' first /');
      
    WriteLn('')
      
    Wait(3000);
      
    WriteLn('');
      
    Wait(3000);
      
    WriteLn('this is fucking rock     ~ starting:');
    End;

    procedure Report;
    begin
      ClearDebug
    ;
      
    Writeln('[=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-]');
      
    Writeln('| ~ Bomhs Willow Killer & Banker ~ |');
      
    Writeln('|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-|');
      
    ConvertTime(GetTimeRunningHMS);
      
    Writeln('|This are my first script');
      
    Writeln('|Time Run: ' IntToStr(H) + ':' IntToStr(M) + ':' IntToStr(S));
      
    Writeln('|Chopped: ' IntToStr(TotalWillows) + ' Logs');
      
    Writeln('|Banked: ' IntToStr(Banked) + ' Loads Of Willows');
      
    Writeln('|Avioded: ' +IntToStr(EntsAvioded) + ' Number Of Ents');
      
    Writeln('--------------------------------------------')
    end;

    procedure ScriptReport;
    begin
      ReportVars
    [0] := ReportVars[0] + 28;
      
    ReportVars[1] := ReportVars[1] + 1;
    end;

    Begin
      SetupSRL
    ;
      
    SetupWoodcutting;
      
    SRLId := YourSRLID;
      
    SRLPassword := YourSRLPassword;
      
    Starting;
      
    ActivateClient;
      
    DeclarePlayers;
      
    LoadDTMs;
      If(
    Not Loggedin)Then
      LoginPlayer
      
    Else NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick,UpChars);
      
    HighestAngle;
      
    DoChats;
      
    CheckAxe;
      
    repeat
        WillowsWalk
    ;
        
    repeat
          Chop
    ;
          
    until (InvFull) or (not LoggedIn)
          
    CheckAxe;
          
    AntiBan;
          
    BankWalk;
          
    BankIt;
          
    SRLRandomsReport;
          
    ScriptReport;
          
    Report;
          
    TotalWillows:= 0;
        
    until Players[CurrentPlayer].Integers[1] = Banked
        NextPlayer
    (True);
    end
    enjoy

  18. #18
    Join Date
    Sep 2007
    Location
    Australia
    Posts
    46
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    hey nice script ill run it soon and ill post the proggie

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. al kharid smith-banker & draynor willow cutter-banker
    By rivon in forum RS3 Outdated / Broken Scripts
    Replies: 5
    Last Post: 01-03-2008, 09:51 AM
  2. JAD Willow - edgevil willow cutter + banker.
    By JAD in forum RS3 Outdated / Broken Scripts
    Replies: 58
    Last Post: 10-08-2007, 05:11 PM
  3. chicken killer(srl4)
    By cheatking in forum RS3 Outdated / Broken Scripts
    Replies: 1
    Last Post: 08-24-2007, 08:38 PM

Posting Permissions

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