| FindFirstChild(name: string,recursive: boolean?):Instance? | name: string, recursive: boolean? | Instance? | Returns the first child of the Instance with the given name, or nil if no such child exists. Searches descendants too if recursive is true. |
| FindFirstChildOfClass(className: string):Instance? | className: string | Instance? | Returns the first child of the Instance whose ClassName equals the given className, or nil if none exists. |
| FindFirstChildWhichIsA(className: string,recursive: boolean?):Instance? | className: string, recursive: boolean? | Instance? | Returns the first child whose class matches or inherits from className (unlike FindFirstChildOfClass, which requires an exact match), or nil if none exists. |
| FindFirstAncestor(name: string):Instance? | name: string | Instance? | Returns the first ancestor of the Instance whose Name equals the given name, or nil if none exists. |
| FindFirstAncestorOfClass(className: string):Instance? | className: string | Instance? | Returns the first ancestor of the Instance whose ClassName equals the given className, or nil if none exists. |
| WaitForChild(childName: string,timeOut: number?):Instance? | childName: string, timeOut: number? | Instance? | Yields the current thread until a child with the given name exists, then returns it. If timeOut is given and exceeded, returns nil instead of continuing to wait. |
| GetChildren():{Instance} | Void | {Instance} | Returns an array containing all of the Instance's direct children. |
| GetDescendants():{Instance} | Void | {Instance} | Returns an array containing all of the Instance's descendants. |
| IsDescendantOf(ancestor: Instance):boolean | ancestor: Instance | boolean | Returns true if the Instance is a descendant of the given ancestor. |
| IsAncestorOf(descendant: Instance):boolean | descendant: Instance | boolean | Returns true if the Instance is an ancestor of the given descendant. |
| GetFullName():string | Void | string | Returns a string describing the Instance's ancestry, formed by concatenating Names with periods. |
| Clone():Instance? | Void | Instance? | Creates a copy of the Instance and all of its descendants, ignoring any that are not Archivable. Returns nil if the Instance itself is not Archivable. |
| Destroy():void | Void | void | Sets Parent to nil, locks the Parent property, disconnects all connections, and calls Destroy() on all children. |
| IsA(className: string):boolean | className: string | boolean | Returns true if the Instance's class matches or inherits from the given class. |
| SetAttribute(attribute: string,value: Variant):void | attribute: string, value: Variant | void | Sets the attribute with the given name to the given value. |
| GetAttribute(attribute: string):Variant | attribute: string | Variant | Returns the value assigned to the given attribute name, or nil if not set. |
| GetAttributes():{[string]: Variant} | Void | {[string]: Variant} | Returns a dictionary of every attribute set on the Instance, keyed by attribute name. |
| GetAttributeChangedSignal(attribute: string):RBXScriptSignal | attribute: string | RBXScriptSignal | Returns an event that fires whenever the given attribute's value changes. |
| GetPropertyChangedSignal(property: string):RBXScriptSignal | property: string | RBXScriptSignal | Returns an event that fires whenever the given property changes, useful for properties (like Position on a BasePart) that don't have their own dedicated event. |