見出し画像

【UEFN】待機場→プレイ場①→プレイ場②という設定を行う方法


記事更新日┃2024/09/10

◆目標物

●前回は、待機場→プレイ場、移行繰り返しを目指していたが、今回は、

待機場→プレイ場→プレイ場②というのを実装したい。

●待機場→プレイ場、待機場→プレイ場ではなく、

待機場→プレイ場→プレイ場②というゲーム運び

◆結論

●現在情報収集・検証中

●示唆されていること
・ラウンド設定デバイスで各ラウンドごとのスポーンパッドの起動をコントロールできない可能性

◆youtubeチャンネル┃UEFN・UE5について発信

◆仮説検証の記録

・準備中

◆情報収集

❒仮説
●チームとクラスを変更していき、次のラウンド開始のときに、反応するスポーンパッドのチームとクラスをコントロールするのがよいかもしれない。

❒Google

●自分の過去に書いた記事しかでてこない

❒youtube(英語でも調べる)

●山吹いろさんのyoutube「待機場の作り方」より
・島設定のスポーンする場所を「現在地に設定」
・一ラウンド目の待機場の「スタート地点」の✔は外す?

→この二つの設定では上記のゲーム性は作れなかった。ほかに設定が必要であった。

❒CHATGPT

待機場を作る:

  • Player Spawnerを使用して、全プレイヤーが待機するエリアを作成。ゲームが開始されるまで全員がここに集まる。

  • Round Managerを設置し、ゲーム開始のタイミングを管理。ラウンド1の始まりをトリガーする。

2. 待機場からプレイ場への移動:

  • ラウンド1が開始されたら、Teleportersを使ってプレイヤーをプレイ場に移動させる。この時点で戦闘が開始される。

3. ラウンド2・3の管理:

  • Round Managerでラウンド進行を管理し、ラウンドが終了したらTeleportersを使って次のプレイ場に自動的に移動させる。

  • 各ラウンドの終了タイミングは、Timer DeviceElimination Managerを使って設定する。一定の時間が経過するか、あるいは特定の人数まで減少したらラウンド終了。

4. 最後の一人になるまで戦う:

  • Elimination Managerでプレイヤー数を監視し、最後の一人になったらゲームを終了。勝者を表示する仕組みを設定する。

これらのデバイスを活用して、ラウンド進行や待機場からプレイ場への移動を自動化し、最後の一人が残るまで戦うゲームを作れる。

❒検証結果△┃perplexity

実装手順

1. マップの作成

待機場プレイ場の2種類のマップを作成します。プレイ場は1つのマップを使い回すことができます。

2. ゲームフロー制御

UEFNのデバイスを使用してゲームフローを制御します:

  • ?┃Game State Device: ゲームの状態(待機中、プレイ中、終了)を管理します。

  • 済┃Round Settings Device: ラウンド数と各ラウンドの時間を設定します。

  • 済┃Player Spawner Device: プレイヤーのスポーン位置を制御します。

3. プレイヤー移動の実装

  • 済┃Mutator Zone Device: 待機場からプレイ場への移動をトリガーします。

  • 済┃Teleporter Device: プレイヤーを実際に移動させます。

4. ラウンド管理

  • 済┃Timer Device: 各ラウンドの時間を管理します。

  • 済┃Conditional Button Device: ラウンド終了時の条件をチェックします。

5. プレイヤー淘汰システム

  • Elimination Manager Device: プレイヤーの淘汰を管理します。

  • Player Counter Device: 残りプレイヤー数を追跡します。

6. 勝利条件の設定

  • Conditional Button Device: 最後の1人になった時点で勝利を判定します。

  • End Game Device: ゲーム終了時の処理を行います。

7. UI設計

  • HUD Message Device: プレイヤーに現在のラウンド情報や残り時間を表示します。

❒検証結果×┃Genspark(自分が記事から出力されているような内容)

必要なデバイス

  1. スポーンパッド

  2. ラウンド設定デバイス

  3. トリガーデバイス

  4. クラスセレクターデバイス

  5. タイマーデバイス

手順

1. 済┃待機場の設定

  • スポーンパッドを待機場に配置し、全てのプレイヤーがここにスポーンするように設定します。

    • チーム設定:任意

    • クラス設定:任意

    • ゲームフェーズ:常時

2. 済┃ラウンド1のプレイ場の設定

  • ×スポーンパッドをプレイ場に配置し、ラウンド1開始時にここにスポーンするように設定します。
    →メタバース収益化 研究所コメント┃ラウンド2のことか。

    • チーム設定:任意

    • クラス設定:任意

    • ゲームフェーズ:ゲームプレイのみ

  • ラウンド設定デバイスを配置し、ラウンド1が開始されると自動的に起動するように設定します。
    →メタバース収益化 研究所コメント┃ラウンド2か。

    • ラウンド:1
      →メタバース収益化 研究所コメント┃ラウンド2か。

    • On Round Start: トリガーを発信

3. ラウンド2および3のプレイ場の設定

  • 各ラウンドごとにスポーンパッドを配置し、それぞれのラウンド開始時にここにスポーンするように設定します。

    • チーム設定:任意

    • クラス設定:任意

    • ゲームフェーズ:ゲームプレイのみ

  • ラウンド設定デバイスを配置し、各ラウンドが開始されると自動的に起動するように設定します。

    • ラウンド:2, 3

    • On Round Start: トリガーを発信

4. トリガーデバイスの設定

  • 各ラウンド開始時に対応するトリガーデバイスを配置し、次のスポーンパッドを有効化します。

    • トリガー発信元:ラウンド設定デバイス

    • トリガー受信先:対応するスポーンパッド

5. クラスセレクターデバイスの使用

  • 各ラウンドごとに異なるクラスを割り当てる場合は、クラスセレクターデバイスを使用してクラスを変更します。

6. タイマーデバイスの使用(オプション)

  • 各ラウンドの時間制限や待機時間を設ける場合は、タイマーデバイスを使用して時間管理を行います。

実装例

待機場からプレイ場への移行

  1. 待機場で全てのプレイヤーがスポーン。

  2. ラウンド1開始時、トリガーデバイスが発信され、待機場のスポーンパッドが無効化され、プレイ場のスポーンパッドが有効化される。

  3. プレイヤーはプレイ場で戦闘開始。

ラウンド間の移行

  1. ラウンド1終了後、次のラウンド(例:ラウンド2)が開始されると、対応するトリガーデバイスが発信され、次のプレイ場のスポーンパッドが有効化される。

  2. プレイヤーは新しいプレイ場で戦闘継続。

この手順で実装すれば、最初に待機場で全員が集まり、その後は各ラウンドごとに異なるプレイ場で戦闘を続けるゲームが作成できます。詳細なデバイス設定やトリガーの連携については、UEFN内で試行錯誤しながら調整してください。

❒その他(UEFN From waiting area to playing field,┃round transition)

  • FFAやゾーンウォーズでチーム変更システムを作るとき、毎ラウンドごとにチームを再選択するのは面倒。

  • クラスセレクターを使うと、簡単にチームを切り替えられる。

  • ゲーム中に機械が見えないように設定したり、チームごとに色を変えることで視覚的にわかりやすいのがおすすめです。

  • 切り替え先のクラスを「1」に設定し、チームが変わって「チャンネル1」で送信するようにします。

  • セーブポイントを設置して、チームを保存する。自動保存はしないように設定し、チームだけを保存対象にする。

  • セーブポイントの自動読み込みは他のマッチで保存されたデータを使ったことがあるので、オフにするのが安全

  • プレイヤースポーンパッドを使って、選択したチームのデータを確認し、次のラウンドでも同じチームで開始できるようにする。

  • クラスを保存するために、「ゲーム終了後に忘れに戻す」設定を確認しておくことが重要です。

  • チーム変更が正しく保存されるために、ゲームを終了した後に再度スタートしてチェックする必要があります。

  • 以上の設定をすることで、ラウンドが変わっても選ばれたチームを維持できるシステムが完了しました。

この記事が気に入ったらサポートをしてみませんか?