设计多人游戏(连接两名玩家)


Designing multiplayer game (connect two players)

我正在做一个多人游戏,每个玩家画一张照片,然后向对手展示他/她的照片,以回答一些问题。

我是游戏编程的新手,尤其是多人游戏。

我的问题是:两个玩家如何相互连接,并且两个玩家的状态如何不断更新?

顺便说一下,我计划使用JavaScript、PHP和MySQL语言来实现。

更新:

直到现在我才明白如何连接两个玩家。如果第一个玩家完成了图像的绘制,那么游戏必须找到对手来回答关于图像的一些问题。我的代码如何找到对手?

如果为每个游戏分配一个"游戏id",则可以将该游戏id存储在每个玩家会话中。将每个游戏id的数据存储在数据库中,以跟踪到目前为止游戏中发生的事情。你可能还想给每个玩家分配一个角色,比如"提问者"answers"回答者",这样可以很容易地跟踪每个玩家应该看到游戏的哪些部分。

您想要的是推送更新(Comet)。这可以通过与您的web服务器建立长轮询连接来实现,该连接会在其连接弹出时向其发送更新。在大多数web浏览器中,每个域可以打开两个连接。一个连接将用于此"更新"连接,另一个连接用于将玩家操作发送到web服务器。

如果您使用的是PHP,那么保持这些长轮询连接的打开将是无效的。您可以使用另一种拉取策略,每隔几秒钟连接一次Web服务器,看看它是否有可用的更新。

请参阅以下PHP和JQuery中的聊天室示例:如何使用JQuery/PHP实现聊天室?

你可以用这些想法来创建你的游戏。例如,它连接到一个游戏,而不是聊天室。