写点什么

口述历史:诺基亚经典游戏《贪吃蛇》的前世今生

  • 2019-09-20
  • 本文字数:3324 字

    阅读完需:约 11 分钟

口述历史:诺基亚经典游戏《贪吃蛇》的前世今生

Taneli Armanto 堪称手机游戏界的无名英雄。在今天的访谈中,我们有幸见到了这位曾在上世纪九十年代后期为诺基亚 6110 机型开发出《贪吃蛇》这一大作的芬兰软件工程师,听听他如何评价手机游戏这个如今价值上千亿美元的行业。**



Taneli Armanto 不喜欢炫耀自己的辉煌过往。事实上,除非您是他现实中的好友,否则我打赌各位根本就没听说过这个名字。他也从来不会主动提及自己人生中最大的成就——他的孩子们倒是一有机会就要拿出来说上一说。


毕竟,他们的父亲开发出了《贪吃蛇》。


那时候是 1995 年,Armanto 这位芬兰软件工程师刚刚加入一家正在快速发展的公司——诺基亚。他本人已经拥有一定的游戏从业背景,因此当时他的主要任务就是在即将推出的诺基亚 6110 手机上开发“一些酷炫的小游戏”。但他倒没有把游戏特别当回事,在他看来自己的工作跟同事们开发的计算器或者日历并没什么区别。


近 25 年之后,他创作的《贪吃蛇》被视为科技与娱乐行业的一大重要转折点。事实上,《贪吃蛇》成为一款极具份量的手机游戏,甚至可以说为如今价值上千亿美元的手机游戏行业奠定了发展根基。


Armanto 在谈到自己的职业生涯时,显得非常低调而谦和。他表示,“当人们听到我与〈贪吃蛇〉的故事时,总会显得非常兴奋。我觉得他们可能真的很喜欢这个游戏吧,我也很享受这种作品得到他人认可的感觉。”


改变了一切的手机

这个故事开始于 1995 年,当时诺基亚公司已经在内部进行了大约三年的整体改革。接下来的新使命,就是专注于移动技术。虽然那时候手机还没有在世界范围内得到普及,但相关设备正迅速小型化、低成本化、易用化。在 1993 年诺基亚 2110 发布之后,公司开始全力研发诺基亚 6110。这款手机计划于 1997 年 12 月正式公布。


诺基亚公司希望 6110 机型能够在瘦身的同时提升性能,同时带来更长的电池续航能力与通话时长。新机型将提供一套新的、更完善的用户界面,允许人们在手机上轻松完成不同功能间的切换。很明显,当时的诺基亚急需开发人员,而 Armanto 也决定投身于其中。



一部蓝色的诺基亚 6110 手机


Armanto: 当时是 1995 年,诺基亚公司正在快速发展。我们都是新人,同时满怀热情。我们开始为手机开发新的软件,而且总是随身携带着这些最新设备,毕竟得随时进行测试工作。


当时,几位负责用户界面团队的同事觉得我之前有过电脑游戏的开发经验,但实际上我没啥经验。他们把我跟我的一个亲戚弄混了。但无论如何,同事们建议我负责开发游戏,他们则开发电话簿、日历、计算器等其它功能。反正最终我就开始管游戏这一块了,也不错,我本人很喜欢玩游戏,特别是棋类游戏。


我刚开始觉得《俄罗斯方块》挺好的,甚至进行过相关开发和测试。但很遗憾,实现不了。因为《俄罗斯方块》的持有方希望从每一部售出的手机上拿一定的分成,诺基亚显然是不能接受任何按销售量分成的提议。


于是,我开始考虑 6110 机型的规格特性。首先是限制条件:屏幕非常小,只能用有限的几个按键控制游戏,而且没有多少可用的编程内存空间……


《贪吃蛇》的诞生史


《贪吃蛇》游戏在 1995 年之前就已经存在,最早是以《封锁(Blockade)》的名称登陆街机平台,之后又先后出现过几个克隆版本。无论是《Nibbler》、《Worm》还是《Rattler Race》,名称虽然有区别,但核心玩法都是一致的。


Armanto: 人们可能会认为诺基亚是第一家在手机上提供游戏的厂商,但事实并非如此。早期也有其它手机提供游戏,只是销量和影响力都不像诺基亚 6110 那么可观。


我之前在自己的苹果机上玩过类《贪吃蛇》游戏。那款游戏支持双人游玩,两名玩家各自通过键盘操纵自己的蛇。


Kyle 记者: 《贪吃蛇》提供最简单也最纯粹的视频游戏体验,它继承了《乒乓球》以及《太空侵略者》那种简洁的快乐。像素图像、遵循物理学规律外加游戏难度的逐级提升,这一切不断刺激着我们想要获得成功的原始欲望。


Armanto: 经过一系列测试与规划,我们意识到这就是最理想的游戏选项,毕竟跟手机的种种限制都不冲突。当简单的办法就能奏效时,自然没必要去硬想复杂的点子。我们希望挖掘一点背景信息,比如弄清楚《贪吃蛇》这类游戏到底有没有明确的归属。答案是没有,所以接下来就是动手实现。


构建游戏

Armanto: 在对游戏的早期版本进行测试时,我注意到当速度达到最高级别时,玩家会很难控制身体接近但还没有碰撞之间的时间间隙。虽然我也很希望能尽快完成自己手头的工作,不过另一方面,我也希望对玩家负责,让更多人能够适应最高难度。如果最高难度就是快速死命,那就没有什么乐趣可言了。所以我加入了一点延迟,相当于给了玩家额外几毫秒的反应时间。只要能在这几毫秒里及时转向,游戏就能继续玩下去。


记者: 身体越长,在屏幕上的行动就越困难,继续生存自然变得越具挑战。再加上每条蛇只有一条命,意味着每一次回转都代表惊险时刻。这种感觉真的非常非常明显。


Armanto: 我们在最高难度中,把蛇的行进速度提升到了手机的运行极限。考虑到屏幕的刷新率以及软件计算蛇下一次进位的具体速度,我倒过来逐步添加延迟以在更低的等级当中提供更长的反应时间。最高难度延迟为零,因为蛇已经没法跑得更快了——或者说,再快手机就会崩溃。当然,只有内存溢出的时候才会导致手机崩溃,我肯定会想办法避免内存溢出喽。


诺基亚于 1998 年年初正式销售 6110 机型,而《贪吃蛇》也作为内置软件组合中的成员之一。


记者: 关于手机内置游戏,现在已经有了不少回顾性的评测。不需要额外下载任何内容,没有游戏内购,无需更新,也没有什么数据下载。只要买一部诺基亚,剩下的就是畅玩了。


Armanto: 虽然也花了不少时间进行测试,但我自己从来没达到过最高级别。不过我相信,获胜的最佳方式就是不断练习,仅此而已。我发现有些会利用暂停/继续功能获得很高的分数,但这属于作弊,我觉得不能算数。


“我从没想到它会成为爆款”

也许是因为手机惊人的销量,可能是因为游戏简单好玩,也有可能是二者兼而有之。总之,《贪吃蛇》成了一款现象级的作品,人们开始把大量时间花在这款手机游戏身上。


Hannu Korhonen 在自己的研究文章中写道:“手机游戏时代始于 1997 年,当时诺基亚在 6110 机型上发布了第一款名为〈贪吃蛇〉的手机游戏。这可能是有史以来最受欢迎的手机游戏之一,全球有超过 3.5 亿部手机提供这款游戏。”


Armanto: 虽然我自己也喜欢玩,但其他诺基亚的同事显然比我更有热情。他们主动要求测试,而且总是跟我谈起这款游戏。但我从没想到它会成为爆款。事实上,我觉得诺基亚的产品营销团队也没想到。我们得知学校里的孩子们很喜欢这游戏,特别喜欢。我们也听说手机卖得很好,但我觉得这肯定不只是《贪吃蛇》的功劳,手机上的其它功能也非常重要!


记者: 这是一款终极手机游戏,因为几乎每个人都曾经玩过,包括那些在日常生活里从来不玩游戏的人。它就像是诺基亚 6110 手机建立起来的一种公众意识。


Armanto: 我是在非正式场合中,得知这款游戏有多受欢迎的。但是,我觉得它能够成功也要归功于其它因素:用户界面的整体设计、电池性能大幅提升、手机价格下降等等。但是,诺基亚公司从来没承认过这款游戏对手机销量做出了贡献。


我猜公司里可能有某些政策或者规章,要求“隐藏”各项功能背后的开发者身份。至少在官方通讯当中,这些功能或者发明都只归诺基亚所有。最终,我拿到了一点一次性资金,具体时间我不太记得了,反正是在产品项目完成的很长一段时间之后。


2005 年诺基亚 N-Gage 机型新闻稿:作为全球最受欢迎的手机游戏《贪吃蛇》的创作者,Taneli Armanto 先生获得手机娱乐论坛(MEF)的特别嘉奖,鼓励他在诺基亚 6100 系列机型内置游戏方面作出的突出贡献。根据 MEF 的介绍,Armanto 先生的聪明才智与远见卓识为手机娱乐行业的发展奠定了坚实的基础。Armanto 先生在昨天于伦敦举行的 MEF 年度大会上接受了颁奖。


Armanto 在诺基亚公司工作了近 16 年,随后开始自由创业,并最终回到学校。目前,他在 Ineo Oy 公司担任系统架构师职务。


Armanto: 总的来说,我很怀念自己在诺基亚效力的那段岁月。即使是在《贪吃蛇》之后,这段工作体验仍然很酷且带给我不少启发。虽然公司规模很大而且存在不少问题,但至少就我所知,各团队的奋斗精神仍然非常出色。毕竟,我们新手建立起一个更加美好的世界。


原文链接


AN ORAL HISTORY OF ‘SNAKE’ ON NOKIA


2019-09-20 17:403962

评论

发布
暂无评论
发现更多内容

springboot多数据源配合docker部署mysql主从实现读写分离

Java 程序员 后端

【文末送票福利】龙智携手Atlassian,与您相约GOPS全球运维大会

龙智—DevSecOps解决方案

DevOps 运维

springboot中如何使用拦截器,Javaweb资料视频

Java 程序员 后端

云原生领域再添重磅开源项目:腾讯发布 K8s 多集群管理开源项目 Clusternet

科技热闻

Springboot快速整合JPA实现增删查改(1),java教程视频下载

Java 程序员 后端

springBoot集成Mybatis,Java资料下载

Java 程序员 后端

springboot入门教程和mysql数据库,java框架面试基础

Java 程序员 后端

六问六答理解ForkJoin原理

华为云开发者联盟

Java 线程 线程池 forkjoin 归并计算

最佳实践|放弃 Ceph,Salesforce 使用 Apache BookKeeper 在云中实现最强存储

Apache Pulsar

开源 云原生 存储系统 Apache Pulsar 消息系统 Apache BookKeeper

SpringBoot:Shiro-整合-Redis,也不用担心用户投诉啦,java技术经理面试题

Java 程序员 后端

dart系列之:dart语言中的特殊操作符

程序那些事

flutter dart 程序那些事 11月日更

SpringBoot整合MybatisPlus实战动态SQL,java编程入门经典

Java 程序员 后端

springboot整合thymeleaf及常用标签的使用方法,美的java面试流程

Java 程序员 后端

CSS页面设计稿构思与实现(二)

Augus

CSS 11月日更

Windows/Mac 安装、使用Python环境+jupyter notebook

老表

python入门 11月日更 Python自动化 运营学Python

SpringBoot实战教程(3,mysql集群和主从原理

Java 程序员 后端

Springboot快速整合JPA实现增删查改,linux系统架构和应用技巧

Java 程序员 后端

Springboot整合ActiveMQ(Queue和Topic两种模式),Java开发者跳槽指

Java 程序员 后端

Springboot整合Mybatis增删查改、连接MYSQL数据库及配置druid连接池

Java 程序员 后端

springcloud 高可用的服务注册中心及更高可用,java面试设计题

Java 程序员 后端

SpringBoot使用Aop自定义注解展示日志信息,mysqlsql性能调优的方法

Java 程序员 后端

SpringBoot整合Shiro(完整版)(1),java企业级应用教程视频

Java 程序员 后端

SpringBoot整合Shiro(完整版),java学习网站

Java 程序员 后端

Vue进阶(幺柒叁):表单元素日期校验

No Silver Bullet

Vue 表单校验 11月日更

SpringBoot系列:Spring Boot集成redis,mongodb原理书籍推荐

Java 程序员 后端

SpringBoot2----Web模块的基本注解,美的java面试题

Java 程序员 后端

SpringBoot2----拦截器和文件上传功能,源码+原理+手写框架

Java 程序员 后端

SpringBoot2----数据访问,实战java虚拟机百度云

Java 程序员 后端

腾讯云原生开源生态专场在武汉召开,洞察开源云原生技术发展趋势和商业化路径

科技热闻

SpringBoot整合Shiro实现权限管理,rabbitmq原理图

Java 程序员 后端

SpringBoot整合Thymeleaf模板,java技术核心卷二

Java 程序员 后端

口述历史:诺基亚经典游戏《贪吃蛇》的前世今生_移动_Quinn Myers_InfoQ精选文章