Project

General

Profile

Bug #4413

Moving with 0 strength uses all of your fatigue

Added by halbe null 9 days ago. Updated 9 days ago.

Status:
Resolved
Priority:
Normal
Category:
Game Mechanics
Target version:
Start date:
05/12/2018
% Done:

100%

Reproducibility:
Always
Operating system:
Other
Severity:
Normal

Description

Set your strength to 0, clear your inventory so you aren't encumbered, and try to move. Even with 100000 fatigue it still is set to 0 whenever I move. Feather and burden have no effect on this, only strength. Apparently this doesn't happen in vanilla. I was surprised to see that this hadn't been reported given how much of a problem this would be if you get screwed by greater bonewalkers. Was going to try a 0 strength playthrough for fun but I'll put it on hold for now.

Also I tested this with all content files disabled and it still happened.

History

#1 Updated by Alexei Dobrohotov 9 days ago

  • Status changed from New to Confirmed
  • Operating system changed from Linux to Other

Confirmed. Running fatigue loss is applied here. I suspect that the possible division by zero is the problem. Can't test what Morrowind does in this case.

#2 Updated by Alexei Dobrohotov 9 days ago

I suppose the encumbrance-related fatigue loss should be 0 in this case. Probably a matter of just editing a line to

const float encumbrance = cls.getEncumbrance(mPtr) / std::max(1.f, cls.getCapacity(mPtr));

#3 Updated by Alexei Dobrohotov 9 days ago

Player can't jump in this situation either, it probably extends to everything that relies on capacity being positive.

#4 Updated by Alexei Dobrohotov 9 days ago

I just realized getNormalizedEncumbrance is a thing and it's not used there for some reason, and it does account for zero divisions.

#5 Updated by Alexei Dobrohotov 9 days ago

  • Assignee set to Alexei Dobrohotov

#6 Updated by Alexei Dobrohotov 9 days ago

  • Status changed from Confirmed to Resolved
  • Target version set to openmw-0.44
  • % Done changed from 0 to 100

Also available in: Atom PDF