This commit is contained in:
Eddoursul 2021-10-06 00:46:41 +02:00
parent 189fbda45a
commit 0920167a39
43 changed files with 172 additions and 117 deletions

Binary file not shown.

View File

@ -8,13 +8,12 @@ bInvalidateOlderFiles=1
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 - 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
sResourceArchiveList2=Skyrim - Textures8.bsa, Skyrim - Patch.bsa, Unofficial Skyrim Special Edition Patch.bsa, Unofficial Skyrim Special Edition Patch - Textures.bsa, E - Meshes.bsa, E - Scripts.bsa, E - Sounds.bsa, E - Textures1.bsa, E - Textures2.bsa, E - Textures3.bsa, E - SE.bsa, E - Update.bsa, L - Textures.bsa, L - Voices.bsa sResourceArchiveList2=Skyrim - Textures8.bsa, Skyrim - Patch.bsa, Unofficial Skyrim Special Edition Patch.bsa, Unofficial Skyrim Special Edition Patch - Textures.bsa, E - Meshes.bsa, E - Scripts.bsa, E - Sounds.bsa, E - Textures1.bsa, E - Textures2.bsa, E - Textures3.bsa, E - SE.bsa, E - Update.bsa, L - Textures.bsa, L - Voices.bsa
[VATS]
bVATSDisable=1
[SaveGame] [SaveGame]
; This should be removed in Steam version to allow its configuration via the launcher.
iAutoSaveCount=10 iAutoSaveCount=10
[MapMenu] [MapMenu]
; Paper map settings
uLockedObjectMapLOD=32 uLockedObjectMapLOD=32
uLockedTerrainLOD=32 uLockedTerrainLOD=32
sWorldMapOverlayNormalSnowTexture= sWorldMapOverlayNormalSnowTexture=
@ -28,17 +27,18 @@ fMapWorldMinPitch=90.0000
fMapWorldMaxPitch=90.0000 fMapWorldMaxPitch=90.0000
sMapWorldDefaultWorldSpace=Vyn sMapWorldDefaultWorldSpace=Vyn
[Audio]
uMaxSizeForCachedSound=4096
[Actor] [Actor]
; USSEP: Fixes bow engagement distance
fVisibleNavmeshMoveDist=12288.0000 fVisibleNavmeshMoveDist=12288.0000
[Display] [Display]
fGlobalBloomThresholdBoost=100 ; Disables bloom
fGlobalBloomThresholdBoost=10
; Disables Screen Space Reflections - fixes engine bug with green water. Use ENB for better implementation (you may need to remove this, then).
fWaterSSRIntensity=0.0001 fWaterSSRIntensity=0.0001
[Interface] [Interface]
; Closer book and note zooming
fBookDistance=82.0000 fBookDistance=82.0000
fNoteDistance=70.0000 fNoteDistance=70.0000
fBookOpenTime=500.0000 fBookOpenTime=500.0000

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -64,6 +64,25 @@ 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

View File

@ -1,16 +1,17 @@
Scriptname _00E_LightSwitchSecondaryScript extends ObjectReference Scriptname _00E_LightSwitchSecondaryScript extends ObjectReference
Actor Property PlayerRef Auto Actor Property PlayerRef Auto
Keyword Property LinkKeyword Auto
Event OnTriggerEnter(ObjectReference akActionRef) Event OnTriggerEnter(ObjectReference akActionRef)
if akActionRef == PlayerRef if akActionRef == PlayerRef
(GetLinkedRef() as _00E_LightSwitchMainScript).TurnSwitchOn() (GetLinkedRef(LinkKeyword) as _00E_LightSwitchMainScript).TurnSwitchOn()
EndIf EndIf
EndEvent EndEvent
Event OnTriggerLeave(ObjectReference akActionRef) Event OnTriggerLeave(ObjectReference akActionRef)
if akActioNRef == PlayerRef if akActioNRef == PlayerRef
(GetLinkedRef() as _00E_LightSwitchMainScript).TurnSwitchOff() (GetLinkedRef(LinkKeyword) as _00E_LightSwitchMainScript).TurnSwitchOff()
EndIf EndIf
EndEvent EndEvent

View File

@ -0,0 +1,17 @@
Scriptname _00E_LightSwitchTertiaryScript extends ObjectReference
Actor Property PlayerRef Auto
Keyword Property LinkKeyword Auto
Event OnTriggerEnter(ObjectReference akActionRef)
if akActionRef == PlayerRef
(GetLinkedRef(LinkKeyword) as _00E_LightSwitchMainScript).TurnSwitchOn()
EndIf
EndEvent
Event OnTriggerLeave(ObjectReference akActionRef)
if akActioNRef == PlayerRef
(GetLinkedRef(LinkKeyword) as _00E_LightSwitchMainScript).TurnSwitchOff()
EndIf
EndEvent

View File

@ -23,9 +23,26 @@ 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)
EndFunction EndFunction
Function UnlockDoor() Function UnlockDoor()

View File

@ -149,7 +149,7 @@ Function _UpdatePotion(Potion item, Int count, Bool bIsInCraftingMode)
EndIf EndIf
Else Else
Int maxDuration = NoAlchemistPotionDurationLimitInSeconds Int maxDuration = NoAlchemistPotionDurationLimitInSeconds
Int durationBonus = PlayerREF.GetAV("BypassVendorStolenCheck") as Int Int durationBonus = PlayerREF.GetAV("Variable02") as Int
If PlayerREF.hasPerk(_00E_Class_Theriantrophist_P03_GreyAlchemist_03) If PlayerREF.hasPerk(_00E_Class_Theriantrophist_P03_GreyAlchemist_03)
maxDuration = -1 ; no duration mali are required maxDuration = -1 ; no duration mali are required

View File

@ -10,60 +10,61 @@ keyword property linkHavokPartner auto
{Link with this keyword and that ref will also sim with myself} {Link with this keyword and that ref will also sim with myself}
bool property beenSimmed auto hidden bool property beenSimmed auto hidden
{prevent an object that has been havok'd in-game from going static} {prevent an object that has been havok'd in-game from going static}
Bool Property beenPutInContainer auto hidden
EVENT onCellAttach() Event OnCellAttach()
if (beenSimmed == FALSE && Self.Is3DLoaded()) If Is3DLoaded() && beenSimmed == False && beenPutInContainer == False
setMotionType(Motion_Keyframed, TRUE) SetMotionType(Motion_Keyframed, True)
; ;debug.trace("havok disabled on: " + self) ; debug.trace("havok disabled on: " + self)
endif EndIf
endEVENT EndEvent
EVENT onLoad() Event OnLoad()
if (beenSimmed == FALSE && Self.Is3DLoaded()) If beenSimmed == False && beenPutInContainer == False
setMotionType(Motion_Keyframed, TRUE) SetMotionType(Motion_Keyframed, True)
; ;debug.trace("havok disabled on: " + self) ; debug.trace("havok disabled on: " + self)
endif EndIf
endEVENT EndEvent
EVENT onActivate(ObjectReference triggerRef) Event OnActivate(ObjectReference triggerRef)
if havokonActivate == TRUE && beenSimmed == FALSE && Self.Is3DLoaded() ;USSEP 4.1.8 Bug #26371 - Added Is3DLoaded check to prevent a race condition with the OnContainerChanged event when picking up an object If havokonActivate && beenSimmed == False
ReleaseToHavok()
endif
endEVENT
EVENT onHit(ObjectReference var1, Form var2, Projectile var3, bool var4, bool var5, bool var6, bool var7)
if havokOnHit == TRUE && beenSimmed == FALSE
ReleaseToHavok()
endif
endEVENT
EVENT onGrab()
if havokOnZkey == TRUE && beenSimmed == FALSE
ReleaseToHavok()
endif
endEVENT
;USKP 2.0.1 - Added event to deal with Papyrus spam caused by the player picking these things up since the game cannot process that properly.
Event OnContainerChanged(ObjectReference akNewContainer, ObjectReference akOldContainer)
if( akNewContainer != None )
;Stops the OnLoad event from generating errors.
beenSimmed = True
Else
;No container, means it's being dropped in the open. Let it loose now.
ReleaseToHavok() ReleaseToHavok()
EndIf EndIf
EndEvent EndEvent
FUNCTION ReleaseToHavok() Event OnHit(ObjectReference var1, Form var2, Projectile var3, bool var4, bool var5, bool var6, bool var7)
beenSimmed = TRUE If havokOnHit && beenSimmed == False
objectReference myLink = getLinkedRef(linkHavokPartner) ReleaseToHavok()
if myLink != NONE EndIf
defaultDisableHavokOnLoad linkScript = myLink as defaultDisableHavokOnLoad EndEvent
if (linkScript) && (linkScript.beenSimmed == FALSE)
linkScript.ReleaseToHavok() Event OnGrab()
endif If havokOnZkey && beenSimmed == False
endif ReleaseToHavok()
setMotionType(Motion_Dynamic, TRUE) EndIf
Self.ApplyHavokImpulse(0, 0, 1, 5) EndEvent
; Debug.Trace("Released Havok.")
endFUNCTION ;USKP 2.0.1 - Added event to deal with Papyrus spam caused by the player picking these things up since the game cannot process that properly.
Event OnContainerChanged(ObjectReference akNewContainer, ObjectReference akOldContainer)
If beenSimmed == False
If akNewContainer != None
;Stops the OnLoad event from generating errors.
beenPutInContainer = True
Else
;No container, means it's being dropped in the open. Let it loose now.
ReleaseToHavok()
EndIf
EndIf
EndEvent
Function ReleaseToHavok()
beenSimmed = True
beenPutInContainer = False
defaultDisableHavokOnLoad myLink = GetLinkedRef(linkHavokPartner) as defaultDisableHavokOnLoad
If myLink && (myLink.beenSimmed == False)
myLink.ReleaseToHavok()
EndIf
SetMotionType(Motion_Dynamic, True)
Self.ApplyHavokImpulse(0, 0, 1, 5)
; Debug.Trace("Released Havok.")
EndFunction

View File

@ -1,4 +1,4 @@
Scriptname DraugrFXScript extends ActiveMagicEffect Scriptname DraugrFXScript extends ActiveMagicEffect
{Attaches and manages fx} {Attaches and manages fx}
@ -10,66 +10,66 @@ import form
Actor selfRef Actor selfRef
ActorBase myActorBase ActorBase myActorBase
int draugrSex
VisualEffect Property DraugrMaleEyeGlowFX Auto VisualEffect Property DraugrMaleEyeGlowFX Auto
VisualEffect Property DraugrFemaleEyeGlowFX Auto VisualEffect Property DraugrFemaleEyeGlowFX Auto
EVENT OnEffectStart(Actor Target, Actor Caster) EVENT OnEffectStart(Actor Target, Actor Caster)
selfRef = caster selfRef = caster
;Added by USKP to prevent this effect from appearing on the player.
If selfRef == Game.GetPlayer()
Dispel()
return
EndIf
;USKP 2.0.3 - Don't bother with any of this if the dumb zombie isn't loaded!
if( selfRef.Is3DLoaded() )
myActorBase = caster.GetLeveledActorBase()
;If sex is male (only one currently working) play glow eye art
if myActorBase.GetSex() == 0
if (selfRef.GetSleepState() == 3)
; Debug.Trace("Draugr man is sleeping! 3")
else
;Play glow art
DraugrMaleEyeGlowFX.Play(selfRef, -1)
endif
endif
;if sex is female (currently not returned) play debug text to say this is now working
if myActorBase.GetSex() == 1
if (selfRef.GetSleepState() == 3)
; Debug.Trace("Draugr fem is sleeping! 3")
else
DraugrFemaleEyeGlowFX.Play(selfRef, -1)
endIf
endif
EndIf
ENDEVENT
Event OnGetUp(ObjectReference akFurniture) ;Added by USKP to prevent this effect from appearing on the player.
; Debug.Trace("Draugr just got up from " ) If selfRef == Game.GetPlayer()
;Added by USKP to prevent this effect from appearing on the player. selfRef = None
if( selfRef == Game.GetPlayer() ) EndIf
Dispel() If selfRef == None
Return Dispel()
EndIf return
EndIf
; USKP 2.0.1 - Sanity check because the actorbase property isn't always valid when this runs.
if( myActorBase )
if myActorBase.GetSex() == 0
;Play glow art
DraugrMaleEyeGlowFX.Play(selfRef, -1)
endif
;if sex is female (currently not returned) play debug text to say this is now working
if myActorBase.GetSex() == 1
DraugrFemaleEyeGlowFX.Play(selfRef, -1)
endif
EndIf
EndEvent
EVENT onDeath(actor myKiller) ;USKP 2.0.3 - Don't bother with any of this if the dumb zombie isn't loaded!
If selfRef.Is3DLoaded()
myActorBase = selfRef.GetLeveledActorBase()
Int mySex = myActorBase.GetSex()
If (selfRef.GetSleepState() == 3)
; Debug.Trace("Draugr is sleeping! 3")
Elseif mySex == 0 ; If sex is male (only one currently working) play glow eye art
DraugrMaleEyeGlowFX.Play(selfRef, -1)
ElseIf mySex == 1 ; If sex is female (currently not returned) play debug text to say this is now working
DraugrFemaleEyeGlowFX.Play(selfRef, -1)
EndIf
EndIf
ENDEVENT
Event OnGetUp(ObjectReference akFurniture)
; Debug.Trace("Draugr just got up from " )
;Added by USKP to prevent this effect from appearing on the player.
if selfRef == None
Return
EndIf
; USKP 2.0.1 - Sanity check because the actorbase property isn't always valid when this runs.
If myActorBase
Int mySex = myActorBase.GetSex()
If mySex == 0
DraugrMaleEyeGlowFX.Play(selfRef, -1)
ElseIf mySex == 1
DraugrFemaleEyeGlowFX.Play(selfRef, -1)
EndIf
EndIf
EndEvent
Event OnDying(Actor myKiller)
utility.Wait(3.0)
StopEyes()
EndEvent
EVENT onDeath(actor myKiller)
StopEyes()
ENDEVENT
Function StopEyes()
if selfRef
DraugrMaleEyeGlowFX.Stop(selfRef) DraugrMaleEyeGlowFX.Stop(selfRef)
DraugrFemaleEyeGlowFX.Stop(selfRef) DraugrFemaleEyeGlowFX.Stop(selfRef)
EndIf
ENDEVENT EndFunction