Results 1 to 7 of 7

Thread: SimplestSteelSuperheater

  1. #1
    Join Date
    Feb 2012
    Location
    UK
    Posts
    909
    Mentioned
    10 Post(s)
    Quoted
    191 Post(s)

    Default SimplestSteelSuperheater

    Ok, so this isn't really my first script, but it is the first one I've posted.
    The main reason for posting is I want to ask; Is this script is easily detectable, and if so, why?
    Another reason is just to show how simple it can be to create a script!

    Simba Code:
    program SimplestSteelSuperheater;

    {$DEFINE SMART}
    {$i srl/srl.simba}
    {$i srl/srl/skill/magic.simba}

    var
      i, o : Integer;

    const
      Loads = '99';   //How many inventories do we want to complete?
      Author = 'Solar';

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

      with Players[0] do
      begin
        Name :='';
        Pass :='';
        Pin :='';
        Active:=True;
      end;
    end;


    Procedure AntiBan;

    var
      R : Integer;

    begin
      R := Random(100);
      if R<=6 then
        WriteLn('Antiban called');
      case R of
      0:
      begin
        HoverSkill('Magic', False);
        GameTab(Tab_Magic);
      end;
      1:
      begin
        PickUpMouse;
      end;
      2:
      begin
        MakeCompass(RandomRange(20,60));
        MakeCompass('N');
      end;
      3:
      begin
        ExamineInv;
      end;
      4:
      begin
        Wait(RandomRange(500, 2000));
      end;
      5:
      begin
        BoredHuman;
      end;
      6:
      begin
        ExamineInv;
      end;
      end;
    end;

    function Banking() : Boolean;
    begin
      Result := False;
      if OpenBank('vwb', True, False) then
        begin
          Wait(RandomRange(100, 250));
          Deposit(1, 27, True);
          Wait(RandomRange(200, 350));
          if WithdrawEx(9, 0, 9, ['on o', 'ron', 'n ore']) then
          begin
            Wait(RandomRange(0, 200));
              if WithdrawEx(8, 0, 0, ['oal', 'Coal']) then
              begin
                Wait(RandomRange(0, 200));
                WriteLn('Withdrew iron and coal');
                CloseBank;
                Wait(RandomRange(50, 150));
                Result := True;
              end else WriteLn('Failed coal withdraw');
          end else WriteLn('Failed withdrawing iron');
        end else WriteLn('Failed to bank');
    end;

    Procedure Superheat;

    begin
      Wait(RandomRange(0, 200));
      o := 1
      repeat
        if (Cast('superheat item', False)) then
        begin
          if FindNormalRandoms then
            Exit;
          Wait(RandomRange(50, 200));
          MMouseItem(o);
          ClickMouse2(True);
          FindNormalRandoms;
        end;
        Inc(o);
      until o = 10
      WriteLn('Casted Superheat Item!');
      Inc(i);
      Wait(RandomRange(100, 250));
    end;

    Procedure MainLoop;
    begin
      if Banking then
      begin
        FindNormalRandoms;
        Superheat;
      end else TerminateScript;
      FindNormalRandoms;
      AntiBan;
    end;

    begin
      ClearDebug;
      SetupSRL;
      ActivateClient;
      DeclarePlayers;
      if not(LoggedIn) then
        LoginPlayer;
      i := 0
      Wait(RandomRange(700,1100));
      MakeCompass('N');
      SetAngle(SRL_ANGLE_HIGH);
      GameTab(Tab_Magic);
      repeat
        MainLoop;
      until(Not(LoggedIn)) or ('i' = 'Loads')
    end.

    Setup:
    Start with the iron ore in the top right slot of the bank, with withdraw-x set to withdraw-9 and coal right next to it to the left. Like this;

    Start off with a fire staff equipped, nature runes in the bottom right of the inventory, while in the Varrock west bank.
    Solar from RiD.

  2. #2
    Join Date
    Apr 2012
    Location
    Australia
    Posts
    1,252
    Mentioned
    1 Post(s)
    Quoted
    22 Post(s)

    Default

    Looks like a perfectly reasonable script, I see no reason why this would be any more detectable than any other script.

    I do have one suggestion though, your integers i and o could both easily be local variables in the procedures that need them.

    Only declare global variables if you require that information across procedure/functions.

  3. #3
    Join Date
    Jan 2012
    Posts
    64
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    The script could be faster while still working because you have a lot of sleeps that really don't do much.

    e.g.

    Wait(RandomRange(100, 250));
    Deposit(1, 27, True);
    Wait(RandomRange(200, 350));

  4. #4
    Join Date
    Feb 2012
    Location
    UK
    Posts
    909
    Mentioned
    10 Post(s)
    Quoted
    191 Post(s)

    Default

    Quote Originally Posted by P1ng View Post
    Looks like a perfectly reasonable script, I see no reason why this would be any more detectable than any other script.

    I do have one suggestion though, your integers i and o could both easily be local variables in the procedures that need them.

    Only declare global variables if you require that information across procedure/functions.
    Thanks for the feedback, I'll change that now.

    Edit: Don't I still need the i variable to be global since I use it in the main loop and in the Superheat procedure?

    Quote Originally Posted by scipio View Post
    The script could be faster while still working because you have a lot of sleeps that really don't do much.

    e.g.

    Wait(RandomRange(100, 250));
    Deposit(1, 27, True);
    Wait(RandomRange(200, 350));
    I put in so many waits to try to make it a bit more random and humanlike since I was using so many premade functions/procedure from includes.
    But I do realise I have probably put in a few more than needed. Thanks.
    Last edited by Solar; 08-30-2012 at 10:07 AM.
    Solar from RiD.

  5. #5
    Join Date
    Dec 2011
    Posts
    571
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    ill try to post a proggy up tummorrow
    created my mr[s]

  6. #6
    Join Date
    Dec 2011
    Location
    Hyrule
    Posts
    8,662
    Mentioned
    179 Post(s)
    Quoted
    1870 Post(s)

    Default

    Looks pretty good! I would suggest having a failsafe for running out of nature runes (unless the cast function already has it built in) and maybe have it try to bank a couple times before giving up instead of just once. But again, not bad at all!

  7. #7
    Join Date
    Feb 2012
    Location
    UK
    Posts
    909
    Mentioned
    10 Post(s)
    Quoted
    191 Post(s)

    Default

    Quote Originally Posted by Ashaman88 View Post
    Looks pretty good! I would suggest having a failsafe for running out of nature runes (unless the cast function already has it built in) and maybe have it try to bank a couple times before giving up instead of just once. But again, not bad at all!
    Thanks. When I get some more time I'll try updating this script and working on some better projects.
    Solar from RiD.

Thread Information

Users Browsing this Thread

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

Posting Permissions

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