使用Delphi编写棋牌类游戏 – 设计篇(1)

简介:
通过对以前3篇文章的探讨,大家应该对编写棋牌类游戏的基础知识有一定的了解了。但是如何使用这些基础知识编写出一个可扩展性功能完善的游戏呢?今天我们就来探讨一下如何设计一款棋牌类游戏的框架。
以下是我所设计的游戏服务端框架:
 
 
今天先来探讨一下中心服务器的设计。
中心服务器,顾名思义应该是整个服务端框架中调度所有其它服务器的部分。从框架图上来看,它需要和游戏服务器、登录服务器以及管理端发生数据交换。
在我的设计中,中心服务器具有以下功能:
1):收集每个游戏服务器的IP地址和监听端口。
这个功能是中心服务器的主要功能。每个游戏服务器向中心服务器提交自己所在的IP地址和监听的端口,中心服务器予以记录,并将汇总后的信息发送给登录服务器。这样当用户登录成功以后,在游戏的树形列表中,每个游戏就会对应不同的游戏服务器。这样的设计便于以后的游戏扩展。
2)定时收集每个游戏服务器上的房间游戏人数。
定时收集每个游戏服务器上的人数以后,中心服务器将此信息发送给登录服务器和所有的游戏服务器。这样用户可以看到每个游戏当前的在线人数信息。
3):接收管理端发来的各种请求,并将这些请求发送给指定的游戏服务器。
游戏中少不了需要管理员来发布一些活动信息、强制踢出某一位玩家或者对某一位玩家进行封号处理等等。这个时候管理员可以通过管理端向中心服务器发送管理请求,中心服务器将此请求转发给游戏服务器,游戏服务器再做出相应的动作。
4接收游戏服务器发来的各种请求,并将这些请求发送给指定的游戏服务器。
在游戏中,用户对于自己的好友发送聊天信息。但是有可能自己和好友不在同一服务器上,这时发送聊天信息就需要借助中心服务器进行转发。
 
以上四点是我设计的中心服务器所具有的功能。下次我们将探讨登录服务器的设计。
本文转自狗窝博客51CTO博客,原文链接http://blog.51cto.com/fxh7622/71572如需转载请自行联系原作者

fxh7622
相关文章
|
6月前
|
Python
使用Python开发连连看游戏的技术指南
使用Python开发连连看游戏的技术指南
139 0
游戏开发:碰撞模型,球球大作战小游戏【VB编程经典案例】
游戏开发:碰撞模型,球球大作战小游戏【VB编程经典案例】
129 0
微信小游戏开发系列教程2-了解游戏全貌和一些游戏开发中的术语
这一节小蚂蚁将会带着大家先从整体上了解一个小游戏的全貌,然后再熟悉一些游戏开发领域中常用的术语。最后分享一下自己的一些经验和方法,希望能够帮助到那些刚进入游戏开发领域的新人。 欢迎体验我的微信小游戏作品:精致1010
101 0
|
数据可视化 Java
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏15之拳击范围
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏15之拳击范围
184 0
|
数据可视化 Java
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏14之人身攻击范围指定与获取
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏14之人身攻击范围指定与获取
145 0
|
数据库 Windows
艾伟:基于.NET平台的Windows编程实战(三)—— 项目的创建及主界面的设计
第一步:创建一个新的Windows项目 打开VS2005,点击“文件”-->“新建”-->“项目”,在弹出的对话框里,在左边选择“Windows”,在右边选择“Windows应用程序”,并在下面的名称里输入“QuestionnaireSystem”,选择相应的保存位置后,点“确定”,如下图3-1所示:                                  图3-1  这样一个新的Windows项目就创建好了。
752 0
|
数据库 Windows
艾伟_转载:基于.NET平台的Windows编程实战(三)—— 项目的创建及主界面的设计
第一步:创建一个新的Windows项目 打开VS2005,点击“文件”-->“新建”-->“项目”,在弹出的对话框里,在左边选择“Windows”,在右边选择“Windows应用程序”,并在下面的名称里输入“QuestionnaireSystem”,选择相应的保存位置后,点“确定”,如下图3-1所示:                                  图3-1  这样一个新的Windows项目就创建好了。
822 0
下一篇
无影云桌面