refactoring + gameplay over websocket works (barely)