欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

转--那些日子

最编程 2024-08-10 10:04:33
...

那些日子云风

云风介绍:梦幻西游的作者,windsoul(风魂)作者,中国开源游戏引擎开发第一人。更详细的请看其博客。      

        那些日子(一)

        明天就是五一假期了,同事都已放假。我不打算在假期加班,因为加班也无事可做,手头上的工作都需要与人合作。

        前几天和新同事吃夜宵,大家聊的异常兴奋,我也忍不住开始想当年。当年那些美好的日子,记忆已经很模糊了。我想再过个两年,估计我都不能准确回忆起那些曾经对我影响深刻的日子准确的时间。是时候记下点什么,对自己是一种纪念。

        我这人有个优点,选择性记忆,那些不快的回忆很容易随风而去。活在我记忆中的人们,对他们只留下感激。我也曾经爱写日记,很早我就写电子日记,记在自己的机器上,PDA上,当我有一些不愿意再回忆的事情时,我会个将整个文件加上密码,长长的一次性密码,保证自己只能记住一小段日子。当这段日子过去,密码就消失在记忆中。然后再也打不开这些文字,等到下次更换硬盘,无论我多么的想再看一眼当年的自己,也无能为力,只好把加密过的文件删去。

        我想我就是这么成长过来,没有什么挫折的感觉被反复咀嚼,都已经抛在脑后。生命中没有什么不可以失去的,这个道理很早就明白了。我曾经懊恼过丢失了大量的源代码、自以为写的不错的文章、早年的聊天记录、珍贵的日记、数年的电子邮件……最后我明白了,一切的一切不过是身外之物,我能拥有回忆中最美好的部分,那么已经是特别幸福了。

        不过也正是如此,以下的记录也只能是我努力的回忆。或许因为时间久远,跟真实有所偏差,或许从我的角度只看到的事物的一面,但是、我可以保证,并没有故意在叙述中掺差虚假的东西。

        是的,我想讲一个真实的故事,一个拥有数千万玩家的游戏诞生的故事。我并不喜欢这个游戏系列本身,但是我为这个产品自豪。我的代码曾运行在几千万用户的机器上,作为一个程序员,还有什么比这更让人满足的呢?也许有,比如让这个用户数量再扩大10倍。

        认识“古越”还是我读大四下学期的时候(2000年初)。有一天,他在QQ上蹦出来,问我一些“风魂”的问题。我当时上网主要在泡sina的游戏制作论坛,“风魂”就是那几年写的游戏之作。

     更早的时候,我比较喜欢在dos下写点东西。研究一下allegro这个游戏开发库。我翻译了allegro第3版的所有文档(为此还自己做了一个辅助翻译工具),这项工程耗去了很长的时间,从98年开始到99年中,业余时间我几乎都在维护这个东西。为了翻译不出差错,同时也阅读了大部分allegro的源代码,从中学习到了许多游戏引擎的理念。

        那些日子,时常在allegro的maillist说几句话,为一些代码做优化并迅速被allegro开发社区吸收进去。同时我也提出了许多自己的想法。不过由于新的想法需要对allegro的接口做调整,这是一个成熟的库不可接受的,和allegro的原作者Shawn通email的过程中,Shawn用很友好的语气说,如果你觉得那样比较好,为什么不自己做一套东西出来?然后我就做了,甚至第一个版本在allegro的mallist中发布。有人说,这样的东西没什么意义,allegro已经够好了(当时已经有了Windows版)。Shawn还帮我解释。

        哦,我说的就是“风魂”。甚至不到一个月,风魂就有了一个匈牙利用户,他还用它做了一个小游戏。

        这是1999年3月4日到3月8日的事情。我在网吧通宵了三个晚上把风魂的第一个版本完成。之所以日子记的这么清楚,是因为我查到了当年留下的一份记录文档。开发环境是MSVC 5,因为我不愿意(也没有足够的硬盘空间)装IE4,所以没有安装6.0的VC。

        “古越”,就是天夏的client主程,也担当了后来大话西游1的client主要逻辑的编写工作。那个年代,精通Windows写游戏编写的人不多,我也只是稍微熟悉而已。很多人刚从dos年代过来不久,DirectX的中文资料很少,且比较难查到。我很能理解他们选择使用“风魂”这个学生作品的缘故:开源+使用简单(简单的C接口)+高效(在硬件条件受限的时候,我在软件优化上下了许多工夫)。

        天夏这个小公司当时正在开发一款图形MUD,名字就叫“天下”。当时估计有很多mud迷想把mud图形化,但是做出来的产品寥寥。我只记得有一款叫作“笑傲江湖”的所谓图形mud,仅仅只是给文字mud加了点图片而已。真正意义上的图形化还没有人完成。

        显然,天夏的开发团队也没有前人的经验可以追寻,甚至他们没有开发过单机游戏。忘了当年“古越”问了我一些什么,只是最后,他想请我帮忙做一些模块,可以让游戏开发更简单一点。这个工作是有酬的,这点吸引了我。要知道当时都是穷学生,我连买块硬盘的钱都没有,显示器也已经严重老化(93年购入的时候已经是国外的电子垃圾,不知道服役过多少年了),我的开发机器中的CPU是网友的公司赞助的,主板是编程比赛的奖品,内存条这些配件用的先前一些兼职工资买的。

     所以,任何一个用自己的技能赚钱的机会都不会放过。这样,我又认识了micro,天夏当时的头儿之一,据说他当过mud的巫师,也写一些服务器的代码。不过后来我们见过面之后,一起在网易共事的日子里,几乎没见他再写过什么代码,这些是后话了。

        我写了一个支持Z buffer的2d模块。这样,他们可以简单的处理2d游戏中sprite的遮罩问题。因为需要让当时配置比较差的机器(486)能跑起来,我尽可能的用汇编优化。这些工作耗费了我一两周的时间。

        快完成的时候,我在网上询问了朋友(逆火的庞鑫,他与我同届,但是他在大学期间已经发行了一个游戏了:天惑),庞鑫告诉我说,他们为了养活自己的工作室,时常也接一些单来做。这样的单大约应该开个1500的价。当时我天真的觉得,1500实在是个天价,要知道97年的时候,我帮人用delphi 1.0做了一个完整的软件也才拿了600多点,那个用了我半个暑假。

        所以我跟micro提的价码是1000。有点意外的是micro还是觉得有点高了,不过我理解他们的艰辛(当时是一个很小的工作室,没有什么投资,几个人自己在弄),重新核算了一下,把自己花掉的时间统计了一下。按每小时20块(比家教的水平高多了,当时就这么想的)得到一个大约500的数字,micro把款打给了我。这就是我和天夏的第一次合作。

        btw,具体的数字我记不太清了,只能说大约这个数量级吧。大学毕业后我就再也没缺过钱用,对钱的数字极其不敏感,所以忘的快。

        毕业的第2天,我去了北京。在创意鹰翔待了三天。林广利是我很好的朋友,我看他似大哥一样。他邀请我去的北京。鹰翔当时的情况看起来不是很好,不过我不太所谓。总算毕业了,我觉得我*了,再也不用看老师的脸色,不用应付烦心的考试,不用担心课堂点名……

        当被问及我们应该重新开始做个怎样的游戏时,大家并没有想到网络游戏,虽然那个时候石器时代已经开始流行。我听到的圈子里的说法是,“目前国内有200个网络游戏正在开发,明年至少有20个上市,再开始做已经晚了,也没啥意思”。事实上,2001年并没有那么多国产网游被开发出来,我所熟知的一个:大话西游,可耻的失败鸟:D

        那几天我们讨论了许多,但是不知道为啥,我始终没什么兴趣。我不知道我需要什么,但是我知道那些不是我想要的。

        逆火工作室在创意鹰翔对面的院子里,我联系庞鑫出来聚一下的时候才发现这一点。太巧了,北京如此之大,此刻又如此之小。

     庞鑫是个典型的北京人,说话极富煽动性(会忽悠?不过人家也的确有真本事)。我98年在北京参加一个大学生计算机比赛时,认识的他。他倒不像我是参加编程部分的比赛,而是展出他的3d engine。98年,3d显卡还是很稀罕的年代,所以我很是佩服。

        庞鑫试图说服我加入他们的工作室,跟随一个投资者(yan dan,那个时候听说很有名,他说他帮过许多人,比如雷军)做手机的软件。据说很有前景。EPOC系统,我第一次听说,现在已经改叫Symbian OS了。我们为EPOC做一个3d游戏引擎,应该很不错的。我可以做我最熟悉的一块,在arm处理器上,用arm汇编优化2d部分(因为手机当时还不能配备3d硬件,都是软件实现,最终都需要转到2d显示)以及一些底层核心代码。

        安宁(后来为天下2写了几年的程序)当时也在那里,我挺喜欢这个人,他曾经用汇编写了一个软件3d engine。符合我心目中的牛人标准。

        庞鑫的说服工作只用了几个小时就成功了。我给林广利打了个电话,他只是叹气而已,没太说什么。我就直接住进了逆火工作室租的那间大屋子。

        那段日子过的挺自在,都是一帮好朋友,住在一起,半夜饿了就打车出去永和喝豆浆。白天叫些外卖。伴晚时分,也出去闲逛。我在北京有很多朋友可以一个个蹭饭:)。几乎都是游戏圈子的。比如,最早拉我进入这个圈子的王欣(八爪鱼工作室的负责人);为无数国产游戏“擦过屁股(修补bug并完成游戏好拿出来卖)”的余雪松(可能说起后来的kele8大家更熟悉一下)等等。

        这段日子一直过到天气开始转凉。我还清晰的记得那一天,有人通知我们第2天去深圳见风险投资的公司代表。我们连夜做了PPT,赶上第2天早上第一班飞机南下。我们只在飞机上打了个盹就被拉到另一个合作的团队的驻扎地。这个团队当时叫做wass,后来其主干有建立了家新公司唤作“数位红”,现在好象已经不存在了,不过应该google的到。

        原来投资商是再后一天从新加坡去广州的。我们在深圳只是再准备一下。这次让我领略了该怎么忽悠风险投资:)我们掐着秒表准备演讲内容,甚至连中场休息的笑话都是预备好的。

        我的部分不太需要准备,反正不是说大话,怎么想怎么说即可。所以得以有两三小时的睡眠。等天再此蒙蒙亮的时候,我们已经上了去广州的taxi。几乎是一睁眼就到了,除了困,我什么都不记得了。

        我和庞鑫的演讲部分安排在最后,会议室里,我们拼命的喝着不加糖的咖啡,中间上了三次厕所。我和站在外面吸烟处猛着抽烟的新哥们相似而笑。40多小时没怎么合眼。大家都困死了。

        投资商是宏基,看起来比较重视,派了个元老过来谈的,带了很多人。我和庞鑫的演说很成功,想来是因为我们年轻,表现的相当有激情,甚至还为技术细节吵了两句。说完了我们就回房间睡觉去了。晚上有人来敲门的时候,已经带着好消息。

        虽然我们要求的四百万美刀没有被答应,不过对方还是答应投资1.5M。我们这大摊子人一共保留多少股份不太记得了。只记得逆火工作室的哥几个分到百分之十几。

        我们需要签四年的合同,合同很厚很厚,回北京后还安排了律师给我们讲解。我觉得学到了许多。只是最后签字前的那一晚,我想了一个问题:这是不是我的追求,我要的人生?

        庞鑫曾经跟我说,没错,如果我们有15w RMB我们就可以自己干。即使大家现在一无所有,只要有技术,无论做点什么,不需要多少时间就可以赚到这么多钱,然后开始做自己更想做的东西。但是,或许有更好的路,让我们就有更高的起点,节约我们的生命。我知道逆火的兄弟曾经过的很辛苦,《天惑》做了三年多,只卖了五万块RMB,而且出版商还拖欠款项很久。但是我没有亲身经历,我不喜欢手机这个开发平台,离我的想法太远。

        在那个大屋子里,大家围坐在一起,劝我不要走。我也很犹豫。负责投资的那个头儿接了电话过来,只问了我是否真的想离开。我说,我不确定,但是我知道,这些不是我想要的。这句话,很多年后我又说过一次。每次说出来,都得到了理解。就这样,我离开了这个团队。

        下次再接着写吧,我想会一直写到梦幻西游的成功,是个很长的故事,不知道有没有朋友会一直读下去。我只是想记录这几年的历程,没有读者也无所谓。

        那些日子(二)

        我在北京生活了半年。接触北京这个城市要更早一些。大约85年的时候去过,一周时间几乎玩遍了北京所有的景点。小时候的记忆特别美好,我在那个时候爱上了北京。记忆中,*广场是那么的大,紫禁城的宫殿如此雄伟……以至于回到学校时,不知道用怎样的形容词才能形容。

        10多年后,我在学校的机房上网,泡bbs,做个人主页,写一些关于游戏的自己的想法。交了许多的网友。大家都是业余的,年轻气盛,想自己做出好玩的游戏。王欣是第一个给我发email的职业游戏人。更早的97年,国内有两家大的游戏公司,前导和腾图,有如*的大宇和智冠。可惜生不逢时,前导做不了大陆的大宇,腾图也远不及智冠。

        腾图命中注定的散掉,王欣的八爪鱼工作室从腾图分的出来。98年,王欣邀请我在假期去北京玩,他把我带进游戏这个圈子。我又有机会站在*广场,原来并没有那么大。我想,如果Mao.ZD纪念馆挪一下地方的话,广场会更宽广一些,和我儿时记忆中的一样。小时候怎么就没这种感觉呢:)。

        那个年代,我成月成月的逃课,去北京帮王欣做些兼职工作,并听他说些早年北京游戏圈子有趣的八卦,有如今天我给新人说起往事。回忆起来,自己其实什么也没做,似乎又做过点什么,反正最后一次,我拿了一小笔兼职工资。不过没有花掉,因为回到学校的时候,一个同班同学缺钱交学费,我全部借给了他,毕业那天他才凑起来还我。

        当然,身在北京,我就有机会四处拜访网友同好。随即发现,其实许多网友都已经专职在做游戏了。有些人后来再没怎么联系,比如曾经在金洪恩做《*与荣耀》的3d engine的riso,我还记得他在那个晚上,他抱怨他的后继者让代码从几万行膨胀到十几万;又比如做《独闯天涯》的郭巍,他念叨过来北京前没有钱吃饭,小组里每个人一个冷馒头就可以啃一天,脑子里只想着把游戏做出来……

        两个很重要的朋友,也是在那段时间见的面——余雪松和吴东黎。我们通过在网易个人空间(当时叫N-SPACE)交换链接认识的。他们搭档了很多年(直到今天),经历很传奇。

        刚在网上认识他们的时候,他们还是业余在做,个人网站上放着一个RTS的demo,看起来很火暴。

        据说早年他们在做别的软件,有个自己的小公司。做完个项目后,分了钱大家去北京散心,看看专业做游戏的公司是什么样子的。去过前导也去过腾图,不是去应聘,只是转转。这些“专业”的公司得到的业余者之评价是:不过如此。跟自己业余做的demo也差不多水准。

        不过腾图把他们留了下来(有八卦说,前导的头儿追悔莫及)。就是那种很随性的,“不如你来上班吧”,旅人结束了自己的旅途。据说那个时候腾图偌大的公司,已经快散伙了,留了许多半拉子产品,补不完的bug。这是我听过国内游戏圈的历史中最传奇的故事,余雪松一个人修补了四个产品,把它们做到基本可以摆上货架。我是听别人转述的,但我相信那不是件容易的事情。

     见到老余的时候,他们小组已经接受一家*公司的小额投资在做《烽火三国》。小组没做垮,产品上了市,那家*公司却先垮了。等我毕业再次来到北京,老余他们跟着谢成鸿在做kele8。

        老谢,用过笔名“小谢”。我们居然很早就有过交情,在我的个人主页创办早期,他给我email来了几篇稿子,让我放上去。有兴趣的朋友可以看看怀旧:)

        老谢早期最有名的作品是一个web象棋,不需要下载就可以在网上和人对弈。这个东西曾经挂在sina的游戏版面很久,我想他是用这个淘到的第一桶金。当然更大的资金注入来至于当时如日中天的联众。btw,第一次见到鲍岳桥的时候,我有种奇怪的感觉,中学时就在UCDOS上看到作者名字,我心目中的名人,原来也是个普通人。这种感觉在碰见求伯君时还有,等到日后见到丁磊时已经没有了。

        老余听说我正闲着没事做,甚至也没有收入。他请我吃了顿饭。一共四个人,老谢、老余、老吴,还有我。一家很小的馆子,大家骑着自行车过去,点了些家常菜。2000年的9月,老谢对web game充满信心。北京的夏天已到末尾,冬天不远了。当他邀请我去kele8的时候,我没有太犹豫。我不知道自己能做些什么,该做些什么。我知道这些朋友都有很好的技术,都有火热的激情,看起来不错,不是吗?

        我的工资是6k/月,第一个月发工资时,信封里装了5500,我没有问,我想是扣了500的税吧。工资数字对我是无所谓的东西,真的。大学没毕业时,有个朋友说,来我这里干吧,一年10万。我在心里吐了吐舌头,这么多啊,父母为我读大学的学费和生活开销,攒了十年的钱,也不过四万而已;我和庞鑫等哥几个去忽悠风投的飞机上,庞鑫说,别不好意思,以后报自己的薪酬,只管写上五位数;我想我一个月吃饭不过几百块,一年难买两件衣服,能用上几个子呢,真的是无所谓的一件事情。

        在北京的后几个月,我和安宁(以及嫂子),李民(庞鑫的同学)四个人租的屋子。在西直门外,出门就是北京最著名的西直门立交桥。老实说,并没有传说中的那么恐怖啦,我只迷路过一次而已。论可恨程度,远不及紫竹桥那个,南北不通,每次过都需要把自行车搬上搬下。

        房租2800,大约每人摊1000。我无所求,所以住的最小的一间。屋内空空,只有一张床和一口箱子。每天早上9点起床去上班,逆火的兄弟们在白石桥租的高层写字楼,我在魏公村。都不远,大家骑车即可。我的车是来北京后朋友送的,价值20块。没有后档泥板,一下雨,背后就是一条黑线。有一天下班时,魏公桥下没有人也没有车,我被黑暗角落窜出来的交警拦下,闯红灯,罚款20。他瞅了一眼我的破车,怎么没有车牌?我很想把车留给他,然后自己走回去。但是我没有,兜里只有20块,换了一张罚单。后来离开北京的时候,我把这辆破车停了某个天桥下,一年后等我再次到北京时,车居然还在,口袋里的钥匙也在。

        在kele8的日子很闲,老谢不知道可以安排我做什么。老余说,等下一个版本,全部交给我来做。我就自己给自己找事情做。我去的时候,办公室里就7个人。两个美术,一个专心做3d模型,一个只会画平面的东西,但是画的真好。我原以为做游戏需要很多很多的美术,其实不用。合理的调配人力,帮助美术节省一些不必要的机械劳动,两个人也能做很多事出来。

        程序算上老谢有4个。不过老谢写java的,老余写C++,他们技术上合不来,而老余的技术和经验高很多,所以整个底层都是老余在做。吴东黎是个很有趣的人,年纪不小,没谈女朋友。和我一样,成天待在办公室。除了打quake(技术真的很棒),没太见他玩别的游戏。你不可以说他的技术到底是好还是坏,讨论语言的细节他或许不行,但是他做东西就是来的很快。无论是用什么。他和老余是天生的搭档,余雪松设计出脚本语言,他就拿过来用,用的很好。另外一个哥们也是写脚本的,在kele8,包括以后的大部分程序员都是工作在老余自己设计出来的脚本语言和开发集成环境上。

        起初,我想写个C编译器玩儿。因为我觉得游戏做大了还是需要嵌入脚本,除了C,我对别的语言都没什么兴趣。写了一半,我又莫名其妙的喜欢上javascript和css,觉得设计的挺有趣。实现个javascript的解释器也不错,不过也没能实施这个想法。后来我读到了一本书:《C++编程思想》,海淀图书城里看到的。伫立在书架边,读了一个小时,而后就抱回了家。大约用了2天时间,没日没夜的啃,仔仔细细的读完了每一个字。

        按理说,读初中那会儿,我就喜欢上了C++。不过我的认识也就停留在了92年的国内翻译的一些C++书籍上。2000年底,《C++编程思想》这本书对我的冲击很大,我觉得我重新认识了C++。我想我应该把“风魂”重新做一遍,用C++。甚至我还觉得kele8的引擎做的不够C++,比如我们应该用巧妙的继承和类层次关系去取代那些函数指针。而且老余那个时候跟我一样,不知道可以用->*这样的操作符去用指针调用成员函数,const这个关键字也没有被准确的使用,等等。

        做产品毕竟不是研究技术,这些都是想想而已。我们只是每天在骑车回家的路上聊聊。

        只记得那段时间做了两件事:一是把原来“风魂”里的声音播放的模块移植到kele8的引擎中,让那些web game能够发声。还有就是做一个台球的游戏的技术研究。

     写了一个2d下3d效果带光照的球面渲染;以及做了一些碰撞方面的demo后,真正的kele8台球程序还是老余自己重新写的。我那个时候思维总停留在C和C++上,用不惯那些脚本。老余倒是对自己的东西使的游刃有余,就在一个阳光明媚的早上,他兴冲冲从包里拎出硬盘,推入活动硬盘匣,给我展示了一晚上的成果:一个台球游戏基本可以玩了。

     kele8的台球这个游戏无疑是成功的。那段日子,我去台球俱乐部里打snooker,听到有人谈论它,心里都一阵得意,我也贡献了代码呢。

        那个冬天还有什么?我给远方那单恋了5年的mm送了一大束百合,是在她的生日那天,没有留下我的名字。虽然她已有男友,但是后来我依然固执的打了一个月的电话。我本以为那个月的手机话费会爆掉,可实际上也不过400块多点。看来我不够疯狂,不知道李民怎样让话费一个月超过1000块的。吴东黎给我讲了老余过去的故事。那个时候他们两个单身汉合租,老余的女朋友还没有升级成妻子。一下班,就瞅见他就躲进屋子,到第2天早上要上班时,居然还没挂电话呢。

        我想我不够疯狂。

        在北京过的最后一个冬天,满是落魄。这是种内心的感觉。我觉得对不起给我发工资的人,对不起朋友。我没做出什么更有意义的事情。而大多数人都做的比我好。

        2001年的新年来的特别早,1月23日是除夕,我们的春假放的更早。

        事后我想,估计老谢明白我想离开。旧年里最后一个月的工资决定等年后再发。不过我领到了800元的新年红包。

        我实在不好意思说辞职,因为似乎我没为团队做点什么就要走。回到家,我在网上留了言说想休个长假,好好的想想未来的计划。

        每次我觉得对不起周遭的朋友们时,大家都表示出莫大的理解。我真的是一个幸运儿,拥有这样多的好朋友。每个人都能体谅我的自私。

        那个时刻,我已打定主意离开北京了。

        争取在5.1假期内多写一点,应该能写到大话西游项目的开始。原本还有很多的人很多的故事可以写,这里略过了许多。比如那些年出没在sina游戏制作论坛上的众多id:小箭2000(每年还在给我寄贺卡)、做模拟飞行的黄海、写“我的游戏梦”的指顾*等等。那两年,在北京我见了许多人,跟许多朋友彻夜不眠的长谈。听了许多故事。自己也经历了许多。

        每当我努力回忆一点,就会有如泉涌般的冒出来。甚至让我夜晚睡不着。我想人的记忆其实不会遗失,只是藏在那个角落里,等你努力挖掘的时候自然会蹦出来。

        对想出现在这个故事中,却没能露脸的朋友说声抱歉了(我挺喜欢出现在别人的故事中,我想很多人都喜欢)。不是我已经忘记你们,也不是故事里的人对我更重要。我只是随机选择了一些片段记录。

        10年前的事情,真的是很模糊了。

     最后,还是那样:谢绝转载。因为不能保证没有记忆的偏差,我希望有机会纠正。

        那些日子(三)

     2001年新年过的很忙碌。我想从大学里毕业出来的学生,第一个新年都是如此。从学校迈入社会,什么都很新奇,想和人分享自己对这个世界新的看法。大多数老同学不会太快结婚,日后离开祖国的也大多没走。所以新年里,那些儿时的玩伴、少年的同学,都会回到老家。只需要有人说声,“我们聚聚吧”,那么一定是和声一片。那个时候,女生们还不够花枝招展,男生们也没人挺着啤酒肚。

        狂欢之后,各自散去。在本地工作的,也开始忙忙碌碌,留下我一人。有时候可以去一下老同学读研的校园,跟他们吃吃食堂,打打台球,听他们聊一下自己的老板,还有一些八卦。我觉得我还存在于这个社会。

        我想许多人在年老之前,很难有这么一段时光。脑子里什么都没有,没有想做的事情,没有应负的责任,没有什么人什么事让你必须去做点什么。哦,那段时间还发生过点事情。我对追求了很多年的那段恋情绝望了。除了心口的绞痛,不记得什么细节。

     有那么一瞬间,我了解到什么是空虚。人在虚空中,四周什么都没有,无所触及。声音也传不出去。不喜欢这种感觉,然后我开始读书。

        大学毕业以前,我是不读历史的。高中会考,九门课,8 A 1 B,就是历史那一科得的B。我痛恨一切要求背诵的课程,顺带厌恶了历史。当然我数的出夏商周,春秋战国秦汉,分的清六朝五代唐宋元明清。这归功于小时候爱看各种历史演义小说。三国演义就读了四五遍,以至于中学老师还没教到出师表时,已经背的朗朗上口了。不过演义不是历史,对吧:)。

        我想,给我上历史启蒙课的是柏杨(老人在前几天去世,让我感慨了好久)。我倒是先读的《中国人史纲》再看的《丑陋的中国人》。后来又读了《皇后之死》等等很多很多。还有,在网上追看着的潇水的《青铜时代的恐龙战争》。

        第一次发现,其实历史这样的有趣。不是因为有趣的故事,而是人性,以及人性促成的社会。历史总是在重复自己,又总也不会呈现相同的面貌;人总以为自己了解过去,可以回避那些前人犯下的错误,可他们总是掉进同一个坑中。这是为什么呢?

        读大学时,我玩过一个游戏《恺撒3》,更早的版本中学时也玩过,不过没有深入。那天夜里,是一门重要科目考试的前夜。躺在寝室的床上,瞧着他们几个人围在电脑边不亦乐乎。终于,有一关他们犯了些错误,引起了恺撒军团的大规模进攻,无法收拾残局。时间很晚了,因为第二天有考试,人就散了。

     我觉得有趣,就试着载入存档,看看能不能扭转乾坤。一个晚上过后,我成功了,白天的考试却挂了。满不在乎的我,爱上了这个游戏。

        特别喜欢这个游戏系列,胜过《文明》和《模拟城市》。从这里面,让人体验到了古罗马人到底怎样在生活。虽然只是游戏,许多设定是为了游戏的娱乐性而设,但是就是让人觉得,那种生活方式是合理的,恰如其份的,真实的。罗马城里那些高悬在空中的输水管道,街头的公共浴池,给了我无限遐想。

        在家的那段日子,我买了份正版的《法老王》,在家里盖金字塔。看着那些小人在尼罗河泛滥后留下的肥沃的河床上耕种,农闲时大量的人力被调配去盖金字塔。哦,奇迹原来是这么诞生的。这就是文化呀,游戏是多么好的文化载体。

        我想做一个承载中国古文化的游戏。

        所以我开始啃史记,读资治通鉴,还有一些学术研究方面的书,比如人口,风俗方面的专著。很多大部头虽然只是翻翻,但也觉得自己似乎不那么无知了。不过成天读书,人也显得疲惫不堪,没有人和事管着,一天要睡12小时才够。白天也总是睡眼惺忪的。我想,长期这样下去也不行,得有个计划。

        古越打来一个电话,先是很神秘的说他们找到了投资,说对方是个大公司,暂时还没谈完,需要保密。吱吱唔唔了一下,忍不住告诉我,那家公司正是网易。

        聊起网易,倒是让我有了一些兴趣。我的第一个email就是网易提供的服务。大多数志同道合的朋友,都是在网易的服务器上建立个人主页之后才陆续认识的。那时觉得网易是中国最大的网络公司,嗯,大公司,据说还在nasdaq上了市。

        不过我对古越说的网络游戏,没有丝毫兴趣。mud我怎么都没玩进去,UO显然不如diablo有趣,EQ就是一群傻鸟在那里围着几个多边形按鼠标,隔一会儿还要坐地板。据说丁磊眼红上了《石器时代》,这个游戏我没玩过,不过看起来也是日式RPG的末流产品吧。

        我说,现在全中国都在做网游呢,才开始做是不是晚了点?

     真的,的确全中国那个时候都在做网游,后来那么多人给《天下》和《大话西游》带上了首款国产网游的桂冠,让我唏嘘不已,真的是成王败寇啊。

        那几天,另一个朋友也在和我联系,王华逵。

        认识王的时候他在金字塔做程序员,书生气质。我那时还在上学,假期里去深圳找他玩儿。金字塔对员工管的挺严,我进了金字塔的办公室的时候,他跟我说老板不在,还没下班,等下班我们出去边吃边聊,现在得坐岗。我看了他先前做的一个网络俄罗斯方块,据说在他们办公室里很流行。甚至因为大家上班打游戏,而被老周给禁了。当时他在做一个网游:《人在江湖》。我想,这是我知道的第一款图形mud,至少比《天下》早上许多。只不过更mud一些,一个个的小区域场景,正如mud中的文字被图形化出来。client是3d的,很早期的3d,技术不太成熟,打斗的时候有些简易的动作,但主要还是靠文字拓展玩家的想象力。之前的《江湖》这款游戏很糟糕,所以我对人在江湖也没什么特别好的印象。

     晚饭时我们聊了许多,王华逵还叫了几个朋友一起。有一个据说是江湖的程序员,已经离开金字塔了。明显他自己也觉得自己在程序方面没什么造诣,说了一些很搞笑和低级的程序bug。反正,江湖这个产品没做好是应该的,卖的很好,不是吗?老周应该挺满意。好象还有个做游戏网站的朋友,说起网站的流量之类的事情,我那个时候的个人主页的流量相对还不错的呢。

        因为只有我一个人是学生,大家讨论了一下关于毕业生最喜爱的几个南方热门的公司的情况,比如华为的待遇。我饶有兴趣的听着,没有什么想法。

        晚上,窝在金字塔的办公室里看动画片。一个胖子的电脑在放《攻壳机动队》,片子和人都给我留下了深刻的印象,胖子说他叫陈重,人如其名,一下就记住了。他还给我看了他画的《江湖》里的大侠,动作很帅。这个人后来负责了天下二的美术,世界真小。

        夜里很晚了,我被带去员工宿舍睡觉。全是上下铺,天气很热,没有空调。桌上的电风扇呜呜的吹着,我觉得比学校的寝室好,因为不熄灯。

        上铺是个新毕业的大学生,说是找工作找过来的,没想过做游戏,只是找工作而已,目前试用期,1500一个月。我随口提了些技术方面的话头,感觉对方很茫然,就把话题绕过去了。心里想,这个世界真奇妙。好多有志于游戏开发的热血青年不得门而入,觉得国内做游戏的公司都是些神圣的地方,很难进入。而另一边,人才市场上随便摆个摊,收几份简历,会写几行程序就来做游戏了。有些游戏产品做不好,还真不是什么奇怪的事。

        王华逵说他现在东莞有个公司,正在开发游戏。还有,给游戏写剧本的是个名人呢,我跟他提过我喜欢《悟空传》,正是今何在在那里。冲者猴子的名头,我说好吧,我去你那看看,散散心。

        南下的第一站是广州,下了飞机是古越接的机,我第一次见到真人,大家很开心的聊着到了公司,micro执意给我报销了机票。我倒真的没点积蓄,有人报销路费自然是高兴的,不过有点困扰的是该让广州的公司买单还是东莞的。

        网易的办公室在广州最豪华的地段。狭窄的街道,高耸的大楼,橱窗里玲珑满目的商品,墙壁的装潢有点陈旧,我觉得我处在电视剧中的香港。办公室就在那个川流不息的十字路口边的楼顶,36楼,我们一直称呼这个办公点。

        透过落地玻璃看那楼下的小车,火柴盒似的,感觉很奇妙。

        许多人拥挤在不大的办公区里,micro给我一一介绍。他们一伙人已经确定并入网易,然后新招了许多人,主要是美术。不过在文件上,大多数人暂时还不算网易的正式员工。大家似乎和老网易的人有点隔膜,我想刚合并的公司就是这样。

        聊起美术部门里那些五颜六色的头发,听说还有一段趣闻。丁磊起初很不高兴电梯里有人指指点点,不知道顶楼的公司正在做什么,都是些奇装异服的人。曾经“下令”说,你们把头发剪掉、颜色洗掉,再来上班,结果却不了了之。因为有个白发的哥们道,要么我们都不过来上班算了,一呼百应。

        这天我认识了刘琪和周云,都与我同年,小我几个月份。我很奇怪为什么美术部会有两个头儿,不过没问。周云的性格我很喜欢,为人很讲义气,长的很帅,一看就是很得女人缘的那种。多年之后他和我讲他的故事,居然他女朋友最后因为迷上大话而最终分手,网游啊,祸兮福兮。

        晚上我住在古越家,他刚买的新房(我猜是因为天夏卖给了网易,股东都得了些好处吧)。他的女朋友正在武汉读大学,学文的。时值寒假,也住在他那。我随便聊了两句,提到想读读范文澜的《中国通史》,她说她正好在学校图书馆里借了一本,就拿给我去看了。

        micro和ten说想一道去拜访同行,他们在国内游戏圈里没什么人脉,随我一起去多交一些朋友。ten是天夏服务器部分的主程,挺有想法的一个人,是天夏工作室的元老了。聊起来就知道是个mud迷。我猜想天夏的几个人就是因为mud走到一起去的吧,我不玩mud,这方面没什么共同语言。

        我们乘火车去的东莞樟木头。micro提了个很奇怪的要求,让我别跟王华逵说他是谁,只说是个朋友。我说,讲了也没关系吧,最后还是从了他的意思。或许micro当时觉得,被网易收购的事情还需要保密,不方便说。只是最后让王猜出了他们的身份,好不尴尬。

        在樟木头我倒是如愿见到了今何在。只是一面之缘,打了个招呼,没有聊什么。他们在做《不灭传说》,剧本是今何在的《若星汉天空下》。这是个网络游戏,据说主打欧美市场,首先做的英文版。

     王倒是风光了许多,两年前他陪着我乘公交逛深圳,与我一起挤火车站的售票厅,陪我买车票。如今他只需要打个电话叫来司机,乘上公司的小车带我们转悠。去到当地一个新开的楼盘,谈起来,说是公司的员工工作满十年都能得到一套房子。从小到大一直住在一排排火柴盒一样死板的社区里。我第一次见到公园般的小区,欧式的花园,清澈的池水,从狮子头样的雕塑里喷出来。环绕着花园的房间,明亮的落地窗。我想,以后一定要让父母住进这样的地方,享受生活。

        聊到《不灭传说》这个游戏,我从自己老本行的角度提了些技术问题,想知道他们怎么解决的。国产游戏到那个时候还没有什么成功之作,大多数卡在技术上。比如内存占用的问题,王说的很轻松,我们打的是欧美市场,人家早已经普及128M内存,不用太考虑这些。我心里笑笑,国内64M内存已经挺奢侈了。毕竟那个时候我刚从学校出来,烂机器用惯了。

        华奎在饭桌上私下里跟我说,过来一起干吧,一个月工资7k,另外再算别的待遇。我说,我考虑一下,但自己知道那只是礼貌。条件挺好,但不是我想要的。

        晚上,华奎让公司的行政帮我们在一家四星酒店开了房间休息。我和micro一间标间。micro跟我说,他们想了好久新项目做什么。最后考虑到西游记的mud挺有人气,一些做西游记mud的巫师也过来了。可能会做一个西游题材的网游。

        我说我可以帮忙,但还是想在家里*一些。反正我主要也只是做引擎,稳定了后就没多少事了。不如给你们再做次网络兼职吧。

        就这样,第二天我去了深圳转了转,见了几个老朋友,然后就回家了。

        那些日子(四)

        2001年的春天,我用C++把“风魂”重写完毕。这个工作在北京时开了个头。起初是和余雪松聊kele8的engine时,萌生的一些想法。老余告诉我,他做过一些评测,发现大部分CPU时间消耗在了flip backbuffer上,大约占50%,其次是字符串的处理。(后来这一块的优化,我离开北京后老余也做了,应该是和我的思路类似,做过以后,就能发现更多可优化的热点)

        我考虑了几天,突然有了些灵感。我想我找到了方法解决这个问题。只是古老的脏矩形算法而已,好多人尝试过,可惜都没有用好。我想我可以换条思路解决的好一些。

        再就是阅读了MFC中CString类的源代码。因为吴东黎说,好多人不用MFC,但是离不开这个string类。他把这个类从整个MFC中剥离了出来用。我也不用MFC,不过还是想,有这么好用吗?随即读了一遍。因为正好在重新学习C++,我就自己开始写一个string类。

     这两块东西让我把“风魂”的代码用C++翻新了一遍。如今回头来看,代码很混乱,没有章法。但是我想它们见证了自己的历史,至今仍放在主页上供人下载。

        没有哪个程序员的代码一开始就能写的成熟稳健,我们都经过幼稚的年代。

        古越在网上告诉我,他想用我新完成的风魂C++版本来写新项目的client。不过还需要我做几个扩展模块。我想总是要练练手的,何况可以拿兼职工资。在家这么混下去,总不能一直吃爹妈的。古越还是想让我加上Z-Buffer的支持,但我觉得那不是一条正确的路。想了一下,决定实现另一种解决2d场景中前后遮挡关系的方案。可以不增加太多额外的数据量,而且处理速度比较快。

        在此之前我估算了一下整个网络游戏client需要的图片资料的数据量,得到一个吓人的数字。对于当时主流的64M内存配置来说,不花点心思,是跑不起来的。

        大约做了一个月,我把一堆代码和几个example提交给广州,并拿到了4000块的兼职工资。这让我很欣慰,至少我在家没有白吃白喝。而且,天夏被网易收购以后,micro明显大方多了,呵呵。

        这种悠哉悠哉的日子也只过了这么一个月。另一个人找到了我,胖肖,肖海彤。

        肖海彤这个名字,96,97年的时候在cfido网上很出名。我老在全国的技术区里看他发信,有过一些笔谈的经历。写程序这行当,他绝对是我的前辈。那些天,我们在网上聊了许多,他直言是因为网易才跟我联系,但我们聊的都是些别的。我记得他给我转了一些旧邮件,关于*啊宪政之类的。我本不关心政治,可读了后对政治也有了兴趣。我想我是从那个时候开始仔细考虑“*”和“个人意志”这些问题的。

        肖海彤是丁磊的同学。网易当时还设有CTO这个职位。CTO在北京,似乎跟广州有隔阂,基本管不到广州来。肖海彤正负责广州网易的技术部门,广州也几乎是网易全部的技术力量所在地。

        丁磊一定是受不了我们这么一天天闲聊,没过几天就直接给我打了个电话。我想丁磊的口才并不出众,至少当时对我没有什么特别的感染力。只是我在家待的实在是有点无趣了,我说,那我去广州帮帮micro的忙,不过我想*一点。丁说没问题,帮你在公司附近租套房子,有阿姨帮你打扫卫生,屋子里也配好电脑,上班不用打卡。就这么定了,机票明天ems到。

        事实上,后来我只让阿姨去我那打扫过一次卫生,而我自己连周末也是泡在公司里。我想既然要做,就一定要做好。

        网易97年成立,当时只有7名员工。当2001年4月8日,我在入职单上签字的时候,工号是92。员工离职,工号是保留的,即使日后再回来,也是领个新的号码。我认识好几个离开网易又回来的同事。而我的工号,从92到0092再到G0092,没怎么变过。

        我猜,当时网易的北京上海广州三地的正式员工加起来差不多只有五六十人吧。但实际上办公室里看起来的人更多一些。micro他们天夏的收购手续还没有完全办完,许多人拥挤在36楼,而我是直接入职网易技术部的。

        在胖肖的办公室里,他满是歉意的对我说,由于制度上的原因,只能给我一万一个月的工资。因为我的级别是6级,在新员工里已经很破格了,如果再高恐怕影响不好。而6级员工薪资最高这么多。至于住房,房租是1600一个月,如果公司来支付的话,手续上不好办,所以得我自己承担,额外会有800一个月的住房补贴。扣完税以后,可能比一开始许诺的少许多。

        我说无所谓的。这么说也真是这么想。而且,这个数字听起来不错,5位数耶,可以小小的满足一下虚荣心。这也是我最后一次关心自己的薪资,后来再也没注意过。直到今天我也不知道到底每个月公司给我发了多少钱,银行的户头上从来没刻意去查过帐。

        入职的那一天,天夏的fishman离开了。我跟他就那么一面之缘,没什么印象,也没太多好印象。我在36楼底下的农行办工资卡的手续时,天夏原来的行政mm也在,她跟着fishman离开。很清秀的女孩,漂亮,所以印象深刻。她也是在那办些公务,或许是转帐吧。我们闲聊了几句。我知道网易大约花了10万美金收购天夏。今天看来这个数字很便宜,但在那个时候,我想至少fishman觉得赚了。我也觉得赚了,就这么忽悠一下,然后全身而退。人和人的想法还就是不一样呢,有人就想做点事情,有人就想赚点钱。

        赚钱为了什么呢?我仔细想过这个问题。钱是一种媒介,代表了一种对社会资源的调动能力。所有的不公平,都是缘于资源分配。我们需要有思想有能力的人来更加合理的调配社会资源。

        晚饭是丁磊请客,在隔壁的蕉叶吃泰国菜。丁是个没有架子的老板,略微有些霸道。饭桌上还有dingdang,跟肖海彤一个办公室的。我们聊起来挺投机。其貌不扬,据说应聘网易时失败了几次,不得伯乐。我看是因为过于谦虚了的缘故吧:)。我们聊到我的个人主页,说起N-SPACE这个网易的产品,很可惜,那个时候已经停止注册了。dingdang说其实应该好好弄下去,后来网易的个人主页又开放注册了好长一段时间。

        夜里,我回到了属于自己的小窝。就在公司对面的一条小巷子的尽头。与外面的繁华截然不同,这儿非常的安静。一对和善的老夫妻租给了我,虽然外观破旧,但内部温馨,甚至有一口金鱼缸。

        很累,床很舒服。第一次一个人住这么大一间屋子。当从清脆的鸟叫中醒来,赤脚踩着清晨地板上的那一缕阳光时,我想这是一个新的开始。

        那些日子(五)

        今天已经开始上班了,最近很忙很忙。在调游戏的数值,很繁琐的事情,还要写程序去模拟。整个项目也需要人去照看。

        这个系列,我想会坚持写下去。但是不想成为自己的负担,我想这样才能写的自然。因为都是写一些真实发生的事情,和身边的朋友,按记忆按自己的理解去写就好了。不像写小说,会担心有逻辑上的漏洞,会困扰于故事中每个人的结局该怎么安排。所以,挖了坑不知道该怎么填上这种事情多半不会发生的。

        已经开始有朋友写email跟我聊这几天我写的这几篇东西了,有人抱怨为什么没写谁谁谁:)。这个问题其实上次解释过了,我是个不善于回忆和叙述的人,每次从记忆深处挖点东西出来