
Key Required VerifiedUniversal

-- Configuration
local CORRECT_PASSWORD = "zHackkzinX9999"
local LOCKED_TEXT = "fackkusfackkusfackkus"
-- Services
local Players = game:GetService("Players")
local TextChatService = game:GetService("TextChatService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local LocalPlayer = Players.LocalPlayer
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")
-- Destroy existing instance if re-running
if PlayerGui:FindFirstChild("CustomChatSystem") then
PlayerGui.CustomChatSystem:Destroy()
end
-- ScreenGui Base
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "CustomChatSystem"
ScreenGui.ResetOnSpawn = false
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
ScreenGui.Parent = PlayerGui
----------------------------------------------------
-- 1. PASSWORD SYSTEM (LOGIN SCREEN)
----------------------------------------------------
local LoginFrame = Instance.new("Frame")
LoginFrame.Name = "LoginFrame"
LoginFrame.Size = UDim2.new(0, 300, 0, 150)
LoginFrame.Position = UDim2.new(0.5, -150, 0.4, -75)
LoginFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
LoginFrame.BorderSizePixel = 0
LoginFrame.Active = true
LoginFrame.Draggable = true
LoginFrame.Parent = ScreenGui
local LoginCorner = Instance.new("UICorner")
LoginCorner.CornerRadius = UDim.new(0, 8)
LoginCorner.Parent = LoginFrame
local LoginTitle = Instance.new("TextLabel")
LoginTitle.Size = UDim2.new(1, 0, 0, 35)
LoginTitle.BackgroundTransparency = 1
LoginTitle.Text = "ENTER PASSWORD"
LoginTitle.TextColor3 = Color3.fromRGB(255, 255, 255)
LoginTitle.TextSize = 16
LoginTitle.Font = Enum.Font.SourceSansBold
LoginTitle.Parent = LoginFrame
local PassInput = Instance.new("TextBox")
PassInput.Size = UDim2.new(0, 240, 0, 35)
PassInput.Position = UDim2.new(0.5, -120, 0, 45)
PassInput.BackgroundColor3 = Color3.fromRGB(45, 45, 45)
PassInput.PlaceholderText = "Password Here..."
PassInput.Text = ""
PassInput.TextColor3 = Color3.fromRGB(255, 255, 255)
PassInput.TextSize = 14
PassInput.Font = Enum.Font.SourceSans
PassInput.ClearTextOnFocus = false
PassInput.Parent = LoginFrame
local PassCorner = Instance.new("UICorner")
PassCorner.CornerRadius = UDim.new(0, 6)
PassCorner.Parent = PassInput
local LoginBtn = Instance.new("TextButton")
LoginBtn.Size = UDim2.new(0, 120, 0, 35)
LoginBtn.Position = UDim2.new(0.5, -60, 0, 95)
LoginBtn.BackgroundColor3 = Color3.fromRGB(0, 150, 70)
LoginBtn.Text = "Unlock"
LoginBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
LoginBtn.TextSize = 16
LoginBtn.Font = Enum.Font.SourceSansBold
LoginBtn.Parent = LoginFrame
local BtnCorner = Instance.new("UICorner")
BtnCorner.CornerRadius = UDim.new(0, 6)
BtnCorner.Parent = LoginBtn
----------------------------------------------------
-- 2. MAIN PANEL SYSTEM (HIDDEN UNTIL UNLOCKED)
----------------------------------------------------
local MainFrame = Instance.new("Frame")
MainFrame.Name = "MainFrame"
MainFrame.Size = UDim2.new(0, 350, 0, 160)
MainFrame.Position = UDim2.new(0.5, -175, 0.4, -80)
MainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.Draggable = true
MainFrame.Visible = false -- Hidden initially
MainFrame.Parent = ScreenGui
local MainCorner = Instance.new("UICorner")
MainCorner.CornerRadius = UDim.new(0, 8)
MainCorner.Parent = MainFrame
-- Title Bar
local TitleLabel = Instance.new("TextLabel")
TitleLabel.Size = UDim2.new(1, -40, 0, 35)
TitleLabel.Position = UDim2.new(0, 10, 0, 0)
TitleLabel.BackgroundTransparency = 1
TitleLabel.Text = "zHack Control Panel"
TitleLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
TitleLabel.TextSize = 16
TitleLabel.TextXAlignment = Enum.TextXAlignment.Left
TitleLabel.Font = Enum.Font.SourceSansBold
TitleLabel.Parent = MainFrame
-- Minimize Button
local MinBtn = Instance.new("TextButton")
MinBtn.Size = UDim2.new(0, 30, 0, 30)
MinBtn.Position = UDim2.new(1, -35, 0, 2.5)
MinBtn.BackgroundColor3 = Color3.fromRGB(45, 45, 45)
MinBtn.Text = "-"
MinBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
MinBtn.TextSize = 20
MinBtn.Font = Enum.Font.SourceSansBold
MinBtn.Parent = MainFrame
local MinCorner = Instance.new("UICorner")
MinCorner.CornerRadius = UDim.new(0, 6)
MinCorner.Parent = MinBtn
-- Container for the Body content (useful for minimizing)
local ContainerFrame = Instance.new("Frame")
ContainerFrame.Name = "Container"
ContainerFrame.Size = UDim2.new(1, 0, 1, -35)
ContainerFrame.Position = UDim2.new(0, 0, 0, 35)
ContainerFrame.BackgroundTransparency = 1
ContainerFrame.Parent = MainFrame
-- The Message TextBox
local MsgTextBox = Instance.new("TextBox")
MsgTextBox.Size = UDim2.new(1, -20, 0, 50)
MsgTextBox.Position = UDim2.new(0, 10, 0, 5)
MsgTextBox.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
MsgTextBox.Text = LOCKED_TEXT
MsgTextBox.TextColor3 = Color3.fromRGB(255, 255, 255)
MsgTextBox.TextSize = 14
MsgTextBox.Font = Enum.Font.SourceSans
MsgTextBox.TextWrapped = true
MsgTextBox.ClearTextOnFocus = false
MsgTextBox.TextXAlignment = Enum.TextXAlignment.Left
MsgTextBox.Parent = ContainerFrame
local MsgCorner = Instance.new("UICorner")
MsgCorner.CornerRadius = UDim.new(0, 6)
MsgCorner.Parent = MsgTextBox
-- Send Button
local SendBtn = Instance.new("TextButton")
SendBtn.Size = UDim2.new(1, -20, 0, 35)
SendBtn.Position = UDim2.new(0, 10, 0, 65)
SendBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 255)
SendBtn.Text = "SEND TO CHAT"
SendBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
SendBtn.TextSize = 16
SendBtn.Font = Enum.Font.SourceSansBold
SendBtn.Parent = ContainerFrame
local SendCorner = Instance.new("UICorner")
SendCorner.CornerRadius = UDim.new(0, 6)
SendCorner.Parent = SendBtn
----------------------------------------------------
-- 3. FUNCTIONALITY & LOGIC
----------------------------------------------------
-- Function to handle sending chat messages (Supports old and new Roblox Chat)
local function SendChatMessage(message)
if message == "" then return end
-- Try TextChatService (New Roblox Chat System)
if TextChatService.ChatVersion == Enum.ChatVersion.TextChatService then
local textChannel = TextChatService:FindFirstChild("TextChannels") and TextChatService.TextChannels:FindFirstChild("RBXGeneral")
if textChannel then
textChannel:SendAsync(message)
end
else
-- Fallback to Legacy Chat System
local SayMessageRequest = ReplicatedStorage:FindFirstChild("DefaultChatSystemChatEvents") and ReplicatedStorage.DefaultChatSystemChatEvents:FindFirstChild("SayMessageRequest")
if SayMessageRequest then
SayMessageRequest:FireServer(message, "All")
end
end
end
-- Login Logic
LoginBtn.MouseButton1Click:Connect(function()
if PassInput.Text == CORRECT_PASSWORD then
LoginFrame:Destroy() -- Delete the password panel completely
MainFrame.Visible = true -- Display the main panel
else
LoginBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0)
LoginBtn.Text = "Wrong Password!"
task.wait(1.5)
LoginBtn.BackgroundColor3 = Color3.fromRGB(0, 150, 70)
LoginBtn.Text = "Unlock"
end
end)
-- Force Text Lock Constraint (Ensures prefix cannot be edited or erased)
MsgTextBox:GetPropertyChangedSignal("Text"):Connect(function()
local currentText = MsgTextBox.Text
-- If the user deletes past the prefix or alters it, reset it back
if string.sub(currentText, 1, string.len(LOCKED_TEXT)) ~= LOCKED_TEXT then
MsgTextBox.Text = LOCKED_TEXT
end
end)
-- Send Button Trigger
SendBtn.MouseButton1Click:Connect(function()
local textToSend = MsgTextBox.Text
SendChatMessage(textToSend)
end)
-- Minimize Button Logic
local isMinimized = false
MinBtn.MouseButton1Click:Connect(function()
if not isMinimized then
-- Collapse window
ContainerFrame.Visible = false
MainFrame.Size = UDim2.new(0, 350, 0, 35)
MinBtn.Text = "+"
isMinimized = true
else
-- Expand window back
MainFrame.Size = UDim2.new(0, 350, 0, 160)
ContainerFrame.Visible = true
MinBtn.Text = "-"
isMinimized = false
end
end)



Ai made 🗿
No is TextChatService and DefaultChatSystemChatEvents, is RBXGeneral.
W script?
p*word is zHackkzinX9999 dont do linkvertise