Page 1 of 12 12311 ... LastLast
Results 1 to 25 of 278

Thread: [SRL-6] Fady's AIO Portable-O-Matic

  1. #1
    Join Date
    Feb 2015
    Posts
    422
    Mentioned
    41 Post(s)
    Quoted
    226 Post(s)

    Default [SRL-6] Fady's AIO Portable-O-Matic

    Fady's AIO Portable-O-Matic
    Updated on: January 3rd 2016
    V2.3
    Last Tested on: October 29th 2015
    Status: Fully Functional

    Features:
    • 100% Color, with blind failsafe.
    • You can tell it where to initially look for the portable, or have it auto detect the location.
    • Uses any portable at almost any location.
    • Ability to add your own custom bank.
    • Can place it's own portable if non are found (Only if Hosting mode is active).
    • Two Hosting modes. Primary mode places a portable as soon as one is't detected, Secondary mode places one if one isn't found within 15-30 seconds.
    • SRL Player Form support.
    • Break support.
    • Antiban.
    • Should work great, even with a little lag.
    • Multiple failsafes almost at every step.
    • Basic progress report.
    • Easy to fix if something goes wrong.
    • Auto Updater.


    Directions:
    • Make sure your graphics/interface settings follow this guide.
    • Have your players set up using Rafiki.
    • If hosting, make sure your preset includes the portable you want to place.
    • If using Portable Braziers, DO NOT place the portable in the last slot in your inventory.
    • If making Ammo, Start with all the portables and all the ingredients in your inventory. The script WILL NOT bank in this mode.
    • Have either preset 1 or 2 set up to use the corresponding portable.
    • Have your player standing right in front of the bank being used.
    • Move the progress screen interface away from the location of the bank like so.
    • If using Portable Sawmills, be sure to have Game Messages set to On.
    • Press play and fill out the Player Form.
    • Let the gains begin!!


    Finding Free Portables:
    • Join the friends chat 'Portables'.
    • Ask about the specific portable. Example: 'Forges?', 'Mills?', 'Wells?', 'Ranges', etc..
    • Someone will answer with something like 'M26Ba'. This means that the (M)ills are in world 26 at the Barbarian Assault location.
    • Go to that world/location and enjoy the free portables.
    • Common FC abbreviations:
      Abbreviations
      Ca: Combat Academy in Lumbridge.
      Ba: Barbarian Assault. Use a Games Necklace option 2 to get there.
      Sp: Shantay Pass.
      Burth or B: Bank table in Burthorpe.
      Be: Lumbridge Beach.
      F: Forges.
      W: Wells.
      M: Mills.
      R: Ranges.


    Current Issues:
    • Due to the Mills,Ranges,Braziers being short, someone standing over them might interfere with the color detection. However, If color detection worked initially, the blind mouse movement should still maintain function.
    • When right clicking in a crowd, sometimes will right click too close to the crowd, causing a condensed options menu, which causes a false ChooseOption function. It will attempt to get it right 10 times though. Should sort the the matching colors from farthest to the player to nearest, only when right clicking as to avoid that problem.


    Updated Constants:
    Last Update: V2.2.
    If the script faces any issues with color detection or blind mouse movement. Change lines 33-101 with your own updated constants, or the ones below
    • ...Col = Color.
    • ...Tol = Tolerance.
    • ...Hue = Hue mod.
    • ...Sat = Sat mod.
    • ...NorthBox = Blind north Tbox.
    • ...SouthBox = Blind South Tbox.
    • ...EastBox = Blind East Tbox.
    • ...WestBox = Blind West Tbox.
      Updated Constants

      Simba Code:
      {*Portable Forge data*}
        ForgeCol := 1143010;
        ForgeTol := 9;
        ForgeHue := 0.23;
        ForgeSat := 1.60;
        ForgeNorthBox := intToBox(277, 44, 325, 87);
        ForgeSouthBox := intToBox(240, 250, 306, 295);
        ForgeEastBox := intToBox(382, 139, 428, 191);
        ForgeWestBox := intToBox(144, 100, 158, 148);

      {*Portable Well data*}
        WellCol := 6508624;
        WellTol := 8;
        WellHue := 1.57;
        WellSat := 1.19;
        WellNorthBox := intToBox(269,66,312,91);
        WellSouthBox := intToBox(259,236,312,281);
        WellEastBox := intToBox(368,142,414,177);
        WellWestBox := intToBox(159,133,200,169);

      {*Portable Range data*}
        RangeCol := 4876912;
        RangeTol := 5;
        RangeHue := 0.94;
        RangeSat := 1.74;
        RangeNorthBox := intToBox(276,96,297,111);
        RangeSouthBox := intToBox(271,294,304,319);
        RangeEastBox := intToBox(362,170,385,188);
        RangeWestBox := intToBox(161,182,183,200);

      {*Portable Sawmill data*}
        MillCol := 2449549;
        MillTol := 11;
        MillHue := 0.29;
        MillSat := 0.79;
        MillNorthBox := intToBox(282,102,310,125);
        MillSouthBox := intToBox(257,272,290,301);
        MillEastBox := intToBox(375,180,400,215);
        MillWestBox := intToBox(177,157,199,192);

      {*Portable Crafter data*}
        CrafterCol := 7691670;
        CrafterTol := 14;
        CrafterHue := 0.47;
        CrafterSat := 0.65;
        CrafterNorthBox := intToBox(260, 10, 310, 54);
        CrafterSouthBox := intToBox(240, 250, 306, 295);
        CrafterEastBox := intToBox(382, 139, 428, 191);
        CrafterWestBox := intToBox(144, 110, 187, 140);

      {*Portable Fletcher data*}
        FletcherCol := 5659982;
        FletcherTol := 17;
        FletcherHue := 1.05;
        FletcherSat := 0.38;
        FletcherNorthBox := intToBox(260, 10, 310, 54);
        FletcherSouthBox := intToBox(240, 250, 306, 295);
        FletcherEastBox := intToBox(382, 139, 428, 191);
        FletcherWestBox := intToBox(144, 110, 187, 140);

      {*Portable Brazier data*}
        BrazierCol := 1660329;
        BrazierTol := 11;
        BrazierHue := 0.23;
        BrazierSat := 1.8;
        BrazierNorthBox := intToBox(282,102,310,125);
        BrazierSouthBox := intToBox(257,272,290,301);
        BrazierEastBox := intToBox(375,180,400,215);
        BrazierWestBox := intToBox(177,157,199,192);


    Change Log:
    Change Log

    V1.0:
    • Initial Release

    V1.1:
    • Modified Hosting to include Primary and Secondary modes. Primary mode, places a portable as soon as it doesn't detect one, while Secondary mode will wait for a new one for around 20 seconds before placing one.
    • Moved away from typeSend for the banking presets. The script now uses the SRL functions for preset button clicking.

    V1.2:
    • Added a couple of fail-safes to help keep the script running effectively for longer. Mainly in the mills procedure.

    V1.3:
    • Fixed a bug which caused the mills procedure to fail.
    • Removed around 1-1.5 seconds from each cycle. Should give slightly better progress reports now.
    • Fixed an error where a failed attempt at making stuff, would still cause an increase in the progress report.
    • Added more detailed script debugging to make it easier for me to diagnose problems in the future.

    V1.4:
    • Added an Auto Updater to the script.

    V2.0:
    • Added the 3 new portables.
    • Added the ability to use your own custom bank.
    • Fixed an error where the script would right click too close to the crowd, causing a condensed choose option menu, leading to a failure.
    • Rewrote parts of the script.

    V2.1:
    • Fixed a bug with end detection while hosting..
    • Updated the custom bank colors

    V2.2:
    • Modified hosting logic, should save a little bit of time per run when using primary hosting mode.
    • Added a small failsafe in case the production screen opens while the script is trying to click the portable.
    • Fixed a problem when not hosting with portable braziers, causing the script to terminate.

    V2.3:
    • Fixed a compiling error due to a SRL update



    Comments and suggestions are very appreciated

    Post those proggys and let me know how it's going


    Attached Files Attached Files
    Last edited by fady; 01-04-2016 at 04:58 AM. Reason: Releasing V2.3

  2. #2
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    Thank youuuuuuuuuu. Time to deploy!

  3. #3
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    This script is perfect!

    I have no idea why my bank withdraw times are taking so long on my VPS server On my desktop = 2200 potions per hour, VPS = 1600 potions per hour Help pleaseeeee! :P

    OP is a good person, writes great scripts, and friendly to talk to.

    Hoping the withdraw time thing can be fixed, then I'll be super $$$ happy

  4. #4
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    Proggy Update:

    Shanty Pass

    Main Computer

    Ingredients Processed: 5124
    Processed/H: 4161
    Time Running: 1 Hour, 13 Minutes and 53 Seconds
    Breaks Taken: 0

    2GB VPS - Bank finding / withdrawing issues (most likely lag / hopefully a code or two can fix this)

    Ingredients Processed: 616
    Processed/H: 3352
    Time Running: 11 Minutes and 1 Second
    Breaks Taken: 0

    VPS 3 - Lag VPS / Seems To Take Forever To Respond / Probably My VPS Being Shiet

    1GB DDR3 Dedicated RAM, 32GB HDD

    Ingredients Processed: 448
    Processed/H: 2053
    Time Running: 13 Minutes and 5 Seconds
    Breaks Taken: 0

    Going to try and get a new VPS with 4GB and 4vCores and see if that will fix it, although $10 more. Hopefully a code fix , but I think it's my fault :S

    Seems like best places for Well are CA and BA as @ ShantyPass, there is space behind the bank chest, and ocasionally the player runs into that space.

    Thinking of just adding one or two as Host and rest can leech.
    Last edited by rickhunley; 05-27-2015 at 11:00 AM.

  5. #5
    Join Date
    Feb 2015
    Posts
    422
    Mentioned
    41 Post(s)
    Quoted
    226 Post(s)

    Default

    Quote Originally Posted by rickhunley View Post
    Proggy Update:

    Shanty Pass

    Main Computer

    Ingredients Processed: 5124
    Processed/H: 4161
    Time Running: 1 Hour, 13 Minutes and 53 Seconds
    Breaks Taken: 0

    2GB VPS - Bank finding / withdrawing issues (most likely lag / hopefully a code or two can fix this)

    Ingredients Processed: 616
    Processed/H: 3352
    Time Running: 11 Minutes and 1 Second
    Breaks Taken: 0

    VPS 3 - Lag VPS / Seems To Take Forever To Respond / Probably My VPS Being Shiet

    1GB DDR3 Dedicated RAM, 32GB HDD

    Ingredients Processed: 448
    Processed/H: 2053
    Time Running: 13 Minutes and 5 Seconds
    Breaks Taken: 0

    Going to try and get a new VPS with 4GB and 4vCores and see if that will fix it, although $10 more. Hopefully a code fix , but I think it's my fault :S

    Seems like best places for Well are CA and BA as @ ShantyPass, there is space behind the bank chest, and ocasionally the player runs into that space.

    Thinking of just adding one or two as Host and rest can leech.
    Hi, glad you're enjoying the script. I just want to ask if there was a specific reason why the 2nd and 3rd proggy were so short compared to the first? is the script facing any issue with continuity?

  6. #6
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    Currently can't produce any potions - I think it's due to the system update dialog box, will test once system has been updated

    This is the error

    ---- Current mouse-over text: "RVggrg FBrIBn (gnty"
    -- isMouseOverText(): False


    Proggys Taken @ CA.

    2GB VPS - Bank finding / withdrawing issues (most likely lag / hopefully a code or two can fix this)

    Ingredients Processed: 4900
    Processed/H: 4051
    Time Running: 1 Hour, 12 Minutes and 34 Seconds
    Breaks Taken: 0


    VPS 3 - Lag VPS / Seems To Take Forever To Respond / Probably My VPS Being Shiet

    Ingredients Processed: 2632
    Processed/H: 2441
    Time Running: 1 Hour, 4 Minutes and 41 Seconds

  7. #7
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    Quote Originally Posted by fady View Post
    Hi, glad you're enjoying the script. I just want to ask if there was a specific reason why the 2nd and 3rd proggy were so short compared to the first? is the script facing any issue with continuity?
    I don't think it's a continuity problem at the moment, I think it's to do with the RAM and CPU of the VPS. The 3rd VPS is 1/4 of the specs of the second VPS. Interesting how the structure of the VPS effects the output in the game. I'm going to get a tier 2 VPS, which is one above the VPS 2 in this proggy, and see if it matches my desktop client...I don't think it's a scripting error for now, I think it's just the VPS.

  8. #8
    Join Date
    Feb 2015
    Posts
    422
    Mentioned
    41 Post(s)
    Quoted
    226 Post(s)

    Default

    Quote Originally Posted by rickhunley View Post
    I don't think it's a continuity problem at the moment, I think it's to do with the RAM and CPU of the VPS. The 3rd VPS is 1/4 of the specs of the second VPS. Interesting how the structure of the VPS effects the output in the game. I'm going to get a tier 2 VPS, which is one above the VPS 2 in this proggy, and see if it matches my desktop client...I don't think it's a scripting error for now, I think it's just the VPS.
    I hope the upgrade fixes the lag issue, also please try to avoid double posting. You can edit the initial post and add more info to it.

  9. #9
    Join Date
    Sep 2014
    Posts
    447
    Mentioned
    10 Post(s)
    Quoted
    203 Post(s)

    Default

    I'm loving this script! I was going to try and make one on my own, but this is much better than what I could have done! I don't have a proggy yet of notable time, because I'm doing small amounts or herblore, but I managed to get around an hour of flawless running!

  10. #10
    Join Date
    Feb 2015
    Posts
    422
    Mentioned
    41 Post(s)
    Quoted
    226 Post(s)

    Default

    Quote Originally Posted by yourule97 View Post
    I'm loving this script! I was going to try and make one on my own, but this is much better than what I could have done! I don't have a proggy yet of notable time, because I'm doing small amounts or herblore, but I managed to get around an hour of flawless running!
    Glad you like it! Waiting for that proggy!

  11. #11
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    Hi!!!!!!

    Sorry about double post!

    Here is updated proggies, managed to get close to profit maximisation point by tweaking a few lines. Seemed like the biggest issue was that withdraw button, and the time it took once production was closed to then click the bank.

    Here are my proggies:

    Desktop:

    Ingredients Processed: 4732
    Processed/H: 4585 (2,240 potions+)
    Time Running: 1 Hour, 1 Minute and 55 Seconds
    Breaks Taken: 0

    VPS2 (my cheapest VPS with crappy specs)

    Ingredients Processed: 4676
    Processed/H: 4517
    Time Running: 1 Hour, 2 Minutes and 6 Seconds
    Breaks Taken: 0

    VPS 3 - About four times the specs of VPS2.

    Ingredients Processed: 4984
    Processed/H: 4665
    Time Running: 1 Hour, 4 Minutes and 6 Seconds
    Breaks Taken: 0

    As you can see, this is fairly even!!!

    Here is something that might help you maximise potions per hour:

    Lines 458 - 460:

    Simba Code:
    wait(gaussRangeInt(150, 500));               //Waits 0.1-0.5 seconds
        productionScreen.clickStart(true);           //Clicks the start button
        wait(gaussRangeInt(13500, 14000));          //Perfectly syncs with how long it takes to do an inventory

    Around lines 490. Withdrawing bank SRL6 function.

    Simba Code:
    wait(gaussRangeInt(100, 500));
      sDebug('Successfully opened the bank!');
      bankScreen.clickButton(BANK_BUTTON_PRESET_1);             //Clicks the preset button using the SRL function
      if not (tabBackpack.waitWhileLocked(3000)) then

    Also changed the amount of times the host searches for available portables to 4, so that it respawns the portable faster.

    Hope that helps, thanks again for a beauty of a script!! $$$ MONEY $$$

  12. #12
    Join Date
    Feb 2015
    Posts
    422
    Mentioned
    41 Post(s)
    Quoted
    226 Post(s)

    Default

    Releasing Version 1.1!
    Change Log:
    • Modified Hosting to include Primary and Secondary modes. Primary mode, places a portable as soon as it doesn't detect one, while Secondary mode will wait for a new one for around 20 seconds before placing one.
    • Moved away from typeSend for the banking presets. The script now uses the SRL functions for preset button clicking.


    Quote Originally Posted by rickhunley View Post
    SNIP
    Glad you finally got it working. The version i PMed you used the SRL preset function, just make sure you change the selected option in the player form to the updated ones, and not the one saved. Specific waits like that might cause an issue if you experiance lag during the process of making the potions, which is why I had it wait till the Done button appeared and do antiban while it waits. Was it taking too long between finishing the potions and attempting to open the bank? Also if you want to disable the antiban while waiting, just change "Antiban Chance" to 0 in the player form.

    Anyway, be sure the get the latest version and try it out. If you have any other comments and suggestions let me know!

  13. #13
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    Thanks for the new version

    I'm getting this error on one of my accounts:

    Unknown declaration "UpCharsEx" at line 263

    Any idea what that might mean?

  14. #14
    Join Date
    Sep 2014
    Posts
    447
    Mentioned
    10 Post(s)
    Quoted
    203 Post(s)

    Default

    Here's the best proggy I can really get you right now!

    Ingredients Processed: 4900
    Processed/H: 3705
    Time Running: 1 Hour, 19 Minutes and 21 Seconds
    Breaks Taken: 0

    Works great, but seems to have a trouble identifying the well at BA when it's placed north. I just turned the camera to face south and that fixed it though.

  15. #15
    Join Date
    Feb 2015
    Posts
    422
    Mentioned
    41 Post(s)
    Quoted
    226 Post(s)

    Default

    Quote Originally Posted by yourule97 View Post
    Here's the best proggy I can really get you right now!

    Ingredients Processed: 4900
    Processed/H: 3705
    Time Running: 1 Hour, 19 Minutes and 21 Seconds
    Breaks Taken: 0

    Works great, but seems to have a trouble identifying the well at BA when it's placed north. I just turned the camera to face south and that fixed it though.
    Nice proggy !

    Were you zoomed all the way in? The script determines the direction by checking if the position of the mouse lies within a set of 4 TBoxes. If you were zoomed out a little that might cause an issue because the TBoxes would be aligned correctly. Can you please enable script Debugging and show it to me?
    Thanks

  16. #16
    Join Date
    Sep 2014
    Posts
    447
    Mentioned
    10 Post(s)
    Quoted
    203 Post(s)

    Default

    I'm pretty sure I was zoomed in, but I'm not exactly sure what was going on. I remember it would keep hovering over some clan avatars to the south, wait like 20 seconds, and then find the well correctly to the north. Anyways, the wells have moved to CA, but I'll try to get a debug to you the next time I'm at BA.

  17. #17
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    New Proggies

    Ingredients Processed: 3864
    Processed/H: 4792
    Time Running: 48 Minutes and 22 Seconds
    Breaks Taken: 0
    Ingredients Processed: 3892
    Processed/H: 4084
    Time Running: 57 Minutes and 10 Seconds
    Breaks Taken: 0
    Ingredients Processed: 868
    Processed/H: 4307
    Time Running: 12 Minutes and 5 Seconds
    Breaks Taken: 0

    If you're getting below 4K - you can speed it up.

    Sometimes there is a bug with the host, when clicking mixed potions it won't me able to then click the mix button. It tries to click on the well again, then fails to open production window after a while. Seems to be a random occurance - can't pin point it.

    Have tried it on about nine accounts now - works great - I'm not sure if Antiban is working, as I don't see hovering etc, it just seems to go hardcore mode haha.

    Even though VPS lags, the script can still run

  18. #18
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    Script is working 99% of the time with non-hosts. Hosting is buggy - sometimes will create a loop on production screen, and not deploy portable even though it is in the inventory (60% chance of deployment). Production screen bug is the big one - not sure why it's doing it :S Have PMed faddy.

    Could you please add a fail safe for the deployment of portable when hosting, and also clicking the button to produce the units. These are the only two bugs that I've identified after about 60 hours of testing on 12 accounts.

    Thanks

    Update:

    I've recoded it a bit. Let me know what you think: it hasn't failed since.

    Simba Code:
    procedure portableMake();                //Navigates the production screen and waits at the progress screen.
    var                                            //Also initates the Sawmill's make procedure if the mode is Mill
      portaTry: Integer;
    begin
      if (not isLoggedIn()) or (Tabbackpack.count() <= 20) then
        exit;
      if (players[currentPlayer].strings[3] = 'Mill') then
        MillsMake()
      else begin
        if not productionScreen.isOpen(gaussRangeInt(2000,4000)) then          //If the production screen isnt open withing 2-4 seconds
        begin
          inc(portaTry);
          sDebug('Failed to open Production screen trying again');
          repeat
            inc(portaTry);                                 //Increase the number of tries
            sDebug('Attempt to open production screen number ' + intToStr(portaTry));
            mouseOffClient(OFF_CLIENT_RANDOM);             //Moves the mouse off the screen
            portableDirection();                              //Tries to click the Portable again. If no Portable found, It will either look for it or terminate
            if productionScreen.isOpen(gaussRangeInt(100,200)) then
            productionScreen.clickStart(true);
            productionScreen.clickStart(true);
            productionScreen.clickStart(true);
              break;
          until productionScreen.isOpen() or (portaTry>50);      //If the number of tries are more than 9 it will stop trying
          if not productionScreen.isOpen(14500) then             //If it still isnt open, will terminate
          begin
            wait(gaussRangeInt(150, 500));
          end;
        end;
        wait(gaussRangeInt(150, 500));               //Waits 0.1-0.5 seconds
        productionScreen.clickStart(true);           //Clicks the start button
        wait(gaussRangeInt(13500, 14000));
        repeat                               //Waits and does antiban untill the progress button changes to done or the progress screen closes
          wait(gaussRangeInt(300, 700));
          AntiBan(players[currentPlayer].integers[5],false);
        until (progressScreen.getButton()= PROGRESS_BUTTON_DONE) or (not progressScreen.isOpen());
        mouseSpeed := randomRange(25,32);
      end;
    end;
    Last edited by rickhunley; 05-31-2015 at 06:13 PM.

  19. #19
    Join Date
    Dec 2014
    Posts
    188
    Mentioned
    3 Post(s)
    Quoted
    100 Post(s)

    Default

    Ingredients Processed: 588
    Processed/H: 457
    Time Running: 1 Hour, 17 Minutes and 7 Seconds
    Breaks Taken: 1

    They stoped hosting forges so it stopped. Works flawlessly. Very good script man! Hope to see your next project (Lunar Spells PLS :P)

  20. #20
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    Quote Originally Posted by srpronto View Post
    Ingredients Processed: 588
    Processed/H: 457
    Time Running: 1 Hour, 17 Minutes and 7 Seconds
    Breaks Taken: 1

    They stoped hosting forges so it stopped. Works flawlessly. Very good script man! Hope to see your next project (Lunar Spells PLS :P)
    Did you try the hosting mode?

    Why is your progress per hour so low :P
    Last edited by rickhunley; 05-31-2015 at 06:16 PM.

  21. #21
    Join Date
    Dec 2014
    Posts
    188
    Mentioned
    3 Post(s)
    Quoted
    100 Post(s)

    Default

    Quote Originally Posted by rickhunley View Post
    Did you try the hosting mode?
    No because i have no forges and don't plan on buying :P

  22. #22
    Join Date
    Feb 2015
    Posts
    422
    Mentioned
    41 Post(s)
    Quoted
    226 Post(s)

    Default

    Quote Originally Posted by srpronto View Post
    Ingredients Processed: 588
    Processed/H: 457
    Time Running: 1 Hour, 17 Minutes and 7 Seconds
    Breaks Taken: 1

    They stoped hosting forges so it stopped. Works flawlessly. Very good script man! Hope to see your next project (Lunar Spells PLS :P)
    nice proggy! Hope you get much longer ones!! Let me know if you face any problems!

    Quote Originally Posted by rickhunley View Post
    Script is working 99% of the time with non-hosts. Hosting is buggy - sometimes will create a loop on production screen, and not deploy portable even though it is in the inventory (60% chance of deployment). Production screen bug is the big one - not sure why it's doing it :S Have PMed faddy.

    Could you please add a fail safe for the deployment of portable when hosting, and also clicking the button to produce the units. These are the only two bugs that I've identified after about 60 hours of testing on 12 accounts.

    Thanks

    Update:

    I've recoded it a bit. Let me know what you think: it hasn't failed since.

    Simba Code:
    procedure portableMake();                //Navigates the production screen and waits at the progress screen.
    var                                            //Also initates the Sawmill's make procedure if the mode is Mill
      portaTry: Integer;
    begin
      if (not isLoggedIn()) or (Tabbackpack.count() <= 20) then
        exit;
      if (players[currentPlayer].strings[3] = 'Mill') then
        MillsMake()
      else begin
        if not productionScreen.isOpen(gaussRangeInt(2000,4000)) then          //If the production screen isnt open withing 2-4 seconds
        begin
          inc(portaTry);
          sDebug('Failed to open Production screen trying again');
          repeat
            inc(portaTry);                                 //Increase the number of tries
            sDebug('Attempt to open production screen number ' + intToStr(portaTry));
            mouseOffClient(OFF_CLIENT_RANDOM);             //Moves the mouse off the screen
            portableDirection();                              //Tries to click the Portable again. If no Portable found, It will either look for it or terminate
            if productionScreen.isOpen(gaussRangeInt(100,200)) then
            productionScreen.clickStart(true);
            productionScreen.clickStart(true);
            productionScreen.clickStart(true);
              break;
          until productionScreen.isOpen() or (portaTry>50);      //If the number of tries are more than 9 it will stop trying
          if not productionScreen.isOpen(14500) then             //If it still isnt open, will terminate
          begin
            wait(gaussRangeInt(150, 500));
          end;
        end;
        wait(gaussRangeInt(150, 500));               //Waits 0.1-0.5 seconds
        productionScreen.clickStart(true);           //Clicks the start button
        wait(gaussRangeInt(13500, 14000));
        repeat                               //Waits and does antiban untill the progress button changes to done or the progress screen closes
          wait(gaussRangeInt(300, 700));
          AntiBan(players[currentPlayer].integers[5],false);
        until (progressScreen.getButton()= PROGRESS_BUTTON_DONE) or (not progressScreen.isOpen());
        mouseSpeed := randomRange(25,32);
      end;
    end;
    Sorry for not responding earlier as I have been on vacation for the weekend. I'll pm you soon and see if we can figure this out.

  23. #23
    Join Date
    May 2015
    Posts
    84
    Mentioned
    0 Post(s)
    Quoted
    32 Post(s)

    Default

    Quote Originally Posted by fady View Post
    nice proggy! Hope you get much longer ones!! Let me know if you face any problems!



    Sorry for not responding earlier as I have been on vacation for the weekend. I'll pm you soon and see if we can figure this out.
    Thanks I'd appreciate that I think there needs to be a slight tweak on the place portable option as well, doesn't seem to want to place a portable all the time. Think changing this to SRL would be of better use as well. Going to test it and let you know. Be cool to chat in PM

  24. #24
    Join Date
    Sep 2014
    Posts
    447
    Mentioned
    10 Post(s)
    Quoted
    203 Post(s)

    Default

    The program sometimes has trouble reading the production progress bar and will often end the production early. Here are some of the debugs:
    ---- Current mouse-over text: "Mix potions Portable well"
    ---- Found "ix potions" in mouse-over string: "Mix potions Portable well"
    -- isMouseOverText(): True
    Found a Portable Well
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = -1
    ---- TRSProgressScreen.getButton(): result = -1
    -- isMouseOverText()
    ---- Current mouse-over text: "Mix potions Portable well"
    ---- Found "ix potions" in mouse-over string: "Mix potions Portable well"
    -- isMouseOverText(): True
    Found a Portable Well
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = -1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    ---- TRSProgressScreen.getButton(): result = 1
    I don't think there is a problem with your code, just an issue with the production progress bar (lines 476-479 if you wanted to look). For more information, I was at BA when this problem happened, though I don't think this the first time it has happened.

    Just for right now, I'll change it to a pixel shift based wait, but I thought I'd just let you know~

  25. #25
    Join Date
    Feb 2015
    Posts
    422
    Mentioned
    41 Post(s)
    Quoted
    226 Post(s)

    Default

    Quote Originally Posted by yourule97 View Post
    The program sometimes has trouble reading the production progress bar and will often end the production early. Here are some of the debugs:




    I don't think there is a problem with your code, just an issue with the production progress bar (lines 476-479 if you wanted to look). For more information, I was at BA when this problem happened, though I don't think this the first time it has happened.

    Just for right now, I'll change it to a pixel shift based wait, but I thought I'd just let you know~
    That is very strange. Had you just gained a level before this happened? because the wait for production would would stop when the Done button appears, or in case the button appeared and disappeared while the script was in an antiban loop, it would stop if it doesn't detect that the progress screen is open. It doesn't seem to have stopped because of the Done button, because the result debugged would have been = 0. So it must have been because the progress screen "wasn't open". The fireworks from leveling up, almost always trigger a false negative with the progress window, so my best guess would be that. Thanks for your input and im glad you're enjoying the script.

    EDIT: you can change line 478 to
    Simba Code:
    until (progressScreen.getButton()= PROGRESS_BUTTON_DONE) or (not progressScreen.isOpen(gaussRangeInt(1000, 1500)));
    This might help with decreasing the chance of a false negative with the progress screen. Because the progress screen now needs to not be detected for 1-1.5 seconds for that part to exit the waiting loop. It should have no effect on the speed of the script. However, LMK if it does.
    Last edited by fady; 06-07-2015 at 04:13 AM. Reason: solution-ish

Page 1 of 12 12311 ... LastLast

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
  •