Erlang游戏开发:选择mixi平台的挑战与经验分享

需积分: 11 11 下载量 108 浏览量 更新于2024-08-16 收藏 3.19MB PPT 举报
"选择在mixi平台上使用Erlang进行游戏开发" 在游戏开发领域,选择合适的工具和技术栈至关重要。本资源主要讲述了开发者基于Erlang语言在mixi平台上开发一款社交游戏(socialgame)的经验和决策过程。游戏包含多种功能,如开垦、建造、收租、投资、偷窃和捡取,设计了多种收费点,如收费道具、卡片、特效、场景以及自动值守服务。然而,尽管代码质量良好,产品最终未能取得预期的成功,原因包括缺乏有效的运维推广、用户数据分析不足以及对更多收费点的开发不够。 开发者选择Erlang作为开发语言,主要是因为对这门语言的熟悉和它在并发处理和高可用性方面的优势。游戏的开发周期约为90天,代码总量达到了6139行,其中包含了1500行的测试代码,经历了272次提交的迭代和完善。 在通信协议的选择上,开发者决定采用HTTP而非AMF或自定义协议,原因是社交游戏对实时性的需求较低,HTTP协议简单、成熟且易于调试。他们使用了开源的mochiweb库,这是一个轻量级且高效的HTTP服务器,能很好地支持Erlang的思想,并提供了基本的HTTP/1.1处理框架。 数据存储是游戏中不可或缺的一环,考虑到游戏的核心价值在于数据。开发者考虑了mysql、mnesia和redis等选项。mysql虽然适合结构化数据,但因其体积大和不适用于频繁变化的数据而被弃用。mnesia作为Erlang内置的分布式数据库,能够无缝集成,拥有良好的特性,但其数据文件大小的限制成为了一个问题。因此,选择哪种数据存储解决方案需要权衡各种因素,包括性能、扩展性和与其他语言的交互能力。 总结来说,这个项目展示了在Erlang环境中开发社交游戏的全貌,包括游戏设计、技术选型、开发流程以及遇到的挑战。它提醒我们,一个成功的产品不仅需要优秀的代码,还需要强大的团队支持,包括产品、美工、Flash和服务器开发人员。此外,合理的运营策略、数据分析和灵活的数据存储方案也是成功的关键。