PAPVAFS11 Posted November 11, 2019 Share Posted November 11, 2019 I see a lot of NPCs in both vanilla and mods that have SPECIAL points in INT, LCK, and CHR - sometimes, in insane proportions - but I have absolutely no idea why. As far as I know, NPCs don't have any way to use these since they don't gain experience, can't deal critical hits, and don't ever deal with dialogue checks. Does anyone know if any of these SPECIAL ratings do anything? At all? Link to comment Share on other sites More sharing options...
Thirdstorm Posted November 11, 2019 Share Posted November 11, 2019 What I remember from before.. Strength: Effects Carry weight and Damage Perception: Hit chance and detection Endurance: HP's Charisma: Unknown Intelligence:Unknown Agility: Avoidance Luck: Unknown, Crits if you have a mod that allow crits out of VATS Link to comment Share on other sites More sharing options...
PhanomGames Posted December 5, 2019 Share Posted December 5, 2019 (edited) Their special stats do nothing, really, despite what people say they do online. Simply test it. This was my solution to make each one more unique (unfinished), but what I have does work. Scriptname ConquestorsUniverse:CU_RandomizeSpecialStats extends Actor {Randomizes special stats on load} ;Set up actor values for modification ActorValue property Strength Auto ActorValue Property Perception Auto ActorValue Property Endurance Auto ActorValue Property Charisma Auto ActorValue Property Intelligence Auto ActorValue Property Agility Auto ActorValue Property Luck Auto ; Set up other we need. I can likely remove level here. ActorValue Property HealthAV Auto int Level float LuckTotal ;Crippling values for awful Luck ActorValue Property LeftMobilityCondition Auto ActorValue Property RightMobilityCondition Auto Event OnInit() Modvalue(Strength, Utility.RandomFloat(2.0, 10.0)) Modvalue(Perception, Utility.RandomFloat(2.0, 10.0)) Modvalue(Endurance, Utility.RandomFloat(2.0, 10.0)) Modvalue(Charisma, Utility.RandomFloat(2.0, 10.0)) Modvalue(Intelligence, Utility.RandomFloat(2.0, 10.0)) Modvalue(Agility, Utility.RandomFloat(2.0, 10.0)) Modvalue(HealthAV, GetValue(Endurance)*10.0) ;Luck for other bonus calculation Modvalue(Luck, Utility.RandomFloat(0.0, 10.0)) LuckTotal = GetValue(Luck) if LuckTotal < 1.0 Modvalue(Strength, -1.0) Modvalue(Perception, -1.0) Modvalue(Endurance, -1.0) Modvalue(Charisma, -1.0) Modvalue(Agility, -1.0) Modvalue(Intelligence, -1.0) Modvalue(HealthAV, -10) Modvalue(LeftMobilityCondition,-70) Modvalue(RightMobilityCondition,-70) elseif LuckTotal < 2.0 Modvalue(LeftMobilityCondition,-40) Modvalue(RightMobilityCondition,-40) elseif LuckTotal < 3.0 Modvalue(LeftMobilityCondition,-30) Modvalue(RightMobilityCondition,-30) elseif LuckTotal < 4.0 Modvalue(LeftMobilityCondition,-20) Modvalue(RightMobilityCondition,-20) elseif LuckTotal < 5.0 Modvalue(LeftMobilityCondition,-10) Modvalue(RightMobilityCondition,-10) elseif LuckTotal < 6.0 elseif LuckTotal < 7.0 Modvalue(HealthAV, 5) elseif LuckTotal < 8.0 Modvalue(HealthAV, 10) elseif LuckTotal < 9.0 Modvalue(HealthAV, 10) elseif LuckTotal < 10.0 Modvalue(HealthAV, 10) elseif LuckTotal < 11.0 Modvalue(HealthAV, 10) elseif LuckTotal > 10.0 Modvalue(HealthAV, 10) EndIf endEvent You're gonna have to do that for each special stat and add perks/modify values through papyrus for it to make a difference. Edited December 5, 2019 by PhanomGames Link to comment Share on other sites More sharing options...
Recommended Posts