Results 1 to 18 of 18

Thread: PWC Anywhere Shaft Maker

  1. #1
    Join Date
    Mar 2007
    Posts
    93
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    PWC Anywhere Shaft Maker

    please leave feed back as this is just another edit by Burnout

    Code:
    {.Script Info:
    # ScriptName  = Tree Chopper + Shaft Maker
    # Author      = madman (edited by Burnout)
    # Description = Chops trees until full inventory then makes shafts
    # Version     = v0.3
    # Date        = 3-Feb-2006
    # Comments    = Start anywhere where there are trees, with an axe and knife, probally should have an axe wielded and one in inv.
    # Autocolor   = Yes
    
    # Release Comments
      * 0.1 - Inital Release
      * 0.2 - Added AntiBan
      * 0.3 - changed firemaking to shaftmaking
      
      **PLEASE post comments and suggestion in post**
     - http://villu-reborn.com/showthread.php?t=6459 -
    /Script Info}
    program ChopperFireMaker;
    {.include SRL\SRL.SCAR}
    {.include SRL\SRL\skill\WoodCutting.scar}
    {.include srl\srl\skill\fletching.scar}
    
    Var
    Colors: Array[1..3] of Integer;
    Loads, LogCount : Integer;
    LogDTM, knifeDTM: Integer;
    
    Const
           TreeTol  = 5;     //Tolerance for tree color
          WaitTime  = 15;    //Maximum time before clicking tree again (seconds)
          MaxLoads  = 10;    //Max Loads Per Player
      MinutesALoad  = 5;     //Maximum minutes per load
      LeftCPercent  = 80;    //Percent to left click
           Version  = '0.2'; //No Touch This
    
    
    //----------------------------------------------------------------------------//
    //---> Setup Players                                                          //
    //----------------------------------------------------------------------------//
    
    Procedure DeclarePlayers;
    Begin
    
         HowManyPlayers := 3;
         CurrentPlayer:= 0;
         NumberOfPlayers(HowManyPlayers);
    
         Players[0].Name     := '';
         Players[0].Pass     := '';
         Players[0].Nick     := '';     //3 Lowercase Letters of your username
         Players[0].Active   := True;
    
         Players[1].Name     := '';
         Players[1].Pass     := '';
         Players[1].Nick     := '';
    
         Players[1].Active   := True;
    
         Players[2].Name     := '';
         Players[2].Pass     := '';
         Players[2].Nick     := '';
         Players[2].Active   := True;
    
    End;
    
    
    
    //*************************\\
    //      DTMS / BMPS        \\
    //*************************\\
    
    Procedure LoadDTM;
    Begin
      LogDTM := DTMFromString('78DA63F466626078CA8002B2820C19FE03694' +
           '620FE0F048C7640357719D000231209A42D816A5E1150E30254F3' +
           '91809A50A09A3704D40401D53C2242CD6D026A3C816AEEE057030' +
           '0D68B0F7A');
       knifeDTM := DTMFromString('78DA632C60626078C68002C2AD39C1342394C' +
           'F580A547317554D45413EAA9A6CA09AF7A86A3AEAEB50D55402D5' +
           'DC405553535C8CA20600F3B00A3D');
    End;
    
    //****************\\
    //    ANTIBAN     \\
    //****************\\
    Procedure MyAntiBan;
    Begin
      RandomChatEvery(10 + Random(5));
      RotateEvery(5 + Random(2));
      LeaveScreenEvery(5 + Random(5));
      PickUpMouseEvery(5 + Random(10))
      RandomRClickEvery(15 + Random(5))
    End;
    
    
    
    //*****************\\
    //     RANDOMS     \\
    //*****************\\
    Function TreeColor : Integer; Forward;
    
    Procedure DoMyRandoms;
    Begin
      ClickToContinue;
      FindNormalRandoms;
      FindHead;
      if(FindFight)then
      Begin
        RunAwayDirection('N');
        Wait((60 * 500) + Random(60 * 500));
        RunBack;
      End
      if(FindDead)then
      Begin
        Writeln('Player is dead... NextPlayer');
        NextPlayer(false);
      End
      FindEnt(TreeColor);
      FindBirdsNest;
      MyAntiBan;
    End;
    
    Function Ent(Ex,Ey : integer): Boolean; //From Charmz
    Begin
     MMouse(Ex, Ey, 0, 0);
     If(FindColorSpiralTolerance(x, y, 3432536, MSX1, MSY1, MSX2, MSY2, 10))then
      MMouse(x, y, 0, 0);
      If(IsUpText('Chop')) or (IsUpText('Tree')) or (IsUpText('Down'))then
       Begin
        If(FindColorSpiralTolerance(x, y, 383705, 1, 1, 180, 39, 20))or
          (FindColorSpiralTolerance(x, y, 65535, 1, 1, 200, 40, 20))then
         Begin
          Result:= True;
          EntsAvoided:=EntsAvoided + 1;
          WriteLn('Ent found, waiting');
          Mouse(648, 83, 1, 1, True);
          Wait(5000+Random(2000));
         End else
          Result:= False;
          Exit;
      End;
    End;
    
    //******************\\
    //   COLOR STUFF    \\
    //******************\\
    
    Function FindTreeColorsIfNeeded(refrencecol,tol,tol2:integer):boolean;  //Stole from 
    Var
      c,a,b,xm,ym,curcolor:integer;
      oc1,oc2,oc3:boolean;
    
     Begin
      If ((Colors[1]=0) or (Colors[2]=0) or (Colors[3]=0)) Then
       Begin
        If (FindColorTolerance(x,y,refrencecol,3,3,515,338,tol)) Then//Find tree close
         Begin
          if (FindObj(x,y,'Chop',refrencecol,tol)) Then
           Begin
            a:=1;
            GetMousePos(x,y);
            xm:=x;
            ym:=y;
            repeat
             xm:=xm+a;
             ym:=ym+b;
             curcolor:=GetColor(xm,ym);
             MMouse(xm,ym, 5, 5);
             Wait(5+random(5));
             If(IsUpText('Chop'))then
              Begin
               If(SimilarColors(curcolor,refrencecol,tol2))and(oc1=false)then
                Begin
                 Colors[1]:=curcolor;
                 oc1:=true;
                End;
               If(SimilarColors(curcolor,refrencecol,tol2))and
                 (not(curcolor=Colors[1]))and(oc2=false)then
                Begin
                 Colors[2]:=curcolor;
                 oc2:=true;
                End;
               if(SimilarColors(curcolor,refrencecol,tol2))and
                 (not(curcolor=Colors[1]))and
                 (not(curcolor=Colors[2]))and(oc3=false)then
                Begin
                 Colors[3]:=curcolor;
                 oc3:=true;
                End;
               End;
              If(not(IsUpText('Chop')))then
               Begin
                c:=c+1;
                xm:=x;
                ym:=y
                MMouse(xm,ym,1,1);
                wait(200+random(100)+random(100))
                if(c=1)then a:=-1;
                 if(c=2)then begin a:=0;b:=-1;end;
                if(c=3)then begin a:=0;b:=2;end;
               End;
             Until((oc1)and(oc2)and(oc3))or(c>=4);
            End;
           End;
          If(Colors[1]>0)and(Colors[2]>0)and(Colors[3]>0)then result:=true;
         End;
     End;
    
    Function TreeColor : integer; //Stolen from 
      Var RandomColor:integer;
     Begin
      Repeat
       RandomColor:=random(3)+1;
      Until (RandomColor >= 1) or (RandomColor <= 3);
     Result:=Colors[RandomColor];
    End;
    
    //*******************\\
    //     PROCEDURES    \\
    //         +         \\
    //     FUNCTIONS     \\
    //*******************\\
    
    Procedure ProgressReport;
    Begin
      ClearDebug;
      Writeln('****************************');
      Writeln('/ shaft Maker + Log Chopper \');
      Writeln('/           v' + Version + '           \');
      Writeln('============================');
      Writeln('  Ran for ' + TimeRunning);
      Writeln('  Cut and light ' + IntToStr(LogCount) + ' logs');
      Writeln('****************************');
    End;
    
    Procedure NewPlayer;
    Begin
      if(not(LoggedIn)) then LoginPlayer;
      GameTab(4);
      HighestAngle;
      SetRun(true);
      PerfectNorth;
    End;
    
    Function FindTree(MaxTol:Integer):Boolean; //Stolen from 
    Var Tol,Ex,Ey:Integer;
    
    Begin
      While (Not (FindColorTolerance(Ex, Ey, TreeColor, MSX1, MSY1, MSX2, MSY2, Tol))
      And Not (Tol > MaxTol)) Do
        Begin
          Tol:=Tol+1;
        End;
      If ((FindColorTolerance(Ex, Ey, TreeColor, MSX1,MSY1 ,MSX2, MSY2, Tol))
      And Not (Tol > MaxTol)) Then Result:=True;
      Tol:=1;
      Wait(10);
    End;
    
    Procedure DoChopping;
    Begin
      if(FindTree(TreeColor))then
      Begin
        if(FindObj(x, y, 'ree', TreeColor, TreeTol))then
        Begin
          if(not(Ent(x, y)))then
          Begin
            if((Random(100) + 1) < LeftCPercent)then
            Begin
              Mouse(x, y, 0, 0, true);
              Wait(50);
            End else
            Begin
              Mouse(x, y, 0, 0, false);
              ChooseOption(x, y, 'own');
              Wait(50);
            End
            Flag;
            Wait(500 + Random(500));
            MarkTime(Mark);
            repeat
              DoMyRandoms;
              Wait(50 + random(50));
              if(InvFull)then Break;
            Until(not(TimeFromMark(Mark) > (1000 * WaitTime)));
          End
        End
      End
    End;
    
    
    
    //*****************\\
    //    MAIN LOOP    \\
    //*****************\\
    
    Procedure Setup;
    Begin
      SetupSRL;
      LoadDTM;
      MouseSpeed := 10;
      BenMouse := true;
      DeclarePlayers;
      ActivateClient;
      Wait(1000 + Random(1000));
    End;
    
    begin
      Setup;
      Repeat
        if(LoggedIn)then
        Begin
          NewPlayer;
          FindAxeHeadColor;
          FindTreeColorsIfNeeded(1520688, 5, 45);
        End
        Repeat
          MarkTime(Mark);
          Repeat
            if(not(LoggedIn))then Break;
            DoChopping;
          Until((InvFull) or (TimeFromMark(Mark) >= 1000 * 60 * MinutesALoad));
          Repeat
           if(FindInvDTM(x, y, LogDTM))then
           begin
             Mouse(x, y, 3, 3, true);
             Wait(1000 + random(500));
             if(FindInvDTM(x, y, knifeDTM))then
             begin
               Mouse(x, y, 3, 3, true);
               Wait(1000 + Random(500));
               mouse(72,442,4,4,true)
               repeat
                 if(not(FindInvDTM(x, y, LogDTM)))then
                 Begin
                   MouseFindFlag(MMCX, MMCY, 15, -15);
                   Flag;
                   Break;
                 End
                 Wait(500);
                 DoMyRandoms;
                 Wait(5);
               until(not(InChat('attempt to'))) or (InChat('advanced a'));
             End
             LogCount := LogCount + 1;
           End
          Until(not(FindInvDTM(x, y, LogDTM)));
          Loads := Loads + 1;
          ProgressReport;
          SRLRandomsReport;
          if(Loads >= MaxLoads)then setup;
        Until(not(LoggedIn));
        NextPlayer(true);
      Until(false);
    end.

  2. #2
    Join Date
    Sep 2006
    Location
    New Jersey, USA
    Posts
    5,347
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    Heeey nice! too bad I got rid of members...Coulda been pretty useful

    Good Job!

    I'll try to test it out on a friend's account tomorrow
    Interested in C# and Electrical Engineering? This might interest you.

  3. #3
    Join Date
    Sep 2006
    Location
    Australia
    Posts
    425
    Mentioned
    0 Post(s)
    Quoted
    34 Post(s)

    Default

    Ima check it out, looks good

  4. #4
    Join Date
    Mar 2007
    Posts
    93
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    ok so far its great it has a few bugs like it doesnt click the last four logs in inv and the one in the first row and some times just sits there but will work on it some more but as i am a new commer to the world of scar i am by no means perfect and would gladly take some advise on how to fix certian problems pm me if you would like to help shouldnt be difficult

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

    Default

    If your new, thn nice try!! But why you don't make your own procedures instead of "steal" them from other scripters? Did you asked permittion from Sumilion and Lorax??

  6. #6
    Join Date
    Mar 2007
    Posts
    93
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    i did not steal any thing i mearly edited madman pwc + firemaker all i did was change firemaking to shaftmaking i put all of my own procedures in for the shaftmaker thank you (they werent even procedures just part of the main loop)

  7. #7
    Join Date
    Sep 2006
    Posts
    5,219
    Mentioned
    4 Post(s)
    Quoted
    1 Post(s)

    Default

    Moved to hybrid scripts as you requested

  8. #8
    Join Date
    Mar 2007
    Posts
    93
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default :P

    your the best thanks

  9. #9
    Join Date
    Feb 2006
    Posts
    920
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by the scar noob View Post
    If your new, thn nice try!! But why you don't make your own procedures instead of "steal" them from other scripters? Did you asked permittion from Sumilion and Lorax??
    I don't want to be linked together with this script and i'm sure Sumilion will neither
    I have not made any of those procedures and never use those kind of procedures..
    You're new and it's a fine starter script.. I bet you have used some time making this, and it will get easier once you try it out some more..
    And remember ideas don't come to you when scripting - they come to you when they want to..

  10. #10
    Join Date
    Sep 2006
    Posts
    5,219
    Mentioned
    4 Post(s)
    Quoted
    1 Post(s)

    Default

    Yea keep a notebook with you always to write ideas down.

  11. #11
    Join Date
    Mar 2007
    Posts
    93
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Ok People I Am Sorry For Any Misconseptions i Did Not Make The Script I Did Not Put Your Names In It All I Did Was Change Madmans Pwc Fire Maker To Make Shafts Instead Of Fire I Did Not Change Who He Credited If You Would Like Me To Remove Your Names I Will But Agian I Did Not Make This Script Just Edited It ALSO I DONT SEE LORAX OR SUMILLION'S NAME IN THERE, I SEEN CHARMS NAME AND DWW WHOEVER THAT IS IM CURRENTLY NOT SURE

  12. #12
    Join Date
    Jun 2006
    Location
    The Netherlands
    Posts
    2,984
    Mentioned
    3 Post(s)
    Quoted
    1 Post(s)

    Default

    DWW is draynor willow whacker which i made a long time ago
    Administrator's Warning:


  13. #13
    Join Date
    Feb 2006
    Posts
    920
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    The functions that you use in this script are so basic that they shouldn't be credited to anyone..

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

    Default

    dww taken out

  15. #15
    Join Date
    Apr 2007
    Posts
    5
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    hmm can any1 tell me why it will wc the logs fine but it trys to use the logs with other logs not the knife?

  16. #16
    Join Date
    Oct 2006
    Posts
    585
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    lol shotgun i get the same problem.....

    Quote Originally Posted by YoHoJo View Post
    I like hentai.

  17. #17
    Join Date
    Apr 2007
    Posts
    3
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    my guess would be you need them in a certain slot my original fletcher was just mouse moves and clicks to the basic areas. i havent tried this script yet but i will be later tonight. im also very new to scar so i will be able to help very little but the problem you mentioned reminds me of my original problems

  18. #18
    Join Date
    Aug 2007
    Posts
    48
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    divi 3.06 or 2.03?
    help asve runescape,spare 1 hour of your life and report the rsdeamon users this this bot-catcher.
    http://www.srl-forums.com/forum/botc...-t10137p2.html

    Quote Originally Posted by owntun00b View Post
    the mouse isnt working its not clicking the the arrows
    Quote Originally Posted by Smartzkid View Post
    Did you drag the crosshairs to the RS screen?
    Quote Originally Posted by owntun00b View Post
    crosshairs?

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. ULTRA Shaft Maker!
    By Ultra in forum RS3 Outdated / Broken Scripts
    Replies: 4
    Last Post: 12-27-2007, 03:50 PM
  2. Shaft Maker
    By souppy in forum RS3 Outdated / Broken Scripts
    Replies: 2
    Last Post: 12-24-2007, 05:08 PM
  3. Woodcut and Arrow Shaft
    By FrontLine in forum First Scripts
    Replies: 18
    Last Post: 09-23-2007, 06:43 AM
  4. arrow shaft maker
    By nikshake2 in forum RS3 Outdated / Broken Scripts
    Replies: 2
    Last Post: 06-12-2007, 04:42 PM
  5. My Log Cutter/Arrow Shaft Maker
    By I Pick Axes in forum RS3 Outdated / Broken Scripts
    Replies: 2
    Last Post: 10-13-2006, 09:28 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
  •