自分のゲームにマルチプレイヤーサポートを追加したいので、TcpListenerを開いてリクエストを接続するのを聞く「Create Server」ボタンを作成し、ボタンを押すと、開いているすべてのTcpListenerのリストが表示されます(ユーザが接続をクリックできるようにします) C#でこれに組み込み関数がありますか?C#開いている "TcpListeners"のリストを取得する方法
0
A
答えて
0
残念ながら、このためのIPまたはTCP仕様のこの機能は、 IPもTCPも、「サービス・ロケータ」タイプの機能を提供しません。
この機能を実装するには、サーバーを実行しているプレーヤが接続情報(IPアドレス/ポート番号)をゲームを探している他のプレイヤーにブロードキャストする方法が必要です。これは伝統的に利用可能なゲームの情報を公開するホスト/コーディネーションサーバーを持つことによって行われます。
3
ネットワーク上のすべてのマシン(またはインターネット全体)のすべてのリスナーのリストが必要ですか?答えはいいえ、そのための組み込み関数はありません。
小規模なLANでは、サーバーが存在をブロードキャストすることができます。これは、インターネットが登場する前にゲームが通常それをした方法です。
現在、これらのサーバーは通常、実際のゲームをホストしているすべてのサーバーの一覧を持つ中央サーバーに接続します。
いずれにしても、いくつかの作業が必要です。
0
ローカルエリアネットワークに限定している場合は、ゲームサーバーがリッスンしているポートでブロードキャストでき、何らかの登録メッセージで応答することができます。
ゲームを妨害しないように、ゲームを分けることもできますし、ゲームとは異なるポートでリッスンする別の登録サービスを利用することもできます。
関連する問題
- 1. 開いているウィンドウのリストを取得するC#
- 2. OS Xの開いているファイル(ディスクリプタ)のリストを取得
- 3. Eclipseエディタで開いているすべてのファイルのリストを取得する方法は?
- 4. 開いているポップアップウィンドウのリストを取得
- 5. nHibernateのセッションファクトリから開いているセッションオブジェクトのリストを取得する方法はありますか?
- 6. グループIDに基づいてリストを取得する方法
- 7. FreeBSDで開いているposix共有メモリセグメントのリストを取得するには
- 8. SHGetFileInfo()メソッドでフォルダの開いているアイコンを取得する方法は?
- 9. ブラウザで開いているタブの一覧を取得する方法
- 10. ユーザスペースからLinuxカーネルモジュールのリストを取得する方法Cコード?
- 11. CでLinuxでオープンソケットのリストを取得する方法は?
- 12. django.contrib.authモデルを使用しているユーザーのリストを取得する方法
- 13. iphone objective-cにインストールされているアプリケーションのリストを取得
- 14. C開いているファイル記述子をすべて取得する
- 15. リストに表示されていないアイテムを取得する方法
- 16. サーバ内でホストされているドメインのリストを取得する方法
- 17. サーバ上で使用されているポートのリストを取得する方法
- 18. Java - インストールされているRPMパッケージのリストを取得する方法
- 19. インストールされているビデオプレーヤーのリストをプログラムで取得する方法は?
- 20. CのAPIを使用して(ロータス)ノートのリストを取得する方法
- 21. Qt(クロスプラットフォーム)を使用して、リストのビデオキャプチャデバイスを取得する方法(Webカメラ) (C++)
- 22. C#を使用してMsmqのアクセス制御リストを取得する方法
- 23. C#のチェックされていないチェックボックスの値を取得する方法
- 24. joomla15のすべてのリストcatgoriesを取得する方法?
- 25. LinuxでC/C++でSCSIディスクのリストを取得する方法は?
- 26. タブで開いたページを取得する方法
- 27. 他のリストに基づいてリストを取得する
- 28. apache.commonsを使用してプロパティのリストを取得する方法
- 29. JavaFXで現在開かれているステージを取得する方法は?
- 30. Plupload - 複数回開いてリストをリフレッシュする方法は?
sry私は十分正確ではありませんでした.LANの使用のためだけです –
この場合、クライアントはUDPポートでリッスンし、サーバーはそのポートでプレゼンスをブロードキャストします。クライアントは、UDPパケットが送信されたアドレスのサーバーに再び接続できることを認識します。また、サーバー名、ゲームの種類、プレーヤーの数など、パケットにいくつかのデータを置くことができます... – Thomas