added extra gravity controls and some randomness to drag