Quote (Crayak85 @ May 10 2022 12:39am)
^CrackerSJ
Can either of you enlighten me about this portion. Practically, I’ve never done an act boss that gave 1exp. What does the*87 come from.
I do remember reading elsewhere that the exp from act bosses are often capped at a certain player count but I’ve never seen an overflow resulting in 1exp
the game has to evaluate expressions at runtime one operation at a time, and if a number becomes larger than the integer maximum at any step of the operation, it rolls over to become negative. It has a safeguard at the end of the experience process that caps the minimum experience per kill to 1, so you can't lose experience. So it doesn't just matter how xp is calculated overall, but the specific order of operations of the calculation. For the party experience bonus, it adds a value to the overall experience using the formula;
experience += [ abs( ( (party members - 1) * experience) * 87) / 256]
the actual code can be reverse engineered from its compiler code, but trust me its a huge unreadable mess
Since its being multiplied by 87 before its divided by 256, if exceeds the integer max inbetween those two steps, it will overflow to negative since its a signed integer, 2,147,483,647 -> -2,147,483,647
An example is hell diablo in classic, where 7 players in party gives full experience, but 8 players in party gives 1 xp. There's limits in xpac for diablo, baal, achmel's minions, etc.