PathOfBuilding icon indicating copy to clipboard operation
PathOfBuilding copied to clipboard

Fix extended hash in exported url

Open sida-wang opened this issue 1 year ago • 0 comments

Fixes #6736 .

Description of the problem being solved:

Currently the passive URL generated during export is different to the one from the official site. This is because PoB generates the extended hashes using by converting an internal nodeId and doesn't sort the hashes before encoding. This PR aligns the extended hashes with what is exported from the official site, as well as ensuring the same sorting of the hashes to generate the same URL as the official site.

Whats changed?

  • The internal nodeId for cluster nodes has been updated to include 2 bits which determine the type of socket the cluster jewel is a part of. This will be 0 if the node belongs to a cluster jewel socketed into a large cluster socket, 1 if socketed into a medium cluster socket and 2 if socketed into a small cluster socket.
  • This nodeId also includes a new bit flag to indicate if it's using the new version to allow for backwards compatibility. This means that previously saved builds will still load correctly.
  • Added sorting of hashes in PassiveSpecClass:EncodeURL()

Steps taken to verify a working solution:

  • Will test further before unmarking as draft, has worked so far with the handful of builds that I've tested.

sida-wang avatar Jan 22 '24 12:01 sida-wang