從0開始的數值設計實戰(一)
筆者收藏過大量數值向的文章,許多文章都能給予自己很多思考,但許多作者可能是限於篇幅通常癢癢肉撓了一下則停筆。
所以筆者想通過這篇文章,從最執行的層面,用最通俗易懂的方式,實戰演練如何設計一款商業遊戲的數值。
此文重方法,重執行落地,不重思考,所有關於思考設計層面的東西要麼一筆帶過,要麼直接給結論。
第一步:定義總養成線
通常作為一個數值策劃參與專案中,遊戲型別和玩法DEMO已經被確定,固這次實戰我們先假設這個遊戲就是"回合制卡牌遊戲",方便理解。
1、規劃遊戲擁有哪些養成系統
通常由製作人和主策進行規劃,但實際上也沒什麼花樣,牢記口訣往裡套就對了“星階覺強破,綠藍紫橙紅,風火雷電土,七日七衝榜”。
開玩笑的,實際上由遊戲定位決定,養成服務於體驗,狂做養成的時代已經過去了,在手遊精品化的道路上,縮減養成數量,聚焦單系統玩家體驗是基本原則。
根據時效性和獲取方式,我們可以得到6種基本的養成模型。
- 永久積累:主角升級/圖鑑進度,這種伴隨遊戲程式,永久在積累的養成,這類養成通常是玩家的底線。
- 永久賭博:多見Rouguelike遊戲,每次升級隨機一個技能,最後培養成什麼樣不可預測,長線養成遊戲幾乎不存在。
- 永久固定:卡牌遊戲每次出的新卡,強度不會比舊卡高,只是豐富遊戲的體驗。
- 換代積累:數值卡牌遊戲,新卡可以繼承舊卡的養成進度,如少三這類遊戲。
- 換代賭博:裝備洗髓,隨機獲得一些屬性,但會隨著換代失去意義。
- 換代固定:裝備系統,裝備數值本身固定,也會隨著換代失去意義。
從預期體驗出發,我們預期這個遊戲主要體驗是英雄成長,又能售賣新英雄來豐富策略集,同時也擁有一些換代型別的養成填充中期玩法,因此先設定幾個系統。
- 卡牌升級:永久積累,消耗經驗值升級,每個卡牌之間獨立。
- 卡牌升星:永久積累,消耗同種卡牌來生星,可以獲得大幅屬性提高。
- 裝備系統:換代固定,每10級一代,固定數值。
- 裝備強化:換代賭博,每次強化隨機獲得一個詞條的提升,隨機數值。
理論上擁有上述4條,一個基本盤就運轉起來了,不同型別的養成設計方式不同,下文將會以上述這四條養成做具體實戰設計。
2、戰鬥數值設定補充
文章不著重討論戰鬥數值,直接給出結論,遊戲僅有攻防血三條屬性,不考慮二級屬性。
傷害=攻擊^2/(攻擊+5*防禦)
戰鬥力=5*攻擊 + 3.34*防禦 + 生命值*0.67
攻防血投放比例:2-1-10,即每投放2點攻擊,必然投放1點防禦和10點血量
3、規劃每個養成點的屬性佔比
此文簡化投放模型,各養成投放屬性等比例(A系統投放10點攻擊必然投放100點血量,B系統投放1點攻擊必然投放10點血量)
總投放屬性:10000攻擊,5000防禦,50000血量
之所以定這個比例是因為以卡牌本身為核心,卡牌理應占據大頭,其中卡牌升級屬於面向全體玩家,產出由活躍主導,卡牌升星面向付費,產出由RMB主導,在這個比例關係下,可以達到一個比較良好的玩家生態。
第二步:養成點具體設計-以卡牌升級為例說明永久積累型的養成設計。
1.1規劃成長節奏
系統定位是玩家的基本體驗,付費可以加速升級,但存在邊際衰減,為了實戰演示方便,設定峰值為30級,遊戲時間30天免費玩家可以養滿一張卡牌。
節奏設計預期為前快後滿,前七天就可以達到50%以上的進度,以此為目標進行下一步
1.2規劃每一級屬性
該級屬性=上一級屬性*(1+等級成長率)
之所以選擇這種公式才規劃是因為,線上性等級成長的養成中,玩家更關注升級之後我的屬性會比原來放大了多少倍,而不是具體多少值。
先假設1級屬性值為100,按照上述的屬性公式,可以得到每一級的屬性
又因為這個系統總投放量是3500份屬性(3500攻,1750防,17500血),靈活調節成長率引數,最終得到滿級時為3500屬性,如下表
最終屬性隨等級變化如下圖,整體成凹函式曲線,符合常規認知:等級越高,增加的屬性越高。
1.3規劃每一級消耗和產出,推導成長線
規劃好屬性之後,就需要每一級升級需要消耗多少資源了,這裡需要注意的是,這個順序不是絕對的,反過來先規劃消耗也可以,我們會在後文講 屬性-消耗-產出,三者在什麼情況下適合什麼方法。
1.3.1 先拉通每個等級成長了多少屬性
1.3.2 再規劃消耗的權重,理論上採用冪函式即可
我這裡用到的公式為:該級權重=上級權重+1.25^(等級-1)+等級/2+20
1.3.3 令總消耗為30000,根據權重得到每一級的消耗值(關於為什麼定30000,是因為下一個步驟我準備一共產出30000),由此我們得到一個消耗列表
1.3.4 算出價效比,價效比=屬性成長/消耗
說一下價效比的意義,就是多少資源可以換取到1點屬性,一般來講一個遊戲都是越後期,價效比越低,但是要注意尺度
如果價效比衰減太厲害,這個資源的投放是失去信任度的,也會影響付費
如表格,第一天價效比比第30天價效比衰減了15倍左右,是一個可以接受的尺度
最終我們得到一個合理的消耗列表,和一個價效比曲線
1.4 推導成長線
1.4.1 規劃產出總量,這裡簡單定義產出方式為日產出1000,30天共產出30000
1.4.2 根據上表的消耗總和,產出綜合,用INDEX+MATCH函式,得到每天的產出提供一張卡牌升到幾級。
根據表格我們看到第一天的產出可以供一張卡升到7級,第7天可以升到19級,最終30天升滿。
如果這個值不符合預期,通過調節1.3.2的公式中的引數再調整。
1.5 引入付費
在有了基本的養成結構之後,我們需要對該養成點進行付費設計,需要關注的重點有:付費空間,付費價效比,付費時間價效比。
也就是我付費的極限可以比不付費強多少?我付費100元可以強多少?我第一天付費100和第30天付費100有什麼區別?
在這裡我們假設付費方式就是直接用RMB購買資源,為了進行玩家付費分層,設定第一次購買消耗10rmb,第二次20rmb,第三次30rmb,小R每日購買1次,中R每日購買2次,大R每日購買3次。
1.5.1 第一步先拉出天數-非R的總產出關係
1.5.2 設定一個資源膨脹率,意味著每次購買資源的量會隨著時間的推移而改變。
這裡我們設定 購買資源不膨脹(因為日產出沒有膨脹,為了讓付費時間價效比不變,永遠是10rmb可以購買一天的產出)
1.5.3 設定第一天每次購買會獲得1000資源,那麼拉出小中大R在歲時間的總產出,由此我們可以得到不同型別的玩家的成長曲線。
注意到非R30天可以升滿,而大R只需要8天就可以。
大R所包圍的面積減去非R包圍的面積,就是付費空間,這裡只說明如何得到付費空間,設計多大的付費又是另外一門學問這裡不提。
可以看到每RMB獲得資源,小R是大R的2倍,這是合理的
如果覺得大R付費力度不夠,可以調節每次購買資源的消耗rmb
1.5.4 付費價效比
味著每次付費可以獲得多少的屬性成長,這個是不需要特意設計的,只要免費產出和付費空間設計清楚,可以拉出來看一下即可。
這裡不進行這一步操作了。
小結
經過上述5個步驟,一個養成的數值模型就算是做完了,在這種模型下,我是通過 規劃屬性-規劃產出-規劃消耗-擬合成長節奏,這個順序進行。
它適用於任何永久積累型的線性養成,在這種型別的養成中,每一級消耗多少並不重要,產出多少也不重要,只有成長的節奏是最需要關注的。
下文我將會以裝備系統為例,按步驟拆解換代型的數值設計該如何進行。
相關文章
- 聊聊boss戰設計(一):從只狼的櫻龍戰開始
- 為什麼程式要從0開始計數
- 從0開始學習Webpack(一)Web
- webpack4.X 實戰(二):從0開始搭建一個 簡單的前端專案Web前端
- 【筆記】從0開始的程式碼審計筆記
- 從 0 開始實現程式語言(一):手寫 jsonParserJSON
- 從0開始的電商商品主圖設計教程!無門檻!
- 從零開始設計一個部落格
- 從0開始用MavenMaven
- 從「坦克大戰」開始嘗試理解關卡設計
- 從零開始實現放置遊戲(四)——實現掛機戰鬥(2)實現後臺數值配置遊戲
- 從零開始實現放置遊戲(六)——實現掛機戰鬥(4)匯入Excel數值配置遊戲Excel
- 從 0 開始學架構架構
- 從0開始fastjson漏洞分析ASTJSON
- 從 0 開始瞭解 DockerDocker
- Spring-Cloud 從0開始(一) Eureka-ServerSpringCloudServer
- 資料分析從零開始實戰 | 基礎篇(一)
- [AST實戰]從零開始寫一個wepy轉VUE的工具ASTVue
- 從0開始的高併發(一)--- Zookeeper的基礎概念
- 從0開始搭建自己的直播平臺
- 從0開始fastjson漏洞分析2ASTJSON
- 從理論到實踐,設計一款遊戲數值架構遊戲架構
- 授予漁,從0開始搭建一個自己想要的網頁網頁
- 從0開始寫一個直播間的禮物系統
- JavaWeb專案開發從0開始的要點!JavaWeb
- 從零開始理解 Laravel 的設計哲學Laravel
- 從0開始搭建低程式碼平臺系列(系統設計與規劃)
- 從0開始設計Flutter獨立APP | 第一篇: 資料庫與狀態管理FlutterAPP資料庫
- 從0開始搭建preact開發環境React開發環境
- 從零開始的Java RASP實現(一)Java
- 從零開始學習C++(0)C++
- 如何從0開始搭建 Vue 元件庫Vue元件
- Webpack 5 配置手冊(從0開始)Web
- 《從0開始學Elasticsearch》—初識ElasticsearchElasticsearch
- 從0開始使用vue-element-adminVue
- 從零開始實現放置遊戲(四)後臺數值配置的增刪查改遊戲
- Python程式設計從0到1(實戰篇:提取Word表格儲存到Excel)Python程式設計Excel
- 從今天開始挑戰 LeetCodeLeetCode