PcoWSkbVqDnWTu_dm2ix
We use cookies on this site to enhance your user experience
Collapse Sidebar

PathfindingService

Show deprecated

PathfindingService

Show deprecated

PathfindingService is used to find paths between two points. These paths make sure that characters can move between the points without running into walls or other obstacles. Paths can be used for both player-controlled characters and non-player characters.

This service has one function, PathfindingService/CreatePath|CreatePath(), which creates a Path object based on various parameters.

See the Articles/Pathfinding|Pathfinding guide for details and examples on using pathfinding in Roblox.

Navigation Mesh

PathfindingService generates a “navigation mesh” over all parts in a place while the game is running. Any path that is created with the service will stay within the mesh. If the geometry of the place changes — for example, if a part is created or a part moves — the navigation mesh will be recalculated.

To see the navigation mesh for a place:

  1. Open the place in Studio.
  2. Navigate to FileSettings….
  3. In the Studio tab, under Visualization, toggle on the Show Navigation Mesh setting. The mesh will then show up in the 3D view.

The purple areas show where a character can walk, while the non-colored areas are considered blocked. Studio also displays arrows on top of the mesh which show where a character would have to jump to reach one part of the mesh from another.

Properties

Inherited from Instance: Show Hide

int

DataCost

[ReadOnly] [NotReplicated]

The cost of saving the instance using data persistence.

Instance

Parent

Determines the hierarchical parent of the Instance.

bool

RobloxLocked

If true, the Instance and its descendants cannot be indexed or edited by a Script or LocalScript and will throw an error if it is attempted.

string

ClassName

[ReadOnly] [NotReplicated]

A read-only string representing the class this Instance belongs to.

string

Name

A non-unique identifier of the Instance.

bool

Archivable

Determines if an Instance can be cloned using /Instance/Clone or saved to file.

Functions

Instance

FindPathAsync ( Vector3 start , Vector3 finish )

[Yields] re-compute a path on the same object if any dynamic changes within the place block the path.">[Deprecated]

Finds a path between the two provided points.

Inherited from Instance: Show Hide

Objects

GetChildren ( )

Returns an array containing all of the Instance's children.

void

Destroy ( )

Sets the Instance/Parent property to nil, locks the Instance/Parent property, disconnects all connections and calls Destroy on all children.

Instance

FindFirstChild ( string name , bool recursive )

Returns the first child of the Instance found with the given name.

RBXScriptSignal

GetPropertyChangedSignal ( string property )

Get an event that fires when a given property of an object changes.

string

GetFullName ( )

Returns a string describing the Instance's ancestry.

Instance

FindFirstChildWhichIsA ( string className , bool recursive )

Returns the first child of the Instance for whom Instance/IsA returns true for the given className.

Array

GetDescendants ( )

[CustomLuaState]

Returns an array containing all of the Instance's descendants.

bool

IsAncestorOf ( Instance descendant )

Returns true if an Instance is an ancestor of the given descendant.

bool

IsDescendantOf ( Instance ancestor )

Returns true if an Instance is a descendant of the given ancestor.

Instance

FindFirstChildOfClass ( string className )

Returns the first child of the Instance whose Instance/ClassName|ClassName is equal to the given className.

Instance

FindFirstAncestorWhichIsA ( string className )

Returns the first ancestor of the Instance for whom Instance/IsA returns true for the given className.

Instance

FindFirstAncestorOfClass ( string className )

Returns the first ancestor of the Instance whose Instance/ClassName is equal to the given className.

Instance

FindFirstAncestor ( string name )

Returns the first ancestor of the Instance whose Instance/Name is equal to the given name.

bool

IsA ( string className )

Returns true if an Instance's class matches or inherits from a given class

Instance

WaitForChild ( string childName , double timeOut )

[CustomLuaState] [CanYield]

Returns the child of the Instance with the given name. If the child does not exist, it will yield the current thread until it does.

string

GetDebugId ( int scopeLength )

[NotBrowsable]

Returns a coded string of the Instances DebugId used internally by Roblox.

Instance

Clone ( )

Create a deep copy of a Roblox instance and descendants where Archivable = true.

void

ClearAllChildren ( )

This function destroys all of an Instance's children.

Events

Inherited from Instance: Show Hide

RBXScriptSignal

DescendantRemoving ( Instance descendant )

Fires immediately before a descendant of the Instance is removed.

RBXScriptSignal

AncestryChanged ( Instance child , Instance parent )

Fires when the Instance/Parent property of the object or one of its ancestors is changed.

RBXScriptSignal

ChildAdded ( Instance child )

Fires when an object is parented to this Instance.

RBXScriptSignal

ChildRemoved ( Instance child )

Fires when a child is removed from this Instance.

RBXScriptSignal

DescendantAdded ( Instance descendant )

Fires when a descendant is added to the Instance.

RBXScriptSignal

Changed ( string property )

Fired immediately after a property of an object changes.