I love the smell of UnrealEd crashing in the morning. – tarquin
Difference between revisions of "UE2:SpecialVehicleObjective (UT2004)"
(Auto-generated page) |
(added descriptions and usage info) |
||
Line 7: | Line 7: | ||
| parent5 = Object | | parent5 = Object | ||
}} | }} | ||
− | + | SpecialVehicleObjectives are used to mark the end of special paths that a vehicle is required to reach, but have something a vehicle cannot get (like a pickup). Bots will only consider following one of these paths if it is enabled and the bot is controlling a vehicle of one the allowed classes. When they reach this point, they will exit the vehicle and continue to the associated actor on foot. | |
− | SpecialVehicleObjectives are used to mark the end of special paths that a vehicle is required to reach, but have something a vehicle cannot | + | |
− | get (like a pickup). Bots will only consider following one of these paths if it is enabled and the bot is controlling a vehicle of one the | + | To get an idea of possible uses, have a look at [[liandri:ONS-Torlan|ONS-Torlan]]: There's a SpecialVehicleObjective on the tower because the Redeemer (and Super Shield Pack) up there can only be reached using a Raptor. |
− | allowed classes. When they reach this point, they will exit the vehicle and continue to the associated actor on foot. | + | |
+ | ==Usage== | ||
+ | Due to the way (un)triggering and resetting affects SpecialVehicleObjectives, there doesn't seem to be any use for them other than telling bots how to reach pickups. | ||
+ | |||
+ | If you have a super pickup that can't (or shouldn't) be reached on foot, e.g. because it's up high, place a SpecialVehicleObjective near the pickup. Match the pickup's {{tl|Tag||Actor properties}} and the SpecialVehicleObjective's {{tl|AssociatedActorTag}} to specify the destination object. Also match the pickup's {{tl|Event||Actor properties}} and the SpecialVehicleObjective's {{tl|Tag||Actor properties}} to properly enable the SpecialVehicleObjective when the pickup is available. | ||
==Properties== | ==Properties== | ||
Line 17: | Line 21: | ||
'''Type:''' [[array]]<[[class]]<{{cl|Vehicle}}> > | '''Type:''' [[array]]<[[class]]<{{cl|Vehicle}}> > | ||
− | + | Classes of vehicles that are capable of reaching this point. | |
====AssociatedActorTag==== | ====AssociatedActorTag==== | ||
'''Type:''' [[name]] | '''Type:''' [[name]] | ||
− | + | Tag of the actor this special vehicle objective belongs to. | |
====MaxDist==== | ====MaxDist==== | ||
'''Type:''' [[float]] | '''Type:''' [[float]] | ||
− | + | If greater than 0, bots will never go here unless they are already this close | |
===Internal variables=== | ===Internal variables=== | ||
Line 33: | Line 37: | ||
'''Type:''' {{cl|Actor}} | '''Type:''' {{cl|Actor}} | ||
− | + | The actor this special vehicle objective belongs to. (Set in {{tl|PostBeginPlay}}.) | |
====bEnabled==== | ====bEnabled==== | ||
'''Type:''' [[bool]] | '''Type:''' [[bool]] | ||
− | + | Whether this SpecialVehicleObjective is currently reachable. Disabled on {{tl|Trigger}} and {{tl|Reset}}, enabled on {{tl|Untrigger}} if there's an {{tl|AssociatedActor}}. | |
====NextSpecialVehicleObjective==== | ====NextSpecialVehicleObjective==== | ||
'''Type:''' {{cl|SpecialVehicleObjective}} | '''Type:''' {{cl|SpecialVehicleObjective}} | ||
− | + | The next item in the [[linked list]] of SpecialVehicleObjective, which starts with {{tl|SpecialVehicleObjectives|UnrealMPGameInfo}}. | |
====TeamOwner==== | ====TeamOwner==== | ||
Line 68: | Line 72: | ||
'''Overrides:''' {{tl|PostBeginPlay|NavigationPoint}} | '''Overrides:''' {{tl|PostBeginPlay|NavigationPoint}} | ||
− | + | Initializes the {{tl|AssociatedActor}} and SpecialVehicleObjectives/NextSpecialVehicleObjective [[linked list]]. | |
====Trigger==== | ====Trigger==== | ||
Line 75: | Line 79: | ||
'''Overrides:''' {{tl|Trigger|Actor|events}} | '''Overrides:''' {{tl|Trigger|Actor|events}} | ||
− | + | Disables this SpecialVehicleObjective. | |
====Untrigger==== | ====Untrigger==== | ||
Line 82: | Line 86: | ||
'''Overrides:''' {{tl|UnTrigger|Actor|events}} | '''Overrides:''' {{tl|UnTrigger|Actor|events}} | ||
− | + | Enables this SpecialVehicleObjective, but only if its {{tl|AssociatedActor}} is set. | |
===Other instance functions=== | ===Other instance functions=== | ||
Line 88: | Line 92: | ||
{{code|function [[bool]] '''IsAccessibleTo''' ({{cl|Pawn}} '''BotPawn''')}} | {{code|function [[bool]] '''IsAccessibleTo''' ({{cl|Pawn}} '''BotPawn''')}} | ||
− | + | Returns whether this SpecialVehicleObjective is accessible to the specified Pawn. Takes {{tl|bEnabled}}, {{tl|MaxDist}} and {{tl|AccessibleVehicleClasses}} into account. | |
====Reset==== | ====Reset==== | ||
Line 95: | Line 99: | ||
'''Overrides:''' {{tl|Reset|Actor|instance functions}} | '''Overrides:''' {{tl|Reset|Actor|instance functions}} | ||
− | + | Disables this SpecialVehicleObjective. |
Latest revision as of 02:13, 2 June 2009
Object >> Actor >> NavigationPoint >> PathNode >> RoadPathNode >> SpecialVehicleObjective |
Contents
- Package:
- UnrealGame
SpecialVehicleObjectives are used to mark the end of special paths that a vehicle is required to reach, but have something a vehicle cannot get (like a pickup). Bots will only consider following one of these paths if it is enabled and the bot is controlling a vehicle of one the allowed classes. When they reach this point, they will exit the vehicle and continue to the associated actor on foot.
To get an idea of possible uses, have a look at ONS-Torlan: There's a SpecialVehicleObjective on the tower because the Redeemer (and Super Shield Pack) up there can only be reached using a Raptor.
Usage[edit]
Due to the way (un)triggering and resetting affects SpecialVehicleObjectives, there doesn't seem to be any use for them other than telling bots how to reach pickups.
If you have a super pickup that can't (or shouldn't) be reached on foot, e.g. because it's up high, place a SpecialVehicleObjective near the pickup. Match the pickup's Tag and the SpecialVehicleObjective's AssociatedActorTag to specify the destination object. Also match the pickup's Event and the SpecialVehicleObjective's Tag to properly enable the SpecialVehicleObjective when the pickup is available.
Properties[edit]
Property group 'SpecialVehicleObjective'[edit]
AccessibleVehicleClasses[edit]
Classes of vehicles that are capable of reaching this point.
AssociatedActorTag[edit]
Type: name
Tag of the actor this special vehicle objective belongs to.
MaxDist[edit]
Type: float
If greater than 0, bots will never go here unless they are already this close
Internal variables[edit]
AssociatedActor[edit]
Type: Actor
The actor this special vehicle objective belongs to. (Set in PostBeginPlay.)
bEnabled[edit]
Type: bool
Whether this SpecialVehicleObjective is currently reachable. Disabled on Trigger and Reset, enabled on Untrigger if there's an AssociatedActor.
NextSpecialVehicleObjective[edit]
Type: SpecialVehicleObjective
The next item in the linked list of SpecialVehicleObjective, which starts with UnrealMPGameInfo.SpecialVehicleObjectives.
TeamOwner[edit]
Type: Pawn
Array size: 4
AI pawns currently headed to this point
Default values[edit]
Property | Value |
---|---|
bNotBased | True |
Functions[edit]
Events[edit]
PostBeginPlay[edit]
Overrides: NavigationPoint.PostBeginPlay
Initializes the AssociatedActor and SpecialVehicleObjectives/NextSpecialVehicleObjective linked list.
Trigger[edit]
Overrides: Actor.Trigger
Disables this SpecialVehicleObjective.
Untrigger[edit]
Overrides: Actor.UnTrigger
Enables this SpecialVehicleObjective, but only if its AssociatedActor is set.
Other instance functions[edit]
IsAccessibleTo[edit]
Returns whether this SpecialVehicleObjective is accessible to the specified Pawn. Takes bEnabled, MaxDist and AccessibleVehicleClasses into account.
Reset[edit]
Overrides: Actor.Reset
Disables this SpecialVehicleObjective.