nic is playing with physics, dangerous code ahead, by dangerous i mean bad