4
Fork 0

Updated dependency checks:

- Added checks for loaded SKSE and fs.dll.
- Ensured the FS.esm check runs without SKSE.
- Check for SKSE, SkyUI, and fs.dll only on PC and VR, skipping it on other platforms.
english-generic-dialogue
Eddoursul 2 years ago
parent 48c67c3558
commit 3f58c132d4
  1. BIN
      scripts/_00e_game_talentcontrolsc.pex
  2. BIN
      scripts/_00e_mqp01_functions.pex
  3. BIN
      scripts/_00e_playersetupscript.pex
  4. 19
      source/scripts/_00e_game_talentcontrolsc.psc
  5. 17
      source/scripts/_00e_mqp01_functions.psc
  6. 59
      source/scripts/_00e_playersetupscript.psc

Binary file not shown.

@ -64,25 +64,6 @@ Event OnPlayerLoadGame()
EndIf EndIf
RegisterForActions() RegisterForActions()
Bool bFS = (Game.GetModByName("Enderal - Forgotten Stories.esm") != 255)
Bool bSkyUI = (Game.GetModByName("SkyUI_SE.esp") != 255)
If bFS == False && bSkyUI == False
Debug.MessageBox("Enderal - Forgotten Stories.esm and SkyUI_SE.esp are not loaded! Open Data Files and enable them. If the game was started without them, you should start a new game.")
Game.QuitToMainMenu()
Return
ElseIf bFS == False
Debug.MessageBox("Enderal - Forgotten Stories.esm is not loaded! Open Data Files and enable it. If the game was started without it, you should start a new game.")
Game.QuitToMainMenu()
Return
ElseIf bSkyUI == False
Debug.MessageBox("SkyUI_SE.esp is not loaded! Open Data Files and enable it.")
EndIf
; SE: Workaround for broken physics in saves, made on a mount
If PlayerREF.IsOnMount()
PlayerREF.Dismount()
EndIf
EndIf EndIf
EndEvent EndEvent

@ -23,23 +23,6 @@ Function SetUpScene()
Wait(5.0) Wait(5.0)
Game.EnablePlayerControls() Game.EnablePlayerControls()
Game.DisablePlayerControls(false, true, true, false, true, false, false) Game.DisablePlayerControls(false, true, true, false, true, false, false)
Bool bFS = (Game.GetModByName("Enderal - Forgotten Stories.esm") != 255)
Bool bSkyUI = (Game.GetModByName("SkyUI_SE.esp") != 255)
If bFS == False && bSkyUI == False
Debug.MessageBox("Enderal - Forgotten Stories.esm and SkyUI_SE.esp are not loaded! The game will not run properly. Open Data Files and enable them.")
Game.QuitToMainMenu()
Return
ElseIf bFS == False
Debug.MessageBox("Enderal - Forgotten Stories.esm is not loaded! The game will not run properly. Open Data Files and enable it.")
Game.QuitToMainMenu()
Return
ElseIf bSkyUI == False
Debug.MessageBox("SkyUI_SE.esp is not loaded! The game will not run properly. Open Data Files and enable it.")
Game.QuitToMainMenu()
Return
EndIf
Wait(1.0) Wait(1.0)
_00E_MQP01_Thoughts01.ShowAsHelpMessage("Empty", 5, 1, 1) _00E_MQP01_Thoughts01.ShowAsHelpMessage("Empty", 5, 1, 1)

@ -65,20 +65,45 @@ Function CheckIfForgottenStoriesIsLoaded()
; function that quits back to the main menu when the Enderal - Forgotten Stories.esm is not not being added to the plugins.txt ; function that quits back to the main menu when the Enderal - Forgotten Stories.esm is not not being added to the plugins.txt
; and hence not being loaded in-game. Unknown reason, probably write protection issues ; and hence not being loaded in-game. Unknown reason, probably write protection issues
If Game.GetModByName("Enderal - Forgotten Stories.esm") == 255 if (Game.GetFormFromFile(0x0004320E, "Skyrim.esm") as GlobalVariable).GetValueInt() != 1
bFSWasNotLoadedBefore = true Utility.wait(2.0)
_00E_Game_ForgottenStoriesNotLoaded.Show()
Game.QuitToMainMenu() Game.QuitToMainMenu()
Else Debug.MessageBox("Enderal - Forgotten Stories.esm is not loaded! The game will not run properly. Open Data Files and enable it.")
If bFSWasNotLoadedBefore == true EndIf
AddPerks()
If FSQuestsToStartFailsafePatch1560 == None if Debug.GetPlatformName() != "Win64"
FSQuestsToStartFailsafePatch1560 = Game.GetFormFromFile(0x0102F4B0, "Enderal - Forgotten Stories.esm") as FormList return
EndIf endif
StartQuests(FSQuestsToStartFailsafePatch1560)
bFSWasNotLoadedBefore = false Int SKSEVer = SKSE.GetVersion()
EndIf
if SKSEVer == 0
Utility.wait(2.0)
Game.QuitToMainMenu()
Debug.MessageBox("SKSE is not detected! Start Enderal through the launcher or skse64_loader.exe in the game directory.")
Return
endif
Quest bSkyUI = Game.GetFormFromFile(0x00000802, "SkyUI_SE.esp") as Quest
If bSkyUI == None
Utility.wait(2.0)
Game.QuitToMainMenu()
Debug.MessageBox("SkyUI_SE.esp is not loaded! The game will not run properly. Open Data Files and enable it.")
Return
EndIf
if SKSE.GetPluginVersion("fs_skse_functions") == -1
Utility.wait(2.0)
Game.QuitToMainMenu()
Debug.MessageBox("fs.dll is not loaded! The game will not run properly. Verify integrity of your files.\n\nThis may also happen, if your version of SKSE or Enderal is too old. In this case, it is advised to upgrade.")
Return
endif
; fixes properties that were accidentally set to NONE by the "More Affinities" mod
If Game.GetModByName("Enderal_FS_More_Affinities.esp") != 255
FixMoreAffinitiesMod()
EndIf EndIf
EndFunction EndFunction
@ -403,10 +428,10 @@ Function Maintenance()
FailsafeMQ05PrologueAliases() FailsafeMQ05PrologueAliases()
RefreshMountNamesOnLoad() RefreshMountNamesOnLoad()
; fixes properties that were accidentally set to NONE by the "More Affinities" mod ; Workaround for broken physics on loading saves, made on a mount
If Game.GetModByName("Enderal_FS_More_Affinities.esp") != 255 If PlayerREF.IsOnMount()
FixMoreAffinitiesMod() PlayerREF.Dismount()
EndIf EndIf
EndFunction EndFunction

Loading…
Cancel
Save