“省了14块9毛”
上周的“狼人之夜”爆满,导致一轮玩下来都需要1个半小时,由于只有一副狼人牌,所以没法分批,考虑再买几副以后可以分队来玩,结果朱棣同学说:“直接做一副吧,很容易”,我想与其做一副,还不如直接代码写一套,以后再多人都可以用,加上现在android和iOS两个小团队需要相互交换练手,考虑业务的延续性不方便轻易交换人员,类似这种小玩意正好可以一起边做边玩,所以,阳光明媚的“腊八节”下午,坐在地板上,晒晒太阳,把“狼人”游戏初级版本的设计做了一下,省了14块9毛(9.9元狼人牌成本+5元运费)。狼人游戏是什么?参看(http://www.niwota.com/submsg/6808720)
一图胜百字,看完这些图,应该啥都清楚了:
实体对象:
Mission可以理解为一轮游戏。(可复用,区别于桌面游戏的Table,Room,可以理解为Round of game)
Policy 狼人的一些游戏规则配置。
Actor 角色和玩家的组合。(Mission有状态的Component)
Role 狼人的角色。
Player 玩家。
游戏其实很简单,就是一个状态机,所以上面列出了状态迁移,下面的流程图将详细说明迁移的交互过程。
一.Init & Start
二.Night
三.Day
最后就可以开始coding了,服务端就两个问题需要重点解决:事件驱动中TimeOut的Event如何高效监听,Http Push如何支持?可以看看这篇老帖子的部分技术介绍:http://blog.youkuaiyun.com/cenwenchu79/article/details/6450427
Client三种方式:browser,apple native,android native。对于Push来说,browser和android可以直接用comet push的方式,apple native那就只有APNS了。两种native的手势操作和Push提示可以做的体验非常好,browser就只能凑活这玩了。
程序员的生活需要更多的乐趣,自己动手未尝不是件有意思的事情~~~