于是,一款飞行战斗游戏的史诗之作诞生了。席德?梅尔,那个爱穿编织毛衣的小伙子,在成为上世纪最伟大的程序编织者之前,他首先学会的是阅读游戏。
“我看到什么?”年轻玩家问自己。
他的鼻息轻轻拂动了鼻前一片树叶,他盯着这片散发着绿汁嫩香的完美树叶,直到瞳孔燥热欲裂。他看到叶片的锯齿边缘反射着金色阳光,渐渐模糊退隐,化为优美的寇赫岛海岸线,在更精微处,自相似的谢尔宾斯基三角形无从遁形……那些逼真的纤毫毕现的三维图像顿时像加特林机枪击中的血肉之躯那样化为满天弥漫的血雾,继而转化为无限次迭代方程所控制的数据流。
传说“恐怖伊万”在现身前,你首先能感觉到的是地面的颤抖。身高9英尺体重900磅的庞大身躯,可以轻易地举起火神六管机枪。火神本是为战斗机配备的重型机枪,每秒5000发的子弹流能把一台防弹林肯轰成钢灰。他的左臂装载一管磁力钨弹枪,可产生高达2000万安培的电流,电流形成的磁场在200纳秒的时间内爆发出比地球气压强十万倍的压力,将子弹加速到20千米每秒。如果说“伊万”的右臂象征着毁灭与狂暴,左臂无疑是速度与精确的代名词。正因为如此,“伊万”现身后的图景只有通过回放对战录像来“回味”了。从来没有人能在生前目睹“伊万”之真容,从未画面在微微颤抖,看起来就像是老式胶片电影的齿轮颤动。看客脑门上都渗出黄豆大的汗滴,一个十六七岁的黄毛男孩甚至捂住了耳朵。
如果敌人从树叶缝隙里露出十个像素大的迷彩服,你会看到什么?事实上,你什么也看不到。这正是迷彩服的意义。然而,对于程序员来说,树叶与游戏主角的差别可就大了。
电光火石间,英格纳姆Mac10的扳机被扣动了,他的肩部因反冲力剧烈地后震,看客们也神经质地哆嗦一下。然后一声巨大的钝响震得三维投影平台几乎散架,火花四射,当然那只是视觉模拟。铺天盖地的尘土散去后,画面回复了夏日的宁静,除了蚊虫的嘁嘁鸣叫,还有黄毛小子的吸鼻声。
向约翰?卡马克致敬!年轻人摘下银光闪闪的头盔,心中充满了敬仰之情。大师在上个世纪创造了神话般的三维引擎杰作,直到今天仍然是不朽的传奇。虽然今天的游戏画面在精细度上要更胜一筹,工作原理却始终如一:用目卩时引擎来表现主体,用来离线引擎来表现背景。普通人看到的是即时引擎的流畅灵活,离线引擎的华美精细。程序员看到的却是多边形所表现的涂满油彩的皮肤和NuRBS曲线表现的树叶轮廓,两者的差别有多大?一光年那么大。年轻人的嘴角挤出细微的弧纹,他解下洁白的围脖,递给服务小姐,就像久困樊篱的蚊龙挣脱缠身链锁那样轻松,浑身每一块肌肉都膨满了力量。他眯着细长的眼睛朝玻璃旋转门透过的五彩阳光望去,拖鞋发出欢快的趿拉声。
“伊万”呢?“伊万”是死了吗?”黄毛小子怯怯地搡着他的老大,不解地问道。
师父步履迟缓地走到窗前,吃力地拉开厚厚的垂地窗帘,一堵硕大无朋的屏幕展露眼前,不,那不是屏幕,那是城市的夜空,璀璨灯光充盈着摩天大楼,让耸入云霄的玻璃幕墙变得通体透明,就像团簇生长的水晶。
“看到它了吗?”师父指着一幢庞然大物,那是IEEE通信大楼,建筑面积超过三个五角大楼,智慧、财富、权力的象征。在它巨大的阴影里,这幢图书馆就像是儿童积木。
“规则110。”规则110是研究复杂系统行为的一种规则,它决定二维平面的模拟数字生命的状态。该规则的特殊性在于可以从简单的规则和初始条件中产生复杂的图形。师父说。
走在宽阔大街上的人们突然顿住了他们的步,所有的人都朝向同一个方向,交头接耳。
IEEE通信大楼的灯光熄灭了,这是不可思议的,就算是发生地震,三套备用发电机组也可以保证它的灯火通明。因为这儿是全世界最有名的计算机、网络公司的总部所在地。它若停电,全世界的网络都会瘫痪。
它马上又亮了,但仅仅是几个窗户亮着,它们分布在对角线位置。两处亮斑一个是三角形,一个是圆形。它们周围的窗户也一明一灭起来,不久,它们复制出许多三角形、
圆形。它们的地盘交错着,变幻着,就像在厮杀。
“这是工程师们的行为艺术吧。”有大学生很有经验地向周围的人说。这把戏他在大二时就玩过了,当时他们编了一个小小的程序让一幢女生楼的窗户玩起了俄罗斯方块。
但他很快发现这“行为艺术”的复杂性远远超出了俄罗斯方块。事实上窗户格子的明灭是有规律的,当一行相邻三个格子全黑、全白或左侧一个格子为黑时,该格子为白。但这种简单的规则宏观上又表现出类似于生命的性质:三角形、圆形者卩可自我复带,它们能侵入对方的阵地,扩大地盘。
“他们就像能思考。”一个心思细腻的女人说。虽然她完全不懂程序,但她的洞察力是惊人的。建立于简单规则之上矩阵生命的确能表现出生命的自组织现象,只是,没人能发现,它们甚至还能进化。
圆形族疯狂的复制能力让它的地盘急速扩张,三角族似乎有意回避其锋芒,它个体开始集拢收缩。就在人们以为圆形生命将吞并最后一块三角形的阵地时,三角族突然对一小块孤立的圆形族发动攻击,人海优势让它的攻击立竿见影。然后它又切断另一块圆形阵地与大部的联系,再次吞没了它。三角族的复制效率低下,但它攻击迅猛的特点展现得淋漓尽致。圆形族虽然占据了大量的资源,即亮着的窗户格子,但它的资源只不过是为三角族作嫁衣罢了。三角族侵吞了它的资源,与资源占有量成正比的攻击显得愈加犀利。一个小时后,三角族吞没了最后一个圆形生命,最终让光明澎满了ieee通信。
驻足观看的人群响起热烈的欢呼声。虽然这只是枯燥的黑白格子游戏而已,虽然图形背后的程序控制无比复杂玄奥,但那勾人心?玄的战斗去卩感染了每一个看客。
师父安详地躺了下去,他的手指仍旧呈蜷曲状,可以精确地放在九个键上。
“我已经不能教你了。你要记住,只有那些清空了陈腐的律条、世俗的财富、甚至缱绻的情思的人才能成为真正的屠龙战士。你去吧……”
师父在他的怀里平和地闭上眼睛。师父的头像苹果机一般沉重。
他的膝盖跪在地上,滚烫的泪水在月光的清辉里颤动,一种前所未有的巨大空寂笼罩了他。
Caltech编程大赛是地球上最悠久的程序员大赛。在上个世纪,程序大师的评价标准是写出最简洁优美的程序,既没有不必要的循环,又没有不被引用的变量;既不缺少结构化,又不至于僵硬呆板。但是进入云时代以来,由于Quake10对战平台的面世,程序大赛与暴力美学完美地结合在一起,程序不再是枯燥的代码,而是化身为虚拟角斗士,允许自我复制制造分身,允许侵入对手“身体”,寄生、控制甚至分解对手,但不能有脱离物理定律的力量、弹跳、速度指数。让程序员控制虚拟角斗士进行搏杀,经历惨烈的淘汰赛后,获胜者将向上一届卫冕发起挑战。然而,今年的Caltech编程大赛乏善可陈,上一届未冕者“流火”几乎是在一瞬间被战者“豪魃”秒杀的,比赛的组织者一度以为是机器故障。
人们很快发现这一届乏味的比赛终将被注入史册,它宣告一个王朝的解体与一个新时代的诞生,曾经十连霸的“流火”已经永远地沉沦了。它惨败的录像被人们恶趣味地一遍遍播放回味;它的残骸被挂在Quake10对战平台的醒目位置,就像海岸边被枭首示众的海盗;它的代码被挂在网上供人任意下载,无数渴望成为新的王者的程序天才都用它作为陪练,毁灭、撕碎、操控、愚弄它以收获复仇的快感。也有很多投机取巧的程序员对它进行二次开发,以期得到更具杀伤力的毁灭者,然而他们很失望,因为折开流火的封装,他们绝望地发现,那根本不是他们所能理解的程序语言。是传说中的屠龙战士融创造了流火,而由于某种不可知原因,“融”已经被废了,没有人知道他的去处,只有那传奇的人字拖还残存于骨灰级元老们影影绰绰的记忆里,新一代的程序高手对这个名字根本是闻所未闻。
代码世界进入了战国时代,新的霸主“豪魃”很快被病毒式攻击角斗士“龙骧”所击败,而“龙骧”的王位第二年又被神出鬼没的“光晕”取而代之。前人的失败与新人的成功激励着无数雄心勃勃的年轻人进行艰苦卓绝的训练,他们渴望着出人头地的那一天。Quake10对战平台每天都有数以万计的角斗士在进行肉搏,通过全球直播,地球上每一个街区的犄角旮旯都能传来惊心动魄的画面,并时而爆发出欢呼或是咋舌声。角斗是与痛感神经相连的,虚拟程序所承受的攻击都将以真实的牛顿传递到参战者的大脑。这是云时代的残酷游戏,许多心理脆弱的年轻程序员因那种天旋地转的极端痛苦而永久地告别竞技场,有的发誓再不作程序员,有的甚至直接在终端躺椅上停止了呼吸。人类的血液泵是有压力极限的,而代码的运算即便存在极限,那也不是人类所能望其项背的。所以,获胜的角斗士不但有超群的代码智慧,也拥有强大的体魄。
黑暗中的观察者远远地注意到一个可疑的身影:一个白衣剑客,他没有强大的攻击力,没有寄生、分裂、伪装、隐身等诡诈的攻击、防守手段,也不能自我复希U也却能在混战中全身而退,甚至还能保持代码的完整性。他只是个名不见经传的角斗士,但此战后他的将今。
一阵令人目眩神迷的刀光剑影后,嚣叫着的竞技场陷入地狱般的寂静。在白衣少年飘飘的衣袂后,横尸一野,血流成河。“蒸汽人”庞大无比的身躯首身两截,在地面上发出两声颓然巨响。白衣少年用剑尖在青石板上留下一行字:我想你会梦到一只骆驼。
从此,血风腥雨的代码江湖中没人敢遗漏这个名字:骆驼。全球各个角落的直播电视见证了这一时刻,只是没有人联想到那本早已失传的上古秘籍:《骆驼之书》。这个世纪的年轻人已经不太关远古的编程大师是怎样淬炼他们的宝刀了。
黑暗中的观察者静静地欣赏着“骆驼”的背影,他沉静已久的内竟也漾起一丝涟漪。如果说刚才精彩的竞技让自己心驰神往,而此刻,那个踽踽独行的背影只会令自己感动。是的,作为一门濒临灭绝的上古语言的唯一传人,那种俯瞰众生不可一世的狂傲,那种寥无知音的落寞,那种被世俗所仇恨的痛楚又有何人知?他禁不住想要喊住那个背影,却又无奈地发现自己隐藏在后台程序里,一个偷窥者,而非一个战士。他苦笑。
就像浴火重生的凤凰战士,历经113场血腥战斗后,“骆驼”已经变得空前强大。但是,基于遗传算法的同一原理,他的对手也被血污浸淋得更加凶暴。如果说第一场让他声名大震的战斗获胜,有一定的机会主义成分在内,那么在后面的战斗中,他不得不面对自己成为四面八方仇恨的焦点这一可怕事实。他的成功在于他旁门左道的武器:一门冷僻的古老语言,而现在,他的特点暴露在无数越挫越勇的战者面前,也会沦为致命的弱点。
在“豪魃,”、“吉斯霍华德”、“蝎针”的轮番攻击下,他遍体鳞伤奄奄一息,他强大的自我修复能力在永不停歇的密集攻击下无济于事。蝎针钻入他的左臂,在他的筋骨里不断复制,释放分身,就在蝎针快要侵入他颈部时,他果断地挥剑斩断左臂,这一自残式保护几乎伤及核心代码,半个肩膀都已经削掉了,情状惨不忍睹。战斗进行两小时后,即便是一场普通的街霸游戏,也足以让玩家精疲力竭了,“骆驼”展示了他名符其实的沙漠耐力,仍在不停地自我修,左支右绌。亿万观众似乎从血光滔天的画面后看到了机器终端正嗤嗤地喷着电火花。战斗结束是迟早的事了,早投降吧,何苦受那最后一击后大脑短暂充血休克的痛苦呢?众人皆为他捏一把汗。
“豪魃,”、“吉斯霍华德”、“蝎针”等众高手围成一圈,稍作停滞,在同一时刻发动攻击!
“啊!”观众们的咋舌声像一只青蛙从喉咙里跃出。
谁也没看清发生了什么,凌乱变幻的画面似乎已经超出显卡处理的帧频极P艮。
“发生了什么?”伴随着一声尖厉的惨叫,“豪魃”被一道沛莫能御的力道击得滚翻,他是幸运的,因为他还能叫出声来,他的战友都已经震得魂飞魄散,喘气的都没有了。
“骆驼”洁白的身影很快消失得无影无踪。显然,身负重伤的“骆驼”绝不可能爆发出如此惊人的力量。
工作人员连忙取下“豪魃”的头盔,只见他两眼翻白,眼神直勾勾地望向天空。“他是“融”!他是“融”!”“豪魃”直挺挺地从躲椅上跳起,然后哇的一声抱头痛哭起来。
从此,代码世界再无“豪魃”的身影,有人说他退隐当了一名警察。
按太阳日算,他已经二十九岁了,在普通人当中,他依旧年轻。但在新陈代谢残酷的代码世界,二十九岁已经是老不堪用的风烛残年。“融”在十七岁便已扬名立万,他早早地步入程序员的巅峰舞台,从这层意义上,他堪称祖师爷级的人物。
祖师爷?当然,这三个字从一些毛头小子嘴里喷出来可就难觅几分尊敬的意味了。
“你信不信融在许多开源程序中都种下了后门程序?基本上没人能发现,除了我!”一个留着俄罗斯新兵头的高个子说。
“你就吹吧,五年前ieee组织了一次全球拣虫大赛,早已把“融”的毒虫消灭得一干二净了。”一个戴眼镜的亚洲人回答他。
“傻B,你懂什么?“融”的后门拉链这么好找他还叫“融”吗?这浑蛋把后门程序埋在编译器里,他娘的这年头还有几个人懂编译器?”
“融”在他那个时代还算个人物。”另一个面相成熟一点的用饱经世故的语调说:“其实不是一个时代的人就不要放在一起相提并论,“融”现在要站在我面前,你们信不信我在五秒钟内就叫他肌下?”
“哈哈,“威鸡”老大,你以为你是“骆驼”啊!”
一个痩削的身影从小伙子们得意的笑声中路过,他的大衣已经很陈旧了,毛料袖口与肩膀都可以看出磨光的痕迹。阴冷的天空突然下起了挤密的雨来,凶狠的雨滴在柏油路面上击得粉碎。他的步子很迟钝,脚步声在雨水洼里特别的响亮。
“嗨!快看,这么冷的天气还穿拖鞋。”高个子叫起来。
“威鸡”的表情突然变得凝重:“融”好像也喜欢穿拖鞋。”
一阵心事不一的沉默后,一个稚嫩的声音说:“不会真的是他吧?”
“傻,啊。”高个子不屑地朝天吐了口唾沫,“穿拖鞋就是高手,那光脚乞丐就是神啦!”
经过激烈无聊的抬杠后,小伙子们哄笑着尾随那个痩削的背影而去。那种早已遁迹的传奇对他们的吸引力是无尽的。