Local Script inside of the StarterGui:
wait()
local DemFormsEvent = game.Workspace.DemFormsEvent
local jun = game.Players.LocalPlayer
jun.Chatted:connect(function(Msg)
local msg = Msg:lower()
if string.sub(msg, 1, 7) == "demon1" then
wait(0.1)
DemFormsEvent:FireServer()
end
if string.sub(msg, 1, 13) == "dem1" then
wait(0.1)
DemFormsEvent:FireServer()
end
if string.sub(msg, 1, 6) == "/e dem1" then
wait(0.1)
DemFormsEvent:FireServer()
end
end)
Server script inside of a remoteEvent inside of workspace:
wait()
local DemFormsEvent = script.Parent
DemFormsEvent.OnServerEvent:connect(function(player)
print(player.Name , "Wants to transform")
local jun = game.Players.LocalPlayer
local demm1 = Instance.new("Decal")
demm1.Name = "demm1"
demm1.Texture = game.ReplicatedStorage.Dem1.Texture
demm1.Face = game.ReplicatedStorage.Dem1.Face
demm1.Parent = jun.Character.Head
demm1.Color3 = game.ReplicatedStorage.Dem1.Color3
local dema = Instance.new("ParticleEmitter")
dema.Texture = game.ReplicatedStorage.dema.Texture
dema.Color = game.ReplicatedStorage.dema.Color
dema.Rate = game.ReplicatedStorage.dema.Rate
dema.SpreadAngle = game.ReplicatedStorage.dema.SpreadAngle
dema.Speed = game.ReplicatedStorage.dema.Speed
dema.Size = game.ReplicatedStorage.dema.Size
dema.Parent = jun.Character:FindFirstChild("UpperTorso")
wait(2)
dema:Destroy()
local aura = Instance.new("ParticleEmitter")
aura.Name = "aura"
aura.Parent = jun.Character.RightFoot
aura.Size = game.ReplicatedStorage.dem1a.Size
aura.Texture = game.ReplicatedStorage.dem1a.Texture
aura.LightEmission = game.ReplicatedStorage.dem1a.LightEmission
aura.Speed = game.ReplicatedStorage.dem1a.Speed
aura.SpreadAngle = game.ReplicatedStorage.dem1a.SpreadAngle
aura.Rate = game.ReplicatedStorage.dem1a.Rate
aura.Color = game.ReplicatedStorage.dem1a.Color
aura.Lifetime = game.ReplicatedStorage.dem1a.Lifetime
aura.LockedToPart = true
local aura2 = Instance.new("ParticleEmitter")
aura2.Name = "aura2"
aura2.Parent = jun.Character.LeftFoot
aura2.Size = game.ReplicatedStorage.dem1a.Size
aura2.Texture = game.ReplicatedStorage.dem1a.Texture
aura2.LightEmission = game.ReplicatedStorage.dem1a.LightEmission
aura2.Speed = game.ReplicatedStorage.dem1a.Speed
aura2.SpreadAngle = game.ReplicatedStorage.dem1a.SpreadAngle
aura2.Rate = game.ReplicatedStorage.dem1a.Rate
aura2.Color = game.ReplicatedStorage.dem1a.Color
aura2.Lifetime = game.ReplicatedStorage.dem1a.Lifetime
aura2.LockedToPart = true
end)
Don't make fun of me if i have made some ridiculous mistakes i am still trying to understand the whole concept of filtering enabled. I would appreciate some help with this.

3 comments
You never called an onServerEvent in your server script so just do DemFormsEvent.OnServerEvent:connect(function(player) to replace "function onDemFormsFired(player)", and just type everything inside your function from there. I'm on mobile so I can't type in Lua, and btw u never called ur function to perform, and function names don't matter
Thank you man i appreciate that!
But i came across another problem, it only works in studio