本文原创且首发于公众号:瞬息之间,经作者授权转载

原标题:《魔兽,召唤燃情岁月》,编辑有修改

“ 正是这样的一些人,怀着这样的热爱,才可能创造出这样的游戏,让我在最适合玩游戏的岁月玩到了这样的游戏。十多年后,我也成为了一名程序员,一个程序员的小小梦想,有时就像 Jeff Strain 一样简单,期望有朝一日也能对某个人说出关于我正在写的代码:这可不是该死的xx,这是~~~~ ”——— mindwind

最近魔兽上映了,4S 店本来组织了首映日会员包场观影活动,我提前了好几天报名居然全报满了,这倒是出乎预料之外,以前从没碰到过。本来是不敢对这部电影抱有太高期望的,怕是期望越高而失望也越高,毕竟在游戏改编电影的历史上还没有过成就的经典之作,只怕折损了昔日心中的经典游戏。

魔兽不是一个游戏,而是一系列游戏,包括:魔兽争霸、魔兽世界和炉石传说,三种完全不同类型的游戏。其实从魔兽系列游戏诞生之初距今已有二十二年历史了,也许此刻我想要拥有像魔兽中英雄那般的「传送」技能,这里的传送的不是空间而是时间,去回顾一下我与魔兽的历史。

传送

当我还是小孩时,父母总是想尽办法阻止我去玩游戏,怕沉溺其中而荒废了自己的人生。但在中学封闭式住校期间,现实世界仅剩下狭隘而无趣的学习,正是游戏为我们打开了另一扇世界的大门,一扇通往神国的大门,因为每个孩子心中都有一个神国啊。而魔兽的世界正是这样一个神国世界,这不是一个人的世界,这是一群人一起创造的世界。

魔兽中有个人族矮人英雄,叫山丘之王。当他升到一定级别就能使用他的终极技能「天神下凡」,因此无往不利而战无不胜。我们都曾在魔兽这个神国世界中成长,我们期望像个英雄般学会「传送」而纵横时空,学会「透视」而洞悉世间真相,学会「召唤」而让虚无元素、真实动物甚或网络空间另一端的小伙伴来到自己身边一起战斗,但终究有一天我们会像山丘之王,成长到能使用终极技能「天神下凡」,从此我们将从神国下凡到人间,踏上从英雄到凡人的终极历练之路。

游戏

《魔兽1(Warcraft)》诞生于 1994 年,那时我才刚小学毕业还根本没碰过电脑,何谈电脑游戏,所以无从知道。

第二年,也就是 1995 年紧接着出了《魔兽2》,我依然不知。但那一年另一款经典也诞生了《仙剑奇侠传》,是我玩的第一款角色扮演类游戏(RPG)。紧接着 1996 年,一款即时战略游戏(RTS)横扫天下,抱歉不是魔兽,而是西木头公司(Westwood)的《红色警戒》,而魔兽1&2作为当时的即时战略游戏于我而言相对默默无闻,甚至不如紧接着红警一年后(1997)微软推出的《帝国时代》。

在网吧(也许不算网吧,因为根本不能上网,只提供局域组网游戏对战)的电脑上同时装有红警、魔兽、帝国、仙剑,还有暗黑。在玩腻了红警的间隙中,偶然打开过魔兽,觉着节奏不如红警,而画质细节又不如帝国。对,我们当时都被帝国那细腻到极致(相对那个时代的游戏)的游戏画质和细节所震撼,赤身采集粮食的农民身上的汗珠至今似乎仍然历历在目,而魔兽则鲜有印象了。

魔兽2是 1995 年推出的,但和同时代的即时战略游戏相比,它只是配角。而魔兽3(War3)是在 2002 年才推出的,而 War3 基本也是魔兽系列辉煌的起点,所以想必很多魔兽玩家都是从 War3 开始的。War3 相比 2 隔了 7 年之久,中间这么些年暴雪干嘛了?资深的暴雪迷都知道这中间发生了什么,这期间是暴雪另一款经典游戏《星际争霸(Starcraft)》的诞生和统治时期。

1998 年,如往常一样我和几位同学走进网吧包夜,先玩红警、再玩帝国。连续数场大战下来,感觉饿了,泡上一碗面霸120,中场休息期间,网吧老板神秘兮兮跑来说刚装了款新的对战游戏,推荐我们一起玩玩。吃完面,我和同学决定去试玩一下,点开游戏,先选种族,我选了人族。在我摸索建造出人族的隐形战机、听着坦克架炮的变形声,我知道对我来说红警和帝国的时代从这一刻开始已经结束了。

《星际》诞生之初就被认为是魔兽的延续,从取名上也会给我们这样的误导。暴雪后来在《星际争霸:母巢之战》中加过一个彩蛋,玩家反复用鼠标点击神族英雄阿塔尼斯(Artanis),他会吐槽一句:“这可不是《魔兽争霸》的太空版(This is NOT Warcraft in Space)!”。虽然暴雪不认为《星际》是《魔兽》的延续,甚至不认为它们之间有何关联。但我觉着至少有一点是相关的,从星际的开发历史以及后来的大获成功才奠定了暴雪精益求精、追求完美的企业文化,因此才为后续从《魔兽3》到《魔兽世界》,从经典到经典,创造了不断超越的可能。

在《星际》的开发史上,有一段为人津津乐道的故事,关于 Jeff Strain,《星际争霸》地图编辑器的开发者。

在1997年秋天,《星际争霸》的开发工作进入最后的冲刺阶段,其时正逢 Jeff Strain 爱妻 Annie 的女儿即将降生。

而 Jeff Strain 接到妻子打来的电话后他做了一个让人敬服的举动,带着一台笔记本守在妻子的产床前继续《星际争霸》的编程工作,以至于妻子产后从麻醉中清醒过来后大声责问他:

“为什么连我们的女儿出生时,你还在为你那个该死的游戏工作?” 对此 Jeff Strain 的回答是:“这可不是该死的游戏,这是《星际争霸》!”

作为对 Jeff Strain 一家人的敬意,Annie Strain 出现在了《星际争霸》的致谢名单中。

正是这样的一些人,怀着这样的热爱,才可能创造出这样的游戏,让我在最适合玩游戏的岁月玩到了这样的游戏。十多年后,我也成为了一名程序员,一个程序员的小小梦想有时就像 Jeff Strain 一样简单,期望有朝一日也能对某个人说出关于我正在写的代码:这可不是该死的xx,这是~~~~。

2002 年 《魔兽3》诞生,玩了四年星际后我再次转移到魔兽上,开启了另一段六年之旅。期间 2005 年《魔兽世界》诞生,但我当时的兴趣主要在电竞方面,所以一直没有关注《魔兽世界》。随着毕业工作,现实变得越来越残酷,魔兽也就慢慢开始淡出我的生活。


透视

《魔兽》电影上映时,我看了一下首映当晚离我家最近的影院上座情况,零点场全满。如果零点场全满还可理解,那么下一场是 2 点 25 的,也是 90% 的上座率,当时真地感觉这不是一部可以按普通方式来理解的电影,然后我赶紧搞了一张第二天晚上的电影票。

看完电影后,其实我也是各种懵,里面各种人物都不熟悉,怎么没有一个我熟悉的英雄故事啊。玩 War3 我最早是玩兽族的(Orc),英雄萨尔在哪里?后来改玩了亡灵族,让人痛心的悲剧英雄阿尔萨斯在哪里?作为一个老魔兽玩家对电影的故事尚且如此懵懂,想必无游戏背景的观影群众更是各种不明真相,需要放个萨尔的「透视」技能,揭示一下电影中的故事背景(当然,我也是事后补课的,下面无剧透,只是增加下背景资料,以免观影时各种懵)。

上古时期有神族泰坦创世,形成了人类家园——艾泽拉斯,兽族星球——德拉诺。其时有四邪神入侵艾泽拉斯,泰坦神族与之大战后杀死了所有邪神,但泰坦勇士萨格拉斯中了邪神诅咒,变成恶魔之王,成立燃烧军团。

宇宙中另有一高智慧种族艾瑞达人,其领袖之一维伦,为躲避燃烧军团逃到了德拉诺,改名称德莱尼人。德拉诺原住民即是兽族,兽族分为多个氏族,包括:碎手、黑石、血环、影月、战歌、霜狼。逃到德拉诺的德莱尼人后来与兽人爆发战争,许多德莱尼人被兽族战士强暴。电影人物迦罗娜正是这种杂交的产物,人的体型,兽人的特征,但为两边所不容。

古尔丹,电影中的大反派兽族术士,就属于影月族,后来脱离影月,创立新氏族暴掠。他原为兽族萨满,后被伪装成兽族先祖之魂的燃烧军团领导者之一基尔加丹诱惑,喝下恶魔之血,出卖自己族人,让恶魔奴役自己的族人。让兽族人背弃了自身的信仰,它们所崇拜的神灵也放弃了兽人,因此德拉诺的土地开始枯萎,没有食物来源的兽人无法生存,在古尔丹的带领下兽人穿越黑暗之门来到人类聚居地艾泽拉斯,只是为了生存。

电影另外两个兽族主要人物:杜隆坦和奥格瑞姆。兽人中的一对好基友,杜隆坦的儿子就是将来伟大的兽人先知萨尔(电影所在的时代,我熟悉的英雄才刚刚出生,还是婴儿),被人类抚养长大,后来回归领导兽人,并继承了奥格瑞姆的武器毁灭之锤。

人类这边起源于泰坦创造的仆人维库人,后在泰坦和上古邪神的战斗中中了邪神的血肉诅咒,产生变异生下了体型更为瘦下的新种族,后发展为人类。人类建立七国:诺丹伦、达拉然、奥特兰克、库尔提拉斯、吉尔尼斯、激流堡和暴

风城。

电影中人族这边的三个主要人物:洛萨、莱恩和麦迪文,人类的三个火枪手,从小一起玩大的小伙伴。麦迪文的母亲艾格文是上一任守护者,她曾消灭了堕落泰坦燃烧军团的领袖萨格拉斯,萨格拉斯肉体已灭,但灵魂却潜伏在艾格文体内。艾格文生下麦迪文时又偷偷溜进了麦迪文的身体。

电影的故事就是围绕着如上这个简述的背景展开的,来源于魔兽首个游戏 Warcraft:Orcs & Humans 也就是魔兽1啦。正如影片名《Warcraft: The Beginning》所暗示这只是个开始,就像一本小说才开了个序章一样,真正的主角一个都还没登场呢(心中默念,暴雪别让我们等太久啊)。


召唤

仅仅《魔兽世界》自 2005 年上线以来,十二年间注册账号过 1 亿,创建的角色达 5 亿,巅峰时期的同时在线玩家超过 1200 万,而被魔兽直接或间接影响的人群远超这个数量,所以我们才看到了《魔兽》这个现象级的电影。

《魔兽》的二十二年间经历了从诞生到辉煌再到迟暮,多少曾经的小伙伴已经从懵懂少年到成家立业,注册过的账号也从某一天开始就像我一样再也没有打开过,然后渐渐的、渐渐的就遗落在某个记忆的角落。你甚至不知道这一天是如何来到的,之后《魔兽》与我们的联系就这样慢慢的越来越弱,直到再也感受不到,甚至再未想起过。

直到《魔兽》电影的上映,在大荧幕上看到变羊术时忍不住会心一笑,感受到了这是一次来自艾泽拉斯大陆对所有魔兽迷们的召唤,召唤曾经的燃情岁月。就像玩游戏时喜欢的英雄,召唤过水元素,小火魔,影狼,豪猪、熊、鹰、小强、死灵、树人等等,这一次英雄在召唤我们。

......

下凡

电影放完了,就像一个引子唤回了很多早已淡忘的记忆。许多年前我便已升到 6 级,习得终极的下凡技能,这些年来,神国虽已远去,但人间尚好。

你好,艾泽拉斯,好久不见。

· END ·

6.19魔兽嘉年华,约你一见!

领票传送门

↓↓↓

一个程序员wower的青春记录相关推荐

  1. 程序员是吃青春饭的?

    [回复"1024",送你一个特别推送] 程序员是吃青春饭的?相信一直关注我文章的朋友一定知道我的观点,那就是:我特别讨厌别人说程序员是吃青春饭的.为什么呢?因为根本就不是这回事. ...

  2. [Python学习]PycURL简单学习 - limodou的学习记录 - limodou是一个程序员,他关心的焦点是Python, DocBook, Open Source …...

    [Python学习]PycURL简单学习 - limodou的学习记录 - limodou是一个程序员,他关心的焦点是Python, DocBook, Open Source - [Python学习] ...

  3. 程序员只能吃“青春饭”?C 认证带你破局!

    2019 年搜狐科技<中国互联网简史>报告显示,国内近一半的程序员年龄在 25-29 岁之间,其次为 30-34岁,占比 24.6%,35 岁 -39 岁的程序员占比 6.1%,而 40岁 ...

  4. 程序员等于吃青春饭吗?

    2014-9-1 13:56| 发布者: 传智特刊| 查看: 224| 评论: 0 摘要: 在中国,人们对软件行业从业者有这么一个说法,即:程序员=吃青春饭的,这使得程序员的年龄问题显得相当敏感.很多 ...

  5. 程序员只能吃“青春饭”?IT行业年龄焦虑如何破局?

    ​2019 年搜狐科技<中国互联网简史>报告显示,国内近一半的程序员年龄在 25-29 岁之间,其次为 30-34岁,占比 24.6%,35 岁 -39 岁的程序员占比 6.1%,而 40 ...

  6. 作为一个程序员我们如何快乐的学习成长进步呢?(个人感悟和技术无关)

    为什么要写这样一篇文章呢? 当我我常常自己在思考?我为什么要学习呢?学习能给我带来快乐吗? 如果这个问题 在我刚刚大学毕业步入社会的时候那么显然 ,学习并不能带给我快乐,在我心心念念好不容易摆脱了我人 ...

  7. 程序员为什么是青春饭,而不像医生律师越老越值钱?

    我是猿人,一个热爱技术.热爱编程的IT猿.技术是开源的,知识是共享的! 写作是对自己学习的总结和记录,如果您对 Java.分布式.微服务.中间件.Spring Boot.Spring Cloud等技术 ...

  8. 笑岔气!一个程序员的水平能差到什么程度?

    " 最近,知乎上有一则灵魂拷问"一个程序员的水平能差到什么程度?"让各位程序员们纷纷有感而发.小编精选了两个有趣的高赞回答只为抛砖引玉,欢迎大家说出你的故事! 作者:Be ...

  9. 只缺一个程序员 如何让产品实现

    2019独角兽企业重金招聘Python工程师标准>>> 译者:王登科 这是一篇我的翻译,来自Derek Sivers的How to hire a programmer to make ...

最新文章

  1. 如果有电脑——计算机达人成长之路(36)
  2. 一次对语音技术的彻底批判
  3. docker安装、启动mongo
  4. 对话王晶:音频人才亟待培养,高水平研究人员尤其欠缺
  5. matlab字母随机排列,matlab实现1n整数的一个随机排列
  6. vue-cli生成项目时你应当知道的
  7. php字符集转换,php字符集转换
  8. 拳王虚拟项目公社:分享一个大学生上班族都可做的虚拟副业项目
  9. [Web开发] IE8 网页开发参考文档
  10. linux initrd usb热插拔,8.3 发行注记 Red Hat Enterprise Linux 8 | Red Hat Customer Portal
  11. 批处理 如果提示错误暂停_dos批处理脚本代码,一键删除目录文件夹例子,dos命令bat教程...
  12. java将数据写入csv文件,从csv文件中读取数据
  13. 多目录下一次性修改多个文件里的相同内容
  14. 博格和他的先锋集团创业史(3): 共同基金的先驱者
  15. 格式化U盘的工具(USB无法识别 ,无法格式化 )
  16. ant design table样式修改合集
  17. ResourceBundle的基本使用
  18. 如何判断某个类是否有某个注解?
  19. pytorch —— 正则化之weight_decay
  20. 第127讲:Hadoop集群管理之安全模式解析及动手实战学习笔记

热门文章

  1. 来与大家分享一些我们珍藏的、有力量的语句
  2. 哪个牌子蓝牙耳机打电话清晰?通话最清晰的蓝牙耳机推荐
  3. 电脑计算机进去用户文件不见了,为什么文件夹夹会不见
  4. 40 张图带你搞懂 TCP 和 UDP,android软件开发教程
  5. 菜鸟教程---语言学习利器
  6. 艾伟_转载:一个.NET委托的故事:彼得,老板和宇宙
  7. Windows 10 C盘所有软件,安装到D盘
  8. win10中搭建并配置ftp服务器的方法(实现多用户登录整合版)
  9. kafka高性能的原因
  10. 问题解决:#include errors detected. Please update your includePath.