パスワードドアの仕組みを理解する
パスワードドアシステムは、『エグジー・パーティ(Eggy Party)』のワークショップモードにおける高度なインタラクティブ要素です。これらの仕組みは、トリガーエリアの検出とシーケンシャルロジック(順序論理)による検証を組み合わせることで、マップ内のアクセスを制御します。近接感知型のドアとは異なり、パスワードドアはプレイヤーが指定されたゾーンで正確な順序でアクションを行う必要があり、カスタムマップの没入感を高めるパズル要素を提供します。
その基礎となるのが「イベントトリガーボリューム」です。これは、プレイヤーやプリセットオブジェクトが指定ゾーンに進入したことを検出し、表示/非表示の切り替えなどのメカニズムを起動させます。ワークショップの機能をさらに拡張したいクリエイターの方は、BitTopupを通じてエグジー・パーティのエグジーコインをチャージすることで、高度なワークショップ機能をアンロックするためのリソースに即座にアクセスできます。
検証の核となるのは、複数のトリガーイベントを連鎖させるシーケンシャルロジックです。プレイヤーが正しい順序でトリガーを起動させると、システムは各ステップを検証しながら進行します。これにより、単純な3桁の組み合わせから、時間制限や条件分岐を伴う複雑な多段階認証まで、さまざまな難易度のパスワードを設定することが可能になります。
カスタムマップにおいてパスワードドアが重要な理由
パスワードドアは、静的なレイアウトをダイナミックな体験へと変貌させます。具体的には以下のことが可能になります:
- 限定コンテンツの保護: スキルや知識を必要とするエリアへのアクセス制限
- ストーリーの進行: 順を追って物語を解禁していくナラティブな演出
- 難易度ティアの実装: カジュアル層と上級者層のゾーンを分ける
- チーム協力の促進: メンバー間の連携が必要な入力ギミック
- パズルへの挑戦: 観察力や試行錯誤に報酬を与える仕組み
プレイヤーは入り口のパズルを解くことで達成感を得られ、それが優れたマップとして記憶に残る瞬間を生み出します。適切に設計されたパスワードシステムを持つマップは、コミュニティからの評価やエンゲージメントが継続的に高くなる傾向にあります。
コアコンポーネント:トリガーエリア
トリガーエリアは、プレイヤーやオブジェクトのインタラクションを監視する目に見えない検出ゾーンとして機能します。ワークショップモードでは、さまざまな空間要件に適したいくつかのトリガー形状(円錐、半球など)が用意されています。適切に実装するには、以下の3つの重要な特性を理解する必要があります:

検出範囲(Detection Scope): トリガーは特定のエンティティ(個々のプレイヤー、陣営メンバー、物理コンポーネント)またはより広いカテゴリーを監視します。パスワードドアでは、意図しない起動を防ぐために正確なエンティティ検出が必要です。
起動条件(Activation Conditions): 各トリガーは、進入イベント、退出イベント、継続的な滞在検出など、カスタマイズ可能なパラメータをサポートしています。パスワードシステムでは通常、個別の入力アクションとして「進入イベント」を使用します。
負荷(インテンシティ)の考慮: 基本的な負荷制限は18,000から始まり、職人ポイントが1,000で21,000、10,000で25,000まで増加します。複雑なパスワードドアを設計する際は、これらの制約を考慮する必要があります。
検証を支えるシーケンシャルロジック
シーケンシャルロジックの連鎖は、変数を使用して入力状態の進行を追跡し、検証のバックボーンを構築します。ワークショップモードは、整数、浮動小数点、ブール値、文字列、Vector3、座標の6種類の変数をサポートしています。パスワードドアの状態管理には、主に整数(Integer)とブール値(Boolean)が使用されます。
検証のフロー:
- 状態変数をデフォルト値に初期化する(整数なら0、ブール値ならfalse)
- 最初のトリガーエリアへのプレイヤーの進入を監視する
- 入力が期待される最初の要素と一致するか検証する
- 正しければ状態変数を更新し、間違っていればリセットする
- 後続の要素に対しても検証を繰り返す
- 最終的な状態がシーケンスの完了を確認したら、ドアを起動させる
グローバル変数を使用すれば、マップの複数のセクションにまたがるトリガー間でも状態を追跡できるため、広範囲なパスワードシステムに最適です。
必須のワークショップツール
機能的なパスワードドアを構築するには、トリガーボリューム、プリセットオブジェクト、UIエディタコンポーネント、そしてエグジーコード(Eggy Code)ブロックなど、複数のワークショップ要素を組み合わせる必要があります。
トリガーエリアのプロップ
イベントトリガーボリュームは、目に見えない入力検出器として機能します。トリガーの設定には、「詳細メニュー」>「ユニットを選択」>「エグジーコードを編集」からアクセスできます。
トリガーエリアは適切なサイズに設定する必要があります。ゾーンが大きすぎるとタイミングが曖昧になり、小さすぎるとプレイヤーにストレスを与えます。最適な寸法は、地面に設置する感圧板タイプなら直径2〜3エグジーユニット、壁掛けボタンなら1.5〜2ユニットです。
ボリュームユニットには特殊な形状もあります。円錐形(Cone)は方向性のある入力システムに適しており、半球形(Half Sphere)は180度の検出アークを提供するため、壁に取り付けられたボタンのシミュレーションに理想的です。
ドアオブジェクトと移動
物理的なドアコンポーネントには、視覚的な表現と移動のメカニズムが必要です。プリセットオブジェクトをドアの構造体として使い、その動きをエグジーコードで制御します。
ドアの移動方法:
表示/非表示メカニズム: 最もシンプルな方法です。正しいパスワードが入力されるとドアのプリセットが消えます。負荷が最小限で、即座にフィードバックを与えられます。
平行移動アニメーション: 座標ベースの移動で、スライドしたり回転したりして通路を現します。「アニメーション再生」ブロックを使用することで、あらかじめ定義された移動シーケンスを実行できます。
スキルライブラリの統合: 高度な実装では、プリセット編集のスキルライブラリを活用し、パスワードの状態と同期した多段階アニメーションなどのカスタム動作を実現できます。
ボタンプロップ vs 感圧板
入力の表現方法はプレイヤー体験に影響を与えます。ボタンプロップは明確な視覚的インジケーターを提供し、感圧板は環境に溶け込むさりげない統合を可能にします。
ボタンプロップが適しているケース:
- キーパッドを模した壁面パネル
- 特定の順序を必要とする垂直方向のシーケンス
- アクセシビリティを向上させるための明確な入力表示
感圧板が適しているケース:
- 床面を利用したパターン認識
- 入力箇所をあからさまにしたくないステルス重視のシステム
- 空間移動を必要とする大規模なパスワード
どちらもトリガーの仕組みは同じですが、選択によって視覚的な演出が変わります。
タイマーコンポーネント
時間制限を設けることで、緊張感を生み出せます。変数の操作と条件ロジックを使用してタイマーを実装します:
- 整数変数を最大許容時間(秒)に設定する
- 繰り返しトリガーを使用して、1秒ごとに変数を減らす
- 入力を受け付ける前に変数の値を確認する
- タイマーがゼロになったらパスワードの進行状況をリセットする
これには慎重な負荷管理が必要です。負荷制限に近いマップの場合は、最終ステージのみにタイマーを実装するなどの工夫をしましょう。
初めての3桁パスワードドアを作る
ここでは、パスワードの順序を「1-3-2」とした機能的な3桁システムを例に、コアコンセプトを解説します。
フェーズ1:物理的なドア構造
ドアのプリセットを目的の場所に配置します。壁、バリケード、ゲートなど、ロックされていることが明確に伝わるプリセットを選び、通路を完全に塞ぐように配置してください。
テキストプロップや視覚的なマーカーを使用して、「1」「2」「3」とラベル付けされた3つのボタンを配置します。誤って同時に起動しないよう、適切な間隔(最低2エグジーユニット)を空けて論理的に配置します。

各ボタンの近くに視覚的なフィードバック要素(ライトプロップや色が変わるインジケーター)を追加します。また、入力に失敗した際のリスポーン地点として、ドアの近くにガイドポイント(Guide Point)を配置します。
フェーズ2:入力トリガーエリア
各ボタンにイベントトリガーボリュームを付加します。トリガーのサイズは、ボタンの見た目プラス1.5ユニットの起動半径をカバーするように設定します。設定で「プレイヤーの進入イベント」のみを検出するように構成してください。
最初のトリガーのエグジーコードエディタを開きます。デフォルト値が0の整数変数「passwordState」を作成します。このグローバル変数が、すべてのボタンにわたる進行状況を追跡します。
最初のトリガーのロジック:
- 条件: passwordStateが0と等しいか確認
- アクション: passwordStateを1に設定
- フィードバック: ボタン1の視覚インジケーターを起動
ボタン2と3についても同様に設定します:
- ボタン2:passwordStateが1であることを確認し、2に設定
- ボタン3:passwordStateが2であることを確認し、3に設定
フェーズ3:シーケンシャルロジックチェーン
「1-3-2」の正確な順序を保証するために、間違ったボタンを押した際に進行をリセットするエラー処理を追加します。
ボタン1に以下の条件を追加します:
- 条件: もしpasswordStateが0以外であれば
- アクション: passwordStateを0に設定(リセット)
- フィードバック: エラー音を鳴らし、赤いインジケーターを点滅させる
ボタン2と3にも同様のリセットロジックを適用します。これにより、順序が少しでも狂うと最初からやり直しになる厳格なシーケンスが完成します。
また、別のトリガーやタイマーを使ってリセット機能を実装することもできます。「リセット」ボタンを置いてpasswordStateを0にするか、30秒間操作がない場合に自動リセットされるようにします。
フェーズ4:ドアの起動
ドアのプリセットに、passwordStateを継続的に監視する最終的なトリガーを作成します:
- 条件: passwordStateが3と等しくなったとき
- アクション: ドアを開ける(プリセットを非表示にするかアニメーションを再生)
- フィードバック: 成功音を鳴らし、完了メッセージを表示
完了からドアが開くまでに1〜2秒のディレイを入れると、インタラクションのリズムが心地よくなります。
正しい入力と、リセット機能が働くかどうかの意図的なエラーの両方をテストしてください。複数のパスワードシステムを持つ大規模なカスタムマップを作成する場合は、BitTopupでエグジーコインを安く購入して、プレミアムなワークショップアセットを活用しましょう。
高度なパスワードロジックシステム
4桁以上の複雑な構成
パスワードの長さを増やす場合も同じ順序の原則に従いますが、変数の管理にはより注意が必要です。4桁のシステムなら、passwordStateの範囲を0〜4に広げ、適切なチェックを行う4つ目のボタンを追加します。
パスワードが長くなるほど、負荷(インテンシティ)の管理が重要になります。トリガー、フィードバック要素、ロジックブロックが増えるたびに負荷を消費します。基本制限の18,000に近いマップでは、装飾要素よりもパスワードの複雑さを優先すべきです。
複数のドアを管理する場合、変数の命名が不可欠です。英数字とアンダースコアを使用し、特殊文字やスペース、数字から始まる名前は避けましょう。「door1_state」「door2_state」のような命名規則を推奨します。
6〜7桁を超えるパスワードの場合は、途中に検証ポイントを設けてセグメントごとに分割するチェックポイントシステムの実装を検討してください。
同時起動のためのANDロジック
ANDロジックは、複数の条件が同時に真である必要があります。これにより、複数のプレイヤーが連携して入力する協力型システムを作成できます。
ブール変数を使用した実装例:
- 必要なトリガーごとに個別のブール変数を作成する(button1Active, button2Activeなど)
- 各トリガーが進入時に対応するブール値をtrueに設定するように構成する
- すべてのブール値がtrueであるかを確認するマスター検証を追加する
- 検証が成功したら、ドアを起動させる
2〜3秒後にすべてのブール値をfalseに戻すタイムアウト機能を加えると、真に「同時」の起動が必要になります。
代替ルートのためのORロジック
ORロジックは、複数の有効なパスワードシーケンスを提供し、パズルの柔軟性とリプレイ性を高めます。
各ルートごとに個別の状態追跡を行う構造にします:
- ルートA: 「1-2-3」を追跡する passwordStateA を使用
- ルートB: 「3-1-2」を追跡する passwordStateB を使用
- ドアトリガー: passwordStateA または passwordStateB のいずれかが完了したら開く
これにより、選んだルートによって異なるストーリー展開を見せるなどの演出が可能になります。
時間制限付き入力システム
時間制限を加えることで、パスワードドアがスキルチャレンジへと変わります。制限時間内に完了しなかった場合に進行をリセットするカウントダウンタイマーを実装しましょう。
整数変数 timeRemaining を使用したタイマーの作成:
- デフォルト値を制限時間(例:30秒なら30)に設定する
- 繰り返しトリガーで1秒ごとに timeRemaining を1減らす
- timeRemaining が0になったら、passwordState を0にリセットする条件を追加する
- UIエディタの入力ボックスと「文字列に変換」ブロックを使用して timeRemaining を表示する
テキストウィジェットに「テキスト内容を設定」ブロックを接続して、目に見えるカウントダウンを表示させます。
トリガーエリアの配置と最適化
最適な間隔
トリガーの間隔は、プレイヤーの移動パターンを考慮する必要があります。地面に設置するトリガーは、同時起動を防ぐために最低2.5エグジーユニットの間隔が必要です。壁掛けタイプなら1.5ユニットまで近づけられます。
プレイヤーが近づく角度も考慮しましょう。自然な移動経路に対して垂直に配置されたトリガーは、急な方向転換を必要とするものよりも正確に起動します。
異なる移動速度でテストしてください。走っているプレイヤーは衝突判定半径が大きくなります。移動速度のばらつきを考慮し、0.5ユニット程度のバッファゾーンを設けてトリガーを配置するのが理想的です。
衝突検出の感度
トリガーボリュームのサイズで感度を調整します。大きめのボリューム(2〜3ユニット)はモバイルプレイヤーにとって寛容な起動ゾーンとなります。小さめのボリューム(1〜1.5ユニット)は、正確な操作を求めるチャレンジ要素になります。
難易度を適応させるために、複数のトリガーサイズを重ねることもできます。中心に小さく正確なトリガーを置き、その周囲を大きめで寛容なトリガーで囲む手法です。
パフォーマンスへの影響
アクティブなトリガーは処理リソースを消費し、負荷の合計に加算されます。6つ以上のトリガーを持つ複雑なドアは、すぐに制限に達する可能性があります。
以下の方法で最適化しましょう:
- 不要な時は無効化: プレイヤーが近づくまで遠くのドアのトリガーを非表示(無効)にする
- フィードバックの集約: 複数のインジケーターを使う代わりに、色が変わるロジックを持つ単一のライトプロップを使用する
- 継続的なチェックの最小化: 常時監視ではなく、イベントベースのトリガーに置き換える
- 変数の再利用: 独立して追跡する必要がない場合は、複数のドアでグローバル変数を共有する
設定メニューの「ルール設定」から負荷状況をこまめに確認してください。
モバイル向けのサイズ調整
モバイルプレイヤーには特別な配慮が必要です。タッチスクリーン操作はマウスやキーボードほどの精度がありません。
モバイルフレンドリーなトリガーを実装するには:
- PC向けサイズよりトリガー半径を25〜30%大きくする
- 起動ゾーンを明確に示す視覚的な境界線を追加する
- カメラ角度が厳しくなるマップの端にはトリガーを置かない
- カメラを傾ける必要がある垂直方向の配置を避ける
公開前に必ず実際のモバイル端末でテストを行ってください。
視覚的フィードバックとプレイヤー体験
ライトインジケーター
ライトプロップは最も効果的なフィードバック手段です。各ボタンの近くに色付きのライトを配置し、状態に応じて色を変えるようにします:

- 待機中: 暗い白またはグレー
- 正しい入力: 明るい緑
- 間違った入力: 赤の点滅
- 完了: 黄金色または黄色のパルス
検証ロジックに接続されたエグジーコードブロックを通じて、ライトの状態変化を実装します。
また、全体の進行状況を示すプロップを設置しましょう。各桁に対応するライトを一列に並べ、進むにつれて順番に点灯させていくのが効果的です。
効果音の統合
オーディオは、特に視覚的なインジケーターが画面外にある場合に、即座に状況を伝える役割を果たします。
3段階のサウンドシステムを推奨します:
- 入力受付: 起動を確認する控えめなクリック音やビープ音
- ステップ正解: 心地よいチャイム音や上昇音
- 不正解: 鈍いブザー音や下降音
- 完了: 勝利を感じさせるファンファーレや機械的な解錠音
音を重ねることで、情報密度の高いフィードバックを提供できます。
進行状況の表示システム
物理的なプロップの配置で入力状況を可視化します:
数字ディスプレイ: 数字プロップ(0〜9)を並べ、現在入力されている桁をハイライトします。
バーグラフ: ブロックを積み重ねて、セグメントを完了するごとに溜まっていくプログレスバーを作成します。
象徴的な表現: スチームパンクなら回転するギア、研究所テーマなら液体が溜まる試験管など、世界観に合わせたプロップを使用します。
これらの表示を、条件付きトリガーを使って passwordState 変数と連動させます。
エラー表示
明確なエラー通知はプレイヤーの挫折を防ぎます。多感覚的なフィードバックを実装しましょう:
視覚的: すべてのボタンを赤く点滅させる、ドアを揺らす、大きな「X」印を表示する 聴覚的: 成功音とは明らかに異なる失敗音を鳴らす 情報メッセージ: UIエディタの入力ボックスを使用して、具体的なエラー内容を表示する
エラーフィードバックが終わったら、すべてのインジケーターをデフォルト状態に戻します。
よくある間違いとトラブルシューティング
ドアが開かない理由(トップ5)
1. 変数のスコープミス: グローバルスコープが必要な場面でローカル変数を使用していると、状態の追跡に失敗します。解決策:すべてのパスワード変数が「グローバル」に設定されているか確認してください。
2. 条件ロジックの誤り: 状態チェックの数値が1つずれている(Off-by-oneエラー)と起動しません。解決策:各状態の遷移を手動で追い、最終状態がドアの起動条件と一致するか確認してください。
3. リセット機能の欠如: 適切なリセットロジックがないと、一度間違えただけでシステムが不定な状態のままになります。解決策:すべての変数をデフォルトに戻す包括的なリセットトリガーを実装してください。
4. トリガーの重複干渉: エリアが重なっていると、同時に起動してシーケンスを飛ばしてしまうことがあります。解決策:最低0.5ユニットの間隔を空け、意図しない重なりがないか確認してください。
5. 負荷制限(インテンシティ)超過: 制限を超えると、新しいロジック要素が機能しなくなります。解決策:総負荷を監視し、冗長なトリガーを統合して最適化してください。
タイミング問題の修正
タイミングの問題は、入力のスキップ、二重登録、または順序の逆転として現れます。
二重登録を防ぐ「デバウンス(チャタリング防止)」ロジックを実装します:
- デフォルトがfalseのブール変数 inputLocked を追加する
- いずれかのトリガーが起動したら、inputLocked をtrueにする
- パスワード入力ロジックを処理する
- 0.5秒後、inputLocked をfalseに戻す
- inputLocked がtrueの間はすべての起動を無視する
順序が逆転する場合は、タイムスタンプ追跡を使用して、入力を受け付けるまでの最小待機時間を設定してください。
衝突検出の解決
プレイヤーがゾーンに入っているのにトリガーが反応しない場合があります。
エンティティタイプの不一致: 「陣営(Faction)」用に設定されたトリガーは、個々のプレイヤーには反応しません。解決策:検出対象を「プレイヤー(Player)」エンティティタイプに設定してください。
ボリューム形状の問題: 角度のついた矩形トリガーは、境界線が予想外の形になることがあります。解決策:予測しやすい円錐や半球を使用してください。
Z軸の配置ミス: トリガーが高すぎたり低すぎたりすると検出に失敗します。解決策:中心をプレイヤーの腰の高さ(地面から約1エグジーユニット上)に配置してください。
一時的に視覚的なフィードバックを追加して、どのトリガーが正しく機能しているかを確認しながらテストしましょう。
意図しない起動の防止
飛び道具の干渉: プレイヤーエンティティのみを検出し、飛び道具を除外するようにトリガーを構成します。
観戦モードでの起動: 起動したエンティティがアクティブで生存しているプレイヤーであることを確認する条件チェックを追加します。
リスポーン地点との干渉: リスポーン地点(ガイドポイント)は、パスワードトリガーから少なくとも3ユニット以上離して配置します。
チームメンバーの干渉: 特定のチームメンバーにのみ反応する陣営固有のトリガーを実装します。
セキュリティとバイパス(近道)の防止
ジャンプ越えの阻止
ジャンプによるショートカットを防ぐ方法:
天井のバリケード: ドアの上に、上方に5〜6ユニット伸びる見えない壁を配置します。
検出ゾーン: ドアの上や周囲に、不正な通過を検出するトリガーを作成します。パスワードを完了せずに進入したプレイヤーをスタート地点にテレポートさせます。
建築的な統合: 張り出した構造物、低い天井、狭い通路など、物理的にジャンプで越えられないように周囲を設計します。
さまざまな角度や距離から最大高度のジャンプを試してテストしてください。
壁抜け(クリッピング)の防止
ドアの構造を強化して壁抜けを防ぎます:
厚みのレイヤリング: 3つ以上のプリセットレイヤーを重ねてドアを構築し、衝突判定の隙間をなくします。
背面の補強: 装飾的なドア要素の背後に、大きくて頑丈なプリセットを配置します。
衝突判定の検証: あらゆる角度から近づき、通り抜けられないかテストします。
テレポートトリガー: ドアの直後に不正な侵入を検出するトリガーを置き、侵入者を押し戻すかテレポートさせます。
フェイルセーフ・リセット機能
マップの再起動が必要になるような「詰み」の状態を防ぎます:
手動リセットボタン: すべてのパスワード変数をデフォルトに戻す、明確にマークされたリセットボタンを設置します。
自動タイムアウト: 最後の入力からの時間を監視するタイマーを作成します。60秒間アクションがない場合、すべての変数を自動リセットします。
チェックポイントの統合: 複数のドアがあるマップでは、進行状況を保存するチェックポイントを実装します。
管理者用オーバーライド: テスト用に、条件を無視して通過できる隠しトリガーを用意しておきます。
脆弱性のテスト
体系的な脆弱性テストの実施:
- 外周テスト: ドアの周囲を歩き回り、隙間、ジャンプポイント、壁抜けの弱点がないか探す
- スピードテスト: 最大スプリントで複数の角度から突っ込んでみる
- 協力テスト: 複数のプレイヤーで同時に起動させ、予期しない状態にならないか確認する
- エッジケーステスト: ジャンプ中、落下中、または特殊な移動状態で進入を試みる
- 永続性テスト: マップの再起動、死亡、チーム変更の後に状態が正しくリセットされるか確認する
発見した脆弱性と解決策をテストログに記録しておきましょう。
テストと改善のベストプラクティス
ソロテスト・プロトコル
機能検証(15〜20分):
- 正しいシーケンスを5回連続でテストする
- 10通りの異なる間違ったシーケンスを試し、リセットを確認する
- 各ボタンを単独でテストし、起動を確認する
- 視覚/聴覚フィードバックが正しくトリガーされるか確認する
- パスワード完了時にドアが確実に開くことを確認する
エッジケーステスト(10〜15分):
- トリガーを素早く連続で叩く(ボタン連打)
- 入力の間に長いディレイ(30秒以上)を置く
- ジャンプ、落下、高速移動中に入力を試みる
- マップ読み込み直後と、長時間プレイした後の両方でテストする
- 複数のプレイヤーが同時にいる状態での挙動を確認する
ユーザー体験テスト(10分):
- 予備知識のない初見プレイヤーのつもりでアプローチする
- 入力場所が直感的にわかるか評価する
- フィードバックが成功/失敗を明確に伝えているか判断する
- 難易度が意図したレベルに合っているか確認する
マルチプレイヤー・負荷テスト
同時アクセス確認:
- 2〜4人のプレイヤーで同時に進入を試みる
- 一人のプレイヤーの入力が他人の邪魔にならないか確認する
- 複数人で協力して完了できるかテストする
ネットワーク遅延のシミュレーション:
- 接続環境が異なるプレイヤー同士でテストする
- 遅延があっても入力登録が信頼できるか確認する
- 視覚フィードバックが全クライアントで同期しているか確認する
嫌がらせ(グリーフィング)防止:
- 一人のプレイヤーが他人の入力を意図的に妨害してみる
- 連打によってシステムが不安定にならないかテストする
- 複数のプレイヤーがトリガーを引いてもリセット機能が働くか確認する
パフォーマンス監視
フレームレートの監視:
- ドアを操作している間のフレームレートを観察する
- トリガー起動時にカクつきやラグがないか確認する
- 最大プレイヤー数でのパフォーマンスをテストする
負荷予算の分析:
- 実装後のマップ総負荷を確認する
- どのコンポーネントが最も負荷を消費しているか特定する
- 制限に近い場合は、高負荷な要素を最適化する
モバイル端末でのテスト:
- エミュレータではなく、実際のモバイル端末でテストする
- タッチ操作で確実にトリガーが起動するか確認する
- 小さな画面でも視覚フィードバックが見えるか確認する
- ミドルレンジの端末での動作を確認する
コミュニティフィードバックの統合
構造化されたフィードバック収集:
- パスワードドアの体験について具体的な質問を用意する
- 難易度を1〜10で評価してもらう
- 分かりやすさを向上させるための提案を求める
- バイパス方法を見つけなかったか尋ねる
観察分析:
- プレイ動画を見て、プレイヤーがどうドアにアプローチするか観察する
- 共通の間違いや混乱しているポイントを特定する
- 説明なしでシステムを理解できているか確認する
反復的な洗練:
- 一貫したフィードバックに基づいて変更を実装する
- 修正したシステムを新しいプレイヤーで再テストする
- バージョン間での完了率や満足度スコアを比較する
クリエイティブなパスワードのバリエーション
色ベースのシステム
数字の代わりに色のついたボタンを使用します。プレイヤーは特定の色順にトリガーを起動させます。
実装方法:
- 4〜6色の異なるボタンプロップ(赤、青、緑、黄、紫、オレンジ)を作成する
- 各色に数値(赤=1、青=2など)を割り当てて状態を追跡する
- 環境ストーリーテリングを通じて色の順序のヒントを提示する
色ベースのシステムは、ヒントを物語の要素に組み込みやすいナラティブ重視のマップに適しています。
音符シーケンス
音ベースの入力です。プレイヤーは特定の音を奏でるトリガーを順番に起動させます。
作成方法:
- 各トリガーに固有の効果音(異なる音階)を割り当てる
- 正しいシーケンスを奏でるオーディオヒントを用意する
- プレイヤーに音のパターンを記憶させ、再現させる
音楽システムは、視覚的な変化に富むだけでなく、アクセシビリティの向上にもつながります。
チーム協力ギミック
複数のプレイヤーが離れた場所にあるトリガーを同時に、あるいは連携して起動させる必要があります。
設計のポイント:
- プレイヤーが分かれる必要がある、物理的に離れたトリガー
- ANDロジックを使用した同時起動の要件
- メンバーごとに異なる役割を果たすロール別入力
チーム戦モードや、グループプレイを前提としたソーシャルマップに最適です。
ストーリー連動型パズルドア
パスワードドアを物語の一部にします。パスワード自体がプロットを解き明かすパズルになります。
実装テクニック:
- マップ中に散らばった読み物プロップにヒントを隠す
- NPCとの会話でヒントが得られるようにする
- 環境パズルを解くとパスワードの数字が判明するように設計する
- 複数のドアを連動させ、順を追って物語が語られるようにする
ストーリー性のあるパスワードは、プレイヤーのエンゲージメントとマップの記憶に残る度合いを劇的に高めます。
よくある質問(FAQ)
エグジー・パーティのワークショップでトリガーエリアはどう機能しますか?
トリガーエリアは、プレイヤーやオブジェクトが指定された空間に進入、退出、または滞在したことを監視する目に見えない検出ゾーンです。設定は「詳細メニュー」>「ユニットを選択」>「エグジーコードを編集」から行えます。トリガーはエンティティタイプ(プレイヤー、陣営、物理コンポーネント)に基づいて起動し、変数の変更、プリセットの表示/非表示、アニメーションの再生、マップイベントの発生などのエグジーコードを実行します。
パスワードドアに使用できるトリガーエリアの最大数は?
特定の個数制限ではなく、マップ全体の「負荷(インテンシティ)」予算に依存します。基本負荷は18,000で、職人ポイントに応じて最大25,000まで増加します。各トリガー、ロジックブロック、フィードバック要素が負荷を消費します。一般的な実装では、入力検出に3〜8個、リセットやバイパス防止に数個のトリガーを使用します。他の要素を最適化すれば、12個以上のトリガーを持つ複雑なシステムも構築可能です。
4桁のパスワードドアは作れますか?
はい、4桁のドアも3桁と同じシーケンシャルロジックで作れますが、状態追跡変数の範囲を広げる必要があります。整数変数 passwordState を作成し、0(入力なし)から4(完了)までの値を持たせます。4つのトリガーを配置し、それぞれが適切な状態値を確認してから数値を加算するように構成します。4つ目のトリガーで passwordState が4になったらドアを開けます。長いパスワードは負荷管理に注意し、プレイヤーのストレスを減らすためのチェックポイントを設けるのが良いでしょう。
プレイヤーがパスワードドアをバイパスするのを防ぐには?
多層的な防御を実装しましょう:(1) ドアの上に5〜6ユニットの見えない壁を置いてジャンプ越えを防ぐ、(2) ドアのプリセットを重ねて壁抜けの隙間をなくす、(3) ドアの背後に検出トリガーを置き、不正なプレイヤーをテレポートで戻す、(4) 装飾の裏に頑丈なプリセットを配置する、(5) あらゆる角度や速度でバイパスできないか徹底的にテストする。物理的な障壁と検出システムを組み合わせるのが最も安全です。
パスワード入力に視覚的なフィードバックを追加するには?
各ボタンの近くにライトプロップを配置します。エグジーコードを使用して、状態に応じてライトの色を変えるように設定します(待機中は白、正解は緑、エラーは赤の点滅、完了は黄金色のパルスなど)。物理コンポーネントのプロパティを変更するには「変数を設定」ブロックを使用します。また、各桁に対応するライトを並べ、進捗に合わせて順番に点灯させるインジケーターを作るのも効果的です。
パスワードドアを自動的にリセットさせることはできますか?
はい、タイマーベースの変数監視で自動リセットを実装できます。最後の入力からの時間を追跡する整数変数を作成し、繰り返しトリガーで1秒ごとに加算します。その値がしきい値(通常30〜60秒)を超えたら、すべてのパスワード変数をデフォルトに戻す条件を追加します。また、間違った順序を入力した瞬間にリセットされるように構成することも可能です。自動リセットと手動リセットボタンを併用すると、プレイヤーの利便性が高まります。
プレミアムな『エグジー・パーティ』コンテンツや限定ワークショップアイテムをアンロックする準備はできましたか?BitTopupなら、安全かつ迅速に、お得なレートでチャージが可能です。あなたのクリエイティブな旅を今すぐパワーアップさせましょう!



















