Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
There exists many hundreds of bug fixes from the community. And there are still more bug fixes to go, not covered by mods yet...
- damage taken: 1000
- shield health: 200
The "solution" where Quen actually reduces damage would be:
reducedDamage = incomingDamage - parent.shieldHealth;
But i think the vanilla code was made on purpose. We could see Quen as a barrier that either blocks or breaks and when it breaks it doesn't do anything. Which is exactly what we have with the vanilla code.
reducedDamage is subtracted from the total incoming damage later in the script, I just didn't show that.
See here:
damageData.processedDmg.vitalityDamage -= reducedDamage;
What you described is how people view the effect in practice, but it conflicts with the in-game tooltips and begs the question of why the shield has a health integer at all, or why the code involves calculating damage and subtracting it etc.
the last line should just be
reducedDamage = shieldHealth
because you already know incomingDamage is greater from the if
you're just wasting computing resources
But the damage could be less than the shield health - in this scenario you get rid of the if/else structure completely and just use that single line to cover all possibilities.
Changing Quen was the whole reason I got into making mods for W3, but just making this change wouldn't fix Quen because the shield health is in no way balanced for the game. This "bug" is actually a band-aid over the fact that health and damage scaling is so poorly balanced over the course of your leveling.
I showed that the code they use is completely nonsensical. It appears to indicate that there could be a scenario where the shield blocks less than 100% of the damage from an attack.
Having this conditional if/else statement means it should work like this:
if Condition 1, then result A.
Otherwise, if not Condition 1, then result B.
But the way it's written is like this:
if Condition 1, then result A.
Otherwise, if not Condition 1, then... also result A.
What's the point of having the conditional statement at all?