By semi-popular demand, a framework for adding on new start options for Live Another Life has been created. This should allow for much more
seamless introduction of extended start options for the player without
the obvious problems of conflicts introduced by multiple extensions
being written. Not to mention it will no longer lock modders and/or
players into needing a certain version of Live Another Life for their
favorite extender to continue to work - beyond needing 2.5.0 or greater
of course.
In order to create an extension, the following process is needed:
ESMify the Alternate Start - Live Another Life.esp file. You will not be able
to do the remainder of this process otherwise. You can use either
TES5Edit or Wrye Bash to do this.
Once loaded into the CK, find the ARTHLALChargenQuest entry. Open it up, and go to the "Player Dialogue" tab.
Along the left side of the display you'll find various dialogue branches. You
will need to create one to fill in here, with whatever name you want.
It will automatically prompt you for a topic to go with it
(Alternatively, put your dialogue in your own quest). Make sure none of
the branches you create are marked as blocking topics. They need to be
"Top Level" in order to work.
Once you have the topic branch created, you can set up the dialogue as you see fit. You can either have
just one response for a single option, or you can have several
subtopics linked to your branch in order to provide some extra choices.
In order to work from the menu, the dialogue must be conditioned to be
spoken by the ARTHLALMaraStatueActivator talking activator object.
With the way Live Another Life works, each actual response record needs to
be flagged as a "Goodbye". A TopicInfo script must be attached to this
with the following code supplied:
ChargenQuest.SetAddonQuestStage(Int, Quest)
"Quest" must be a quest record from your mod.
"Int" must be an integer quest stage > 0 which is part of your quest.
"ChargenQuest" is the property for ARTHLALChargenQuest. If this is not properly set, your extension will not get processed.
When the topic is used, Live Another Life will call your quest stage after the player has used the bed in the prison cell.
In the stage fragment for your quest, add whatever code you see fit. That
would be where you'd outfit the player, set up any factions they should
belong to, and then move them to whatever destination you have in mind. A
journal entry to set the tone for your scenario would need to be placed
here as well.
When your quest fragment runs, the last line needs to be:
ARTHLALRumorsOfWarQuest.RegisterForSingleUpdate(0.25)
This needs to be done in order to make sure the data is setup to allow the
player to proceed through the quest to get to Helgen. I realize some of
you may not want this to happen, but it's necessary for the proper
functioning of the mod since it is NOT set up to be a means to kill the
Main Quest.
Once all of your work is done, and you've saved (you have been saving, right?) and exited the CK, don't forget to ESPify the
Alternate Start - Live Another Life.esp file. Forgetting to do this will
lead to undesirable results.
Now go test it! Hopefully it's all working well :)
9 comments
I did notice one additional thing that I needed to do in order to get everything working, which seems to be relevant for Skyrim Classic only.
When creating my mod, I was referencing the LAL mod that had been converted to an ESM (both the file header and file extension were changed). Changing the file extension seems to be a Skyrim Classic thing as opposed to an SSE thing, so for SSE you can probably just edit the file header and leave the extension.
In my Skyrim Classic mod, I needed to edit the file header and adjust the filename for the LAL mod that was referenced as a master by my mod. I did this after completing my mod (and before each test). The file header in my mod originally referred to the LAL master with an .esm extension, but I needed to change that to an .esp extension to work with the standard .esp version of LAL. Without doing so, my dialogue options wouldn't appear (presumably because they were meant to be spoken by the statue in the .esm mod rather than the .esp mod, parented to the quest in the .esm mod, etc.).
I think this is only needed for the Skyrim Classic version of these mods - this is because in Skyrim SE you can change a mod to an .esm without changing the file extension. I realize this tutorial is for SSE, but I did not see a separate tutorial for Skyrim classic, so I figured I would mention this in case it was useful to anyone else here.
BTW, when I say "edit the file header" you do that by opening the mod in TESVedit and clicking the "file header" section which should be the first node when expanding a mod. The checkbox to set a mod as an esm is there, as well as the filenames (with extensions) of all the masters that the mod depends on.
I'm looking forward to releasing my new LAL tie in mod! It will allow players to start their new life in The Fringe, the new location added by "Steamforge Cove - Orc Chiefs vs. The Thalmor" which is my new lands/quest mod. It should offer some great new starting options for anyone doing an Orc or Thalmor playthrough, although there are options to just start at the docks as a traveler or in the forest as a hunter that should be suitable for other types of characters. Of course, all of the original Live Another Life options are still available, and thanks to the extensible design of LAL v2.5.0 and greater, you can install it without worrying about breaking any other similar mods.
Happy modding!
SSE CreationKit Fixes. (this does require) --> microsoft distributable to function but it will make using the CK much much easier for you and faster.
There does appear to be a way around this however.
If you make sure your scripts have the ARTHLALChargenQuest and the Rumors of War script added as Quest type properties - the scripts can be reloaded.
Then inside your papyrus fragment, you cast the quest variables to be the appropriate type.
Eg:
ARTH_LAL_StartQuest charg = StartQuest as ARTH_LAL_StartQuest
Then do your calls on the charg script object instead.
;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 1
Scriptname TrTh_TIF__07005905 Extends TopicInfo Hidden
;BEGIN FRAGMENT Fragment_0
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
ARTH_LAL_StartQuest ChargenQuest = StartQuest as ARTH_LAL_StartQuest
ChargenQuest.SetAddonQuestStage(10, MakeThaneAlternateStart)
;END CODE
EndFunction
;END FRAGMENT
;END FRAGMENT CODE - Do not edit anything between this and the begin comment
Quest Property MakeThaneAlternateStart Auto
Quest Property StartQuest Auto
I have added a new start to LAL and everything compiles fine, but when I start a new game with my new start plugin, the
statue of Mara is missing. HOWEVER, if I start a new game without my new start plugin, only LAL, the statue is there. But what is
strange is that if I THEN enable my new start plugin, and load into an ALREADY started game, everything is working smoothly.
So the statue disappears, only if I start a new game with LAL with my new start plugin.
Can someone please tell me what's wrong?
Once I knew it was working I started expanding my quest so there was a short mission before getting the key to unlock the house. Apparently I messed something up along the way because now when I sleep in the bed I wake up still in the prison without my equipment. Basically doing the escape start, but I don't get the quest entry for it.
Any ideas about what I might have changed to cause that? Been staring at my scripts and other additions for hours and can't seem to figure it out.