很久沒做更新了。最近比較忙碌,手頭的webgame也都放下。最近很想念我的小webgame了,回來繼續寫。
上篇玩玩webgame開發(3):自動戰鬥實現以及一些遊戲細節(下) 在高峰期時候發表的,結果被火速沉底了。。。汗
好了,不小心有說了好多廢話,言歸正傳。
**********===
資料結構設計是門高深的學問,而遊戲的資料結構設計,那顯然,也是一門很高深的學問(--||好廢話。。),資料結構應該是整個遊戲的骨架所在,而遊戲資料平衡,(另一門高深的學問。。)跟這遊戲的資料結構息息相關。本文只是從自己做的乙個小遊戲出發,簡要的介紹一下我的乙個簡單的遊戲的資料結構設計思路。
乙個遊戲幾個基本的要素:
遊戲都在地圖上進行的。地圖的基本要素包括:地圖元素(即每乙個地圖座標格仔上的元素),不可進入的位置等。其他的還包括一些基本資訊。我的地圖資料結構設計如下:
var defaultmap = ;這是個很簡單的地圖結構,包括的幾個資訊:地圖名稱,地圖等級,地圖元素,不可移動的位置。最後生成的展示效果如下(實際介面大很多,這裡只是部分):
var bobo = ,pos指角色在地圖上的座標,其它的就是一些常見的資料了,包括名稱,金錢,滿血hp,當前的hp,等級,經驗,攻擊,防禦,速度,幸運,視野,其它的型別,檔案,img屬於我自己定義的一些結構,用於獲得特定狀態下的包子的。name : '拉拉',
money : 0, //新增加金錢
hp : 100, //full hp
curhp : 100, //current hp
level : 0,
exp : 19,
ap : 15, //attack power
def : 1, //defence
speed : 3,
luck : 15,
eyeshot : 2, //視野
type : 'bobo',
file : 'baozi',
img : $('
};
設計乙個這樣的資料結構並不難,自己愛怎麼設定就怎麼設定,呵呵。不過關鍵的問題在於資料平衡,設定得很bt的資料可以開始玩的時候很爽,但是一結束玩家馬上就會失去興趣,所以,合適的數值以及成長曲線才會保證耐玩度。我個人是喜歡很小的資料,這樣玩家自己計算的時候簡單,而且資料平衡比較好做。我平時很經常玩一些war3的rpg,只要進去裡面的人物或者是物品設定數字都是按百的,alt+q。順便廢話一下我喜歡的元素魔法之戰這個。
var monsters = [和遊戲角色的資料結構不同,它有額外新增1個id以及乙個items陣列,id表示怪物型別,因為怪物會在地圖上出現很多不同種類的怪物,通過id來區分不同的怪物。items陣列,表示這個怪物身上有多大的概率會掉那種型別物品。items陣列內的id表示物品的id。],img : $('}];
乙個怪物需要分布在地圖上的各個位置,我目前覺得最簡單的方式就是:
var mapmonsters = [哪個位置上哪個怪物,簡單明瞭。, id : 0
},, id : 0
},, id : 0
} ];
====未完待續,明晚繼續
遊戲開發面試總結4
今天面了一家遊戲公司,感覺自己每次面試的時候都會有好多東西表達不出來。唉,做個記錄吧 1 這個是面試時候出的第二個筆試題,我覺得挺好的,可能是因為緊張吧 直播敲 沒寫出來。題目是這樣 給定乙個二叉樹,節點包含有左子樹,右子樹和父節點指標。讓在o 1 的空間複雜度下遍歷這個二叉樹。思路就是,中序遍歷吧...
iOS開發 Swift開發數獨遊戲(一)
包括9 9的數獨格仔還有填數的按鈕,以及填標記 就是說我這個地方不確定填哪個數,我都先標記上供參考 按鈕 標記功能效果如圖所示 1 繪製數獨格仔要考慮到標記功能 所以要在每個格仔內預先塞入9個標記數字,僅數獨格仔算下來就有9 9 9 729個格仔且存在大量巢狀 這導致我在操作storyboard時每...
iOS開發數獨小遊戲例項
如下圖。圖1是使用者開啟程式後的主頁面,點選 開始遊戲 後進入遊戲頁面 圖2,圖3 遊戲介面上方是顯示條,顯示玩家當前選中的按鈕。當玩家想要在九宮格中填入數字時,只需點選下方1 9的數字控制項,顯示條上會自動顯示玩家當前選中的數字編號,再點選玩家想要填入的位置,就可以填入控制項了。最下方三個按鈕分別...