1. Hello!

    First of all, welcome to MapleLegends! You are currently viewing the forums as a guest, so you can only view the first post of every topic. We highly recommend registering so you can be part of our community.

    By registering to our forums you can introduce yourself and make your first friends, talk in the shoutbox, contribute, and much more!

    This process only takes a few minutes and you can always decide to lurk even after!

    - MapleLegends Administration-
  2. Experiencing disconnecting after inserting your login info? Make sure you are on the latest MapleLegends version. The current latest version is found by clicking here.
    Dismiss Notice

[Guide] HP Washing Companion App!

Discussion in 'Guides' started by Nise, Jun 16, 2020.

  1. Nise
    Offline

    Nise Supervisor Staff Member Supervisor Game Moderator

    2,059
    693
    500
    Jul 5, 2017
    Male
    Korea
    6:38 PM
    NoraONE
    Corsair
    189
    Sweetdreams
    Honestly no clue if this will help anyone with the abundance of websites and bots (esp Drods) bot out there, but I found this code I worked on years ago :p

    https://repl.it/@alphas3r/HP-Washing-Companion#main.py

    The program (?) can help you figure out:
    • How much AP you still have stuck in HP/MP
    • How many washes you can currently do
    • How much int you need per level to achieve your desired hp (this means to be fully washed out)
    UI sort of looks like this:
    Screenshot 2020-06-16 at 14.22.51.png
    Screenshot 2020-06-16 at 14.22.57.png

    The numbers are all correct if I remember correctly (since it's what I used myself to wash years ago), but I don't remember any of the coding stuff xD It was my first project and haven't done anything coded related since, so... don't roast me pls!
     
    • Great Work Great Work x 5
    • Like Like x 1
  2. akashsky
    Offline

    akashsky Horntail

    2,034
    851
    495
    Jun 10, 2017
    Male
    United States
    2:38 AM
    Disparity
    Corsair
    200
    Pasta
    upload_2020-6-15_23-10-57.png

    Hmm... how do i get 1370 int.
     
    • Funny Funny x 1
  3. kalash
    Offline

    kalash Headless Horseman

    831
    233
    376
    Oct 18, 2016
    Male
    10:38 AM
    Kalash
    Night Lord
    200
    Halcyon
    Hehehe I had the same check. This calculator doesn't factor in mp washing, but it's a nice program with a proper ui
     
  4. PandaOnPanda
    Offline

    PandaOnPanda Timer

    101
    26
    120
    Jun 29, 2019
    5:38 AM
    PandaOn___
    Paladin, I/L Arch Mage, Corsair
    Homies
    Awesome stuff! Would love to have MP Washing included because from what I've seen it isn't in any other washing calculators, though if you don't have any plans on adding that just let me know and I'll put it in when I get some free time
     
  5. OP
    OP
    Nise
    Offline

    Nise Supervisor Staff Member Supervisor Game Moderator

    2,059
    693
    500
    Jul 5, 2017
    Male
    Korea
    6:38 PM
    NoraONE
    Corsair
    189
    Sweetdreams
    Ah yea I never accounted for infinite HP washing, but for that you'd prbly have to MP wash for that extra MP. Though there's no perfect formulaic way to figure out the infinite washing method (that I can think of from the top of my head hmmm...) Cus that's all based off base INT values, while this looks more towards total INT values.

    Just brainstorming here (don't mind me) if you need 1431 AP into HP >>>
    assuming four washes per lvl: roundup (1431/3) = 477 levels required to get that much AP {LevelsReq}
    remaining levels until HP goal: (200 - 30) = 170 levels remaining {LevelsRemain}

    number of washes that should be attempted per lvl: 1431 (AP needed) / 170 (LevelsRemain) = 8.4 washes per lvl
    mp_loss_formula for pirates = 16
    excess mp per lvl required = 134.68 MP = 135 MP
    easier way would be 1431*16/170 = 134.68

    5 AP to MP + 1 MP point equivalent from lvling up with INTs = 135 / 6.5 = 20.7... MP needed per AP point
    additional 0.5 added to account for ints that are worn, as well as to offset the fact that you won't need to -MP with natural INT wearing progression
    To net 21 MP per AP, you would need (21+16)*10 = 370 BASE INT

    Rerunning these numbers:
    370 base int per lvl up = 37 additional MP
    Adding 5x fresh AP +MP = 5 * 37 = 185
    Using 5x AP Reset to move -MP to +HP = 5 * 16 = -80 MP
    Total MP gain per lvl up = 37 + 185 - 80 = 142 MP (8.8 washes per lvl)
    excess mp per lvl required = 135
    MP we still need from MP washing = 135-37 = 98
    Essentially resulting in 185-80 = 105 extra MP

    Okay so I guess you could do it :think: time to remember how to write python cus I don't remember anything LMAO
     
  6. iPippy
    Offline

    iPippy Nightshadow

    655
    340
    345
    May 19, 2019
    Male
    5:38 AM
    iPippy
    The more interesting calculation would be to optimize cost (total number of resets) to achieve a wash goal. Without MP washing, this is a pretty straightforward calculation because the answer really is to just pump as much int as is necessary given a set of parameters (equips, target hp, etc) and fresh wash as much as possible and unfresh any remaining. Factoring for MP washing makes it a more extensive calculation because you have a few extra dimensions to play with. Questions like "how many MP washes with how much int?" or "Should this ap point be hp washed or mp washed and starting at what level?". It's been a while since I've looked at the math, but if I recall, most of the time it is more cost effective to mp wash fewer times at higher base int for obscene goals (as the extra 10 base int to reset pays for itself by reducing total number of washes). Of course, this only holds true to a point, when the cost of adding the next 10 base int does not save enough mp washes to make it cost effective. Add in a few nuances like accounting for mp washing while still raising base int (so not a constant mp wash number), or allowing for fresh hp washes to be done in tandem (the life of an mp washing bucc or warrior has it's own set of optimization strategies...) and it's not an impossible optimization, but one that would take some time to fully flesh out that I've left on the "when I get to it" list.
     
  7. PandaOnPanda
    Offline

    PandaOnPanda Timer

    101
    26
    120
    Jun 29, 2019
    5:38 AM
    PandaOn___
    Paladin, I/L Arch Mage, Corsair
    Homies
    Message me if you need any help! I've done a good amount of python

    Maybe I'm not understanding what this block is talking about, but shouldn't MP Gain from 1 MP wash be (base int÷10)-2?

    This would be amazing to have. To have a super simple one to get the ball rolling, you could just ask user to input their max base int, mp at goal level without any washing (or just calculate it based on current mp and int if not at goal level, can include int gear as well), then just spit out how many MP washes would be needed to attain a certain HP goal and the amount of total NX required. Let the user play around with that to find what they want. Then work on optimizing it to find the least amount of NX used by the combo of base int, int from gear (set amount given by user), and mp washing. If we assume all washing will be done with fresh AP (true for all classes except for corsairs for HP IIRC), then there is a certain cap we can use as max for base int and mp washes which would make the calculation easier
     
  8. iPippy
    Offline

    iPippy Nightshadow

    655
    340
    345
    May 19, 2019
    Male
    5:38 AM
    iPippy
    Well, every class benefits from fresh hp washing (even mages). The issue is the opportunity cost of being able to mp wash that point instead. Obviously that turning point is nearly instant for mages, and sairs should hit it pretty fast too (fresh hp bonus gain comprises a smaller portion of total wash gain for sairs compared to thief/archer). If aiming for a stupidly high hp target you would assume all fresh ap goes to mp washing, but if you're already close to the target, you could craft a case where is better to perform fresh hp washes when possible. Best times for this are either while still building up the mp to mp wash (fresh hp washes provided by lower level int gears/base) or after mp washing has put you close to your goal.

    Perhaps that needlessly complicates things. But for a first iteration, I'd consider structuring it as follows:

    -Input parameters (level, target level, current hp, target hp, current mp, int base, and every equip they have or plan to wear).
    -Calculate natural hp and mp gains and determine how many "int-levels" are required to reach target hp. (As has been done in the program above)
    -Tell user if goal is achievable given current parameters, and total reset cost (washing plus removing base). If it is achievable, we put in too much base int for our given equips and could have gone cheaper, perhaps a nice stat to know.
    -If it is not cheaper, we need to cover the excess with mp washing. We can no longer assume fresh washing, so the number of washes should be assumed to be unfresh, unless we can find spare fresh ap. Perhaps simply let the user know how many mp washes are needed and a new total cost, and if I'm not forgetting anything in the math, can do a quick calculation and see if 10 more base int (assumed gained in 2 levels) makes the cost cheaper. Compare the gain of 1 more mp per mp wash, plus the extra mp gained per level from natural gain of having 10 more int to 10 resets. If it spares 10 or more mp washes, it's obviously more effective to pump higher base. NOTE: spared mp washes can even be turned into fresh hp washes to help make raising int look even better (assuming we can reach the target hp goal).

    Sorry for big block of text xD
     
  9. PandaOnPanda
    Offline

    PandaOnPanda Timer

    101
    26
    120
    Jun 29, 2019
    5:38 AM
    PandaOn___
    Paladin, I/L Arch Mage, Corsair
    Homies
    Had some free time so I started playing around with it. Loved the UI Nise had so kept that the same, but converted it to python3 (sorry python2 truthers), and added in MW bonus, int gear, setting a max base int, telling the user how many MP washes they need to do based off of that, and calculating the NX needed. Plus the biggest change of all, big ol ascii art to start it off :)

    Just a quick first iteration that is ONLY taking into account the most basic scenario where it is assuming you are already at your max base INT at your current level and is NOT currently calculating the most efficient route to take. The main thing it will allow people to do is figure out how many MP washes are needed to reach their goal at a certain base int

    There are probably some bugs in there and I'm too lazy to add unit testing to something like this or manually test all scenarios, so shoot me a message whenever you encounter them and I can fix it.

    I'm not confident that it spits out the correct amounts - so let me know if/where the math falls apart lol - but I'm still posting it because its easy to see how I did each calculation so hopefully someone can someone can point me in the correct direction

    Feel free to take all the code and edit it yourself, I'll be making updates when I have time.

    https://repl.it/@PandaOnOpium/hpwashingcalcedit#main.py

    upload_2020-6-20_16-57-8.png
    upload_2020-6-20_16-56-29.png
     
    • Great Work Great Work x 6
  10. Tate
    Offline

    Tate Capt. Latanica

    352
    229
    278
    Apr 16, 2020
    New Zealand
    10:38 PM
    Potayto
    Shadower
    175
    Beaters
    awesome! trying it now
     
  11. PandaOnPanda
    Offline

    PandaOnPanda Timer

    101
    26
    120
    Jun 29, 2019
    5:38 AM
    PandaOn___
    Paladin, I/L Arch Mage, Corsair
    Homies
    I can’t exactly remember the last thing I updated in the code, but I believe as long as you use it when you’re at a level to have both your max base int and your max int from gear, it will be accurate. It should also give you a calculation using only base int for what it thinks is the “optimal” base int to have but I haven’t done much on it which is why it was labeled “TEST CALCULATION”.

    If you want to do like a full washing calculation with progressive int gain, as of now I would use chew’s washing spreadsheet to find out your hp/mp by whatever level you will have max base and gear using x amount of base int and x amount of gear int and plug it in to this calc to figure out how many MP washes you’ll need to do. One day when I have more time I’ll build that in, but haven’t been able to find the time lately

    Hope it helps you out!
     
  12. Voxtagrams
    Offline

    Voxtagrams Headless Horseman

    885
    381
    376
    Jun 13, 2020
    2:38 AM
    NiseNise is there a way to figure out how much base HP a Night Lord would have without washing?

    Without equips.
     
  13. Chrisss
    Offline

    Chrisss Horny Mushroom

    48
    6
    56
    Oct 21, 2020
    Male
    2102 Top Floor of Roppongi Mall
    5:38 PM
    ChrisBS
    Bishop
    200
    Rogue
    You can purchase an AP Reset to check your clean HP/MP. :)
     
  14. Voxtagrams
    Offline

    Voxtagrams Headless Horseman

    885
    381
    376
    Jun 13, 2020
    2:38 AM
    Yeah, I know but like I'd have to know if I'm able to stop putting HP, until 150 and do -MP +Main stat
    Screen Shot 2021-02-11 at 9.40.23 AM.png
     
  15. Chrisss
    Offline

    Chrisss Horny Mushroom

    48
    6
    56
    Oct 21, 2020
    Male
    2102 Top Floor of Roppongi Mall
    5:38 PM
    ChrisBS
    Bishop
    200
    Rogue
    Well once you've reached your hp goal, you can start to -mp +main stat.
     

Share This Page