行客户端登录、进行游戏等操作。
在以上协议的基础上,根据不同的游戏编写不同的游戏逻辑处理类,在该逻辑处理类中实现了对应的游戏逻辑,如实例中的军棋,则实现相互之间的对弈等功能。
同时在服务器端还需要和数据库服务器交互,用于读取或保存客户信息(如用户积分、密码、个人资料等数据)。
1.2.2 难点和关键 1、有一个或多个游戏服务器启动特定游戏服务。
2、游戏者到游戏网站上下载客户端程序并且申请游戏账号 ID。
然后启动客户端程序通过某种网络协议连接游戏服务器。
3、客户端程序负责处理客户端显示和操作界面,具有简单的逻辑处理功能,同时负责接收发送与服务器端交互的数据包。
4、服务器程序负责处理服务器端逻辑、游戏逻辑、客户之间的网络信息传递,以及数据库之间的数据读取保存工作。
同时服务器端还要承担客户端数据的接收、转发工作。
1.2.3 思路和方法 网络游戏通常的运行方式见图 1-2。
图 1-2 网络游戏交互图 相关的知识和工具 第二章 相关的知识和工具2.1 解决问题的知识基础 网络游戏常用的网络协议有适用于 Internet 的 TCP/IP 协议、适用局域网(比如星际)的 IPX 协议。
一 TCP/IP 协议 TCP/IP 协议Transmission Control Protocol/Internet Protocol传输控制协议/网际协议是 Internet 中计算机进行通信的标准,其命名起源于该组协议中最重要的两个协议 TCP 和 IP。
任何关于 Internet 协议的讨论必须由 TCP/IP 开始,它也是其他所有协议的基础。
TCP/IP 协议是 Internet 网络的共同语言,主机之间必须利用 TCP/IP 互通信息。
TCP/IP 协议目前已经成为发展最成功的通信协议之一,它起源于 20 世纪 60 年代末美国政府资助的一个分级交换网络研究项目,允许分布在各地的使用不同操作系统的网络进行通信。
随着世界范围个人电脑的普及,日常无论收发邮件、访问网页和文件传输都已经离不开 TCP/IP 协议,TCP/IP 协议已经成为 Internet 的基础。
二 TCP/IP 结构TCP/IP 实际上就是在物理网上的一组完整的协议。
其核心部分是传输层协议TCP/UDP、网络层IP和物理接口层,这三层通常在操作系统内核中实现。
TCP/UDP 层提供了传输层服务,而 IP 协议提供了网络层服务。
TCP/IP 协议是一个四层协议,其结构如图 2-1 所示。
图 2-1 TCP/IP 协议体系结构图 -5- 相关的知识和工具 应用程序与 TCP/IP 可靠传输之间接口具有五大特性: 面向数据流 当两个用户进程传输大量数据时,我们把这些数据当做可划分为 八位组(octer字节)的比特流,在目的机器上运行的数据流投递服务软件提给接 收方的八位组与信源机上发送方送出来的完全相同。
虚电路连接 数据流的传输与电话相似,使用“虚电路”这个术语来描述这种 连接是因为在应用程序看来这种连接像是一条专用的硬件电路,这种可靠连接的错 觉是由数据流投递服务提供。
有缓冲的传送 使用虚电路服务来发送数据流的应用程序不断向协议软件递交 数据八位组。
为了提高效率以及减少网络延迟,协议软件在实现时都会从数据流中 收集到足够多的数据,组成大小合理的数据包后再送到网络上传输。
无结构的数据 TCP/IP 协议并不区分结构化的数据流。
使用数据流的应用程序 必须在开始连接之前就了解数据流的内容并对其格式进行协商。
这点很重要,在程序中表现为 send 函数只能发送字符串,这就需要将接收的字 符串转化需要的结构化的数据。
全双工连接 TCP/IP 流服务所提供的功能是双向的全双工连接。
其中包括了两 个独立、流向相反的数据流,而这两个数据流之间不进行显式的交互。
常用协议主要包括 TCP/UDP 层协议和 IP 层协议。
TCP 和 UDP 都是传输层协议, 都使用 IP 协议作为网络层协议。
使用 UDP 协议的应用程序必须承担可靠性的工作, 包括报文的丢失、重复、乱序以及连接失效等问题,而程序员编程时则容易疏忽。
2.2 开发平台 操作系统 Windows 2000 开发工具 VisualC6.0。
2.3 数据库 SQL Server 2000,是一个全面的数据库平台,引擎为关系型数据和结构化数据提供了安全可靠的存储功能。
-6- 总体设计 第三章 总体设计3.1 总体设计的框架 军棋游戏的总体设计框架,客户端如图 3-1 所示。
图