
Keyless

if game.PlaceId == 74779072921656 then
local settings = {
AutoGuess = true,
AutoSayInChat = true,
delay = 0.4
}
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local data = ReplicatedStorage:FindFirstChild("Modules") and ReplicatedStorage.Modules:FindFirstChild("Data")
local worddata = {}
if data then
for _, v in ipairs(data:GetChildren()) do
if v.Name:find("WordData") then
table.insert(worddata, v)
end
end
end
local player = Players.LocalPlayer
local playerGui = player and player:FindFirstChild("PlayerGui")
local mainGui = playerGui and playerGui:FindFirstChild("MainGui")
local answerFrame = mainGui and mainGui:FindFirstChild("AnswerFrame")
local scriptables = workspace:FindFirstChild("Scriptables")
local mainBoard = scriptables and scriptables:FindFirstChild("MainBoard")
local surfaceGui = mainBoard and mainBoard:FindFirstChild("SurfaceGui")
local hintLabel = surfaceGui and surfaceGui:FindFirstChild("HintLabel")
local nameLabel = surfaceGui and surfaceGui:FindFirstChild("NameLabel")
local submissionLabelClient = surfaceGui and surfaceGui:FindFirstChild("SubmissionLabelClient")
local function getWord()
local sndid = game:GetService("Players").LocalPlayer.PlayerGui:WaitForChild("Sound") and game:GetService("Players").LocalPlayer.PlayerGui:WaitForChild("Sound").SoundId or ""
for _, v in ipairs(worddata) do
if not v or not v.Parent then
continue
end
local wordModule = require(v)
if wordModule then
for dificulty, difidata in pairs(wordModule) do
for _, wrddata in ipairs(difidata) do
if wrddata.id == sndid then
return wrddata.word
end
end
end
end
end
end
local function chatWord()
local TextChatService = game:GetService("TextChatService")
local textChannels = TextChatService:WaitForChild("TextChannels")
local general = textChannels:WaitForChild("RBXGeneral")
general:SendAsync(getWord())
end
if answerFrame then
answerFrame:GetPropertyChangedSignal("Visible"):Connect(function()
if not answerFrame or not answerFrame.Parent and not settings.AutoGuess then
return
end
if answerFrame.Visible then
local cur = ""
local last = ""
local word = getWord()
task.wait(settings.delay)
for _, l in ipairs(string.split(word, "")) do
cur = cur .. l
task.wait(last == l and 0.05 or math.random(5,30)/100)
last = l
local remotes = ReplicatedStorage:FindFirstChild("Remotes")
local submitAnswer = remotes and remotes:FindFirstChild("SubmitAnswer")
if not submitAnswer then
return
end
submitAnswer:FireServer("Type", cur)
submissionLabelClient.Text = cur
end
local remotes = ReplicatedStorage:FindFirstChild("Remotes")
local submitAnswer = remotes and remotes:FindFirstChild("SubmitAnswer")
if submitAnswer then
submitAnswer:FireServer("Submit", word)
end
end
end)
end
if hintLabel and nameLabel then
hintLabel:GetPropertyChangedSignal("Text"):Connect(function()
if hintLabel.Text:gsub("%s+", "") ~= "" and settings.AutoSayInChat and (player.Name ~= nameLabel.Text:match("^(.-) 's Turn")) then
local word = getWord()
local cur = ""
local last = ""
task.wait(settings.delay)
for _, l in ipairs(string.split(word, "")) do
cur = cur .. l
task.wait(last == l and 0.05 or math.random(5,30)/100)
last = l
end
chatWord()
end
end)
end
print("started")
else
game:GetService("Players").LocalPlayer:Kick("Game is not supported by this script.")
endNo comments yet for this script.