磁芯大战是贝尔实验室里面的三个年轻人在业余时间折腾出来的一个小东西,他们将冯*诺依曼的理论变为了现实,让程序实现了自我复制和传播。
但是,这种复制和传播只是局限在类似于“达尔文”这样的虚拟机平台中,里面的所有资源,都是已经限定好了。
这个游戏虽然是病毒的鼻祖,但实际上它并没有创造病毒,充其量仅仅只是一个流行于程序员这个小圈子内的小游戏而已,大家通过一种名为redcode的汇编语言编写代码,按照自己的算法制造战士。
不过,这个游戏,却启发了不少人,他们觉得,这些程序,可以不用仅仅局限在这个平台上,而是可以直接运行于真实的艹作系统和硬件平台中。这其中,就包括莫里斯的儿子,罗比特*莫里斯,他编写了著名的莫里斯蠕虫,一举摧毁了无数号称安全无比的计算机系统。
而林鸿也是从磁芯大战这个游戏得到启发,觉得可以直接将吴东他们编写的这个虚拟机转为这样的平台,让他们直接在里面编写游戏程序,然后在里面运行。
这样一来,他们编写的这个虚拟机平台也有了用武之地,让他们在玩游戏的同时又锻炼自己的编程能力。
当然,在林鸿看来,“磁芯大战”整体来说还是太原始了一点,不但界面原始,可使用的编程语言也原始。
他对吴东说:“磁芯大战毕竟是几十年前计算机技术刚刚萌芽阶段的游戏,用于现在的话,过于简陋了点,也没有什么趣味姓。我的意思是,仿照它的原理和思想,打造一个全新的更为复杂一点的游戏。”
按照林鸿的意思,程序员的游戏,就应该像磁芯大战这样,和普通的游戏完全不同,游戏的角色,需要自己通过编程来产生,包括这些角色的动作和应对。
“等等,我拿纸币记录下来。”
东吴听到林鸿的构想,眼神越来越亮,他生怕会忘记任何一个细节,立刻找来笔记本和笔,快速地将林鸿的想法给记录在本子上。
要是在之前,林鸿直接跟他说要打造这样的一个可以让程序员自己编写“战士”的对战游戏平台,他肯定会觉得这实在是太复杂了,根本完成不了。
可是,在听说了“磁芯大战”这个游戏之后,他已经对这个游戏的基本原理有了一定的了解,心中已经有一定的底气。
林鸿继续说道:“磁芯大战的目的是争夺内存资源,它们就像是一个饥饿的贪婪者,不停地进行着吞噬,这个设定有点过于简单了,表现形式也很单一,缺乏趣味姓。我们可以变通一下,既然是战士进行对战,那就干脆设定为常见的对战模式,角色也不再是简单的两个小方块,而是可以引入更为形象具体的图形。”
“类似于拳皇那样的格斗游戏吗?”吴东一边记录一边问道。
“嗯,后期倒是可以考虑这样。”林鸿点点头,“不过,前期的话最好是再简化一点,拳皇这样的格斗模式有点过于复杂了。”
拳皇游戏的格斗,完全是在真实格斗的基础上进行了精简,将主要的一些攻击和格挡动作给抽离,建立模型。
这样的游戏如果能做成功,的确有很大的趣味姓,但是这样一来,对于吴东他们来说的确过于复杂了点,其中的变量和参数太多,只能将其作为后期的一个发展方向。
林鸿之前也只是一个大概的想法,现在也是边思考边说。
“这样……攻击方式简化一下,不要分什么手、脚攻击,直接将攻击手段抽象成一种,也不要分什么重拳轻拳,所有的攻击威力都只有一个标准。”
“如果只是你一下我一下的对打的话,这也没什么意思吧?”吴东停下笔抬起头问道。
这时,林鸿已经心中已经有了新的想法,他脸上露出笑容,道:
“不一定要肉搏,可以做为射击游戏,这样就有意思了。”
“对哦,射击游戏的攻击方式比较单一,也很有趣!”吴东恍然大悟。
接下来的思路就比较清楚了。
他们两个一个问,一个答,就相当于是在进行一场头脑风暴,渐渐地将这个新的游戏给完善了起来。
最终设计好的游戏是一个坦克对战平台,甲乙两方分别是两辆坦克,刚开始出现在战场的时候,拥有一定量的血槽,相互之间可以进行发炮对射,如果被击中的话,就扣掉一定血量,如果持续中弹,血槽耗尽便爆炸,输掉比赛。
坦克可以在战场上随意进行移动,大炮的方向也可以随时进行调整。
坦克就相当于是磁芯大战中的战士,需要大家对其进行编程,给它指定合理的攻击策略和闪躲策略,谁的策略最科学最合理,谁最终就可以赢得比赛。
也就是说,这个平台以后的比赛,涉及到的主要是算法的比拼,以及对算法的实现能力。
为了让参加这个游戏的人更多,林鸿觉得应该支持多种语言,将常见的c和java都要包括进去。
吴东:“老大,这个游戏叫什么名字好?坦克大战?这个名字好像太普通了,容易和其他的坦克游戏混淆。”
“是啊,坦克大战虽然是个很好的名字,不过这个名字已经被很多游戏使用过。为了区别,就叫机器人坦克吧,英文名robotank,在刚开始的时候,就做好国际化的工作,让国外的高手也能够加入这个游戏中来。”
编程本身就是一个非常国际化的工作,程序员之间的沟通基本没有语言障碍,能够编写出优秀的程序,其英文水平也不低,至少其英文阅读和撰写能力不会低。
这是没办法的事,因为计算机领域的著作和资料,大部分都是英文版的,例如英特尔cpu的技术文档,pdf格式的,一个个都是几十上百兆的大小,这些文档,很少有人会有专门会去做翻译,因为其中涉及的专有名词和原理太多,非业内人士翻译不了,而业内人士觉得既然你都已经达到了要看这些文档的地步了,那么你阅读这个文档也就没有障碍。
之前吴东他们做这个项目的时候,一本十几斤重的技术文档翻来覆去不知道翻了多少遍。当然,也不是整个全部看,只是在其中查找需要的资料。
现在还只是将robotank的框架给设定好,要想真正让这个游戏实现可玩姓,还有一段很长的路要走。好在对cpu的模拟工作已经完成,接下来的事情倒也不复杂,主要有两个方面的工作。
首先是图形化,实现画图函数,需要将坦克以及炮弹攻击这些元素全部用图形显示出来。
其次便是跨平台的编译器。最终编译的坦克文件代码,要能够直接被虚拟机给读取并执行。
不过这些工作对林鸿来说都不是问题,不过他自己却不会亲自做这些,都要交给吴东他们自己去做。他只负责提出需求和框架,细节方面的实现他不管,留给吴东他们练手。
当然,关键的地方,林鸿还是会负责帮忙搞定,至少这个项目要能够继续下去。
林鸿之所以对这个项目这样热心,一方面是为了帮吴东,另外一方面也有自己的一点私心,他希望能够积极推动这个游戏在国内高校流行起来,从而能够发现一些这方面的人才。
不过,暂时他还比较忙,先将公司的事情忙完之后,再来做这个事情。
吴东见林鸿又列出了一个长长的列表,将整个项目分割成好多步骤让他们去实现,不由想起他今天来学校的事情,于是问道:“老大,你这次回来,辅导员那边去过了没?”
“嗯,已经去了,刚刚提交了停学申请。”
“停学?”吴东一愣。
“是啊,暂时不上了,以后如果有时间有心思的时候,再看吧。”
林鸿也有些舍不得他们这几个室友,在这里虽然只有短短的一段时间,但是他去却体验到了大学生活的真挚无瑕,也交到了几个好朋友好兄弟。
“那你打算去哪里?”吴东追问道。
林鸿笑笑:“以后很长一段时间我都会在上沪市,如果你们去那里玩,直接打我电话,我把我的新联系方式留给你们。对了,还有我网络上的联系方式。你们有没有玩oicq?”
“对啊,直接使用oicq就可以在网上即时地进行联系了!”吴东一拍脑袋,“老大,你的oicq号码是多少,我加你为好友!”
“10108。”林鸿报上自己的oicq号。
“多少?”吴东以为自己听错了。
“10108。”
“不会吧?108号?”
这个时候,oicq这个软件已经开始在校园里面流行起来,随着注册人数的增多,号码也越来越靠后,他们申请到的号码,已经不是1开头的了,而是五或者六开头,也就是说,至少有四五万的用户了。
“我和这个软件的作者认识,当初帮忙进行了这个软件的内测。”
老大就是老大,连oicq这个软件的作者都认识,吴东对此除了佩服没有其他感想。
林鸿再呆了一会儿,张达和李奇两人也回到了寝室。
他们对于林鸿要停学回去开公司,也非常地舍不得,纷纷表示有机会一定要去上沪市去他公司看看。
傍晚的时候,他们几个在学校附近的一个小餐馆中聚餐,这一次张达和李奇两人又喝醉了,一直叫嚷着要再和林鸿喝几杯,一如当初他们刚刚认识成为室友的时候。
(未完待续)