(轉)從入門到精通:如何零基礎做一款Roguelike遊戲?

本文轉自:從入門到精通:如何零基礎做一款Roguelike遊戲

供自己學習和收藏

 

 

在遊戲行業,Roguelike是最受獨立遊戲開發者青睞的玩法之一,憑藉隨機生成的地圖、不可挽回的單向進程、非線性故事和複雜的系統,這類遊戲的重複性極高,近年來國內獨立開發者也對Roguelike十分感興趣。

而且比較特別的是,這個品類的開發者與玩家之間的界限很模糊,不少都是因爲熱愛某個遊戲,想要製作自己的版本而從玩家轉爲開發者。Grid Saga Games工作室的Josh Ge過去七年都在做Roguelike遊戲,而且過去五年的全職工作都是從事這類遊戲的研發,在網絡上也形成了全球最大的的Roguelike開發者社區(r/RoguliekDev)。

最近,Josh根據自己過往的經歷整理了一份非常詳盡的新手開發者指南,對於希望做Roguelike的開發者甚至玩家都是極有幫助的:(Roguelike是RPG遊戲的一個分支,詳細解釋請參考Roguelike)

幾年前,在第一次Roguelike慶祝會上,我講了自己如何成爲一名開發者的經歷,但這一次想說的是,如何讓所有人都能做Roguelike遊戲,對於Roguelike玩家們來說,瞭解一些研發內容是很普遍的事情。我們在玩遊戲的時候受到啓發,然後想要做一些更好的、不一樣的體驗,或者只是爲了想要做屬於自己的東西。

這篇文章並不是一個新手教程,更多的是告訴你如何開始,以及在做Roguelike遊戲研發過程中的一些建議。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

做一款Roguelike遊戲是非常困難的,不亞於你在充滿障礙的地牢裏冒險,在下面的圖表中,你剛開始的時候就站在底部,頂部“有趣可玩的遊戲”就是你的目標。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

你的研發之路很容易像這張圖一樣,由於缺乏清晰的路徑, 而在不同的方向、不同的系統投入大量不必要的時間。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

有時候,你可能會在完成研發的時候發現,並沒有達到最初的目標,但爲此付出了什麼代價?可能多年的努力都被浪費,甚至還可能因爲壓力而掉光了頭髮。在研發過程中,你很容易走入死衚衕、卡在某個地方,意志消沉,甚至放棄研發。

 

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

 

你所需要的是達成目標的直線路徑,有了基礎的規劃並且瞭解你要去哪裏,就能夠有非常良好的開始,然後,當你擁有了又去的核心遊戲之後,在根據自己的意願爲之拓展。

開始的時候就要直指目標,然後打下堅實的基礎。

在這篇文章裏,我主要講述的是基礎內容,比如怎樣以更高的成功率穿過這個地牢,尤其是當你開始只有熱情、但又不確定如何去做的時候。

本文共分爲七個部分,覆蓋:編程語言、項目規模、核心機制、7DRL、研發資源、玩法吸引力、建議等方面。

編程語言:沒有硬性要求

在開始研發的時候,人們問到最多的問題是,我該用什麼語言做Roguelike遊戲?

答案其實很簡單:任何一種語言都可以。

如果把回答延長一些,編程語言沒有那麼大的影響。如果你已經學過一些語言,那是很好的情況,只管用就好,語言是達到目標的一種方式,而且此前已經有人用各種語言做過Roguelike遊戲。

但這並不是說新手就沒有更簡單的開始方法,如果你不確定,那麼我建議你使用Python:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Python代碼樣本

對於Roguelike初學者,Python是被推薦最多的語言,因爲它的代碼用起來簡單直接,通過上圖的代碼就能一目瞭然,它沒有太多奇怪的語法,即便是不會編程或者Python語言,也能通過代碼看到它是做什麼用的。

但是,不要擔心代碼簡單會成爲限制因素,因爲你仍可以用Python做很出色的事情。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

《Ultima Ratio Regum》就是用Python寫的,而且是一個美麗而龐大的開放世界項目,目前還沒有完成,但已經有非常不錯的效果。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

《Temple of Torment》也是用Python完成的

實際上用Python研發的Roguelike遊戲有數百款,總的來說,這個語言可以讓你有更順利的開始,隨後我們會講如何用它開始研發。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Roguelike開發者們使用的語言列表

像C和C++這樣更爲複雜的語言,它們已經流行了很多年,意味着你將找到大量的相關資源和參考資料。我使用的是C++,但唯一的原因是對這個語言比較熟悉。對於新手,我不建議用它,尤其是當你的目標只是做一款Roguelike,而不是投入大量的時間做debugging,使用Python的開發者也很多,所以你仍然可以找到大量資源。

項目規模:從小遊戲開始

對於新手開發者來說,另外一個問題就是打造“夢想中的Roguelike遊戲”,這應該是你的首要目標嗎?當然不是。

剛開始的時候,你需要學習很多東西,可能會犯一些沒有意識到的錯誤,所以最好是先積累一些經驗。更重要的是,遊戲研發的重點在剛開始和最後結束的時候有很大差別,因此最好是至少先過一兩遍流程,然後再考慮做更大的項目。在開始的時候把目標定小一點,也是讓你的努力有結果呈現的最佳方式。

以我們開始說的地圖爲例,你首先要專注的是達到目標的直線路徑:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

主要的研發過程只包含少數必要功能(戰鬥後面之所以有問號,是因爲Roguelike裏並不一定要有戰鬥)。

通過這些功能,你可以做一個完整的遊戲,也可以打下堅實的基礎,爲隨後的玩法拓展提高做好準備。其他所有可以探索的領域都是很吸引人的,但一定記得不要離主路太遠,這就像是玩一款Roguelike遊戲:如果你開始就毫無目的的在未知區域遊蕩,只做自己喜歡的事情,而不是應該做的事情,除非運氣非常好,否則很容易讓角色掛掉,甚至是多次死亡。當然,在玩遊戲過程中,這可能是一種有趣的經歷,但在做Roguelike研發的時候,這種體驗就完全是另外一回事了,因爲這意味着你需要投入更多的時間,所以一定要保持專注。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

比較好的消息是,你在做Roguelike的時候可以一點一滴積累,如果你覺得對於遊戲有用,那麼這些功能實際上都是一些分散的系統組合在一起的。

在此之後,你可以不斷地對遊戲進行拓展和調整,最好是有玩家反饋。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

增加更多功能

最後你可能做出很多東西,然後還在問“時間都去哪兒了?”

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

如果從整體來看一款Roguelike遊戲,可能會讓人望而生畏,但實際上你需要的只是一個計劃和持之以恆,剛開始做小項目很重要,因爲你可能會犯錯,而且如果剛開始就做大遊戲,失敗的概率很大。

核心機制

那麼,一個小的Roguelike遊戲真正需要的是什麼?只需要有一個核心玩法就可以,這是你積累經驗的開始,最好是用一句話就能解釋清楚,這也是你要做創意原型的東西,唯一的要求就是趣味性。

這個遊戲對於Roguelike有什麼獨特的理解?如果你的遊戲只有這個功能,它是否有趣?如果項目再大一點,這個功能是否還能作爲核心玩法支撐其他功能?考慮玩家們在遊戲裏做什麼,這些都是與核心玩法相關的。如果重複整個流程並沒有趣味,那麼你在它的基礎上做什麼都沒有意義。

 

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

 

Roguelike遊戲設計的基礎功能

所以在初識創意原型裏,只加入必要的功能,並且對核心玩法進行測試。另外,上面的動圖看起來可能有些複雜,但這只是在覈心玩法上有可能拓展的方向,Roguelike遊戲哪怕是很簡單,也一樣可以很有趣。

爲了探索更多的功能,我們來看看7DRL

7DRL(即七天完成一個項目研發)

 

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

每年7DRL完成研發的項目數量

這個詞組的意思是在七天內做一款Roguelike遊戲。每年三月份左右的時候,都會有開發者做這樣的嘗試,迄今已經延續了14年。這是很好的體驗,因爲只要完成研發,就意味着有一部分人體驗過你的遊戲,並且可能留下了反饋。有些賽事的評委還會在不同的領域給遊戲打分,不過大多數人都把7DRL當作個人挑戰,而不是競賽。

在每年的這種活動中,都會有超過100款Roguelike遊戲出現,它們很多都很有趣,雖然我不建議你的第一個項目做7DRL(沒必要這麼早承受壓力),如果有一些經驗的話,參加這個項目也是不錯的嘗試,尤其是你瞭解Roguelike需要說明,特別是技術方面,因爲在有限的時間內完成研發可以幫助你提高效率。

我們來看一些案例:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Knight(2014年的7DRL項目)

《Knight》主要就是讓玩家控制動量,你大多數時候都是騎在馬上,你只能移動中間的藍色小方塊,而且每個回合只能一個空間,你移動到的地方也就是下一個回合所在的地方,這意味着玩家必須提前規劃,計算你角色路過這些地方的時候,揮劍所帶來的攻擊傷害。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

《A Roguelike Where You Dodge Projectiles》(2016年的7DRL項目)

之所以喜歡這個遊戲,是因爲你可以從名字裏看到玩法(下載地址)。玩家在遊戲裏是一艘太空飛船,在你自動攻擊範圍內敵人的時候,敵人的炮彈移動速度很慢,你可以看到他們下一個回合的彈道,所以你可以持續攻擊,同時避免被擊中。

之所以喜歡這個遊戲,是因爲你可以從名字裏看到玩法(下載地址)。玩家在遊戲裏是一艘太空飛船,在你自動攻擊範圍內敵人的時候,敵人的炮彈移動速度很慢,你可以看到他們下一個回合的彈道,所以你可以持續攻擊,同時避免被擊中。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Seven Day Band(2015年7DRL項目)

在《Seven Day Band》裏,你可以一邊玩遊戲一邊創作自己的Roguelike。四周都是新的未知敵人和物體,在第一次遇到他們,或者這些物品變得重要的時候,你需要給他們取名和設置能力。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Broken Bottle(2011年的7DRL)

在這款遊戲裏,你扮演的是災後世界裏的酒精,遊戲裏的酒精消耗和大多數的體驗有關,完全取決於你的選擇(這是一個故事向的遊戲)。

 

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

 

Drakefire Chasm(2012年的7DRL項目)

在《Drakefire Chasm》裏,玩家扮演一條年輕的龍,在充滿怪獸、冒險和其他龍的洞穴裏作戰,但遊戲裏沒有物品,你只需要升級龍的能力,吃掉自己的敵人然後變得更大更強,這款遊戲目前還經常更新。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Golden Krone Hotel(2017年的7DRL項目)

在遊戲裏你要利用角色吸血鬼和人類形態下的不同能力,包括與動態光的互動,這個項目最後變成了更大的商業遊戲,而且一年前發佈到Steam平臺之後,表現非常不錯。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Cogmind 7DRL(2012)

這是最初的Cogmind 7DRL,你是一個機器人,需要用找到的部件和其他機器人拆下來的零件從頭開始建造自己,由於物品破壞極大,所以你需要經常重塑。很明顯,這個項目最後也成了一款更大的商業遊戲,我從來沒有想過六年前做的7DRL居然會成爲工作內容的一部分,但我很高興參與了這個活動,因爲完善核心機制是非常有趣的事情。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Polybot-7(2018年的7DRL項目)

2018年的7DRL活動上,我做了《Polybot-7》,它有點像Cogmind,但玩法有很大不同,因爲核心機制發生了很大改動。在這款遊戲裏,玩家們不再選擇物品,附近的物品會自動飛過來並且吸附到你身上,你甚至無法移除它們,除非遭到了破壞。我最初的打算是把它做成一個小號的Cogmind,但在活動結束的時候,我一直覺得這款遊戲不值得做,因爲它還需要真正的吸引力才能顯得獨特,也就是一個全新的核心玩法。但最後帶來的體驗卻很有趣,也增加了很多的玩法,爲此,我還專門做了對比,並且爲整個研發過程做了覆盤(鏈接)。

所以,儘管這些遊戲可能不止一個玩法系統,但很明顯,他們都只是核心玩法,與很多其他的7DRL項目一樣脫穎而出。

非7DRL案例

我們還是來看一些非7DRL項目,這些遊戲用了很多年的時間研發,而且也包含大量的系統,但你仍然可以看出他們是如何圍繞核心玩法不斷進化的:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Mage Guild

在《Mage Guild》裏,有最出色的化學系統,你可以混合任意兩種物品,不管是藥品、怪物掉落還是任何東西,都可以得到有趣的新物品和效果。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Demon

在《Demon》裏,你招攬大量的惡魔作爲追隨者,並且訓練它們。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

The Ground Gives Way

這個遊戲完全是通過物品推動遊戲進度。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Xenomarine

這款遊戲是基於遠程戰鬥和定向facing,在其他Roguelike遊戲裏並不多見。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

NetHack

《NetHack》的已經開發者曾告訴我,這款遊戲的核心機制是,“如果看起來它可以做某些事,那你就很可能做到”(這個案例看起來沒有核心玩法,而且不適合新手開發者,但實際上它最初的核心玩法很簡單)。

遊戲研發資源

做Roguelike遊戲裏研發,最重要的一件事就是獲得信息,這包括學習基礎技能、回答問題、隨後參與更高級的話題,或者只是爲了找靈感。

你遇到的困難會與其他開發者不一樣,因爲每個人都有不同的技能和個性,但你可以使用在線資源和好友克服這些障礙。雖然可能沒有人真正和你一起做項目,但其他人可以提供你需要的建議。但前提是,你得去問,這用了我很長時間才學會,而我剛開始的進度很慢,因爲我從來不接觸其他人,所以在這裏要提醒新人,只要你開口,有大量的幫助等着你。

我們來看一些比較有用的資源:

r/RoguelikeDev

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Reddit平臺上的RoguelikeDev論壇(地址)是世界上最大的Roguelike開發者活躍社區,我們形成了熱情互助的社區氛圍,而且右邊欄有大量不同的資源。

在這些資源裏,有各種語言的教程和圖書館,有些成員曾經是用過這些資源,還能回答你遇到的問題。

此前我提到用Python開始研發,而最簡單的方式就是叫做libtcod的資源庫,我們實際上有很多新手教學。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

libtcod logo

和很多的遊戲庫一樣,libtcod處理的是基礎的功能,比如遊戲窗口、鼠標和鍵盤支持、Bitmap字體、調色板以及顏色控制。但它也會包括很多Roguelike特定的功能,比如地圖生成、FOV和尋路系統。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

在互動libtcod demo裏找到的功能樣本

我此前展示的兩款Roguelike遊戲,《Ultima Ratio Regum》和《Temple of Torment》都是用這些新手教學開始做的,最終兩款遊戲都作出了獨特的功能,libtcod是非常不錯的資源庫,而且迄今爲止已經持續更新了十年。

新手開始的另一個方式是參加r/RoguelikeDev暑期code-along活動,如果需要更多的動力和節奏管理,你還可以與其他開發者共同學習libtcod教程。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

r/RoguelikeDev暑期code-along活動logo

我們已經做了很多年的新手指導,開發者對此興趣很高,每年都有100人左右參加。技術層面來說,你並不需要使用libtcod或者Python也能參加,很多使用其他編程語言的開發者也帶來了他們的Roguelike項目或者類似的教程。

在爲期兩個月的活動結束時,你會做出可玩版本的Roguelike遊戲,以下是過去幾年參加活動的開發者做出來的樣本:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

樣本項目

這是一個非常不錯的經歷,你基本上可以獲得研發Roguelike所需要的技術背景,然後充分發揮自己的想象力。

在活動的後期,我們還提供了FAQ環節,針對各種話題解決不同的研發難題,比如:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

這些包括核心話題,比如規劃和動機、以及很多細節,比如普通的系統、策劃、各種各樣的事情。這些年間,我們有大量的開發者爲FAQ做出了貢獻,包括很多的知名Roguelike開發者。

坦白說,有很多開發者經常在社區活動,還有很多人在做長期興趣項目,他們知識豐富而且樂於助人,我們還有Discord用於實時討論和求助(我們與r/RoguelikeDev論壇共享服務器,所以你還可以發現很多人在其他頻道討論各種各樣的Roguelike問題)。

RogueBasin

在Reddit論壇之外,Santiago Zapata還在很多年前創作了這個非常好的網站,你們可能有些人聽過RogueBasin,在這裏你可以發現整個研發過程的相關文章。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

文章內容分類截圖

這個網站有大量的文章,雖然很多內容有些老,但大多數的知識仍然可以用,實際上很多年前我就是從這個網站開始學習的,雖然內容量很大,可對於Roguelike研發來說,這是一個循序漸進的過程,你每次只需要學一點就可以。

Roguelike Radio

Darren Grey、Andrew Doull、Mark Jonson和其他人負責主持Roguelike Radio的節目。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

2011-2018年節目話題列表

檢查所有的話題,這些還包括大量Roguelike開發者的採訪,我甚至還出現在其中的兩三期節目裏,包括曾經提到Cogmind可能在2016年完成之類的事情,如今已經是2019年,我還在給遊戲增加更多功能。

還有很多節目是報道7天Roguelike挑戰的,這在開發者社區是很重要的事情。

所以我們已經有大量的渠道可以獲得研發知識,不過,在遊戲研發方面,另一個重要的部分遊戲資源

遊戲資源

這些是我們的資源:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Roguelike研發資源

認真的說,ASCII在很多方面都是很出色的,而且增加新內容非常容易。只要有合適的前景色和背景色,你就可以做出很漂亮的遊戲。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Brogue

如果你已經對Roguelike很熟悉,或許會認出它是Brogue,不過這些年來,我收集了大量的ASCII截屏,並且希望分享一些,給你們展示它的可能性究竟有多大:

 

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

 

來自不同ASCII Roguelike遊戲的22張圖

美術風格的多樣化非常不錯,因此做獨特的風格仍有很多探索空間。

在使用ASCII或者類似的單色Tilesets的時候,你還可以嘗試我的編輯器REXPaint(集成了libtcod)。對我來說,它是一個不可或缺的工具,而且有很多開發者在用,可以用來作UI設計、地圖和藝術設計。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

REXPaint logo,粒子界面和樣本圖片(截圖裏的顏色太多,因此動圖看起來效果不佳)

Tilesets

當然,如果想讓更多人玩你的遊戲,或者如果它能幫助你的項目,實際上還有很多不錯的tilesets可以使用,其中很多都是免費的,還有些價格也非常低,你可以在r/RoguelikeDev側邊欄找到大量鏈接。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

2D Roguelike tilesets樣本

對於有些開發者來說,tilesets可以激發靈感,可以幫助推動研發進度。也就是說,你可能在其他Roguelike遊戲裏看到過這些,但漂亮而免費的美術素材對於獨立開發者的價值是非常大的。

不錯的起始點

在最後一部分,我希望從一些比較實際的地方講述如何開始你的設計過程,你想要專注什麼。你可能滿足於在屏幕上移動字母,或者想要做的更多,並且希望其他人像你一樣喜歡這款遊戲。

當然,首先你需要有獨特的吸引力才能讓人感興趣,但這種吸引力可以通過很多種形式展現:

我們已經談過了核心機制,這是最簡單的吸引力之一,因爲它直接與遊戲玩法相關,Roguelike最最重要的就是玩法。如果遊戲體驗沒有可重複性,那麼所有的永久死亡設定就是沒有意義的。

優秀的音頻設計能是不多見的,不過,我們看到很多的Roguelike遊戲開始走這個方向,因爲它可以吸引更多的玩家,因此把音樂做好也是有幫助的。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Roguelike tilesets demo

但我這裏想要強調的是主題,它也是很好的吸引力,只不過很多人都沒有充分利用。

主題

業內有很多出色的地牢探險遊戲,所以,如果你真的想讓自己的項目具有辨識度,最好是找一個獨特的主題,而不是爛大街的魔幻地牢探險。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

可以使用的主題

基本來說,Roguelike遊戲是基於有趣的玩法,但擁有獨特的主題不僅可以讓整個體驗與衆不同,還可以讓你做出全新的機制(全新的主題幾乎會迫使開發者想新的辦法)。特別是,歷史和神話主題可以提供大量的素材可以探索和拓展。人們始終希望更多科幻主題的Roguelike遊戲,在Roguelike品類,科幻主題的遊戲幣其他品類要少的多。

近些年來,我們也看到了一些非常獨特的主題。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

MakaiRL基於日本神話和歷史幻想

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Skies of Bloody April是一戰主題

這些遊戲的主題都引人注目,尤其是完成研發之後(上述遊戲都還在初期研發階段)

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

另外一個完成度較高的遊戲是《Lone Spelunker》,你在遊戲裏探索大自然,有時候要進入一些危險的地下洞穴。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Pirate Rogue概念藝術

還有些主題是Roguelike社區問到最多,但又很少人做的,比如海盜主題,所以《Pirate Rogue》在論壇獲得的投票很高。

不過,這個項目還只是在概念階段,開發者們意識到他們的經驗不足,因此暫停了遊戲研發,但我們可以看到這個主題的需求。

超級英雄和賽博朋克主題也是經常被問題到的主題,所以也是不錯的選擇。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

在RoguelikeDev論壇有很多不錯的故事,也有很多優秀的項目,但這裏我特別想要分享的是《Armoured Commander》。

你在遊戲裏操作一輛二戰坦克,帶領幾名成員參與活動,它的開發者Gregory Scott剛做這個項目的時候,研發經驗很少,但通過libtcod Python教程很快就上手研發了。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

一年之後,他不僅完成了研發,遊戲還拿到了Rock,Paper,Shotgun的推薦。

也就是說,從幾乎沒有經驗到完成一款在歐美主流PC評測網站拿到推薦的遊戲,只用了一年。這期間有一定的運氣成分,但獨特的主題也是吸引人們注意的重要原因之一。

所以,選擇一個獨特的主題並且做出與衆不同的內容,這會讓更多人感興趣,也會給你帶來動力。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

Gregory目前在做續作ArmCom2

還要記得的是,你的遊戲不一定是一板一眼的Roguelike,不要被定義束縛。我們經常見到有人想出了遊戲想法,但他們擔心別人是否同意它是個Roguelike遊戲,這實際上並沒有關係,因爲玩家們對它的定義有很多,只要它內在連貫而且符合你的計劃,那就沒有問題(不要擔心,你也可以在論壇經常看到某些東西是否是Roguelike玩法的相關討論)。

XRLs(蹭IP)

現在我們來個180度大轉彎,你還可以嘗試其他帶來優勢的方式,也就是所謂的XRLs。這些都是基於現有IP,爲你節約了大量的規劃時間和設計方面的投入,因爲大多數問題都已經被解決了。只不過,你需要用Roguelike的形式改編它。對於XRL,你可以專注於執行層面和其他基本元素。

很多開發者都是這麼做的,之前我還在RogueBasin網站做了一個列表,下圖的所有Roguelike遊戲都是基於現有IP改編的:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

從個人角度來說,我認爲這是開始研發很好的方式之一。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

或許最著名的XRL是DoomRL,通常我們就叫它DRL。

提示:你需要注意一些比較喜歡打官司的公司,比如任天堂(不建議做口袋妖怪Roguelike),但總的來說,Roguelike屬於小衆品類,而且不容易被大衆市場所注意,因此如果是興趣項目,做XRL是沒有問題的。只有那些獲得了大量關注的項目才需要注意版權相關的事宜,而到了這個階段,你實際上已經可以考慮到底是做自己的品牌,還是在成熟經驗的基礎上從頭開始新的遊戲研發。XRL項目通常是短期行爲,而且是用來學習的小遊戲,但仍然有不少XRL項目做了很多年(任何情況下都不要忽視現有IP的商業風險)。

目前,DoomRL開發者Kornel Kisielewicz正忙於精神續作《Jupiter Hell》的研發,這是一個非常好的案例,他先用XRL獲得比較大的粉絲羣,然後在此基礎上做更大的商業化Roguelike遊戲。

早些年間,Kornel還做了另外兩款XRL遊戲:AliensRL和DiabloRL,也是我最早接觸的Roguelike遊戲之一。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

AliensRL

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

DiabloRL

高產Roguelike開發者Slashie也根據銀河戰士、惡魔城、塞爾達、星球大戰、洛克人和很多其他的IP做過XRL。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

甚至我的首個半Roguelike項目,XCOMRL也屬於這個品品類,這在初期帶來了很大的幫助:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

自此之後,我開始做自己的機制和內容,嘗試更多已經成熟的主題。

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

XRL另一個優勢在於,你已經有了相當規模的潛在用戶羣,喜歡Roguelike和這個IP的人都可能會嘗試你的遊戲,比如一些核心粉絲最早就是從《X@COM》開始關注我的。

長期研發的建議

這些建議可以在長期研發的時候給你帶來幫助:

儘早完成、儘快發佈

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

RogueBasin統計的項目宣佈與發佈記錄

這是Roguelike研發的原則,快速做出最小化可玩版本是非常好的習慣,這樣做可以儘早得到一些不錯的反饋,對於長期研發是很有價值的。

每週分享

即使是在首款遊戲發佈之前,哪怕只有一個概念,或者已經做了很久的研發,都可以參與我們每週的分享討論(每週RoguelikeDev分享討論帖地址)

對於有些人來說,這是一個審視自己項目的好機會,你可以分享過去的一週做了什麼或者什麼也沒做成,在討論的過程中遇到志同道合的朋友;也可以討論增加的新功能或者新想法,總之,這是一個很優秀的社區。

保持寫博客的習慣

除了每週分享外,把你的研發信息集中到一個地方也是很好的,開發者博客實際上有很多優勢,以下是主要的幾點:

組織你的想法;

從不同視角檢查你的工作;

記錄研發過程;

創造一個有用的長期參考;

獲得反饋;

打造社區。

我本人已經堅持了很長時間,而且發現這樣做的價值很高,以下是這些年來我的博客曾經講過的話題:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

你可能會發現很多有用的信息

可達性很重要

通常來說,Roguelike是小衆品類,因此不會涉及到可達性的話題,但在如今的遊戲市場,只要願意付出努力,你就有機會接觸大量用戶,這意味着你要做大量的文檔,一個新手教學、支持全鼠標操作、tileset等等。

爲了展示支持鼠標操作和tileset的價值,你們可以看看Cogmind的玩家數據:

從入門到精通:如何零基礎做一款Roguelike遊戲?

 

需要注意的是,有些功能需要從項目的一開始就要考慮,但在第一款Roguelike遊戲裏,不要擔心這些,用ASCII和鍵盤操作也沒有問題。

結束,也是開始

這是文章的結束,也是你新項目的開始,加油吧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章