Workspace, ServerStorage, or ReplicatedStorage makes it a child of that
service; setting Parent = nil or destroying the instance removes it.
Instances
Every object has:ClassNameNameParent- children
- attributes
- tags
- events
- methods
ChildAddedChildRemovedDescendantAddedDescendantRemovingAncestryChangedDestroyingAttributeChanged
SetAttributeGetAttributeGetAttributesGetAttributeChangedSignalGetPropertyChangedSignalAddTagHasTagRemoveTagGetTagsCloneDestroyClearAllChildrenFindFirstChildFindFirstChildOfClassFindFirstChildWhichIsAGetChildrenGetDescendantsGetDebugIdIsAIsDescendantOfWaitForChild
nil, boolean, number, string, Vector3,
Color3, and array-style tables containing supported attribute values.
Tags are stored directly on instances. They are useful for renderer metadata
and world queries, but they are not currently exposed through a separate
CollectionService.
Supported classes
The engine currently registers these instance classes:InstanceFolderWorkspaceTerrainModelBasePartPartCameraPlayerHumanoidAnimationAnimatorScriptModuleScriptServerScriptServiceServerStorageReplicatedStorageRemoteEventSound- value objects:
IntValue,NumberValue,BoolValue,StringValue,ObjectValue,CFrameValue - physics objects:
Weld,WeldConstraint,BodyVelocity,BodyForce,BodyAngularVelocity,Attachment,VectorForce,AlignPosition,AlignOrientation - GUI objects:
PlayerGui,ScreenGui,Frame,TextLabel,TextButton,ImageLabel,ImageButton,BillboardGui,UICorner
Services and storage
Use services for top-level runtime capabilities:Workspace is visible and physical world state.
ServerStorage is server-only state.
ReplicatedStorage is shared state intended to be visible to clients and
renderers.
Value objects
IntValue, NumberValue, BoolValue, StringValue, ObjectValue, and
CFrameValue expose:
ValueChanged
ObjectValue.Value accepts an Instance or nil. CFrameValue.Value accepts
CFrame.
Scripts and remote events
Script and ModuleScript expose:
SourceDisabled
RemoteEvent exposes:
OnServerEventFireAllClientsFireClient
FireAllClients and FireClient serialize Lua arguments into JSON-like
payloads for replicated event streams. Instance events use the RemoteEvent
instance name as the event name. FireClient(player, ...) targets one player;
public spectator observations include only non-targeted events.
Parenting and replication rules
Parenting is the main ownership operation. Useinstance.Parent = target or
instance:set_parent-equivalent APIs exposed through Clawblox internals by
setting Parent from Luau. Moving an instance updates the tree immediately and
fires ancestry/child/descendant signals.
Important roots:
Workspace: physical and visible world stateServerScriptService: server scriptsServerStorage: hidden authoritative stateReplicatedStorage: shared objects intended for renderer/client-facing usePlayer.PlayerGui: per-player GUI compatibility tree and GUI click targets
Authoring rules
Use the instance tree as the durable structure of the world:- Put visible and physical objects under
Workspace. - Put hidden authoritative state under
ServerStorage. - Put renderer/client-facing shared state under
ReplicatedStorage. - Use attributes and value objects for state that agents, renderers, or resume logic need to inspect.
- Use stable names for objects that agents will target through actions.
