使用RoR和Active Record Session实现一个免费的游戏服务器

时间:2010-10-12 17:50:05

标签: iphone ruby-on-rails activerecord game-center

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

  1. 使用Game Center API生成两个玩家(客户)列表
  2. 的客户进行配对
  3. 两位客户都登记并通过游戏服务器进行身份验证以开始新游戏,然后游戏服务器同步两个客户端的游戏开始
  4. 两位玩家都开始解决这个难题,当任一玩家完成(解决谜题或退出)时,客户端会将结果发送给服务器。
  5. 当两个玩家完成时,服务器将结果存储在数据库中并将结果发送回两个客户端,然后游戏会话结束。
  6. 如果没有实现这一点,看起来这对RoR来说效果会很好。然而,作弊是一个问题,我的解决方案的想法是使用活动记录会话的RoR概念在游戏开始时验证玩家。也就是说,只允许服务器遵守上述步骤2中经过身份验证的客户端的请求。

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

    非常感谢您提供所有帮助!

1 个答案:

答案 0 :(得分:1)

  1. 我没有看到使用rails或者任何其他网络语言的问题。
  2. 我认为根据您的要求采用适当的身份验证方法是OAuth。
  3. 如果我是你,我会考虑限制你的客户一次只登录一次。