Show raw api
{
"functions": [
{
"name": "Init",
"desc": "Initializes the PlayerDataStoreService. Should be done via [ServiceBag.Init].",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "serviceBag",
"desc": "",
"lua_type": "ServiceBag"
}
],
"returns": [],
"function_type": "static",
"source": {
"line": 45,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "Start",
"desc": "Initializes the datastore service for players. Should be done via [ServiceBag.Start].",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
}
],
"returns": [],
"function_type": "static",
"source": {
"line": 66,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "SetDataStoreName",
"desc": "Sets the name for the datastore to retrieve.\n\n:::info\nMust be done before start and after init.\n:::",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "dataStoreName",
"desc": "",
"lua_type": "string"
}
],
"returns": [],
"function_type": "static",
"source": {
"line": 80,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "SetDataStoreScope",
"desc": "Sets the scope for the datastore to retrieve.\n\n:::info\nMust be done before start and after init.\n:::",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "dataStoreScope",
"desc": "",
"lua_type": "string"
}
],
"returns": [],
"function_type": "static",
"source": {
"line": 97,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "SetLoadRetryOptions",
"desc": "Overrides the load retry backoff on every player datastore. See\n[PlayerDataStoreManager.SetLoadRetryOptions] -- this is what decides how long a player waits on a\nlock held by a dead server before it is stolen.\n\n:::info\nMust be done before start and after init.\n:::",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "options",
"desc": "",
"lua_type": "RetryOptions"
}
],
"returns": [],
"function_type": "static",
"source": {
"line": 116,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "SetAutoSaveTimeSeconds",
"desc": "Sets the autosave interval on every player datastore. See\n[PlayerDataStoreManager.SetAutoSaveTimeSeconds].\n\n:::info\nMust be done before start and after init.\n:::",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "autoSaveTimeSeconds",
"desc": "",
"lua_type": "number?"
}
],
"returns": [],
"function_type": "static",
"source": {
"line": 137,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "SetSessionMessagingCloseDelaySeconds",
"desc": "Sets the post-graceful-close replication delay on every player datastore. See\n[PlayerDataStoreManager.SetSessionMessagingCloseDelaySeconds].\n\n:::info\nMust be done before start and after init.\n:::",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "seconds",
"desc": "",
"lua_type": "number"
}
],
"returns": [],
"function_type": "static",
"source": {
"line": 156,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "SetRobloxDataStore",
"desc": "Injects the underlying datastore the manager wraps, instead of resolving a real one. Accepts\na real datastore or a [DataStoreMock]. Intended for testing; must be called before the manager\nis first built.",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "robloxDataStore",
"desc": "",
"lua_type": "DataStore | DataStoreMock"
}
],
"returns": [],
"function_type": "static",
"source": {
"line": 171,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "PromiseDataStore",
"desc": "Gets the datastore for the player.\n\n:::tip\nIf you get the datastore by UserId, be sure to call datastore:PromiseCloseSession()\nwhen done to avoid session leaks.\n:::",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "player",
"desc": "",
"lua_type": "Player | number"
}
],
"returns": [
{
"desc": "",
"lua_type": "Promise<DataStore>"
}
],
"function_type": "static",
"source": {
"line": 189,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "PromiseDataStoreHandle",
"desc": "Borrows the player's [DataStore] as a [PlayerDataStoreHandle], which releases the session when\ndestroyed. Prefer this over [PlayerDataStoreService.PromiseDataStore] when acting on a player by\nuserId, since it is what makes the release hard to forget -- see [PlayerDataStoreHandle].",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "playerOrUserId",
"desc": "",
"lua_type": "Player | number"
}
],
"returns": [
{
"desc": "",
"lua_type": "Promise<PlayerDataStoreHandle>"
}
],
"function_type": "static",
"source": {
"line": 206,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "PromiseSessionClosed",
"desc": "Resolves once any removal in flight for this player has saved and closed their session -- see\n[PlayerDataStoreManager.PromiseSessionClosed].",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "playerOrUserId",
"desc": "",
"lua_type": "Player | number"
}
],
"returns": [
{
"desc": "",
"lua_type": "Promise<()>"
}
],
"function_type": "static",
"source": {
"line": 222,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "PromiseAddRemovingCallback",
"desc": "Adds a removing callback to the manager.",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService"
},
{
"name": "callback",
"desc": "May return a promise",
"lua_type": "function"
}
],
"returns": [
{
"desc": "",
"lua_type": "Promise"
}
],
"function_type": "static",
"source": {
"line": 236,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
},
{
"name": "PromiseManager",
"desc": "Retrieves the manager",
"params": [
{
"name": "self",
"desc": "",
"lua_type": "PlayerDataStoreService\n"
}
],
"returns": [
{
"desc": "",
"lua_type": "Promise<PlayerDataStoreManager>"
}
],
"function_type": "static",
"source": {
"line": 249,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
}
],
"properties": [],
"types": [],
"name": "PlayerDataStoreService",
"desc": "Centralized service using serviceBag. This will let other packages work with a single player datastore service.",
"realm": [
"Server"
],
"source": {
"line": 8,
"path": "src/datastore/src/Server/PlayerDataStoreService.lua"
}
}