So, I tried both this solution and I modified it a bit and neither worked.
Look at the video i sent, then try this script:
local player = game:GetService("Players").LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local rootPart = character:WaitForChild("HumanoidRootPart")
local camera = game:GetService("Workspace").CurrentCamera
local runService = game:GetService("RunService")
local humanoid = character:WaitForChild("Humanoid")
--// Shift Lock Function
local function shiftLock(toggle)
local function lock()
humanoid.CameraOffset = Vector3.new(1,1,0)
end
if toggle then
runService:BindToRenderStep("ShiftLock", 200, lock)
else
runService:UnbindFromRenderStep("ShiftLock")
end; humanoid.AutoRotate = true
end
shiftLock(true) -- enabling shift lock
Then, you should see what I mean. I’m sorry, i don’t have a recording software or better way to describe it
Oh, well its the fact that he uses shiftlock, and it works as normal, except autorotate is on, but somehow different. Try plugging in the script in post 2 to a studio game and compare it to the video, in my script not only does the player turn, so does the camera offset. However for him the player turns but the camera offset doesn’t