2015年6月4日 星期四

【院專題】Matchstick Men

發想
  以從吃金幣為出發點,找尋著每種有關吃金幣的遊戲,馬力歐、音速小子、temple run……等,儘管都是畫分不同類型的遊戲,但是我們希望能做到屬於我們的作品。
例如 : 作品設計中,角色的活動範圍變小了,變成了許多的小台子,主角只能從台子上邊躲取障礙,邊或取足夠的金幣才行。主角可以重複進行關卡,來或取足夠金幣來進行下一場通關,或是買裝備等。

遊戲類型
  3D橫向動作遊戲

遊戲平台
    PC
下載連結:
https://www.dropbox.com/s/qw108mdg1dl9rnq/Matchstick%20Men.zip?dl=0

遊戲性
  1. 遊戲中,檯子(行動路線)皆為浮在空中的,玩家必須小心每個檯子的障礙物以抵達終點。
  2.遊戲的金幣得取,可以累計在遊戲破關後,累積起來的金額,能用來購買裝備,或是選擇更難度的關卡。
  3. 增加許多小障礙物跟調整台子位置,來增加遊戲難度。例如 : 幅度起伏大的台子,我們增設跳台,為玩家可以輕鬆的跨越。
  4. 商店,主要以販售裝備為主,腰帶、頭盔、鞋子,每樣都有不同屬性,當然必須要從遊戲中或取金幣,才能購買此裝備。

遊戲方式
  遊戲為橫向動作遊戲,由方向鍵來控制左右移動,以Z鍵衝刺突破障礙物,或是以X鍵來跳躍過障礙物到達終點,並在途中蒐集金幣以購買更加方便過關的裝備。

操作說明
移動:方向鍵
確認(衝刺):Z
取消(跳躍):X

規則
1.金幣
  在此遊戲中金幣不只是蒐集來購買裝備的物品,也是玩家的生命,碰撞到障礙物時將會扣除金幣,如過身上金幣不足時碰撞到障礙物,腳色將會死亡。

2.障礙物、機關
  在遊戲場景中,除了金幣和障礙物外還有些機關、道具來幫助或阻撓玩家過關和取得金幣,例如:
火柱:會噴射出火焰,碰撞後將會扣除金幣。
跳台:能使玩家跳得更高,有時也可能是陷阱。
磁鐵:一定時間內自動吸取附近的金幣。
電池:可以增加腳色的移動速度。
隨機箱:隨機取得磁鐵、電池或是隨機數量的金幣。

3.能量條
  玩家使用衝刺時可以毫髮無傷的撞破障礙物,但是將會消耗能量,並且無法在短時間內連續衝刺,而能量會隨著時間慢慢恢復。

4.紙娃娃
  玩家可以用取得的金幣來購買裝備,裝備會影響外觀,也會增加腳色的能力。

遊戲流程圖
美術設定
1.角色
2.機關、道具
3.場景

程式技術
衝刺
  為了讓角色自動移動一段時間採用了計時,計時時自動移動,又為了不讓玩家一直按著衝刺在利用了一段計時來控制衝刺的CD時間。並為了閃避火柱及撞破障礙物用碰撞偵測並開關Is Trigger以達到效果。

購物、裝備系統
  使用if/else/for/switch及資料存取來實現圖片的開關、確認物品是否購買、金錢的存取和增減,而裝備的紙娃娃並不是反覆使用instantiate/destroy而是用set.active開關來實現。

UI
  原先是使用Unity裡的GUI Button、GUI Texture來做的,但是發現在適應視窗大小的設定很繁瑣,所以後來使用NGUI來製作,但是因為孩不熟悉還是有些問題。

動作細節
  使用Trall Render來實現奔跑速度線的效果來增加速度感,碰撞到障礙物時X座標會往後退並小小的跳起實現碰撞感。

遊戲畫面

========================================================================
後日談
之後為了讓遊戲能在Android上運行進行了修改,把原本用方向鍵控制移動的方式改為自動移動,並增加已手機陀螺儀的擺動來增加或是減速。
另把衝刺及跳躍改為觸碰螢幕,一指觸碰為跳躍,二指為衝刺。
把平台、障礙物改成隨機生成在角色前方,並在角色後方增加碰撞偵測器來刪除已經越過的生成物來節省資源。
以這些修改來達成在Android上運行並改成無限向前移動,以個人技術來增加奔跑距離以及使用時間的模式。

沒有留言:

張貼留言