如何构建多人游戏的后端

问题描述

我打算创建一个简单的移动问答游戏,并且对该游戏的服务器端体系结构产生了一些疑问。

由于游戏将是多人游戏,所以我打算使用NodeJs和Socket.io,为玩家一起玩创造空间。

但是,如何在每个房间中存储每个比赛的状态?

我曾考虑过将所有信息保存在Nosql数据库中,但是我不知道这是一个好主意。

我的另一个想法是使用支持多线程的另一种语言,为每个开始的游戏创建一个线程,并将信息存储在该线程的变量中。但这似乎也不是个好主意。

我该怎么做?我是游戏开发领域的初学者。

解决方法

存储内容是数据库的工作,所以是的。如果您的游戏只有很少的玩家,那么您可能会寻找一个内存数据库。 NoSQL很好,因为我怀疑您会尝试查询“选择当前所有名为Roy的游戏中的所有玩家”之类的查询,因为一方游戏的每个实例都将与其他人完全隔离。

您的技术栈很好。

线程很少见,用于工作,而不是停滞不前保持数据。