Reference API Roblox

Engine API

Website

Related

Reference API Roblox

StarterPlayer

A service which allows the defaults of properties in the Player object to be set.

This class is not creatable. Instances of this class cannot be created with Instance.new.
This class is a service. It is a singleton that may be acquired with GetService.
Tags: [NotCreatable, Service]

Member index 44

HistoryMember
553AutoJumpEnabled: bool
589AvatarJointUpgrade: AvatarJointUpgrade
553CameraMaxZoomDistance: float
553CameraMinZoomDistance: float
553CameraMode: CameraMode
553CharacterJumpHeight: float
553CharacterJumpPower: float
553CharacterMaxSlopeAngle: float
553CharacterUseJumpPower: bool
553CharacterWalkSpeed: float
553DevCameraOcclusionMode: DevCameraOcclusionMode
553DevComputerCameraMovementMode: DevComputerCameraMovementMode
553DevComputerMovementMode: DevComputerMovementMode
553DevTouchCameraMovementMode: DevTouchCameraMovementMode
553DevTouchMovementMode: DevTouchMovementMode
553EnableDynamicHeads: LoadDynamicHeads
578EnableMouseLockOption: bool
553HealthDisplayDistance: float
553LoadCharacterAppearance: bool
553LoadCharacterLayeredClothing : LoadCharacterLayeredClothing
603LuaCharacterController: CharacterControlMode
553NameDisplayDistance: float
553UserEmotesEnabled: bool
573ClearDefaults(): null
inherited from Instance
553Archivable: bool
635Capabilities: SecurityCapabilities
553ClassName: string
553Name: string
553Parent: Instance
635Sandboxed: bool
616UniqueId: UniqueId
553className: string
576AddTag(tag: string): null
573ClearAllChildren(): null
462Clone(): Instance
573Destroy(): null
486FindFirstAncestor(name: string): Instance
486FindFirstAncestorOfClass(className: string): Instance
486FindFirstAncestorWhichIsA(className: string): Instance
486FindFirstChild(name: string, recursive: bool = false): Instance
486FindFirstChildOfClass(className: string): Instance
486FindFirstChildWhichIsA(className: string, recursive: bool = false): Instance
486FindFirstDescendant(name: string): Instance
563GetActor(): Actor
486GetAttribute(attribute: string): Variant
462GetAttributeChangedSignal(attribute: string): RBXScriptSignal
631GetAttributes(): Dictionary
486GetChildren(): Objects
462GetDebugId(scopeLength: int = 4): string
486GetDescendants(): Array
486GetFullName(): string
462GetPropertyChangedSignal(property: string): RBXScriptSignal
641GetStyled(name: string): Variant
576GetTags(): Array
576HasTag(tag: string): bool
486IsA(className: string): bool
486IsAncestorOf(descendant: Instance): bool
486IsDescendantOf(ancestor: Instance): bool
580IsPropertyModified(name: string): bool
573Remove(): null
576RemoveTag(tag: string): null
580ResetPropertyToDefault(name: string): null
573SetAttribute(attribute: string, value: Variant): null
462WaitForChild(childName: string, timeOut: double): Instance
553children(): Objects
553clone(): Instance
573destroy(): null
553findFirstChild(name: string, recursive: bool = false): Instance
553getChildren(): Objects
462isA(className: string): bool
553isDescendantOf(ancestor: Instance): bool
573remove(): null
462AncestryChanged(child: Instance, parent: Instance)
462AttributeChanged(attribute: string)
462Changed(property: string)
462ChildAdded(child: Instance)
462ChildRemoved(child: Instance)
462DescendantAdded(descendant: Instance)
462DescendantRemoving(descendant: Instance)
500Destroying()
553childAdded(child: Instance)

Removed member index 12

HistoryMember
608AnimationCompositorMode: AnimationCompositorMode
620DeathStyle: DeathStyle
608HumanoidStateMachineMode: HumanoidStateMachineMode
290ScreenOrientation: ScreenOrientation
290ScreenOrientationChanged(newOrientation: ScreenOrientation, fromSensor: bool)

Description

A service which allows the defaults of properties in the Player object to be set. When a player enters the server, each property of the player object is set to the current value of the corresponding property in StarterPlayer.

Additionally, you may add four objects to this service:

  • A StarterPlayerScripts instance with scripts that run once for each player.
  • A StarterCharacterScripts instance with scripts to add to each player's character every time they spawn.
  • A Humanoid instance named StarterHumanoid which will be used as the default humanoid for each player's character.
  • A Model instance named StarterCharacter which will be used as the character model for all players.

History 235

Members 44

AutoJumpEnabled

TypeDefault
booltrue

The AutoJumpEnabled property sets whether the character will automatically jump when hitting an obstacle on a mobile device.

This property is copied from the StarterPlayer to a Player when they join the game. Following that. the value of this property is copied to Humanoid.AutoJumpEnabled property of the character's Humanoid on spawn. In other words, it is possible to set the auto-jump behavior on a per-character, per-player and per-game basis using these three properties.

History 4

AvatarJointUpgrade

TypeDefault
AvatarJointUpgradeDefault
This property is not replicated. Its interface does not cross the network boundary.
This property is not browsable. It is not visible in Studio's object browser.

History 5

Tags: [NotReplicated, NotBrowsable]

CameraMaxZoomDistance

TypeDefault
float400

The CameraMaxZoomDistance property sets the maximum distance in studs the camera can be from the character with the default cameras.

This property sets the default value of Player.CameraMaxZoomDistance for each player who joins the game. If this value is set to a lower value than StarterPlayer.CameraMinZoomDistance it will be increased to CameraMinZoomDistance.

History 4

CameraMinZoomDistance

TypeDefault
float0.5

The CameraMinZoonDistance property sets the minimum distance in studs the camera can be from the character with the default cameras.

This property sets the default value of Player.CameraMinZoomDistance for each player who joins the game. If this value is set to a higher value than StarterPlayer.CameraMaxZoomDistance it will be decreased to CameraMaxZoomDistance.

History 4

CameraMode

TypeDefault
CameraModeClassic

Sets the default value for Player.CameraMode for each player in the game. The camera has two modes:

First Person

In first person mode, the player's camera is zoomed all the way in. Unless there is a visible GUI present with the GuiButton.Modal property set to true, the mouse will be locked and the user's camera will turn as the mouse moves.

Third Person

In third person mode (default), the character can be seen in the camera. While in third person mode on Roblox:

  • You may right-click and drag to rotate your camera, or use the arrow keys at the bottom right-hand corner of the screen.
  • When you move your mouse, your camera does not change (unless you move the mouse to the end of the screen).
  • When you press any of the arrow keys, the user's character will face in the corresponding arrow key's direction.
  • You can zoom in and out freely.

History 4

CharacterJumpHeight

TypeDefault
float7.19999981

CharacterJumpHeight determines the starting value of Humanoid.JumpHeight for a player's Character. The value of this property defaults to 7.2 studs.

This property is only visible in the Properties window If StarterPlayer.CharacterUseJumpPower is set to false, as it would not be relevant otherwise.

Since this property is only relevant for characters being spawned in the future, changing it will not change any existing player characters. Changes to this property will only take effect when a player respawns.

History 11

CharacterJumpPower

TypeDefault
float50

CharacterJumpPower determines the starting value of Humanoid.JumpPower for a player's Character. The value of this property defaults to 50 and when applied to the player's Humanoid it will be constrained between 0 and 1000.

This property is only visible in the Properties window If StarterPlayer.CharacterUseJumpPower is set to true, as it would not be relevant otherwise.

Since this property is only relevant for characters being spawned in the future, changing it will not change any existing player characters. Changes to this property will only take effect when a player respawns.

History 11

CharacterMaxSlopeAngle

TypeDefault
float89

CharacterMaxSlopeAngle determines the starting value of Humanoid.MaxSlopeAngle for a player's Character. It defaults to 89°, so humanoids can climb pretty much any slope they want by default. When applied to the player's Humanoid it will be constrained between 0 and 89.

Since this property is only relevant for characters being spawned in the future, changing it will not change any existing player characters. Changes to this property will only take effect when a player respawns.

History 10

CharacterUseJumpPower

TypeDefault
booltrue

CharacterUseJumpPower determines the starting value of Humanoid.UseJumpPower for a player's Character. Toggling it will change which property is visible in the properties window: CharacterJumpHeight (false) or StarterPlayer.CharacterJumpPower (true). Defaults to true.

Since this property is only relevant for characters being spawned in the future, changing it will not change any existing player characters. Changes to this property will only take effect when a player respawns.

History 11

CharacterWalkSpeed

TypeDefault
float16

CharacterWalkSpeed determines the starting value of Humanoid.WalkSpeed for a player's Character. This property defaults to 16.

Since this property is only relevant for characters being spawned in the future, changing it will not change any existing player characters. Changes to this property will only take effect when a player respawns.

History 10

ClearDefaults

Parameters (0)
No parameters.
Returns (1)
null

History 3

DevCameraOcclusionMode

TypeDefault
DevCameraOcclusionModeZoom

Defines how the default camera scripts handle objects between the camera and the camera subject. Applies to all players as they join the experience and can't be changed for individual players.

The default value is Zoom (0). See DevCameraOcclusionMode for a list of available modes.

History 4

DevComputerCameraMovementMode

TypeDefault
DevComputerCameraMovementModeUserChoice

The DevComputerCameraMovementMode property lets the developer overwrite the player's camera mode if the player is on a computer.

This is the default property for players joining the game. It can be changed for individual players by settings the Player.DevComputerCameraMode.

If set to UserChoice then the player's camera movement mode will be determined by whatever the player set in the game settings. Otherwise, the mode will be set based on this property.

See DevComputerCameraMovementMode for the different camera modes available.

This property has no affect on players not on a computer.

History 4

DevComputerMovementMode

TypeDefault
DevComputerMovementModeUserChoice

The DevComputerMovementMove property lets the developer overwrite the player's movement mode if the player is on a computer.

This is the default property for players joining the game. It can be changed for individual players by settings the Player.DevComputerMovementMode.

If set to UserChoice then the player's movement mode will be determined by whatever the player set in the game settings. Otherwise, the mode will be set based on this property.

See DevComputerMovementMode for the different movement modes available. Lets developer overwrite the player's movement mode if the player is on a computer.

This property has no affect on players not on a computer.

History 4

DevTouchCameraMovementMode

TypeDefault
DevTouchCameraMovementModeUserChoice

The DevTouchCameraMovementMode property lets the developer overwrite the player's camera mode if the player is on a touch device.

This is the default property for players joining the game. It can be changed for individual players by settings the Player.DevTouchCameraMode.

If set to UserChoice then the player's camera movement mode will be determined by whatever the player set in the game settings. Otherwise, the mode will be set based on this property.

See DevTouchCameraMovementMode for the different camera modes available.

This property has no affect players not on a mobile device.

History 4

DevTouchMovementMode

TypeDefault
DevTouchMovementModeUserChoice

The DevTouchMovementMode property lets the developer overwrite the player's movement mode if the player is on a touch device.

This is the default property for players joining the game. It can be changed for individual players by settings the Player.DevTouchMovementMode.

If set to UserChoice then the player's movement mode will be determined by whatever the player set in the game settings. Otherwise, the mode will be set based on this property.

See DevTouchMovementMode for the different movement modes available. Lets developer overwrite the player's movement mode if the player is on a touch device.

This property has no affect on players not on a touch-enabled device.

History 4

EnableDynamicHeads

TypeDefault
LoadDynamicHeadsDefault
This property is not scriptable. It cannot be accessed by script code.

History 2

Tags: [NotScriptable]

EnableMouseLockOption

TypeDefault
booltrue

The EnableMouseLockOption property determines if a player can toggle mouse lock by default.

Mouselock will lock the player's cursor to the center of the screen. Moving the mouse will rotate the Camera and Player will move relative to the current rotation of the camera.

This property sets the value of Player.DevEnableMouseLock.

Note that shift-lock related APIs are in the process of being deprecated, so it's recommended to use UserInputService.MouseBehavior instead to lock the mouse.

History 6

HealthDisplayDistance

TypeDefault
float100

The HealthDisplayDistance property sets the distance in studs at which this player will see other Humanoid health bars. If set to 0, the health bars will not be displayed. This property is set to 100 studs by default.

To change the display distance for a player once they join the game, you can set the Player.HealthDisplayDistance property.

If a Humanoid health bar is visible, you can set the display type using Humanoid.DisplayDistanceType.

History 4

LoadCharacterAppearance

TypeDefault
booltrue

The LoadCharacterAppearance property sets whether or not the appearance of a player's character should be loaded.

Setting this to false results in the player having no clothes (including hats), body colors, body packages or anything else related to the appearance of the player's avatar. By default, this property is set to true.

Setting this to true results in the player loading the appearance corresponding to the player's Player.CharacterAppearanceId.

If Player:LoadCharacterWithHumanoidDescription() is used, it can be advantageous to set StarterPlayer.LoadCharacterAppearance to false as the player's avatar is not required as all asset IDs to equip on the character will come from the passed in HumanoidDescription.

History 4

LoadCharacterLayeredClothing

TypeDefault
LoadCharacterLayeredClothingDefault

Indicates whether characters spawning into an experience will have layered clothing accessories equipped on them (Although Workspace.MeshPartHeadsAndAccessories also need to be enabled in the Workspace).

This property is not scriptable. It cannot be accessed by script code.
This property is not replicated. Its interface does not cross the network boundary.

History 2

Tags: [NotReplicated, NotScriptable]

LuaCharacterController

TypeDefault
CharacterControlModeDefault
This property is not browsable. It is not visible in Studio's object browser.

History 1

Tags: [NotBrowsable]

NameDisplayDistance

TypeDefault
float100

Sets the distance at which this player will see other Humanoid names. If set to 0, names are hidden.

The NameDisplayDistance StarterPlayer property sets the distance in studs at which this player will see other Humanoid names. If set to 0, names are hidden. This property is set to 100 studs by default.

To change the display distance for a player once they join the game, you can set the Player.NameDisplayDistance property.

If a Humanoid name is visible, you can set the display type using Humanoid.DisplayDistanceType.

History 4

UserEmotesEnabled

TypeDefault
booltrue

This property determines if user-owned emotes are loaded when loading avatars. Setting this property to false disables loading. Developers can set the property in Studio directly or through the Game Settings menu.

When emote loading is disabled, the emotes UI will still work as long as developers choose to use the emotes feature by adding emotes within their game.

See also Avatar Emotes, an article detailing how to control, customize, and play avatar emotes.

History 5

Removed members 12

AnimationCompositorMode

TypeDefault
AnimationCompositorModeDefault
This property is not browsable. It is not visible in Studio's object browser.

History 2

Tags: [NotBrowsable]

DeathStyle

TypeDefault
DeathStyleDefault
This property is not browsable. It is not visible in Studio's object browser.

History 2

Tags: [NotBrowsable]

HumanoidStateMachineMode

TypeDefault
HumanoidStateMachineModeDefault
This property is not browsable. It is not visible in Studio's object browser.

History 3

Tags: [NotBrowsable]

ScreenOrientation

TypeDefault
ScreenOrientation

History 4

ScreenOrientationChanged

Parameters (2)
newOrientationScreenOrientation
fromSensorbool

History 4

Settings