Results 1 to 2 of 2

Thread: SRL-6 Simba 1.2 Branch now supports the NXT Client

  1. #1
    Join Date
    Dec 2011
    Posts
    445
    Mentioned
    26 Post(s)
    Quoted
    256 Post(s)

    Default SRL-6 Simba 1.2 Branch now supports the NXT Client

    SRL-6 Simba 1.2 Branch



    Using it for the NXT Client
    Use {$DEFINE SRL_NXT} in your script
    The NXT Client must be set to Compatibility Mode!
    Code

    Simba Code:
    program new;
    {$DEFINE SRL_NXT}
    {$I SRL-6-Simba1.2/SRL.simba}

    Const

    USER_NAME     := '';
    USER_PASS     := '';
    USER_WORLD    := -1; // -1 just click play button; 0 for random world
    USER_MEMBER   := false;


    procedure declarePlayers();
    begin
      setLength(players, 1);
      with players[0] do
      begin
        loginName := USER_NAME;
        password := USER_PASS;
        isActive := true;
        isMember := USER_MEMBER;
        world := USER_WORLD;
      end;
      currentPlayer := 0;
    end;

    begin
      ActivateClient();
      ClearDebug();

      SetupSRL();

      declarePlayers();
      if not isLoggedIn() then
        players[currentPlayer].login();


      repeat
      until false;
    end.



    Using it with NAS
    Code

    Simba Code:
    program new;
    {$DEFINE SRL_NXT}
    {$I SRL-6-Simba1.22/SRL.simba}
    {$I NAS\NAS.simba}

    Const

    USER_NAME     := '';
    USER_PASS     := '';
    USER_WORLD    := -1; // -1 just click play button; 0 for random world
    USER_MEMBER   := false;


    procedure declarePlayers();
    begin
      setLength(players, 1);
      with players[0] do
      begin
        loginName := USER_NAME;
        password := USER_PASS;
        isActive := true;
        isMember := USER_MEMBER;
        world := USER_WORLD;
      end;
      currentPlayer := 0;
    end;

    begin
      ClearDebug();
      NAS.EnableDebug();

      if(NAS.init()) then
      begin
        SetupSRL();

        declarePlayers();
        if not isLoggedIn() then
          players[currentPlayer].login();
      end;

      repeat
      until false;
    end.



    Please note a lot of SRL-6 has yet to be tested, if you find any issues, create PR with a fix, or submit a post in this thread.

  2. #2
    Join Date
    Dec 2007
    Posts
    174
    Mentioned
    0 Post(s)
    Quoted
    43 Post(s)

    Default

    I would love nothing more than to use NXT client and bot in something other than the oldschool interface!
    tried a small script using the
    Code:
    {$I SRL-6-Simba1.2/SRL.simba}
    but got an error pointing to a tbox function.
    Code:
    Error: Block expected at line 34
    Compiling failed.
    Code:
    function TBox.isPointInside(const point: TPoint): Boolean; constref;
    begin
      result := pointInBox(point, self);
    end;
    here is the script I tried running as well.
    Code:
    program gnomeprayer;
    {$DEFINE SRL_NXT}
    {$I SRL-6-Simba1.2/SRL.simba}
    {$I SPS/lib/SPS-RS3.Simba}
    
    
    var
      i, x, y, clicks, NeedleMid, NeedleLeft1, NeedleLeft2, NeedleRight1, NeedleRight2, NeedleFarLeft, NeedleFarRight: integer;
    
    procedure declarePlayers();
    begin
      setLength(players, 1);
      with players[0] do
      begin
        loginName := '';
        password := '';
        isActive := true;
        isMember := true;
      end
      currentPlayer := 0;
    end;
    
    procedure loadDTMs();
    
    begin
      NeedleMid := DTMFromString('mggAAAHicY2NgYNjGwcAwFYh3APEeDgj/NhC3MTIwVALxOiBeBsT5QFwFxAqWbQwOix0YIh5GMrT4NTP8//+fwaLXgoEfaBY2zIgDQwAAjwQRDA==');
      NeedleLeft1 := DTMFromString('mggAAAHicY2NgYNjAwcAwEYhvAPE6ID4GxNuBuIGRgaEZiMuAeBYQrwbiHCDWselkcIpgYIgoZWBo921gqFnKwPDu3TsGfqBZ2DAjDgwBACJWD6I=');
      NeedleLeft2 := DTMFromString('mggAAAHicY2NgYFjLwcAwEYjXAPFBIL4JxNuBuJmRgaEbiJcB8TogLgfiPCCWs2hlyAtiYGj0aWDY2MrA0JTEwPD//38GfqBZ2DAjDgwBAEWxEB4=');
      NeedleRight1 := DTMFromString('mbQAAAHicY2VgYNjFwcAwEYjvAvF2ID4AxE2MDAwtQNwIxLlAvBaIFSxaGdzjGRiiKhgYfvz4wdC4hoGBnwETM2LBYAAAorANLQ==');
      NeedleRight2 := DTMFromString('mggAAAHicY2NgYDjIwcAwEYjvAfEBIN4GxPOBuJGRgaEViNuBeCkQ50BpeYtWhlQfBoYMXwaGTv8Whrdv3zL0ZzMw8DNgx4w4MAQAACZRD4Q=');
      NeedleFarLeft := DTMFromString('mggAAAHicY2NgYJjHwcCwHYhnAPENIN4LxJOBuJORgSEHiIuAuBSI1wPxVCBWsWpjePfuHcMcoF4QvgHEs4CYHwdmxIEhAADcCg4q');
      NeedleFarRight := DTMFromString('mggAAAHicY2NgYDjHwcCwHYhnAPENIN4LxJOBuJ2RgSEHiIuAuBSI1wPxVCBWsWpjePfuHcMcoF4QvgHEs4CYHwdmxIEhAADy3g5Y');
    
    end;
    
    procedure Needle;
    begin
    
    
      wait(randomRange(620, 12));
      if findDTM(NeedleMid, x, y, Mainscreen.getBounds()) then
    
      wait(88);
    
    
       if findDTM(NeedleLeft1, x, y, Mainscreen.getBounds()) then
    
         begin
         KeyDown(39);
         wait(randomRange(34, 12));
         KeyUp(39);
         wait(randomRange(1014, 32));
          end;
    
       if findDTM(NeedleLeft2, x, y, Mainscreen.getBounds()) then
    
         begin
         KeyDown(39);
         wait(randomRange(34, 12));
         KeyUp(39);
         wait(randomRange(48, 12));
          KeyDown(39);
         wait(randomRange(34, 12));
         KeyUp(39);
         wait(randomRange(1014, 32));
          end;
    
      if findDTM(NeedleRight1, x, y, Mainscreen.getBounds()) then
    
        begin
         KeyDown(37);
         wait(randomRange(34, 12));
         KeyUp(37);
         wait(randomRange(1014, 32));
          end;
    
       if findDTM(NeedleRight2, x, y, Mainscreen.getBounds()) then
    
          begin
         KeyDown(37);
         wait(randomRange(34, 12));
         KeyUp(37);
         wait(randomRange(48, 12));
          KeyDown(37);
         wait(randomRange(34, 12));
         KeyUp(37);
         wait(randomRange(1014, 32));
          end;
    
          if findDTM(NeedleFarLeft, x, y, Mainscreen.getBounds()) then
    
          begin
         KeyDown(39);
         wait(randomRange(34, 12));
         KeyUp(39);
         wait(randomRange(48, 12));
          KeyDown(39);
         wait(randomRange(34, 12));
         KeyUp(39);
         wait(randomRange(34, 12));
          KeyDown(39);
         wait(randomRange(34, 12));
         KeyUp(39);
         wait(randomRange(48, 12));
          KeyDown(39);
         wait(randomRange(34, 12));
         KeyUp(39);
          wait(randomRange(48, 12));
          KeyDown(39);
         wait(randomRange(34, 12));
         KeyUp(39);
         wait(randomRange(1014, 32));
          end;
            if findDTM(NeedleFarRight, x, y, Mainscreen.getBounds()) then
    
          begin
         KeyDown(37);
         wait(randomRange(34, 12));
         KeyUp(37);
         wait(randomRange(48, 12));
          KeyDown(37);
         wait(randomRange(34, 12));
         KeyUp(37);
         wait(randomRange(34, 12));
          KeyDown(37);
         wait(randomRange(34, 12));
         KeyUp(37);
         wait(randomRange(48, 12));
          KeyDown(37);
         wait(randomRange(34, 12));
         KeyUp(37);
          wait(randomRange(48, 12));
          KeyDown(37);
         wait(randomRange(34, 12));
         KeyUp(37);
         wait(randomRange(1014, 32));
          end;
    end;
     Procedure NeedleReact;
    begin
    wait(81);
      Case i of
        0: writeln('middle');
        1: writeln('left');
        2: writeln('left left');
        3: writeln('right');
        4: writeln('right right');
      end;
    end;
    
    procedure FREEDTMZ;
    begin
      FreeDtm(NeedleMid);
      FreeDtm(NeedleLeft1);
      FreeDtm(NeedleLeft2);
      FreeDtm(NeedleRight1);
      FreeDtm(NeedleRight2);
      FreeDtm(NeedleFarRight);
      FreeDtm(NeedleFarLeft);
      KeyUp(37);
      KeyUp(39);
    end;
    
    begin
    ActivateClient();
      clearDebug();
    
      setupSRL();
    
      declarePlayers();
      if not isLoggedIn() then
      begin
        players[currentPlayer].login();
        exitTreasure();
        minimap.setAngle(MM_DIRECTION_NORTH);
        mainScreen.setAngle(MS_ANGLE_HIGH);
      end;
      begin
        loadDTMs;
        Addonterminate('FREEDTMZ');
        clicks := 0;
    
        begin
          repeat
          Needle;
            //NeedleReact;
          until (clicks > 44444);
          FREEDTMZ;
          terminatescript();
        end;
      end;
    end.

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
  •