Run it
Copy the script and paste it into your executor.
Players = :()
RunService = :()
UIS = :()
StarterGui = :()
player = Players.LocalPlayer
camera = .CurrentCamera
BASE_FOV =
RUN_FOV =
sensitivity =
smoothness =
inertiaStrength =
maxRoll = .()
rollSmoothness =
idleShake =
moveShake =
shakeSpeed =
character, humanoid, head
mouseLocked =
bodycamEnabled =
guiHidden =
targetRotX, targetRotY = ,
rotX, rotY = ,
velocityX, velocityY = ,
roll =
targetRoll =
(char)
character = char
humanoid = char:()
head = char:()
_, item (char:())
item:() item:()
item.Handle.LocalTransparencyModifier =
(state)
guiHidden = state
StarterGui:(.CoreGuiType.All, state)
_, gui (player.PlayerGui:())
gui:()
gui.Enabled = state
player.Character
(player.Character)
player.CharacterAdded:(setupCharacter)
camera.CameraType = .CameraType.Scriptable
UIS.MouseBehavior = .MouseBehavior.LockCenter
UIS.InputBegan:((input, gp)
gp
input.KeyCode == .KeyCode.P
mouseLocked = mouseLocked
UIS.MouseBehavior = mouseLocked .MouseBehavior.LockCenter .MouseBehavior.Default
input.KeyCode == .KeyCode.O
bodycamEnabled =
camera.CameraType = .CameraType.Custom
UIS.MouseBehavior = .MouseBehavior.Default
input.KeyCode == .KeyCode.M
(guiHidden)
)
UIS.InputChanged:((input)
bodycamEnabled
input.UserInputType == .UserInputType.MouseMovement mouseLocked
targetRotY -= input.Delta.X * sensitivity *
targetRotX -= input.Delta.Y * sensitivity *
targetRotX = .(targetRotX, -, )
targetRoll = .(-input.Delta.X * , -maxRoll, maxRoll)
)
RunService.RenderStepped:((dt)
bodycamEnabled
character head humanoid
velocityX += (targetRotX - rotX) * inertiaStrength
velocityY += (targetRotY - rotY) * inertiaStrength
velocityX *=
velocityY *=
rotX += velocityX
rotY += velocityY
roll += (targetRoll - roll) * rollSmoothness
targetRoll *=
speed = humanoid.MoveDirection.Magnitude
shakeAmount = speed > moveShake idleShake
t = ()
shakeX = .(t * shakeSpeed) * shakeAmount
shakeY = .(t * shakeSpeed * ) * shakeAmount
targetFOV = speed > RUN_FOV BASE_FOV
camera.FieldOfView += (targetFOV - camera.FieldOfView) *
camera.CFrame =
head.CFrame
* .(
rotX + .(shakeX),
rotY + .(shakeY),
roll
)
)
He make chatGPT PC recomended