Sunday, June 24, 2018

C# 實現一個2D RPG引擎?

引擎實作?


靠杯中間走不出來sorry orz

人生第一台GAMEBOY當然是玩神奇寶貝,以前就有想實現了,RPG遊戲製作大師的年代,恩~學以致用我們來實現他吧!
還沒講完,宅男們都暴動拉(也得到C#助教的契機??

大改!


繼上次的神奇寶貝RPG,這期新增的功能礙於神奇寶貝需要跟百分之百模擬畫面,所以畫面要模擬成顯示腳色周圍X軸加+10-10 Y+10-10,以往的是一開始就加載所有地圖,導致整個地圖在繪製多物件的時候會讓程式效率不足,所以腳色移動不再是真正的在FORM裡面移動是固定在中央每次鍵盤按下去只會對針對的XY軸做計算,再來傳送到繪製地圖兩個迴圈進行繪圖,大大提高程式效率,到最後還是達成了這個大改算是把之前的腳色對話、判斷是否面對面、事件等等,所有涉及到座標的都必須更改,此外還新增NPC走路只要載入特定的素材檔,開發者只要4行就可以操縱NPC走路方向,整體來說神奇寶貝RPG就是基於RPG遊戲製作大師工具而啟發的,這個專體寫到後面說是遊戲到不如說是一個RPG遊戲開發引擎,下面會來為各位做一個統整。

1.畫面變動更改物品增加與移除
2.劇情功能設定將配合下面對話功能和戰鬥畫面衍生而出劇情。
3.對話功能增加鎖按鍵(不能移動)
4.戰鬥畫面設計介面新增。
5.碰撞功能分為靜態與動態。
6.新增功能有草叢遇怪物功能,沒抓寵功能因為遊戲畫面大改導致沒有實現。
7.道館也是因為遊戲畫面大改導致沒有實現。
8.捕捉神奇寶貝功能新增
9.可以在功能欄位裡面選擇神奇寶貝並可用來與其他腳色戰鬥

我們來看圖吧!(部落格被砍了,實在懶得再拍影片


主畫面恩~不錯

三層陣列




這意味者照期中的方式來繪圖將會大大增加記憶體和CPU使用率,但如果改用期末的畫面的話將大幅提升效能,也增加了可調螢幕解析度讓遊戲畫面不再受侷限,將可以用來製作迷宮方面,不再是一下子就找到事件的地點了,使得探索大大提升畫面可玩性。


偽2.5D樹木


戰鬥功能新增介面和攻擊爆擊



草叢遭遇野生怪物



捕捉神奇寶貝



NPC對戰系統




rpg.code