パズルのメカニックは、さまざまなジャンルのゲームに組み込むことができます。アドベンチャー、RPG、プラットフォーマー および FPS は、ほんの一例です。さらにパズルが魅力的である場合、完全なゲーム エクスペリエンスとしてそこだけで独立したゲームになります。パズルごとに異なる初期条件と解決法を設定すると、パズルの同じセットアップを、同じゲームで複数回再利用することもできます。
このパズルで、プレイヤーはボタンを操作して、最適なライトの組み合わせ (この場合はすべてオン) を見つける必要があります。各ボタンはライトのセットを切り替えます。パズルを解いたとき、アイテムが報酬としてスポーンされます。
このチュートリアルに従うことにより、ライトの初期ステートをカスタマイズできる、このパズルのバージョンを作成する方法を習得します。Unreal Editor for Fortnite (UEFN) で Verse により作成した 1 つの仕掛けを使用して、各ボタンで切り替える対象のライト、パズルの解決法、すべてを実現します。
使用する Verse 言語機能
array
:拡張して作成する仕掛けは、配列を使用して ロジック を実行します。ボタン、ライト、ライト ステート、イベント ハンドラ などが配列に格納され、多様なパズル コンフィギュレーション (ライトの増減、異なる初期と目標のライト ステート) を利用でき、そのためのコードの複製は必要ありません。for
:for
式により、仕掛けで使用する配列をイテレートできます。if
:if
はパズルが解かれたタイミングをチェックし、GetCreativeObjectsWithTag()
で見つかった仕掛けをフィルタで選別し、ライト ステートをコントロールするために使用されます。failure
:失敗コンテキストは、配列にアクセスし、パズルが解かれたタイミングを検出し、プログラムのフローをコントロールするために使用されます。class
:tagged_lights_puzzle
クリエイティブの仕掛け クラス の他に、ボタンInteractedWithEvent
ハンドラのクラスを作成し、イベントごとのプロパティを有効にします。
使用する Verse API
- 編集可能なプロパティ:エディタでカスタマイズできるように、Verse で作成した複数の仕掛けのプロパティが UEFN に公開されています。新しいパズル コンフィギュレーションをこれらのプロパティを変更することにより作成できます。
GetCreativeObjectsWithTag()
:GetCreativeObjectsWithTag()
API を使用すると、ランタイム時にカスタマイズ可能なゲームプレイ タグが付いたすべての仕掛けを、エディタに参照を公開しないで、見つけることができます。この場合、ライトにはpuzzle_light
タグが付いています。- 仕掛けイベント:ボタンの InteractedWithEvent はゲーム ステートをコントロールするために使用されます。
ステップ
次のステップに従って、パズルを作成する方法を習得します。このパズルではプレイヤーがアイテムをスポーンするために適切なライトの組み合わせを見つける必要があります。参考のため完全なスクリプトが最終ステップに含まれています。