So I have an unanchored fireball which I want to travel, but it grows as it travels. I'm using a BodyForce to counteract gravity and additionally I'm using the TweenService to make the fireball grow in size, my code for updating the BodyForce's anti-gravity as the fireball grows in size is this:

local sP = script.Parent
local defaultGravity = workspace.Gravity
local floaty = defaultGravity * sP:GetMass()
sP.BodyForce.Force = Vector3.new(0, floaty, 0)

local function updater()
	floaty = defaultGravity * sP:GetMass()
	sP.BodyForce.Force = Vector3.new(0, floaty, 0)
end

sP.Changed:Connect(updater)

The issue is is that the script will update the BodyForce's Y force but after the Tween finishes it has an annoying effect where the fireball will be floating upward slightly. While moving upward the block has full anti-gravity so let's say you were to anchor and unanchor it while it was in midair, after being unanchored it would stay completely still. The issue is why it's moving up at all? Thank you for your time!