我想在游戏中使用PlayFab来处理授权和数据库保存。但我还需要一个复杂的服务器端验证逻辑来进行战斗。 它需要了解玩家状态(查询数据库),运行一些复杂的游戏逻辑代码,写入数据库并将结果发送给客户端。游戏是通过Unity5创建的,用C#编写。我目前的选择是:
PlayFab CloudScript 。在我的情况下使用它是不切实际的,因为a)它的JavaScript,我希望共享相同的代码 在游戏中的战斗逻辑和服务器端验证代码之间。 b) 即使我使用从C#到JS的某种翻译器,CloudScript也有 对代码大小的严格限制(50,000字节可用,200,000字节 支付),我肯定会超过;
PlayFab自定义游戏服务器这个看起来很有前景,但我根本无法找到有关它如何运作的足够信息。它有Unity SDK,但似乎在运行Unity的实例上有点过分 服务器,当我不需要模拟物理等。我注意到了PlayFab 有CSharpSDK并且只在服务器上运行一个C#可执行文件会很好。虽然它建议"请从...开始 包括示例项目"在它的readme.md中,我找不到任何东西 示例项目。它适合我的目的吗?它是如何工作的 到底是什么?
拥有一组专用服务器如果playfab不适合我的任务,我只需要租用和设置服务器,平衡等等。和 运行我想要的任何东西。但是我想避免这种麻烦。
您的替代方案?
这样做最好的是什么?如果您在PlayFab CSharpSDK上有任何示例或额外信息,请提供。
答案 0 :(得分:2)
完全披露:我为PlayFab运营开发者关系,所以我经常是你在我们自己的社区论坛上与开发者交谈的人。
虽然听起来你的计算密集型需求远远超过Cloud Script的设计,但我首先要说的是,我们实际上可以将限制扩展到基本升级之外。如果这是您想要的方向,我们当然可以讨论它 - 只需在我们的网站上打开一张票,我就此与您讨论。
回答你的问题:
CSharpSDK repo中的示例特别是UnitTestRunner。它旨在以与标题相同的方式进行调用 - 虽然我确实看到我们只提供组合的SDK测试运行器,因此我将使用我们的工具团队打开一张票,以获取仅客户端API版本SDK。
我们的自定义游戏服务器托管报告位于:https://api.playfab.com/docs/custom-game-servers。简而言之,它是您想要编写的任何游戏服务器代码(目前 - 绝对值得在以后检查我们的更新)EC2中的Windows 2K12服务器。我们有一个基本的服务器,你可以在这里作为一个开始使用(虽然它确实是一个Unity项目,但要清楚):https://github.com/PlayFab/PlayFabGameServer。
我们还将提供一种在其他服务中运行服务器的方法,如果你想与EC2,Softlayer等签订自己的合同,那么它的缺点是虽然它仍然会与我们的媒人整合,报告和日志/输出文件捕获系统,我们将无法控制服务器启动/停止,因此我们将无法动态调整代表您运行的服务器数量,我们在自己的托管中的方式。该更新预计将在今年晚些时候发布。对不起,我不能更精确,但作为一项现场服务,我们必须经常调整我们的日程安排,我不希望有人依赖我们不是100%自信的日期
如果您对使用PlayFab有任何其他疑问,我会鼓励在我们的论坛上发帖,因为我们会尽快监控它们并在那里回答问题(尽管很明显,我在其他网站上办理登机手续能够)。如果您的问题需要保密,请随时打开机票,我们将为您提供所需的帮助。