[分享] 2025 TGDF 筆記 - 九日篇
今年《九日》相關的議程也很多,從開案時期的探索,到如何設計讓玩家能享受的遊戲機制,遊戲的設計秘辛亳無保留地分享出來。
兩年的噩夢找尋,九日類隻狼系統的誕生
這場分享《九日》是如何找到現在的類隻狼玩法,要找到突破點花了相當多的時間,其中的過程也很辛苦。
- 世界觀設定
- 「道龐克」
- 一個太陽對九個太陽的復仇
- 外星人來到地球留下了道教科技與故事
- 想到以動作加上銀河戰士的玩法
- 九個太陽所在的九個區域對應他們各自的設定
- 八個月就完成有基本玩法與畫面的「Hollow Cat」
- 但為了避免 Hollow Knight 感花了一陣子,也打掉第一版,並重新思考機制
- 2D 版隻狼?但慢節奏、沒 Y 軸戰鬥、沒平台挑戰
- 參考《Katana Zero》為了要快節奏,不加入對峙,也沒有體幹值
- 想要有平台挑戰,加入空中格擋
- 但如《Katana Zero》的快節奏,敵人看一兩次就被打倒,與隻狼要對招一兩次所帶來的深度不同
- 又回到類銀河的玩法上,但把體幹值改成點數制
- 要格擋才有氣能貼符
- 為了避免等格擋時機而太被動,加入普攻來算節奏
- 為了以格擋為主,普攻的攻擊力比貼符還要低很多
- 避免一直按普攻,普攻三連擊的第三下無法直接進入格擋
- 敵人被普攻打中後,會減攻擊 cd,讓敵人更容易主動攻擊,來讓玩家有機會格擋
- 加入潛行?
- 2D 畫面視野很小,而且角色動很快不適合潛行,而且每個敵人也要設計暗殺動畫
- 最後改成「背襲」
- 但關卡還是有潛行的設計,如被電之後行動不便,只能潛行
- 貼符的體驗
- 貼符到懸崖邊會自動停住,避免瞬移距離過長而掉落
- 在地面貼符時,會先瞬步到敵人前再貼符,再繼續瞬步一段距離,但是在空中貼符則會直接貼
- 把技能樹當教學用
- 例如:點了背襲技能,知道可以背襲
- 大家對技能功效有不同的想像,有人想加有人不想,做成玉石系統來讓玩家自已選
- 如何知道找到醬汁了?成功讓玩家想要一做再做
《九日》戰鬥設計雜談
這場一樣有分享到《九日》開案時的構想,並且著重在怪物行為的設計,以及攻擊模式的小技巧,讓戰鬥更豐富。
- 開案起源
- 《返校》跟《還願》還是以華語圈為主,新作方向能否打入歐美市場?
- 以玩法為核心能否有文化穿透力?像《Dead Cells》跟《Hollow Knight》
- 參考《Hollow Knight》,但是不是只能做出劣化版的《Hollow Knight》
- 風格找尋:
- 當然在 2D 以格擋為主的風格下,還是有其它遊戲
- 以格擋為主,所以要引導玩家用格擋
- 普攻傷害低,貼符有大傷害 ← 要格擋才有氣能貼符
- 怪物製作流程,實際執行時沒有清楚細分步驟,但為了演講還是整理出大致統程
- 前期溝通:確定怪物定位,如:難度、外貌、參考對象
- 灰盒驗證:設計戰鬥的 fantasy(要帶來什麼樣的感覺)
- 讓玩家要用什麼 pattern 來對應
- Boss 攻擊前的動作能不能讓玩家找到對招時機
- 這時就會在 animation clip 上做怪物行為
- 美術原型:在 animation clip 上套皮,看感覺
- 程式美術整合:在套皮後重調數值,再看感覺
- 內部測試:內部回饋、改善
- 後期:套音效、特效
- 外測:玩家公開測試
- 在量產期會做前五個步驟,但是在打磨階段才會做後期與外測
- 戰鬥難,讓玩家克服時有成就感,感覺「原來我可以做到」
- 怪的攻擊有一定節奏,但是後期怪的攻擊脫離前面的節奏會帶來難度,也會有新奇感
- 一些攻擊模式的技巧
- 利用位移來做攻擊前置動作,如:水鬼
- 過身:攻擊時,怪物會穿過玩家到另一邊
- 脫手攻擊:出招後,那招會延遲攻擊(如:緩慢的投射物),讓怪物可以再開其它招
- 以預期讓玩家的輸入 pattern 來設計招式
- 玩家一直按格擋會縮段精準格擋的窗口
- 終結技可以輸出大傷害,作為獎勵
- boss 打完一輪的休息窗口,讓玩家可以輸出大量傷害
為《九日》而研發的狀態機架構《MonoFSM》
最近在開發上在煩惱角色狀態機的設計,所以這場也是有興趣的演講之一。演講主要圍繞在 MonoFSM 為什麼會誕生,雖然沒有著墨太多技術上的細節,但是在製作 prototype 時的經驗分享也很受用。
- 第一階段為了開發要快而硬 A,使出戰術龍捲風!
- 但當內容一多就開始 A 不動,程式碼耦合重、bug 不好修,而且很難加入新功能
- 遊戲開發架構金字塔由底層到塔頂依序為:
- 引擎:開發使用的遊戲引擎
- 系統:為遊戲功能開發的功能
- 資料:功能所需要的設定、數值、素材等
- 設計:遊戲玩法、功能、行為等
- 體驗:遊戲給玩家的殘體驗
- 而戰術龍捲風就是把系統、資料、設計全部混在一起做
- 第二階段開始把資料抽離出來,利用 animation clip 來綁定動畫及開關元件或事件(絕對不要用 Event 來開關)
- 好處是可以在同一個地方編輯動畫及事件,也可以視覺化資料
- 到量產期後發現需要重新設計架構
- 參考 visual scripting 把邏輯跟系統分離
- 要支援 prefab
- 可以通用的 FSM 設計
- 用 MonoBehaviour 來描述狀態與狀態轉換,且基於 prefab 的 MonoFSM 誕生了
- 在 Hierarchy 顯示 FSM 的狀態及相關變數的數值
- Per-instance Debugging:可以以 GameObject 為單位來 debug,不用在程式碼中寫 debug 訊息
- 漸近重構
- 實驗期:在小地方嘗試,先展現價值
- 推動期:新內容用新規格作。舊的東西有 bug 或想調整太難做的話,也替換成新架構
- 能動的東西就不要改!
- 團隊應該集中在「遊戲體驗」上,作工具就是為了加速迭代