I am not quite sure how your game works, but generally for a game that can connect to multiple game servers you should program some sort of master server. A login server could verify the users log-in as the first packet, handle character creation. Then it could handle character creation for the second packet. If the user is authenticated through the login server, it could send a list of all game servers registered under the login server. You could wrap a GUI around these values. You may want to push a queue when the user is authenticated to these game servers assuring that only those who have been authenticated can connect. Again, I am not sure if this is the kind of answer you are looking for, but I tried.