Run it
Copy the script and paste it into your executor.
local p=game:GetService("Players")
local r=game:GetService("RunService")
local lp=p.LocalPlayer
local cam=workspace.CurrentCamera
local rs,gui,vpf
local function stop()
if rs then rs:Disconnect()rs=nil end
if gui gui:()gui,vpf=,
()
lp.Character
c=lp.Character
hrp=c:() c:(,)
hrp
c.Archivable=
clone=c:()
hrpClone=clone:()
_,v (c:()) v:() v:() v.Transparency=
hrpClone hrpClone.Transparency=
()
gui=.()
gui.IgnoreGuiInset=
gui.Parent=:()
vpf=.()
vpf.Size=.(,,,)
vpf.BackgroundTransparency=
vpf.CurrentCamera=cam
vpf.Parent=gui
clone.Parent=vpf
c.DescendantRemoving:((v)
cp=clone:(v.Name,)
cp cp:()
)
c.AncestryChanged:((_,p) p () )
rs=r.RenderStepped:(()
c.Parent hrp clone.PrimaryPart
clone:(c:())
_,v (c:()) v:()
cp=clone:(v.Name)
cp cp.CFrame=v.CFrame
_,a (c:()) a:()
ac=clone:(a.Name)
ac ac:() a:() ac.Handle.CFrame=a.Handle.CFrame
z=(cam.CFrame.Position-cam.Focus.Position).Magnitude
t=z< .(-(z/),,)
_,v (clone:()) v:() v:() v.Transparency=t
hrpClone hrpClone.Transparency=
)
lp.CharacterAdded:(()().()())
lp.CharacterRemoving:(stop)
lp.Character .()()Just playing around with cameraviewport

Universal