The StarterPlayerScripts is a container object located within the
StarterPlayer service. It contains
LocalScripts and other objects to be copied to the
PlayerScripts container once when a
Player joins the game. For example, if you want to create special effects on the client when certain conditions are met, you can place a
LocalScript within this object to do that.
This object is also a good place for
LocalScripts that define additional inputs with
ContextActionService. For inputs that are only relevant when a player has spawned in, you can use
ContextActionService/BindAction when the
Players/LocalPlayer character spawns. Then, use
ContextActionService/UnbindAction when they die or despawn.
When a game is run, this object will also house the default multi-platform Roblox control scripts for the camera and character. If
LocalScripts named “CameraScript” or “ControlScript” are placed within this folder, they will replace the Roblox defaults for those scripts respectively. You can add empty LocalScripts for each of these to simply disable them altogether. This is useful for games that do not follow the usual control paradigms of a 3rd person game.