API:Class/Instance

< API:Class(Redirected from Instance)
"Instance" redirects here. For other uses, see Instance (disambiguation).
Abstract: This object is abstract. It cannot be created with Instance.new, and its members are inherited by other classes.

This class is the highest class and has no base class (though technically it does inherit the <<<ROOT>>> class)

Instance is the base class for all classes in the Roblox class hierarchy. Every other class that the Roblox engine defines inherits all of the members of instance. It is not possible to directly create Instance objects.

Instance has a special function called new which is used to create objects via code. This function takes the name of the class as a parameter and returns the created object. Abstract classes and services cannot be created with the Instance.new function.

Example

local part = Instance.new("Part")
print(part.ClassName)
>>Part
 
local decal = Instance.new("Decal")
print(decal.ClassName)
>>Decal

Properties

PropertiesmemberhiddenProperties [toggle]

boolArchivable

Determines if an object can be Clone or saved to file.

|RMD member="API:Class/Instance/Archivable"|Determines if an object can be Clone or saved to file.|/RMD|
stringClassName [readonly]

The unique name of this type of Instance.

|RMD member="API:Class/Instance/ClassName"|The unique name of this type of Instance.|/RMD|
stringName

A non-unique identifier for the object.

|RMD member="API:Class/Instance/Name"|A non-unique identifier for the object.|/RMD|
Ref<Instance>Parent

The hierarchical parent of the object.

|RMD member="API:Class/Instance/Parent"|The hierarchical parent of the object.|/RMD|
intDataCost [RobloxPlaceSecurity] [deprecated] [readonly]

Deprecated. Do not use.

|RMD member="API:Class/Instance/DataCost"|Deprecated. Do not use.|/RMD|
boolRobloxLocked [PluginSecurity]

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

|RMD member="API:Class/Instance/RobloxLocked"|If true, the object and its descendants cannot be indexed or edited by a Script or LocalScript and will throw an error if it is attempted.|/RMD|
boolarchivable [deprecated] [hidden]

Deprecated in favor of Archivable.

|RMD member="API:Class/Instance/archivable"|Deprecated in favor of Archivable.|/RMD|
stringclassName [deprecated] [readonly]

Deprecated in favor of ClassName.

|RMD member="API:Class/Instance/className"|Deprecated in favor of ClassName.|/RMD|
Determines if an object can be Clone or saved to file.
ClassName [readonly]
The unique name of this type of Instance.
A non-unique identifier for the object.
Ref<Instance>
The hierarchical parent of the object.
DataCost [RobloxPlaceSecurity] [deprecated] [readonly]
Deprecated. Do not use.
RobloxLocked [PluginSecurity]
If true, the object and its descendants cannot be indexed or edited by a Script or LocalScript and will throw an error if it is attempted.
archivable [deprecated] [hidden]
Deprecated in favor of Archivable.
className [deprecated] [readonly]
Deprecated in favor of ClassName.

Functions

FunctionsmemberhiddenFunctions [toggle]

voidClearAllChildren ( )

Removes all descendants of the object.

|RMD member="API:Class/Instance/ClearAllChildren"|Removes all descendants of the object.|/RMD|
Ref<Instance>Clone ( )

Returns a copy of the object, including descendants, but only if the object is Archivable.

|RMD member="API:Class/Instance/Clone"|Returns a copy of the object, including descendants, but only if the object is Archivable.|/RMD|
voidDestroy ( )

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

|RMD member="API:Class/Instance/Destroy"|Sets the Parent property to nil, locks the Parent property, disconnects all connections and calls Destroy() on all children.|/RMD|
Ref<Instance>FindFirstAncestor ( string name )

Returns the first ancestor whose Name is equal to name, or nil if none can be found.

|RMD member="API:Class/Instance/FindFirstAncestor"|Returns the first ancestor whose Name is equal to name, or nil if none can be found.|/RMD|
Ref<Instance>FindFirstAncestorOfClass ( string className )

Returns the first ancestor whose ClassName is equal to className, or nil if none can be found.

|RMD member="API:Class/Instance/FindFirstAncestorOfClass"|Returns the first ancestor whose ClassName is equal to className, or nil if none can be found.|/RMD|
Ref<Instance>FindFirstAncestorWhichIsA ( string className )

Returns the first ancestor that inherits the class className, or nil if none can be found.

|RMD member="API:Class/Instance/FindFirstAncestorWhichIsA"|Returns the first ancestor that inherits the class className, or nil if none can be found.|/RMD|
Ref<Instance>FindFirstChild ( string name, bool recursive = false )

Returns the first child found with the given name, or nil if no such child exists. If the optional recursive argument is true, recursively descends the hierarchy while searching rather than only searching the immediate object.

|RMD member="API:Class/Instance/FindFirstChild"|Returns the first child found with the given name, or nil if no such child exists. If the optional recursive argument is true, recursively descends the hierarchy while searching rather than only searching the immediate object.|/RMD|
Ref<Instance>FindFirstChildOfClass ( string className )

Returns the first Instance whose ClassName is equal to className, or nil, if no such object is found with that ClassName.

|RMD member="API:Class/Instance/FindFirstChildOfClass"|Returns the first Instance whose ClassName is equal to className, or nil, if no such object is found with that ClassName.|/RMD|
Ref<Instance>FindFirstChildWhichIsA ( string className, bool recursive = false )

Returns the first child that inherits the class className, or nil if none can be found.

|RMD member="API:Class/Instance/FindFirstChildWhichIsA"|Returns the first child that inherits the class className, or nil if none can be found.|/RMD|
array<Instance>GetChildren ( )

Returns an array of the object's children.

|RMD member="API:Class/Instance/GetChildren"|Returns an array of the object's children.|/RMD|
array<Instance>GetDescendants ( )

Returns an array containing all of the descendants of the instance.

|RMD member="API:Class/Instance/GetDescendants"|Returns an array containing all of the descendants of the instance.|/RMD|
stringGetFullName ( )

Returns a string which shows the object's ancestry chain.

|RMD member="API:Class/Instance/GetFullName"|Returns a string which shows the object's ancestry chain.|/RMD|
RBXScriptSignalGetPropertyChangedSignal ( string property )

Returns a signal that is fired when the specified property is changed on this object.

|RMD member="API:Class/Instance/GetPropertyChangedSignal"|Returns a signal that is fired when the specified property is changed on this object.|/RMD|
boolIsA ( string className )

Returns true if the object is an instance of the given class, or if the object's class inherits from the given class.

|RMD member="API:Class/Instance/IsA"|Returns true if the object is an instance of the given class, or if the object's class inherits from the given class.|/RMD|
boolIsAncestorOf ( Instance descendant )

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

|RMD member="API:Class/Instance/IsAncestorOf"|Returns true if the object is an ancestor of the given descendant.|/RMD|
boolIsDescendantOf ( Instance ancestor )

Returns true if the object is a descendant of the given ancestor.

|RMD member="API:Class/Instance/IsDescendantOf"|Returns true if the object is a descendant of the given ancestor.|/RMD|
Ref<Instance>WaitForChild ( string childName, double timeOut )

Yields the current thread until a child with the given name is found, then returns the child. If the timeOut parameter is specified, this function will time out and return nil if timeOut seconds elapse without the child being found.

|RMD member="API:Class/Instance/WaitForChild"|Yields the current thread until a child with the given name is found, then returns the child.

If the timeOut parameter is specified, this function will time out and return nil if timeOut seconds elapse without the child being found.|/RMD|

stringGetDebugId ( int scopeLength = 4 ) [PluginSecurity] [notbrowsable]

Returns a coded string of the object's DebugId used internally by Roblox.

|RMD member="API:Class/Instance/GetDebugId"|Returns a coded string of the object's DebugId used internally by Roblox.|/RMD|
voidRemove ( ) [deprecated]

Deprecated. Do not use.

|RMD member="API:Class/Instance/Remove"|Deprecated. Do not use.|/RMD|
array<Instance>children ( ) [deprecated]

Deprecated in favor of GetChildren.

|RMD member="API:Class/Instance/children"|Deprecated in favor of GetChildren.|/RMD|
Instanceclone ( ) [deprecated]

Deprecated in favor of Clone.

|RMD member="API:Class/Instance/clone"|Deprecated in favor of Clone.|/RMD|
voiddestroy ( ) [deprecated]

Deprecated in favor of Destroy.

|RMD member="API:Class/Instance/destroy"|Deprecated in favor of Destroy.|/RMD|
InstancefindFirstChild ( string name, bool recursive = false ) [deprecated]

Deprecated in favor of FindFirstChild.

|RMD member="API:Class/Instance/findFirstChild"|Deprecated in favor of FindFirstChild.|/RMD|
array<Instance>getChildren ( ) [deprecated]

Deprecated in favor of GetChildren.

|RMD member="API:Class/Instance/getChildren"|Deprecated in favor of GetChildren.|/RMD|
boolisA ( string className ) [deprecated]

Deprecated in favor of IsA.

|RMD member="API:Class/Instance/isA"|Deprecated in favor of IsA.|/RMD|
boolisDescendantOf ( Instance ancestor ) [deprecated]

Deprecated in favor of IsDescendantOf.

|RMD member="API:Class/Instance/isDescendantOf"|Deprecated in favor of IsDescendantOf.|/RMD|
voidremove ( ) [deprecated]

Deprecated in favor of Remove.

|RMD member="API:Class/Instance/remove"|Deprecated in favor of Remove.|/RMD|
Removes all descendants of the object.
Ref<Instance>
Clone ( )
Returns a copy of the object, including descendants, but only if the object is Archivable.
Sets the Parent property to nil, locks the Parent property, disconnects all connections and calls Destroy() on all children.
Ref<Instance>
Returns the first ancestor whose Name is equal to name, or nil if none can be found.
Ref<Instance>
Returns the first ancestor whose ClassName is equal to className, or nil if none can be found.
Ref<Instance>
Returns the first ancestor that inherits the class className, or nil if none can be found.
Ref<Instance>
FindFirstChild ( string name, bool recursive = false )
Returns the first child found with the given name, or nil if no such child exists. If the optional recursive argument is true, recursively descends the hierarchy while searching rather than only searching the immediate object.
Ref<Instance>
Returns the first Instance whose ClassName is equal to className, or nil, if no such object is found with that ClassName.
Ref<Instance>
FindFirstChildWhichIsA ( string className, bool recursive = false )
Returns the first child that inherits the class className, or nil if none can be found.
array<Instance>
Returns an array of the object's children.
array<Instance>
Returns an array containing all of the descendants of the instance.
Returns a string which shows the object's ancestry chain.
Returns a signal that is fired when the specified property is changed on this object.
IsA ( string className )
Returns true if the object is an instance of the given class, or if the object's class inherits from the given class.
IsAncestorOf ( Instance descendant )
Returns true if the object is an ancestor of the given descendant.
IsDescendantOf ( Instance ancestor )
Returns true if the object is a descendant of the given ancestor.
Ref<Instance>
WaitForChild ( string childName, double timeOut )
Yields the current thread until a child with the given name is found, then returns the child. If the timeOut parameter is specified, this function will time out and return nil if timeOut seconds elapse without the child being found.
GetDebugId ( int scopeLength = 4 ) [PluginSecurity] [notbrowsable]
Returns a coded string of the object's DebugId used internally by Roblox.
Remove ( ) [deprecated]
Deprecated. Do not use.
array<Instance>
children ( ) [deprecated]
Deprecated in favor of GetChildren.
Instance
clone ( ) [deprecated]
Deprecated in favor of Clone.
destroy ( ) [deprecated]
Deprecated in favor of Destroy.
Instance
findFirstChild ( string name, bool recursive = false ) [deprecated]
Deprecated in favor of FindFirstChild.
array<Instance>
getChildren ( ) [deprecated]
Deprecated in favor of GetChildren.
isA ( string className ) [deprecated]
Deprecated in favor of IsA.
isDescendantOf ( Instance ancestor ) [deprecated]
Deprecated in favor of IsDescendantOf.
remove ( ) [deprecated]
Deprecated in favor of Remove.


Events

EventsmemberhiddenEvents [toggle]

AncestryChanged ( Instance child, Instance parent )

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

|RMD member="API:Class/Instance/AncestryChanged"|Fires when the Parent property of the object or one of its ancestors is changed.|/RMD|
Changed ( string property )

Fires after a property of the object changes.

|RMD member="API:Class/Instance/Changed"|Fires after a property of the object changes.|/RMD|
ChildAdded ( Instance child )

Fires when a child is added to the object.

|RMD member="API:Class/Instance/ChildAdded"|Fires when a child is added to the object.|/RMD|
ChildRemoved ( Instance child )

Fires when a child is removed from the object.

|RMD member="API:Class/Instance/ChildRemoved"|Fires when a child is removed from the object.|/RMD|
DescendantAdded ( Instance descendant )

Fires when a descendant is added to the object.

|RMD member="API:Class/Instance/DescendantAdded"|Fires when a descendant is added to the object.|/RMD|
DescendantRemoving ( Instance descendant )

Fires before a descendant of the object is removed.

|RMD member="API:Class/Instance/DescendantRemoving"|Fires before a descendant of the object is removed.|/RMD|
childAdded ( Instance child ) [deprecated]

Deprecated in favor of ChildAdded.

|RMD member="API:Class/Instance/childAdded"|Deprecated in favor of ChildAdded.|/RMD|
AncestryChanged ( Instance child, Instance parent )
Fires when the Parent property of the object or one of its ancestors is changed.
Changed ( string property )
Fires after a property of the object changes.
ChildAdded ( Instance child )
Fires when a child is added to the object.
ChildRemoved ( Instance child )
Fires when a child is removed from the object.
DescendantAdded ( Instance descendant )
Fires when a descendant is added to the object.
DescendantRemoving ( Instance descendant )
Fires before a descendant of the object is removed.
childAdded ( Instance child ) [deprecated]
Deprecated in favor of ChildAdded.

Inherited Classes

Accoutrement icon.pngAccoutrement
Robux.pngAdService
InternalClass.pngAdvancedDragger
InternalClass.pngAnalyticsService
Animation icon.pngAnimation
Animation icon.pngAnimationController
Animation icon.pngAnimationTrack
Animation icon.pngAnimator
Cloud.pngAssetService
ExplorerImageIndex81.pngAttachment
BadgeService.pngBadgeService
Object Icon.pngBasePlayerGui
InternalClass.pngBinaryStringValue
ExplorerImageIndex67.pngBindableEvent
Function Icon.pngBindableFunction
Object Icon.pngBodyMover
Value icon.pngBoolValue
Value icon.pngBrickColorValue
Imagelabel icon.pngButton
Value icon.pngCFrameValue
InternalClass.pngCacheableContentProvider
Camera icon.pngCamera
ExplorerImageIndex69.pngChangeHistoryService
Object Icon.pngCharacterAppearance
Message icon.pngChat
Clickdetector icon.pngClickDetector
CollectionService.pngCollectionService
Value icon.pngColor3Value
Configuration icon.pngConfiguration
Object Icon.pngConstraint
Cloud.pngContentProvider
Clickdetector icon.pngContextActionService
Object Icon.pngController
InternalClass.pngControllerService
InternalClass.pngCookiesService
Value icon.pngCustomEvent
Value icon.pngCustomEventReceiver
Object Icon.pngDataModelMesh
ExplorerImageIndex69.pngDataStoreService
Debris icon.pngDebris
Configuration icon.pngDebugSettings
BreakpointIcon.pngDebuggerBreakpoint
DebuggerManager.pngDebuggerManager
DebuggerWatch.pngDebuggerWatch
Dialog icon.pngDialog
DialogChoice icon.pngDialogChoice
Value icon.pngDoubleConstrainedValue
Clickdetector icon.pngDragger
Explosion icon.pngExplosion
Object Icon.pngFaceInstance
Object Icon.pngFeature
Fire icon.pngFire
InternalClass.pngFlagStandService
InternalClass.pngFlyweightService
ExplorerImageIndex77.pngFolder
Forcefield icon.pngForceField
InternalClass.pngFriendService
InternalClass.pngFunctionalTest
Workspace icon.pngGamePassService
Configuration icon.pngGameSettings
InternalClass.pngGamepadService
InternalClass.pngGeometry
ExplorerImageIndex69.pngGlobalDataStore
GoogleAnalyticsConfiguration.pngGoogleAnalyticsConfiguration
Players icon.pngGroupService
Object Icon.pngGuiBase
Object Icon.pngGuiItem
ExplorerImageIndex27.pngGuiService
InternalClass.pngGuidRegistryService
UserInputService.pngHapticService
InternalClass.pngHttpRbxApiService
HttpService.pngHttpService
Humanoid icon.pngHumanoid
Clickdetector icon.pngInputObject
Cloud.pngInsertService
InternalClass.pngInstancePacketCache
Value icon.pngIntConstrainedValue
Value icon.pngIntValue
Object Icon.pngJointInstance
Weld icon.pngJointsService
Animation icon.pngKeyframe
Animation icon.pngKeyframeSequence
Animation icon.pngKeyframeSequenceProvider
Object Icon.pngLight
Lighting icon.pngLighting
InternalClass.pngLobbyService
InternalClass.pngLocalWorkspace
ExplorerImageIndex92.pngLocalizationService
ExplorerImageIndex76.pngLocalizationTable
LogService.pngLogService
InternalClass.pngLoginService
Configuration icon.pngLuaSettings
Object Icon.pngLuaSourceContainer
InternalClass.pngLuaWebService
MarketplaceService.pngMarketplaceService
Message icon.pngMessage
Mouse.pngMouse
NavPath.pngNavigationPath
Forcefield icon.pngNavigationService
NavWaypoint.pngNavigationWaypoint
NetworkReplicator icon.pngNetworkMarker
Object Icon.pngNetworkPeer
Object Icon.pngNetworkReplicator
Configuration icon.pngNetworkSettings
InternalClass.pngNotificationService
Value icon.pngNumberValue
Value icon.pngObjectValue
InternalClass.pngOneQuarterClusterPacketCacheBase
Object Icon.pngPVInstance
Object Icon.pngPages
InternalClass.pngPartOperationAsset
ExplorerImageIndex80.pngParticleEmitter
NavPath.pngPath
Forcefield icon.pngPathfindingService
InternalClass.pngPersonalServerService
InternalClass.pngPhysicsPacketCache
Debris icon.pngPhysicsService
Configuration icon.pngPhysicsSettings
Player icon.pngPlayer
ExplorerImageIndex78.pngPlayerScripts
Players icon.pngPlayers
Plugin.pngPlugin
Plugin.pngPluginManager
PointsIcon.pngPointsService
Animation icon.pngPose
Object Icon.pngPostEffect
Value icon.pngRayValue
Pages.pngReflectionMetadata
Pages.pngReflectionMetadataCallbacks
Pages.pngReflectionMetadataClasses
Pages.pngReflectionMetadataEnums
Pages.pngReflectionMetadataEvents
Pages.pngReflectionMetadataFunctions
Object Icon.pngReflectionMetadataItem
Pages.pngReflectionMetadataProperties
Pages.pngReflectionMetadataYieldFunctions
ExplorerImageIndex75.pngRemoteEvent
ExplorerImageIndex74.pngRemoteFunction
InternalClass.pngRenderHooksService
Configuration icon.pngRenderSettings
ExplorerImageIndex70.pngReplicatedFirst
ExplorerImageIndex70.pngReplicatedStorage
InternalClass.pngRobloxReplicatedStorage
RunService.pngRunService
InternalClass.pngRuntimeScriptService
ExplorerImageIndex78.pngScriptContext
ExplorerImageIndex76.pngScriptDebugger
InternalClass.pngScriptService
Slectionbox icon.pngSelection
ExplorerImageIndex71.pngServerScriptService
ExplorerImageIndex69.pngServerStorage
Object Icon.pngServiceProvider
Sky icon.pngSky
Smoke icon.pngSmoke
Sound icon.pngSound
Object Icon.pngSoundEffect
ExplorerImageIndex85.pngSoundGroup
Soundservice icon.pngSoundService
Sparkles icon.pngSparkles
InternalClass.pngSpawnerService
Starterpack icon.pngStarterGear
ExplorerImageIndex79.pngStarterPlayer
ExplorerImageIndex78.pngStarterPlayerScripts
Stats.pngStats
InternalClass.pngStatsItem
Value icon.pngStringValue
Configuration icon.pngStudio
Configuration icon.pngTaskScheduler
Team icon.pngTeam
Teams icon.pngTeams
ExplorerImageIndex70.pngTeleportService
Terrain icon.pngTerrainRegion
TestService icon.pngTestService
Textlabel icon.pngTextFilterResult
Textlabel icon.pngTextService
InternalClass.pngThirdPartyUserService
InternalClass.pngTimerService
ToolbarIcon.pngToolbar
InternalClass.pngTouchInputService
InternalClass.pngTouchTransmitter
ExplorerImageIndex93.pngTrail
Object Icon.pngTweenBase
Tween.pngTweenService
Object Icon.pngUIBase
Configuration icon.pngUserGameSettings
UserInputService.pngUserInputService
VRService.pngVRService
Value icon.pngVector3Value
InternalClass.pngVirtualUser
InternalClass.pngVisit
ExplorerImageIndex94.pngWeldConstraint
|RMD member="API:Class/Instance"|Instance is the base class for all classes in the Roblox class hierarchy. Every other class that the Roblox engine defines inherits all of the members of instance. It is not possible to directly create Instance objects. Instance has a special function called new which is used to create objects via code. This function takes the name of the class as a parameter and returns the created object. Abstract classes and services cannot be created with the Instance.new function. ==Example==
local part = Instance.new("Part")
print(part.ClassName)
>>Part
 
local decal = Instance.new("Decal")
print(decal.ClassName)
>>Decal
|/RMD|