05 2016 档案
摘要:到目前为止,我们完成了玩家的数据和进程建模,现在我们可以开始增加一种玩法上去了。 为什么我们还不做客户端接入、协议指定呢?为什么还没有网关和数据存储呢。在我接手的游戏, 这些通常已经定下来了,我没法改变。在我开始这个系列时,我也常常陷入这些细节而不知所措,感觉不把所有设施搞完备没法写代码。 但其实,
阅读全文
摘要:在《Elixir游戏服设计一》里提到,按照系统功能划分成app要保证原子性很难, 现在想想也没那么难。保证原子性,无非就是需要某个单点去完成操作。那么选择玩家进程去做原子性工作就可以了。 比如要重置某个任务,需要花费金币和背包里某个物品,那么大概的逻辑是这样的。在玩家进程里 只不过说这样做以后,发觉
阅读全文
摘要:上章说到我们要引入syn https://github.com/ostinelli/syn/ 看过文档,它并没有直接提供{via, Module, Name} 相关的方法。我们需要封装一下。 Name暂时可以用id,如果有需要再调整 以后有回调需求的话,刚好也可以做在那个模块里。 在player_s
阅读全文
摘要:玩家进程用gen_server来建模,我不直接使用 use GenServer, 而是使用exactor,该库可以去掉反锁的接口定义。 我们新建一个 player_server_manager app吧, 使用 mix new player_server_manager --sup, 会给我们增加s
阅读全文
摘要:搞一个例子,而没有实际的目标,做起来真是烦人。几次三番都想放弃。 后来想想,即使最后完成不了完整的服务器,把需要的知识点搞搞,摸熟悉也是好的。 这里没有完整的项目目录,主要是对需要的指点进行整理。要完整写个教材的话,话费我太多时间,恐怕我继续不下去。 先搞个建模吧。玩家数据目前如下 在BaseInf
阅读全文
摘要:在Erlang游戏服设计总结http://www.cnblogs.com/rubyist/p/5530575.html里, 我提到我想要的游戏服设计方法,希望以应用做为基础构建块。最近我在学习elixir,它有很多 方便的语法糖以及很好用的库,能够解决我在游戏中开发中碰到的很多繁琐工作。因此我决定用
阅读全文
摘要:这主要是一年多来,个人从事Erlang游戏服开发中对一些事情的思考。 想到哪说到哪,没有条理可言。 欢迎讨论。 通常Erlang游戏服务的设计涉及到的东东包括如下: 任务系统 活动系统 公会系统 玩法系统 好友系统 聊天系统 商城 转盘 以及其他 我经历过的项目不多,只有2个。在这2个项目中我看到系
阅读全文