0

Skiller を使用してゲームをマルチプレイヤーに移行したいと考えています。マルチプレイヤーの側面は、プレイヤーが選んだ動きを使ってモンスターが戦うポケモンと同じスタイルの戦闘で発生します。Skiller は、ユーザー間で送信される文字列を使用して動きを伝えます。マルチプレイヤー ゲームの場合:

(1) 技名のみを送信し、双方のクライアントに結果(ダメージ)を計算させる。

(2) 移動を行うクライアントに結果を計算して送信してもらいます。

(3)移動名を送信し、両方のクライアントに結果を計算させ、それらを送信して相互にチェックします

(4) 私が知らないより良い選択肢

[編集] 戦闘の開始時にメッセージが行き来し、両方のプレイヤーのクライアントがモンスターに関するすべての情報 (ヘルス、攻撃値、ステータス) を取得し、それぞれが移動に基づいて与えられたダメージを計算できるようにしました。

移動後に結果を検証する場合、結果が異なる場合はどうすればよいですか? 検証するのは理にかなっていますが、別の方法で返された場合に何をしたいのかわかりません。

4

1 に答える 1

0

攻撃者に移動を送信させてから、防御者 (攻撃を受けた男) が与えたダメージを計算します。

ポケモンの例にとどまると、防御者だけがダメージを計算する必要がある理由は、攻撃者が防御者から多くの情報 (最大ヘルス、「防御」の種類の属性など) を受け取る必要がないようにするためです。守備側は受け取ったダメージを攻撃側に送り返すので、両方のプレイヤーが何が起こったのかを知ることができます。

これが最善の方法だと思います。

于 2013-02-28T13:22:58.130 に答える