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

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

fxh7622
相关文章
|
人工智能 智能设计 算法
游戏编程之十三 3D类游戏
游戏编程之十三 3D类游戏
137 0
|
人工智能 安全 Unix
游戏编程之九 设计工具之游戏引擎
游戏编程之九 设计工具之游戏引擎
89 0
|
8月前
|
算法 程序员
代码与禅意:编程中的心流体验
【4月更文挑战第10天】在编码的世界中,技术感悟往往与禅宗哲学不谋而合。本文探索了编程时的心流状态——一种既集中又放松的创造性境界,它如何与禅宗中追求的“在动中寻静”相呼应。通过深入分析编程过程中的心流体验,我们揭示了如何在逻辑严谨与创造力之间找到平衡点,进而提升编程效率和内在满足感。
57 0
|
8月前
|
算法 JavaScript 前端开发
学做游戏要不要先学一门编程语言?
学做游戏要不要先学一门编程语言?
82 0
|
Python
Python版飞机大战游戏的设计(五)-----英雄登场
Python版飞机大战游戏的设计(五)-----英雄登场
110 0
|
Python
Python版飞机大战游戏的设计(二)-----游戏框架搭建
Python版飞机大战游戏的设计(二)-----游戏框架搭建
126 0
游戏开发:碰撞模型,球球大作战小游戏【VB编程经典案例】
游戏开发:碰撞模型,球球大作战小游戏【VB编程经典案例】
133 0
|
数据可视化 Java
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏14之人身攻击范围指定与获取
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏14之人身攻击范围指定与获取
148 0
|
数据可视化 Java
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏15之拳击范围
手把手一步一步教你使用Java开发一个大型街机动作闯关类游戏15之拳击范围
189 0
|
监控 Windows
VB游戏开发#001植物大战僵尸小游戏开发思路说明及源码
VB游戏开发#001植物大战僵尸小游戏开发思路说明及源码
412 0