So I know your confused about the description so let me explain it every 2 seconds a part is supposed to spawn a part every 2 seconds but instead of spawning a new part every second the part that has been spawned already by the instance.new keeps on getting deleted and coming back meaning only 1 part is being spawned
while wait(2) do
P = Instance.new("Part")
P.Parent = workspace
IntVal = Instance.new("IntValue")
IntVal.Parent = P
IntVal.Value = math.random(0,1000)
IntVal.Name = 'CashValue'
P.Position = script.Parent.SpawnPart.Position * Vector3.new(0,-1,0)
end

3 comments
i've tested it and it seems to work fine?
Have you considered that you're putting the parts all in the same position if script.Parent.SpawnPart never moves? Also, please properly localize your variables.
Works normal for me. idk why lol