会议室的大门被关上。
起初的两分钟,房间里只有轻微的指尖敲击屏幕的声音。
但很快,气氛就变了。
“谢特!这重力怎么回事,感觉像绑了块石头!”一个负责后端的小伙子低声咒骂了一句。
“见鬼!这水管是从天上直接掉到地下的吗?这怎么穿过去!”
“我的天,我连5分都拿不到……啊!又撞了!”
随着时间一分一秒地推移,会议室里此起彼伏地响起了倒吸凉气的声音、烦躁的叹息声,以及各种各样的粗口。
迪尼什的额头开始冒汗,作为开发者,他本以为自己已经掌握了这只鸟的节奏,但在新参数下,他刚才那种从容不迫完全消失了。
他死死地盯着屏幕,眼睛都不敢眨一下,拇指因为高频的紧张点击而变得有些僵硬。
“扑棱——当!”
第十二分。小鸟一头撞在了上水管的边缘。
“法克!”迪尼什用力捶了一下大腿,深吸了一口气,毫不犹豫地再次按下了重新开始。
甚至连一向对什么都提不起兴趣的吉尔福伊尔,此刻也坐直了身体。
他那双死鱼眼紧紧盯着屏幕,嘴里咬着咖啡吸管,点击屏幕的频率快得惊人。
当他控制的小鸟在两根落差极大的水管之间因为判断失误而坠地时,他发出一声低沉的冷哼,没有说话,只是默默地点了重来。
看着这群硅谷精英被一款连2MB大小都不到的像素游戏折磨得抓耳挠腮、却又像着了魔一样不断重开的样子,杨坚知道,这个核心数值算是调对了。
整整三十分钟。
当杨坚宣布时间到的时候,会议室里响起了一片如释重负的长叹声。
几个小伙子揉着发酸的手腕,看着手机屏幕的眼神里充满了复杂的情绪。既有想要把手机砸向墙壁的冲动,又有一种意犹未尽的瘙痒感。
“感觉如何?”杨坚笑着问道。
“老板,这东西……”
迪尼什擦了擦额头的汗,咽了口唾沫,“这东西简直就是个恶魔。我刚才有几次真的想把手机扔出窗外。但是……但是当那个结算界面的铜牌跳出来的时候,我脑子里只有一个想法,就是下一把一定要拿到银牌。”
“很好,记住这种感觉。”
杨坚收起了笑容,开始下达正式的任务指令。
“迪尼什,你负责汇总大家刚才在试玩中反馈的情绪痛点。不需要降低难度,但要把那种‘差一点点就过去’的判定手感再打磨得丝滑一些。两周后,我要看到Beta(测试)版本。”
“明白。”迪尼什用力地点了点头,他现在对这款游戏的潜力没有丝毫怀疑了。
杨坚转头看向其他几位程序员:“你们手头关于《2048》的外语包翻译和日常维护工作都已经收尾了吧?”
“是的,老板。日文版、韩文版和几个欧洲小语种版本都已经稳定运行两周了,目前没有出现异常崩溃报错。”
“很好。从今天下午开始,除日常巡检人员外,开发二组全部并入《Flappy Bird》项目。你们的任务是拆解迪尼什的代码包,在这个星期内,全面开启多端移植。我要iOS端、安卓端、PC客户端以及网页端,四个端的数据互通和同步上线。”
这对于已经有过《2048》多端分发经验的团队来说,并不是什么难事。几个人迅速记录下任务节点。
最后,杨坚将目光投向了吉尔福伊尔。
“吉尔福伊尔,接下来的重头戏在你这里。”杨坚的语气变得十分严肃,“我知道你把《2048》的服务器打理得井井有条。但像素鸟不一样。”
杨坚站起身,走到吉尔福伊尔面前:“这款游戏带有极强的社交攀比属性和病毒传播潜力。一旦它在社交媒体上引爆,涌入服务器的流量将不会是涓涓细流,而是带着怒火和胜负欲的海啸。无数玩家会以十几秒一次的频率死亡重开,我不希望在他们真正拿到高分、想要上传排行榜炫耀的时候,看到的是‘服务器连接超时’的报错代码。”
吉尔福伊尔放下手里的马克杯,那双毫无波澜的眼睛里闪过一丝被挑战的兴奋,但他随即用一种带着优越感的口吻开口了。
“杨,如果只靠无脑堆叠AWS(亚马逊云)的弹性宽带去硬抗高并发流量,那是迪尼什这种平庸程序员才会做的蠢事。”
“嘿!我还在旁边坐着呢!”迪尼什涨红了脸抗议道。
吉尔福伊尔根本没理他,继续用他那死鱼眼看着杨坚:“除了搭建高可用的虚拟机集群,我们必须从根源上重写请求排名更新的算法。如果玩家每次撞死,游戏端都向服务器发送一次交互请求,那我们等于在自己对自己发起DDoS攻击。”
“哦?那你的方案是什么?”杨坚饶有兴致地抱起双臂。
“减少无效上行请求。”吉尔福伊尔手指在桌面上敲击了两下,语气专业得像是在布道,“我会在客户端做一层拦截算法。游戏只在首次启动时拉取一次全球和好友的排行榜缓存到本地。在疯狂重开的过程中,哪怕玩家死了一百次,只要他没有打破自己的‘历史最高分’,客户端就绝对保持静默,绝不占用一丁点网络带宽。”
吉尔福伊尔停顿了一下,嘴角勾起一抹傲慢的弧度:“只有当他真正创造了新纪录,程序才会向服务器发送唯一的更新包。而在服务器端,我会抛弃传统的关系型数据库,改用Redis内存数据库来专门处理排行榜这种高频读写的场景。只要你批给我足够的预算去租用AWS的节点,我保证,就算推特的服务器因为被黑客攻击而宕机了,像素鸟的排行榜也会像墓碑一样稳固。”
“预算管够。”杨坚给出了直接的承诺。
会议在一片紧张而充满干劲的气氛中结束。开发人员纷纷拿着电脑回到工位上,开始投入到新一轮的冲刺中。
杨坚把阿曼达单独叫进了里侧的独立办公室。
“老板,需要咖啡吗?”阿曼达顺手关上百叶窗。
“不用了,谈点人事和运营的安排。”
杨坚示意她坐下,“产品线现在已经算是两条腿走路了。虽然研发团队勉强够用,但我们在市场运营这块存在严重的短板。你去市场上物色一个有经验的、懂互联网病毒营销和社区管理的‘游戏运营专员’,薪资可以开得比行业平均水平高百分之十。”
阿曼达在本子上快速记录着:“新运营主管到位后,是直接接手《像素鸟》的预热工作吗?”
“不,像素鸟还没有达到交付水准。”杨坚摇了摇头,提出了他的商业逻辑。
“新人的主要任务,是去榨干《2048》的剩余商业价值。线上流量总会见顶,我们需要把线上热度转化为线下的实体影响力。让这个运营牵头,去策划几场针对高校大学生的《2048》线下争霸赛,或者去联系一些快消品牌做跨界联名。我要让魔笛手的标识不仅存在于手机屏幕里,还要印在校园的文化衫上、咖啡厅的杯垫上。”
杨坚看着窗外的建筑群,眼神平静。
“软件开发只是第一步。建立一个玩家愿意沉淀下来的社区生态,才是魔笛手公司能够活到下个十年的底牌。”
第100章 Flappy Bird上线与全美破防之夜
距离那场让全员“坐牢”的内部测试,已经过去了整整十四天。
迪尼什整个人瘫陷在人体工学椅里,胡茬放肆地占据了他的下巴。虽然形象有些邋遢,但他那双布满血丝的眼睛里却闪烁着一种亢奋的光芒。
“成了。”
迪尼什猛地一推键盘,任由转椅滑出半米远,长长地吐出一口浊气。
这十四天里,他几乎把这只长着香肠嘴的像素鸟当成了自己的亲儿。
他按照杨坚的指示,把那种“差一点点就能过去”的物理碰撞手感打磨得令人发指。
鸟的坠落加速度被他调整到了一个微妙的临界值:玩家必须保持一种肌肉紧绷的点击频率,稍微迟疑哪怕零点一秒,像素鸟就会像一块铅砖般砸向地面。而如果不小心连点了两下,它又会像窜天猴一样直接撞碎在上面的水管口。
更绝的是那个“伪随机”机制,迪尼什写了一套逻辑:当程序检测到玩家连续三局得分不超过3分时,第四局的地形会在前五根水管处出现一段不可思议的平坦区域,给玩家一种“我突然开窍了”的错觉。但紧接着第六根水管,就会出现一个堪称悬崖般的断崖式高低差。
直接拿捏人类的血压。
“其他平台的代码转化也全部完工了。”
旁边工位上,负责多端移植的几个程序员揉着发酸的脖子汇报道,“PC网页端、安卓端、甚至连给黑莓系统适配的简陋版都打包好了。所有端的排行榜数据接口都已经和后端的Redis集群打通。”
吉尔福伊尔靠在服务器机柜旁边,手里端着他那个万年不变的倒十字架马克杯,冷哼了一声:“算你们识相,没有往我的服务器里塞什么臃肿的垃圾请求。排行榜的本地静默缓存机制我已经做好了压力测试。现在,就算全美的大中学生同时在上课的时候偷偷点开这款游戏,然后同时撞死在第一根水管上,我的虚拟机集群连风扇的转速都不会提高一档。”
杨坚从独立办公室里走出来,手里端着一杯清水。
他环视了一圈这群疲惫但精神紧绷的员工,嘴角勾起一抹满意的弧度。
“既然鸟笼已经打造好了,那就没必要再藏着掖着了。”杨坚走到迪尼什的身后,拍了拍他的肩膀,“迪尼什,你是它的创造者,这最后一步由你来。”
办公区里瞬间安静下来,几个平时喜欢插科打诨的程序员也不自觉地围了过来。
在众人的注视下,迪尼什深吸了一口气,手心竟然出了点汗。他握住鼠标,将光标移动到魔笛手内部发布后台的“Submit to All Platforms(提交至全平台)”的绿色按钮上,然后重重地按下了左键。
进度条一闪而过。
网页端、PC客户端和安卓的Google Play商店几乎是瞬间完成了上架同步。
“安卓和网页端已经生效了。”
迪尼什盯着后台数据,“但是苹果的App Store……按照他们审核团队那帮大爷的效率,这种毫无名气的新游戏,就算是加急,估计也得在审核池里躺上一个星期。我们没法做到多端同步引爆。”
“这世界上就没有不能插队的队伍,如果有,那就是筹码不够。”
杨坚从口袋里掏出手机,翻找出一个号码拨了过去。那是苹果App Store大中华区兼北美独立游戏板块的一位高级编辑主管。
几个月前,《2048》在全球杀出重围,为苹果商店带来了堪称恐怖的用户活跃度和不菲的广告抽成,这位主管曾经亲自给杨坚打过电话,想要签下后续作品的首发独占权。
电话接通,杨坚没有寒暄,开门见山。
“理查德,是我,杨坚。对,魔笛手公司。”
杨坚的语气轻松得像是在跟老朋友聊周末的球赛,“我的团队刚刚提交了一款新产品,名字叫《Flappy Bird》。不需要你们的首页大图推荐,也不需要什么编辑精选,我只需要它在两个小时内出现在App Store的搜索列表里。”
电话那头的理查德显然有些迟疑,毕竟苹果的审核流程向来以死板著称。
“理查德,这可是《2048》原班人马的第二款产品。”
杨坚的声音压低了一些,带着一种不容拒绝的自信,“相信我,如果明天早上北美区的iPhone用户在App Store里搜不到这只鸟,他们会转头去买一台安卓手机的。我不希望苹果错过这场狂欢。”
对方沉默了大约十秒钟,随后传来一阵敲击键盘的声音。
“行,我亲自去后台捞出来。杨,你最好保证这玩意儿不会是个满是bug的半成品。”
“它没有bug,理查德。它本身就是个用来惩罚人类的恶作剧。”
杨坚笑着挂断了电话。
仅仅两个小时后,佐伊拿着一部测试用的iPhone刷新了一下商店页面,尖叫了起来:“上线了!苹果端搜索生效了!”
办公室里爆发出一阵压抑已久的欢呼声。
“别急着开香槟。产品上线只是造出了子弹,能不能打中眉心,得看开枪的人。”
杨坚压了压手,示意大家安静。他转头看向坐在角落工位上的一个戴着黑色鸭舌帽、穿着印有“Doge”柴犬表情包T恤的年轻白人。
“卢克,该你上场了。”
卢克是阿曼达上周刚从硅谷一家死气沉沉的社交网络公司里挖来的游戏运营专员。
这小子是个典型的“网络乐子人”,常年混迹于Reddit、4chan等各种充斥着地狱笑话和喷子的匿名论坛,对于互联网的病毒传播逻辑和草根网民的心理有着一种近乎野兽般的直觉。
卢克推开椅子站了起来,嚼着口香糖,眼神里透着兴奋:“老板,早就等不及了。这破游戏我这几天玩了不下几百把,摔碎了一张钢化膜。我已经迫不及待想看全网的人跟着我一起受苦了。”
杨坚把卢克叫到了会议室的白板前。
“说一下你的宣发策略。我不要那种传统的‘王婆卖瓜’式的通稿。什么‘画面精美’、‘休闲益智’这种词汇,一个字母都不许出现。”
“懂您的意思。这游戏就不是拿来让人放松的。”卢克拿起笔,在白板上龙飞凤舞地写下几个大字:挑衅与破防。
“老板,我是仔细复盘过您当初零成本引爆《2048》的战术的。”
卢克转过身,眼睛放光,毫不掩饰语气里的钦佩,“您当时在各大高校论坛伪装成傲慢的学生制造‘智商焦虑’,利用大家的攀比心理完成了完美的冷启动,这招简直绝了。所以这次,我打算完全沿用您的逆向营销思路,继续走黑红路线,只不过把‘智商焦虑’换成‘操作破防’。”
“前期我会雇水军在Reddit的游戏专区、以及各大高校的BBS上发帖。标题我都想好了:《这是我这辈子玩过最弱智、但最特么难的垃圾游戏,打赌你们没人能过10分》。在这个标题下面,只需要放一张得分为2分的死亡截图,和一个下载链接。不需要任何多余的解释。”
杨坚赞许地点了点头。好奇心和好胜心,永远是吸引年轻人的两大法宝。当一个人看到别人因为一个画面粗糙的游戏气急败坏时,他的第一反应一定是“有这么难吗?让我试试”。
“这只是沿用您《2048》策略的冷启动种子。”卢克继续说道,在白板上画了一个大大的播放按钮图标,“但《像素鸟》的观赏性和节目效果比《2048》强太多了。真正能让这款游戏彻底爆炸的核武器,在视频网站和直播平台上。”
“我有几个在Twitch(直播平台)和YouTube上做游戏实况的朋友。他们平时主要播那些硬核的射击游戏或者恐怖游戏,粉丝量在十万到五十万之间,最擅长的节目效果就是‘暴躁’和‘无能狂怒’。”
卢克咧开嘴,露出一个狡黠的笑容。
“我打算把咱们手里那点可怜的宣发经费全砸给他们。不要求他们玩多久,只要求他们在直播玩主机游戏卡关、或者心态有些烦躁的时候,‘顺便’打开咱们这款手游换换脑子。合同里明文规定:不许强颜欢笑,越暴躁越好,哪怕在直播间里当场把手机摔了,我们给双倍推广费!”
听到这个策略,旁边的迪尼什倒吸了一口凉气。花钱雇人骂自己的产品?这是什么反人类的营销逻辑?
但杨坚却鼓起了掌。