Cocos2d-xna : 橫版戰略遊戲開發實驗1 開篇
轉自:http://www.cnblogs.com/nowpaper/archive/2012/09/11/2680852.html
這個世界上各種遊戲引擎林立,其中不乏精品,cocos2d作為一個大眾引擎非常不錯,尤其是工具齊全,最重要的是免費,加之各種團體對引擎的各種支援,cocos2d也算在移動領域開發比較常用的了,現在各種語言版本均以具備,WindowsPhone未來雖然也有了C++但畢竟C#的獨有特點也會讓支持者很難放棄,cocos2d自從有XNA版本後讓開發WP遊戲更加容易,甚至現在都可以做WinRT的通版本遊戲,呵呵這一點,可以看之前的文章。
那就折騰一個遊戲吧 |
很久沒有例項的文章了,這次從用cocos2d-xna開發一個較為完整的遊戲,這樣讓大家領略C#的獨有魅力。那麼開發一個什麼遊戲呢?還是一個戰略遊戲吧,這樣基本上都能夠練習到所有的技術要點,遊戲開發第一步是策劃設計,把最終的遊戲形態想好,一般在遊戲公司裡面,這一步就是立項,雖然大多數的情況下,是一個靈光一閃的想法,然後就開幹,但優秀的開發團隊一定會在策劃設計上花上一段時間——但是不要佔據太多時間,一方面因為不能陷入到無限的YY中,另外一方面因為好的遊戲是改出來的,開始的設計能實現80%就已經很不錯了。
所以我們簡單的設計一下這個遊戲:
1、風格:三國題材
2、這是一個戰略遊戲,偏向智力延伸
3、兩方對戰遊戲玩法
4、敵我雙方在地圖左右兩邊
5、士兵自動對衝,然後攻擊路上的敵人,士兵有生命值
6、通過一種方式購買士兵:援兵或金錢
7、士兵擊敗主將取得勝利,主將有生命值且不易擊敗
8、士兵分為:步兵、槍兵、騎兵、弓兵
9、剋制關係為:步》槍》騎》步;弓兵最弱,但為遠端攻擊
10、主將具備一些特殊能力,需要金錢使用
Ok這個遊戲的初步的設計出來了,也許你的設計會更好,但不要貪多,現在會發現這個說明實在太簡要了,根本就不能說明一個遊戲,那麼,運起我們的各種設計工具,設計製作一個藍圖,如果有美術設計幫你是一件非常幸福的事,吾輩草根就只能自己搞定啦,下面是一個設計圖,美術素材來自深藍色右手的遊戲教程,好吧,它們都來自網路,別問我版權問題。
這只是一張非常簡要的預覽圖,大概通過它來了解遊戲是什麼玩的,更多的細節在後面邊做邊改。
主體結構 |
在搞這樣的一個遊戲之前,還要想想都需要什麼功能,尤其是需要多少個介面,有必要的最好規劃一下:
通過上面的圖我們大概能看出具體是什麼形態,相比之前的想法階段是不是更進一步了呢?然後再細緻一點的話,可能還要做更詳細的需求分析,比如說基本角色、技能體系、地圖邏輯等,一般來說由策劃提供詳細的策劃書,然後主程式依據策劃設計完成程式架構,定義好各種介面,
那麼下面就做一下這樣的嘗試,也許有一些地方不太理解,沒有關係,在將來逐步的講解,而且第一次的架構一般來說都會遺漏,逐步的補齊就行。
第一步先建立一個簡單的cocos2d-xna的工程,在這裡,我使用WindowsPhone作為開發平臺,通過之前的文章《Win8 Metro App裡玩XNA:如何使用和移植cocos2d-xna遊戲》,也可以輕鬆的移植到Win8上,如果你安裝了最新的cocos2d-xna工程模板,那麼可以新建工程裡見到下面的介面。
如果對這一部分有疑問的話,可以參看這篇:《Cocos2d-x for WindowsPhone:萬丈高樓亦可不需平地起》。
現在開始建立整個遊戲的架構,這個時候很容易迷茫,不知道該如何下手,在初步的階段,想到什麼就做什麼就好了,想得過細也不好,早些進入早些開始,我寫了一個簡單的遊戲架子:
從Game入口點進入到AppDelegate類中跳轉場景到開始介面,如果有載入的話,一般會加入到Loading中,好吧,我們們不需要這個,對於這些類做一下簡單的說明:
SceneStart:遊戲開始的場景
SceneSetting:設定場景
SceneSelect:地圖選擇場景
SceneGame:遊戲場景
SceneOver:遊戲結束場景
對照之前的流程,我們在這幾個場景中跳來跳去即可,但是一個遊戲要有演員,在這裡表現的是Actor的類,而角色分細一點有利於開發,其中有處理資料的ActorData在這裡處理資料,一般邏輯的ActorBase在這裡處理動畫,Actor在這裡處理遊戲的邏輯,有必要的話,未來可以繼承出來英雄什麼的,那麼在這裡我們們就不要浪費精力。
本框架程式碼在:https://github.com/Nowpaper/SanguoCommander_cocos2dxna_Sample
好了,今天就折騰到這裡,在下一篇中,將會處理場景的切換和跳轉,以及對資源的處理操作。
相關文章
- 實戰Flash遊戲開發遊戲開發
- Cocos2D-XNA入門篇
- 《Tsuro》實戰分享:移動VR遊戲開發經驗與教訓VR遊戲開發
- 《HTML5Canvas遊戲開發實戰》——第1章 準備工作HTMLCanvas遊戲開發
- HTML5遊戲開發進階 5 :建立即時戰略遊戲世界HTML遊戲開發
- H5 遊戲開發:橫屏適配H5遊戲開發
- 機器學習實戰之開篇機器學習
- YK戰略能否實現
- 黑客攻防技術寶典:Web實戰篇(第2版)與第1版的區別黑客Web
- 遊戲開發經驗談(二):對戰類全球服遊戲的設計與實現遊戲開發
- Flutter完整開發實戰詳解(二、快速開發實戰篇)Flutter
- Cocos 與騰訊雲宣佈戰略合作,把遊戲開發門檻降到極致遊戲開發
- 團隊即時戰略遊戲《A YEAR OF RAIN》封測版今日開啟遊戲AI
- Nginx入門到實戰(1)基礎篇Nginx
- 中小遊戲開發團隊如何保持創作力?<經驗篇>遊戲開發
- 遊戲開發經驗——遊戲開發的基本常識(轉)遊戲開發
- 敏捷開發的實戰經驗敏捷
- 《HTML5Canvas遊戲開發實戰》——3.4 小結HTMLCanvas遊戲開發
- Unity3D 2D實戰遊戲開發Unity3D遊戲開發
- 微信小遊戲開發(1)遊戲開發
- BI之SSAS完整實戰教程1 -- 開篇, BI簡介 & SSAS簡介
- 實況足球戰略版《實況球會經理》今日全平臺公測!
- 戰略實施的模式(轉載)模式
- Docker小白到實戰之開篇概述Docker
- vsphere實戰攻略1:基礎準備篇
- HTML5 canvas遊戲開發實戰 5 : 石頭剪刀布HTMLCanvas遊戲開發
- Swift遊戲開發實戰教程(大學霸內部資料)Swift遊戲開發
- 人類Humankind for Mac(歷史戰略遊戲)原生版Mac遊戲
- 【三國志戰略版】拆解與分析
- 有來實驗室|第一篇:Seata1.5.2版本部署和開源全棧商城訂單支付業務實戰全棧
- JBuilder9+Weblogic7實戰篇之工具篇(JDBC 1) (轉)UIWebJDBC
- 九年遊戲開發經驗談遊戲開發
- Flutter Flame遊戲開發上手(1)Flutter遊戲開發
- 阿里開源HTML5小遊戲開發框架Hilo實戰教程阿里HTML遊戲開發框架
- 《Python高效開發實戰》實戰演練——開發Django站點1PythonDjango
- python遊戲開發實戰:網路遊戲Demo(客戶端)Python遊戲開發客戶端
- HTML5 canvas遊戲開發實戰 6 : 俄羅斯方塊HTMLCanvas遊戲開發
- Flutter完整開發實戰詳解(二、 快速開發實戰篇) | 掘金技術徵文Flutter