https://github.com/Disenchanter/Shoot_Demo_Scripts https://youtu.be/XcU8ZWZdkio
- 企画・要件整理: 約1週間
- Unityクライアント実装(プレイヤー操作、戦闘、UI、シーン遷移): 約3〜4週間
- バックエンド実装(認証、在庫、進行データ、API): 約1〜2週間
- 結合テスト・不具合修正・調整: 約1〜2週間
- 合計: 約6〜9週間(概算)
- 設計・仕様検討: 2〜3時間
- 実装(Unity/C#): 9〜13時間
- 実装(Node.js/Express/MongoDB): 3〜5時間
- テスト・デバッグ・調整: 3〜5時間
- 総工数: 約20〜30時間(概算)
- 体制: 1名(個人開発)
- 構成:
- クライアント開発(Unity/C#)
- サーバー開発(Node.js/Express)
- データベース設計(MongoDB)
- ゲーム設計・UI設計・テスト
- 企画/設計:
- コアゲームループ(移動、射撃、敵AI、クリア条件)の仕様定義
- データ連携方針(ログイン、在庫、進行度、強化値)の設計
- クライアント実装(Unity):
- プレイヤー操作(移動、ジャンプ、ダッシュ、射撃、リロード)
- 戦闘システム(弾挙動、ダメージ処理、撃破カウント)
- UIシステム(認証、メニュー、HUD、インベントリ、設定)
- シーン管理と遷移(Auth/MainMenu/MainGame/Inventory/Settings)
- サーバー実装(Node.js):
- 認証API、在庫API、進行データAPIの実装
- DB保存・読込処理、入力検証、ログ出力
- 品質対応:
- 不具合切り分け、パラメータ調整、動作確認
- セットアップ/運用ドキュメント作成
- クライアント:
- Unityプロジェクト(C#スクリプト)
- PC(キーボード/マウス操作)
- サーバー:
- Node.js + Express
- MongoDB(ローカル起動)
- ネットワーク/接続:
- APIサーバー: http://localhost:3000
- MongoDB: mongodb://localhost:27017
- 実行モード:
- オンライン(認証・データ連携あり)
- オフライン(ゲストプレイ)
- 基本操作:
- W/A/S/D: 移動
- Space: ジャンプ
- Left Shift: ダッシュ
- マウス左クリック: 射撃
- R: リロード
- Tab: インベントリ表示(シーン/実装設定に応じて)
- ゲーム開始手順:
- MongoDBを起動
- Node.jsサーバーを起動
- Unityでプロジェクトを開き、認証シーンから再生
- ログインまたはゲストで開始
- 目的:
- 敵の攻撃を回避/撃破しながら進行
- 終点へ到達してクリア
- 本作品は「Unityクライアント + Webバックエンド + DB」の連携を、 実際に遊べる3Dシューティングの形で検証・実装することを目的として制作した。
- 単なるローカル完結ではなく、以下を重視した:
- 認証とプレイヤーデータの永続化
- リアルタイムなゲーム体験(戦闘、UI反映、状態更新)
- モジュール分割による保守性(Gameplay/UI/Common)
- 設計上は、今後の拡張(武器種追加、敵パターン追加、ステージ追加、 オンライン機能強化)を想定し、責務分離と再利用性を意識している。
- 学習面では、ゲームプレイ実装だけでなく、 API設計・データ整合・エラー処理まで一貫して扱うことで、 フルスタック型の開発経験を得ることを狙った。