Roblox Wiki
Advertisement
Roblox Wiki
Light service icon

A service is a top-level singleton, i.e., a class that can only be instantiated once and its instance is always parented to DataModel. In Lua, service instances can be retrieved by the GetService method. Like instances, they provide interfaces in the form of members, but usually also act as containers. Services are the highest level of instances visible in the Explorer. A list of services can be found here.

Visible services[]

Some services are always shown in Explorer:

Workspace light iconWorkspace dark iconWorkspace
A service that serves as a container for parts which will be rendered. Physics is applied to parts. Each client has its own Camera light iconCamera dark iconCamera instance representing the view which is not replicated and can only be manipulated from the client.
Players light iconPlayers dark iconPlayers
A service that serves as a container for Player light iconPlayer dark iconPlayer instances, each of which represents a client.
Lighting light iconLighting dark iconLighting
A service that serves as an interface for the lighting.
MaterialService light iconMaterialService dark iconMaterialService
A service that serves as a container for custom materials (MaterialVariant light iconMaterialVariant dark iconMaterialVariant instances).
ReplicatedStorage light iconReplicatedStorage dark iconReplicatedStorage
A service that serves as a container for instances which will be shared with clients. Unlike Workspace, parts are not rendered and physics does not occur.
ReplicatedFirst light iconReplicatedFirst dark iconReplicatedFirst
A service that serves as a container for instances which are replicated to the client first before other instances. Scripts will run here. It is often used for loading screens.
ServerStorage light iconServerStorage dark iconServerStorage
A service that serves as a container for instances which will not be shared with clients.
ServerScriptService light iconServerScriptService dark iconServerScriptService
A service that serves as a container for instances which will not be shared with clients. Scripts will run here.
StarterGui light iconStarterGui dark iconStarterGui
A service that serves as a container primarily for GUI instances. ScreenGui light iconScreenGui dark iconScreenGui instances parented to this service are rendered in Roblox Studio, along with GUI elements that are descendants of the ScreenGui instance. When a user spawns or respawns, instances are copied to PlayerGui light iconPlayerGui dark iconPlayerGui. Performance-wise, it is recommended to not use this service and instead copy GUI instances from the client to avoid replication to server and ultimately to other clients.[1]
StarterPack light iconStarterPack dark iconStarterPack
A service that serves as a container primarily for Tool light iconTool dark iconTool instances, which will be copied to Backpack light iconBackpack dark iconBackpack once the user spawns and every time the user respawns.
StarterPlayer light iconStarterPlayer dark iconStarterPlayer
A service that holds two containers: StarterCharacterScripts light iconStarterCharacterScripts dark iconStarterCharacterScripts and StarterPlayerScripts light iconStarterPlayerScripts dark iconStarterPlayerScripts. Instances under StarterCharacterScripts are copied to the user's character whenever the user spawns and are deleted when the user is respawning, while instances under StarterPlayerScripts are copied to PlayerScripts light iconPlayerScripts dark iconPlayerScripts which do not become deleted every time the character spawns. Scripts will also run in PlayerScripts. If a Model light iconModel dark iconModel instance named "StarterCharacter" is parented to this service, it is used to spawn a user's character instead of the avatar. Similarly, if a Humanoid light iconHumanoid dark iconHumanoid instance named "StarterHumanoid" is parented, the instance is copied to the character instead of the default Humanoid.

Optional services[]

These services are not visible by default but can be obtained by the Service tool:

Teams light iconTeams dark iconTeams
A service that serves as a container for Team light iconTeam dark iconTeam instances.
Chat light iconChat dark iconChat
A service that serves as an interface for the in-game chat, chat filter, and bubble chat, as well as for displaying text over characters and parts.
LocalizationService light iconLocalizationService dark iconLocalizationService
A service that serves both as an interface for automated translation and as a container for LocalizationTable light iconLocalizationTable dark iconLocalizationTable instances.
TestService light iconTestService dark iconTestService
A service that is designed for Roblox to run analytical tests on the engine. The service also provides an interface for facilitating running tests on a place as well as controlling run time properties of the data model in Roblox Studio, and also acts as a container for scripts which can be executed via TestService light iconTestService dark iconTestService:Run; however, it is recommended to run (F8) an instance of the data model before calling the method to avoid changes on the main environment. TestService light iconTestService dark iconTestService.ExecuteWithStudioRun also automatically execute the scripts when the data model is run.
VoiceChatService light iconVoiceChatService dark iconVoiceChatService
A service that serves as an interface for voice chat.

Interface services[]

Some other services which are not visible have interfaces that extend the functionality of a place and are designed to be used by scripts.

Light service iconDark service iconRunService
A service that serves as an interface for run time properties and Task Scheduler events. It is primarily used to implement loops based on render stepping.
Debris light iconDebris dark iconDebris
A service that serves as an interface for scheduling removal of certain instances. It is primarily used for clearing unwanted instances in the data model that would otherwise remain.
Light service iconDark service iconMarketplaceService
A service that serves as an interface for prompting purchases, retrieving product information of assets, developer products, passes and bundles and determining the user's ownership of items of any of those types. This service is primarily used for monetization.
HttpService light iconHttpService dark iconHttpService
A service that serves as an interface for HTTP requests and exposes methods for manipulating JSON data. HTTP requests are blocked by default (including requests made by plugins) and can be enabled through HttpService light iconHttpService dark iconHttpService.HttpEnabled. HTTP requests are primarily used for external web services. However, HTTP requests cannot be made to any Roblox website.
Light service iconDark service iconCollectionService
A service that serves as an interface for tags used to group instances. It is primarily used for designating a custom class of certain instances, such as parts that can kill a character upon touching which is handled by a single script.
GroupService light iconGroupService dark iconGroupService
A service that serves as an interface for retrieving group information. It is primarily used for assigning users depending on if they are an ally or enemy of a group.

Cloud services[]

Certain services provide interfaces for manipulating or communication of data outside a server within an experience, known as cloud services. They have a corresponding Open Cloud API designed for third-party programs, allowing them to manipulate the data within the experience rather than from Roblox Studio.

Light service iconDark service iconDataStoreService
A service that serves as an interface for data stores which are used for storing persistent data that can be accessed from all places within an experience. Data stores are primarily used for storing player data.
MemoryStoreService light iconMemoryStoreService dark iconMemoryStoreService
A service that serves as an interface for memory stores which are used for storing data that rapidly changes. Unlike data stores, memory stores are faster to access and they store data temporarily within a certain lifetime. Memory stores are primarily used for matchmaking and leaderboards, as well as caches for persistent data.
MessagingService light iconMessagingService dark iconMessagingService
A service that serves as an interface for cross-server communication. It is primarily used for global announcements.

Special services[]

These services serve merely as methods for specific purposes, i.e., generally not suitable for implementing other systems but still can be used in a system.

Light service iconDark service iconTweenService
A service that serves as an interface for interpolating properties of instances through Tween light iconTween dark iconTween, which supports many data types: number, boolean, CFrame, Rect, Color3, UDim, UDim2, Vector2, Vector2int16, Vector3, and EnumItem.
UserInputService light iconUserInputService dark iconUserInputService/Light service iconDark service iconContextActionService
These services serve as interfaces for user input. Many properties of user input are accessible by UserInputService while ContextActionService is used to bind user input to functions.
PathfindingService light iconPathfindingService dark iconPathfindingService
A service that serves as an interface for pathfinding.
InsertService light iconInsertService dark iconInsertService
A service that serves as an interface for insertion of instance data which is retrieved from the Roblox platform, such as models or accessories.
Light service iconDark service iconAssetService
A service that serves as an interface for asset related queries.
Light service iconDark service iconContentProvider
A service that serves as an interface for preloading assets.
Light service iconDark service iconPolicyService
A service that serves as an interface for retrieving policy information about a user. It is designed for developers to have their experiences compliant with national regulations for multiple countries.
Light service iconDark service iconStats
A service that serves as an interface for real-time performance information about the current data model, including resources and overall memory consumption.

Internal services[]

There are other services which only serve internally to be used by the engine, meaning that they do not have an interface that can normally be used by scripts. However, core scripts (scripts with elevated thread identity which can only be used by Roblox) can make use of these services. They will not be listed here as they lack official documentation and are subject to change.

References[]


Advertisement