Breakout Style Ball in 3D issues, rigidbody3D

All right after a few days I managed to understand better where movement was coming from.
First this is the code:

func _integrate_forces(state: PhysicsDirectBodyState3D) -> void:
	#print(linear_velocity.length())
	direction = direction.normalized()
	var velocity = speed * direction
	var vel_min = linear_velocity.normalized() * 0.1
	var vel_max = linear_velocity.normalized() * 0.18
	linear_velocity = linear_velocity.clamp(vel_min,vel_max)

	# Alternative clamp method
	#linear_velocity = linear_velocity.normalized() * 0.1

	var collision = move_and_collide(velocity)
	if collision:
		direction = direction.bounce(collision.get_normal())
		print(linear_velocity.length())

Now the explaining, first was to stop using physics and use integrate forces, whenever you are handling the physics “manually” you should use the integrate so your changes don’t get skipped or applied at weird times and this avoids erratic behavior.

Second was understanding that linear_velocity is the vector responsible for the movement, not the “force” you apply to the rigidBody3D and you can clamp it like any other vector. On my code I used two ways of clamping I found on this thread How to Clamp velocity?

Now to my other issue the boards hitting the ball

As you can see I have two RemoteTransform3D on my player and two PaletR and L(boards) on the tree.

Inside my player I can twist this remote transforms and they move the AnimatableBody3Ds. If you read on the documentation it says animatables transfer their linear velocity to other rigidBodies, it is still a bit glitchy but they hit the ball accelerate it.

I want to come back and add the code to this boards hitting the ball bc I think if you want your ball to accelerate just for a while this way I’m doing it is still not good imo.

Hopefully someone will come along with and idea/solution if not I will post my final approach next.