專案總覽
專案簡介
Seven Divines 是一款以 Unity 6(URP 2D)開發的 2D 類銀河戰士惡魔城動作平台遊戲,由 U-E-Production 四人團隊開發。玩家扮演由研究員瑞斯可創造的機械少女諾薇亞,在各式測試場域中進行能力試煉。本專案定位為小型練習專案,重點放在行為狀態機與移動執行引擎的設計實踐。
核心理念
高品質移動手感:精準的平台跳躍與技巧操作是整個專案的地基
知識鎖進度:靠玩家理解機制推進,而非單純收集能力解鎖
可疊加動作:基礎動作組合出高階技巧,例如衝刺接跳躍形成動態移轉
系統導向架構:以狀態機決策、執行器執行,職責分明
我的職責
作為團隊負責人與主要開發者,我負責:
系統架構設計
設計以
PlayerStateMachine決策、LocomotionExecutor執行的角色控制架構規劃 Override/Combat/Locomotion 三層行為系統
建立輸入抽象層、輸入緩衝與資源管理機制
定義專案資料夾結構,並於 Sprint 0 凍結一級目錄
專案管理
制定 Git Flow 分支策略、Code Review 規範與協作準則
建立 GitHub Actions 工作流,依版本號自動建立 Tag、Release 與 Changelog
撰寫架構文件、測試準則、製作準則與除錯指南
核心功能
1. 行為狀態機
以狀態機管理角色所有狀態與轉換,執行器負責實際物理移動
輸入在狀態機內統一取樣,避免重複更新
2. 移動執行引擎
基礎動作:走、跑、跳、蹲、翻滾
進階動作:地面衝刺、空中衝刺
手感細節:Coyote Time、跳躍處理與 Corner Correction,數值集中於
MovementConfig設定檔調校
3. 輸入系統
基於 New Input System 的 Action Map,支援鍵盤滑鼠、手把、觸控與 XR
輸入快照與輸入緩衝皆有 EditMode 單元測試
4. 知識鎖設計
關卡皆為瑞斯可設計的測試場,以環境而非文字教學引導玩家
高階技巧不給提示,由玩家透過實驗自行發現
使用技術
引擎與渲染
Unity 6:遊戲引擎
URP 2D:2D 渲染管線,像素美術以 PPU 32、Point Filter 呈現
核心套件
New Input System:多平台輸入映射
2D Animation / Aseprite Importer:精靈動畫與素材匯入
2D Tilemap:關卡建構
Unity Test Framework:EditMode 測試
開發工具
C#:主要腳本語言
GitHub Actions:CI/CD 與版本自動化
OpenAI API:由 commit 紀錄自動生成 Changelog
專案狀態
目前版本:v0.0.1-alpha(暫停中)
✅ 狀態機與移動執行引擎核心架構建立
✅ 輸入抽象層與多平台輸入映射
✅ 走、跑、跳、蹲、翻滾與地面/空中衝刺
🔄 第一階段 Vertical Slice(無敵人、無文字教學的單一測試關卡)尚在進行
🔄 目前僅實作 Locomotion 層,Combat 與 Override 層仍在規劃
開發挑戰與收穫
1. 移動手感的黏稠感
挑戰:角色停止與起步時有明顯的黏滯感,左右轉向也偶有誤判。
解決方案:追查出減速曲線、無輸入寬限時間設定與零值方向判斷三個根因,逐一修正後,停止與起步的時間比明顯改善。
2. 決策與執行分離
挑戰:角色同時可能處於移動、衝刺、空中等多種狀態,若把判斷與物理寫在一起很快就會失控。
解決方案:狀態機只負責決定「現在該做什麼」,執行器只負責「怎麼移動」,讓每一種動作都能獨立調校與測試。
未來規劃
完成第一階段 Vertical Slice 測試關卡
實作戰鬥層與第一種敵人
擴充知識鎖謎題與互連區域地圖
技術棧:Unity 6(URP 2D)、C#、New Input System、2D Animation、Tilemap
團隊規模:4 人(U-E-Production)
類型:2D 類銀河戰士惡魔城動作平台遊戲