Fallout 4
0 of 0

File information

Last updated

Original upload

Created by

hexef

Uploaded by

hexef

Virus scan

Safe to use

Tags for this mod

About this mod

Dynamically increases NPC damage every time you level-up past 50. However, you can acquire damage/health enhancement perks indefinitely.

Permissions and credits
Donations
NPC damage scaling
NPC damage is enhanced(against both player and other NPCs) as soon as you reach level 50 and every time you level-up past that point. Ideally, they would do around 5% more damage per player level-up, regardless of what weapon they use(except explosive damage). Unarmed creatures benefit from this bonus as well. Example: when you reach level 100, a level 100 NPC might deal between 220% and 280% more damage. This doesn't mean that every attack they perform has a random bonus damage between 220% and 280%. It's just a static modifier(from that specific range) that is applied to every attack, until the player advances in level again. Then, the NPC rolls a new random modifier that could be higher.

Why no exact percentages? Because I implemented a bit of randomization to these formulas. Most NPCs won't abide by the "extra 5% damage per player level-up past 50" rule. More examples: At player level 75, NPCs with the same level might inflict between 95% and 155% bonus damage. At level 150, between 470% and 530% more damage. Notice the pattern? The difference between the percentage boundaries is 60% - this is only available to NPCs whose levels are higher or equal to the Player's level.

NPCs with lower level than the player's benefit less, but they still gain significant damage boosts. The same percentages are still calculated as mentioned above, but they undergo certain reductions. For example: at player level 100, a level 1 NPC might deal between 23% and 57% more damage while a level 50 NPC could inflict between 153% and 222% extra damage. The formula here is a little more complicated, but feel free to take a look at the formulas below if you're interested.

Actual formulas used for NPC damage modifiers:
Spoiler:  
Show

NPCs with same level as player or higher

dmgModHighLevel = Max(0, (player_level - 50 + 1) * 0.05 + RandomFloat(-7, 5) * 0.05)

NPCs with lower level than the player's(value of dmgModHighLevel is calculated above)

dmgModLowLevel = dmgModHighLevel * Min(1, (npc_level / player_level) ^ 0.63 + RandomFloat(0.05, 0.15))



Player damage scaling
You are allowed to acquire all the damage related perks for as many times as you wish, with 5% increments each(2.5% for explosive damage), from within the perk chart by spending perk points. This feature was implemented to counteract the bonus damage modifiers the NPCs take advantage of. So you have the option to endlessly build up the damage you dish out, effectively preventing bullet sponginess from ever occurring late game, from both the NPCs' and player's side.

The damage perks that can be taken forever are: Iron Fist(unarmed), Big Leagues(melee), Heavy Gunner(big guns), Basher(gun bashing), Rifleman(semi-automatic guns), Demolition Expert(explosives), Gunslinger(pistols) and Commando(automatic guns). I've added an extra rank to both Life Giver and Toughness perk as well, which provide +20 Health respectively +10 DR increases. These perks can also be taken for an unlimited amount of times. All of these new perks can only be selected once you reach level 50.

Checking if mod works
First of all, make sure you are at least level 50, else nothing changes at all. Once you're level 50, a message should pop up in the top left corner of your screen, which states that NPCs are now getting damage bonuses. Wait a few more seconds, then go to an NPC and open up your console and make sure you select them with your mouse. It might be tricky to select the object that you want in the console. To make sure you clicked on an actual NPC, call actor related functions such as GetLevel and if it returns a number that makes sense, then you should be on the right track.

Once you clicked on an NPC, issue the following: GetValue hxfDSP_NpcBonusDmgLevel_AV. It should return a number that is equal to your_level - 50 + 1. Ex: if you're level 100, it must return 51. This actor value is pretty much the multiplier of that 5% damage boost the NPCs benefit from. It is also used as a token for every NPC in the game so that the damage multiplier is not re-applied again on them until you level-up, an event which updates this custom actor value.

You can check the current bonus damage multiplier applied by this mod on any NPC via this actor value: GetValue hxfDSP_NpcBonusDmg_AV. If the value falls within the range of the possible results generated by the formulas documented above, then everything is a-ok.

(Un)Installation & Compatibility
Use the mod manager of your choice. If you don't use any mod managers, just unpack the archive and move the DmgScalingAndPerks.esp and DmgScalingAndPerks - Main.ba2 files to the Fallout 4/Data/ directory.

Please check if you have any mod in your load order that modifies any of the perks that can be selected indefinitely. I modified the last rank of these perks to point to the ones I added in this mod. This is the only possible conflict to look out for. Create a merged patch if necessary.

The scripts of this mod add a "cloak" spell to the player at level 50 which scans for nearby NPCs, followed by adding the damage modifier perk to them, so script-wise it's pretty lightweight. But it also adds a bunch of new actor values for tracking purposes and perks. Therefore, due to these new attributes being attached to every NPC in the game, uninstalling the mod mid-game is not recommended. Try to delete all the perk and actor values added by this mod from all NPC refs with the ReSaver tool if you really need to uninstall on your save, but I cannot help you with that since I'm no expert in how save data works.