1

Java で 1 対 1 のターン ベースのボード ゲームを作成しようとしています。基本的なゲーム構造はすでに作成されており、プレイヤーが同じコンピューター上にいる場合は機能しています。これまでネットワーク関連のことをしたことがないため、オンライン マルチプレイヤーの実装に苦労しています。

各ターン、プレイヤーは最大 9 個の 10 進数を入力する必要があります (数字が省略されている場合は、0 と見なされます)。任意の精度を許可したいので、これらの数値を BigDecimals の配列に格納しました。

私が想像している方法では、2 つのクライアントは IP 経由で互いに直接接続し、ターンごとにメッセージを交換し、もう一方のクライアントが切断されると通知を受け取ることができます。

いくつかの異なるチュートリアルを調べてみましたが、サーバー/クライアント ソリューションを実装しているか、BigDecimal オブジェクトの送信を許可していなかったため、うまくいきませんでした。今では、この件について少し混乱しており、ネットワーク接続の実装をどこから始めればよいかわかりません。そのため、ここに投稿するコードはまだありません。

4

1 に答える 1

0

この投稿から理解したことが正しければ、2 つのクライアント間に単純な接続を作成することはできません。間に何らかのサーバーを配置するか、クライアントの 1 つをサーバーとして機能させる必要があります。2 つの「クライアント ソケット」を接続する簡単な方法はありません。

そうは言っても、LAN経由で接続を作成できるかどうかはわかりません。私は個人的に、インターネットを介してオンラインでプレイできるようにするためにいくつかの複雑なものを設定する必要があるゲームをプレイしましたが、LAN接続を共有する2人は問題なく簡単に接続できます. 私が前に言及した投稿はそれに触れていますが、私は彼らがそこで話していることの半分を知るのに十分な調査を行っていません.


追加情報:

これは、サーバーやソケットなどを介した接続についてOracleが言わなければならないことです.彼らの記事では3つのクライアントの状況について説明しているのに対し、あなたの記事では2つしかありません.

あなたのゲームで頑張ってください、これが役に立てば幸いです!

于 2013-01-28T20:50:09.950 に答える