My script only changes the current camera about 80% of the time. I’m pretty sure it’s because the script is running before the player loads in but I added Player.CharacterAdded:Wait() and the script is also repeating until Camera.CameraType == Enum.CameraType.Scriptable yet I’m still running into this issue.
local Player = game.Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Camera = workspace.CurrentCamera
repeat wait()
Camera.CameraType = Enum.CameraType.Scriptable
until Camera.CameraType == Enum.CameraType.Scriptable
Camera.CFrame = workspace.AvatarCreator.CameraPart1.CFrame