问题标签 [game-center]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
605 浏览

iphone - 如何在游戏中使用 Game Center

如何在您的应用中使用 Game Center 的高分和成就服务器?

0 投票
1 回答
226 浏览

iphone - 使用 RoR 和 Active Record Session 实现无作弊游戏服务器

我正在深入研究 RoR 并计划建立一些网站。除了网站之外,我还想使用 RoR 构建一个简单的 RESTful 游戏服务器 API,可用于编排我正在编写的两人 iOS 游戏。游戏是基于谜题的时间挑战(第一个解决谜题的玩家获胜),玩家大约每 10 秒到 5 分钟与游戏服务器通信一次,来自服务器的数据量可能会赢。 t 超过几百字节。客户端-服务器流程将是这样的......

  1. 匹配发生在客户端上,使用 Game Center API 生成两个玩家(客户端)的列表
  2. 两个客户端都签入并与游戏服务器进行身份验证以开始新游戏,然后游戏服务器在两个客户端上同步游戏的开始
  3. 两个玩家都开始解决难题,当任何一个玩家完成(解决难题或退出)时,客户端将结果发送到服务器。
  4. 当两个玩家都完成时,服务器将结果存储在数据库中并将结果发送回两个客户端,然后游戏会话结束。

如果没有实现这一点,似乎这将与 RoR 一起工作得很好。然而,作弊是一个问题,我的解决方案是使用 Active Record Session 的 RoR 概念在游戏开始时对玩家进行身份验证。也就是说,只允许在上面的步骤 2 中通过身份验证的客户端的请求被服务器接受。

  • 你觉得使用 RoR 来实现这种回合制游戏服务器有什么问题吗?
  • 如上所述,我试图通过限制通过我的 iOS 应用程序进行的玩家身份验证来防止作弊。有哪些方法可以确保我的 iOS 应用程序正在请求身份验证?
  • 假设我可以有效地将玩家身份验证限制在我的 iOS 应用程序中,我是否遗漏了玩家仍然可以向服务器发送虚假数据和作弊的任何明显方式?

非常感谢您的所有帮助!

0 投票
1 回答
1118 浏览

bluetooth - 使用 iPhone 模拟器通过蓝牙测试 Game Center 的 P2P 功能

我想通过 Game Center ( GKPeerPickerController) 通过蓝牙运行和测试 P2P 连接。我拥有一台安装了 OS 4.1 的 iPod Touch,并试图通过蓝牙将其连接到我的 Mac 上运行的 iPhone 模拟器,但是他们没有看到彼此。iPod 和 Mac 的蓝牙已打开。这甚至可能吗?如果是这样,我错过了什么?

0 投票
2 回答
1238 浏览

ios4 - 如何检测游戏中心身份验证弹出窗口

我已经在我的游戏中实现了游戏中心。但是,让我感到困扰的一件事是如何检测 Game Center 何时启动弹出窗口以进行登录。如果用户手指很快并且网络有点慢,他们能够在弹出窗口开始之前开始游戏,这很好,但我想在他们登录时暂停游戏。我以为会调用该UIApplicationDelegate方法- (void)applicationWillResignActive:(UIApplication *)application,但事实并非如此。

有没有办法检测到这一点,从而让我在用户关注弹出窗口时暂停游戏?

0 投票
6 回答
14262 浏览

iphone - 如何确保我的 iPhone 应用使用 Game Center 沙盒?

我正在开发一款集成 Game Center 的 iPhone 游戏。游戏正在构建为调试(不是发布/分发)。在模拟器上,Game Center 始终正确使用沙盒。在 iPhone 设备本身上,它会使用沙盒运行几天,然后突然决定使用真正的 Game Center 服务器(导致错误,因为我的游戏尚未发布)。几天来一直在避开沙箱,我讨厌在模拟器上进行测试。知道如何一劳永逸地让它在开发过程中使用沙箱吗?

这是来自Game Kit Programming Guide的相关引述:

作为开发人员,您的 Game Center 帐户可以登录到沙盒进行测试,也可以登录到实时环境,但不能同时登录。要更改您登录的帐户,请切换到内置的 Game Center 应用程序并注销,然后运行任何支持 Game Center 的应用程序。如果该应用程序是为开发而配置的,请输入您的测试帐户信息以登录沙盒。否则,请输入您的真实账户信息以登录真实环境。

据我所知,我的应用程序正在使用开发人员配置文件进行配置。构建模式设置为调试。我已在设备上退出 Game Center。我还尝试退出商店以取得良好的效果。

0 投票
2 回答
3615 浏览

app-store-connect - iTunes 连接启用游戏中心

我尝试在我的 iPhone 游戏中测试 Game Center,但是当我尝试连接以下代码行时,我收到一条警报,提示“Game Center 无法识别此游戏。”。

现在我已经阅读了许多论坛并查看了 Apple 文档,但我找不到如何在 iTunes Connect 上启用 Game Center 选项。我想我需要先将应用程序添加到“管理应用程序”,然后启用游戏中心选项。但是我怎样才能添加一个只用于测试的应用程序呢?

谢谢你的帮助 :)

0 投票
1 回答
597 浏览

iphone - GameCenter - 处理来电等

在以下情况下你会怎么做:

  1. 在实现多人游戏时,您可以使用 GKMatchmaker 来查找玩家。
  2. 当所需数量的玩家连接时,您开始比赛。
  3. 现在其中一名玩家接到来电。

现在怎么办?如果用户接听电话,应用程序将移至后台,与 GameCenter 的连接将丢失,对吗?

怎么处理球员和怎么处理比赛?

我想您必须将已断开连接的玩家视为输掉该游戏,并尝试与其余玩家继续比赛。

有没有人想出更好的方法来处理这个问题?

0 投票
2 回答
858 浏览

iphone - 网络故障后如何保存并重试报告GKAchievement?

Apple 表示,如果您想报告 GKAchievement 但遇到网络错误,处理此问题的最佳方法是保存 GKAchievement(可能将其添加到数组中),然后定期尝试报告成就。

保存成就的最佳位置是什么?NSUserDefaults 就足够了,还是属性列表是更好的方法?

我应该在什么时候以及多久报告一次?在应用程序启动时,还是每 10 分钟一次?

0 投票
4 回答
860 浏览

objective-c - 明确回答 playerToInvite 的用途

Game Center 文档表明

playersToInvite当您的应用程序直接从 Game Center 应用程序启动以托管比赛时,参数不为零。

一些人问这究竟是如何工作的,即似乎没有办法从 Game Center 应用程序中选择朋友并邀请他们Game Center 玩;仅当您在游戏中邀请时才有效。此文档是否已过时,或者是否有从 Game Center 开始特定游戏比赛的秘密方法?我想测试一下inviteHandler,但我无法确定如何将此参数传递给应用程序。

0 投票
2 回答
495 浏览

iphone - 我可以在我的 iPhone 应用程序中开始实施 Game Center,而无需在 iTunes Connect 中创建新应用程序吗?

这是在 gamedev.stackexchange 上的问题的转贴,但这里似乎有更多 Game Center 问题和答案。

我正在为 iPhone 开发一款游戏,我想为它添加 Game Center 支持。在我看来,问题是我需要先命名我的应用程序、创建图标并上传屏幕截图等,然后才能创建排行榜并开始实施?

我的游戏尚未完成,iTunes Connect 开发者指南似乎表明某些信息一旦输入就无法编辑。我可以用虚假信息创建一个虚拟应用程序,然后在我完成游戏后创建一个新应用程序吗?谁能指出我正确的方向?

谢谢。