refactoring on game clients