I search for solutions in this order: Past Code, Unreal Source, Wiki, BUF, groups.yahoo, google, screaming at monitor. – RegularX

Difference between revisions of "Legacy:NavigationPoint (UT)"

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
m
 
m (LiftCenter link no longer leads to UT2003's LiftCenter.)
(One intermediate revision by one other user not shown)
Line 3: Line 3:
 
Children of this class form the bot AI navigation system. During the compilation process, two navigation points get linked by paths if one of them is in the line of view of a bot which is located at the position of the other one and the bot could go there at least in one direction. Each [[Legacy:Pickup (UT)|Pickup (UT)]] and [[Legacy:PlayerStart|PlayerStart]] has its own NavigationPoint. The most common NavigationPoints are the [[Legacy:PathNode|PathNode]]s which simply are NavigationPoints which have a texture which makes it possible to put them in a map where the PathNodes build the backbone of the maps navigation system.
 
Children of this class form the bot AI navigation system. During the compilation process, two navigation points get linked by paths if one of them is in the line of view of a bot which is located at the position of the other one and the bot could go there at least in one direction. Each [[Legacy:Pickup (UT)|Pickup (UT)]] and [[Legacy:PlayerStart|PlayerStart]] has its own NavigationPoint. The most common NavigationPoints are the [[Legacy:PathNode|PathNode]]s which simply are NavigationPoints which have a texture which makes it possible to put them in a map where the PathNodes build the backbone of the maps navigation system.
  
See [[Legacy:NavigationPoint|NavigationPoint]] for the UT200x version of this class.
+
See the main [[Legacy:Artificial Intelligence|Artificial Intelligence]] topic page, and [[Legacy:Bot Navigation|bot navigation]] for a technical overview.
  
See the super topic page [[Legacy:Artificial Intelligence|Artificial Intelligence]], and [[Legacy:Bot Support|Bot Support]] and [[Legacy:Bot Pathing|Bot Pathing]] for a technical overview.
+
See [[Legacy:NavigationPoint|NavigationPoint]] for the UT2003 version of this class.
  
 
[[Image:Legacy_NavigationPointExamples.jpeg|center|Different types of NavigationPoint with the paths between them showing in UnrealEd]]
 
[[Image:Legacy_NavigationPointExamples.jpeg|center|Different types of NavigationPoint with the paths between them showing in UnrealEd]]
Line 28: Line 28:
 
; NavigationPoint nextNavigationPoint (const) : Next NavigationPoint in the [[Legacy:Linked List|Linked List]] of the map's NavigationPoints.
 
; NavigationPoint nextNavigationPoint (const) : Next NavigationPoint in the [[Legacy:Linked List|Linked List]] of the map's NavigationPoints.
 
; NavigationPoint nextOrdered (const) :  
 
; NavigationPoint nextOrdered (const) :  
; int Paths[16] : Holds indices of paths (reachspecs) that lead from this node directly to another node. (Used by C++ Navigation code.)
+
; int Paths[16] : Index of reachspecs (used by C++ Navigation code)
 
; NavigationPoint previousPath (const) :  
 
; NavigationPoint previousPath (const) :  
 
; NavigationPoint prevOrdered (const) :  
 
; NavigationPoint prevOrdered (const) :  
; int PrunedPaths[16] : Appears to hold indices of paths that are not displayed in the editor because they are not significantly more efficient than a series of shorter paths. For instance, consider three nodes – PathNode0, PathNode1, and PathNode2 – placed in a straight-line formation, with PathNode1 at the center. Although PathNode2 may be close enough that it could be directly reached from PathNode0, in practice a bot would go from PathNode0 first to PathNode1, then on to PathNode2. Thus the path from PathNode0 to PathNode1 will go into the former's Paths[] array, while the path from PathNode0 to PathNode2 will go into the PrunedPaths[] array. I'm not sure at the moment exactly how these paths are used, as opposed to how standard Paths[] are used, because there aren't any references to PrunedPaths[] in UnrealScript, except to define the array. It's only used by the C++ navigation code.
+
; int PrunedPaths[16] :  
 
; [[Legacy:Actor|Actor]] routeCache :  
 
; [[Legacy:Actor|Actor]] routeCache :  
 
; NavigationPoint startPath (const) :  
 
; NavigationPoint startPath (const) :  
 
; bool taken : Set when a creature is occupying this spot.
 
; bool taken : Set when a creature is occupying this spot.
; int upstreamPaths[16] : Holds indices of paths that lead to this node directly from another node. (Used by C++ navigation code.)
+
; int upstreamPaths[16] :  
 
; int visitedWeight :  
 
; int visitedWeight :  
 
; NavigationPoint VisNoReachPaths[16] : Paths that are visible but not directly reachable.
 
; NavigationPoint VisNoReachPaths[16] : Paths that are visible but not directly reachable.
Line 47: Line 47:
 
==Known subclasses ==
 
==Known subclasses ==
  
For a list of these grouped by usage with a summary, see [[Legacy:NavigationPoint|NavigationPoint]].
+
For a list of these grouped by usage with a summary, see [[Legacy:Types Of Pathnode|Types of Pathnode]].
 
* [[Legacy:AlarmPoint|AlarmPoint]]
 
* [[Legacy:AlarmPoint|AlarmPoint]]
 
* [[Legacy:AlternatePath|AlternatePath]]
 
* [[Legacy:AlternatePath|AlternatePath]]
Line 60: Line 60:
 
* [[Legacy:InventorySpot|InventorySpot]] – Automatically placed by the game; don't use.
 
* [[Legacy:InventorySpot|InventorySpot]] – Automatically placed by the game; don't use.
 
* [[Legacy:LiftCenter (UT)|LiftCenter (UT)]]
 
* [[Legacy:LiftCenter (UT)|LiftCenter (UT)]]
** [[Legacy:JumpSpot (UT)|JumpSpot (UT)]]
+
** [[Legacy:JumpSpot|JumpSpot]]
 
** [[Legacy:PainPath|PainPath]]
 
** [[Legacy:PainPath|PainPath]]
 
** [[Legacy:TranslocDest|TranslocDest]]
 
** [[Legacy:TranslocDest|TranslocDest]]

Revision as of 04:22, 15 March 2004

UT :: Actor (UT) >> NavigationPoint (Package: Engine)

Children of this class form the bot AI navigation system. During the compilation process, two navigation points get linked by paths if one of them is in the line of view of a bot which is located at the position of the other one and the bot could go there at least in one direction. Each Pickup (UT) and PlayerStart has its own NavigationPoint. The most common NavigationPoints are the PathNodes which simply are NavigationPoints which have a texture which makes it possible to put them in a map where the PathNodes build the backbone of the maps navigation system.

See the main Artificial Intelligence topic page, and bot navigation for a technical overview.

See NavigationPoint for the UT2003 version of this class.

Different types of NavigationPoint with the paths between them showing in UnrealEd

Properties

NavigationPoint Group

bool bNeverUseStrafing 
Shouldn't use bAdvancedTactics going to this point.
bool bOneWayPath 
Reachspecs from this path only in the direction the path is facing. (180 degrees)
bool bPlayerOnly 
Only players should use this path.
int ExtraCost 
name ownerTeam 
Creature clan owning this area. (area visible from this point)

Hidden

bool bAutoBuilt 
Placed during execution of "PATHS BUILD".
bool bEndPoint 
Used by C++ navigation code.
bool bEndPointOnly 
Only used as an endpoint in routing network.
int bestPathWeight (const) 
bool bSpecialCost 
If true, navigation code will call SpecialCost function for this navigation point.
bool bTwoWay 
Hacked here to fix CTF problems post release. (used by Botpack.AlternatePath)
int cost 
Added cost to visit this pathnode.
NavigationPoint nextNavigationPoint (const) 
Next NavigationPoint in the Linked List of the map's NavigationPoints.
NavigationPoint nextOrdered (const) 
int Paths[16] 
Index of reachspecs (used by C++ Navigation code)
NavigationPoint previousPath (const) 
NavigationPoint prevOrdered (const) 
int PrunedPaths[16] 
Actor routeCache 
NavigationPoint startPath (const) 
bool taken 
Set when a creature is occupying this spot.
int upstreamPaths[16] 
int visitedWeight 
NavigationPoint VisNoReachPaths[16] 
Paths that are visible but not directly reachable.

Methods

bool Accept (Actor Incoming, Actor Source) [event] 
Accept an actor that has teleported in. Used for random spawning and initial placement of creatures.
describeSpec (int iSpec, out Actor Start, out Actor End, out int ReachFlags, out int Distance) [native, final] 
PlayTeleportEffect (Actor Incoming, bool bOut) 
int SpecialCost (Pawn Seeker) [event] 

Known subclasses

For a list of these grouped by usage with a summary, see Types of Pathnode.