Welcome to the Achaea Forums! Please be sure to read the Forum Rules.

Nexus: Mining Assistant

KaiosKaios Member Posts: 62
Hello Nexus friends! For some time I have been working on a package that helps out with prospecting, mainly the movement part. For quite awhile now I have participated in Mining and the main reason I decided to start working on this package is that it had become truly difficult to ever find any decent lodes while I was out prospecting. Obviously if you have spent time mining and prospecting you will know that there are many others that certainly possess scripts/packages that they use to improve their prospecting and this makes it very difficult to keep up with them during that process. Eventually I started working on my own.

You can find the package at my github page, just follow this link: https://github.com/KaiosGit/Achaea/tree/miningassistant 

Please note that this package is not yet completed! The core features are working but it needs a lot of improvement. The Read Me should cover most things well including the to-do list for what I still need to work on, but I will also take this time to go over a few key points regarding the package.

What can it do at this time?
  • Automated prospecting in all main land locations and the Tundra.
  • Stop prospecting at any time and when continued it will begin from the stopping point.
  • Customization of Prospecting Route by Area
  • Choose what size of lode you want the prospecting to stop at. Will always stop at uncommon lodes (other than platinum) regardless of lode size.
  • 'Wings Mode' automates the use of Wings during prospecting. (Still somewhat buggy)
  • Tracking and Collection of Mines and Lodes, which can also be displayed
  • Searching of the Mine Collection array
  • Manual reporting of lodes.
What can it NOT do at this time?
  • Does not automatically construct mines or deploy squads. If this is something you want to include yourself and are capable of doing so, feel free, but it is not a feature I plan to add.
  • No automated lode reporting. (yet)
  • Does not yet account for being blocked by walls, though there is a disabled trigger in the 'Incomplete' group of the package that is still in the process of being completed that could be used for this.
  • Only the AREA order can be customized via an alias, not the ROOM orders.
  • No method of travel from main land to Tundra or Fissure of Echoes.

Please keep in mind that the intent of this package is NOT to let you do other things in real life while you are prospecting and that doing so is against the rules, which is why I neglected to include any sort of automated construction or squad deployment. When the package stops at a lode it does not continue the process for you, you must re-initialize prospecting with the MAPR command.

There are still several features I'd like to add or am working on, but I would certainly appreciate any and all comments, feedback, and suggestions!
ChubbsFleurRomaen

Comments

  • KaiosKaios Member Posts: 62
    edited February 25
    Uploaded version 1.3 with a few changes and additions.

    Changes
    • Included MARESET and MAVALS in the command list displayed with MA for the time being. Ideally, these will eventually not be necessary to include.
    • Added the 'KnockedDownTundra' trigger in the 'ProspectReflex' group. This should account for being stopped by the prone that the wendigos in the Tundra use and during my testing it was successful. There may be some weirdness with that still however so I have marked it as partially resolved for now.
    • Added a group for Highlights. Removed the highlighting from triggers 'ProspectReflex3' and 'ProspectReflex4' and added them to triggers in the Highlights group.
    • Moved 'Tracking' group to inside 'ProspectTriggers' group
    • Moved 'RoomCollect' group to inside 'ProspectTriggers' group
    • Fixed a display notice error in alias 'SetRoute'
    • Fixed a display notice error in trigger 'ProspectReflex4'
    • Variable set added in 'TooFarAway' trigger
    • Adjusted some of the logic in trigger 'ArrivedDestination'
    • Adjusted some of the logic in trigger 'SettingsDisplay'
    • Modified some parts of the onGMCP to set/change values only when prospecting is happening.
    Issues
    • Noticed an issue with the Mine Collection caused by high latency, in which movement will occur before the sign gets read, and due to how the trigger works this also leads to the mine not getting pushed to the mine collection array. Uncertain what the best solution for this might be but I've added it to the To-do list in any case.
    • For those who prospect with a mount and have something in place to mount again should they get knocked off, this could also interfere with prospecting such as with the wendigos in the Tundra as there is nothing currently in place at this time that deals with mounting.

    If you are making any changes to the aliases in the package I would recommend making copies of them in your main package, then after you download a new version you can either disable the aliases in the Mining Assistant package that you copied over to your main, or copy your changes back to the package. Whatever is easiest for you.


    I suppose it would also be prudent to explain how wings usage is handled and why there are still currently some issues with it. When 'Wings Mode' is turned on, there are two triggers that handle its usage; 'DestinationTrack' and 'CloudsMovement' which are located within the 'ProspectTriggers' group.

    DestinationTrack:


    CloudsMovement:


    Essentially, when Wings Mode is on and you begin moving towards your next destination either through initialization of prospecting or during, the trigger DestinationTrack will check to see how far you are from your current destination and given that the value in the parameter is set to greater than or equal to 20 this means that you will go to the Clouds when you are 20 or more rooms away from your next destination. At this point, the trigger CloudsMovement then checks to ensure you are in the Skies and sends you on your way.

    The problem arises when moving from the Clouds, if the next destination in your route is 20 or more rooms away from you after you exit the Clouds (or whatever the number of rooms would be set to if you were to change that), then you get locked in to that state of moving back to the Clouds, to the next destination, back to Clouds, to the next destination, and so forth until the script is stopped.

    My assumption with Wings was that when you move towards a destination from the Clouds you will exit the Clouds using an exit that is nearest to that destination, but this may not necessarily always be the case, or depending on the route may always end up being higher than what the current value for destination tracking is set to. Hopefully that all makes sense, if not don't worry though because I am confident I will figure out a better way to do that eventually.

    ArgwinRomaen
  • KaiosKaios Member Posts: 62
    edited February 26
    Updated to version 1.4

    Changes
    • Adjusted how the global variables are set in the alias 'SetRoute'
    • Switched from 'var' to 'let' for the variable setting in alias 'SetLodeDetection'
    • Slight adjustment to a display notice in alias 'SetLodeDetection'
    • Changed the highlighting for many of the display notices to something more pleasant, but retained original highlighting for onLoad, stopping at lodes, errors, and other important notices.
        Wings Mode
    • Changed trigger 'CloudsMovement' to a regular expression to include 'on the clouds', 'high above the clouds', and 'far above the clouds' in capture.
    • Added a 100ms timeout before the code in trigger 'CloudsMovement' is executed to help ensure you have actually arrived at the Skies before the check and movement occur. The time could be changed to suit your needs or removed entirely if you feel it's unnecessary.
    • Modified trigger 'DestinationTrack' to queue an alias which uses 'SAY Duanathar' instead of sending the say command directly. Included custom alias setting and clearing when Wings Mode is turned ON or OFF.
    • Increased number of rooms away from destination to use Wings from greater than or equal to 20, to greater than or equal to 21. (Trigger 'DestinationTrack')
    • Changed 'send_command("SAY Duanathar", true);' to 'send_command("queue addclear eqbal wingsmove");' in trigger 'DestinationTrack'
    • Added a display notice in the trigger 'DestinationTrack'
    • Modified 'On/Off Alias' to include setting and clearing an alias for 'SAY Duanathar' when Wings Mode is turned ON or OFF.
        Mine Collection
    • Changed the way Mine Collection is handled to help account for latency. Instead of the read sign command occuring in the 'MineCollection' trigger and then including a Wait For action, I have separated this in to two triggers (MineCollection1 and MineCollection2); one for the mine and one for the sign, which is now read at the same time prospecting occurs in the trigger 'ProspectReflex2' if Mine Collection is ON. This also makes it easier to modify if you want to push the string without getting the city or including the sign reading step, in the case one does not have or want to use Voka's CharacterDB package.
    • Changed 'On/Off Alias' to enable or disable both Mine Collection triggers when turned ON or OFF.
    Issues
    • Issue reported in relation to Wings Mode; It seems the line 'send_command("SAY Duanathar", true);' in the trigger 'DestinationTrack' does not always use your wings when the command is sent in this way. I'm uncertain if this happens occasionally or all the time or what the reason could be, but I suspect if it works some of the time then it's related to having or not having balance when used. What I have done instead is change the command in 'DestinationTrack' to 'send_command("queue addclear eqbal wingsmove");' and the alias 'wingsmove' is being set when Wings Mode is turned ON and cleared when Wings Mode is turned OFF. Please let me know if there are still issues with this change.
    • Trigger 'DestinationTrack' occasionally fires twice. This might be due to the STOP command in the trigger being sent when no movement is occuring and then it tries again after movement continues, or it may just be related to latency and the fast movement rate. Since you cannot say things consecutively in such a quick manner it doesn't appear to cause much issue with going to the Skies itself but I will try to figure out why this is happening and come up with a solution for it.

    I tested out Wings Mode using both example alias FullRoute1 (the default route set on first load) and FullRoute2, and they both completed up to the end successfully. If you have Atavian wings you could try Duanatharan instead of Duanathar and see how that fares but even changing the room orders themselves can sometimes impact the route that is taken quite significantly so this will have a lot of variation depending on the route used. I will try my best to eventually account for more possibilities as I discern them.
Sign In to Comment.