GDK 採用
每個 GDK 僅支援一年。雖然現有遊戲可以繼續使用已淘汰的 GDK 出貨,但這對於以服務形式出貨的遊戲 可能會造成問題。在 GDK 淘汰後推出新功能的遊戲,可能會遇到在先前 GDK 使用案例中未曾出現的 錯誤或整合問題。同樣地,遊戲可能想要利用僅在最新發行之 GDK 中才有的 功能。 遊戲必須針對單一 GDK 建置。遊戲不能混用不同 GDK 的元件。在 主機上,遊戲只包含單一 Game OS,而各種 GDK 程式庫可能會相依於該基礎 OS。 在 PC 上,只有一個版本的遊戲執行階段會載入遊戲處理程序,形成與主機類似的「單一版本」環境。 建議 GaaS 作品定期更新至仍受支援的較新發行 GDK。Intelligent Delivery
隨著新內容的推出,GaaS 作品可能會逐年變得越來越大。玩家 的儲存空間可能有限。這可能會影響他們安裝遊戲最新更新的能力。雖然玩家確實能夠管理自己的儲存空間, 但使用 Intelligent Delivery 建置的遊戲能讓玩家在使用儲存空間時擁有更多彈性和 選擇,而不只是解除安裝整個遊戲,也能讓 玩家在其裝置上保留更多遊戲更長的時間。 使用 Intelligent Delivery,遊戲可以利用 功能和配方,選擇預設要安裝的內容, 並讓遊戲能夠管理要保留安裝遊戲的哪些部分, 以及因為不再使用而可能想要移除的部分。 GaaS 作品可以選擇將其新內容放入個別的功能中,以實現這類 管理。其概念是新內容是一個 耐久性項目。以下是一項讓管理更容易的 建議:- 在遊戲的配置檔案中,讓每個耐久性項目對應一個 Feature。
- Feature 會宣告一或多個 Tags,可用來指出如果玩家擁有該內容的授權, 應安裝配置檔案中的哪些區塊。
- 確定配置檔案包含具有 Store ID 子項目的 Recipe。此配方
應參考對應至相同 Store ID 的單一功能。新增配方可
確保如果玩家先前已購買此內容,該內容會自動
安裝。
[!NOTE] 可能還有其他與耐久性項目無關的功能和配方。
- 呼叫 XPackageEnumerateFeatures 來列舉功能。
- 使用 XPackageFeature 中傳回的 Store ID 來檢查 授權、查詢更多詳細資料,或叫用市集購買流程。
可下載內容
有些 GaaS 作品可能不會持續演進其基礎套件,而是選擇多年來使用 可下載內容 (DLC) 來演進。遊戲可以選擇 將資產或可執行程式碼放入該 DLC。對於可執行程式碼,有兩種可能的 途徑:DLL 和 EXE。 如果遊戲將 DLL 放入其 DLC,則可以:- 使用 XPackageMountWithUiAsync 掛接該 DLC。
- 使用 LoadLibraryEx。
- 所有先前掛接的 DLC 都會保持掛接狀態。
- 使用 XPackageMountWithUiAsync 掛接該 DLC。
- 使用已掛接 DLC 中的路徑呼叫 XLaunchNewGames。
- 現有的遊戲處理程序將會終止。
- 除了 XLaunchNewGames 的目標之外,所有 DLC 都會被卸載。
- G: 磁碟機會繼續指向基礎套件的根目錄,而不是新 啟動的 EXE。
