
KeylessUniversal

local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
-- Create ScreenGui
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "UnicodeConverterGUI"
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui
-- Main Frame
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 320, 0, 150)
frame.Position = UDim2.new(0.5, -160, 0.35, -75)
frame.AnchorPoint = Vector2.new(0.5, 0.5)
frame.BackgroundColor3 = Color3.fromRGB(30,30,40)
frame.BorderSizePixel = 0
frame.Active = true
frame.Parent = screenGui
-- Title bar (drag handle)
local titleBar = Instance.new("TextLabel")
titleBar.Size = UDim2.new(1,0,0,30)
titleBar.Position = UDim2.new(0,0,0,0)
titleBar.BackgroundColor3 = Color3.fromRGB(45,45,55)
titleBar.Text = "Unicode Hex → Character"
titleBar.TextColor3 = Color3.new(1,1,1)
titleBar.Font = Enum.Font.GothamBold
titleBar.TextSize = 18
titleBar.Parent = frame
-- Hex Input
local input = Instance.new("TextBox")
input.Size = UDim2.new(1,-20,0,36)
input.Position = UDim2.new(0,10,0,40)
input.PlaceholderText = "Enter hex (e.g., 1F600)"
input.BackgroundColor3 = Color3.fromRGB(60,60,75)
input.TextColor3 = Color3.fromRGB(1,1,1)
input.Font = Enum.Font.Gotham
input.TextSize = 18
input.Parent = frame
-- Convert button
local convertBtn = Instance.new("TextButton")
convertBtn.Size = UDim2.new(0.4,0,0,30)
convertBtn.Position = UDim2.new(0.05,0,0,90)
convertBtn.Text = "Convert"
convertBtn.Font = Enum.Font.GothamSemibold
convertBtn.TextSize = 16
convertBtn.BackgroundColor3 = Color3.fromRGB(95,95,120)
convertBtn.TextColor3 = Color3.new(1,1,1)
convertBtn.Parent = frame
-- Result TextBox (selectable)
local resultBox = Instance.new("TextBox")
resultBox.Size = UDim2.new(0.55,0,0,36)
resultBox.Position = UDim2.new(0.45,5,0,90)
resultBox.Text = ""
resultBox.PlaceholderText = "Result"
resultBox.BackgroundColor3 = Color3.fromRGB(40,40,50)
resultBox.TextColor3 = Color3.fromRGB(1,1,1)
resultBox.Font = Enum.Font.GothamBold
resultBox.TextSize = 22
resultBox.TextEditable = false -- selectable but not editable
resultBox.Parent = frame
-- ===== Hex → Unicode function =====
local function sanitizeHex(s)
if not s then return nil end
s = s:gsub("^U%+", ""):gsub("^0x", ""):gsub("%s+","")
return s
end
local function hexToChar(hexStr)
local s = sanitizeHex(hexStr)
if not s or s == "" then return nil end
local num = tonumber(s,16)
if not num then return nil end
return utf8.char(num)
end
-- Convert button function
convertBtn.MouseButton1Click:Connect(function()
local char = hexToChar(input.Text)
if char then
resultBox.Text = char
else
resultBox.Text = "Invalid hex"
end
end)
-- Enter key also converts
input.FocusLost:Connect(function(enterPressed)
if enterPressed then
local char = hexToChar(input.Text)
if char then
resultBox.Text = char
else
resultBox.Text = "Invalid hex"
end
end
end)
-- ===== Dragging =====
local dragging = false
local dragStart = Vector2.new()
local startPos = UDim2.new()
titleBar.InputBegan:Connect(function(inputObj)
if inputObj.UserInputType == Enum.UserInputType.MouseButton1 or
inputObj.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = inputObj.Position
startPos = frame.Position
inputObj.Changed:Connect(function()
if inputObj.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
UserInputService.InputChanged:Connect(function(inputObj)
if dragging and (inputObj.UserInputType == Enum.UserInputType.MouseMovement or inputObj.UserInputType == Enum.UserInputType.Touch) then
local delta = inputObj.Position - dragStart
frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X,
startPos.Y.Scale, startPos.Y.Offset + delta.Y)
end
end)
-- ===== Initial example =====
input.Text = "1F600"
resultBox.Text = hexToChar(input.Text) or ""
![[KEYLESS] Moondiety Script | 17+ supported Games](https://scriptblox.com/images/sb/0-1753093706828.png)


AI