movement updating is fully functional