举行比赛,如何存储所有玩家分数

时间:2019-05-29 08:57:37

标签: c# database unity3d storage

我要在我的应用程序中添加一个锦标赛,

  • 比赛进行24小时
  • 玩家可以继续比赛并只存储他们的最高得分
  • 比赛结束后,我想告诉玩家他们在所有进入的玩家中的排名。

玩家将在自己的移动设备上参加一场简单的比赛,但是排行榜将是全球性的(全球)。

比赛期间我可以在哪里存储球员得分并在结束后访问它们?

1 个答案:

答案 0 :(得分:3)

有几种方法可以解决此问题,而24小时重置可能会使事情变得有些复杂:

1。。最简单的方法可能是通过Unity的社交API使用特定于平台的游戏功能。此处的一些文档:https://docs.unity3d.com/Manual/net-SocialAPI.html 这使您可以使用例如iOS或Google Play游戏上的GameCenter

  • [+]易于实现
  • [+]免费
  • [-]您可能无法访问所有平台特定功能
  • [-]通常不会跨平台

2。。您可以本机实现平台特定的游戏功能。使用此解决方案,您绝对可以访问所有平台特定的功能。

  • [+]免费
  • [-]通常不会跨平台

3。。请使用一些第三方跨平台排行榜服务,我敢肯定,简单的搜索就会产生其中的一些,而且很可能也有Unity插件。

  • [+]应该易于实现
  • [-]可能不是免费的
  • [-]功能可能受到限制

4。。自己制作。您可以编写一个简单的Web API,将其连接到某些数据库并将其部署到云提供商。这很复杂,因为您突然需要开发,保护和维护另一件事...再加上托管费用。但由于它是您的设计,因此可以做任何您想做的事-例如,您的24小时锦标赛功能可能就是其中之一。

  • [+]可以做任何事情
  • [-]无法免费托管
  • [-]您必须编写/维护自己的

我认为您可以摆脱例如每天创建一个单独命名的排行榜的方式,作为每天重置排行榜的一种方式,但是您必须研究所有平台的特定功能。