Good Day!
Problem: Script only works on "Play" server on Roblox Studio but not on "Test" -> "Player1" Server nor on an Actual Server.
Script on the Weapon:
--(Not the full script)
local new_script = Tool.BulletExpand:Clone()
new_script.Parent = bullet
new_script.Disabled = false
BulletExpand Script:
local bullet = script.Parent
for i = 1, 15 do
wait(0.05)
bullet.Size = bullet.Size + Vector3.new(0.1,0.1,0.1)
bullet.Transparency = bullet.Transparency + 0.05
end
bullet:Remove()
I don't know why this doesn't work, it doesn't show any errors on the Output.

7 comments
Not an error, but on your BulletExpand script, you shouldn't be using :Remove(). It's :Destroy()
You should also post full code, as something in the unposted code could cause the problem.
From what I see you are adding a new script per bulltet? If so then this is not the correct way to be coding. This can and should all be done in the same script
Also you did not include any form of wait in yout for loop so it will not work as you expect.
@incapaz , :Remove() still does the job, I don't think it's the problem since it's not "inceasing in mass". However I did try testing with two monitors! One monitor for the test server, and one for the test player. The test server doesn't show the bullets! This might be the reason why it's not increasing in mass and the script isn't affecting it.
@kingdom, my bad! There should be a wait(0.05). But even with 0.05 it still doesn't work!
@kingdom5, The problem is if I save them in 1 script, then it waits for the bullet to expand before I can shoot another one, I want to be able to shoot even if 1 bullet is still expanding.