You are putting an Instance into the Vector3 arguments. There are also some other minor issues with your code.
Here is an explained correction:
local drops = 0
while true do -- although the drops will never reach 11quadrilion, this makes it run forever
task.wait(3)
drops+=1 -- increases the amount of drops by 1
local freddy = Instance.new("Part")
local droparea = script.Parent
freddy.Size = Vector3.new(1, 1, 1)
freddy.Position = droparea.Position -- the Vector3 position of "droparea"
freddy.Parent = workspace
end
I am sure he removes the parts somewhere else. Regardless, that code should not crash until a very long time. He has already included a wait() function
I think I have something that will help you even better!..A Dropper/Generator
Dropper Making
So first let’s make our dropper, a part for this instance, make it kind of blocky, put it in the sky not in the ground, anchor it, can collide is false, now rename it to Dropper, set transparency to 0.7, there our dropper is done
Part Making
Make your part (should be smaller than the dropper). Rename it to Glob, Now put the part in the dropper. Not like set the Glob as a child to the dropper, like put it in the dropper, the Glob has to be smaller than the dropper or it wont work, so after you put your Glob IN the dropper, (dropper and the part’s parent should be Workspace) ok now lets script,
Script Making
Make a script in ServerScriptService, delete the “print(“Hello World!”) and type the following
local Dropper = workspace.Dropper
local Glob = workspace.Glob
while true do
local GlobClone = Glob:Clone()
GlobClone.Parent = Dropper
Glob.CFrame = Dropper.CFrame
wait(2)
end)