Mar 02 2009

《Postmortem: RiverMan Media’s MadStone》:奉獻、持續,以及無與倫比的熱情

文章分類: 遊戲開發閱讀

原文出處:Postmortem: RiverMan Media’s MadStone

「有許多人以為他們想要製作遊戲,但是只有非常少數的人瞭解遊戲開發所需的投身奉獻與持續耐久力。在專案最初的興奮感褪去之後,你必須在數以月計或數以年計的日子中,身處看不見光線的隧道盡頭裡辛勞地工作。你必須足夠熱愛製作遊戲,以致於就算在視線中看不見終點或者金錢時,仍然能夠保有無與倫比的熱情。」—— Jacob Stevens

enthusiastic

(圖片來源:www.paec.org)

在 18 年前,當 Jacob Stevens 只有 8 歲大,而他的弟弟 Paul Stevens 只有 4 歲大的時候,他們就下定決心要為任天堂公司製作遊戲。當時他們並不知道要做些什麼,更不懂該如何去做。雖然如此,在將近 20 年的時間之後,他們成功達成了童年的夢想。這是一篇為任天堂的遊戲平台製作遊戲,也為自己實現夢想的真實故事。

RiverMan Media 是一間由 Jacob 與 Paul 兩人共同創立的小型獨立遊戲開發公司,而《MadStone》是一款 2D 型態的方塊掉落解謎遊戲,也是他們所製作的第一款 WiiWare 平台遊戲,售價 8 塊美金。在這款遊戲之前,他們曾於 PC 平台發售兩款表現中規中矩的休閒遊戲《Cash Cow》以及《Primate Panic》。

標題的 Postmortem 是「後鑑之明」的意思,也就是在完成整個遊戲並且發行上市之後,重新回頭檢視專案開發過程中的種種是非對錯。在龐大的遊戲產業中,或許 RiverMan Media 只是一個微不足道的小公司,但在這篇自我檢討的文章裡,Jacob Stevens 非常坦然且毫無保留地剖析他們的心路歷程,娓娓道來許多令人深思的想法。看看他們做對與做錯的事情,再回頭想想自己,或許也能夠使我們的遊戲開發旅程少走一些冤枉路。

同時,我也想將這篇文章獻給所有對遊戲設計感興趣,以及將遊戲產業視為未來職涯目標的讀者們。

繼續閱讀 < < "《Postmortem: RiverMan Media’s MadStone》:奉獻、持續,以及無與倫比的熱情"


Feb 23 2009

Strategy & State:條件判斷式的消除者

文章分類: 設計模式
strategy-pattern

Strategy Pattern

身為一位程式設計者,你是否曾面臨條件判斷式繁殖過盛的困擾?經常用折疊不完的 N 層 if-else 結構來考驗自己的腦力?或是只能瞪著超過 500 行的 switch-case 條件判斷式舉手投降?您的困擾我瞭解,請容許我向您引薦本篇文章的雙主打星——Strategy 與 State 範式,讓它們帶領我們一同邁向美妙動人的範式之道吧!

首先要瞭解的是,為什麼要將 Strategy 與 State 範式放在同一篇文章裡介紹?因為兩者雖然在設計層面的動機與出發點有所差異,但是在實際的應用面中非常地相近。根據《物件導向設計模式》(Design Patterns) 書中的定義,只要將右圖中的 Strategy、ConcreteStrategyA 與 ConcreteStrategyB 角色,更改為 State、ConcreteStateA 與 ConcreteStateB,就會變成 State 範式的結構圖,可以說兩者就像是孿生兄弟般密切相關。

如果真的要區分出 Strategy 與 State 範式之間的差異,可以參考《重構——向範式前進》中論述的內容:

State pattern 對「必須在一整族 state classes 的實體之間輕鬆轉換」的 class 有益,而 Strategy pattern 則是有助於讓 class 把演算法執行任務委託給「一整族 Strategy classes 的某一個實體」。

從我理解的角度來解釋,Strategy 範式比較著重於包裝相同派系的演算法,而 State 範式則特別注重在各狀態之間的轉換邏輯。所以只要瞭解 Strategy 或 State 範式兩者之一,就等於學會了兩種設計模式,真的是太划算太值得啦!雖然 Strategy 與 State 範式非常單純而且易於理解,但這兩項看似不起眼的小小範式,卻經常能夠在程式系統中發揮很好的應用效果,絕對是程式設計者不可不學的必備基礎知識。本文中將以 Strategy 範式為主,說明兩者在遊戲系統中的相關應用。

繼續閱讀 < < "Strategy & State:條件判斷式的消除者"


Feb 16 2009

《Game Industry Interviewing 101》:給遊戲業面試者與應試者的教戰守則

文章分類: 遊戲業界閱讀
handshake

(圖片來源:www.freedigitalphotos.net)

原文出處:Opinion: Game Industry Interviewing 101

面試,幾乎是所有步入社會成為工作者的人都必須經歷的一道程序。在這篇文章裡,作者以自己的面試經驗做為出發點,不僅為遊戲業界的應試者提出許多有用的教戰守則,同時也為面試者提供一些頗有幫助的小訣竅。對於許多即將踏入職場的新鮮人,以及擔任主管職務的人來說,文章裡有許多看似平凡無奇卻非常實用有益的觀念與知識,可供身處職場的我們,做為參考與省思之用。

在此先對「應試者」與「面試者」做出明確的定義。應試者 (Interviewee),或者可以稱為「被面試者」,所指的就是應徵工作而接受面對面測試的職務候選人。而面試者 (Interviewer),所指的則是公司裡負責與應試者進行面試程序的人;在一般常見的情形中,通常會以應試部門的主管做為面試者。

當我們踏出校園生活,欲將自己的身份由學生轉換成為社會新鮮人時,為了尋找合適又滿意的工作,面試可說是一條必經的途徑。而如果來到面試程序,表示我們已經通過了檢驗履歷表的第一道關卡,但最終是否能夠獲得工作機會,決勝關鍵仍必須取決於面試過程中的表現。因此,對於社會新鮮人來說,面試可說是一件令人又愛又恨的事情。

另一方面,若以公司經營者或身為主管的角度而言,也絕對不可以輕忽各項面試的相關程序——因為不論你是否能夠接受,面試程序都會對公司的風評產生非常深遠的影響。身為面試者,你所代表的角色就是公司形象,你的一言一行都會傳達出公司本身的文化氣息。請記得,當你在面試候選者的時候,候選者也同樣在面試你的公司。即使在面試的過程中,你發現應試者並不合於你的徵才條件,仍然應該展現出良好的應對態度,才是恰當的作為。

首先,讓我們瞧瞧應試者與面試者雙方所追尋的目標為何。從面試者的觀點來看,他們想要的是:

  • 充分判別應試者的技能。期望候選者至少具有不錯的能力,最好能夠達到非常優秀的程度。
  • 確認應試者能夠良好地適應於公司的團隊。
  • 盡可能付出較少的薪水。

至於應試者關心的事物則有些不同。理想中,他們想要的是:

  • 好薪資,好待遇。
  • 令人愉快且充滿挑戰性的工作。
  • 工作的安全感。
  • 成長與晉升的機會。

繼續閱讀 < < "《Game Industry Interviewing 101》:給遊戲業面試者與應試者的教戰守則"


Feb 06 2009

《心態致勝》:改變心態,改變你的世界!

文章分類: 其他書籍
mindset

心態致勝

書名:心態致勝 (Mindset: The New Psychology of Success)
作者:Carol S. Dweck
譯者:李明
出版:大塊文化
語言英文版繁體中文版

這是一本書皮封面平凡無奇的書籍,即使將它擺放在書店中最顯眼的位置,我也不會多看它一眼;就算碰巧拿到了手中,概略翻上幾頁,可能我也只會覺得:「這大概又是本充斥著說教口調的實驗研究報告,或者是如同書名般枯燥乏味的心理勵志書籍。」但沒想到,這小小的一本書,卻越讀越有滋味,越讀越令我拍案叫絕。

本書作者 Dweck 女士,是目前任職於史丹佛大學心理學系的教授。在書籍的內容中,作者不僅提出了「定型心態」與「成長心態」兩種心理狀態的明確定義以及兩者的各種顯著差異,更將這套理論應用在運動選手成就、企業經營與領導、兩性情感議題,以及父母師長的教育等許多不同的領域中,全都獲得了相當正面而良好的成效與回應。

書裡沒有什麼世界七大不可思議的必勝成功法則,也沒有如暢銷書口吻般自吹自擂的致富手段。相反地,其中涵蓋了許多客觀的研究結果以及測試受驗者的心得回應,充分佐證成長心態理論的實用性。作者並沒有搬出教條式的守則來推銷她的理論與著作,而是平鋪直述地帶領讀者在各種不同領域中,探討成長心態與定型心態對於為人處事、應對進退的決定性差異與影響。最後,則讓讀者依循自己內心的判斷,做出最合適的選擇與改變。

做為書名的主標題,所謂的「心態」(Mindset) 到底是什麼東西?人類的心態,並不會以個別獨立的形式存在,而總是由一組完整的思想所交織構築起來的知識網絡,所以心態可以說是「一組心裡的想法」(A set of mind) ,因而簡稱為 Mindset 這個詞彙。有人會將心態稱之為「態度」、「思維」或者「價值觀」,其實都是彼此相關而且可以互補的用語。

心態,就像是一組解釋世界萬物的框架,幫助我們認知周遭所發生的各種事情。因為心態的存在,我們熟習身邊的各種人事物,不至於每天陷於兵荒馬亂的生活之中;因為心態的存在,我們都能逐漸適應自己的家庭、朋友、工作以及伴侶;因為心態的存在,我們也因此得以成為現在的自己。假設我們改變了這組既存的框架,是不是就能夠改變眼前的世界?

繼續閱讀 < < "《心態致勝》:改變心態,改變你的世界!"


Jan 22 2009

遊戲開發日誌:水晶守護者

文章分類: 開發日誌
crystal-guardian-draft

《Crystal Guardian》Design Draft

這是《Crystal Guardian》的遊戲設計草稿。

其實大約在四個月前,我就已經完成了遊戲的基礎設計,本來想要在 NDS 平台上嘗試製作這款小小的遊戲原型,不過後來因為被其他有趣的事情吸引,再加上我一直找不到能夠在 Homebrew 套件上執行 Lua 的方法,所以也就沒有往 NDS 的方向繼續發展下去了。直到兩個月前,在玩過「咕世界」並且讀了「How to Prototype a Game in Under 7 Days」一文之後,內心深處那股「無論如何都想要做遊戲」的雄雄烈火,又再度燃燒了起來!

一開始在做遊戲設計的靈感發想時,對於目前網路上各種動作過關類型的小遊戲,可以看到大多數作品都是以「攻擊」、「毀滅」或者「破壞」當作遊戲的主要題材與樂趣元素。而我想要嘗試的,則是完全相反的方向。我反問自己:「有沒有可能以『保護』或者『防衛』的概念,做為遊戲的主要機制?」

當然,現在有許許多多 Tower Defence 類型的遊戲,但是我想做的並不是這種玩法的遊戲。我想做的遊戲,設計概念與核心機制的出發點在於「防護」(Defence),或許是保護金銀財寶、捍衛重要的東西或者心愛的人,無論那是什麼,我認為世界上總有些值得我們守護的人、事、物以及價值。而至於遊戲的操作方式,我想嘗試的方向,是一個不用動腦思考,只需要不停移動並且點擊滑鼠就能夠進行的遊戲。

繼續閱讀 < < "遊戲開發日誌:水晶守護者"


Jan 20 2009

水晶守護者:Crystal Guardian

文章分類: 遊戲作品
crystal-guardian-title

水晶守護者:Crystal Guardian

遊戲名稱

Crystal Guardian

遊戲平台

Windows XP

遊戲連結

CrystalGuardian.7z (2.28 MB) (下載次數: 1461 )

遊戲概述

很久很久以前,傳說當世界秩序失衡、魔物橫行之時,曾有四位勇者挺身而出,一路披荊斬棘、過關斬將,終於重新回復了世界的和平。而現在,潛伏已久的黑暗勢力悄悄地伸出了魔掌,邪惡的爪牙們正傾巢而出,亟欲奪取維繫世界能量的風、火、水、土四大水晶。為了守護世界和平、促進經濟發展,以及消滅寂寞大魔王,勇敢的紅髮戰士,請拿起你的寶劍奮戰到底吧!

繼續閱讀 < < "水晶守護者:Crystal Guardian"


Jan 12 2009

遊戲專案的目錄結構規劃

文章分類: 觀念技巧

不知道各位如何規劃遊戲專案的目錄結構?各位所使用的是專案管理體系的正規方法,或者只是隨意地將檔案與資料夾散佈在電腦中的各處?在一個遊戲專案的開發過程裡,重要的資產除了程式碼檔案之外,還包括了設計文件、美術素材、音效檔案,以及最終的執行檔等等。該如何妥善管理這些不同類別的項目,以達到良好的成效?在此將以我個人目前使用的方法,提出一套目錄結構的規劃架構,與各位一同進行交流討論。

有些人喜歡將許多各式各樣不同用途的資料夾,直接放置在電腦的「桌面」上,最後經常會使得整個桌布,幾乎被各種不同圖示與資料夾所淹沒。這樣的作法,在一時的使用上或許非常方便,但是如果沒有善加整理歸檔,未來很容易會找不到想尋找的目標文件或檔案。不論是公司的正式專案,或是自己在工作之餘開發的個人專案,都能夠從良好的目錄結構規劃中,得到易於管理與變動的益處。

首先,我習慣在電腦硬碟的作業系統槽(通常是 C 槽)之外,選擇一個空間足夠的磁碟槽,在根目錄下開啟幾個資料夾進行專案的管理:

  • Codespace:專案區,只存放由 CVS 或 SVN 等版本控制系統取出的各項專案。
  • Workspace:工作區,存放各項測試中的程式、待完成的工作項目,以及各種經常需要查閱使用的文件及資源。
  • Temp:暫存區,存放各種暫時物件,包括從網路上下載的安裝檔,以及檔案解壓縮後的資料夾等等。

專案區中的資料,應該經常與版本控制系統保持同步化,盡可能減少修改後的版本存在於自己電腦中的時間。即使個人的工作硬碟不幸遭遇毀損的狀況,也能夠由版本控制系統的伺服器中,重新取回整個專案的資料。而工作區,則用來存放各項試驗中的專案;例如在剛開始接觸 Boost.Pool 函式庫時,我就會在工作區裡開設一個測試資料夾命名為 TestBoostPool 進行各項測試,等到成果達到一定程度後,再將專案提交至版本控制系統以及專案區中存放。最後,在暫存區中的資料,則只是便利暫時性的使用,可以隨時將全部的內容清空刪除。

繼續閱讀 < < "遊戲專案的目錄結構規劃"


Jan 05 2009

猴子靈藥一歲啦!

文章分類: 部落格事務
monkey-potion

猴子靈藥

滿一週年了。

從 2008 年 1 月 5 日發佈的「關於」頁面,與 1 月 6 日的第一篇文章「始動!」開始,至今日為止,總共寫了 87 篇文章,有 481 則迴響留言(另外還有 801 則 Spam,囧),以及 365 則靈藥筆記

轉眼間,一年了。從剛起步的第一篇、第二篇到第十篇文章之後,在鍵盤上敲打文字,逐漸成為我生活中的一項重要習慣。自電腦與網路世代降臨後,「寫」這個動作,不再僅限於使用紙與筆,我們現在能夠利用電腦、網路、硬碟與鍵盤,輸入並且儲存自己各種想法心得,而這項全新的寫作型態,也帶來了許多不同於以往的分享與交流方式。

在這段寫作的過程中,我很幸運地認識了許多網路上的朋友,例如 lsk、yag、Trombe、R2D2、兔子安、獸王、Milo、藍斯洛、gino、doomleika、Percy、Wallace、COdE fr3@K 等等族繁不及備載。即使彼此之間並沒有見過面,但我們同樣能夠從共同關注的事物與知識中獲得交流與學習的樂趣。不論你是學生、遊戲人或是路人,不論是業界同行或者非同行,不論人在台灣或是國外,我都很高興能和各位相聚於此。

在猴子靈藥裡,我所遵行的準則是:每一則迴響我都會回覆。我喜歡收到各種回應,更喜歡與各位討論,因為我相信,很多時候,好靈感與好想法就是必須經過互動、激盪或者挑戰,才能夠產生出耀眼的火花。將來,除非留言數一下子暴增到四、五十則以上難以負荷的程度(看起來應該不太可能),否則我仍然會遵循著這樣的模式,對每一篇迴響,都會用心閱讀思考之後再加以回覆。

繼續閱讀 < < "猴子靈藥一歲啦!"


Dec 26 2008

《How Mega Man 9 Resembles… Real Life?》:那些洛克人教我們的事

文章分類: 遊戲設計閱讀
mega-man-9-cover

(圖片來源:handheldwii.wordpress.com)

原文出處:Opinion: How Mega Man 9 Resembles… Real Life?

如果你和我一樣,自純真的孩提時代開始接觸任天堂的紅白機遊樂器,一步步走入電玩遊戲的這條不歸路。那麼,在你的童年記憶裡,必然有一個小小的角落為這位英雄人物所佔據。這位由 Capcom 公司所創造出來的人物,現在被稱為「Mega Man」,但我們對他更熟悉的稱呼是「Rockman」,或者是「洛克人」

在 2008 年裡,遊戲業界中的許多開發商紛紛推出各款遊戲強作,而其中最特殊,也是立即能夠吸引老玩家目光的遊戲作品,莫過於由 Capcom 公司所製作發行的《Mega Man 9》。《洛克人9》,是《洛克人》系列的正統續作,一款遊戲能夠自 1987 年第一代的作品問世開始,歷經二十個年頭流傳至今,推出多達九款續作,必然有其不可動搖的地位。然而,這次 Capcom 卻做了件讓所有洛克人的玩家粉絲跌破眼鏡之事。

在這款與前作《洛克人8》相距足足有 12 年之久所推出的續作裡,遊戲設計與遊戲技術全部以反璞歸真的形式呈現。在遊戲中,沒有幾可亂真的的 3D 模型,沒有精巧炫麗的畫面特效,遊戲開發者選擇回到洛克人最初的根源與起點,以最純樸簡單的像素風格,為今日的玩家呈現這款全新的遊戲作品。而遊戲軟體本身,也僅在 WiiWare 遊戲下載服務平台上提供販售。

為何 Capcom 敢於做出如此大膽的嘗試?開發者是不是只為了隨便做個續作來交差了事?在遊戲英雄角色後浪推前浪的趨勢中,洛克人是否已經黯然失寵?除了遊戲設計層面的考量之外,本文作者從《洛克人9》的遊戲過程中,領略到與現今遊戲全然不同的娛樂體驗與成長心態,甚至能夠實踐於我們的真實生活之中。讓我們隨著作者的遊戲體驗,一起乘時光機回到過去,滲透隱藏在單調圖像背後的設計決定,學習那些洛克人教我們的事情。

繼續閱讀 < < "《How Mega Man 9 Resembles… Real Life?》:那些洛克人教我們的事"


Dec 19 2008

《Nine Paths To Indie Game Greatness》:獨立遊戲開發者的獨孤九訣

文章分類: 遊戲開發閱讀
path-to-indie

(圖片來源:asymptotia.com)

原文出處:Nine Paths To Indie Game Greatness

本文的作者,是一位曾製作過 PC、Console 以及 Mobile 平台遊戲的專業開發者。自從他以《Quake》內附的編輯器,製作出第一個遊戲關卡的那一刻起,他就領略到了創造遊戲的那種無上樂趣,也因此下定決心開始學習如何製作遊戲。然而當他在遊戲業界中,經歷了六年的工作生涯後,反而開始質疑自己是否擁有繼續開發遊戲的渴望。就在他決心離開遊戲業界,去嘗試其他的事物之後,反倒從如新生嫩芽般的獨立遊戲社群中,再次重新找回自己對於創造遊戲的熱情

在經歷過許多已經關門倒閉的遊戲公司以後,他充分地瞭解,開發商業遊戲需要非常廣泛的作用力與各種面向的考量,耗費於其中的時間,甚至遠超過投注於實際遊戲開發程序的時間。越瞭解這項事實,他就越加覺得自己已經游離了當初那個使他感到興奮雀躍的遊戲開發根源。他不禁懷疑,世界上是否有任何地方,能夠以他剛起步時的那種精神來創造遊戲。藉由這個捫心自問的問題,他發現了正迅速成長中的「獨立遊戲」。

所謂的「商業遊戲開發者」與「獨立遊戲開發者」,實際上的不同之處為何?當一間商業公司啟動一項新專案的時候,他們經常會問的問題是:「誰會給我們所需的資源來支付薪資與帳單?」如果這間公司夠幸運的話,他們可以問:「誰會給我們所需的資源來製作我們想做的遊戲?」而當獨立開發者啟動新的專案時,他們經常會自問的問題則是:「如何以現成可用的資源,製作出我所想要的遊戲?」這就是兩者間最大的不同之處。

在 1982 年時,由 Namco 公司所生產製作的《Pac-Man》,只需要 10 萬美金的開發費用;現今,開發一款 PS3 平台的遊戲,平均花費估計約為 1500 萬美金左右。即使經過通貨膨脹的調整之後,遊戲作品的開發費用仍然呈現出相當大的躍升幅度。而當近年的遊戲開發預算,已然呈現出數以倍計的增長局面之後,銷售量與收益仍然很難產生相對的具體變化。為了抵抗如此情勢,有些缺少開發流程經驗的獨立開發者,會盲目而不加思考地貿然前進,但是那些最成功的獨立開發者們,則能夠善用現存的資源大展身手。

開發遊戲這件事,最令人神魂顛倒之處,莫過於創造這些互動世界的能力,僅侷限於我們所能夠想像以及我們的技術能力所及之處;只要擁有想像力與技術力,你就能夠創造出一個充滿歡笑與樂趣的夢想國度。在這篇文章裡,作者提出九項非常實際有效的訣竅,並且引用了相當多成功的遊戲案例交互印證,帶領各位讀者進一步踏入獨立遊戲開發領域的康莊大道。

繼續閱讀 < < "《Nine Paths To Indie Game Greatness》:獨立遊戲開發者的獨孤九訣"