I've already asked this question but got no answer, and before you mark this as already being asked, I am going to include extra information in the form of gyazo links and better explanation.
So, I'm currently working on a "skill" that plays and animation and places a yellow ball at the end of a players arm to damage other players. This is what it looks like in test mode. And This is what it looks like in a normal game.
See the difference? In the normal game it does not hurt the target.
Here is the main script, in the starter pack, that places and expands the ball:
local Player = game.Players.LocalPlayer local mouse = Player:GetMouse() local lastUse = 0; local char = Player.Character or Player.CharacterAdded:Wait() local hum = char:WaitForChild("Humanoid") Player.CharacterAdded:connect(function(character) char = character hum = char:WaitForChild("Humanoid") end) if not hum.Parent then repeat wait(0.2) until hum.Parent end local function onKeyDown(key) local Key = key:lower() if key == "z" and tick()-lastUse > 10 then lastUse = tick(); local x = Instance.new("Part") x.BrickColor = BrickColor.new("Bright yellow") x.Material = "Neon" x.CanCollide = false x.Transparency = 0.4 x.Size = Vector3.new(10,10,10) x.TopSurface = "Smooth" x.BottomSurface = "Smooth" x.Shape = "Ball" x.Name = Player.Name x.Anchored = true local fd = script.fireDamage:clone() fd.Parent = x local Mesh = Instance.new("SpecialMesh") Mesh.MeshType = "Sphere" Mesh.Scale = Vector3.new(1,1,1) Mesh.Parent = x --[[ local a = Instance.new("Sound") a.SoundId = "http://www.roblox.com/asset/?id=260430117" a.Parent = x a.Volume = 2 a:play()]] local animTrack = hum:LoadAnimation(script.Punch) animTrack:Play() wait(1) animTrack:Stop() x.CFrame = Player.Character.Torso.CFrame*CFrame.new(2, 1 , -4) x.Parent = workspace for explode = 1,30 do Mesh.Scale = Mesh.Scale + Vector3.new(0.09,0.09,0.09) x.Transparency = x.Transparency + 0.03 wait(0.001) end game.Debris:AddItem(x, 0.03) end end mouse.KeyDown:connect(onKeyDown)
And here is the script that handles the damage and making the target sit down (it is inside of the main script):
function onDamage(Part) if Part.Parent:FindFirstChild("Humanoid") ~= nil and Part.Parent.Name ~= script.Parent.Name and Part.Parent:FindFirstChild("ForceField") == nil then Part.Parent.Humanoid.Health = Part.Parent.Humanoid.Health - script.Damage.Value Part.Parent.Humanoid.Sit = true end end script.Parent.Touched:connect(onDamage)
P.S: To be clear, I am also not getting any errors from the output or developer console, and the game is NOT filtering enabled
Edit: I am getting an error, https://gyazo.com/8b7fed183bd03f0e79176d2a6d2023b7. It is strange, because there is no where near 1000 lines in the fireDamage script.