local player = game.Players.LocalPlayer
local char = player.Character or player.CharacterAdded:Wait()
local humanoid = char:WaitForChild("Humanoid")
local Mouse = player:GetMouse()
local primary = char.PrimaryPart


local connection = game:GetService("RunService").RenderStepped:Connect(function()
	local MouseDirection = Mouse.UnitRay.Direction
	--primary.CFrame.LookVector = MouseDirection
	print(MouseDirection)
	char:SetPrimaryPartCFrame(CFrame.new(char:GetPrimaryPartCFrame().Position, Mouse.UnitRay.Direction * 1000))
end)

if humanoid.Health > 0 then
	connection()
elseif humanoid.Died then
	connection:Disconnect()
end


https://gyazo.com/e4cfd98bd576ec9caca663efd0207466

In the output im just printing MouseDirection and i am just holding W im not sure why im going up in the air im trying to make the char face the mouse pos making a game that utilizes this mechanic.