问题标签 [amazon-gamelift]

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 投票
1 回答
363 浏览

amazon-web-services - 在 Unity3d 中创建 AmazonGameLiftClient 失败

我使用以下代码在 Unity3d 中创建 GameClient:

以上代码是 Awake() 中的第一行,没有任何其他前导代码。

我得到以下错误:

有什么我忘了做的吗?我认为根本原因是我没有将 app.config 放在正确的位置。所以 AWS SDK 没有正确初始化,但我还没有找到任何使用 Unity3d 作为 Amazon GameLift 客户端的教程 :(

我的环境:

  • 操作系统:Mac OS X 10.14.1
  • Unity3d:2018.2.12f1
  • AWS 开发工具包核心:3.3.29.10(.net35)
  • AWS 开发工具包 GameLift:3.3.12.29(.net35)

更新: AWS SDK 依赖于 Unity3d 项目中似乎不可用的 System.ConfigurationManager。这似乎是 NullReferenceException 的根本原因。

0 投票
1 回答
2196 浏览

c# - 如何将 GameLift 与 Unity3d 集成为游戏客户端

我正在尝试使用 Unity3d 游戏作为 GameList 客户端。

根据GameLift 论坛,亚马逊似乎不建议直接将游戏客户端用作 GameLift 客户端。

但我想试一试,因为我不想要一个单独的游戏服务。

  1. 第一步是从GitHub下载 AWS SDK 源代码并构建 .net35 版本的 dll;

  2. 将 AWSSDK.Core.dll 和 AWSSDK.GameLift.dll 放入 /Assets/Plugins;

  3. 从 MonoBehaviour 创建一个新的派生类来创建 AmazonGameLiftClient,下面是我的代码:

  1. 这里我遇到了第一个问题:Failed to create the GameLiftClient

  2. 解决上述问题后,我尝试使用 AmazonGameLiftClient 列出车队:

但我得到以下异常:

  1. 我在我的 aws.config 中添加了更多配置来修复它,下面是我的整个 aws.config:
  1. 现在我得到另一个例外:

有人知道这个例外吗?

我的环境:

  • 操作系统:Mac OS X 10.14.1
  • Unity3d:2018.2.12f1
  • AWS 开发工具包核心:3.3.29.10(.net35)
  • AWS 开发工具包 GameLift:3.3.12.29(.net35)
0 投票
1 回答
127 浏览

c++ - 包括 Boost ASIO 与 Amazon Gamelift SDK 的冲突

如果我在没有实际使用 boost::asio 的情况下将 boost ASIO 包含在头文件中,那么在我调用的任何时候Aws::GameLift::Server::InitSDK(),应用程序都会从​​不同的线程崩溃。这样的事情怎么可能?

Exception thrown at 0x00007FFC4ADEA6AB (ntdll.dll) in MyApp.exe: 0xC0000005: Access violation writing location 0x0000000100000023.

这是我的包含 - 只要在任何头文件的顶部添加它都会在 InitSDK 调用后触发异常。

我在用着:

  • Visual Studio 2015 工具集 v140

  • 提升 1.52.0

  • Windows 8.1 SDK(运行 Windows 10)

我看过这个问题:boost::asio::io_service crash in win_mutex lock

当我添加#define BOOST_ASIO_DISABLE_IOCP时,异常发生变化并且调用堆栈在主线程上。这使我相信它与套接字服务的不同实现有关,具体取决于使用的定义。

0 投票
0 回答
280 浏览

javascript - 如何将实时脚本连接到 gamelift 本地 sdk

我正在尝试设置gamelift,为了测试集成,我在本地启动了gamelift,它实例化了亚马逊游戏服务这里是日志

现在我不知道如何在端口 5757 与我的实时脚本建立连接。

我试过使用

它甚至不会 ping 本地的 gamelift。

请帮助如何建立连接。

0 投票
1 回答
200 浏览

amazon-gamelift - 如何为 AWS Game Lift 修复此匹配规则集

我是 Game Lift 的新手,正在尝试为我正在创建的项目的 Jeopardy 游戏制定规则集。我尝试应用我想要做的配对,但我似乎总是遇到这个错误,并且无法为我的生活找出问题所在。

我正在做 3 名球员,每个球员的技能几乎相同,以保持公平。有人可以解释我做错了什么吗?

我已经查阅了有关 Game lift 的所有文档,但我仍然对这部分的工作原理感到困惑。他们提供的示例有效,我尝试根据自己的喜好对其进行编辑,但似乎不起作用。

我一直在验证它,希望它接受它,但我的错误消息并没有像这样继续发生:

0 投票
2 回答
169 浏览

amazon-web-services - AWS GameLift:错误!无法编辑舰队。启动路径必须以“/local/game”开头

在 GameLift 中创建队列后,尝试对其进行编辑,然后单击提交,我收到此错误:

错误!无法编辑队列 TestFleet。原因:更新队列启动配置失败:启动路径必须以“/local/game”开头..

这很奇怪,因为即使我没有更改任何内容,但单击提交,我仍然会收到此错误。此外,'/local/game' 会自动添加到游戏路径中,但我仍然收到错误消息。

当前脚本路径

任何帮助将非常感激!

0 投票
1 回答
448 浏览

multiplayer - 我应该使用哪个 Gamelift 实例来同时处理 100 万玩家?

我试图了解 Gamelift 的工作原理,因为我完全是游戏开发的新手。

根据 AWS 的说法,一个 Gamelift 实例每个会话最多可以处理 200 名玩家,但也可以同时托管多个会话。

首先,我想知道,例如,一个m5.large实例可以处理 200 个玩家会话吗?

其次,哪个实例提供最大的同时/同时托管多个会话的容量?

第三,Linux和Windows实例有什么区别?我知道 Windows 实例要贵得多,但有什么优势?

谢谢

0 投票
1 回答
585 浏览

c# - Google.Protobuf.Reflection 不适用于 Unity 中的 il2cpp 脚本

我正在使用 amazon gamelift 在 unity3d 中创建一个 android 游戏。
我正在使用实时服务器客户端 sdk。当我运行该应用程序时,它会在我的 gamelift 车队中创建一个游戏会话,但在我使用 IL2CPP 服务器脚本时无法发送消息。
当我使用 Mono 时它工作正常,但在切换到 IL2CPP 后我面临许多修复,我找到了许多错误的解决方案,但无法找到这个特定错误的解决方案。似乎 Google.Protbuff.Reflection 不适用于 IL2CPP.Error 显示它无法找到方法 ClearMessage,即使它在那里。
谁能帮帮我吗..

0 投票
0 回答
247 浏览

amazon-web-services - AWS gamelift 车队创建错误:SERVER_PROCESS_TERMINATED_UNHEALTHY

当我在 AWS gamelift 中创建车队时,它返回此错误:

,一分钟后服务器(舰队)激活,但我没有在列表中的活动服务器。

将此代码用于 Lambda 测试:

我收到此错误:

有关更多参考,我遵循了本教程的第 1 部分和第 2 部分: https ://www.youtube.com/watch?v=WaAZyqgkXDY&t=315s

0 投票
2 回答
95 浏览

python-3.x - 如何在 python 中使用 boto3 更新 AWS Gamelift 脚本?

我在尝试使用 python 命令更新 AWS Gamelift 脚本时遇到问题,该命令压缩目录并将其所有内容作为较新版本上传到 AWS Gamelift。

我计划在每次进行更改时给它一个新的版本号来使用它:

这是为了帮助加快开发速度。但是,我对 client.update_script() 的 ZipFile 参数做错了

对于上下文,我可以直接从命令行使用 AWS CLI,并通过以下方式毫无问题地更新脚本:

但是,我不确定发生了什么,因为当我尝试它时它无法解压缩文件:

更新:

阅读有关 ZipFile 参数的更多文档后:

https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateScript.html

https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/gamelift.html#GameLift.Client.update_script

我尝试发送 zip 文件的 base64 编码版本。然而,这并没有奏效。我将以下代码放在脚本的 client_update 部分之前,并使用 b64EncodedZip 作为 ZipFile 参数。