<分区>
我有兴趣制作某种多人 Angular 色扮演游戏,作为一种纯粹基于浏览器的游戏,几乎没有或没有插件要求。经过大量研究,我得出了以下计划。我知道我在这里引用的某些技术并未在所有浏览器(特别是 IE)中采用,但我暂时愿意接受。
另外 - 我知道 MMO 在任何情况下都是一个值得为之奋斗的崇高目标,但过去我在类似的方向上做过很多较小的项目,我觉得我想好好尝试一下终于。
所以这是一个粗略的概述,我很想听听任何人都可以在这种安排中看到的明显问题:
客户: WebGL/Javascript(可能是three.js)。使用浏览器本地存储来保存游戏 Assets ,接受删除浏览器缓存将删除这些 Assets 。
消息: 使用 google protocol buffers 对客户端/服务器之间的消息进行编码,为了方便和减小尺寸。消息传递将通过 WebSocket。
游戏服务器: 在 gevent 之上运行在 python 中(看起来是处理许多并发的好解决方案)。将使用分片模式构建,基于设计 here:
数据库服务器: 数据库为MySQL,游戏服务器与数据库之间为PHP。
详情: 我打算让游戏服务器每秒大约更新单个客户端 15-20 次,并使用客户端预测来填补空白。客户端可以 30 fps 的速度向服务器发送键输入/消息。我更喜欢尽可能接近实时的体验,而不是回合制。我主要担心的是 WebSocket 基于 TCP 的协议(protocol),这会使整个事情变得不可能吗?
这个解决方案对 SO 来说是否现实?
非常感谢,