摘要: 以前的Elixir游戏服设计系列种种原因没有完成。 后来虽然用Elixir + riak 完成了一个麻将的初始版本,可惜公司也挂了。 现在到新公司,比较空闲,想着像完成一个心愿一样,还是重启下吧(希望不要又烂尾), 改头换面叫简单Elixir游戏服务器系列。 一些说明 0. 没怎么写过博客,也懒得去 阅读全文
posted @ 2017-09-29 10:13 damnit 阅读(566) 评论(0) 推荐(0) 编辑
摘要: 写着写着就废球了,感觉空对空,实在没什么意思。 另外很快就要搞新项目,决定新项目就直接上elixir了。目前该做的准备工作已经探索了一些了。 以下的东西是写给同事参考的,感兴趣的可以看看,提建议更好。 另外配置代码部分之前写的比较差劲,是从csv 转。今天使用了处理xlsx的库,并且用宏实现了。达到 阅读全文
posted @ 2016-06-16 17:59 damnit 阅读(1405) 评论(0) 推荐(0) 编辑
摘要: 接上章,我新建了个app做包含Table模型, TableServer等。Table桌子的代码暂时如下, 有一些状态还没用上 我们需要相关的配置table_config.txt 这个txt可以由excel通过xslx2csv工具生成。然后我们利用table_config.txt 生成代码配置tabl 阅读全文
posted @ 2016-06-01 15:23 damnit 阅读(394) 评论(0) 推荐(0) 编辑
摘要: 到目前为止,我们完成了玩家的数据和进程建模,现在我们可以开始增加一种玩法上去了。 为什么我们还不做客户端接入、协议指定呢?为什么还没有网关和数据存储呢。在我接手的游戏, 这些通常已经定下来了,我没法改变。在我开始这个系列时,我也常常陷入这些细节而不知所措,感觉不把所有设施搞完备没法写代码。 但其实, 阅读全文
posted @ 2016-05-30 17:43 damnit 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 在《Elixir游戏服设计一》里提到,按照系统功能划分成app要保证原子性很难, 现在想想也没那么难。保证原子性,无非就是需要某个单点去完成操作。那么选择玩家进程去做原子性工作就可以了。 比如要重置某个任务,需要花费金币和背包里某个物品,那么大概的逻辑是这样的。在玩家进程里 只不过说这样做以后,发觉 阅读全文
posted @ 2016-05-30 14:28 damnit 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 上章说到我们要引入syn https://github.com/ostinelli/syn/ 看过文档,它并没有直接提供{via, Module, Name} 相关的方法。我们需要封装一下。 Name暂时可以用id,如果有需要再调整 以后有回调需求的话,刚好也可以做在那个模块里。 在player_s 阅读全文
posted @ 2016-05-30 12:53 damnit 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 玩家进程用gen_server来建模,我不直接使用 use GenServer, 而是使用exactor,该库可以去掉反锁的接口定义。 我们新建一个 player_server_manager app吧, 使用 mix new player_server_manager --sup, 会给我们增加s 阅读全文
posted @ 2016-05-27 18:05 damnit 阅读(549) 评论(0) 推荐(0) 编辑
摘要: 搞一个例子,而没有实际的目标,做起来真是烦人。几次三番都想放弃。 后来想想,即使最后完成不了完整的服务器,把需要的知识点搞搞,摸熟悉也是好的。 这里没有完整的项目目录,主要是对需要的指点进行整理。要完整写个教材的话,话费我太多时间,恐怕我继续不下去。 先搞个建模吧。玩家数据目前如下 在BaseInf 阅读全文
posted @ 2016-05-27 16:51 damnit 阅读(644) 评论(0) 推荐(0) 编辑
摘要: 在Erlang游戏服设计总结http://www.cnblogs.com/rubyist/p/5530575.html里, 我提到我想要的游戏服设计方法,希望以应用做为基础构建块。最近我在学习elixir,它有很多 方便的语法糖以及很好用的库,能够解决我在游戏中开发中碰到的很多繁琐工作。因此我决定用 阅读全文
posted @ 2016-05-26 14:17 damnit 阅读(462) 评论(0) 推荐(0) 编辑
摘要: 这主要是一年多来,个人从事Erlang游戏服开发中对一些事情的思考。 想到哪说到哪,没有条理可言。 欢迎讨论。 通常Erlang游戏服务的设计涉及到的东东包括如下: 任务系统 活动系统 公会系统 玩法系统 好友系统 聊天系统 商城 转盘 以及其他 我经历过的项目不多,只有2个。在这2个项目中我看到系 阅读全文
posted @ 2016-05-26 12:01 damnit 阅读(1153) 评论(0) 推荐(0) 编辑