2011年11月7日

[心得]Monster Musume Hunter開發心得(2)--技術


  這一作沒有用現成的引擎如RPG Maker、吉里吉里而是大費周章自行開發引擎,會這樣做是因為自己打造的話能做的事比較多,以後要做動作、彈幕、或網路連線都做得到,一定要比別人強的心理也是原因。製作時確實遇到很多困難,每次遇到困難時就告訴自己:「別人做得到,我也一定做得到」「別人做不到的,我要把它做出來」,最後終於排除萬難做出來。

  從底層開發讓我研究很多系統層面的問題,像是檔案權限檢查、圖檔解碼、硬體相容性,還有安裝程式也有複雜的流程和錯誤檢查要做,沒有表面看來那麼簡單。另外資料要用什麼格式,各人負責的企劃資料、腳本、圖如何整合也是程式要負責的,主程式要指揮調度做決策,領導責任其實不下於團長。

  有一種說法是解譯型語言的開發比較快,所以應該用解譯型語言,C/C++或Java那樣的系統語言應該被淘汰。據我經驗大型要跟系統底層打交道的程式不適用,開發快的代價是debug難,要正好執行到出錯的那一行才能發現,而且常有開發時沒發現錯誤,正式release時才被使用者、玩家發現的情況。C/C++這種編譯型語言的好處是語法檢查就能抓出很多錯誤,也許會覺得做很久都看不到結果很沒成就感,但一旦做完就能從頭執行到尾,不用花很多時間debug。

  出Windows和Linux版是本遊戲的一大創舉,並不是想推廣Linux,只是想挑戰看看跨平台,而且別人都不會做Linux版的話,Linux使用者就是我們獨佔了。沒出Mac版是因為程式人員(我)手邊沒Mac機器,如果有人提供一台就可以試試看。

  Linux跟Windows一樣有autorun的功能,方法是寫一個autorun.sh並讓光碟保存Linux檔案權限,一般光碟或隨身碟沒有記錄Linux檔案權限,而在Linux執行程式需要檔案有「可執行」權限,所以不能直接執行上面的檔案。這次的autorun.sh有疏忽,不能自動執行安裝程式,所以只好請玩家自己點安裝程式了。眼尖的人應該會發現光碟上的安裝程式不是install或setup這些常見的名稱而是ins_windows.exe和ins_linux,這是因為檔名裡有install的時候Windows 7會讓它要有管理員權限才能執行,我想讓一般使用者也能執行,所以用這名稱。

  因為是自製引擎,程式方面有很多特殊設計,比較明顯的是文字顯示,有反鋸齒和陰影效果,在不同語言不同OS都能顯示相同的字型,為了讓Linux能安裝光碟也有特別處理,還有很多玩家看不出來的。最後音樂鑑賞是我的特別構想,務必要看一下。

沒有留言:

張貼留言