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 

本文标签: 游戏网络游戏服务器用户设计