admin管理员组文章数量:1535256
2024年6月12日发(作者:)
维普资讯
第35卷(2007)第3期 计算机与数字工程 179
基于UML的网络游戏对战平台设计与研究
熊丽华
(广东水利电力职业技术学院计算机系广州510635)
摘要.阐述利用Rational Rose可视化建模工具建立网络游戏模型的过程,以及设计游戏协议,如何打包和解包游戏
协议的一种方法。
关键词UML Rational Rose网络游戏游戏协议
中图分类号TP399
1 引言
信息服务器主要进行用户的注册、登录验证、保存
相关日志信息等功能,这种分离实现的方式可以减
网络游戏在中国游戏市场出现不过两三年,正
轻单个服务器系统资源不足的压力,将没有直接关
式投入商业运营的游戏数目已超过100款,一些企
联的模块独立出来,使结构更加合理。以网络游戏
业如盛大、联众和中游也因为网络游戏而声名鹊
中的五子棋为例,阐述网络游戏的需求分析过程。
起,并从中获得巨大的经济利益。棋类游戏是中国
3.1.1会员注册
人比较喜欢的传统游戏之一,本文以网络五子棋为
在网页的首页提供会员注册功能,会员特征可
实例来阐述一个网络游戏的设计流程,并利用当前 以设置为:用户名、呢称、密码、积分、注册日期、状
比较流行的UML建模技术为核心,以软件开发流
态。注册信息应包括:真实姓名、性别、年龄、身份
程为主线,系统的研究了网络游戏对战平台的建立 证号、会员号、电子邮箱、职业等。
过程,在本文中还将阐述网络游戏设计中的关键点
3.1.2网络游戏管理接15/需求
即游戏协议的设计。 网络游戏管理接口主要用来查看和管理在线
2 可视化建模工具——Rati0nal Rose
用户和正在进行的游戏,同时维护用户的资料和游
戏参数。分为Web管理方式和客户端管理方式。
开发一个系统必须有一个好的设计模型,设计
(1)Web大厅管理模块
一
个合理的软件模型就如同建造一栋大楼需要蓝图
①在网站主页上显示当前在线总人数
一
样重要。在软件工程早期,主流是结构化编程,这
②在大厅页面显示一定数量的房问和各房间
种开发方式既费时并且出现问题也很难更正,而今 的在线人数
面向对象编程已经走人主流,代替了结构化编程方
③大厅上针对每种游戏有规则说明
式,因此UML这种面向对象系统的标准建模方法自
④房间可以开放或关闭(由管理员控制)
然代替了传统的建模方法。而Rational Rose作为
(2)客户端管理模块
UML语言的开发工具,是分析和设计面向对象软件
①身份验证窗口:使用客户端软件登录游戏
系统的强大的可视化工具,可以用来先建模系统再
时,弹出身份验证窗口,验证用户名和密码的正确
编写代码,从开始就保证系统结构合理-- 。 性,验证合法后,用户可进人大厅。
3 网络游戏模型建立
②当在大厅中选择一个房问后,用户进人该房
3.1 系统需求说明
间,房间页面可分为功能区、棋桌显示区。功能区
系统是采用VB.NET 2003作为开发平台,SQL
主要提供创建房间、删除房间、设置、帮助和退出等
Server 2000作为数据库管理系统开发的三层C/,S
功能。
结构模式系统,其中服务器分为游戏服务器和信息
③当单击某个房间中的一个棋桌后,进人游戏
服务器,游戏服务器提供多用户进行游戏操作,而
界面。游戏界面包含棋盘显示区、聊天区、用户信
收到本文时间:2006年4月17 13
作者简介:熊丽华,女,助教,硕士,研究方向:空间数据库、信息管理系统。
维普资讯
维普资讯
第35巷(2007)第3期 计算机与数字工程 l81
TCP/IP协议建立网络链接进行数据交互,如果只
是简单的传输数据而不知道数据的含义,并不能进
行游戏操作,只有客户端和服务器以一定的数据格
式来定义数据,这样服务器和客户端才能理解数据
o o
显示所有甩芦 显示所有广播信息
—
\,、/
I__一 ——
显示在线用户 Admin is、trator 显示日志信息
(from系统用例…)
图5显示包用户框图
的含义,用户才能够进行游戏。游戏协议就是指网
络游戏中客户机和服务器通过预先设置好的格式
传输数据发出的请求和应答。网络游戏协议主要
包含四类:①管理操作类协议:如建立房间、删除房
间、踢人等。②游戏大厅类协议:如客户端登录、用
户坐下、用户离开游戏、用户发送聊天信息等。③
下棋类协议:如服务器通知用户游戏开始、用户下
棋等。④旁观类协议:如服务器给客户端发送旁观
标志。游戏协议报文主要分为报文头和报文体两
个部分,报文头一般包含报文体的操作类型(如登
录、进入房间、坐下等操作)和报文体长度等信息,
这样设计的目的是可以发变长的数据包,节省内存
空间,报文体即就是所需要发送和接受的数据。下
面是采用VB.NET编写的进行登录操作的打包和
解包的相关代码,所有操作包中的操作都可以在类
vbProtocol中以相应的方法来实现。
Public type As String
Public length As String
End Structure
Sturcture n
Public nanle As Stirng
Public pwd As String
End Structure
Public Class vbPmtocol
Private Function getHeaderString(ByRef vbheader As header)
getHeaderString=vbheader.type+vbheader.1ength
End Function
Private Function getLoginString(ByRef vbLogin As Login)
getLoginStirng vbLogin.name+vbLogin.pwd
End Function‘打包
Private Sub getHeaderStruct(ByRef headstirng As Stirng,ByRef
vbheader As header)
vbheader.type=headstring.Substring(1,4)
vbheader.1ength=headstring.Substring(5,8)
End Sub
Private Sub getLoginStruct(ByRef Loginstring As Stirng,ByRef
vbLogin As Losin)
vbLogin.name=Loginstring.Substring(1,8)
vbLogin.pwd=Loginstirng.Substring(9,16)
End Sub
End Class‘解包,其中headstring和Loginstring代表接收到的数据包
5 结束语
采用Rational Rose对网络游戏进行建模并对
游戏的相关功能做了说明,使大家对网络游戏的整
体开发流程有了大致的了解。当然网络游戏用户
量巨大,在设计时还需要考虑以下问题:①服务器
需要用到多线程技术处理各个客户端的业务请求,
由于本系统采用VB.NET开发,而.NET的Thread
类可以实现多线程编程,能够很好的解决这个问
题。②解决在服务器和客户端怎样发送和接收数
据包的问题。在客户端和服务器进行网络通信可
以采用.NET的Socket类来实现,Socket类为网络
通信提供了一套丰富的方法和属性,Socket类允许
您使用ProtocolType枚举中所列出的任何一种协
议执行异步和同步数据传输。综上所述,我们也可
以看出利用Rose建模工具可以方便地对系统进行
分析、设计。除此以外,还可以利用它的正向和逆
向工程能力在设计和代码之间相互转换,因而对于
一
个系统的开发来说利用UML建模技术既可以节
省时间、节约资源,又能够提高经济效益。
参考文献
[1]Wendy Boggs,Michael Boggs著,邱仲藩等译.UML与
Rational Rose 2002从入门到精通[M].北京:电子工业
出版社,2002,29—33
[2]姚剑.基于UML的网络游戏模型的实现和研究[D].武
汉:武汉大学,2004,7—17
[3]苏羽,王媛媛编著.Visual C++网络游戏建模与实现
[M].北京:北京科海电子出版,2003,153—164
版权声明:本文标题:基于UML的网络游戏对战平台设计与研究 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1718168429a650424.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论