【问题标题】:Is it possible to reconnect to the room?是否可以重新连接到房间?
【发布时间】:2014-04-13 01:09:03
【问题描述】:

目前一旦客户端被电话打断或者用户按下home键,客户端就会断开连接。

附言我正在实时实现 google play 游戏服务实时多人游戏,但基于回合的游戏,例如扑克、蠕虫。这些是实时游戏,但不需要玩家响应或在整个游戏中进行,因为它是回合制的。回合制api不适合这种情况,原因同上。

有什么办法可以让玩家在被打断后重新连接到还没结束的房间?

【问题讨论】:

  • 你能在这里展示你的代码吗?

标签: android multiplayer google-play-games


【解决方案1】:

如果您使用的是 Google Play 服务,玩家将无法在断开连接后重新进入房间。

来自https://developers.google.com/games/services/common/concepts/realtimeMultiplayer#4_participant_connection_phase

  1. 游戏阶段

连接游戏所需数量的参与者后,您的应用即可开始游戏会话。在所有参与者都加入一个游戏并且房间“满”后,玩家可以离开你的游戏,但其他玩家不能加入;甚至没有填补其他玩家腾出的位置。

【讨论】:

  • 可惜连接有点脆弱,当游戏被电话打断时,这可能会让玩家感到沮丧。可能应该有这个功能的要求?由于玩家在等待轮到他的时候很可能会做其他事情。没有办法将参与者的状态从左更改为加入吗?因为我认为他们重新连接对等点不会太难。
  • 完全同意...正是 Google 所采用的。 耸耸肩
  • 他们需要像 AppWarp 那样添加连接弹性功能。这允许用户进入暂停状态,然后在连接恢复后恢复。另一件事是还通知游戏中的其他用户其他用户处于“暂停”状态以及何时“恢复”。
  • 我不敢相信这是不可能的。这会惹恼我的用户。
【解决方案2】:

您可以通过服务器记录游戏中所有玩家的信息(IMEI,IMSI,UID)。当用户连接到服务器时,服务器应该检查用户是新用户还是重连用户。如果确定用户是重连玩家,则返回该游戏中玩家的信息(级别,武器、敌人数据等等)。

【讨论】:

  • 谢谢你的回答,抱歉可能是我的问题没有说清楚,我用的是google play game multiplayer api
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-11
  • 2015-06-04
  • 1970-01-01
  • 1970-01-01
  • 2012-03-28
  • 1970-01-01
相关资源
最近更新 更多