About this mod
Simple edits to a few scripts to allow Liches to become vampires and (optionally) werewolves.
- Requirements
- Permissions and credits
- Changelogs
Surprisingly, not much. This mod only edits three scripts:
1. necrolichtransformscript.pex
Added these lines to be executed pre-transformation:
(NecroLichRitualQuest as NecroLichTrackingQuest).GetPlayerOriginalRace()
RegisterForUpdate(1)
Commented out the following lines:
If PlayerIsVampire.GetValue() != 0
(PlayerVampireQuest as PlayerVampireQuestScript).VampireCure(TheLich)
EndIf
2. lichtransformritualeffectscript.pex
Added the following lines to the part of the script that would prevent you from casting unbind soul as a vampire:
If PlayerIsVampire.GetValue() == 1
Debug.MessageBox("Your arcane knowledge allows you to reach your soul!")
PlayerHP = Game.GetPlayer().GetBaseActorValue("health")
PlayerMG = Game.GetPlayer().GetBaseActorValue("magicka")
PlayerST = Game.GetPlayer().GetBaseActorValue("stamina")
Soulbound = true
(NecroLichRitualQuest as NecroLichTrackingQuest).GetPlayerOriginalRace()
RegisterForUpdate(1)
;determines the players final Lich appearance based on what items they have
If (Game.GetPlayer().GetItemCount(NecroVyngaldShroud)) == 1
(NecroLichRitualQuest as NecroLichTrackingQuest).Shroud = 1
elseif (Game.GetPlayer().GetItemCount(NecroVyngaldShroudGreen)) == 1
(NecroLichRitualQuest as NecroLichTrackingQuest).Shroud = 2
elseif (Game.GetPlayer().GetItemCount(NecroVyngaldShroudBlack)) == 1
(NecroLichRitualQuest as NecroLichTrackingQuest).Shroud = 3
else
(NecroLichRitualQuest as NecroLichTrackingQuest).Shroud = 0
endif
RitualLocation = ((NecroLichRitualQuest as NecroLichTrackingQuest).InTrigger) ; current ritual location 0 = none, 1 = tower, 2 = sewer
If RitualLocation == 1
Target = NecroLichTransformRitualTarget001 ; Tower phylactery must be enabled
elseIf RitualLocation == 2
Target = NecroLichTransformRitualTarget002 ; Sewer phylactery must be enabled
endif
3. necrolichtrackingquest.pex:
Changed the following lines so that the GetPlayerOriginalRace function could store you as a vampire (original comments not altered because why bother):
Function GetPlayerOriginalRace()
; get player's race at the start of the first ritual transformation so we have it permanently for Lich switch back
PlayerOriginalRace = Game.GetPlayer().GetRace()
;Debug.notification("LICH: Storing player's race as " + PlayerOriginalRace)
if (PlayerOriginalRace == ArgonianRaceVampire)
; Debug.Trace("CSQ: Player was Argonian Vampire; storing as Argonian.")
PlayerOriginalRace = ArgonianRaceVampire
elseif (PlayerOriginalRace == BretonRaceVampire)
; Debug.Trace("CSQ: Player was Breton Vampire; storing as Breton.")
PlayerOriginalRace = BretonRaceVampire
elseif (PlayerOriginalRace == DarkElfRaceVampire)
; Debug.Trace("CSQ: Player was Dark Elf Vampire; storing as Dark Elf.")
PlayerOriginalRace = DarkElfRaceVampire
elseif (PlayerOriginalRace == HighElfRaceVampire)
; Debug.Trace("CSQ: Player was Hiegh Elf Vampire; storing as High Elf.")
PlayerOriginalRace = HighElfRaceVampire
elseif (PlayerOriginalRace == ImperialRaceVampire)
; Debug.Trace("CSQ: Player was Imperial Vampire; storing as Imperial.")
PlayerOriginalRace = ImperialRaceVampire
elseif (PlayerOriginalRace == KhajiitRaceVampire)
; Debug.Trace("CSQ: Player was Khajiit Vampire; storing as Khajiit.")
PlayerOriginalRace = KhajiitRaceVampire
elseif (PlayerOriginalRace == NordRaceVampire)
; Debug.Trace("CSQ: Player was Nord Vampire; storing as Nord.")
PlayerOriginalRace = NordRaceVampire
elseif (PlayerOriginalRace == OrcRaceVampire)
; Debug.Trace("CSQ: Player was Orc Vampire; storing as Orc.")
PlayerOriginalRace = OrcRaceVampire
elseif (PlayerOriginalRace == RedguardRaceVampire)
; Debug.Trace("CSQ: Player was Redguard Vampire; storing as Redguard.")
PlayerOriginalRace = RedguardRaceVampire
elseif (PlayerOriginalRace == WoodElfRaceVampire)
; Debug.Trace("CSQ: Player was Wood Elf Vampire; storing as Wood Elf.")
PlayerOriginalRace = WoodElfRaceVampire
endif
F.A.Q.:
Q1: Load Order / Overwrites?
A1: There is no .esp with this mod, so load order is irrelevant. You will not be prompted to overwrite anything unless you have extracted Classical Lichdom's / Undeath Remastered's BSA file(s), at which point simply allow my files to overwrite any conflict.
Q2: Can I install this mid-save?
A2: While it will work, installing anything except for textures and meshes mid save can have unforeseen consequences. Do so at your own risk (and if you run into any issues be sure to tell me so I can change this answer).
Q3: Is this compatible with [Insert Mod Here]?
A3: Long story short - if it is compatible with Classical Lichdom, yes it will be compatible. There are a few mods that are compatible with Undeath but not with Classical Lichdom, like...
Q4: But Tainted Blood already exists! Why do we need this?
A4: Because Tainted Blood is incompatible with Classical Lichdom. Both mods edit the same script (necrolichtransform.pex), but do so in wildly different ways. Tainted Blood removes the lines that remove Vampirism/Lycanthropy when transforming but leaves everything the same, while Classical Lichdom removes and adds several cool new things.