🍛 CURRY.EXE
UE5.6
1. 🎮 概要
Item | Description |
---|---|
Title | CURRY.exe |
Genre | Multi-monitor Management / Pseudo Tower Defense / Task-focused Horror |
Engine | Unreal Engine 5.6 (Release: June 2025) |
Platforms | PC (Steam, itch.io) |
Mode | Single-player (Online co-op planned) |
Pricing | Paid, one-time purchase – USD $4.99 |
Session | 3 minutes per game |
2. 🎯 コンセプト定義
- プレイヤーは ロボット給食室のオペレーター
- 基本的に一人称視点で、キャラクター(人物)は画面上に登場しない
- 操作負荷と認知資源を極限まで活用するタスク過密型ストレス
- 目標:できるだけ大量の高品質カレーを完成させる
- 手段:8枚のモニタを切り替え操作し、調理工程を進行・監視
- 妨害:モニタ上で発生する“視認阻害型エラー”
- 放置:侵食率上昇 → 臨界で悪魔出現 → ゲームオーバー
3. 🔄 ゲーム進行構造
■ 時間構造
- 制限時間:3分
- ゲーム内時間はリアルタイム進行
- モニタごとに一定間隔でエラーが発生
- モニタを切り替えながら、調理操作 と エラー対応 を並列実行
- 操作はすべて 中断不可(例:鍋を放置すれば焦げる)
■ ゲームオーバー条件
条件 | 結果 |
---|---|
いずれかのモニタが侵食100% | 悪魔出現、ジャンプスケア、即終了 |
時間切れ & カレー未完成 | 配送中止、失敗ログ表示 |
4. 🖥️ モニタ構造一覧
No. | モニタ名 | 担当セクション | 説明 |
---|---|---|---|
1 | BOIL | 加熱・煮込みステーション | 火力・撹拌・温度の最適制御が鍵。煮崩れ・加熱不足に注意。 |
2 | PREP | プリパレーション/下ごしらえセクション | カット・皮むき・整形など。切り方が味と火通りに直結。 |
3 | SPICE | スパイス調合ステーション | 香辛料の分量と順序制御。風味の要でミスは致命的。 |
4 | STOCK | 冷蔵/冷凍ストレージ | 食材の鮮度・保管状態・誤搬出リスクあり。 |
5 | WATER | 水回り設備(洗浄・炊飯) | 水供給ミスで品質・衛生に影響。 |
6 | GEAR | 調理器具/什器管理 | 器具の品質・衛生・破損対応が重要。 |
7 | ARM | 搬送ライン制御 | 各セクション間をつなぐ要。暴走・混入に注意。 |
8 | CAM | 監視ステーション | 他モニタの視覚確認専用UI。唯一の映像系統。 |
💡 No.1〜7は数値・アイコン・インジケータのみ表示 💡 実際の映像はCAM(8番)モニタに投影
5. ✅ 技術設計(UE 5.6)
項目カテゴリ | 採用技術・構成 | 適用箇所 | 主な目的/演出 | 補足・最適化方針 |
---|---|---|---|---|
視覚表現 | SceneCapture2D | Monitor 8(CAM) | 映像監視と侵食表示 | RT解像度調整、Capture Every N Frames で更新負荷制御 |
Lumen HWRT | 全画面(特にSPICE/HEAT) | 光源・反射ノイズの“照度異常”演出 | PostProcessVolumeと連動、残像処理含む | |
Substrate Material | UI、CAM映像、画面端 | モニタUIの“表面剥離”演出 | Layeredマテリアルで段階的侵食を再現 | |
Niagara(UI内粒子) | メーター、スライダー等 | UI構成要素内部の“ノイズ干渉” | Niagara UI Renderer による最適化 | |
Control Rig Physics | 悪魔の出現演出 | 自己組立モーションによる不気味さ演出 | 毎回異なる形状に変化可能 | |
音響設計 | MetaSound | UI, 警告音, 妨害音 | 認知資源の攪乱(定位・位相のズレ) | Monitor別パン・妨害時の定位乱れでUX強化 |
UX支援 | Gameplay Ability System | 全UIステータス | 状態異常(SCRAMBLE, PANIC等)のカテゴリ管理 | モジュール化・リプレイ解析に有用 |
Replay System | CAM履歴再生 | “事故の可視化”として最後の行動30秒を保存 | Take Recorder 連携可能 | |
UX補助 | UMG(制御UI) | モニタ切替、状況表示 | 緊張感と直感操作の両立 | GPU負荷監視と部分的C++化も視野 |
視覚補助 | PostProcess Volume | CAM映像、全体 | 侵食・幻覚・ノイズの映像加工 | Lumenとの併用による効果の重畳制御 |
📌 特記事項
-
軽量化/負荷分散方針:
- SceneCapture2Dの解像度・更新頻度を分離管理
- NiagaraはGPU Execution +
Fixed Bounds
指定で描画負荷を安定化 - Replayはバッファ式30秒録画でセッション保存は任意対応
-
再利用性/運用強化:
- GASを用いた侵食・UI障害のカテゴリ設計で、敵ごとの“干渉パターン”を構造的に切替可能
- Substrateを導入することで、触覚的マテリアルUXへの拡張も可能
6. 🧩 視認阻害型エラー
エラー | 効果内容 |
---|---|
BLACKOUT | 画面が一時的に完全暗転 |
GLITCH | 滲み・色反転・ノイズ混乱(Chroma/RGB シフトなど) |
DISTORT | 歪曲・傾き・FOV 異常変化 |
LAG | 映像が数秒遅れて表示される |
SCRAMBLE | モザイク/ブロック化で重要情報を遮断 |
7. 🏁 スコア・評価基準
項目 | 内容 |
---|---|
完成カレー量(L) | 大型寸胴鍋での調理量をリットル単位で計測。完成度・完成量がスコアに直結。 |
品質評価 | スパイスの質、肉・野菜など食材のコラボレーション度合いを内部評価アルゴリズムで統合的に算出。 |
操作精度 | 調理過程での操作ミス・中断の回避度合い。 |
エラー解消度 | 発生したエラーに対する対応成功率。 |
総合評価 | 上記各要素を加味した総合品質スコア。品質の高さが子どもたちの満足度・笑顔演出に直結。 |
8. ✨ 世界観
- プレイヤーの最終目標は 高品質なカレーを調理し、こどもたちの笑顔と「ありがとう」の言葉をもらうこと
- スコアが高いほど、カレーの質感・音・演出が豊かになり、子どもたちの反応もより多彩に表現される
- プレイ中の緊張感と達成感の両立を追求し、心理的満足度を高めるUX設計
9. 🤝 オンライン協力モード 検討事項
将来的に複数プレイヤーによる協力プレイ(例:2人でモニタを分担して操作する形式)を対応する場合のアイディアと設計上の注意点:
-
モニタ割当
- 例:「User1=BOIL/PREP/SPICE/ARM」、「User2=STOCK/WATER/GEAR/CAM」
- 各プレイヤーのタスク領域が視覚/操作範囲で固定される非対称バランスとし、認知的に補完し合う協力設計を模索
-
操作干渉とフェイルセーフの仕様
- 他ユーザが担当中のセクションを誤操作した際、通知+強制リカバリ/ELement Undo(誤搬出操作のキャンセルなど)
- 相互UIロックやショート割込許可(例:User1が操作中でも User2 が緊急割込ボタンを押せる)
-
視覚的排他
- 本人担当モニタには常に集中状態フェードエフェクトをかけ、他ユーザのモニタ切替は背景化(処理負荷を低減し、集中状態を優先する演出にも)
-
協力/対立演出パターン
- モニタ侵食は協力的にカバーできるが、ランダム条件下では「User2 の妨害が他方の侵食を誘発」する
- 自律的な AI 悪魔 “プロセス” が、どちらか一方のタスク破綻時に相互協力を分断するイベントを発火
-
同期 UI 破綻演出
- 協力プレイ中に「両方のモニタ群で異なる妨害が同期せず同時発生」し、原因追跡の混乱を誘う
- 同時侵食フェーズ進行時の視界ズレによる心理的錯乱 UX
-
リプレイと評価共有
- ゲームオーバー後に各ユーザーの担当 CAM モニタに相手側の失敗側の視点をReplay表示
- どちらか片方のスコア/ミス履歴が共有され、“どちらがより早くリカバリしたか”でボーナス 等の実績評価仕様
-
ネット通信設計と同期戦略
- タスク≒モニタ状態を
ActorReplicator
として同期。侵食状態・操作ログ・サウンドタイミングを整合 - Latency Buffer を用いた「遅延感演出」:あえて LAG 感を加味した演出として誤同期演出活用
- タスク≒モニタ状態を
10. 🍕 開発チケット
Phase | Ticket-ID | Title | Description |
---|---|---|---|
F1 | F1-01 | プロジェクト構成設計 | コンテンツディレクトリ設計/命名規則策定/モジュール分離計画 |
F1 | F1-02 | 必須プラグインの有効化 | Niagara, MetaSound, MovieRender などの有効化 |
F1 | F1-03 | 初期マップ構成 | Persistent Level+サブマップ(UI/演出/検証用) |
F1 | F1-04 | モニタ構成ドキュメント | 各モニタに割り当てるドメイン定義と役割整理 |
F1 | F1-05 | ゲームフロー設計 | 状態遷移図/ステートチャート作成 |
F2 | F2-01 | UIテンプレート作成 | 外枠/警告UI/基本構造用UMG Widgetの共通化 |
F2 | F2-02 | 各モニタ専用Widget作成 | ドメインごとのUI表示設計とUMG構築(1〜7) |
F2 | F2-03 | アイコン・素材最適化 | UI向けTexture Atlas/マテリアル統合 |
F2 | F2-04 | データバインディング設計 | 状態同期用Dispatcher設計/双方向バインディング実装 |
F2 | F2-05 | レイアウトのDPIスケーリング対応 | UMGのScaleBox/自動スケーリング設定 |
F3 | F3-01 | SceneCapture2D設定 | RenderTarget作成→UIマテリアル貼付 |
F3 | F3-02 | CAMエフェクト設計 | 歪み・妨害・破綻のPPマテリアル/PostProcessVolume連携 |
F3 | F3-03 | CAM映像切替演出 | マテリアルスワップ/フェード処理/Timeline制御 |
F3 | F3-04 | CAM内イベント発火制御 | Level BlueprintまたはSequencerによる制御 |
F4 | F4-01 | 妨害ステート管理設計 | EnumとState Machineで妨害状態を制御 |
F4 | F4-02 | 妨害発生条件とロジック | Curve+Timerによる非同期発火制御 |
F4 | F4-03 | モニタ間状態同期制御 | StructとBlueprint通信による情報共有 |
F4 | F4-04 | ゲーム進行制御 | GameModeとGameStateで進行フェーズを一括管理 |
F4 | F4-05 | UI遷移アニメーション統一設計 | Timeline/アニメーション管理Blueprint |
F4 | F4-06 | 時間・進行率のグローバル管理 | GameStateに集中定義、全体制御タイマー実装 |
F5 | F5-01 | 入力制御・モニタ切替 | Enhanced Inputによるキー/マウス入力+切替処理 |
F5 | F5-02 | 妨害中の操作制限 | 入力封鎖+BP内Flagによる制御 |
F5 | F5-03 | UI破壊演出設計 | マテリアルによるノイズ・クラッシュ演出 |
F5 | F5-04 | 不正操作リアクション | タイムラグ・警告UIによるUX設計 |
F6 | F6-01 | ホラー環境音設計 | MetaSoundによる音響環境構築 |
F6 | F6-02 | 妨害音・異常音作成 | パラメトリック駆動で変化するノイズ/破綻音 |
F6 | F6-03 | CAM映像音連動 | SceneCapture状態と音響の同期 |
F6 | F6-04 | 音の定位/距離感調整 | Attenuation設定/Stereo Pan調整 |
F6 | F6-05 | 音量バランスとMix管理 | SoundClass/SoundMixによる制御 |
F7 | F7-01 | UMG負荷測定 | Overdrawチェック/Stat GPU/Profiler |
F7 | F7-02 | CAM描画負荷測定 | 更新頻度制御/RTサイズ見直し |
F8 | F8-01 | パッケージング設定最終調整 | Windowsパッケージング向け設定の見直し |
F8 | F8-02 | Blueprint Warnings撲滅 | Output Log精査/FixUp作業 |
F8 | F8-03 | チュートリアル・操作ガイド整備 | 簡易操作説明UI+フェード付きUMG |
F8 | F8-04 | 開発者向けUI/ショートカットの無効化 | ブランチ条件/ビルドスイッチで分岐 |
F8 | F8-05 | リリース用ドキュメント整備 | 操作マニュアル・設計書・使用ライブラリ記載 |