• Visit Rebornbuddy
  • Modification to ExMatt's Fishing Profile

    Discussion in 'Plugins' started by mistahmikey, Aug 30, 2015.

    1. mistahmikey

      mistahmikey New Member

      Joined:
      Jun 29, 2015
      Messages:
      161
      Likes Received:
      3
      Trophy Points:
      0
      The attached code is a modification I made to ExMatt's Fish.cs (an older version than current) to fix some issues I was having with it, add some features, and rearrange the code a bit because I am anal. If ExMatt desires, he is welcome to pillage any part of it for his use. The added features are:

      Food="<food name>" - will use specified food at the appropriate time while fishing. The default is no setting, so no food will be used.
      UseCordial="<true/false>" - will automatically use any hi-cordial/cordial you have in your bag whenever your GP is below the UseCordialMinGPPercent threshold. It will first attempt to use Hi-Cordials, then Coridals. The default is false.
      UseCordialMinGPPercent="<0-100> - The threshold (percentage of your characters max available GP) below which cordial will be cast. The default is 50. So if you have 600GP, the tag will attempt to cast Cordial when you have 300GP or less.

      A quirk of the coridal functionality is, if you set the threshold too high, the bot will wind up waiting for cordial to become available. This is because BagSlot.CanUse for a cordial is always false while the bot is fishing, so when the conditions are right for cordial to be used, the code must force the bot into an idle state before it can actually use the item. If the cordial is not actually ready because it is on cooldown, the bot will not proceed until the cooldown period expires. I could find no way to determine if an item is on cooldown (something like Item.IsReady or Item.CooldownTimeRemaining), so if someone knows how to determine this, please let me know.

      I have also included several tags. One of them is a modification of the FlightToPath tag that fixes the problem where it only works during the first iteration of a <While> tag. The other is a modification to NPCRepairTag, mainly because I just wanted to clean it up a bit for my purposes. Did I mention that I am anal? FYI, this repair tag will only work with NPCs that only offer repair capability (i.e., not the Mender and Merchant NPCs.) The final one, TurnInCollectibles, is my own - it attempts to automatically hand in specified collectables to the Collectable Appraiser. Because the Collectable Appraiser window is not available yet in RemoteWindows, the tag uses keystrokes to interact with the window, so you have to tell it the tag how to interact with the window. The keystrokes used are not configurable - it assumes you can use the default keypad keys it needs. The elements are:

      NpcId="<NpcId> - of the Collectable Appraiser you want to use
      XYZ="<x>,<y>,<z>" - coordinate of where you want the toon to stand near the Collectable Appraiser
      Collectable="<collectable name>" - Thunderbolt Eel, Luminati Perch, etc.
      AppraiserWindowLineNumber="<line number>" - the line number in the Collectable Appraiser window that corresponds to the Collectable you specified

      This tag will turn in EVERY specified Collectable you have until either 1) you run out of them or 2) you exceed your turn in quota for the collectable. It has been working fine for me, but use it at your own risk - don't come whining to me if it somehow destroys your collectables :)

      Finally, the two attached fishing profiles will continuously farm Thunderbolt Eels or Tiny Axolotls at the appropriate time and locations. It assumes you have all the necessary Aetherytes and are a level 60 fisher. During the period when the collectable fish is not available, it will farm Illuminati Perch. During each loop of the collection cycle, the bot will run the toon through Idllyshire to automatically repair and turn in the target collectables. You will need to specify what bait/food you want to use, and whether or not you want to burn cordials or mooch. I find that Goblin Jig is best for Illuminati Perch (albeit a bit expensive, as the jigs will get lost at varying rates), and Brute Leech is best for the collectable fish (so you will need to manually burn your blue scrip as necessary to acquire them). You will also need to deal with turning the blue/red scrip into whatever you want. The only problem I have with these profiles is the Navigation System sometimes hangs (this is a known problem that Mastahg claims will be fixed when he rewrites the Navigation code.) When this happens, just use the movement keys to nudge the bot forward, and it will take off again.

      To use my code, first unpack the OrderBotTags directory somewhere outside of the RebornBuddy directory tree. If you do not currently have an OrderBotTags directory in your RebornBuddy Plugins directory, you can just move OrderBotTags into that directory; otherwise, you will want to rename OrderBotTags to something else before you move it. If you currently have ExMatt's code, FlightPathTo.cs or NPCRepairTag.cs installed somewhere in the RebornBuddy directory tree, I believe you will need to remove them from the directory tree, as I suspect when RebornBuddy loads my modified code will conflict with the existing code since I did not rename the classes. I would suggest that you save them off somewhere outside of the RebornBuddy directory tree just to be safe. If you experience any problems with your existing scripts or my code after doing this, just reverse the process.

      The TurnInCollectables tag uses the following keys to interact with the window:

      1) Keypad Keys 0, 2, Decimal Point. The Num Lock key must be activated as well.
      2) Page Up

      Please ensure you have not reassigned these keys to other functions, and make sure the Num Lock key is activated. Also, make sure the FFXIV window has focus at all times. This software is simulating a user punching keys - it does not directly interact with the FFXIV window object to control things. If you change the window focus, it will not work properly.

      One final note: if you use Chanko and/or Agil, you will want to disable these, as they will conflict with the repairing and food eating features built into this code.

      Please keep in mind that my code is based on an older version of ExMatt's code, so you will lose his latest enchancements if you chose to use this instead.
       

      Attached Files:

      Last edited: Aug 31, 2015
      schopenhauer likes this.
    2. Burn

      Burn New Member

      Joined:
      Jul 25, 2015
      Messages:
      40
      Likes Received:
      0
      Trophy Points:
      0
      Thanks for this!
       
    3. tichy

      tichy Member

      Joined:
      Jun 6, 2015
      Messages:
      142
      Likes Received:
      3
      Trophy Points:
      18
      Hi mate - just thought I'd post problems here. Will do a full log if required.

      It seems to hang after Fish 21 out of 21 if the last fish caught is a collectable one.

      I've also had troubles with the axolotl turnin - even though its in the profile as turnin no.2 it just seems to attempt to turn in the first item (which is the 1 star fish) and stop. The turnins for the ill. perch seems to work though.
       
    4. mistahmikey

      mistahmikey New Member

      Joined:
      Jun 29, 2015
      Messages:
      161
      Likes Received:
      3
      Trophy Points:
      0
      Yes, please post a log that shows what was happening when the hang occurred, and I will have a look.

      As far as the turnin is concerned - the tag uses the following keys to interact with the window:

      1) Keypad Keys 0, 2, Decimal Point. The Num Lock key must be activated as well.
      2) Page Up

      Please ensure you have not reassigned these keys to other functions, and make sure the Num Lock key is activated.

      Finally, make sure the FFXIV window has focus at all times. This software is simulating a user punching keys - it does not directly interact with the FFXIV window object to control things. If you change the window focus, it will not work properly.

      If this is all in order, then post a log from the time when the problem occurs.
       
      Last edited: Aug 31, 2015
    5. tichy

      tichy Member

      Joined:
      Jun 6, 2015
      Messages:
      142
      Likes Received:
      3
      Trophy Points:
      18
      ah! I suspect it is that very issue of being "on top" - will give it a try and see nonetheless!
       
    6. mdbsat

      mdbsat New Member

      Joined:
      Jan 9, 2015
      Messages:
      64
      Likes Received:
      0
      Trophy Points:
      0
      I am using the Tiny axolotl file. It does the perch fine and flies but will not fly once it gets to the Helix aetheryte for some reason. Just mounts regular choco and tries to run over the edge. Thanks for making this by the way.
       
    7. mistahmikey

      mistahmikey New Member

      Joined:
      Jun 29, 2015
      Messages:
      161
      Likes Received:
      3
      Trophy Points:
      0
      That is what it should do. It should run outside of the arched area, then take off. It will land in an interrim spot, and take off again. This is to avoid it getting hung up on various floating structures on its way to the fishing spot.
       
    8. mdbsat

      mdbsat New Member

      Joined:
      Jan 9, 2015
      Messages:
      64
      Likes Received:
      0
      Trophy Points:
      0
      Yeah, it just doesn't actually take off and fly, it just keeps trying to jump off the edge. I flew it manually to the spot to fish and it just ran to the edge again of the island again but this time stealthed. I still love the profile for the perch and turn in though. I am sure the thunderbolt eel will work better though. Thanks again for making this!

      EDIT: it seems to be just mounting the regular chocobo. It will fly when I switch it to an actual flying mount.
       
      Last edited: Sep 1, 2015

    Share This Page