Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix 3.1 xp multiplier calc for levels 95-99 #8283

Open
wants to merge 2 commits into
base: dev
Choose a base branch
from

Conversation

OriginalThing
Copy link

Description of the problem being solved:

PoB doesn't currently take into account the experience penalty for levels 95-99 that GGG applied in patch 3.1 and the experience multipliers shown in PoB are higher than they should be when you hover the level at top center of the window.

An explanation of the numbers:

I initially was going to follow the formula shown on poewiki.net 1/(1+[number from patch notes]). However after reading a couple of reddit posts (reddit post 1, reddit post 2) of people experiencing less experience gained than you would expect from reading the patch notes. People were experiencing ~66% less experience gained rather than the stated 40% less. As the second post points out the patch notes used 1-[in-game multiplier] to describe the increase of experience needed.

Player level Patch notes % PoeWiki Penalty Actual Penalty
95 6.5% 1/(1+0.065) = 0.939 1-0.065 = 0.935
96 11.5% 1/(1+0.115)= 0.8969 1-0.115 = 0.885
97 18.7% 1/(1+0187) = 0.8425 1-0.187 = 0.813
98 28.25% 1/(1+0.2825) = 0.7797 1-0.2825 = 0.7175
99 40% 1/(1+0.4) = 0.7143 1-0.4 = 0.6

Steps taken to verify a working solution:

  • Open a new or existing build
  • Set the level anywhere from 95-99 at the top middle of the screen
  • Hover the the level box
  • Compare to expected output

I have generated these numbers using Google Sheets to use as a reference for verifying the values

Area level →
Player level ↓
80 81 82 83 84
95 9.19% 10.12% 10.97% 11.69% 12.25%
96 8.07% 8.88% 9.63% 10.26% 10.75%
97 5.26% 5.77% 6.23% 6.62% 6.92%
98 3.36% 3.67% 3.94% 4.18% 4.36%
99 2.07% 2.25% 2.41% 2.55% 2.65%

Full sheet of experience numbers.

This site applies the 3.1 experience penalty in its calculations so this can be used as a 3rd party to verify the correct numbers.
Level 95 Area Level 83
image
Level 99 Area Level 83
image
It shows the penalty number so to convert that into a multiplier as with pob you'll have to do a little math.
100-xp penalty = experience multiplier

Link to a build that showcases this PR:

This is build agnostic, only the character level has relevance and can just create a new empty pob and set the level

Before screenshot:

Level 95

image

Level 99

image

After screenshot:

Level 95

image

Level 99

image

Verified co-conspirator: @Nightblade

@OriginalThing OriginalThing marked this pull request as ready for review September 2, 2024 12:07
@Nightblade
Copy link
Contributor

LGTM

@Nightblade Nightblade added the bug: calculation Numerical differences label Sep 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug: calculation Numerical differences
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants