completely fixed collision detection