Skip to content

Improve MoM+EB(+ES bypass) calculations - #8590

Merged
Wires77 merged 2 commits into
PathOfBuildingCommunity:devfrom
Edvinas-Smita:fix/MoM+EB+ESBypass
Jun 11, 2025
Merged

Improve MoM+EB(+ES bypass) calculations#8590
Wires77 merged 2 commits into
PathOfBuildingCommunity:devfrom
Edvinas-Smita:fix/MoM+EB+ESBypass

Conversation

@Edvinas-Smita

Copy link
Copy Markdown
Contributor

Closes#6797

Description of the problem being solved:

Energy shield with EB and MoM was only protecting available mana. This meant that es would do nothing all when a build had 0 mana. Damage could also not have bypassed from energy shield to life when there was not enough mana to absorb it.

Steps taken to verify a working solution:

  • Test in-game: MoM+EB and 700 damage from heartbound loop drains 280es if available, regardless of mana. When <280 es was available the remainder was taken from mana, and then life if mana was still not enough.
  • Test in-game: MoM+EB+Corrupted Soul (50% bypass) drains 140es, 140mana, 420life.

Link to a build that showcases this PR:

eNqtW-1v2zYT_1z_FYSBAS2GJH7NksDp4MRJkyFpPDtpt-fLQEu0zZUSXYpK4g37358jqbe4pixZyofWMu93dzzyjncnevDrq8fQMxEB5f55s33YaiLiO9yl_uK8-fR4fXDS_PVjYzDGcvkwvwgpUyMfG-8G-jNi5JkwwDWRxGJB5JeYU_cv4LTCvlwS7t_jv7n4xN3z5mfukyaaYd-lMn5yGA6Cz9gj582pA-AmwoFDfPcy_T4iXGKBHUnEnZI6DCW_5y6MShHCqIepP-XONyI_CR6utFLPlLwYmtv78cPkMaMS9bMqwYzeDcYMr4mYSixRAP-cN4dgGLwgI-zBv8ANsxBYtQ5bneZRLuIiFIEsAZuuCHETyvahlXAsyNV8ThxJn8mloPJyiX0nI8OGK0t7HzJJV4wSkdGqb0Pc_MDcSvrIJWaj8fSNWXr51FzuVvorlcsLBlYszFshbhc-laQUZMxpwP3SM3gDsFo-ZAzcqxDthAREPGNJN5Sx8ubejPol7HOPfXzJgwK2V5RjIsBnZSnAlDgc3LysjJLIOzonxSlLzSMClNVmv3lcTYvSlWa8n0ITiG7FKKc8ZAUpZRpwOlaqEXktQHXrFxA4Is9c6kNnF6X25KubcSr5tHXYO-2d9vv9drdjjXjj5TqgDmb3-JV6oQex8hF_I6nAXi9nsyyW0oeIYMN2frFir6kge8AuOXP3gS0xD6y41rHdral_A9nA0HFCONvXqVVyPSgh67ZaOWeqc6aIb32nmF8--UIH1cxRnMNfISbgLurEnzFSFJIKibwuPWB3yVoQPxK4LjahO0Kc5Scw8QRLUizGZqaRa1hFW8iwinCrYYsBShhJAS1GsqcuClTSTFc-EYv1dEkJc7N6FQLEul3iVSGsNnaWQSGjv5VYat9koSUN8xULt9ixUVanZxxkY3T7ON9chrzY9iSQNALAJUXT47Hgf6sEnJWDDYXHQ1HgBFQzMMSFJhAfL6bamBA3dIqdZ0kdccGgaio6jQQFejJWCjqUEjvfRtxdFDaaFlIK8Va_abhaQSRRu6EoA3VuQm5NM9nKwXEB6gfYylmnzj1hiwtIqQsLSLKG4lI2IMXnoo79EpNJyQuLSBb0HoKFB0eBrpWhqE-jgXVxoJwqVBtpwoI12pi_gOZL1e0IylFDepQef1ZVBPH_WRfm_4a8kIAr34VMC1yhsIxNxDYxj9SDQBoEIywxcqOc-gsWFPuyo1sxAcHCWd7B0l9jxmYQCc6b2W_1k27fXFMmiRjBd0qoUmyTYzte9MGRbkOpT7feiguJyKv6b4yFXJ8355gFxBDqb4BPIKmvi2aIR4w10XTJX4bus5L0yDkLYhDCqxXx3Tc8HgUhCMfRxVFK6MmrB-ThALRem-0aqNlkuli3rp6Gz0GB82b_5KTbVXNXtRYW6-FbQp-CXhJkZZppUF6YPpnhpMS-GzxN7vSHd0spV8HZ0dHLy8vhCssln5NXOJ8OHe4drQAECh8E3yhjB4rt0RD-LhZD_acZHcWcBqaBFhi20ZNWW8k97kDWhqgknnqK3A7QWdBAObagME-zMY6UcfRKKeupD5-5JJpWfRk_DKZKvQB2gJCfiBdcrMEZr1UOstG5iMyvqKdEmp2VxcTdQJfMccjU97-HmFG1G1rZb-9M49LnwktKM2AFu0GdGYbj43qllmt4d2dGhkxGzJS4eGuYLRAphKib7k0zJ_XxEjNHz3lw669CsKjuano0cP6ahfO5alGCCCl01_Xq-vrq8vH2y1XkW1mIXsW__NCbqc6c-T-NgFOiz34UhLPAfDxvfqHkRSsyIhJTBv7ucMbwKiDJ5tZKRzNggMvhpqmgwIt7m9t5pQR2TlevRIAvLiBpdAQlVr2S8R1KGYEqoVSxyMZN9RLtjEyGcgmebBJei6V0s9bORfVPrdNRgzlYiGKYWSVHozssIdW2Ba-jc-qoMJ6_5GqTG6ocuyTVuXW9o_TKzkM3Z20MzKAdbJquNnQ0mmNV3ea1WtWM2uEj4mDr3M2gHZzUUNwHM9m4JFQ5nD5zX29ycJohZSoVsq7sFSMJiZ3hg1wSER1YNk73EKNiklzHEXQWSrsbZyhybKVbOxYLqTE71PQuLHNQYzmR6E09bzFolsbOylTA1kCWBzVpsdV-UZKdswRRfWkxvxnNMUJcYlvmHw3nOImOv8NnTl1TaFncZYMsL2BAWlGdja4eq7PZLCerc7yGdO6bdb2jUTv8SVKViWzhYhKgQkyUU1XjoHyrGodH6jsyFGRvBpPNTCTFTvJzkKQE2gqOR_MiR1QZ7c3B1G97w3V5uTdax_8RmROYQe4BkNDk-IcM_REYQ-b4RkFWWq3tgSSdXSle5ijcOtPSHI2DRy848mKAIdnBCM7ym5xssRinpEVyQzBTb6g5q8bwhxc5VZipNm-4wr4bs3vYlqOn61DQelwGwFOX_yPVTa5qQ5946y2M7HoNjuKqTjcGVJ0VtTOmEmoyojOGJvqHc-_P82bvpHXYMU9R6dmLyk3IvUcUVlDonRdLVIR_nDcPup3Tw276ZyTfQgkeRKWw-pxUwnZ-YUDMu92vBK-4rxGZ-lVxQc-mu6JZmTpWl_QT-Fquz9DT59vfn64anxgXlIcB-oIhb1434tYP-o28ENa4I3gRkjN0RxZg2EbUsTlDIy7WAEDvL7kQ4UoSF6nXwh9Sij_oDH8PMXo_os9Q76Nr4LrMjP-PiNUSGFxJInzM0J88lMsP6P1YENQ9bLcPWxni4TKEkwm9v_U8KOaBeujNqFrqDw1T5IL8hLjd0GsyId_PUKfVmGCXhgFMQQXQxh31qKKWXBFCCcaoAy57hlqNfyOLnbX_-xfOgQU5ax32_7vAEHRcRH0E_6MZ49xFfI7et1utg5NWq_UBBRhKWqjOUipV3SuiyEop505dnCPrppy7dXE265Iy7tXF2KxhY2w6WIEaFnppEIYlv-T-9xB2uYtmaw37gjFr3ECWDPvT0b2oe-5OlCZI62PeA2Y6NHkUnZ0U3Z0UvZ0U_Z0U8ZuuI-WhiauqTpPdo7POO5gyLnXPbjx7mtypvqTpJIEbP6uzMG7ntWJVbAAjBrVLQC44RGk0nK2DADww6ib2yzAgTG7iOyXwOndE3T1miaYveLUpurcPowrTj3h0auCxfULHNUzouIYJ7cVj24Qq785uDRbp1DWbMvvthkCSKyvZY4uzHVfWoFOaQ2WR3brs369hM7RrcI92DXr0Su6EukJMp6pH9mowYPkzo7YQ2606_05FFy6ngLtGpldYZQ-a3KIKh-2O3a_M4biuZW3XFWPKb83qduxVXst-PZuqzOSHXsiIrCESdmsIKN2KTtmriG_XY_-9T8rSm7ZXGrFPFlXRqv2qsbqmZenVFVxqy6v3LqFK4CbUX5Rawu2hqVPPGtR2UtRR8PX2m1NZ41c_42tKNvqVFal-xB2XDQZVg8ePAk3XZ0qkuWMnsEumusP8lagLm4FpQ-tusL5lxP05XUR9YfMQdYY1PvkGSSoZUVcX9G2ot_2i7G0jJwwk9-65G6S3k37u9FpIcsTonDQO2vqzp9p0P6tr7OrJdL5RoF-WNxr91k-qmefq9jmiAZKqhY7mgnsaiGZkzgUxDCNin_sHjrosGsMMZrZWt9lgqTZEgOSfkO5BU18SxuhC9b4bb6jQSnCprjEYodQPJMG6F8mSmwX68qNDlpy5REQ2IOrFQPT7zPi-1S-t1g7Am4uxMay7C5Vcw42vV8XITqfX3iUx8wvPGNbfgcnedU4wO6cG3-yhn5K1B0w35lPESc9O7yW_WVW_01Sd4am-zsVDX04Jm2fuy_ULzLG0YZLVG6tXZsmiF0WVXwi1xzZNenJ6XGAhSmmodtammG6RXVJUytTh-q0ZLFbww6VGq4ToBw-cMd05z3rnDmR8OMaA4_bpyakdE9AFZQ9z_a4dlNQXBooq-fbXGaV2fnIjJ5HVavfyrLiEY8RixMFREvzNm0v99LExONr8Yf__AZ1yd6U=

Before screenshot:

image
image

After screenshot:

image
image

@Edvinas-Smita

Copy link
Copy Markdown
ContributorAuthor

Also closes #8582 and #8633

# Conflicts:
#	src/Modules/CalcDefence.lua

@Wires77Wires77 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome tests, as usual

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug: calculationNumerical differences

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Incorrect Max hit taken calculation with Mind over Matter, Eldritch Battery, and Corrupted Soul

2 participants

@Edvinas-Smita@Wires77