server side movement impl2