PathOfBuildingCommunity / PathOfBuildingCommunity/PathOfBuilding

Hit Rate with Max Unleash Seals is incorrect when Cast Rate is high enough

Open
#9,601 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug: calculation
Dominant language
Lua
Stars
5.4k
Forks
2.4k
Avg merge
1d 12h
Merged PRs (30d)
26

Description

Check version
  • I'm running the latest version of Path of Building and I've verified this by checking the changelog
Check for duplicates
  • I've checked for duplicate open and closed issues by using the search function of the issue tracker
Check for support
  • I've checked that the calculation is supposed to be supported. If it isn't please open a feature request instead (Red text is a feature request).
What platform are you running Path of Building on?

Windows

What is the value from the calculation in-game?

In-game when waiting for Max Unleash Seals, I believe Hit Rate should be calculated as the lower of the following two:

  1. 1 / Time to Gain Max Seals
  2. Cast Rate / (1 + Max Seals * 0.1)

So the value would be (with placeholder stats):

  • Time to Gain Max Seals = 1.5s
  • Cast Rate = 3/s
  • Max Seals = 8
  • 1 / Time to Gain Max Seals = 1 / 1.5 = 0.67 Hit Rate
  • Cast Rate / (1 + Max Seals * 0.1) = 3 / (1 + 8 * 0.1) = 1.67 Hit Rate
  • 0.67 is the lower of the two, so that should be the Hit Rate used
What is the value from the calculation in Path of Building?

In PoB, when config is set to Wait for Max Unleash Seals, PoB calculates Hit Rate as whichever is lower:

  1. 1 / Time to Gain Max Seals
  2. 1 / (Cast Rate * 1.1)

So it calculates the incorrect value (with placeholder stats):

  • Time to Gain Max Seals = 1.5s
  • Cast Rate = 3/s
  • Max Seals = 8
  • 1 / Time to Gain Max Seals = 1 / 1.5 = 0.67 Hit Rate
  • 1 / (Cast Rate * 1.1) = 1 / (3 * 1.1) = 0.30 Hit Rate
  • 0.30 is the lower of the two, so it chooses that (and so higher cast speed = lower hit rate and DPS currently)
How to reproduce the issue
  1. Select Arc as the main skill
  2. Add Unleash Support to Arc
  3. Tick on Do you wait for Max Unleash Seals?
  4. Increase cast speed until (Cast Rate * 1.1) > Time to Gain Max Seals (On new file, 100% increased cast speed is enough)
  5. See incorrect Hit Rate based on inverse of 110% of Case Rate
PoB for PoE1 build code
https://pobb.in/-OiTWyTB33fj
Screenshots

When Time to Gain Max Seals is greater than 110% of Cast Rate:
Image

When 110% of Cast Rate is greater than Time to Gain Max Seals:
Image

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue with the linked PoE1 build code using Arc, Unleash Support, and “Do you wait for Max Unleash Seals?”. Trace the hit-rate calculation for that setting, then verify it uses the lower of the seal-gain rate and the cast-rate expression involving Max Seals; confirm the result at high cast speed.

Written by the indexing model from the issue text.

Assessment

Tech stack
lua
Domain
game-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.