Compare commits

..

15 Commits

68 changed files with 42 additions and 32 deletions

Binary file not shown.

View File

@ -7,8 +7,8 @@ sLanguage=ENGLISH
bInvalidateOlderFiles=1 bInvalidateOlderFiles=1
sArchiveToLoadInMemoryList=Skyrim - Animations.bsa, Skyrim - Interface.bsa, Skyrim - Sounds.bsa, E - Misc.bsa sArchiveToLoadInMemoryList=Skyrim - Animations.bsa, Skyrim - Interface.bsa, Skyrim - Sounds.bsa, E - Misc.bsa
sEsmToLoadInMemoryList=Skyrim.esm, Update.esm, Dawnguard.esm, HearthFires.esm, Dragonborn.esm, Enderal - Forgotten Stories.esm sEsmToLoadInMemoryList=Skyrim.esm, Update.esm, Dawnguard.esm, HearthFires.esm, Dragonborn.esm, Enderal - Forgotten Stories.esm
sResourceArchiveList=Skyrim - Misc.bsa, Skyrim - Shaders.bsa, Skyrim - Interface.bsa, Skyrim - Animations.bsa, Skyrim - Meshes0.bsa, Skyrim - Meshes1.bsa, Skyrim - Sounds.bsa, Skyrim - Textures0.bsa, Skyrim - Textures1.bsa, Skyrim - Textures2.bsa, Skyrim - Textures3.bsa, Skyrim - Textures4.bsa, Skyrim - Textures5.bsa, Skyrim - Textures6.bsa, Skyrim - Textures7.bsa sResourceArchiveList=Skyrim - Shaders.bsa, Skyrim - Interface.bsa, Skyrim - Animations.bsa, Skyrim - Meshes0.bsa, Skyrim - Meshes1.bsa, Skyrim - Sounds.bsa, Skyrim - Textures0.bsa, Skyrim - Textures1.bsa, Skyrim - Textures2.bsa, Skyrim - Textures3.bsa, Skyrim - Textures4.bsa, Skyrim - Textures5.bsa, Skyrim - Textures6.bsa, Skyrim - Textures7.bsa
sResourceArchiveList2=Skyrim - Textures8.bsa, Skyrim - Patch.bsa, Skyrim_VR - Main.bsa, E - Meshes.bsa, E - Textures1.bsa, E - Textures2.bsa, E - Sounds.bsa, L - Voices.bsa, E - Misc.bsa, E - Update.bsa, L - Textures.bsa sResourceArchiveList2=Skyrim - Textures8.bsa, Skyrim - Patch.bsa, Skyrim_VR - Main.bsa, E - Misc.bsa, E - Meshes.bsa, E - Textures1.bsa, E - Textures2.bsa, E - Sounds.bsa, L - Voices.bsa, E - Update.bsa, L - Textures.bsa
[SaveGame] [SaveGame]
iAutoSaveCount=5 iAutoSaveCount=5

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -110,7 +110,10 @@ inline void CheckScriptVersions()
}; };
std::map<std::string, short> scripts; std::map<std::string, short> scripts;
scripts["EnderalFunctions"] = 1;
scripts["_00E_PlayerFunctions"] = 1;
scripts["_00E_PlayerSetUpScript"] = 1; scripts["_00E_PlayerSetUpScript"] = 1;
scripts["_00E_EngineBugfixAlias"] = 1;
scripts["_00E_Phasmalist_NewApparitionAlias"] = 1; scripts["_00E_Phasmalist_NewApparitionAlias"] = 1;
scripts["_FS_Phasmalist_ControlQuest"] = 1; scripts["_FS_Phasmalist_ControlQuest"] = 1;
scripts["_00E_Phasmalist_Workbench"] = 1; scripts["_00E_Phasmalist_Workbench"] = 1;
@ -119,6 +122,7 @@ inline void CheckScriptVersions()
scripts["_00E_PlayerhousingMaster"] = 1; scripts["_00E_PlayerhousingMaster"] = 1;
scripts["_00E_ContainerBonusControl"] = 1; scripts["_00E_ContainerBonusControl"] = 1;
scripts["_00E_AffinityControl"] = 1; scripts["_00E_AffinityControl"] = 1;
scripts["_00E_SympathyControl"] = 1;
scripts["_00E_EnderalMCM"] = 1; scripts["_00E_EnderalMCM"] = 1;
scripts["_00E_SkillControl"] = 1; scripts["_00E_SkillControl"] = 1;
scripts["_00E_VisionControl"] = 1; scripts["_00E_VisionControl"] = 1;

View File

@ -1,4 +1,4 @@
Scriptname _00E_AffinityControl extends ReferenceAlias Hidden Conditional Scriptname _00E_AffinityControl extends ReferenceAlias Conditional
; ATTENTION ; ATTENTION
; this script contains a new affinity system that requires FS. Therefore, many elements in this script are redundant, as ; this script contains a new affinity system that requires FS. Therefore, many elements in this script are redundant, as
@ -192,7 +192,7 @@ Function UpdateClassIndices(Int[] PerkDistribution)
EndWhile EndWhile
UpdateMajorSchool() UpdateMajorSchool()
iMajorClassIndex = MajorClassIndex _00E_MajorClassIndex.SetValue(MajorClassIndex)
; Update minor class/perk tree ; Update minor class/perk tree
If MinorClassIndex > 0 && (MinorClassIndex == MajorClassIndex || PerkDistribution[MinorClassIndex] == 0) If MinorClassIndex > 0 && (MinorClassIndex == MajorClassIndex || PerkDistribution[MinorClassIndex] == 0)
@ -207,7 +207,7 @@ Function UpdateClassIndices(Int[] PerkDistribution)
Index += 1 Index += 1
EndWhile EndWhile
iMinorClassIndex = MinorClassIndex _00E_MinorClassIndex.SetValue(MinorClassIndex)
EndFunction EndFunction
@ -490,9 +490,6 @@ EndFunction
; PROPERTIES ; PROPERTIES
;===================================================================================== ;=====================================================================================
int Property iMajorClassIndex Auto Conditional Hidden
int Property iMinorClassIndex Auto Conditional Hidden
int Property MajorClassIndex Auto Hidden int Property MajorClassIndex Auto Hidden
int Property MinorClassIndex Auto Hidden int Property MinorClassIndex Auto Hidden
int Property MajorSchool Auto int Property MajorSchool Auto
@ -669,3 +666,6 @@ Int Affinity_ScourgeOfTheWildsIndex
Int Affinity_SoulcallerIndex Int Affinity_SoulcallerIndex
Bool BlockClassUpdates Bool BlockClassUpdates
GlobalVariable Property _00E_MajorClassIndex Auto
GlobalVariable Property _00E_MinorClassIndex Auto

View File

@ -5,19 +5,12 @@ int function _GetScriptVersion() Global
endFunction endFunction
Event OnInit() Event OnInit()
Utility.Wait(0.1) Utility.Wait(0.05)
_ClearStuckHelpMessages() _ClearStuckHelpMessages()
EndEvent EndEvent
Event OnPlayerLoadGame() Event OnPlayerLoadGame()
; ResetHelpMessage crashes the game when called in menu mode, for instance, when loading a savegame fails due to missing mods
Utility.Wait(0.1)
; If a help message is visible during game reload, it gets stuck on screen
; This workaround shows an empty message to forcefully clear the queue
_ClearStuckHelpMessages()
Actor PlayerREF = GetReference() as Actor Actor PlayerREF = GetReference() as Actor
; Perks modifying armor weights need some push on each game load to work. ; Perks modifying armor weights need some push on each game load to work.
@ -27,6 +20,13 @@ Event OnPlayerLoadGame()
_ResetPerk(PlayerREF, _00E_Class_Keeper_P05_C_Conditioning) _ResetPerk(PlayerREF, _00E_Class_Keeper_P05_C_Conditioning)
_ResetPerk(PlayerREF, _00E_Class_Vagrant_P05_B_Lightweight) _ResetPerk(PlayerREF, _00E_Class_Vagrant_P05_B_Lightweight)
EndIf EndIf
; ResetHelpMessage crashes the game when called in menu mode, for instance, when loading a savegame fails due to missing mods
Utility.Wait(0.05)
; If a help message is visible during game reload, it gets stuck on screen
; This workaround shows an empty message to forcefully clear the queue
_ClearStuckHelpMessages()
; Workaround for broken physics on loading saves, made on a mount ; Workaround for broken physics on loading saves, made on a mount
If PlayerREF.IsOnMount() If PlayerREF.IsOnMount()
@ -43,10 +43,10 @@ Function _ResetPerk(Actor PlayerREF, Perk p)
EndFunction EndFunction
Event _ClearStuckHelpMessages() Event _ClearStuckHelpMessages()
Message.ResetHelpMessage("Empty") if EnderalFunctions.GetNewGameCount() > 1
_00E_EmptyMessage.ShowAsHelpMessage("Empty", 0.1, 1, 1) Message.ResetHelpMessage("Empty")
Utility.Wait(0.1) _00E_EmptyMessage.ShowAsHelpMessage("Empty", 0.1, 10, 1)
Message.ResetHelpMessage("Empty") endif
EndEvent EndEvent
Perk Property _00E_Class_Keeper_P05_C_Conditioning Auto Perk Property _00E_Class_Keeper_P05_C_Conditioning Auto

View File

@ -8,32 +8,34 @@ Function ReduceMainSkills()
String sActorValueToReduce01 String sActorValueToReduce01
String sActorValueToReduce02 String sActorValueToReduce02
int iClassIndex = _00E_MajorClassIndex.GetValueInt()
If AffinityControl.iMajorClassIndex == 1 If iClassIndex == 1
sActorValueToReduce01 = "Block" sActorValueToReduce01 = "Block"
sActorValueToReduce02 = "HeavyArmor" sActorValueToReduce02 = "HeavyArmor"
ElseIf AffinityControl.iMajorClassIndex == 2 ElseIf iClassIndex == 2
sActorValueToReduce01 = "OneHanded" sActorValueToReduce01 = "OneHanded"
sActorValueToReduce02 = "LightArmor" sActorValueToReduce02 = "LightArmor"
ElseIf AffinityControl.iMajorClassIndex == 3 ElseIf iClassIndex == 3
sActorValueToReduce01 = "Destruction" sActorValueToReduce01 = "Destruction"
sActorValueToReduce02 = "Restoration" sActorValueToReduce02 = "Restoration"
ElseIf AffinityControl.iMajorClassIndex == 4 ElseIf iClassIndex == 4
sActorValueToReduce01 = "Sneak" sActorValueToReduce01 = "Sneak"
sActorValueToReduce02 = "OneHanded" sActorValueToReduce02 = "OneHanded"
ElseIf AffinityControl.iMajorClassIndex == 5 ElseIf iClassIndex == 5
sActorValueToReduce01 = "Conjuration" sActorValueToReduce01 = "Conjuration"
sActorValueToReduce02 = "Illusion" sActorValueToReduce02 = "Illusion"
ElseIf AffinityControl.iMajorClassIndex == 6 ElseIf iClassIndex == 6
sActorValueToReduce01 = "Restoration" sActorValueToReduce01 = "Restoration"
sActorValueToReduce02 = "Alteration" sActorValueToReduce02 = "Alteration"
ElseIf AffinityControl.iMajorClassIndex == 7 ElseIf iClassIndex == 7
sActorValueToReduce01 = "TwoHanded" sActorValueToReduce01 = "TwoHanded"
sActorValueToReduce02 = "HeavyArmor" sActorValueToReduce02 = "HeavyArmor"
ElseIf AffinityControl.iMajorClassIndex == 8 ElseIf iClassIndex == 8
sActorValueToReduce01 = "Marksman" sActorValueToReduce01 = "Marksman"
sActorValueToReduce02 = "LightArmor" sActorValueToReduce02 = "LightArmor"
ElseIf AffinityControl.iMajorClassIndex == 9 ElseIf iClassIndex == 9
sActorValueToReduce01 = "LightArmor" sActorValueToReduce01 = "LightArmor"
sActorValueToReduce02 = "Alchemy" sActorValueToReduce02 = "Alchemy"
Else Else
@ -57,10 +59,10 @@ EndFunction
; PROPERTIES ; PROPERTIES
;===================================================================================== ;=====================================================================================
_00E_AffinityControl Property AffinityControl Auto
Actor Property PlayerREF Auto Actor Property PlayerREF Auto
GlobalVariable Property _00E_IsInJail Auto GlobalVariable Property _00E_IsInJail Auto
Message Property _00E_CrimeQuest_ReduceSkillMessage Auto Message Property _00E_CrimeQuest_ReduceSkillMessage Auto
GlobalVariable Property _00E_MajorClassIndex Auto

View File

@ -1,5 +1,9 @@
Scriptname EnderalFunctions Hidden Scriptname EnderalFunctions Hidden
int function _GetScriptVersion() Global
return 1
endFunction
float function CalculateContentStrength(ObjectReference container) native global float function CalculateContentStrength(ObjectReference container) native global
Potion function CreatePotion(MagicEffect[] effects, float[] magnitudes, int[] areas, int[] durations, int arraySize) native global Potion function CreatePotion(MagicEffect[] effects, float[] magnitudes, int[] areas, int[] durations, int arraySize) native global

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.