ネットワークの対戦ゲームについて

Tagをもって判断するのであれば、 ActorHasTag ノードを使うのが良いでしょう
Array同士をEqualしてもおそらく期待する結果は得られません

個人的には、チーム分けをするのであれば素直にチーム分け用の変数(Enum)をCharacterに持たせるほうがスマートに実装できると思います

istenサーバーを用いたネットワーク経由で対戦が出来るゲームの開発をしています。

ゲームの構造として操作できるプレイヤーが二人、動的に敵と味方が別れるAIpawnが複数入り乱れ戦闘を行うようなゲームを開発しようと思っています。

プレイヤーA VSプレイヤーBの中に中立のAIポーンを配置します。

プレイヤーAが中立のAIポーンを倒せばプレイヤーAの協力者となりプレイヤーBを敵と認識する。といった具合です。

gameinstanceに設定したTAG変数をLEVELのブループリント開始時にサーバー、クライアントでそれぞれPlayer1、Player2と設定し

キャラクターのブループリントでgameinstanceから取得した変数をそれぞれのactorのTAGに設定したうえでPlayer1なのかPlayer2なのかを判断しコリジョンがオーバーラップした際にそのアクターのタグを取得しそれぞれで分岐させようとしてみたのですがうまくいきません。

どうやって同じクラスのキャラクターを所有しているプレイヤー同士が敵対なのか味方なのかを判断すればよいのでしょうか?

ご回答ありがとうございます!
追加でご質問したいのですが、チーム分けの用の変数(Enum)は最初から用意されていますでしょうか?
自分で作成してセットする形でしょうか?

Levelのブループリントで変数を渡す形にしてるんですが、そもそもこれでいいのでしょうか、、。
どこのクラスに書けばいいのかもいまいち掴めていないので、、もしよろしければ具体的にどこで処理したら良いのか教えて頂けると助かります。

Enumは自分で必要なものを作成してください

変数をもたせるのはそれぞれのCharacterであるべきですが、セットする場所はLevelでも構いません
ただし、Replicationの機能をうまく活かすのであれば、セットするのはサーバ側の処理であるべきでしょう
下記のドキュメントに一度目を通しておくことをおすすめします

https://docs.unrealengine.com/ja/Gameplay/HowTo/Networking/ReplicateActor/index.html

https://docs.unrealengine.com/ja/Gameplay/HowTo/Networking/ReplicateVariable/index.html

そちらのドキュメントを読んでみます!
いつもご回答いただきありがとうございます。