I'd like to bring a specific issue to light. To get around, I have been using Ordinator's dimension door alteration perk to teleport directly to the Legacy of the Dragonborn museum safehouse portal room, then using the portal room's portals to teleport to the location of my choosing. This breaks the thane quests. I do not know exactly why this is, but I have some speculations. Opening the map after using dimension door to teleport to the safehouse, I notice that the game still thinks I am at the location I teleported from. The thane quests run a player location check in order to trigger properly. The issue implies at least 1 of 3 possibilities: 1, there is something wrong with dimension door, 2, there is something wrong with the safehouse location, or 3, there is something wrong with the safehouse portals. I am posting copies of this comment on the pages for Ordinator, Legacy of the Dragonborn, and Optimised Scripts for Ordinator to notify the relevant mod authors. I encourage each of them to double check any files/scripts that might be relevant to this problem. If there are any workarounds, please let me know.
;-- Properties -------------------------------------- perk property ORD_Lia50_RushingTide_Perk_50 auto location property WhiterunJorrvaskrLocation auto Int property ORD_XP auto quest property DGIntimidateQuest auto quest property C00JorrvaskrFight auto formlist property ORD_Lia_HissingDragon_FormList auto actor property PlayerRef auto Float property ORD_XPMult auto spell property ORD_Lia_RushingTide_Spell_Proc auto perk property ORD_Lia70_HissingDragon_70 auto
utility.Wait(0.100000) self.RegisterForAnimationEvent(PlayerRef as objectreference, "weaponSwing") self.RegisterForAnimationEvent(PlayerRef as objectreference, "weaponLeftSwing") endFunction
function OnAnimationEvent(objectreference akSource, String asEventName)
if (asEventName == "weaponSwing" || asEventName == "weaponLeftSwing") && akSource == PlayerRef as objectreference if (!DGIntimidateQuest.IsRunning() || DGIntimidateQuest.GetCurrentStageID() >= 100) && (!C00JorrvaskrFight.IsRunning() || PlayerRef.GetCurrentLocation() != WhiterunJorrvaskrLocation || C00JorrvaskrFight.GetCurrentStageID() >= 100) if PlayerRef.HasPerk(ORD_Lia70_HissingDragon_70) && !PlayerRef.IsSneaking() (ORD_Lia_HissingDragon_FormList.GetAt(0) as spell).Cast(PlayerRef as objectreference, none) endIf if PlayerRef.HasPerk(ORD_Lia50_RushingTide_Perk_50) ORD_Lia_RushingTide_Spell_Proc.Cast(PlayerRef as objectreference, none) endIf endIf if PlayerRef.IsInCombat() || PlayerRef.GetCombatState() > 0 game.AdvanceSkill("LightArmor", ORD_XP as Float * (1.0 + ORD_XPMult * PlayerRef.GetBaseAV("LightArmor"))) endIf endIf endFunction
function OnEffectStart(actor akTarget, actor akCaster)
self.RegisterForAnimationEvent(PlayerRef as objectreference, "weaponSwing") self.RegisterForAnimationEvent(PlayerRef as objectreference, "weaponLeftSwing") endFunction
; Skipped compiler generated GetState
function OnEffectFinish(actor akTarget, actor akCaster)
Do you know if there is something else, somewhere else that controls skill XP from unarmed combat. In my mod I moved all the unarmed perks to the two-handed tree and everything in the plugin references two handed skill, perks and the tree itself.
I also updated the rising tide script to game.AdvanceSkill("Twohanded", ORD_XP as Float * (1.0 + ORD_XPMult * PlayerRef.GetBaseAV("Twohanded")))
Though I am not gaining skill XP upon taking Iron Fist perk and cannot see anywhere else in the plugin or script that controls this.
Whenever the author of the original scripts/mod does not release their source files, I also don't publish mine, since I assume that's what the original mod author prefers.
You can use Champollion (https://www.nexusmods.com/skyrim/mods/35307) to decompile them into source files though. That's also what I did in the first place myself, to be able to edit the scripts, since the original source files were not available.
The source scripts for ordinator are available in the LE version. It's pretty typical that LE leaves his source scripts for all the LE versions but does not include them in the SE versions.
Ordinator packages the files into a BSA. Files in BSAs are loaded before loose files. Mod Organizer does not report when a file within a BSA is replaced by one of your mods with loose files.
Optimised Script for Apocalypse-Ordinator patch redundant? Vortex says that mod is redundant, even though I had it overwrite the ordinator script optimisation mod. I have ordinator, apocalypse, and the patch for them both, so it would make sense to use that, but vortex says it's not doing anything. Is that an error, like should I leave it on regardless?
I don't use Vortex myself (at least not for Skyrim), I use MO2. So, I'm not particularly familiar with how its error messaging works. But the patch should not be redundant...
Make sure that the patch is installed *after* the Optimised Scripts for each individual mods, such that it can overwrite those. If you have the opposite order, and have them overwriting the patch, then yes, no files from the patch would be used.
Thanks for the quick reply, disabling and then re-enabling the mod seemed to fix the issue. I definitely have the combined patch after the main ones. Not sure why it said it was redundant initially. Oh well, seems to be fine now. Thanks for the mods!
I dont get the Optimised Scripts for Apocalypse-Ordinator Patch here and in Optimised Scripts for Apocalypse page. I need to install the Main file and in OSFA? Like: -Optimised Scripts for Apocalypse -Optimised Scripts for Apocalypse-Ordinator Patch Here -Optimised Scripts for Ordinator -Optimised Scripts for Apocalypse-Ordinator Patch
Or I just need one of the two Optimised Scripts mods? I already have Optimised Scripts for Apocalypse-Ordinator Patch from your Apocalypse mod. I still need this Main file for Ordinator, or it's fine with the one from Apocalypse? Or I need here the main and optional file? I'm so confused, help
The Patch file from both pages is identical. But it should load after both of the main files. So, you'll want the installation order to be like this:
- Optimised Scripts for Apocalypse - Optimised Scripts for Ordinator - Optimised Scripts for Apocalypse-Ordinator Patch (only once, doesn't matter which page you download it from)
88 comments
Safe to install / update mid-game.
Please note that this new version has an additional requirement: powerofthree's Papyrus Extender!
;/ Decompiled by Champollion V1.0.1
Source : ORD_RisingTide_Script.psc
/;
scriptName ORD_RisingTide_Script extends activemagiceffect
;-- Properties --------------------------------------
perk property ORD_Lia50_RushingTide_Perk_50 auto
location property WhiterunJorrvaskrLocation auto
Int property ORD_XP auto
quest property DGIntimidateQuest auto
quest property C00JorrvaskrFight auto
formlist property ORD_Lia_HissingDragon_FormList auto
actor property PlayerRef auto
Float property ORD_XPMult auto
spell property ORD_Lia_RushingTide_Spell_Proc auto
perk property ORD_Lia70_HissingDragon_70 auto
;-- Variables ---------------------------------------
;-- Functions ---------------------------------------
; Skipped compiler generated GotoState
function OnRaceSwitchComplete()
utility.Wait(0.100000)
self.RegisterForAnimationEvent(PlayerRef as objectreference, "weaponSwing")
self.RegisterForAnimationEvent(PlayerRef as objectreference, "weaponLeftSwing")
endFunction
function OnAnimationEvent(objectreference akSource, String asEventName)
if (asEventName == "weaponSwing" || asEventName == "weaponLeftSwing") && akSource == PlayerRef as objectreference
if (!DGIntimidateQuest.IsRunning() || DGIntimidateQuest.GetCurrentStageID() >= 100) && (!C00JorrvaskrFight.IsRunning() || PlayerRef.GetCurrentLocation() != WhiterunJorrvaskrLocation || C00JorrvaskrFight.GetCurrentStageID() >= 100)
if PlayerRef.HasPerk(ORD_Lia70_HissingDragon_70) && !PlayerRef.IsSneaking()
(ORD_Lia_HissingDragon_FormList.GetAt(0) as spell).Cast(PlayerRef as objectreference, none)
endIf
if PlayerRef.HasPerk(ORD_Lia50_RushingTide_Perk_50)
ORD_Lia_RushingTide_Spell_Proc.Cast(PlayerRef as objectreference, none)
endIf
endIf
if PlayerRef.IsInCombat() || PlayerRef.GetCombatState() > 0
game.AdvanceSkill("LightArmor", ORD_XP as Float * (1.0 + ORD_XPMult * PlayerRef.GetBaseAV("LightArmor")))
endIf
endIf
endFunction
function OnEffectStart(actor akTarget, actor akCaster)
self.RegisterForAnimationEvent(PlayerRef as objectreference, "weaponSwing")
self.RegisterForAnimationEvent(PlayerRef as objectreference, "weaponLeftSwing")
endFunction
; Skipped compiler generated GetState
function OnEffectFinish(actor akTarget, actor akCaster)
PlayerRef.DispelSpell(ORD_Lia_RushingTide_Spell_Proc)
endFunction
Do you know if there is something else, somewhere else that controls skill XP from unarmed combat. In my mod I moved all the unarmed perks to the two-handed tree and everything in the plugin references two handed skill, perks and the tree itself.
I also updated the rising tide script to game.AdvanceSkill("Twohanded", ORD_XP as Float * (1.0 + ORD_XPMult * PlayerRef.GetBaseAV("Twohanded")))
Though I am not gaining skill XP upon taking Iron Fist perk and cannot see anywhere else in the plugin or script that controls this.
The Rising tide script is the only place I ca find any reference to xp gained from the light armor tree. I am using your optimized script.
Although I am not gaining any skill xp in light armor either using unarmed. Could there be a problem with this script?
You can use Champollion (https://www.nexusmods.com/skyrim/mods/35307) to decompile them into source files though. That's also what I did in the first place myself, to be able to edit the scripts, since the original source files were not available.
Make sure that the patch is installed *after* the Optimised Scripts for each individual mods, such that it can overwrite those. If you have the opposite order, and have them overwriting the patch, then yes, no files from the patch would be used.
-Optimised Scripts for Apocalypse
-Optimised Scripts for Apocalypse-Ordinator Patch
Here
-Optimised Scripts for Ordinator
-Optimised Scripts for Apocalypse-Ordinator Patch
Or I just need one of the two Optimised Scripts mods? I already have Optimised Scripts for Apocalypse-Ordinator Patch from your Apocalypse mod. I still need this Main file for Ordinator, or it's fine with the one from Apocalypse? Or I need here the main and optional file? I'm so confused, help
- Optimised Scripts for Apocalypse
- Optimised Scripts for Ordinator
- Optimised Scripts for Apocalypse-Ordinator Patch (only once, doesn't matter which page you download it from)