前往
大廳
主題

【遊戲開發日誌 #25】魂札裝備介面實裝

サンエックス | 2023-12-30 19:19:01 | 巴幣 3310 | 人氣 362

又年底啦
一如既往地先祝大家新年快樂

算是接續前一篇開發日誌,這次異魂系統還有選單裝備介面花費了比預期還長的時間,在系統方面額外多了較為不同的存檔樣式,選項跟操作上的交互作用有更加複雜的變化。
遊戲做下來已經算是司空見慣了,但還是總感覺會讓人覺得進度有夠拖
這篇文大概會拆解一下,單就這個裝備介面上的各個區塊與功能。


題外話,上個月發現我自己大學時用來傳檔案的 Google 帳號顯示有異常活動,只能用基礎的電子郵件收發功能,像是 Youtube、雲端硬碟等等的,得要綁定手機號碼認證才能復原。
但不太想給 Google 更多個資,加上也沒有什麼重要的東西,因而作罷。

另一組同樣發生問題的是平時偶爾用來傳自行錄製影片用的帳號,從以前寫 PAD 攻略相關的、大學小組作業拍攝的毛片素材,到近期用來寫小屋日誌的開發內容片段,都是傳到這組帳號上。
蠻確定該組帳號去年後半都還有登入紀錄,應該還沒到它們公佈的非活躍帳號的程度,但也是掛了,從先前的 Youtube 連結也顯示帳號為無法使用的狀態,到底是三小
反正不確定 Google 那邊又在發什麼病,當初把教育用雲端拔掉就已經頭很痛了,現在又多出這種條件不明所以在砍非活躍帳號的,真的沒事找事做欸。

總之舊的錄製素材應該是涼了,小屋其他日誌有掛掉的影片連結我哪天有看到再去移除。
未來大概也只能留意自己的帳號活躍性來預防了,真是謝謝你 Google。

下來入正題


◆【異魂裝備介面】

相關名詞的解釋可以配合前一篇日誌

Δ 開發中的片段,不代表最終成果。

此介面需要當玩家入手至少第一張魂札後才能開啟,可由主要選單進入。
主要用途為查看玩家當前擁有的魂札,檢視其能力效果並進行裝備之用。
可以想成是怪物圖鑑跟持有裝備一覽的結合體,下面分各個區塊來說明:

① 異魂名稱
② 魂札圖示(大)
記載魂札化的對象圖示、種類及其數值編號
③ 能力與效果列表
圖中顯示的為暫時性的文字內容,需要等數值設計完成後才能實裝。
單個項目會包含效果文字,以及其觸發條件(如果有的話),技能的話則會有操作方法。
④ 適應度計量條
對該異魂的契合指標,持有後會隨著旅途過程逐漸提升,到達一定門檻後能夠使其魂札獲得額外效果。
就玩家角度來說可以理解成熟練度,不需要刻意去農,設定上會有方法能夠快速升滿的,這邊做為機制上的保留不會在這篇日誌中提及。
⑤ 持有魂札列表
依魂札種類進行分類,新獲得的魂札在檢視之前會顯示"NEW"字樣,裝備中的則是透過"E"來表示。
⑥ 裝備魂札欄位
玩家當前身上的魂札欄位,最多可以裝備 5 個,欄位會隨遊戲進度解鎖。
無法裝備相同的魂札,當裝備中的魂札以特定方式構成時,會觸發該組合的額外效果,亦會在欄位下方顯示組合的名稱。
組合之間沒有高低優劣之分,但通常越是難以組合的構成,其效果也會較為稀有。

對玩家而言,上面提及的區塊就是所需要涉及的部份了。
操作提示跟說明同樣都會顯示在畫面的左下角,希望能讓初見也能較快上手。


接下來就是比較偏程式還有機制上的東西了,回顧一下為什麼會花上比預期還長的時間。

●【異魂系統的存讀檔】
此次異魂裝備介面中,主要需要存讀的部分是玩家所裝備的各欄位魂札類型,
以及對應各魂札類型於遊戲進度中的參數:可裝備欄位數、是否獲取、適應度、已檢視過…等。

每張魂札正好對應一種角色,故裝備的魂札類型正是以該角色的辨識 ID 來儲存。(ID 會於角色參數物件創建時一併生成)
Δ 角色參數物件中的異魂設置欄位

也是如此,一個角色是有可能因為遊戲版本迭代而新增或移除,這與先前存讀檔有設計上的差異。
像是系統音量、鍵位的鍵值等系統設定,它們是固定的參數欄位,可以明確地去存取。
但隨機生成的角色辨識 ID 就不一樣了,遊戲啟動時必須載入所有角色參數物件,並將其辨識 ID 轉換為索引,若讀取時該辨識 ID 不存在,表示可能是開發過程中,或是遊戲舊版本所汰換掉的角色。
此時則會將原先存有汰換角色的對應魂札欄位,強制卸下轉為未裝備的狀態。

以辨識 ID 來存讀非特定項目的方法,去年調整存檔機制時就有涉及,像是場景內的物件或敵人擊倒狀況:
但還是有細節上的不同,最主要的就是在遊戲重置(或讀取其他存檔)時,這些"場景內"的項目,可以透過在場景卸載然後再度載入時,一併觸發已經寫好的讀檔機制。
而魂札裝備欄位這種只存在於參數上的東西,不屬於場景內的特定物件,就只能拐個彎,再去額外寫個於遊戲重置時會懂得去自動讀取對應資料的屬性了。

●【選項可視範圍捲動】
選項可視範圍是先前就已經完成的機制,同樣可以參考這篇:
原理是當選項條指向一個選項,若該選項在設定上的可視矩形範圍之外時,連帶整個選項列一起偏移,使選項能夠進到那個範圍內。
前面異魂裝備介面的截圖中,操作提示上多了一組能透過鏡頭控制鍵,來捲動「其他」選項列的功能。

不需要把選項指示條移動到其他選項列之上,就能夠檢視其內容,使用者的體驗想必會好一些。
這是當初重寫選項條架構時沒有涉及的部分,這次就花了一點時間來實裝上去。
靈感來自《死亡細胞》中,瀏覽裝備詞條等介面時會用上的操作。

順帶一提,選項列的可視矩形範圍,和其顯示用的遮罩於設定上,它們的範圍大小是不一樣的。
可視範圍用意是讓「選項」進到其中之用,但不包含選項以外的物件,像是「標題文字」這類附帶的東西。
故設計上會讓可視範圍比遮罩還要小一些,保留的遮罩範圍就能用來顯示附加的非選項內容了。
Δ 紅色框線為遮罩,綠色半透明為選項可視範圍。

●【額外的系統控制鍵】
這次的裝備介面能操作的功能比較多,原先設計上的鍵位輸入種類不足,故又加了兩顆系統控制鍵。
目前的功用是裝備的卸下,以及需要等能力效果的數值設計完善後,才能用上的效果總覽鍵。

沒花上太多時間就是,但還是放上來當日誌內容了。
和確認、取消等按鍵,在設定上有「系統」屬性,故可以與「遊戲」屬性的攻擊、防禦等按鍵出現相同按鍵。

●【不太尋常的牌型判定】
撲克牌的牌型判定,想說是很常見的東西,找相關的代碼應該是輕而易舉,結果到頭來還是自己寫了一遍。
主要的原因有幾點:魂札的花色不只 4 種、判定中可能會加入鬼牌、鬼牌張數不會只有 2 張…
參考資料都是建立於一般的撲克規則,AI 機器人提供的程式跟參考資料也沒辦法變通到能夠符合我的需求

思路上,先將牌型分類成下列幾種:
∎ 單組別數值相同:對子、三條、鐵支…
∎ 多組別數值相同:兩對、葫蘆…
∎ 花色相同:同花…
∎ 數值連續性:順子…
∎ 上述的複數判定/特定組合:同花順…

所有牌型都要能夠支援鬼牌的組合,當鬼牌加入時將作為萬用牌,一律取可能的最高組合。
也就是這樣,判定的複雜度整個三級跳,尤其是特定組合的處理,涉及到張數、順序、花色、數值的個別判定限制有無,搞得我頭好痛。
總之現階段實測起來是沒有出現誤判的狀況,希望改天不會突然發作才好。
Δ 同花順 → 同花大順


有鑑於這次的進度,我更想把物品選單還有存讀檔,甚至是把臨時的標題介面給先做出來。
一方面是擔心後面規模慢慢大起來,涉及存讀檔的區塊會產生難以發現的漏洞。
現階段的測試都是在同一個遊戲存檔上,存讀處理主要都還是存在於理論上的階段,故把它們的進度往前擺或許會比較妥當。

物品選單也是,趁現在這段時間對選項及介面的交互操作還熟悉時來做一做,希望不會把素材畫完之後就忘得一乾二淨才好。

啊對,大家有沒有什麼數字上的特定組合,可以提出來當彩蛋的,盡量以 4~5 位數為主。
不一定會有實際的效果產生,可能就只是在魂札的裝備介面上顯示而已。
比方說像是這樣的,名稱因為選用的字體緣故一律會顯示為英文或符號,有 0 的話會以 10 進行替代:

就這樣吧,巴哈什麼時候才要在小屋實裝投票系統。

創作回應

更多創作