万恶的sf.net竟然拒绝我们的申请,理由是registration description内容不够清楚!我看gameframework的描述也就那样嘛!真是有点怀疑是不是因为小虾提到目前的开发者主要都是chinese,有种族歧视?!算了,不跟他计较这个,赶紧重新写一个。
大家看看我现在写得这个怎么样,够清楚了吧?有什么缺漏的欢迎大家提出,越多越好,能够写10k绝对不写9.9k,不求最精炼,只求最详细!让他们sf.net上面的人看得头都大了才好。当然,不能够超过10k,这是一个大小限制。由于小虾现在正在睡觉当中,所以只好我来进行翻译工作了,翻译的结果也会尽快贴出来,让大家斧正。
.Game Framework 的目标是在.NET Framework的基础上提供一个标准的网络游戏模型,包括对象模型、引擎模型等等。该框架的作用可以比照.NET Framework对于开发普通商业应用的程序员的作用,所不同的是,我们关注于大型网络游戏的开发。.Game Framework更主要的是提供游戏开一个开发平台,.Game Framework将提供丰富的类库方便开发人员开发游戏,提高游戏开发效率,更重要的是为游戏的开发提供一个标准。所谓大型网络游戏的含义是,支持万人以上同时在线游戏,虽然这个也许只是最终目标。
.Game Framework 的开发过程基本上使用managed的开发语言,例如C#、VB.NET以及managed C++,但是引擎部分也许会考虑效率问题而部分或者全部采用unmanaged C++编写。但是无论如何我们都会提供managed的接口,使得利用该框架的游戏开发者能够在一个纯粹的managed语言环境下进行开发。而游戏对象模型将会完全限制使用managed的方式进行开发,以提供更好的安全性和健壮性。这么做的理由是,该框架的一个目标是提供让玩家参与部分游戏设计的能力。由于玩家的设计水平可能很差,或者玩家有恶意,造成玩家设计的部分可能对整个游戏造成危害,为此我们必须尽力加强游戏对象模型的安全性。
.Game Framework 里面的引擎包括:规则引擎、网络引擎、脚本引擎、图像引擎等等。其中图像引擎并不是我们的关注重点,我们的关注重点将是下列技术的实现:
1、提供分布式计算能力,也就是将现行类似的大型网络游戏当中的服务器功能分散到各个客户端。当然,我们会尽力保证数据与计算的安全。该技术主要用于减轻架设大型网络游戏时对于服务器的要求。
2、提供玩家设计游戏能力。这里的设计是指在游戏设计者设计整个游戏的时候所允许玩家进行的设计,也就是说玩家的设计能力可以被限制在一定的范围以内。这种能力可以参考现有的Terrarium游戏。http://www.windowsforms.net/terrarium
但是有所不同的是,我们的框架并不限定游戏的内容,可以接受的形式有(但不仅仅限于):类似terrarium的,类似starcraft的,类似diablo的,类似Everquest的。
3、提供比较强大的灵活性。我们的最终目标是能够利用.NET里面的reflection.emit动态生成部分的内容,例如执行脚本,以替代过去需要解释执行的一些功能。由于速度明显比解释执行要快,所以能够提供更为强大的动态更新能力。