サーバーとクライアントの同期について


screenshot. (3)
screenshot. (4)

マウスで球体をクリックすると小さな球が出てくるようになってます。サーバー側で実行するとクライアント側でも実行されるのですが、クライアント側で球体をクリックすると同期はおろかクライアント側でも小さな球が出ません。

Print Stringにつないで確認してみると、サーバー側で球体をクリックした場合はPrint Stringから「Server:A」と「Server:B」と反応があり、クライアント1側からクリックした場合には「Cliant1:A」と反応が返ってきました。つまりOn Clickedは実行されているようですが、Serverという名前のCustom EventにつながってるPrint Stringには信号が行っていないことがわかりました。

球体と小さな球体にはクラスのデフォルト→レプリケーション→Replicates にチェックを入れています。

これはなぜできないんでしょうか?

RunOnServerで実行する際は、そのBPがサーバーに所有されている必要があります
レベルに最初から配置されているものは、所有権を各クライアント(サーバー含む)が個別に所持しているため、RunOnServer指定のイベントを実行しても、サーバーからしか反応しません

ネットワークマルチプレイヤーを実装する場合、所有権の理解は必須です
公式ドキュメントを確認してください

公式以外なら、ヒストリアの解説記事を読むと良いでしょう

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.