前不久自己花了几个月自己思考并且做了个半成品的所谓 “网络对战游戏”, 但是最近因为事情比较忙而且也因为一个人做游戏的开发进程实在太慢。所以慢慢的就被我边缘化了,也不知道什么时候才会重新拾起来。 但是如果这样下去岂不是浪费了之前的那么多努力,所以就想写个博客系列,一为分享二为总结三为重新思考一遍,也许会有新的收获。
全文不会出现太多的代码,也更加不会有一些特定系统或者框架下才会有的技巧和特性,我假定读者都知道一些起码的编程知识,比如如何处理键盘输入,绘图输出等等,能将稍微概念性的东西用到他/她自己的实际环境里。当然如果文章里有不对和不到位的地方,也请提出来。
先想个目录,以后再慢慢充实/修改
目录:
- 一 如何组织游戏的目录和游戏的大致组成
- 二 客户端服务器之间大致如何通讯
- 三 玩家之间如何进行一次游戏
- 四 登陆服务器和游戏服务器
- 五 登陆服务器和玩家的状态模式
- 六 客户端的整体模型
- 七 服务端的整体模型
- 八 使用命令模式的请求和回应
- 九 请求和回应之间的互相独立
- 十 帮你保持游戏一致性之请求处理队列
- 十一 什么事情该让客户端决定,什么事情该让服务端决定?
- 十二 客户端/服务器之间的同步问题
- 十三 惯用is和惯用has
- 十四 游戏开始时的世界创建
- 十五 救命的观察者模式
- 十六 用上多线程,从此就上了贼船
- 十七 游戏里的所有物体都应该加ID
- 十八 客户端的角色自动寻路
- 十九 客户端的资源管理器
- 二十 服务端的简单AI
- 二十一 惯用is和惯用has