untested game state update refactoring