Issue Data
|
Issue #29027: Nuclear Physicist perk fix revisions
The bug report is at the end, but first I'm taking this opportunity to explain exactly how the PA battery system works, as much of this info is probably not widely known.
These are the actions, hard-coded into the engine, that will drain a PA battery, with their default values:
The three other game settings are implemented, and can be modded to non-zero values, but are obviously unused. These values are deducted from the following Actor Value, also hard-coded, after multiplication by the PABatteryDamageRate AV.
It is also possible to artificially charge or discharge an active PA battery by manipulating the same AV with a magic effect/script/etc. Changes made will persist onto the Fusion Core ammo item, though an ammo item cannot be overcharged above 100%. Note that ObjectReference.GetItemHealthPercent() can also be used to check ammo health via Papyrus if you have an ObjectRef pointer to it as an item, but instead returns 0.0-1.0. Damage dealt to PowerArmorBattery is multiplied by this AV
As one would expect, setting it to 0.5 doubles core health, while setting it to 2.0 halves drain rate. The health value set on the base ammo item is not used for PA, so a vanilla Fusion Core with 500 health lasts exactly as long as a hypothetical "Fusion Button Cell" with 1 health. On that subject, it is possible to register additional ammo types as valid PA fuel, you just need to add isPowerArmorBattery [KYWD:0005BDAA] to the base ammo object, and set up a COBJ similar to co_PA_FusionCore01 [COBJ:0005BB6B] for it. I suspect it would be possible to give new battery types a custom model by pointing the COBJ to a custom OMOD, but I haven't tried this. ================ Anyway, the first three are my fault:
Attached is a revised version of my fixes from #22528. Attached Files: NuclearPhysicistFix.esp |
Errata (unrelated to the bug report; or, corrigenda if I want to be the best kind of correct):
- and recharging Action Points (0.05% per AP). On further investigation, draining AP is what discharges the core, not recharging AP. Easily verified by modding fPowerArmorPowerDrainPerActionPoint to a value like 0.5 and sprinting.
- while setting it to 2.0 halves drain rate. should read: while setting it to 2.0 doubles drain rate; or while setting it to 2.0 halves core health if you prefer.
Comment #1 May 1, 2020 8:30 pm
Edited by EyeDeck on May 1, 2020 8:36 pm
Thanks for that. It'll be corrected in the next update.
Showing Comments 1 - 2 of 2