Game mode refactor