diasurgical / devilutionX

Diablo build for modern operating systems
Other
7.98k stars 781 forks source link

Monster health on Hell difficulty too low #5970

Closed Miz4r closed 1 year ago

Miz4r commented 1 year ago

Operating System

Windows x64

DevilutionX version

1.4.1 (latest release)

Describe

I started Hell difficulty on single player for Diablo 1 on my lvl 28 Warrior and I was surprised to oneshot everything except bosses doing only 50-60 character screen dmg. Monster health seems to be lower than should be for this difficulty. I checked the official guides for Diablo 1 and most monsters I am oneshotting should have at least 100 hp. See attached screenshot below for an example.

DevilutionXhell

To Reproduce

  1. Start a single player game for Diablo 1 (not Hellfire)
  2. New game on Hell difficulty with high level character
  3. Kill normal monsters on dlvls 1-4 and observe how they die too easily
  4. Check health numbers once you killed enough of a certain type and see how they don't represent their official values for Hell difficulty

Expected Behavior

I expected monsters on Hell difficulty to have more health

Additional context

No response

StephenCWills commented 1 year ago

I'm not sure what official guide you're referring to, but Single Player vanilla Diablo does not officially have HP values for Hell difficulty because it was only possible to play in Hell difficulty due to a bug. What you've shown in your screenshot is approximately half of the HP value listed for Scavengers in Jarulf's Guide, and that seems about right to me.

image

galaxyhaxz commented 1 year ago

This is actually a bug: in patches 1.00-1.04 monsters were supposed to get +100 life on nightmare and +200 for hell (shown when hovering over monster). However, when adding those values to their life they forgot to shift it to leave room for the fractional bits. This means they would get 100/64 (1) and 200/64 (3) life instead.

Whoever at Blizzard made patch 1.07 likely misunderstood the issue, and changed the life additions to actually be +1 and +3 accordingly and reflect that in the hover over. Since the life scaling formula just simply multiplies their base life then adds this, monsters which had a low base life will not scale properly to the difficulty and be far too easy.

Hellfire fixed it... though they cut the bonus in half for single player.

julealgon commented 1 year ago

Would you advocate for attempting to do the original intended change on this one @galaxyhaxz ?

galaxyhaxz commented 1 year ago

I guess that depends on what is considered vanilla and how far to push it for DevilutionX. Given recent commits like https://github.com/diasurgical/devilutionX/commit/a50d4a93ee335ef26580e00f0d04324d28cddda0 which are undoing changes that are debatable... You could argue the 1.07 change was done to prevent the hike in difficulty turning people off from upgrading to the patch, similar to how you could argue the Burgundy -> Crimson change was done either in error or because whoever was reviewing that part at the time changed it to their liking.

Changing things people are used to is a slippery slope... I fixed this bug for my project, but it has slowly strayed away from vanilla far more than I thought it would.

AJenbo commented 1 year ago

Well that isn't really the reason it was changed back to the original value

galaxyhaxz commented 1 year ago

I'm not referring to the choice to change it for DevilutionX, specifically I meant the reason Blizzard decided to change it between the beta and final game. Though the change there (to Crimson) is more ambiguous, the life bonus not working is obviously a bug, and renders the first 6 dungeon levels of hell a cake walk.

StephenCWills commented 1 year ago

If the existence of this issue is any indication, it does seem to betray expectations one way or another. I think the evidence galaxyhaxz presented is pretty compelling. Like, I doubt you'd be able to convince me that the bonus HP values of 1 and 3 were chosen because they had a measurable impact on gameplay. I think there's a solid argument that it should fall under the umbrella of "fixing bugs".

As far as the impact on the DevilutionX community is concerned, it might come as a bit of a shock to players who are used to leveling in those areas, but I doubt they would consider it to be an unwelcome change. Speedrunners and purists are the only groups I can think of who would likely be disturbed by it.

That said, am I so invested that I will submit a PR for this myself? Not really, no.

julealgon commented 1 year ago

If the existence of this issue is any indication, it does seem to betray expectations one way or another. I think the evidence galaxyhaxz presented is pretty compelling. Like, I doubt you'd be able to convince me that the bonus HP values of 1 and 3 were chosen because they had a measurable impact on gameplay. I think there's a solid argument that it should fall under the umbrella of "fixing bugs".

Yeah, this is why I questioned @galaxyhaxz there... I'm also in agreement here that this seems like one of those obvious bugs that DevilutionX should potentially just go ahead and fix.

That said, am I so invested that I will submit a PR for this myself? Not really, no.

What about keeping this one here open and up-for-grabs? @AJenbo any thoughts on that as well?

ikonomov commented 1 year ago

I also agree with this fix and even without the research for v1.07 it has been pretty obvious for me since I looked at the code that this is indeed a bug.

AJenbo commented 1 year ago

Just because it's clear that something is a bug doesn't mean it's clear what the proper solution is.

ikonomov commented 1 year ago

Just because it's clear that something is a bug doesn't mean it's clear what the proper solution is.

Indeed