發表文章

目前顯示的是 3月, 2015的文章

NEIL的Unity學習筆記(3) - 轉珠寫法簡易入門

圖片
寫了一個轉珠的遊戲,順道也寫一下教學,有興趣的話可以下載看看 https://play.google.com/store/apps/details?id=com.FruitsPuzzle.CF 這個簡易寫法跟一些主流遊戲的差別在於珠子的移動判斷。 我分享的這個簡易入門版只是進行了珠子的位置互換,而主流遊戲如龍族拼圖,它可能是使用了類似a star演算法。更具體一點來說,這個簡易版的缺憾就是,如果你移動太快,會偵測不到移動路徑中的珠子,會直接與最後位置的珠子互換。而龍族拼圖會把你最後的位置進行A* 尋路演算,與路徑中的每一顆珠子互換。 另外這個寫法是原地重新,非主流遊戲的往下/往上掉落。消珠的方式也有差異。 所以這算是一個概念式的入門分享,更進階的請自己努力去想一想吧。 首先,我們會利用2D array的寫法去建立5*6的架構 建立一個public static DATA的公用資料庫,然後進行下列定義 public static int row=5;    //這裡 row 和 column的名字我倒轉了, 別在意, 看懂就好 public static int column=6; public static int[,] _Matrix = new int[column,row]; 注意一下,在unity C sharp的寫法是 int[ a,b], 而不是int[a][b]。 定義好之後,我們利用for loop去快速的幫我們在各個位置設定好數值 for(int b=0;b<column;b++){ for(int a=0;a<row;a++){ _Matrix[b,a]=Random.Range(0,5); } } 因為public static DATA只作資料存取之用,不用也不會依附在物件上面,程式只會在呼叫時才會運用,所以我們要建立一個主運行的script,我把他叫作GlobalControllor。 然後在裡面建立一個產生珠子的function void respawn(){ //預先建立一個空物件供珠子依附,如果要共用function的話多做一個動作把珠子移除,避免重複產生 balls.Broadcast

2015-3-8 被免費遊戲扭曲心志的愚人們

  標題下得比較重,但我想每位玩家都應該重新審視一下自己在玩什麼,為什麼要付錢,值不值得。         免費遊戲的爆發可以追溯至 2003 年前後,韓國遊戲公司的一種新式營運策略,以直接販賣遊戲道具的方式賺取利潤。隨著商城制度輕易地從那些較富裕或願意投放更多金錢在遊戲的玩家們中賺取金錢,那些掌握企業控制權的金融魔頭也紛紛使其下的制作室強制轉型,開始了遊戲界翻天覆地的改變。         會寫這篇文章的是有感近日在台灣巴哈姆特魔獸爐石戰記哈啦版開始了一陣 " 新手別碰這遊戲 " 的討論。在這裡我先自己定義一下在爐石什麼是 " 新手 " ─無課金玩家。在卡片遊戲中新不新手的定義就是卡牌的收集度,當你能有一樣的收集量,差的是熟練度的問題,差距就變得非常少了。在爐石中無課金玩家有 3 種途徑賺取金幣。 一 . 靠每日任務來進行遊戲幣的賺取,而每日任務的獎勵只有 40/60 ,限對戰模式。 二 . 對戰中累積每嬴三場就可得 10 塊。 三 . 競技場。先繳 150 入場費,連勝一定數量再送卡包和金幣。而競技場中的卡組是隨機獲得的,新手在不熟悉的情況下能知道選哪些牌組成有效益的卡組嗎 ?         以現在爐石進行了 2 次大更新包括 "NAXX" 、 " 哥布林對地精 " ,一系列強化牌。剛進入遊戲的新手卻只能以基本牌組去面對那些強勁的老手們,可以說了提升了每日任務的難度。我認同對於現在每日任務的難度而言,制作團隊真的需要去重新審視解決方法。         以現實層界面的角度去看一下這個問題,比如說 Magic card( 萬智牌 )( 魔法風雲會 ) ,你會因為只買了一盒基本套牌而抱怨打不過其他買了數百數千擴充牌的玩家嗎 ? 又比如說現在的遊戲王,如果拿初代的卡來比較是不是會悲劇到極點 ? 遊戲王公司應該要被玩家們以唾液淹沒吧 ?         歐美作風相對亞洲而言,已經是非常溫和了,只要你願意花時間,你就能獲取遊戲中所有的道具與遊玩體驗,差別就是給錢的快,不給錢的慢。         而亞洲區的處理方式與歐美截然不同,歐美往往都是非常小心的平均分配,保證玩家的距離不會差太遠和可追趕性。亞洲區比較出名的如 GundHo 、