範例
- 氏族/公會 - 實體群組可用來描述一組經常一起遊玩的玩家,無論是基於何種社交連結讓他們長期聚在一起。
- 隊伍 - 實體群組可用於短期群組,這些群組的建立是為了讓個別玩家完成眼前的目標,之後即可輕鬆解散。
- 聊天頻道 - 短期或長期聊天頻道都可以定義為實體群組。
- 遊戲內資訊訂閱 - 您的遊戲中是否有獨一無二的傳奇物品?玩家是否想持續獲得該物品動態的更新?請建立以該物品為中心的實體群組,並將所有對該物品感興趣的玩家實體設為成員。
- 物件資料
- 檔案資料
- 設定檔
群組預設的上限為每個群組 1000 位成員,且僅支援玩家和角色作為成員
使用實體群組
建立群組時,第一個新增至群組的實體會被指派為系統管理員角色 (為了簡單起見,本指南將該實體稱為擁有者)。擁有者接著將能夠邀請新成員、建立具有各種可自訂權限的新角色、修改成員角色、踢除成員等。 此外,實體所具有的相同實體函式也適用於群組,因此您可以將 JSON 物件和檔案直接儲存到群組,以儲存任意的遊戲專屬資料。 下方提供的程式碼範例應能讓您快速上手基本的公會互動。 它可讓您建立群組、新增和移除成員,以及刪除群組。它的用意是作為起點,並未示範任何角色或權限。解析範例
此範例建置為控制器,會將最少量的資料儲存到本機快取 (PlayFab 是權威資料層),並提供對群組執行 CRUD 作業的方式。 讓我們來看看所提供範例中的一些函式:-
OnSharedError- 這是 PlayFab 範例中的典型模式。處理錯誤最簡單的方式就是回報錯誤。您的遊戲用戶端可能會有更複雜的錯誤處理邏輯。 -
ListMembership- 這會呼叫ListMembership以判斷指定實體所屬的所有群組。玩家會想知道他們已加入的群組。 -
CreateGroup/DeleteGroup- 大致上不言自明。此範例示範在這些呼叫成功執行時更新本機群組資訊快取。 -
InviteToGroup/ApplyToGroup- 加入群組是一個兩步驟的程序,而且可以從兩個方向啟動:- 玩家可以要求加入群組。
- 群組可以邀請玩家。
-
AcceptGroupInvitation/AcceptGroupApplication- 加入程序的第二個步驟。回應的實體接受邀請,完成讓玩家成為群組一員的程序。 -
RemoveMembers- 具有權限的成員 (由其角色權限定義) 將能夠將成員踢出群組。
伺服器與用戶端
如同所有新的實體 API 方法,伺服器 API 與用戶端 API 之間並無區別。 動作會由呼叫者根據程序的驗證方式來執行。用戶端將被識別為用戶端,並會以遊戲玩家實體的身分呼叫這些方法,而且每次呼叫時都會評估其在群組中的角色和權限,以確保其有權執行此動作。 伺服器會使用相同的developerSecretKey 進行驗證,這會將該程序識別為遊戲實體。遊戲會略過角色檢查,而由遊戲執行的 API 呼叫只有在動作無法執行時才會失敗,例如實體若不是成員就無法被移除。
