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

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

fxh7622
相关文章
|
2月前
|
Python
使用Python开发连连看游戏的技术指南
使用Python开发连连看游戏的技术指南
91 0
|
11月前
|
Python
Python版飞机大战游戏的设计(二)-----游戏框架搭建
Python版飞机大战游戏的设计(二)-----游戏框架搭建
|
存储 JavaScript C#
从零开始做一款Unity3D游戏<三>——编写游戏机制(一)
从零开始做一款Unity3D游戏<三>——编写游戏机制
从零开始做一款Unity3D游戏<三>——编写游戏机制(一)
游戏开发:碰撞模型,球球大作战小游戏【VB编程经典案例】
游戏开发:碰撞模型,球球大作战小游戏【VB编程经典案例】
110 0
|
开发工具 C# 图形学
选择游戏开发工具的原则
这篇文章重点不是介绍这个关卡编辑工具,而是想说说如何选择工具。昨天在使用 Unity 制作关卡编辑器的时候,我就在想有没有可能让一个新手快速的学会并且使用它做出东西,想来想去最终得到的结果是不可能。 再看一眼上面的这个 Unity 软件的界面,如果你是一个从未做过游戏的新手的话,估计已经开始脑阔疼了,光是工具本身门槛已经足够高了,更别说是还有另一个前提:学习 C# 编程语言。
97 0
零基础VB教程031期:碰撞模型-案例球球大作战游戏
零基础VB教程031期:碰撞模型-案例球球大作战游戏
|
存储 设计模式 JavaScript
从零开始做一款Unity3D游戏<三>——编写游戏机制(二)
从零开始做一款Unity3D游戏<三>——编写游戏机制
从零开始做一款Unity3D游戏<三>——编写游戏机制(二)