从现在项目的开发中发现,目前Slipstream的Message模块有点重量级,可以从这么几个地方来改进..首先,目前的MessageService是通过handler.lst列表的方式来找到对应Message的Handler,那么这个无疑加重了程序开发中的复杂程度,一个游戏,不下三四十个OPCODE是家常便饭,那么开发的复杂程度就会加大..
因此,参考JPA的实现,作出如下改进:参考Hibernate的EntityManager中packaging包里的实现,采用JarVistor+Scanner的形式进行自动发现..
同时加入@MessageCreator,@MessageDecoder等Annotation,对开发进一步进行简化,减少对接口的依赖,并且采用Annotation的形式更易于去开发,也能对轻量级实现的时候每个Message就只写在一个类当中..
其次,引入ServerHandler和ClientHandler的概念,因为像我们开发永恒之塔的模拟器当中,服务器和客户端消息的封装机制是不一样的..
接着,加入@MessageProcessor,给对应GameProxy的每种消息提供默认实现..在GameProxy中引入boolean handleMessageImpl(Message msg),那么对handleMessage就能作出如下改写
void handleMessage(Message msg){
if(handleMessageImpl(msg)) return;
//the code for finding default processor
//...
}
然后这样就能支持自定义处理和默认的处理,既能方便开发中的自定义对信息的处理,又能支持默认的实现..那么在开发过程中就能大大的简化..
今天就说这么多,意图只是抛砖引玉..
希望更多的人爱上使用Project Darkstar进行开发..
有人跟我说过,要建立个Project Darkstar的圈子..我何尝不想呢,只是JE规定只有原创该方向文章超过10个才能建立..我又不愿意胡乱写10个文章,为的是给大家提供的都是开发当中遇到的种种问题和具体的解决方法..
以后开发当中有其他的开发的遇到的问题和解决之道,会在这里跟大家分享..
还有就是小弟马上面临大学毕业了,还没找到工作,因此想和几个志同道合的同学创业,谁知道关于现在建立公司和网游方向的东西..希望能指导一下小弟..
分享到:
相关推荐
Project Darkstar属性文件配置. Project Darkstar属性文件配置. Project Darkstar属性文件配置. Project Darkstar属性文件配置.
project darkstar 资料很少 中午资料更少,这个事因为文档的翻译过来的 中英文对照版本,翻译的不好,但是还能凑合看,看不懂中午的地方 对照英文看。
Project Darkstar客户端开发指南,主要介绍用Project Darkstar进行游戏开发的基本知识。
ProjectDarkStar与Ecplise集成.doc 刚做好的 图文并茂
Project+Darkstar服务器开发指南
这篇文档设计用与教你知道一些开始开发一个游戏服务并且在PDS 系统上运行的知识。我们称这个编程为PDS 应用,你将在这里一些看到一些技巧和其他的PDS 文档。
Project_Darkstar服务器开发指南
具有TLS / SSL功能的Project Darkstar服务器(以前由Sun Microsystems,Inc.赞助)的扩展。
具有TLS功能的Project Darkstar服务器(以前由Sun Microsystems,Inc.赞助)的Java客户端api的扩展。
darkstar server安装程序以及说明文档
darkstar,sun公司的游戏平台,2008年1月发布,可用来开发pc多人游戏,也可开发手机多人游戏
darkstar-as3-0.9.8.darkstar-as3-0.9.8.darkstar-as3-0.9.8.darkstar-as3-0.9.8.
DarkStar 是 Sharp Zaurus 的 HTML 编辑器。 它是使用 C++ 和 Qt/Embedded 开发的。 它的目标是成为一个功能非常齐全的开发工具,同时保持简单易用。
适用于RedDwarf Server(以前称为Sun的Project Darkstar)的Android客户端api。 它主要基于Karel Herink的JME客户
Java游戏服务器的工具箱。 该项目扩展了由Sun Microsystems编写的开源游戏服务器“ project darkstar”。 它提供了一些有用的工具,例如telnet管理,对象浏览,网络服务的基类。
如何使用Project Server 2007中的预算资源
暗星计划 自2020年4月25日起,该项目已弃用,请访问Topaz项目
DarkstarUploadServiceClient 这是一个cordova插件,它为Web应用程序提供了一种使用Messenger类与后台服务进行通信的方式安装在... cordova plugin add https://github.com/superdecimal/darkstar-cordova-plugin
例如在Darkstar项目中,架构师们考虑的重点就是如何将多人在线游戏的游戏逻辑与系统的可伸缩性分离开来,让游戏的开发者只要遵守少量的规则,就能够像编写单机游戏一样编写大规模多人在线游戏。又如REST架构风格,...
Dockstar:Darkstar变得轻松Dockstar让您可以轻松地使用Docker来配置,构建和部署新的。快速开始确保您具有Bash shell(Mac OS和Linux自动具有此外壳)并已安装 。 在终端中运行git clone ...