2. 游戏类型与问题模型
这一章学习如何按技术特征对游戏分类,以及不同类型面临的独特技术挑战。
本章目标
当你读完这一章,你将能够:
- 用三个技术维度(实时性、在线模式、经济复杂度)分析任何游戏
- 快速识别你的游戏属于哪类问题模型
- 根据问题模型定位需要深入学习的技术章节
本章结构
2.1 游戏类型的分类方法
提出三个分类维度:实时性、在线模式、经济复杂度。解释为什么传统的“MOBA/FPS/RPG“分类对技术选型帮助有限,以及如何用技术维度重新分类。包含多个真实游戏的分类分析和决策树。
2.2 单局房间型游戏问题模型
棋牌、卡牌、MOBA、FPS 的共同特征:会话隔离、有限时长、固定人数。三个核心问题:房间生命周期、匹配系统、服务器调度。讨论房间进程 vs 房间对象、匹配速度与公平性的权衡、弹性伸缩。
2.3 强实时对战型游戏问题模型
在房间制基础上增加极端延迟约束。四个核心问题:传输协议选择(为什么用 UDP)、同步模型选择(状态同步 vs 帧同步)、延迟掩盖(客户端预测 + 服务器回溯 + 实体插值)、防作弊。
2.4 持续在线世界型游戏问题模型
MMORPG 和沙盒游戏。三个核心问题:AOI(视野管理)、服务器分片(扩展性)、数据持久化(海量玩家数据)。与房间制游戏的对比。
2.5 长周期成长与异步交互型游戏问题模型
SLG、卡牌养成、放置类。三个核心问题:长期数据管理(冷热分层)、异步战斗(服务器模拟)、定时任务系统(时间轮/延迟队列)。与房间制和 MMO 的对比。
2.6 经济与平台型游戏问题模型
包含玩家交易的游戏。三个核心问题:交易原子性、经济监控与防刷单、经济平衡。强调数据库事务的关键性。
2.7 高频对象与重表现型游戏问题模型
弹幕射击、RTS、割草类。三个核心问题:大量对象管理(ECS + 对象池)、碰撞检测优化(空间划分)、服务器端考量。这类问题在引擎层面有成熟方案。
阅读建议
先读 2.1,用三个维度分析你的游戏,然后根据结果跳到对应小节:
| 你的游戏特征 | 推荐阅读 |
|---|---|
| 房间制、弱实时 | 2.2 |
| 房间制、强实时 | 2.2 + 2.3 |
| MMO | 2.4 |
| 有玩家交易 | 2.6 |
| SLG/放置 | 2.5 |
| 同屏大量对象 | 2.7 |
与其他章节的关系
第2章是问题识别章节——帮你搞清楚“我的游戏面临什么问题“。识别问题后,跳转到对应的技术章节深入学习:
- 网络协议选择 → 第3章
- 同步模型实现 → 第4章
- 服务器架构设计 → 第6章
- 数据库设计 → 第13章