Skyrim Special Edition
0 of 0

File information

Last updated

Original upload

Created by

DaJay42

Uploaded by

seaghost1440

Virus scan

Safe to use

Tags for this mod

About this mod

This is a port of DaJay42's Armor Rating Redux version 1.2.1 Everyone (https://www.nexusmods.com/skyrim/mods/78419?tab=files) I was unable to rebuild his .dll for the SSE version of the mod, so at Shizof's suggestion, I updated an older file from the oldrim version that doesn't need SKSE or have a .dll. It should work for Skyrim VR now.

Permissions and credits
Updated - My version was meant to be temporary, and now someone has this same mod ported with SKSE and SkyUI working.  https://www.nexusmods.com/skyrimspecialedition/mods/30727

https://www.reddit.com/r/skyrimvr/comments/bfye00/creating_a_new_dll_to_port_sse_mod_to_svr_i_dont/


If a retired computer engineer, Shizof, couldn't port the SSE edition of the mod, it's way beyond my ability, and DaJay42 isn't sure how, then the best solution I know how to provide is this simple conversion. It's a stop-gap measure until someone more qualified can properly move the most updated version to Skyrim VR. What this does is described on it's original mod page- 

------------
The Problem:
------------
The vanilla armor system is utterly, utterly broken.
Having an armor rating of 0 - 300 is pretty much pointless, as you still take 
almost full damage. 
Having an armor rating of 300 - 600 suddenly means every point is valuable, 
as your survivability increases hyperbolically.
Having an armor rating of over 667 (567 if in full armor) means any further 
increase is pointless, as your damage resistance simply goes flat.

For a more detailed discussion, see this five years old(!) forum thread:
http://forums.nexusmods.com/index.php?/topic/481577-skyrims-armor-system-is-broken/

===============================================================================

-------------
The Solution:
-------------
Replace the broken system with one like in Morrowind, where every point of 
armor counts.
This mod attempts to do just that.

It replaces Skyrim's Damage Resistance calculation with one of 3 formulas, 
as described below. All of them can be fine-tuned in the mod's MCM, which 
also has some advanced options for that really specific armor formula you 
never knew you needed.
All changes apply to both the player and any NPCs.
Additionally, the mod provides two (optional) ways of informing the player of 
their current resistance: by notification or with a (fake) magic effect.

===============================================================================

-----------
Definitions:
-----------
To make sure we're talking about the same thing, let's first define some terms:

Armor Rating: The current armor value displayed in your inventory, as 
    modified by your skills, perks, etc.

Hidden Armor Rating: On top of to its visible armor rating, every piece of 
    armor you wear grants an additional 25 points of fixed, invisible armor 
    rating. This seems to be the result of a halfhearted attempt by Bethesda 
    to balance their broken system. This completely messes up the balance when 
    using armors with more than the standard amount of pieces.

Damage Resist(ance): The fraction of incoming damage that is negated by your 
    armor.

Damage Taken: The fraction of incoming damage that passes through your armor.

Survivability: By how much your armor increases your ability to survive damage.
    e.g. with +400% survivability and 100 health, you could take 500 damage 
    before dying.

Level-Adjusted Survivability: By how much your armor increases your ability 
    to survive damage, relative to how much damage your enemies of the same 
    level can deal. In Skyrim, weapon damage increases linearly with skill, 
    so you need to have at least a linear increase in survivability to stay 
    ahead of the curve.

===============================================================================

---------
Formulas:
---------
The mod currently supports 3 computation modes:

-----------
Hyperbolic:
-----------
Morrowind-like. Every point of armor rating increases your survivability by a 
fixed percentage. This means every point of armor is worth the same. Compared 
to vanilla, your early armor will protect you a lot more, while armor past 
the cap will still be useful, but it is difficult to reach crazy high 
protection values.
HypDiv controls the increase per point. The default is 0.6%, which means you 
will reach 80% protection (+400% survivability) at 667 armor rating, just like 
vanilla.

Your survivability will increase linearly, damage taken decrease hyperbolically.
Twice the armor rating means twice the survivability.
Damage Taken = Input damage / (Armor Rating * HypDiv + 1)


------------
Exponential:
------------
A compromise between Morrowind-style survivability and vanilla "balancing". 
Every point of armor will reduce damage taken by a fixed multiplier. 
Your early armor will be worth less than with "Hyperbolic", but your late game 
armor will let you come closer to 100% resistance.
ExpBase controls the damage multiplier per point. The default is 99.76%, which 
means you will reach 80% protection (+400% survivability) at approximately 667 
armor rating, just like vanilla.

Your survivability will increase exponentially, damage taken decrease 
exponentially. Every 'x' points of Armor Rating, your survivability doubles.
Damage Taken = Input damage * ExpBase^Armor Rating


-------
Linear:
-------
Vanilla-like, but without the hidden armor rating. Just because.
Every point of armor reduces damage taken by subtracting a fixed value.
Results as described above.
LinearMult controls the reduction per point. The default is 0.12%.
LinearFloor controls the lowest possible multiplier. The default is 0.2
The default values let you reach 80% protection (+400% survivability) at 
667 armor rating, just like vanilla.

Your survivability will increase hyperbolically, damage taken decrease 
linearly.
Damage Taken = Input damage * max(LinearFloor, 1 - LinearMult * Armor Rating)



===============================================================================

-----------------
Advanced Options:
-----------------

As of 1.1.0, these advanced options are available:

FloorExpHyp: If activated, imposes a hard limit on your resistance in Hyperbolic 
or Exponential modes, equivalent to what linearFloor does in Linear mode. 

MultExpHyp: If enabled, reduces your resistance in Hyperbolic or Exponential 
modes by a multiplier, acting as a soft ceiling. 
Thanks Neker07 for the ideas!


===============================================================================

------------
Compability:
------------
    - Should be loaded after other mods that change Game Settings related to 
        Armor.
    - Not compatible with any mod that attempts to do the same thing (duh).
    
    Compatible with everything else.
    ...probably.


===============================================================================

--------
Caveats:
--------
    - The magic effect description will round resistance to the next integer 
        value. To know your precise resistance, use the "notify" option.

===============================================================================
--------
Changes:
--------
2.0.0
    - Complete overhaul of the mod's internals. Now does its computation in a 
        SKSE plugin, rather than Papyrus code. (A HUGE thank you to 
        underthesky for letting me make use of his SKSE code!)
        Due to this being a huge change to the mods workings, a clean save 
        is absolutely recommended.
        This change has some neat effects:
    - Significantly increased performance.
    - Player Only version no longer required, as calculations for NPCs are no 
        longer a potential performance drain.
    - Changes in armor rating always have immediate effect.
    - No more ActorValue or AVI Skill Mult caused incompatibilities.
    - High Damage Resist values no longer cause weird stamina consumption 
        on blocking NPCs.
    - NPC Damage Resist is no longer hard capped.
    - On a different note, made the mod translation-friendly. Note that all 
        included translation files are dummy files and contain English text.
    - Added a German translation to serve as an example. Translators for other 
        languages welcome!


1.2.1
    - Fixed an issue that could cause the player to take excessive amounts of 
        damage when exceeding vanilla resistance limits.

1.2.0
    - Changed the used actor value from "Fame" to "Variable07". This should 
        hopefully create less conflicts.
    - Changed the way NPCs are treated. The new method has a hard cap at 99% 
        resistance, and might be slightly slower to update, but should be a lot
        more reliable and cause less "spikes" in script activity.
    - Added a "player only" version, for those who value performance over 
        fairness. A clean save is recommended when switching between 
        "Everyone" and "Player Only" versions.

1.1.0
    - Added advanced options: If activated, FloorExpHyp imposes a hard limit on 
        your resistance in Hyperbolic or Exponential modes, equivalent to what 
        linearFloor does in Linear mode. MultExpHyp, if enabled, reduces your 
        resistance by a multiplier, and acts as a soft ceiling. 
        Thanks Neker07 for the ideas!

1.0.1
    - Fixed minor issue that caused incorrect debug output.

1.0.0
    - Initial release.