Difference between revisions of "Quest Alias Tab"

Added clarification about "Allow Reuse in Quest". The way the docs were written was confusing and sounded like the first alias filled with a reference needed the option checked, when it's actually the *reusing* alias that needs it checked.
imported>PistachioRaptor
m (Attaches a note to Fill Type: Find Matching Reference In Loaded Area. Selecting this option without specifying any match conditions will result in your Fill Type being saved as Fill: None.)
(Added clarification about "Allow Reuse in Quest". The way the docs were written was confusing and sounded like the first alias filled with a reference needed the option checked, when it's actually the *reusing* alias that needs it checked.)
 
(9 intermediate revisions by 2 users not shown)
Line 29: Line 29:
*'''Display Name''': (optional) Can be used to rename the reference when it is assigned to the alias. The dropdown is a list of Messages - the Message Title will replace the reference's name. Note that this change is permanent - the reference will retain the new Display Name even when it is removed from the alias.
*'''Display Name''': (optional) Can be used to rename the reference when it is assigned to the alias. The dropdown is a list of Messages - the Message Title will replace the reference's name. Note that this change is permanent - the reference will retain the new Display Name even when it is removed from the alias.
*'''Force Into Alias When Filled''': (optional) The specified alias will also be filled with whatever fills this alias. This can be useful when you need to fill aliases in a "prioritized" manner (for example, pick NPC_A if alive, otherwise pick NPC_B).
*'''Force Into Alias When Filled''': (optional) The specified alias will also be filled with whatever fills this alias. This can be useful when you need to fill aliases in a "prioritized" manner (for example, pick NPC_A if alive, otherwise pick NPC_B).
** Be aware that the last "source" alias that is filled will be the one that determines the final value for the specified "target" alias. The quest does not stop performing the force fill on the first match. In the previous example of picking NPC_A if alive, otherwise NPC_B, the alias for NPC_B should be ''first'' in the alias list, followed by the alias for NPC_A. If the NPC_B alias appears after the NPC_A alias and fills unconditionally, while the NPC_A alias fills conditionally, the value of the target alias will ''always'' be NPC_B. If they are reversed in order, then NPC_B will fill the target alias, but then NPC_A will overwrite the target alias' value if its conditions allow it to be filled.
*'''Additional Valid Voice Types for Export''': This is used in cases where the alias's Fill Type (see below) does not give the editor enough information to determine what voice types are valid (for example, Location Alias Reference). Select a form list of voice types which the editor uses to limit any dialogue assigned to this alias (on scenes or through the [[GetIsAliasRef]] condition).
*'''Additional Valid Voice Types for Export''': This is used in cases where the alias's Fill Type (see below) does not give the editor enough information to determine what voice types are valid (for example, Location Alias Reference). Select a form list of voice types which the editor uses to limit any dialogue assigned to this alias (on scenes or through the [[GetIsAliasRef]] condition).
===Checkboxes:===
===Checkboxes:===
*'''Reserves Reference''': Once a reference is assigned to a "Reserved" alias, the Story Manager will not fill any other alias with this reference unless:
*'''Reserves Reference''': Once a reference is assigned to a "Reserved" alias by a quest, the game will not fill any other alias with this reference unless:
** A) The new alias is marked "Allow Reserved", or
** A) The new alias is marked "Allow Reserved", or
** B) The new alias is a "From External" fill type.
** B) The new alias is a "From External" fill type.
** C) "Starts Enabled" quests - all their aliases are treated as if "Allow Reserved" was checked (in order to avoid "race conditions" where the order that the "game start" quests actually fill their aliases matters).
** C) "Start Game Enabled" quests - all their aliases are treated as if "Allow Reserved" were checked (in order to avoid "race conditions" where the order that the "game start" quests actually fill their aliases matters). However, this may not be true for Start Game Enabled quests that are added to a saved game in progress. See the notes for the "Allow Reserved" checkbox.
*'''Optional''': If checked, the quest is not required to fill this in order to start. If unchecked, the quest will fail to start if the Story Manager fails to fill this alias.
*'''Optional''': If checked, the quest is not required to fill this in order to start. If unchecked, the quest will fail to start if it cannot fill this alias.
*'''Essential''': Make the actor in this alias Essential while in the alias.
*'''Essential''': Make the actor in this alias Essential while in the alias.
*'''Protected''': Make the actor in this alias Protected while in the alias.
*'''Protected''': Make the actor in this alias Protected while in the alias.
Line 41: Line 42:
** Cannot be dropped or sold by the player. EXCEPTION: Player can place Quest Objects into a container in an alias on the same quest which is ALSO marked as a Quest Object.
** Cannot be dropped or sold by the player. EXCEPTION: Player can place Quest Objects into a container in an alias on the same quest which is ALSO marked as a Quest Object.
** Any container containing a Quest Object cannot be cleaned up (deleted) by the game.
** Any container containing a Quest Object cannot be cleaned up (deleted) by the game.
*'''Allow Reuse in Quest''': Normally, the Story Manager will not fill two aliases on the same quest with the same reference. If "Allow Reuse in Quest", the reference in this alias CAN be placed into another alias on this quest during the startup process.
*'''Allow Reuse in Quest''': Normally, the game will not fill two aliases on the same quest with the same reference. If "Allow Reuse in Quest" is checked, the reference in this alias CAN be placed into another alias on this quest during the startup process.
*'''Allow Dead''': The Story Manager will skip dead actors unless this is checked.
{{WarningBox|This option must be checked on any alias that can be filled with a reference that has already been used, not on the first alias that uses the reference. This option is not required for all [[#Fill type|fill types]]. For example, a Unique Actor fill can target a reference that's already been used even if this option isn't checked.}}
*'''Allow Disabled''': Allows the alias to be filled with a disabled reference.
*'''Allow Dead''': Allows this alias to be filled with a dead actor. If unchecked, the alias will not fill if there are no living actors that match the fill requirements.
*'''Allow Disabled''': Allows the alias to be filled with a disabled reference. If unchecked, the alias will not fill if there are no enabled references that match the fill requirements.
*'''Allow Reserved''': Allows the alias to be filled with a reference which is already in a Reserved alias on another quest. Checking this will resolve some issues with quests failing to initialize because aliases could not be filled.
*'''Allow Reserved''': Allows the alias to be filled with a reference which is already in a Reserved alias on another quest. Checking this will resolve some issues with quests failing to initialize because aliases could not be filled.
**This option is greyed out for Start Game Enabled quests, which consider their aliases to "Allow Reserved" by default when initialized at the beginning of a new game. However, ticking "Allow Reserved" may be required to avoid problems if the Start Game Enabled quest is added to a pre-existing save. To select this option on a Start Game Enabled quest:
**This option is greyed out for Start Game Enabled quests, which consider their aliases to "Allow Reserved" by default when initialized at the beginning of a new game. However, ticking "Allow Reserved" may be required to avoid problems if the Start Game Enabled quest is added to a pre-existing save. To select this option on a Start Game Enabled quest:
Line 72: Line 74:


====Fill Type Conditions====
====Fill Type Conditions====
The conditions list can be applied to any of the fill types (it is always optional), but how the conditions are used depends on the fill type.
The conditions in the '''Match Conditions''' list can be applied to any of the fill types (it is always optional), but how the conditions are used depends on the fill type.


These fill types run the [[Condition Functions|condition]] on the thing you are filling the alias with:
These fill types run the [[Condition Functions|condition]] on the thing you are filling the alias with:
Line 87: Line 89:
===Alias Data:===
===Alias Data:===
*'''Scripts''': Select scripts to run on the alias. These must extend [[ReferenceAlias_Script|ReferenceAlias]] script type in order to work properly.
*'''Scripts''': Select scripts to run on the alias. These must extend [[ReferenceAlias_Script|ReferenceAlias]] script type in order to work properly.
* '''Factions''': The aliased reference will be considered a member of the specified factions while in the alias. When the alias is cleared, the faction data will be removed from the base actor as well if that data is present.
* '''Factions''': The aliased reference will be considered a member of the specified factions while in the alias.
{{WarningBox|The faction will be removed from the base actor when the alias is cleared (including when the quest is stopped) or forced to point at a different reference, even if it appears in the faction list for another reference alias targeting the same actor that is still filled. The behavior is as though [[RemoveFromFaction_-_Actor|RemoveFromFaction]] is called on the reference as it is leaving the alias.
 
'''Example:''' 2 quests, named <code>Quest1</code> and <code>Quest2</code>, are both started, and both have aliases that are filled with the same Actor. Both aliases add the Actor to <code>ThievesGuildFaction</code>. <code>Quest1</code> is stopped, but <code>Quest2</code> continues running. '''The Actor will no longer be in <code>ThievesGuildFaction</code>''', even though <code>Quest2</code> is still running.}}
* '''Spells''': The specified spells will be added to the reference that fills the alias, and removed when the reference leaves the alias. Note that rightclicking and using the Add menu in this box will allow you to add only Shouts, but if you wish to add other kinds of spell, you can drag them into this box from the Object Window.
* '''Spells''': The specified spells will be added to the reference that fills the alias, and removed when the reference leaves the alias. Note that rightclicking and using the Add menu in this box will allow you to add only Shouts, but if you wish to add other kinds of spell, you can drag them into this box from the Object Window.
* '''Keywords''': The aliased reference will be considered to have the specified keywords while in the alias.
* '''Keywords''': The aliased reference will be considered to have the specified keywords while in the alias.
* '''Inventory''': The specified items are added to the reference's inventory when the reference is placed into the alias. Note that this is permanent - these items are NOT removed when the reference leaves the alias.
* '''Inventory''': The specified items are added to the reference's inventory when the reference is placed into the alias.
{{WarningBox|This is permanent - these items are NOT removed when the reference leaves the alias.}}
* '''Package Data''': The list of packages is considered an additional "package stack" that sits on top of the aliased actor's base package stack. If an actor is in multiple aliases, the alias packages stack in quest priority order.
* '''Package Data''': The list of packages is considered an additional "package stack" that sits on top of the aliased actor's base package stack. If an actor is in multiple aliases, the alias packages stack in quest priority order.
* '''Override Package Lists''': Anything specified here replaces the matching "override" package list from the base actor. (See [[Interrupt Override Packages]].)
* '''Override Package Lists''': Anything specified here replaces the matching "override" package list from the base actor. (See [[Interrupt Override Packages]].)
56

edits