Script Loads In Studio, But Not In-Game

For the last two weeks or so, I have been making a bowling game with a friend, and it works perfectly well in the studio, but when I play the game, there is no animation, and the ball isn’t thrown as strong as it should be thrown. Here is the link to the game, please tell me if it’s only on my computer that it doesn’t work.

I have tried everything that comes to mind, even rewriting half of the script!

Here is the code inside the bowling ball:
Note: The animation is inside the script.

local Ball = game.ReplicatedStorage.BallOfTiny
local VBall = game.ReplicatedStorage.BallOfVIB
local Wand = script.Parent
local Debris = game:GetService("Debris")
local Debound = false
local VIBD = false
local BallThrown = game.ReplicatedStorage.BallThrown
local Transfer = game.ReplicatedStorage.Transfer

function Touched(part)
	local player = game.Players:GetPlayerFromCharacter(script.Parent.Parent)
	local PartyName = player:FindFirstChild("PartyName")
	if PartyName then
		if part.Name == PartyName.Value.."ABA"then
			Debound = true
		elseif part.Name == PartyName.Value.."VABA" then
			VIBD = true

		end	
	else
		if part.Name == player.Name.."VABA" then
			VIBD = true
		elseif part.Name == player.Name.."ABA" then
			Debound = true
		
		end
	end
	
end
function UnTouched(part)
	local player = game.Players:GetPlayerFromCharacter(script.Parent.Parent)
	local PartyName = player:FindFirstChild("PartyName")
	if PartyName then
		if part.Name == PartyName.."ABA"then
			Debound = false
		elseif part.Name == PartyName.."VABA" then
			VIBD = false

		end	
	else
		if part.Name == player.Name.."VABA" then
			VIBD = false
		elseif part.Name == player.Name.."ABA" then
			Debound = false

		end
	end

end
function spawnandfire()
	local player = game.Players:GetPlayerFromCharacter(script.Parent.Parent)
	local Alley = player:FindFirstChild("Alley").Value
	script.Parent.Handle.Touched:Connect(Touched)
	script.Parent.Handle.TouchEnded:Connect(UnTouched)
	if Debound == true then
		local HumRoot = script.Parent.Parent.HumanoidRootPart
		Debound = true
		local Throw = script.Parent.Parent.Humanoid:LoadAnimation(script.Throw)
		Throw:Play()
		wait(3)
		local Clone = Ball:Clone()
		Clone.Parent = workspace
		Clone.PrimaryPart.BrickColor = script.Parent.Handle.BrickColor
		local LookVector = script.Parent.Parent.Head.CFrame.lookVector
		Clone:SetPrimaryPartCFrame(HumRoot.CFrame * CFrame.new(0,-1.5,-1))
		Clone.PrimaryPart.Velocity = LookVector*120
		Throw:Stop()
		Debris:AddItem(Clone, 10)
		Debound = false
		script.Parent:Destroy()
		Transfer:FireClient(player, Alley, 10)
	elseif VIBD == true then
		local HumRoot = script.Parent.Parent.HumanoidRootPart
		Debound = true
		local Throw = script.Parent.Parent.Humanoid:LoadAnimation(script.Throw)
		Throw:Play()
		wait(3)
		local Clone = VBall:Clone()
		Clone.Parent = workspace
		Clone.PrimaryPart.BrickColor = script.Parent.Handle.BrickColor
		local LookVector = script.Parent.Parent.Head.CFrame.lookVector
		Clone:SetPrimaryPartCFrame(HumRoot.CFrame * CFrame.new(1,-1.5,-1))
		Clone.PrimaryPart.Velocity = LookVector*160
		Throw:Stop()
		Debris:AddItem(Clone, 10)
		Debound = false
		script.Parent:Destroy()
		Transfer:FireClient(player, Alley, 10)
	end
end
Wand.Activated:Connect(spawnandfire)    

Thanks in advance!

You should commit the script. :confused:

I did, I don’t get what could be going wrong, it is still adding the new bowling ball

It just got worse, because I had another script (this is a group game, I don’t need to commit scripts) that should turn of idle animations, but it doesn’t anymore

In my personal experiences.
Usually when scripts will not load, I find its due to another script running that is broken.
Which stops the game from registering script / causes more errors on a script even if it is perfectly functional stand alone.

Check the F9 console in game, and look at local and server error logs to see if anything is coming back as an error. If you find errors, try to fix those and then see if the script works correctly.

Good luck!