欢迎来到天天文库
浏览记录
ID:9082965
大小:519.00 KB
页数:16页
时间:2018-04-16
《网络游戏开发(网络版》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、期末作业题目:实现扑克牌的联网游戏课程名称:网络游戏开发学院:信息工程与自动化学院专业:计算机科学与技术班级:082学生姓名:崔号学号:200810405211任课教师:欧阳鑫日期:2011-12-28一、扑克游戏设计介绍用C++实现斗地主游戏主要有三部分。第一部分是界面设计;第二部分是游戏内核(包括出牌大小、如何过牌、出牌等)设计;第三部分是网络部分。该游戏由3个人玩,用一副牌,地主为一方,其余两家为另一方,双方对战,先出完牌的一方获胜,出牌规则类似“争上游”。发牌:一副牌,留3张底牌,其它发给3家,
2、底牌加到地主手中。叫牌:叫牌按出牌顺序轮流开始叫牌,每人只能叫一次。叫牌的人为地主,如果都选择不叫,则重新发牌,重新叫地主。出牌:首先将3张底牌交给地主,3张底牌为可见。由地主开始出牌,然后按逆时针顺序依次出牌,轮到用户跟牌时,用户可按右下方“过牌”按钮表示不出,或者按照规则按“出牌”选择符合规则的牌,直至某一方出完牌为止。牌型说明:1.双王。2.炸弹(四张大小相同的牌)。3.单牌(单张牌)。4.双牌(两张大小相同的牌)。5.三张牌(三张大小相同的牌)。6.三带一手(三张大小相同的牌+1张单牌或一对牌)
3、。7.单顺(5张或更多的连续单牌,不包括2点和双王,不分花色)。8.双顺(3对或更多的连续对牌(不包括2点和双王)。9.三顺(两个或更多的连续“三张牌”,不包括2点和双王)。10.飞机带翅膀(3顺+同数量的一手牌)。11.四带二(4张牌+两手牌)。牌型比较:双王>炸弹>一般牌型(单牌,对牌,三张牌,三带一手,单顺,双顺,三顺,飞机带翅膀,四带二)。一般牌型:只有牌型且张数相同的牌才可按牌点数比较大小。其中三带一,三带二,飞机带翅膀,四带二组合牌型,比较其相同张数最多的牌点数大小。游戏术语:地主(叫的一方
4、为地主,可获得底牌)。游戏规则:只能出大于上家的牌,没有则不出,直到一方出完,则游戏结束。二、基于Socket的网络编程用层通过传输层进行数据通信时,TCP和UDP会遇到同时为多个应用程序进程提供并发服务的问题。多个TCP连接或多个应用程序进程可能需要通过同一个TCP协议端口传输数据。为了区别不同的应用程序进程和连接,许多计算机操作系统为应用程序与TCP/IP协议交互提供了称为套接字(Socket)的接口,区分不同应用程序进程间的网络通信和连接。生成套接字,主要有3个参数:通信的目的IP地址、使用的传输
5、层协议(TCP或UDP)和使用的端口号。Socket原意是“插座”。通过将这3个参数结合起来,与一个“插座”Socket绑定,应用层就可以和传输层通过套接字接口,区分来自不同应用程序进程或网络连接的通信,实现数据传输的并发服务。Socket可以看成在两个程序进行通讯连接中的一个端点,一个程序将一段信息写入Socket中,该Socket将这段信息发送给另外一个Socket中,使这段信息能传送到其他程序中。HostA上的程序A将一段信息写入Socket中,Socket的内容被HostA的网络管理软件访问,并
6、将这段信息通过HostA的网络接口卡发送到HostB,HostB的网络接口卡接收到这段信息后,传送给HostB的网络管理软件,网络管理软件将这段信息保存在HostB的Socket中,然后程序B才能在Socket中阅读这段信息。要通过互联网进行通信,至少需要一对套接字,一个运行于客户机端,称之为ClientSocket,另一个运行于服务器端,称之为ServerSocket。根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认。服务器监听:是服
7、务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态。客户端请求:是指由客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。为此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器端套接字的地址和端口号,然后就向服务器端套接字提出连接请求。连接确认:是指当服务器端套接字监听到或者说接收到客户端套接字的连接请求,它就响应客户端套接字的请求,建立一个新的线程,把服务器端套接字的描述发给客户端,一旦客户端确认了此描述,连接就建立好了。而服务器端套接字继续处于监听
8、状态,继续接收其他客户端套接字的连接请求。Socket编程实现原理(从连接的建立到连接的关闭,每个socket应用都大致包括以下几个基本步骤):1.服务器端socket绑定于特定端口,服务器侦听socket等待连接请求;2.客户端向服务器和特定端口提交连接请求;3.服务器接受连接,产生一新的socket,绑定到另一端口,由此socket来处理和客户端的交互,服务器继续侦听原socket来接受其他客户端的连接请求;4.连接成功后客户端也产生一
此文档下载收益归作者所有