• Visit Rebornbuddy
  • [Plugin] FlaskHelper

    Discussion in 'Archives' started by toNyx, May 26, 2014.

    1. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,771
      Likes Received:
      35
      Trophy Points:
      48
      [Plugin 2.0] FlaskHelper


      BREAKING NEWS : Dragon updated this plugin for 3.0, you can find it here ! (ps: I'm back)


      Hello everyone, today I'm proud to bring you the thing everyone was asking for a while, surely not the perfect thing but it'll help :

      FlaskHelper
      A Responsive flask usage with settings


      - What's that s*** ?

      This is a plugin that'll use flask with specific requirements or thresholds
      Settings have been added to a GUI to allow on-the-fly modifications so no more restarts needed.
      No more deaths because the CR is going crazy ! (well, if the CR doesn't fight back it's not the plugin's fault ;D)

      - How it works ?

      It's like playing with 2 hands but having a 3rd one using flasks.

      - How to Use :
      - Enable plugin, search for the config tab like any other plugins
      - Set up your thresholds (the percent of life/mana/energy shield to use flask)
      - Check boxes to enable a special flask usage (eg. Check the Granite Flask box to enable it)
      - (Specific) Remember to check the Energy Shield box if you want to enable ES check instead of Life for special flasks.
      - (Specific) Blood magic disable the mana flask behavior, so even if you have on in your setup, it'll not be used, same for Laviangas.


      NOTE :
      Only the following special flasks are concerned by the life/energy threshold :
      - Granite / Jade / Ruby / Divination / Laviangas (Mana) / Atziri's Promise
      The other flasks have their threshold disabled since they are used to DISPEL or BUFFING DAMAGES and have to be used instantly (leave feedback if you want them to be enabled again) once we have/don't have the corresponding aura.
      Note : I may probably need to check for mobs in range/combat state before using those, may need a fix.

      For now, It's an initial release, so few things probably have to be reworked / improved

      Hmm.. ?!... Have fun botting PoE ? :D

      Screenshots :

      [​IMG]

      NOTE (Please read me ;_; )
      As of 1.0.1.8 the plugin now requires CommunityLib installed

      You can request a flask to be added, follow this pattern (you can find the aura buff by dumping player data while flask is active) :

      Code:
      Flask Name :
      Flask Behavior :
      The behavior is when the flask have to be used, you can use anything that is possible from the API
       

      Attached Files:

      Last edited: Aug 21, 2017
      iusdfyiwety and NT13 like this.
    2. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,771
      Likes Received:
      35
      Trophy Points:
      48
      Explanations (1.0.1.9) : FRESH INSTALL REQUIRED TYVMCYABABAY

      See this constructive post by WiN : LINK

      - Everything you need to know about "FH" (or extensions) is that is works the same way AIF's Custom rules does.
      - Coders can access/code anything they want in the "FH.cs" file (find it yourself)
      - By "coders" I meant curious people.
      - FlaskHelper now take care about the "Grace Period" (will understand who can)
      - Main options are still used in some functions, not for others, be sure to double check what you're doing.
      - Flask usage GCD on track
      - You can add new flasks manually ofc... only if you know how to proceed. I DONT SUPPORT ANY MISTAKE FROM FLASKS ADDITIONS, if you don't know what you're doing, request it on this thread and someone may be able to provide some shit
      - Usually, you shouldn't have to modify selectors.
      - List of built-in functions usable using " FH.function_name(parameters) " :

      - NumberOfMobsNear(object, distance)
      object is the reference object we'll get the position from, distance is ofc the radius of detection around this position

      - SpecificRarityMobAround(rarity, distance)
      Sounds legit...
      Note : Rarity is part of the enum that is in the API, when calling you have to use "Rarity.YOUR_RARITY" (e.g. Rarity.Rare)

      - IsBloodMagic
      The returned value is based on Flaskhelper settings, if the box is checked or not

      - IsCursed
      This returns true if the player is cursed by random shit, EXCEPT IN MAPs ROLLED WITH SPECIFIC SHIT (e.g. Player is cursed with...)

      - IsBleeding, IsBurning, IsChilledOrFrozen, IsShocked
      If you don't understand this, quit botting go back to the sims.
      You have access to only "me" as a reference for your player to write conditions for now sadly, this may change in the future.
      ("me" is a shortcut for LokiPoe.Me, which means you have a full access to the LocalPlayer object like Name, level, whatever.)

      You're free to request any additions to this class, even better if you have a logic for it already.
      It'll be hard to learn how to use it, but it'll in the end be better for everyone :)

      Note : Enabled flasks are shown in bold ORANGE in the combobox

      Changelog :

       
      Last edited: Jun 9, 2016
    3. A3on47

      A3on47 New Member

      Joined:
      May 1, 2014
      Messages:
      26
      Likes Received:
      0
      Trophy Points:
      0
      Can it be applied to Energy Shield ?
      As I can see for the image it only have one option (life i presume)
       
    4. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,771
      Likes Received:
      35
      Trophy Points:
      48
      So you want support for energy shield aswell for special flasks? :D Could you please precise the name of the passive so I make it an option.

      EDIT : Here you go, let me know if something goes wrong or want any tweak
       
      Last edited: May 26, 2014
    5. A3on47

      A3on47 New Member

      Joined:
      May 1, 2014
      Messages:
      26
      Likes Received:
      0
      Trophy Points:
      0
      I'm not sure if this is what you mean but the passive name in the skill tree is Chaos Inoculation.

      Seems really nice, and I was surprised by how fast you introduced the Energy Shield instead of Life option ;)
      Will use it today and give some feedback later.

      Thanks for the contribution ^^
      Cheers
       
    6. randomstraw

      randomstraw Community Developer

      Joined:
      Jul 17, 2012
      Messages:
      1,611
      Likes Received:
      10
      Trophy Points:
      38
      you cannot determine it by just CI.

      you'll need a manual checkbox or something, like if unchecked use hp, if checked use es (as indicators)

      as low-life builds rely on low hp + high es but dont have ci at all :)

      edit: just saw your screenshot which does exactly what i thought of. should read before i write. :p
       
    7. Deimos

      Deimos Member

      Joined:
      Jan 11, 2012
      Messages:
      52
      Likes Received:
      0
      Trophy Points:
      6
      Has been working great with my Ele Buzzsaw. Would it do good with an RF build that has only Ruby's?
       
    8. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,771
      Likes Received:
      35
      Trophy Points:
      48
      It should, if you want to keep the Ruby's buff active set it to 100, it'll select the first flask available to use
       
      Last edited: Jul 1, 2016
    9. maths

      maths New Member

      Joined:
      Jan 11, 2014
      Messages:
      162
      Likes Received:
      0
      Trophy Points:
      0
      no configuration for atziri promise amethyst flask?? its 1 of the best flask to use for quick farming.
       
    10. A3on47

      A3on47 New Member

      Joined:
      May 1, 2014
      Messages:
      26
      Likes Received:
      0
      Trophy Points:
      0
      I checked around the files and there is no logic on instant life flasks.
      In some cases they're one of the most important things in our "arsenal".
      Can you please implement it?

      Thanks again for your work. I've been running it since you posted it and until now everything goes perfectly.
      Cheers
       
    11. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,771
      Likes Received:
      35
      Trophy Points:
      48
      Retrieve me the aura and i'll add support for it ;)

      There's a check for that kind of logic :

      So basically it should use an instant flask over any other flask, this is a "supposed" logic so if the logic fails, it's probably not due to the code but the way the flasks are retrieved/ordered, atm the code looks fine, iit could probably be because of the 1.7 seconds timer, i'll add a settings to set it up yourself. for now i'll add the atziri's part of the code as soon as I get the aura name (i'm still looking for flasks names tho, if they don't work)

      ;) Glad it works fine

      EDIT :

      Ok, the new build is almost ready, just waiting for your answers (if instantrecov bugs, and the Atziri's Promise aura name) so I can release it
      I also noticed a lot of bullshit in the code, I was probably asleep or drunk when I wrote it... xD fixed in the next build.
       
      Last edited: May 30, 2014
    12. a3f9sjdlkjw

      a3f9sjdlkjw New Member

      Joined:
      Jan 2, 2015
      Messages:
      18
      Likes Received:
      0
      Trophy Points:
      0
      Does not owrk, here is the error log:


      2015-01-04 16:11:10,004 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Main.cs(4,22) : error CS0234: The type or namespace name 'Plugins' does not exist in the namespace 'Loki.Utilities' (are you missing an assembly reference?)
      2015-01-04 16:11:10,005 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Main.cs(8,25) : error CS0246: The type or namespace name 'IPlugin' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,005 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(14,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,005 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(26,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,005 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(38,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,006 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(49,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,006 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(60,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,006 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(71,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,006 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(82,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,007 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(94,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,007 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(106,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,007 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(117,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,007 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(128,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,008 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Flasks.cs(139,35) : error CS0246: The type or namespace name 'InventoryItem' could not be found (are you missing a using directive or an assembly reference?)
      2015-01-04 16:11:10,008 [4] ERROR AssemblyLoader`1 (null) - Compiler Error: d:\Program Files (x86)\Exilebuddy\Plugins\FlaskHelper\Main.cs(20,28) : error CS0246: The type or namespace name 'IPlugin' could not be found (are you missing a using directive or an assembly reference?)
       
    13. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,771
      Likes Received:
      35
      Trophy Points:
      48
      Ofc it doesn't work, it's outdated :eek:
       
    14. zhenk

      zhenk Member

      Joined:
      Jun 12, 2012
      Messages:
      100
      Likes Received:
      0
      Trophy Points:
      16
      will this be updated eventually?
       
    15. WhereIsMyMind

      WhereIsMyMind Member

      Joined:
      Oct 12, 2013
      Messages:
      849
      Likes Received:
      5
      Trophy Points:
      18
    16. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,771
      Likes Received:
      35
      Trophy Points:
      48
    17. IeU

      IeU Member

      Joined:
      Jul 20, 2010
      Messages:
      831
      Likes Received:
      11
      Trophy Points:
      18
      Get it on GitHub, maybe another people can join the contribution/optimization
       
    18. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,771
      Likes Received:
      35
      Trophy Points:
      48
      In progress, fixing major bugs & transposing to Framework 4.5.1 ;) Gonna be gud

      // EDIT //

      Plugin is loading, atleast, dunno if it works :

      [​IMG]

      Needs to implement separate cooldowns, and cooldowns customization for now to be "almost ready" ;)

      Edit : update of the CI support
      Edit 2 : we're on it, almost there ! checking if timers don't fuck up huehue
      Edit 3 : Plugin is working as intented, implementation of special flasks and QS flask in progress, needs testing

      [​IMG]

      Edit 4 : Here we go, logic is implemented, I need your help now, see below >

      If someone can provide them, do it ;) I want the InternalName, not the name.

      Oh, I almost forgot :

      [​IMG]

      Edit 5 : Disabled some threshold since they're not needed (I guess, tell me what you think)

      [​IMG]
       
      Last edited: Jan 22, 2015
    19. toNyx

      toNyx Well-Known Member

      Joined:
      Oct 29, 2011
      Messages:
      3,771
      Likes Received:
      35
      Trophy Points:
      48
      Well, for those interested, this plugin is now up-to-date ;) links are in the first post & screenshots too.
       
    20. zhenk

      zhenk Member

      Joined:
      Jun 12, 2012
      Messages:
      100
      Likes Received:
      0
      Trophy Points:
      16
      This update looks great, however I haven't tested it yet and it turns out that I'm RF build and I use multiple Ruby Flasks. I take it I'll have to wait until 3.0 for multiple Ruby Flask (curses, bleeding, frozen/chilled etc.) use to be implemented?
       

    Share This Page