Unity開發(fā)《皇室戰(zhàn)爭》《原神》抽卡系統(tǒng)技術指南

TCG卡牌實時競技游戲中的《部落沖突:皇室戰(zhàn)爭》是由風靡全球的手游《部落沖突》主創(chuàng)成員打造的又一力作

很多游戲開發(fā)者也想通過自己的技術開發(fā)出一款屬于自己的《部落沖突:皇室戰(zhàn)爭》游戲,本篇技術教程將會為大家講解一下使用Unity3D引擎制作一款《部落沖突:皇室戰(zhàn)爭》TCG游戲中的核心技術

市面上幾乎所有的類型游戲都具備抽卡功能,今天我們主要就聊聊在Unity中如何實現(xiàn)這個功能

效果演示
先給大家看一下效果演示,在演示場景中我們實現(xiàn)了:
? ?定時領取寶箱:每隔一段時間可以領取一次寶箱
? ?寶箱的分類:能夠領取到不同種類的寶箱
? ?開啟寶箱倒計時:想要開啟寶箱需要等待一段時間
? ?以及寶箱物品的控制:使寶箱開出的物品隨機

上面這些功能是如何實現(xiàn)的呢?如果想要開出更多的卡牌或?qū)毾鋺撊绾稳プ瞿兀肯旅婢蜑榇蠹医颐?/span>
如果想要獲取本篇文章的素材或是其他案例視頻教學資源,可以在文末點擊愛麗絲老師的鏈接卡片免費獲取
效果實現(xiàn)
下圖右邊是我們的資源管理界面,左邊是數(shù)據(jù)配置表,其實開卡的奧秘就在數(shù)據(jù)配置表中,下圖中的資源管理器界面中的10000代表木質(zhì)寶箱,10001代表白銀寶箱,10002代表雷電寶箱

如果需要更多的寶箱類型,就只要在數(shù)據(jù)配置表中在插入一個新的寶箱記錄

設置新的寶箱記錄為10003,名字設為魔法寶箱,設置寶箱開啟倒計時為十秒(如上圖)
設置寶箱能夠開出的物品和物品數(shù)量,數(shù)據(jù)配置表中的chestOpenNum是開寶箱時的物品概率邏輯,itemids代表能夠開出物品的序號(如下圖)

這個抽卡系統(tǒng)中能夠抽出什么樣的物品是由chestOpenNum來決定的,chestOpenNum中的抽卡數(shù)據(jù)可以分為三組,每組之間用 | 進行分割
第一組數(shù)據(jù)0,4,2表示寶箱開啟時會從itemIds的第0個物品到第4個物品中選取兩個作為開啟寶箱的部分獎勵,第二組數(shù)據(jù)4,3,2表示寶箱開啟時會從第4個物品到4+3也就是第7個物品中選取兩個作為開啟寶箱的部分獎勵,第三組數(shù)據(jù)的邏輯與第二組同理,最后將這三組數(shù)據(jù)選取出的物品合在一起就是這次開啟寶箱的全部獎勵了

將數(shù)據(jù)配置表配置好以后就可以通過Excel表格來生成配置數(shù)據(jù),這里用到了Unity編輯器擴展技術

生成好配置數(shù)據(jù)后需要重啟服務器,我們的服務器是商業(yè)項目可用的分布式服務器,它由七到九個服務器進程構成,可以橫向拓展更多的服務器來滿足萬人同服的玩家人數(shù)需求,而且我們的項目是支持熱重載的,也就是客戶端并不需要重新啟動就能測試新的項目代碼

最終效果演示
為了能夠百分百出現(xiàn)魔法寶箱,我Hack了我們的服務器,使游戲運行時每次都能生成新增加的魔法寶箱

今天的分享就到這里,如果想要學習制作更加酷炫的卡牌效果、開寶箱動畫、卡牌概率控制和完整的卡系統(tǒng)教程可以在下面添加愛麗絲老師的微信號,進群學習交流
如果想要本篇文章的素材或是其他案例視頻教學資源,也可以點擊下方的愛麗絲老師的鏈接卡片免費獲取

更多學習資源請加QQ:1517069595或WX:alice17173獲?。ㄆ髽I(yè)級性能優(yōu)化/熱更新/Shader特效/服務器/商業(yè)項目實戰(zhàn)/每周直播/一對一指導)
點贊、關注、分享可免費獲得配套學習資源
詳細內(nèi)容可參考下方完整視頻
