第1章
異世開局------------------------------------------。,是一部他從未見過的手機——外殼像塑料玩具,屏幕分辨率低得能看清像素點,系統(tǒng)界面簡陋得像是十年前的山寨機。但這玩意兒確實在響,推送欄里塞滿了新聞通知。,手指劃過屏幕時那股阻滯感讓他皺了皺眉。這觸控體驗,放在他原來那個世界,大概會被評測博主罵到退市。,是新聞標題?!啊?**方塊》手機版全球下載量突破五億,再創(chuàng)游戲史新紀錄!業(yè)內(nèi)人士盛贊:***方塊重新定義了移動娛樂!諾基亞CEO:我們將全面預裝這款世紀神作!”,然后緩緩吐出兩個字:“什么?”?!柏澇陨咧斧@得圖靈獎,****進入黃金時代。業(yè)內(nèi)專家預測:未來十年內(nèi),****畫面或?qū)⑦_到‘128x128’分辨率。玩家評選史上最偉大游戲Top10:***方塊、貪吃蛇、推箱子……”,敲在他太陽穴上。,閉上眼睛,深吸一口氣。腦海里涌進來的記憶碎片正在慢慢拼合——他穿越了。不,準確地說,是靈魂擠進了這個平行世界的“陳旭”身體里。原主是個二十二歲的普通青年,大學剛畢業(yè),計算機專業(yè),正在出租屋里海投簡歷。父母在小城做小生意,家境一般。沒有女朋友,沒有存款,連這臺破電腦都是二手淘來的。,用一種他無法理解的方式存在著。
****?就是黑白屏上的像素塊移動。家用主機?壓根沒有這個概念。PC游戲倒是有一些,但最火的是一款叫做《地牢探險》的回合制文字MUD,畫面全靠腦補,玩家們卻奉為神作。
陳旭又看了看手機里《***方塊》的游戲截圖——那畫面在他眼里跟電子垃圾沒區(qū)別,但新聞評論區(qū)清一色五星好評。“神優(yōu)化!絲滑流暢!玩法永不過時!這才是真正的游戲!”
他默默退出了新聞應用,盯著出租屋天花板上那盞忽明忽暗的日光燈管,發(fā)了很久的呆。
然后他笑了。
不是苦笑,是一種從胃里翻涌上來的、壓都壓不住的興奮感。
他坐起身,連拖鞋都沒穿,赤腳踩在冰涼的水泥地上,走到那張堆滿外賣盒的書桌前,一把掀開鍵盤。這臺老舊的組裝電腦嗡嗡響著,像一臺年久失修的風扇。他點開瀏覽器,搜索了一圈應用商店的開發(fā)者入駐流程、游戲引擎的相關信息。
這個世界的智能手機性能,大概相當于他原來世界里2010年前后的水平。算不上強,但跑個2D物理引擎綽綽有余。
而這個世界最流行的編程語言,叫“SimpleC”,是一種他從未見過的奇怪語言,但語法結(jié)構和C++有七分相似。原主大學里學的就是這個,記憶還留在腦子里。
陳旭靠在椅背上,手指無意識地敲著桌面,發(fā)出嗒嗒的聲響。
他腦子里飄過無數(shù)個名字——《魔獸世界》《暗黑破壞神》《塞爾達傳說》《最終幻想》……每一款拿出來都是**級的。但他很快壓住了自己躁動的念頭。
第一款游戲不能太復雜。他需要測試這個市場的接受度,需要建立口碑,更重要的是——他只有一個人,一臺破電腦,***余額三位數(shù)。
他需要一個體量小、傳播性強、玩法直觀到不用教學就能上手、而且在這個世界絕對沒人見過的游戲。
手指停止了敲擊。
“憤怒的小鳥?!?br>他幾乎是脫口而出。
這款在原來世界開啟了手游時代的作品,玩法簡單到極致:拉彈弓,發(fā)射小鳥,砸倒**。但它的成功從來不是偶然——物理引擎帶來的隨機爽感,可愛畫風的反差,關卡設計的節(jié)奏感,還有那該死的病毒傳播屬性。
陳旭深吸一口氣,翻開桌上的草稿本,開始寫寫畫畫。
他要做的第一件事,不是寫代碼,而是設計出核心玩法框架。小鳥的彈道拋物線、不同鳥類的特殊技能、豬的防御值、建筑材質(zhì)的破壞邏輯……這些東西他閉著眼睛都能畫出來,但他必須確保在這個世界的硬件上跑得動。
窗外不知道什么時候黑了。樓下傳來夜市炒粉的鍋鏟聲和摩托車的突突聲。陳旭完全沒注意,他整個人像被釘在了椅子上,草稿紙用了十幾張,每張都畫滿了拋物線公式和類結(jié)構圖。
等他終于抬起頭,脖子發(fā)出咔嗒一聲響,他才發(fā)現(xiàn)已經(jīng)凌晨一點多了。
肚子咕嚕嚕叫了起來。他翻了翻桌上吃剩的半盒炒飯,猶豫了兩秒,還是打開吃了兩口。冷的,油凝固成白色的塊,口感像是在嚼蠟。但他沒有停下來,一邊嚼一邊盯著屏幕上自己剛寫的需求文檔。
“物理引擎……沒有現(xiàn)成的,得手擼一個簡易版本。圖形渲染用CPU軟渲染就夠了,幀率不需要太高,25幀流暢就行。音效……這個麻煩,我不會作曲,但可以用MIDI合成簡單音效。”
他自言自語的聲音在空蕩蕩的出租屋里回響,像是一個瘋子在跟自己開會。
第二天一早,陳旭揣著僅剩的幾百塊錢出了門。他先去電子市場淘了一臺二手的安卓測試機——屏幕有裂痕,但能亮。又去了趟超市,買了兩箱泡面和一袋最便宜的速溶咖啡。
老板找錢的時候多看了他兩眼,大概是被他眼里的血絲和亢奮的神情嚇到了。
接下來的日子,陳旭幾乎與世隔絕。
他把窗戶用舊床單遮住,不分白天黑夜。餓了就泡面,困了就趴在桌上瞇一會兒,醒過來灌一杯苦到發(fā)澀的咖啡繼續(xù)寫代碼。
SimpleC語言確實有些奇怪的特性,比如內(nèi)存管理比C++更原始,沒有標準庫的STL。他花了兩天時間手寫了一個動態(tài)數(shù)組和哈希表,又花了三天實現(xiàn)了一個極其簡陋的剛體碰撞檢測系統(tǒng)。
第一周結(jié)束的時候,他能在屏幕上畫出一只**的小鳥——三個像素點組成的眼睛,一個三角形嘴,圓滾滾的身體。他按下鼠標拖拽,松開的瞬間,小鳥劃出一道弧線,撞上了一塊綠色的矩形。
矩形晃了晃,沒碎。
“**,碰撞體響應力向量算錯了?!?br>他罵了一聲,手指飛快地敲擊鍵盤,修改了幾行代碼,重新編譯。五分鐘后,再次拖拽發(fā)射。
砰。
矩形碎裂成四個小方塊,啪嗒啪嗒掉了下來。
陳旭盯著屏幕看了三秒鐘,嘴角慢慢咧開,露出一個缺覺的、不太健康的笑容。
第二周,他加入了不同的小鳥類型。紅色的基礎鳥,沒有特殊技能但傷害均衡;藍色的三叉鳥,在空中**成三只;**的加速鳥,直線沖擊力最大;黑色的**鳥,爆炸范圍傷害。每一種鳥的特效實現(xiàn)都讓他抓掉好幾把頭發(fā),尤其是黑色小鳥的爆炸粒子系統(tǒng)——最后他用了一個取巧的辦法,把爆炸效果做成了幾個逐漸放大又消失的圓形位圖序列幀。
第三周,他設計了第一批關卡。十五關,從最簡單的“一只豬放在木板上”到稍微復雜的多層結(jié)構,每一關的物理參數(shù)他都用手工調(diào)整了無數(shù)次,確保彈道有挑戰(zhàn)但不至于難到勸退。
**周,最折磨人的部分來了——美術資源。
陳旭從小就沒有繪畫天賦,畫個圓都能畫成土豆。他嘗試用像素畫的方式點出小鳥和豬的形象,結(jié)果點出來的**看起來像一坨發(fā)了霉的鼻涕。他在網(wǎng)上找到一個免費的開源像素圖庫,花了一整天的時間對著圖庫臨摹修改,硬生生磨出了一套勉強能看的風格——小鳥圓潤可愛,**憨厚中帶著一點欠揍的賤萌。
**圖?算了,純色加一點漸變就夠用了。
音效呢?他用一個叫“*fxr”的免費工具自己合成——彈弓發(fā)射的“咻”聲,小鳥撞上建筑時的“噗”聲,豬被擊敗時的“呼哇”聲。雖然聽起來有點電子味過重,但至少節(jié)奏感和反饋感是到位的。
當最后一關的勝利動畫——一只白色的大鳥下了一顆巨大的蛋,轟然砸爛所有建筑——跑通的那一刻,陳旭整個人癱在椅子上,眼睛干澀得像進了沙子,但腦子里某個繃了太久的弦終于松了下來。
他看了一眼電腦右下角的時間:凌晨四點四十三分,日歷顯示已經(jīng)過了三十二天。
他做了個簡單的APK安裝包,用數(shù)據(jù)線傳到了那臺二手測試機上。手指點到圖標上的一瞬間,他的心還是提了起來——萬一卡頓,萬一崩潰,萬一……
游戲啟動了。
一個簡單的標題畫面,上面寫著“Angry *irds”——他沒做中文名,直接用了英文,反正這個世界英文也是通用語言。畫面下方只有兩個按鈕:開始游戲,關卡選擇。
他點了一下開始游戲,第一關的教學界面彈了出來。一只紅色的小鳥安靜地蹲在彈弓上,遠處是搭在草地上的木頭架子,架子里蹲著一只**,正用一種欠揍的眼神看著屏幕。
陳旭深吸一口氣,用手指拖拽小鳥向后拉,彈弓的皮筋被拉長,屏幕上出現(xiàn)了一條虛線拋物線。他松開手指。
咻——
小鳥飛了出去,劃過一道漂亮的弧線,正中木架中間那根橫梁。木頭斷裂的像素碎裂效果閃了一下,架子傾斜倒塌,**被壓在了下面,發(fā)出一聲短促的“呼哇”。
勝利的音效響起,星星評分界面彈出——三顆星。
陳旭盯著那個三顆星的畫面,突然鼻子有點酸。他說不清是為什么,可能是因為三十二天沒怎么睡好覺,也可能是因為他忽然意識到——從今天開始,這個世界的游戲史,要被他改寫了。
但他只是揉了揉鼻子,打開電腦上的開發(fā)者**,開始填寫應用上架的各類信息。應用名稱:Angry *irds;類別:游戲/益智;價格:免費(內(nèi)置廣告);適用年齡:所有人。
他想了想,又在描述欄里打了一行字:“拉彈弓,砸**,就這么簡單?!?br>上傳APK,提交審核。
官方應用商店的審核速度比他想象的快得多——四十八小時后,他收到了一封郵件:“您的應用已通過審核,現(xiàn)已上架?!?br>沒有祝賀,沒有人工問候,甚至沒有檢查出任何*ug。一封冷冰冰的系統(tǒng)郵件。
陳旭關掉郵件,把那臺測試機里下載好的游戲打開,又玩了三關,確認沒有任何問題。然后把手機扔到一邊,爬上那張已經(jīng)一個多月沒正經(jīng)躺過的床,把臉埋進枕頭的瞬間就睡著了。
這一覺他睡了十四個小時。
醒來的時候,他第一個動作是摸手機——這已經(jīng)成為一種本能。屏幕亮起,通知欄里安安靜靜,只有兩條未讀的系統(tǒng)通知,都是無關緊要的東西。
下載量:47次。
上架已經(jīng)十幾個小時了,只有47次下載。其中大部分應該還是路過看見隨手點的,或者商店編輯隨機展示帶來的自然流量。
陳旭放下手機,去衛(wèi)生間洗了把臉。鏡子里的自己瘦了一圈,顴骨比以前明顯,下巴長了胡茬,眼下的黑眼圈深得像被人揍了兩拳。他用冷水拍了拍臉,告訴自己冷靜。
“這才第一天,急什么?!?br>他泡了一碗面,一邊吸溜一邊盯著開發(fā)者**的數(shù)據(jù)面板,刷新,刷新,再刷新。
下載量跳到61、68、79……這個增長速度,跟螞蟻爬差不多。
到了下午,下載量終于突破了200。評論區(qū)的第一條用戶評價出現(xiàn)了——
“什么鬼東西,一只鳥打豬?無聊?!?br>兩顆星。
陳旭面無表情地關掉了評論區(qū)。
他開始懷疑自己是不是判斷錯了。這個世界連《***方塊》都算神作,是不是代表玩家群體的審美和接受度反而更保守?《憤怒的小鳥》的**畫風和物理彈射玩法,對這個世界來說會不會太超前了?
或者,他單純就是虧在了沒有推廣預算上。一個沒有任何知名度、零投放、零曝光的個人開發(fā)者作品,在上架池子里就像往大海里扔了一顆石子,能激起一點水花就不錯了。
他把面湯喝完,把紙碗扔進已經(jīng)滿出來的垃圾桶里,坐下來開始規(guī)劃下一步。如果數(shù)據(jù)一直起不來,他可能需要想別的辦法——寫軟文、去論壇發(fā)帖、或者自己做一個試玩視頻上傳到視頻網(wǎng)站。
但他還沒來得及打開文檔,手機的連續(xù)震動打斷了他的思路。
叮叮叮叮?!?br>一連串郵件提醒彈了出來,幾乎是一秒鐘一封的節(jié)奏。陳旭拿起手機,愣住了。
前五封郵件的標題分別是:
“玩家評論:這款叫Angry *irds的游戲太魔性了,我停不下來!”
“玩家評論:誰能告訴我第七關怎么過?那只豬躲在石頭后面根本砸不到!”
“玩家評論:藍色小鳥**的時機怎么把握?求大神指點!”
“玩家評論:強烈推薦!這是我玩過最好玩的****,沒有之一!”
“玩家評論:辦公室里八個人都在玩,我們開始比誰三星通關多了!”
下載量的數(shù)字也在以肉眼可見的速度跳動:487、523、611、789……
陳旭打開開發(fā)者**的實時圖表,那條代表下載量的曲線在沉寂了十幾個小時后,忽然像被掐住了脖子往上提一樣,陡峭地揚了起來。
他愣住了。
沒有推廣,沒有廣告,沒有論壇發(fā)帖。這意味著——有人在玩了之后,主動推薦給了身邊的人,然后那些人又推薦給了更多人。
口碑傳播。病毒式傳播。
這才是《憤怒的小鳥》真正的武器。
他深吸一口氣,點開評論區(qū),一條一條看了下去。
“一開始覺得這什么幼稚畫風,玩了兩關就上癮了,物理彈道太真實了,砸倒建筑的那一刻爽爆!”——五星。
“求求了,第二十一關那個倒三角結(jié)構怎么破?我已經(jīng)卡了半小時了?!薄男?。
“黑鳥**太好用了,每次炸塌一整片的感覺比***方塊消四行還爽。”——五星。
“****,騙時間的?!薄恍牵旅嬉呀?jīng)有三個人回復罵他了。
陳旭翻著這些評論,嘴角的笑意越來越壓不住。他站起身,在出租屋里走了兩圈,又坐下,又站起來,最后干脆靠在那張吱呀作響的椅子背上,仰著頭,對著天花板上那盞忽明忽暗的日光燈,長長地呼出了一口氣。
然后他又刷了一遍數(shù)據(jù)。
下載量:1247。
上架不到兩天,一千多次下載,而且還在加速。
但他知道,這才剛剛開始。
三天后,下載量突破一萬。
五天后,突破了五萬。
評論區(qū)已經(jīng)炸鍋了,好評率高達百分之九十三。玩家們開始自發(fā)建立攻略貼吧,有人整理了每一關的三星通關技巧,有人做了全鳥類的數(shù)據(jù)解析表,甚至有人開始在視頻網(wǎng)站上直播速通——雖然這個世界的直播畫質(zhì)只有360p,彈幕還經(jīng)??ǔ蒔PT。
真正讓陳旭意識到事情大條的,是一家游戲媒體的報道。
那天下午,他正對著電腦寫下一款游戲的策劃案草稿,手機突然瘋狂震動起來,不是郵件提醒,而是新聞應用的推送。
“黑馬誕生!個人開發(fā)者作品《Angry *irds》登頂應用商店免費榜榜首!”
陳旭點進新聞,文章洋洋灑灑寫了上千字,把《憤怒的小鳥》稱為“重新定義****交互方式的現(xiàn)象級作品”,還專門分析了一通物理彈射玩法對觸屏操作的完美適配——比虛擬按鍵更直覺,比點觸更有操作感。文章最后寫道:“這款游戲的開發(fā)者署名只有一個ID——‘X.Chen’,記者試圖聯(lián)系該開發(fā)者,截至發(fā)稿尚未收到回復?!?br>X.Chen。陳旭當時隨便打的名字,沒想到現(xiàn)在出現(xiàn)在新聞里了。
他把手機扔到床上,雙手捂住了臉,指縫里透出來的不是笑,而是一種說不清道不明的復雜情緒——興奮、緊張、還有一絲絲不真實感。就好像你精心準備了一道菜,本來只打算給自己吃,結(jié)果路過的人嘗了一口之后,整條街都排起了長隊。
又過了一周,《Angry *irds》的下載量突破了五十萬。雖然跟原來世界里幾億的下載量沒法比,但在這個****市場尚且稚嫩的平行世界,這個數(shù)字已經(jīng)足夠讓所有**跌眼鏡。
應用商店的編輯主動給他發(fā)了一封郵件,語氣比審核通知熱情了十倍:“X.Chen先生**,您的作品表現(xiàn)優(yōu)異,我們希望能為您安排一期開發(fā)者專訪,方便的話請回復郵件……”
陳旭盯著那封郵件看了幾秒,然后關了。
不是不想接受采訪,而是他還沒想好要怎么面對這個世界的媒體——他總不能說“這些游戲的創(chuàng)意都來自另一個地球”。
更重要的是,他腦子里已經(jīng)在瘋狂轉(zhuǎn)著下一個項目了。
《憤怒的小鳥》的成功已經(jīng)驗證了一件事:這個世界的玩家不是不渴望好游戲,而是他們根本不知道什么是好游戲。當一款真正意義上的現(xiàn)代手游出現(xiàn)在他們面前時,他們會像發(fā)現(xiàn)新**一樣瘋狂追捧。
而他手握著整整一座**的地圖。
他打開文檔,在標題欄打出了幾個字。
《植物大戰(zhàn)僵尸》。
打完之后他又**。
不行,再等等?!稇嵟男▲B》的熱度還可以再發(fā)酵一陣,他需要先把賺到的錢落袋為安,升級設備,搞一個像樣的開發(fā)環(huán)境。廣告收入結(jié)算周期是月結(jié),第一個月的錢還沒到賬,但根據(jù)目前的DAU和廣告展示量估算,少說也有……
他心算了一下,然后整個人靠在椅背上,干咽了一口唾沫。
那個數(shù)字,比**媽干一輩子小生意攢下的錢還要多。
窗外又傳來了夜市炒粉的鍋鏟聲,摩托車的突突聲,還有樓下大媽吵架的尖嗓門。這些聲音跟三十二天前一模一樣,但陳旭覺得,整個世界好像都變得不一樣了。
他不知道自己正坐在一張吱呀作響的折疊椅上,穿著一件領口洗變形的T恤,面前的電腦風扇嗡嗡響得像拖拉機。他不知道在這個世界的某個角落,已經(jīng)有游戲公司的產(chǎn)品經(jīng)理在連夜開會,研究《Angry *irds》的玩法參數(shù)和設計思路,試圖抄出一款競品。
他更不知道,在未來的某一天,會有一個人敲開這間出租屋的門,對他說出一句改變一切的話。
但現(xiàn)在,他只是伸了個懶腰,拿起那臺屏幕有裂痕的測試機,又玩了三把自己的游戲,每一關都拿了三星,然后心滿意足地把它放回桌上。
他推開窗戶,六月的晚風裹著**的油煙味灌進來,吹散了滿屋子的泡面氣息。
遠處城市的霓虹燈在夜色里明明滅滅,像極了游戲里那些像素點組成的星光。
陳旭趴在窗臺上,忽然自言自語了一句:“接下來做哪一款呢……”
聲音很小,被樓下的喧囂淹沒了。
但沒人聽到的這句話,是這個平行世界游戲**開啟之后,最有分量的一個問句。
****?就是黑白屏上的像素塊移動。家用主機?壓根沒有這個概念。PC游戲倒是有一些,但最火的是一款叫做《地牢探險》的回合制文字MUD,畫面全靠腦補,玩家們卻奉為神作。
陳旭又看了看手機里《***方塊》的游戲截圖——那畫面在他眼里跟電子垃圾沒區(qū)別,但新聞評論區(qū)清一色五星好評。“神優(yōu)化!絲滑流暢!玩法永不過時!這才是真正的游戲!”
他默默退出了新聞應用,盯著出租屋天花板上那盞忽明忽暗的日光燈管,發(fā)了很久的呆。
然后他笑了。
不是苦笑,是一種從胃里翻涌上來的、壓都壓不住的興奮感。
他坐起身,連拖鞋都沒穿,赤腳踩在冰涼的水泥地上,走到那張堆滿外賣盒的書桌前,一把掀開鍵盤。這臺老舊的組裝電腦嗡嗡響著,像一臺年久失修的風扇。他點開瀏覽器,搜索了一圈應用商店的開發(fā)者入駐流程、游戲引擎的相關信息。
這個世界的智能手機性能,大概相當于他原來世界里2010年前后的水平。算不上強,但跑個2D物理引擎綽綽有余。
而這個世界最流行的編程語言,叫“SimpleC”,是一種他從未見過的奇怪語言,但語法結(jié)構和C++有七分相似。原主大學里學的就是這個,記憶還留在腦子里。
陳旭靠在椅背上,手指無意識地敲著桌面,發(fā)出嗒嗒的聲響。
他腦子里飄過無數(shù)個名字——《魔獸世界》《暗黑破壞神》《塞爾達傳說》《最終幻想》……每一款拿出來都是**級的。但他很快壓住了自己躁動的念頭。
第一款游戲不能太復雜。他需要測試這個市場的接受度,需要建立口碑,更重要的是——他只有一個人,一臺破電腦,***余額三位數(shù)。
他需要一個體量小、傳播性強、玩法直觀到不用教學就能上手、而且在這個世界絕對沒人見過的游戲。
手指停止了敲擊。
“憤怒的小鳥?!?br>他幾乎是脫口而出。
這款在原來世界開啟了手游時代的作品,玩法簡單到極致:拉彈弓,發(fā)射小鳥,砸倒**。但它的成功從來不是偶然——物理引擎帶來的隨機爽感,可愛畫風的反差,關卡設計的節(jié)奏感,還有那該死的病毒傳播屬性。
陳旭深吸一口氣,翻開桌上的草稿本,開始寫寫畫畫。
他要做的第一件事,不是寫代碼,而是設計出核心玩法框架。小鳥的彈道拋物線、不同鳥類的特殊技能、豬的防御值、建筑材質(zhì)的破壞邏輯……這些東西他閉著眼睛都能畫出來,但他必須確保在這個世界的硬件上跑得動。
窗外不知道什么時候黑了。樓下傳來夜市炒粉的鍋鏟聲和摩托車的突突聲。陳旭完全沒注意,他整個人像被釘在了椅子上,草稿紙用了十幾張,每張都畫滿了拋物線公式和類結(jié)構圖。
等他終于抬起頭,脖子發(fā)出咔嗒一聲響,他才發(fā)現(xiàn)已經(jīng)凌晨一點多了。
肚子咕嚕嚕叫了起來。他翻了翻桌上吃剩的半盒炒飯,猶豫了兩秒,還是打開吃了兩口。冷的,油凝固成白色的塊,口感像是在嚼蠟。但他沒有停下來,一邊嚼一邊盯著屏幕上自己剛寫的需求文檔。
“物理引擎……沒有現(xiàn)成的,得手擼一個簡易版本。圖形渲染用CPU軟渲染就夠了,幀率不需要太高,25幀流暢就行。音效……這個麻煩,我不會作曲,但可以用MIDI合成簡單音效。”
他自言自語的聲音在空蕩蕩的出租屋里回響,像是一個瘋子在跟自己開會。
第二天一早,陳旭揣著僅剩的幾百塊錢出了門。他先去電子市場淘了一臺二手的安卓測試機——屏幕有裂痕,但能亮。又去了趟超市,買了兩箱泡面和一袋最便宜的速溶咖啡。
老板找錢的時候多看了他兩眼,大概是被他眼里的血絲和亢奮的神情嚇到了。
接下來的日子,陳旭幾乎與世隔絕。
他把窗戶用舊床單遮住,不分白天黑夜。餓了就泡面,困了就趴在桌上瞇一會兒,醒過來灌一杯苦到發(fā)澀的咖啡繼續(xù)寫代碼。
SimpleC語言確實有些奇怪的特性,比如內(nèi)存管理比C++更原始,沒有標準庫的STL。他花了兩天時間手寫了一個動態(tài)數(shù)組和哈希表,又花了三天實現(xiàn)了一個極其簡陋的剛體碰撞檢測系統(tǒng)。
第一周結(jié)束的時候,他能在屏幕上畫出一只**的小鳥——三個像素點組成的眼睛,一個三角形嘴,圓滾滾的身體。他按下鼠標拖拽,松開的瞬間,小鳥劃出一道弧線,撞上了一塊綠色的矩形。
矩形晃了晃,沒碎。
“**,碰撞體響應力向量算錯了?!?br>他罵了一聲,手指飛快地敲擊鍵盤,修改了幾行代碼,重新編譯。五分鐘后,再次拖拽發(fā)射。
砰。
矩形碎裂成四個小方塊,啪嗒啪嗒掉了下來。
陳旭盯著屏幕看了三秒鐘,嘴角慢慢咧開,露出一個缺覺的、不太健康的笑容。
第二周,他加入了不同的小鳥類型。紅色的基礎鳥,沒有特殊技能但傷害均衡;藍色的三叉鳥,在空中**成三只;**的加速鳥,直線沖擊力最大;黑色的**鳥,爆炸范圍傷害。每一種鳥的特效實現(xiàn)都讓他抓掉好幾把頭發(fā),尤其是黑色小鳥的爆炸粒子系統(tǒng)——最后他用了一個取巧的辦法,把爆炸效果做成了幾個逐漸放大又消失的圓形位圖序列幀。
第三周,他設計了第一批關卡。十五關,從最簡單的“一只豬放在木板上”到稍微復雜的多層結(jié)構,每一關的物理參數(shù)他都用手工調(diào)整了無數(shù)次,確保彈道有挑戰(zhàn)但不至于難到勸退。
**周,最折磨人的部分來了——美術資源。
陳旭從小就沒有繪畫天賦,畫個圓都能畫成土豆。他嘗試用像素畫的方式點出小鳥和豬的形象,結(jié)果點出來的**看起來像一坨發(fā)了霉的鼻涕。他在網(wǎng)上找到一個免費的開源像素圖庫,花了一整天的時間對著圖庫臨摹修改,硬生生磨出了一套勉強能看的風格——小鳥圓潤可愛,**憨厚中帶著一點欠揍的賤萌。
**圖?算了,純色加一點漸變就夠用了。
音效呢?他用一個叫“*fxr”的免費工具自己合成——彈弓發(fā)射的“咻”聲,小鳥撞上建筑時的“噗”聲,豬被擊敗時的“呼哇”聲。雖然聽起來有點電子味過重,但至少節(jié)奏感和反饋感是到位的。
當最后一關的勝利動畫——一只白色的大鳥下了一顆巨大的蛋,轟然砸爛所有建筑——跑通的那一刻,陳旭整個人癱在椅子上,眼睛干澀得像進了沙子,但腦子里某個繃了太久的弦終于松了下來。
他看了一眼電腦右下角的時間:凌晨四點四十三分,日歷顯示已經(jīng)過了三十二天。
他做了個簡單的APK安裝包,用數(shù)據(jù)線傳到了那臺二手測試機上。手指點到圖標上的一瞬間,他的心還是提了起來——萬一卡頓,萬一崩潰,萬一……
游戲啟動了。
一個簡單的標題畫面,上面寫著“Angry *irds”——他沒做中文名,直接用了英文,反正這個世界英文也是通用語言。畫面下方只有兩個按鈕:開始游戲,關卡選擇。
他點了一下開始游戲,第一關的教學界面彈了出來。一只紅色的小鳥安靜地蹲在彈弓上,遠處是搭在草地上的木頭架子,架子里蹲著一只**,正用一種欠揍的眼神看著屏幕。
陳旭深吸一口氣,用手指拖拽小鳥向后拉,彈弓的皮筋被拉長,屏幕上出現(xiàn)了一條虛線拋物線。他松開手指。
咻——
小鳥飛了出去,劃過一道漂亮的弧線,正中木架中間那根橫梁。木頭斷裂的像素碎裂效果閃了一下,架子傾斜倒塌,**被壓在了下面,發(fā)出一聲短促的“呼哇”。
勝利的音效響起,星星評分界面彈出——三顆星。
陳旭盯著那個三顆星的畫面,突然鼻子有點酸。他說不清是為什么,可能是因為三十二天沒怎么睡好覺,也可能是因為他忽然意識到——從今天開始,這個世界的游戲史,要被他改寫了。
但他只是揉了揉鼻子,打開電腦上的開發(fā)者**,開始填寫應用上架的各類信息。應用名稱:Angry *irds;類別:游戲/益智;價格:免費(內(nèi)置廣告);適用年齡:所有人。
他想了想,又在描述欄里打了一行字:“拉彈弓,砸**,就這么簡單?!?br>上傳APK,提交審核。
官方應用商店的審核速度比他想象的快得多——四十八小時后,他收到了一封郵件:“您的應用已通過審核,現(xiàn)已上架?!?br>沒有祝賀,沒有人工問候,甚至沒有檢查出任何*ug。一封冷冰冰的系統(tǒng)郵件。
陳旭關掉郵件,把那臺測試機里下載好的游戲打開,又玩了三關,確認沒有任何問題。然后把手機扔到一邊,爬上那張已經(jīng)一個多月沒正經(jīng)躺過的床,把臉埋進枕頭的瞬間就睡著了。
這一覺他睡了十四個小時。
醒來的時候,他第一個動作是摸手機——這已經(jīng)成為一種本能。屏幕亮起,通知欄里安安靜靜,只有兩條未讀的系統(tǒng)通知,都是無關緊要的東西。
下載量:47次。
上架已經(jīng)十幾個小時了,只有47次下載。其中大部分應該還是路過看見隨手點的,或者商店編輯隨機展示帶來的自然流量。
陳旭放下手機,去衛(wèi)生間洗了把臉。鏡子里的自己瘦了一圈,顴骨比以前明顯,下巴長了胡茬,眼下的黑眼圈深得像被人揍了兩拳。他用冷水拍了拍臉,告訴自己冷靜。
“這才第一天,急什么?!?br>他泡了一碗面,一邊吸溜一邊盯著開發(fā)者**的數(shù)據(jù)面板,刷新,刷新,再刷新。
下載量跳到61、68、79……這個增長速度,跟螞蟻爬差不多。
到了下午,下載量終于突破了200。評論區(qū)的第一條用戶評價出現(xiàn)了——
“什么鬼東西,一只鳥打豬?無聊?!?br>兩顆星。
陳旭面無表情地關掉了評論區(qū)。
他開始懷疑自己是不是判斷錯了。這個世界連《***方塊》都算神作,是不是代表玩家群體的審美和接受度反而更保守?《憤怒的小鳥》的**畫風和物理彈射玩法,對這個世界來說會不會太超前了?
或者,他單純就是虧在了沒有推廣預算上。一個沒有任何知名度、零投放、零曝光的個人開發(fā)者作品,在上架池子里就像往大海里扔了一顆石子,能激起一點水花就不錯了。
他把面湯喝完,把紙碗扔進已經(jīng)滿出來的垃圾桶里,坐下來開始規(guī)劃下一步。如果數(shù)據(jù)一直起不來,他可能需要想別的辦法——寫軟文、去論壇發(fā)帖、或者自己做一個試玩視頻上傳到視頻網(wǎng)站。
但他還沒來得及打開文檔,手機的連續(xù)震動打斷了他的思路。
叮叮叮叮?!?br>一連串郵件提醒彈了出來,幾乎是一秒鐘一封的節(jié)奏。陳旭拿起手機,愣住了。
前五封郵件的標題分別是:
“玩家評論:這款叫Angry *irds的游戲太魔性了,我停不下來!”
“玩家評論:誰能告訴我第七關怎么過?那只豬躲在石頭后面根本砸不到!”
“玩家評論:藍色小鳥**的時機怎么把握?求大神指點!”
“玩家評論:強烈推薦!這是我玩過最好玩的****,沒有之一!”
“玩家評論:辦公室里八個人都在玩,我們開始比誰三星通關多了!”
下載量的數(shù)字也在以肉眼可見的速度跳動:487、523、611、789……
陳旭打開開發(fā)者**的實時圖表,那條代表下載量的曲線在沉寂了十幾個小時后,忽然像被掐住了脖子往上提一樣,陡峭地揚了起來。
他愣住了。
沒有推廣,沒有廣告,沒有論壇發(fā)帖。這意味著——有人在玩了之后,主動推薦給了身邊的人,然后那些人又推薦給了更多人。
口碑傳播。病毒式傳播。
這才是《憤怒的小鳥》真正的武器。
他深吸一口氣,點開評論區(qū),一條一條看了下去。
“一開始覺得這什么幼稚畫風,玩了兩關就上癮了,物理彈道太真實了,砸倒建筑的那一刻爽爆!”——五星。
“求求了,第二十一關那個倒三角結(jié)構怎么破?我已經(jīng)卡了半小時了?!薄男?。
“黑鳥**太好用了,每次炸塌一整片的感覺比***方塊消四行還爽。”——五星。
“****,騙時間的?!薄恍牵旅嬉呀?jīng)有三個人回復罵他了。
陳旭翻著這些評論,嘴角的笑意越來越壓不住。他站起身,在出租屋里走了兩圈,又坐下,又站起來,最后干脆靠在那張吱呀作響的椅子背上,仰著頭,對著天花板上那盞忽明忽暗的日光燈,長長地呼出了一口氣。
然后他又刷了一遍數(shù)據(jù)。
下載量:1247。
上架不到兩天,一千多次下載,而且還在加速。
但他知道,這才剛剛開始。
三天后,下載量突破一萬。
五天后,突破了五萬。
評論區(qū)已經(jīng)炸鍋了,好評率高達百分之九十三。玩家們開始自發(fā)建立攻略貼吧,有人整理了每一關的三星通關技巧,有人做了全鳥類的數(shù)據(jù)解析表,甚至有人開始在視頻網(wǎng)站上直播速通——雖然這個世界的直播畫質(zhì)只有360p,彈幕還經(jīng)??ǔ蒔PT。
真正讓陳旭意識到事情大條的,是一家游戲媒體的報道。
那天下午,他正對著電腦寫下一款游戲的策劃案草稿,手機突然瘋狂震動起來,不是郵件提醒,而是新聞應用的推送。
“黑馬誕生!個人開發(fā)者作品《Angry *irds》登頂應用商店免費榜榜首!”
陳旭點進新聞,文章洋洋灑灑寫了上千字,把《憤怒的小鳥》稱為“重新定義****交互方式的現(xiàn)象級作品”,還專門分析了一通物理彈射玩法對觸屏操作的完美適配——比虛擬按鍵更直覺,比點觸更有操作感。文章最后寫道:“這款游戲的開發(fā)者署名只有一個ID——‘X.Chen’,記者試圖聯(lián)系該開發(fā)者,截至發(fā)稿尚未收到回復?!?br>X.Chen。陳旭當時隨便打的名字,沒想到現(xiàn)在出現(xiàn)在新聞里了。
他把手機扔到床上,雙手捂住了臉,指縫里透出來的不是笑,而是一種說不清道不明的復雜情緒——興奮、緊張、還有一絲絲不真實感。就好像你精心準備了一道菜,本來只打算給自己吃,結(jié)果路過的人嘗了一口之后,整條街都排起了長隊。
又過了一周,《Angry *irds》的下載量突破了五十萬。雖然跟原來世界里幾億的下載量沒法比,但在這個****市場尚且稚嫩的平行世界,這個數(shù)字已經(jīng)足夠讓所有**跌眼鏡。
應用商店的編輯主動給他發(fā)了一封郵件,語氣比審核通知熱情了十倍:“X.Chen先生**,您的作品表現(xiàn)優(yōu)異,我們希望能為您安排一期開發(fā)者專訪,方便的話請回復郵件……”
陳旭盯著那封郵件看了幾秒,然后關了。
不是不想接受采訪,而是他還沒想好要怎么面對這個世界的媒體——他總不能說“這些游戲的創(chuàng)意都來自另一個地球”。
更重要的是,他腦子里已經(jīng)在瘋狂轉(zhuǎn)著下一個項目了。
《憤怒的小鳥》的成功已經(jīng)驗證了一件事:這個世界的玩家不是不渴望好游戲,而是他們根本不知道什么是好游戲。當一款真正意義上的現(xiàn)代手游出現(xiàn)在他們面前時,他們會像發(fā)現(xiàn)新**一樣瘋狂追捧。
而他手握著整整一座**的地圖。
他打開文檔,在標題欄打出了幾個字。
《植物大戰(zhàn)僵尸》。
打完之后他又**。
不行,再等等?!稇嵟男▲B》的熱度還可以再發(fā)酵一陣,他需要先把賺到的錢落袋為安,升級設備,搞一個像樣的開發(fā)環(huán)境。廣告收入結(jié)算周期是月結(jié),第一個月的錢還沒到賬,但根據(jù)目前的DAU和廣告展示量估算,少說也有……
他心算了一下,然后整個人靠在椅背上,干咽了一口唾沫。
那個數(shù)字,比**媽干一輩子小生意攢下的錢還要多。
窗外又傳來了夜市炒粉的鍋鏟聲,摩托車的突突聲,還有樓下大媽吵架的尖嗓門。這些聲音跟三十二天前一模一樣,但陳旭覺得,整個世界好像都變得不一樣了。
他不知道自己正坐在一張吱呀作響的折疊椅上,穿著一件領口洗變形的T恤,面前的電腦風扇嗡嗡響得像拖拉機。他不知道在這個世界的某個角落,已經(jīng)有游戲公司的產(chǎn)品經(jīng)理在連夜開會,研究《Angry *irds》的玩法參數(shù)和設計思路,試圖抄出一款競品。
他更不知道,在未來的某一天,會有一個人敲開這間出租屋的門,對他說出一句改變一切的話。
但現(xiàn)在,他只是伸了個懶腰,拿起那臺屏幕有裂痕的測試機,又玩了三把自己的游戲,每一關都拿了三星,然后心滿意足地把它放回桌上。
他推開窗戶,六月的晚風裹著**的油煙味灌進來,吹散了滿屋子的泡面氣息。
遠處城市的霓虹燈在夜色里明明滅滅,像極了游戲里那些像素點組成的星光。
陳旭趴在窗臺上,忽然自言自語了一句:“接下來做哪一款呢……”
聲音很小,被樓下的喧囂淹沒了。
但沒人聽到的這句話,是這個平行世界游戲**開啟之后,最有分量的一個問句。
閱讀下一章(解鎖全文)
點擊即可暢讀完整版全部內(nèi)容
相關書籍
友情鏈接