Please consider supporting us with disabling your AdBlock software and to gain access to thousands of free content!
Not sure how to disable AdBLock? Follow this tutorial: How to disable AdBlock
Get the Fe Emoji Chat
The Fe Emoji Chat code is below. Copy & inject it into the game. Enjoy!
-- // Notes:
-- The emojis list is based from discord the list is here: https://raw.githubusercontent.com/Aidez/emojiscopy/master/main or https://pastebin.com/raw/719UsVji \\ --
-- My code is ugly k dont read c:
-- // Configuration, super simple: \\ --
local config = {
-- // Values should be "true" or "false" and make sure there's a "," or ";" after them. \\ --
['EmojiAutofill'] = true; -- Autofills potential emojis like :sungla with :sunglasses:, you can hit tab to fill
['EmojiReplace'] = true; -- Autofills emojis instantly after adding both ":"'s example: ":sunglasses:" will turn into "?"
}
-- // Main (no need to modify( \\ --
if not game:IsLoaded() then
game.Loaded:Wait()
end
local jsondecode = function(arg)
return game:GetService("HttpService"):JSONDecode(arg)
end
local jsonencode = function(arg)
return game:GetService("HttpService"):JSONEncode(arg)
end
local getchat = function()
return {
main = game:GetService("Players").LocalPlayer.PlayerGui.Chat;
chatbar = game:GetService("Players").LocalPlayer.PlayerGui.Chat.Frame.ChatBarParentFrame.Frame.BoxFrame.Frame.ChatBar;
messages = game:GetService("Players").LocalPlayer.PlayerGui.Chat.Frame.ChatChannelParentFrame.Frame_MessageLogDisplay.Scroller
}
end
local scroller = function(obj)
obj.ClipsDescendants = true;
local Scroller = Instance.new("Frame")
local CopyMessage = Instance.new("TextButton")
local UIListLayout = Instance.new("UIListLayout")
local CopyUser = Instance.new("TextButton")
local DeleteMessage = Instance.new("TextButton")
local Mute = Instance.new("TextButton")
local Unmute = Instance.new("TextButton")
local Tp = Instance.new("TextButton")
Scroller.Name = "Scroller"
Scroller.Parent = obj;
Scroller.AnchorPoint = Vector2.new(0.5, 1)
Scroller.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
Scroller.BackgroundTransparency = 1.000
Scroller.Position = UDim2.new(0, #obj.TextButton.Text * 14, 6.5, 0)
Scroller.Size = UDim2.new(0, 206, 0, 99)
CopyMessage.Name = "CopyMessage"
CopyMessage.Parent = Scroller
CopyMessage.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
CopyMessage.BackgroundTransparency = 0.500
CopyMessage.BorderColor3 = Color3.fromRGB(27, 42, 53)
CopyMessage.BorderSizePixel = 0
CopyMessage.Position = UDim2.new(0, 49, 0, 50)
CopyMessage.Size = UDim2.new(0, 200, 0, 15)
CopyMessage.Font = Enum.Font.SourceSansBold
CopyMessage.Text = "Copy message"
CopyMessage.TextColor3 = Color3.fromRGB(255, 255, 255)
CopyMessage.TextSize = 14.000
CopyMessage.TextStrokeTransparency = 0.750
CopyMessage.TextWrapped = true
UIListLayout.Parent = Scroller
UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
UIListLayout.Padding = UDim.new(0, 2)
CopyUser.Name = "CopyUser"
CopyUser.Parent = Scroller
CopyUser.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
CopyUser.BackgroundTransparency = 0.500
CopyUser.BorderColor3 = Color3.fromRGB(27, 42, 53)
CopyUser.BorderSizePixel = 0
CopyUser.Position = UDim2.new(0, 49, 0, 50)
CopyUser.Size = UDim2.new(0, 200, 0, 15)
CopyUser.Font = Enum.Font.SourceSansBold
CopyUser.Text = "Copy username"
CopyUser.TextColor3 = Color3.fromRGB(255, 255, 255)
CopyUser.TextSize = 14.000
CopyUser.TextStrokeTransparency = 0.750
CopyUser.TextWrapped = true
DeleteMessage.Name = "DeleteMessage"
DeleteMessage.Parent = Scroller
DeleteMessage.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
DeleteMessage.BackgroundTransparency = 0.500
DeleteMessage.BorderColor3 = Color3.fromRGB(27, 42, 53)
DeleteMessage.BorderSizePixel = 0
DeleteMessage.Position = UDim2.new(0, 49, 0, 50)
DeleteMessage.Size = UDim2.new(0, 200, 0, 15)
DeleteMessage.Font = Enum.Font.SourceSansBold
DeleteMessage.Text = "Delete (client)"
DeleteMessage.TextColor3 = Color3.fromRGB(255, 255, 255)
DeleteMessage.TextSize = 14.000
DeleteMessage.TextStrokeTransparency = 0.750
DeleteMessage.TextWrapped = true
Mute.Name = "Mute"
Mute.Parent = Scroller
Mute.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
Mute.BackgroundTransparency = 0.500
Mute.BorderColor3 = Color3.fromRGB(27, 42, 53)
Mute.BorderSizePixel = 0
Mute.Position = UDim2.new(0, 49, 0, 50)
Mute.Size = UDim2.new(0, 200, 0, 15)
Mute.Font = Enum.Font.SourceSansBold
Mute.Text = "Mute (client)"
Mute.TextColor3 = Color3.fromRGB(255, 255, 255)
Mute.TextSize = 14.000
Mute.TextStrokeTransparency = 0.750
Mute.TextWrapped = true
Unmute.Name = "Unmute"
Unmute.Parent = Scroller
Unmute.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
Unmute.BackgroundTransparency = 0.500
Unmute.BorderColor3 = Color3.fromRGB(27, 42, 53)
Unmute.BorderSizePixel = 0
Unmute.Position = UDim2.new(0, 49, 0, 50)
Unmute.Size = UDim2.new(0, 200, 0, 15)
Unmute.Font = Enum.Font.SourceSansBold
Unmute.Text = "Unmute (client)"
Unmute.TextColor3 = Color3.fromRGB(255, 255, 255)
Unmute.TextSize = 14.000
Unmute.TextStrokeTransparency = 0.750
Unmute.TextWrapped = true
Tp.Name = "Tp"
Tp.Parent = Scroller
Tp.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
Tp.BackgroundTransparency = 0.500
Tp.BorderColor3 = Color3.fromRGB(27, 42, 53)
Tp.BorderSizePixel = 0
Tp.Position = UDim2.new(0, 49, 0, 50)
Tp.Size = UDim2.new(0, 200, 0, 15)
Tp.Font = Enum.Font.SourceSansBold
Tp.Text = "Teleport To Player"
Tp.TextColor3 = Color3.fromRGB(255, 255, 255)
Tp.TextSize = 14.000
Tp.TextStrokeTransparency = 0.750
Tp.TextWrapped = true
return Scroller;
end
local bindable = Instance.new("BindableEvent");
local cache = {};
local dependencies = {
['Emojis'] = jsondecode(game:HttpGet('https://pastebin.com/raw/719UsVji'));
['Chat'] = getchat();
}
local sendmsg = function(m)
if dependencies['Chat'] then
game:GetService("ReplicatedStorage").DefaultChatSystemChatEvents.SayMessageRequest:FireServer(m, "All")
end
end
local get = function(s)
if dependencies['Emojis'][s] then
return dependencies['Emojis'][s];
else
return nil;
end
end
local fillmatches = function(emojis, object)
local t = object.Text;
for i, v in pairs(emojis) do
local emoji = get(v);
if emoji then
object.Text = string.gsub(object.Text, ":"..v..":", emoji)
end
end
end
local last;
local autofill = function(tbl, object)
local find = tbl[1];
if #find >= 2 then
else
return;
end
local start = tbl[2]
last = tbl;
local match;
for i, v in pairs(dependencies['Emojis']) do
if i:lower():sub(1, #find) == find:lower() then
match = i;
end
end
object.Parent.AutofillBox.PlaceholderText = '';
if match then
local s = object.Text:sub(1, start - 1);
object.Parent.AutofillBox.PlaceholderText = s..':'..match..':'
end
end
local trueautofill = function(tbl, object)
local find = tbl[1];
local start = tbl[2]
local match;
last = nil;
if #find >= 2 then
else
return;
end
for i, v in pairs(dependencies['Emojis']) do
if i:lower():sub(1, #find) == find:lower() then
match = i;
end
end
if match then
local s = object.Text:sub(1, start - 1);
object.Text = s..':'..match..':'
end
end
local match = function(t, obj)
if t:find(":") then
local start = 0;
local scan = {};
local autofills = {};
for i = 1, #t do
local s = t:sub(i, i)
if s == ':' then
if start >= 1 then
table.insert(scan, t:sub(start + 1, i - 1))
start = 0;
else
start = i;
end
end
end
start = 0;
for i = 1, #t do
local s = t:sub(i, i)
if s == ':' then
if start >= 1 then
start = 0;
else
start = i;
end
end
end
obj.Parent.AutofillBox.PlaceholderText = '';
if start >= 1 then
table.insert(autofills, t:sub(start + 1, #t))
if config['EmojiAutofill'] == true then
autofill({
autofills[1],
start
}, obj)
end
else
obj.Parent.AutofillBox.PlaceholderText = '';
end
if config['EmojiReplace'] == true then
fillmatches(scan, obj)
end
else
return {}
end
end
spawn(function()
game:GetService("RunService").Heartbeat:Connect(function()
if cache[dependencies['Chat'].chatbar] == nil then
cache[dependencies['Chat'].chatbar] = true;
dependencies['Chat'] = getchat()
bindable:Fire(dependencies['Chat'])
end
end)
end)
game:GetService("UserInputService").InputBegan:Connect(function(k)
if k.KeyCode then
if k.KeyCode == Enum.KeyCode.Tab then
if focused then
if last then
local object = dependencies['Chat'].chatbar;
trueautofill(last, object)
wait()
object.Text = object.Text:sub(1, #object.Text - 1)
end
end
end
end
end)
local getplayer = function(t)
for i = 1, #t do
if t:sub(i, i) == ']' then
return game:GetService("Players"):FindFirstChild(t:sub(2, i - 1));
end
end
return nil;
end
local getvalue = function(t)
for i = 1,#t do
if t:sub(i,i) == ' ' then
else
return t:sub(i,#t)
end
end
return 'void'
end
local scrollers = {};
game:GetService("UserInputService").InputBegan:Connect(function(input)
if dependencies['Chat'] then
if input.UserInputType == Enum.UserInputType.MouseButton2 then
local m = game:GetService("Players").LocalPlayer:GetMouse()
local objs = game:GetService("Players").LocalPlayer.PlayerGui:GetGuiObjectsAtPosition(m.X, m.Y)
for i, v in pairs(objs) do
if v:FindFirstChild("TextButton") then
if v:FindFirstChild("Scroller") then
return
end
local s = scroller(v);
for i, v in pairs(s:GetChildren()) do
if v:IsA("TextButton") then
v.ZIndex = 20;
end
end
table.insert(scrollers, s);
if #scrollers >= 2 then
scrollers[1]:Destroy()
scrollers = {
s
}
end
s.Parent.ClipsDescendants = false;
s.MouseLeave:Connect(function()
s:Destroy();
end)
s.CopyMessage.MouseButton1Click:Connect(function()
setclipboard(getvalue(v.Text))
s:Destroy();
end)
s.DeleteMessage.MouseButton1Click:Connect(function()
v:Destroy()
end)
s.CopyUser.MouseButton1Click:Connect(function()
local t = v.TextButton.Text;
for i = 1, #t do
if t:sub(i, i) == ']' then
setclipboard(t:sub(2, i - 1));
end
end
s:Destroy()
end)
s.Unmute.MouseButton1Click:Connect(function()
sendmsg("/unmute "..tostring(getplayer(v.TextButton.Text)))
s:Destroy()
end)
s.Mute.MouseButton1Click:Connect(function()
sendmsg("/mute "..tostring(getplayer(v.TextButton.Text)))
s:Destroy()
end)
s.Tp.MouseButton1Click:Connect(function()
local plr = getplayer(v.TextButton.Text)
local hrp = game:GetService("Players").LocalPlayer.Character.HumanoidRootPart;
local them = plr.Character:WaitForChild("HumanoidRootPart");
hrp.CFrame = CFrame.new(them.Position)
end)
end
end
end
end
end)
bindable.Event:Connect(function(tbl)
local bar = tbl.chatbar;
bar.ZIndex = 2;
bar.Parent.TextLabel.ZIndex = 3;
local clone = bar:Clone();
clone.Name = 'AutofillBox'
clone.Parent = bar.Parent;
clone.TextEditable = false;
clone.ZIndex = 1;
clone.TextTransparency = .5
clone.PlaceholderColor3 = Color3.fromRGB(0, 0, 0)
bar:GetPropertyChangedSignal("Text"):Connect(function()
focused = true;
local txt = bar.Text;
if txt == '' then
clone.PlaceholderText = '';
return;
end
match(txt, bar)
end)
bar.FocusLost:Connect(function()
clone.PlaceholderText = '';
focused = false;
end)
end)