android - 蓝牙是多人回合制游戏的可行选择吗?

标签 android bluetooth multiplayer

<分区>

所以我目前正在开发一款多人回合制纸牌游戏。我已经完成了所有核心游戏逻辑和用户界面,只是想找出最好的方法让它成为多人游戏,通过多部手机连接。现在,似乎我唯一的选择是蓝牙,根据我的研究,这是一个非常糟糕的选择,特别是因为模拟器不支持它。所以我想知道是否有其他选择。备选方案需要以下内容:

  • 拥有本质上是“游戏大厅”的能力,玩家可以在其中加入“房间”(类似于使命召唤等许多其他多人游戏)
  • 支持 API 级别 8 及以上
  • 最多连接 6 个玩家
  • 不需要互联网就可以玩(这是最重要的)
  • 不需要我支付任何费用(无服务器)
  • 最好易于在模拟器上测试

我也考虑过直接 WIFI,但它需要 API 14,这使得游戏无法在超过一半的 Android 市场上使用。

另外,如果没有其他选择,是否有多人蓝牙回合制游戏的 SDK 或教程?是否有可能在不配对设备的情况下使用蓝牙拥有“游戏大厅”?

最佳答案

使用蓝牙符合您的要求列表,而且除了您排除的 wifi 之外,我看不到任何其他方式。

据我所知,蓝牙通信必须使用客户端-服务器模型来实现。例如,一个玩家必须开始游戏,他将主持您的游戏大厅,其他玩家可以连接到它。主机可能也想玩,所以你必须以主要“游戏引擎”可以与两种播放器通信的方式实现它:通过蓝牙远程和本地(主机本身)。这可能有点棘手但可行。

我不确定 Activity 蓝牙连接的数量是否有限制。 3 台设备同时在一部相当旧的手机(API 版本 4)上运行良好。但是,电池耗尽的速度要快得多。

关于配对...我使用的设备(不是手机)在服务器模式下使用蓝牙,我必须与所有设备配对才能使用。按照同样的逻辑,我认为玩家都必须与服务器(启动游戏的手机)配对。

关于android - 蓝牙是多人回合制游戏的可行选择吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15452865/

相关文章:

android - 如何在方向变化时保留来自 backstack 的 fragment ?

android - Android 中的电话号码格式

iphone - 如何使用 iPhone 中的消息访问配置文件在蓝牙设备(如智能 watch )上使用 SMS 和 iMessage 通知?

android - 如何使用 APP42 服务器后端制作多人评分 Android?

c# - uNet 独立的客户端/服务器

android - 将传入的 whatsapp 通知存储到本地数据库

安卓蓝牙 : get Device Specific AT commands

ios - 如何过滤心率监测器

java - MultiPlayer - 服务器通信,传输什么

android - 使用 picasso 从网址保存图像?