Cocos2d-xna : 橫版戰略游戲開發實驗1 開篇


這個世界上各種游戲引擎林立,其中不乏精品,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這個游戲的初步的設計出來了,也許你的設計會更好,但不要貪多,現在會發現這個說明實在太簡要了,根本就不能說明一個游戲,那么,運起我們的各種設計工具,設計制作一個藍圖,如果有美術設計幫你是一件非常幸福的事,吾輩草根就只能自己搞定啦,下面是一個設計圖,美術素材來自深藍色右手的游戲教程,好吧,它們都來自網絡,別問我版權問題。

sanguo1

這只是一張非常簡要的預覽圖,大概通過它來了解游戲是什么玩的,更多的細節在后面邊做邊改。

   主體結構

在搞這樣的一個游戲之前,還要想想都需要什么功能,尤其是需要多少個界面,有必要的最好規划一下:

sanguo3

通過上面的圖我們大概能看出具體是什么形態,相比之前的想法階段是不是更進一步了呢?然后再細致一點的話,可能還要做更詳細的需求分析,比如說基本角色、技能體系、地圖邏輯等,一般來說由策划提供詳細的策划書,然后主程序依據策划設計完成程序架構,定義好各種接口,

那么下面就做一下這樣的嘗試,也許有一些地方不太理解,沒有關系,在將來逐步的講解,而且第一次的架構一般來說都會遺漏,逐步的補齊就行。

第一步先建立一個簡單的cocos2d-xna的工程,在這里,我使用WindowsPhone作為開發平台,通過之前的文章《Win8 Metro App里玩XNA:如何使用和移植cocos2d-xna游戲》,也可以輕松的移植到Win8上,如果你安裝了最新的cocos2d-xna工程模板,那么可以新建工程里見到下面的界面。

QQ截圖20120909190348

如果對這一部分有疑問的話,可以參看這篇:《Cocos2d-x for WindowsPhone:萬丈高樓亦可不需平地起》。

現在開始建立整個游戲的架構,這個時候很容易迷茫,不知道該如何下手,在初步的階段,想到什么就做什么就好了,想得過細也不好,早些進入早些開始,我寫了一個簡單的游戲架子:

QQ截圖20120911205729

從Game入口點進入到AppDelegate類中跳轉場景到開始界面,如果有載入的話,一般會加入到Loading中,好吧,咱們不需要這個,對於這些類做一下簡單的說明:

SceneStart:游戲開始的場景

SceneSetting:設置場景

SceneSelect:地圖選擇場景

SceneGame:游戲場景

SceneOver:游戲結束場景

對照之前的流程,我們在這幾個場景中跳來跳去即可,但是一個游戲要有演員,在這里表現的是Actor的類,而角色分細一點有利於開發,其中有處理數據的ActorData在這里處理數據,一般邏輯的ActorBase在這里處理動畫,Actor在這里處理游戲的邏輯,有必要的話,未來可以繼承出來英雄什么的,那么在這里咱們就不要浪費精力。

本框架代碼在:https://github.com/Nowpaper/SanguoCommander_cocos2dxna_Sample

好了,今天就折騰到這里,在下一篇中,將會處理場景的切換和跳轉,以及對資源的處理操作。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM