毕业设计论文-游戏数据库服务器设计内容摘要:

c e 图 表 EmplaceAccess 属性 后缀为 Access 代表为本地数据库里的表 以上表的实体关系 (如 图 ) : 重庆大学本科学生毕业设计(论文) 3 系统设计 14 T h i n gP K T h i n g I d A c c o u n t I d T h i n g T y p e b B i n d b I n s t a l l e d A c t i v e T i m e A c c e s s I d S h i p A c c e s s I d E m p l a c e I n d e xG i f tP K G i f t I d A c c o u n t I d T h i n g T y p e A c c e s s I d B e n e f a c t o r D e s c T e x tH S G C V e r i f y C o d eP K H S G C V e r i f y C o d e I d A c c o u n t I d V e r i f y C o d eA c c o u n tP K A c c o u n t I d U s e r N a m e P a s s w o r d E x p e r i e n c e M o n e y L e v e l C u r S h i p A c c e s s I dS h i p A c c e s sP K S h i p A c c e s s I d T y p e G o o d s F o r w a r d V T u r n i n g V V o l E m p l a c e C o u n t H p D e f C a n n o n D e f T o r p e d oR o l e A c c e s sP K R o l e A c c e s s I d G o o d s t o n n a g e o p e r a t e L o a d B u l l e tG u n A c c e s sP K G u n A c c e s s I d T y p e G o o d s R o t a t e S p e e d P i p e C o u n t S h o o t G a p S h o o t R a n g e P o w e r P o w e r R a n g e T o r p e d o S p e e d B u l l e t S i z eI t e m A c c e s sP K I t e m A c c e s s I d G o o d s U s e C o u n t P l u s M o d e T a r g e t D i f f 1 T a r g e t D i f f 2 T a r g e t T y p e V a l u e V a l u e A c c M o d e V a l u e C o n t i n u e M o d e P l u s T i m e R e g i o n RE m p l a c e A c c e s sP K E m p l a c e A c c e s s I d T y p e S h i p A c c e s s E m p l a c e I n d e P l a c e 图 实体关系图 数据库逻辑设计 逻辑设计:主要工作是将现实世界的概念数据模型设计成数据库的一种逻辑模式,即适应于某种特定数据库管理系统所支持的逻辑数据模式。 与此同时,可重庆大学本科学生毕业设计(论文) 3 系统设计 15 能还需为各种数据处理应用领域产生相应的逻辑子模式。 这一步设计的结果就是所谓“逻辑数据库”。 [6] 在数据库概念设计完成之后,我们可进行数据库逻辑设计。 ① 创建数据 库 ocean。 在 MySQL Command Line Client 中执行如下命令: 执行完毕后,数据库 ocean 创建成功。 (如图 ) 图 数据库 ocean ② 然后连接数据库 ocean。 在 MySQL Command Line Client 中执行如下命令: 执行完毕后,提示数据库连接成功。 ③ 在数据库 ocean 中创建表 account。 在 MySQL Command Line Client 中执行如下命令: CREATE TABLE `account` ( `AccountId` int (10) unsigned NOT NULL auto_increment, `UserName` varchar (45) character set latin1 NOT NULL, `Password` varchar (45) character set latin1 NOT NULL, `Experience` int (10) unsigned NOT NULL, `Money` int (10) unsigned NOT NULL, `Level` int (10) unsigned NOT NULL, `CurShipAccessId` int (10) unsigned NOT NULL, PRIMARY KEY (`AccountId`) ) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8。 USE ocean; CREATE DATABASE ocean; 重庆大学本科学生毕业设计(论文) 3 系统设计 16 执行完毕后,表 account 创建成功。 (如图 ) 图 表 account ④ 在数据库 ocean 中创建表 gift。 在 MySQL Command Line Client 中执行如下命令: 执行完毕后,表 gift 创建成功。 (如图 ) CREATE TABLE `gift` ( `GiftId` int (10) unsigned NOT NULL auto_increment, `AccountId` int (10) unsigned NOT NULL, `ThingType` int (10) unsigned NOT NULL, `AccessId` int (10) unsigned NOT NULL, `Benefator` varchar (45) NOT NULL, `DescText` varchar (45) NOT NULL, PRIMARY KEY (`GiftId`) ) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8。 重庆大学本科学生毕业设计(论文) 3 系统设计 17 图 表 gift ⑤ 在数据库 ocean 创建表 hsgcverifycode。 在 MySQL Command Line Client 中执行如下命令: 执行完毕后,表 hsgcverifycode 创建成功。 (如图 ) 图 表 hsgcverifycode ⑥ 创建表 thing。 在 MySQL Command Line Client 中执行如下命令: CREATE TABLE `hsgcverifycode` ( `HSGCVerifyCodeId` int (10) unsigned NOT NULL auto_increment, `AccountId` int (10) unsigned NOT NULL, `VerifyCode` int (10) unsigned NOT NULL, PRIMARY KEY (`HSGCVerifyCodeId`) ) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1。 重庆大学本科学生毕业设计(论文) 3 系统设计 18 执行完毕后,表 thing 创建成功。 (如图 ) 图 表 thing CREATE TABLE `thing` ( `ThingId` int (10) unsigned NOT NULL auto_increment, `AccountId` int (10) unsigned NOT NULL, `ThingType` int (10) unsigned NOT NULL, `bBind` int (10) unsigned NOT NULL, `bInstalled` int (10) unsigned NOT NULL, `ActiveTime` int (10) unsigned NOT NULL, `AccessId` int (10) unsigned NOT NULL, `ShipAccessId` int (10) unsigned NOT NULL, `EmplaceIndex` int (10) unsigned NOT NULL, PRIMARY KEY (`ThingId`) ) ENGINE=InnoDB AUTO_INCREMENT=67 DEFAULT CHARSET=latin1。 重庆大学本科学生毕业设计(论文) 4 系统难点技术分 析与设计 19 4 系统难点技术分 析与设计 系统架构设计与分析 根据分析,我们设计出系统架构图。 (如图 ) 登 陆 器游 戏 客 户 端登 录 服 务 器大 厅 服 务 器游 戏 服 务 器数 据 库 处 理 服 务 器数 据 库登录启动选 择 大 厅更换大厅查询、操作房间内游戏调配游 戏 逻 辑 交 互游 戏开 始通 知房 间信 息游戏结束返回结果登录验证房间维护数据库操作返回结果版本更新 图 系统架构图 从图我们可以看出系统各个部分的工作情况以及数据的交互情况。 可从两个部分来分析: ① 登录服务器与数据库服务器的交互。 其中包括: 用户由登录器客户端登陆登录服务器时,登录服务器请求数据库服务器执行登陆验证操作,数据库服务器再对数据库进行查询操作,并返回查询结果。 ② 大厅服务器与数据库服务器的交互。 其中包括: 1) 用户由游戏客户端登陆大厅服务器时,大厅服 务器请求数据库服务器执行登陆验证操作,数据库服务器再对数据库进行查询操作,并返回查询结果。 2) 用户更换大厅时,大厅服务器请求数据库服务器执行更换大厅操作,数据库服务器再对数据库进行相应操作,并返回操作后的结果。 3) 用户对物品进行查询、配置、激活、丢弃、购买、赠送、接收时,大厅服务器请求数据库服务器执行相应操作,数据库服务器在对数据局进行相应的操作,并返回操作后的结果。 重庆大学本科学生毕业设计(论文) 4 系统难点技术分 析与设计 20 4) 一局游戏结束后,游戏服务器将游戏过程中各种信息的变化传给大厅服务器,大厅服务器请求数据库服务器执行数据更新操作,数据库服务器再对数据库进行更新操 作,并返回更新后的结果。 5) 用户退出游戏时,大厅服务器请求数据库执行退出操作,数据库服务器再对数据库进行相应的删除数据操作。 其中值得注意到一点是:游戏服务器没有直接与数据库服务器进行交互,而是通过大厅服务器与数据库服务器进行数据的传递。 之所以是这样,主要是因为这类网络对战游戏不需要在游戏过程中实时更新数据,可以通过大厅服务器,在一局游戏结束后,再进行游戏数据的更新。 所以,本系统采用的是这种数据交换方式。 下面,我们结合系统需求,对架构图进行详细的分析: 表 术语表 缩写 全写 定义 LC Login Client 登陆器客户端 LS Login Server 登录服务器 GC Game Client 游戏客户端 HS Hall Server 大厅服务器 DS DB Server 数据库处理服务器 GS Game。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。