Non-Movable camera and First person lock scripting

Hi community.
I’v been working on a side project where It’s a nice pretty showcase where it views a smooth terrain showcase but the character is not able to move or walk around and stuck in First Person lock I know this sounds hard and I’v been working on trying to figure out how to create one but I have no clue :sweat_smile:
If anyone could tell or help me, that would be amazing. Thanks! :grin:

GAME SCREENSHOT / GIF
https://gyazo.com/3010658d2dc5573d7c86c54b6ca76b38

GAME EXAMPLE
https://www.roblox.com/games/311258568/Vanished

Without any code or even snippets, the best anyone can do is guess. If you can provide that, it’s much easier to solve the problem. What code changes the camera? What are the StarterPlayer settings? What are the camera settings? Can you move the camera around in studio?

Do you have MaxCameraZoomDistance set to a low value?

Super simple to prevent the player from moving the camera. Use a local script to set the CameraType to Scriptable, this tells Roblox’s default handling to not move the camera, and instead you must control all movement through manipulating the camera via script.

You can set the local CameraType to Scriptable and the WalkSpeed of the Humanoid to 0. Alternatively you can lock UserInput via UserInputService.

Put this in a local script in StarterCharacterScripts:

local cc = game.Workspace.CurrentCamera
cc.CameraType = Enum.CameraType.Scriptable
cc.CFrame = CFrame.new(0, 0, 0)  —- Replace these with your own coordinates 
script.Parent.WalkSpeed = 0

You should probably edit this to be more optimal such as remove the character and lock user input instead, but if this is a showcase scripting shouldn’t be an issue. If you want to take the time to improve this rather crude script then go for it! :slightly_smiling_face:

1 Like