local ply = game:GetService("Players").LocalPlayer local char = ply.Character or ply.CharacterAdded:Wait() local root = char:WaitForChild("HumanoidRootPart") local ReplicatedStorage = game:GetService("ReplicatedStorage") local PlaceBlock = ReplicatedStorage.Remotes.PlaceBlock local center = root.Position local radius = 20 -- Sphere radius, THIS CHANGE THE SPHERE SIZE -- More radius = More slow to process for the game local step = 3 -- dont change this btw --workspace["1Grass"]:FindFirstChild("Blocks"):Destroy() (this deletes blocks, no FE, it's just for delete lag) -- Note: the sphere creation logic was created with GPT, i only adapted it and did the research of how the game works. nF7 for x = -radius, radius, step do for y = -radius, radius, step do for z = -radius, radius, step do local offset = Vector3.new(x, y, z) if offset.Magnitude <= radius then local point = center + offset PlaceBlock:FireServer( workspace["1Grass"], Enum.NormalId.Top, point, "Oak Planks" ) end end end end -- Active if u want to appear on top of the sphere --[[ task.wait(1) char:MoveTo(root.Position + Vector3.new(0,radius0)) ]]