How can I make two players face each other?

How can I make two characters face each other?
I tried this but it makes character teleport back to its position

plr1.Character.HumanoidRootPart.CFrame = CFrame.new(plr1.Character.HumanoidRootPart.Position, plr2.Character.HumanoidRootPart.Position)
				plr1.Character.HumanoidRootPart.CFrame = plr1.Character.HumanoidRootPart.CFrame * CFrame.Angles(0, 0, math.rad(0))
1 Like
local p1 = plr1.Character
local p2 = plr2.Character

local distance = (p1.HumanoidRootPart.Position - p2.HumanoidRootPart.Position).Magnitude

local midpoint = p1.HumanoidRootPart.Position + CFrame.new(p1.HumanoidRootPart.Position, p2.HumanoidRootPart.Position).LookVector * distance/2 -- could look from either position, doesn't matter.

p1:SetPrimaryPartCFrame(CFrame.new(p1.HumanoidRootPart.Position, midpoint))
p2:SetPrimaryPartCFrame(CFrame.new(p2.HumanoidRootPart.Position, midpoint))
character1.CFrame = CFrame.new(character1.PrimaryPart.Position, character2.PrimaryPart.Position)
character2.CFrame = CFrame.new(character2.PrimaryPart.Position, character1.PrimaryPart.Position)

This should work.