
KeylessUniversal

local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
-- Create RemoteEvents for chatting and switching
local cloneChat = Instance.new("RemoteEvent", ReplicatedStorage)
cloneChat.Name = "CloneChat"
local switchClone = Instance.new("RemoteEvent", ReplicatedStorage)
switchClone.Name = "SwitchClone"
-- Store clone info per player
local playerClones = {}
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
wait(1)
-- Clone character
local clone = character:Clone()
clone.Name = player.Name .. "_Clone"
clone.Parent = workspace
-- Make parts non-collidable
for _, part in ipairs(clone:GetDescendants()) do
if part:IsA("BasePart") then
part.Anchored = true
part.CanCollide = false
end
end
-- Add chat label to clone's head
local cloneHead = clone:FindFirstChild("Head")
local label
if cloneHead then
local gui = Instance.new("BillboardGui", cloneHead)
gui.Size = UDim2.new(0, 200, 0, 50)
gui.StudsOffset = Vector3.new(0, 2, 0)
gui.AlwaysOnTop = true
label = Instance.new("TextLabel", gui)
label.Size = UDim2.new(1, 0, 1, 0)
label.BackgroundTransparency = 1
label.TextColor3 = Color3.new(1, 1, 1)
label.TextScaled = true
label.Text = ""
end
playerClones[player] = {
clone = clone,
original = character,
chatLabel = label
}
end)
end)
-- Handle clone chatting
cloneChat.OnServerEvent:Connect(function(player, message)
local info = playerClones[player]
if info and info.chatLabel then
info.chatLabel.Text = message
end
end)
-- Handle switching character to clone
switchClone.OnServerEvent:Connect(function(player)
local info = playerClones[player]
if info and info.clone then
player.Character = info.clone
end
end)
-- Optional: reset back to original on death or leave
Players.PlayerRemoving:Connect(function(player)
playerClones[player] = nil
end)
![[KEYLESS] Moondiety Script | 17+ supported Games](https://scriptblox.com/images/sb/0-1753093706828.png)


FE?
maybe is FE
Why i here
not work