[20 Character Limit.]
NOTE: I am pressing the same keys W and S in both videos.
Instead of Adding a Vector3 Value to the coordinate frame, multiply the coordinate frame by another and see if that works. For Example:
CameraPart.CFrame = CameraPart.CFrame * CFrame.new(0, 0, 1)
This moves the camera based on its own position rather than world space.
[30 character limit]
Hm, that’s odd. I wonder if it has to do with setting the orientations. Try commenting the lines that sets orientation instead.
CameraPart.CFrame = CameraPart.CFrame * CFrame.new(0,0,1)
Above is the new current code as I realized that the orientation is useless because orientation is always the same. Anyway, the problem is still happening,
[30 char limit!!!]