registerCommand(new FixElevationCommand(this));
    public Server(String password, int port) {        this.password = password.length() > 0 ? password : null;        // initialize server socket        try {            serverSocket = new ServerSocket(port);        } catch(IOException ex) {            System.err.println("could not create server socket on port "+port);        }        motd = createMotd();        game.getOptions().initialize();        changePhase(IGame.PHASE_LOUNGE);        // display server start text        System.out.println("s: starting a new server...");        try {            String host = InetAddress.getLocalHost().getHostName();            System.out.print("s: hostname = '" );            System.out.print( host );            System.out.print( "' port = " );            System.out.println( serverSocket.getLocalPort() );            InetAddress[] addresses = InetAddress.getAllByName(host);            for (int i = 0; i < addresses.length; i++) {                System.out.println("s: hosting on address = "                                   + addresses[i].getHostAddress());            }        } catch (UnknownHostException  e) {            // oh well.        }        System.out.println("s: password = " + this.password);        connector = new Thread(this, "Connection Listener");        connector.start();        // register commands        registerCommand(new DefeatCommand(this));        registerCommand(new HelpCommand(this));        registerCommand(new KickCommand(this));        registerCommand(new ResetCommand(this));        registerCommand(new RollCommand(this));        registerCommand(new SaveGameCommand(this));        registerCommand(new SkipCommand(this));        registerCommand(new VictoryCommand(this));        registerCommand(new WhoCommand(this));        registerCommand(new SeeAllCommand(this));        registerCommand(new LocalSaveGameCommand(this));    }