Difference between revisions of "AI Package"

523 bytes added ,  02:44, 25 February 2019
→‎Entry Fields: Added note about bugfix.
imported>Clearance
m (corrected link)
imported>XJDHDR
(→‎Entry Fields: Added note about bugfix.)
 
(3 intermediate revisions by 3 users not shown)
Line 2: Line 2:
An AI-package is a bundle of hidden AI instructions with conditions for when and how to execute it. AI-packages are placed on an actor by dragging them from a CS database to the [[AI Button|AI-Object's Package List]]. Several AI-packages of an actor are organized by the principle of the "cascading list".
An AI-package is a bundle of hidden AI instructions with conditions for when and how to execute it. AI-packages are placed on an actor by dragging them from a CS database to the [[AI Button|AI-Object's Package List]]. Several AI-packages of an actor are organized by the principle of the "cascading list".


When an actor needs to pick a new package, the list is examined from the top. The first package that is found valid based on it's time schedule and logical conditions is selected and activated for the actor. At a given time only one AI-package is active for a single actor.
When an actor needs to pick a new package, the list is examined from the top. The first package that is found valid based on its time schedule and logical conditions is selected and activated for the actor. At a given time only one AI-package is active for a single actor.


==Editing==
==Editing==
Line 16: Line 16:
*'''Schedule Tab:''' Sets the time at which the package can run. The schedule cannot be in less than one hour blocks. As a rule, either set day and month, or day of the week, not both.
*'''Schedule Tab:''' Sets the time at which the package can run. The schedule cannot be in less than one hour blocks. As a rule, either set day and month, or day of the week, not both.


:*''Note:'' There is an engine bug where if a package is supposed to occur on given days of the week but the duration spans past midnight, the package occurs at the same time on both the day it was supposed to ''and'' the day after. The day after, though, the package will end at midnight instead of whatever time it was supposed to.
:*''Note:'' There is an engine bug where, if a package is supposed to occur on given day(s) of the week or month, but the duration spans past midnight, the after-midnight component will occur a day before it's supposed to, then the package will occur normally, then the before-midnight component will occur a day after it's supposed to (as if the package was repeating and being truncated at the midnights. For example, a package that is to run on a specific day from 18:00 to 02:00 the next day will actually run from 00:00 to 02:00 on the start day, then 18:00-02:00 as intended, and then again at 18:00-00:00 on the end day. Split these packages so that they don't cross midnight to avoid this effect.
 
::* This bug has been fixed by the [https://www.nexusmods.com/oblivion/mods/47085? EngineBugFixes OBSE Plugin].


*'''[[Logical Conditions|Conditions]] Tab:''' A full set of conditions that must be true for the package to be selected. Only applies if the schedule is valid. "Run on Target" is only valid if the package has a defined Target.
*'''[[Logical Conditions|Conditions]] Tab:''' A full set of conditions that must be true for the package to be selected. Only applies if the schedule is valid. "Run on Target" is only valid if the package has a defined Target.
Line 24: Line 26:
**'''Near Current Location:''' Centers the package's location on where the NPC is when the package starts.
**'''Near Current Location:''' Centers the package's location on where the NPC is when the package starts.
**'''Near Editor Location:''' Centers the package's location on the default location of the NPC.
**'''Near Editor Location:''' Centers the package's location on the default location of the NPC.
**'''Radius:''' The distance from the package's center that is considered valid.
**'''Radius:''' The distance from the package's center that is considered valid. The units are [[Glossary#Inch|Inches]].
***''Note:'' While in most cases the radius means from the actor outward, in the case of "Travel" packages, it means distance from the location.
***''Note:'' While in most cases the radius means from the actor outward, in the case of "Travel" packages, it means distance from the location.
*'''Target Tab:''' Some packages types have a target that is independent from the location.
*'''Target Tab:''' Some packages types have a target that is independent from the location.
Anonymous user