顯示具有 MMF2心得 標籤的文章。 顯示所有文章
顯示具有 MMF2心得 標籤的文章。 顯示所有文章

[MMF2]相同複數物件的寫法

  終於作完專題壁報了,花了好久的時間呢~不過以後的"空閒時間"大部分都會變成要待在實驗室中,能在這邊打廢話的機會變得更少了,看來小弟已經開始三室(寢室、教室、實驗室)的生活啦。唉,果然還是大學生活比較多空閒時間啊....= =a




壁報的冰山一角圖



  趁週末的空閒時間,繼續把之前還沒打完的MMF2心得系列寫完。小弟在上一篇有提到,如果每種Active物件都只有一個時,便可以不用擔心事件判斷錯誤,但只要其中一種Active物件出現兩個以上,就有可能判斷錯物件。因為Active物件常會需要用到,這可以算是用MMF2作程式最大的問題



  這問題原本一直困擾著小弟。以小弟之前所做的遊戲為例,假設數個相同的Active物件(此處指敵人)有不同的狀況(有些在空中,有些站著,有些剛落地),那麼MMF在事件判定上常常就會發生錯誤,因為MMF會把要作用的Active物件群搞錯(假設敵人A1、A2經過同事件判定成功後分別受到自己的變數影響,例如經過同事件A1得到100元,A2得到1000元,結果往往會是兩個人都得到100元,只受到其中一者的變數影響),有時甚至會因為多個條件判斷錯誤而波及到其他Active物件(敵人A3無緣無故得到100元),這也是我們所不想看到的結果。






[MMF2]旗子Flag與迴圈Loop

  昨天心血來潮繼續熟悉MMF2的物件功能時,無意間找到可以利用網路傳送/回報數據的物件與使用方法(MooSock物件),閱讀並測試好久之後終於通了~以前只知道MMF有線上傳輸資料的功能,只是都沒實際操作過,結果這麼一試就開始想作新的遊戲啦= =a



  繼續介紹MMF2的使用方法,繼上次講完事件編輯順序的例子後,這次要來介紹非常重要的的flag(順便提alternative value/string)還有fast loop(MMF中所內建的迴圈)。



第壹佰篇文章歡呼分隔線第壹佰篇文章歡呼分隔線第壹佰篇文章歡呼分隔線







◎Alternative value/Alternative string



  簡單來說就是變數,而且是屬於某個物件下的變數。例如點選Active物件,在Properties視窗就會有修改Alt value/string的選項(Alt value在這邊修改只能為整數),一個Active物件最多只能有26個Alt value以及10個Alt string,因此在使用上要小心變數上限的問題~因為變數都是隸屬不同的物件,就算有很多同一種類的物件,也能分別存有不同的數值,而這也顯示了物件導向的特性。


[MMF2]事件編輯 - 順序的重要性

  使用MMF2也有蠻長一段時間了,在台灣是個很冷門的設計軟體,不過還是想多少分享一下使用過後的心得,對其他正在使用MMF2或是對這軟體有興趣的朋友也許會有一點幫助。所以呢,小弟多新增了"MMF2心得"分類(用心得這一詞是因為FFTA都把得到某種職業的要訣稱作心得的緣故),大概會寫個兩三篇吧╮(﹋﹏﹌)╭



  Multimedia Fusion 2,簡稱MMF2,是由Click Team所製作的多媒體製作軟體,在歐美等地區盛傳已久(~以下省略廢話一千字~)。而在整個製作流程上最重要的,非Event Editor莫屬(等同於程式碼編輯的部分),要讓程式有好的執行效率、正確無誤,非得在這裡下點功夫。小弟瞭解的並不多,不過在這邊把自己目前所知道的部分介紹一次。



  Event Editor最重要的就是「事件、原因、結果的順序」



  能做到事件排序正確,那麼大部分跑出來的成果就不會有錯誤了,大部分。小部分是相同物件在選擇時所導致的錯誤,留到之後的改進篇再說~





[MMF2]要怎麼產生迷宮

  感冒才剛好就開始拉肚子,小弟的身體果然越來越差了= =



  從很久之前就一直在想要如何像以前看到的迷宮產生器一樣做出迷宮,不過一直都想不出來,所以最近就直接去找答案啦。看過別人的範例後,小弟決定自己也練習作看看,並且做成"教如何做迷宮"的軟體,上面的短片是還在製作中的畫面,是展示如何作迷宮的過程。





[MMF2]要主動還是要被動 - AI




  這次來談個奇怪的主題,就是人工智慧(AI),不是電影的那個= = 我們在玩遊戲的時候常常會看到非人控制的單位,像說格鬥遊戲中會自己動的敵人、網路遊戲的NPC等等,都是人工智慧的一種。這些虛擬角色並不是隨自己的意志行動而行動,而是有許許多多的人工智慧模式存在,而且這些模式跟我們生活中的思考模式,還有主動被動的地位,是有莫大關係的(因為這些還是人作的嘛)。對於這些模式,小弟自己大致分成三種,如下表(懶得畫,用word打= =a)






  可以從上表看得出來,人工智慧越接近隨機時主動性越強,越與時空相關時主動性越弱,不過除了這三種以外還有幾種例外,下面有寫。下面就用格鬥遊戲中的AI(玩家敵人)來稍稍討論一下各種模式跟生活中實際的範例,但是只討論外在行動,不討論想法就是了。圖片中P是玩家(主角),E是敵人(AI)


[MMF2]HP會漂浮 - Counter物件應用

  太成功了,原本以為這個遊戲不可能出現減少HP的漂浮數字,沒想到昨天真的做出來了~^ ^a 那麼,就來寫一下這漂浮數字的成功歷程吧。










  第一次小弟用String(字串物件)作漂浮數字,也就是把減少HP的數字變成字串的方法。其實這個方法是成功的,可是因為String只能套用一種顏色,沒有黑框或是漸層的顏色變化,也沒有Alternative Number可以用,不能作String的淡入淡出效果或是其他功能,所以結果就跟上圖看到的數字一樣醜,而且飄上去後就突然消失了,破壞遊戲美感,所以就不採用了。