public CMatchInstance( EMatchInstanceID id, CLobbyState lobby_state )
        {
            GameState = new CGameState( lobby_state.GameMode );
            GameState.Initialize_Game( lobby_state.Players );

            MatchState = new CMatchState( id, lobby_state.GameMode, lobby_state.GameCount );
            MatchState.Initialize_Match( lobby_state.Players );
            MatchState.Add_Observers( lobby_state );
        }