GAME FREAK Recruit

Cross Talk

新人程序員對談

假如連我等程序員都輕言“做不到。”,
那無論什麼靈感都無法實現了。
勤學而善思者,善也。
假如連我等程序員都輕言
“做不到。”
那無論什麼靈感
都無法實現了。
勤學而善思者,
善也。

Member

T.K.

2018年期入社新人

曾負責開發『寶可夢 劍・盾』中「寶可夢露營」的小遊戲。在『寶可夢 傳說 阿爾宙斯』中擔任主角行動操作實現主要負責人。

R.H.

2019年期入社新人

在職業學校畢業後,加入遊戲狂想家。目前所屬技術研發部門,在『寶可夢 傳說 阿爾宙斯』中主要負責開發畫面繪製相關的工具及功能維護。

既有專家坐鎮,
亦有通才把關。
究竟是什麼樣的開發環境能將
這樣的團隊能效最大化?

T.K. 我之所以加入遊戲狂想家,是因為很感興趣從技術的角度觀察『寶可夢』系列是如何製作出來的。在兩到三年內開發完一款新作順利發售,並在全世界範圍延續一如既往的好評。對於這樣的技術以及開発能力,我想好好領教一下。

R.H. 在我还處於實習生階段的時候,有時即便只是很小的提議,也能引起各位程序和策劃的注意,隨後收到了大量的意見和新點子的反饋,這點給我留下了深刻的印象,而隨即入社也是深感自己在這樣的環境是能夠有所成長的。在研發部門里有著大量對特定技術分支有頂尖的知識儲備的前輩,甚至也存在如科研人員那樣做技術研究的同事。我們不斷追蹤最新的技術走向,因此能夠不斷得學習。

T.K. 比起研發部門、新作開発組的程序們就更能稱得上是多面手。許多同事並非專精一隅,而是用各自廣泛的知識面來竭盡全力使遊戲變得更有趣。程序裏有幫忙製定仕樣書的,也有寫企劃書的,甚至也參與了一些項目管理。

R.H. 公司裏內部交流也相當活躍呢。負責新作開發的程序經常會應對策劃的咨詢,也會和設計師探討開發工具的內容。一個人默默工作的時候僅限於最終萬事議備的情況,大多數工作中都充滿了團隊合作。

T.K. 如果是一個人單打獨鬥,那麽往往也不知道正確的答案會是什麽,因此相互溝通,咨詢是相當重要的。我們在項目啟動時會有一場Kick-Off會議(動員大會),而在項目啟動後,我們(程序)也能找到策劃和設計師門討論調整仕樣書的內容。在辦公工具方面,我司的會議都是在Google日歷中設定Google Meet來進行。會議記錄和式樣書內容都會被收錄保存在Confluence裏,隨時隨地可以通過Slack或者碰面口頭回顧到具體的細節。

R.H. 我通常使用Jira來進行項目進度管理。研發部一般每個月都會要求發布自己的進度,因此日常的進度管理就非常關鍵。對於我們研發部來說,通常情況下如果沒有預先製作完(實現某個功能的)開發工具,那麽整個遊戲的製作都沒法正常啟動。這意味著如果沒有準確估計自己的工作進度,那麽其他人的工作都會大受影響。我工作時總習慣考慮任務的優先級,並時常做出對應調整。

從零開始的一系列挑戰
融合了動作要素的
『寶可夢傳說 阿爾宙斯』。

T.K. 『寶可夢傳說 阿爾宙斯』是一款遊戲狂想家識圖放下迄今為止製作寶可夢主系列以來所培養的經驗,力圖從零開始積累,一步步面對接二連三的新挑戰的作品。地圖的規模進一步增大,所要處理的物體也隨之變多。為了穩定處理物理行為以及AI的行動,我們這次引入了Havok(物理引擎),為了精通其用法,研發部的各位也齊心協力對這款引擎展開了充分的研究。

R.H. 我從最初的工作流程構築階段就參與其中了,負責製作特效,開發工具以及研究優化SDK使其更易於開發。即便把這些工具做完交付出去後,我也會根據其他程序和設計的建議去後續維護以及調整它的功能,並且會一直持續到發售為止。畢竟Bug也好,能被改善的點也好,這些都是基於日常積極的使用後才能被發掘,作為一名開發者,我很樂意隨時接受各種反饋。

T.K. 我也曾向R.H.桑提過一個在開發工具的功能上的請求。比起一遇到這類系統上的問題就直接扔給他們研發部的同事去解決,我倆在這個問題上一同合作奮戰到最終解決在『寶可夢傳說 阿爾宙斯』開發過程中也算是一次獨特的經歷。縱有繁多的開發任務,但用汗珠換來的收穫比以往的工作都要豐厚。

R.H. T.K.桑是玩家行動/行為開發的主要負責人,想把這部分做好想必是遇到過不少麻煩。由於我負責的是相對碎片化的開發工具&功能開發,所以我在開發過程中沒機會看到過遊戲的全貌,不過當我在最終版本演示中看到那些華麗的特效時,就竊喜自語道“哈,這塊兒是用我的工具實現的!”。

T.K. 一開始我都完全沒法控制Havok引擎模擬的物理效果,我想讓主角能在斜坡上站穩,然而一旦到了斜坡上就會滑下去,甚至還會飛起來。一想到開發是從這兒起步(再到如今這個效果),還是相當感動的。開發過程中也曾擔心主角動作表現會有些生硬,不過好在最終優化後系統對主人公的處理負荷減小了不少,因此在視覺/動作表現上都有了不錯的觀感。所以當還留有打磨余地的時候,請不要放棄任何的機會。畢竟能打磨到這種程度的話,交付後也沒啥可遺憾的了,我相信這樣做就能給玩家帶來愉快的體驗。

想要「攻克背後的難題」
而非只是「聽命一一照做」。
為此,
我們將不斷學習
力爭達到業界前沿。

R.H. 作為一名程序,我最重視的是不僅僅停留在被要求的層面實現(一個功能)。打個比方來說,假如一個畫面設計師來找我提出“我想要這個功能。”,在這種情況下,我會試著深入挖掘為何這個功能會被提出要求實現。基於這類挖掘,我們往往能提出與最初的要求完全不同的解決方案。比起“照聽照做”,我認為“從根本上解決問題”的意識是更加重要的。

T.K. 整個製作過程感覺就是在一遍又一遍地尋求溝通和對話。在開發初期,策劃,程序,以及美術都會聚到一塊兒,開一場動員會議來啟動項目。根據策劃在式樣書中的企劃目標,各個部門依次發表觀點進行討論。於是便出現了如“如果要實現這個目標的話,那就得往這個思路走”的各種點子,並且決定怎樣劃分任務路線才能最好的實現開發目標。仕樣書的內容敲定也是類似,可能會由程序和美術共同修訂編寫。不同工種的同事們都在一個平面的環境內(沒有高低等級),能夠做到沒有工種界限的相互研討和請教。

R.H. 從現在開始,我希望能成為一名項目組裡只要一出現問題就想到要去請教的程序員。為此,我會持續追蹤最新的技術潮流並學以致用。早先當我遇到問題時,我總會向研發部的前輩們請教,他們也總能有問必答,給出解決思路。這裡有大量不同背景出身的優秀前輩們,因此對我來說能在這裡工作確實是一種幸運。雖然不知道什麼時候能夠達到前輩們目前的水平,但我會一直以成為一名可靠的得力幹將的存在而持續前進。

T.K. 果然對於程序員來說,熱愛學習是一個不可或缺的品質。不對自己目前還沒接觸過的技術感到害怕&抗拒,能夠虛心學習的人太好了。我本人也有強烈的意願將「遊戲狂想家的技術水平推向業界的最前沿的程度」。在製作遊戲時,假如我等程序員先說了“啊,做不到的呀。”,那麼任何好點子都只能胎死腹中。這就是為什麼我們不能輕言放棄,要堅持思考如何才能實現當前的目標,並勤於學習。我想成為這樣“永不言棄”的程序員,也衷心希望也這麼想的你也能加入我們。

世界第一的遊戲,在我們手中誕生。
引領世界的遊戲,也正在此處孕育。

世界上最有趣的事
莫過於製作世界上最有趣的遊戲了。

原文