By using AWS re:Post, you agree to the Terms of Use

Unanswered Questions tagged with Amazon GameLift

Sort by most recent
  • 1
  • 2
  • 12 / page

Browse through the questions and answers listed below or filter and sort to narrow down your results.

Cannot create concurrent game sessions on spot instances in GameLift fleet

I'm working on getting a GameLift fleet up and running. I've been testing in GameLift Local for a while now and just recently started using GameLift proper to test the server build. I have it set to be able to handle 10 concurrent processes per instance (with ten ports specified for use), and I only have one instance running. I can connect to the instance just fine with one client, but I cannot connect with additional clients, even though I set it to allow up to ten. Checking the GameSessions tab for the Fleet in the GameLift console, I can see that only one GameSession is ever active at a time. I'm also seeing a bunch of SERVER_PROCESS_CRASHED events in the event tab that say "Server process exited without calling ProcessEnding(), exitCode(0)," and these are happening between every 5 to 10 minutes. I'm assuming the two issues are connected but I'm not sure how to fix it. I've looked for solutions but I haven't found anything that works yet. The game server is built in Unity, and there's a couple of parts of the code that I'm curious might be the issue, even though I never saw any such errors in GameLift local. First, I wonder if I'm calling Application.Quit() to quickly after calling ProcessEnding(). Right now I have them running like this: ``` var result = GameLiftServerAPI.ProcessEnding(); _networkManager.ServerManager.StopConnection(true); Application.Quit(); ``` Based on some other posts I've seen, it sounds like I need to wait until the ProcessEnding() result is true, but shouldn't it already wait to get the result in this context before calling Application.Quit()? Second, I thought it's possible that my method for setting the port might be causing an issue. I had seen a post that said it wasn't working on Linux at one point, but I tested it on a regular Linux EC2 instance in a dummy project with multiple processes running, and they were able to increment through the array of ports I set looking for unused ports. That code is like this: ``` private void SelectAvailablePort() { foreach (var port in ports) { bool available = false; available = IsListeningPortAvailable(port); if (available) { sessionPort = port; break; } } } public bool IsListeningPortAvailable(int port) => !IPGlobalProperties.GetIPGlobalProperties().GetActiveUdpListeners().Any(x => x.Port == port); ``` I'm not sure if this is breaking something on the server, since I was able to get it to work fine in the dummy project on a Linux instance, but since I cannot get past the single GameSession and I remember seeing someone saying it didn't work on Linux, it makes me wonder if it could be the issue. Do you see anything in the code above that could be causing the issue, or if not, is there something else I should try checking to see if it's the source of the problem. Again, I'm just trying to get the game to allow for multiple GameSessions per instance, but only one server process is active at a time. When I try to connect from a second client, I get an error that says there weren't any server processes available. Any advice you may have would be greatly appreciated!
0
answers
0
votes
5
views
asked 2 days ago

Amazon GameLift now supports support for AWS Local Zones

Hello GameLift Devs, Today, the GameLift team is excited to announce the general availability of AWS Local Zones. With this update, you can seamlessly provide gameplay experiences across 8 new AWS Local Zones in Chicago, Houston, Dallas, Kansas City, Denver, Atlanta, Los Angeles, and Phoenix. Along with the updated support for Local Zones, we are adding new instance types specifically supported in the various Local Zone Regions, including C5d and R5d instance types. Additionally we are adding support for the next generation [C6a](https://aws.amazon.com/ec2/instance-types/c6a/) and [C6i](https://aws.amazon.com/ec2/instance-types/c6i/) instance types. Amazon EC2 C6i instances are powered by 3rd Generation Intel Xeon Scalable processors and deliver up to 15% better price performance compared to C5 instances for a wide variety of workloads and are ideal for highly scalable multiplayer games. You can find updated pricing on the [GameLift pricing page](https://aws.amazon.com/gamelift/pricing/) as well as in the [AWS Pricing Calculator](https://calculator.aws/#/addService/GameLift). For more information, please refer to our [Release Notes](https://docs.aws.amazon.com/gamelift/latest/developerguide/release-notes.html#release-notes-summary) and [What’s New post](https://aws.amazon.com/about-aws/whats-new/2022/08/amazon-gamelift-supports-aws-local-zones/). Mark Choi, GameLift PM
0
answers
1
votes
52
views
asked a month ago

GameLift adds Osaka and FleetIQ now supports Graviton2-powered instances for better price performance

Hi Game Devs, Today, we are excited to announce an update to Amazon GameLift that increases coverage for developers and enhances seamless, low-latency gameplay experiences for players in Japan. This update adds Asia Pacific (Osaka) Region to GameLift and enables our game developer customers to place servers in their multi-region fleets closer to players’ actual regional locations in Japan with Asia Pacific (Osaka) and Asia Pacific (Tokyo) regions. We are also happy to introduce that GameLift FleetIQ now supports next-generation [AWS Graviton2 processors](https://aws.amazon.com/ec2/graviton/). You can now use Graviton2-hosted game servers, based on the Arm-based processor architecture, in FleetIQ to achieve increased performance at a lower cost when compared to the equivalent Intel-based compute options. To learn more about this update, please visit [our blog post](https://aws.amazon.com/blogs/gametech/now-available-new-asia-pacific-osaka-region-and-graviton2-support-for-amazon-gamelift/). In summary, this GameLift update will: * **Deliver lower player latency from increased global coverage.** Now with 23 regions with the launch of Osaka region, game developers can place players closest to where they are playing to ensure a smooth experience using GameLift’s multi-region fleet. * **Better performance at lower cost.** GameLift FleetIQ now supports Graviton2-powered instances, including c6g, m6g, r6g instance families. Available regions are Asia Pacific (Mumbai), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), Europe (London), South America (Sao Paolo), US East (N. Virginia), US East (Ohio), and US West (N. California), US West (Oregon). Best, Yi-Min GameLift Product Manager
0
answers
0
votes
11
views
asked a year ago

GameLift adds support for new rule type ‘BatchDistance’ in FlexMatch

Hello GameLift devs, Today, the GameLift team is excited to announce the launch of a new rule type called “BatchDistance”. When creating a rule set for FlexMatch matchmaking, this new rule type allows for a string or numeric attribute to be specified, giving you more flexibility and improving matchmaking quality for large matches (>40 players). There are also benefits to smaller matches (i.e., less than 40 players), with simplification of syntax. Previously, large match support in FlexMatch only allowed for balancing teams according to a single numeric attribute (with skill being the typical example). While this allowed for evenly-matched teams, your players could still end up in a match playing against players with varying skill variances. The following example demonstrates how this can happen: * You are creating a match where teams are balanced by “skill”, where GameLift would try to ensure that the “skill” of each team is as close as possible to each other. * Let’s say one team has two players with“skill” values of 1 and 99, and another has two players that have “skill” values of 49 and 51. In both cases, the two teams have an average skill value of 50, so they are evenly balanced. * This results in one team with a high variance in ability (i.e., the team with skill values of 1 and 99), while the other team has a very low variance, leading to a potential mismatch. Now, with this new rule type “batchDistance”, you have the ability to create a large match with players with similar attributes. For numeric attributes, you can also specify a “maxDistance”, where all formed batches will contain players where that attribute is within a certain distance of each other. So using the above example, if you set a maxDistance of 25, you would end up with matches that contain players will skill 0-25, 15-40, etc. There are many other ways the new batchDistance rule type can help you create higher quality, balanced matches: * For large matches (>40 players), you can also balance based on modes and maps. Ensure everyone in the match is in a skill band, band multiple numeric attributes like league or playstyle, and group according to string attributes like map or game mode. * For small matches (up to 40), you can use a simpler syntax to express certain common rules. * For both large and small matches, you can create expansions over time. For example, you can create an expansion to allow a greater skill level range to enter the match the longer the player is waiting. For more information, please refer to the following: [Release Notes](https://docs.aws.amazon.com/gamelift/latest/developerguide/release-notes.html) [FlexMatch Docs Update](https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-rules-reference.html) Mark Choi, GameLift PM
0
answers
0
votes
16
views
asked a year ago

GameLift SDK Updates for Unreal 4.26 and Realtime Servers

Today, we updated GameLift’s Server SDK for Unreal Engine v4.26 and GameLift’s Realtime Servers Client SDK to support IL2CPP, a Unity technology for converting C# code to C++ code. Developers looking to integrate their new games with Unreal 4.26 will now be able to utilize GameLift’s Server SDK with no compatibility issues. Developers utilizing GameLift’s Realtime Servers Client SDK can now build to Unity’s IL2CPP framework. **Release Highlights:** * Added GameLift Server SDK support for Unreal version 4.26. * Added support in the RTS Client SDK for IL2CPP and building the Native libraries as Frameworks, allowing RTS clients to be built for the latest mobile devices. * Developers can use [DescribePlayerSessions()](https://docs.aws.amazon.com/gamelift/latest/developerguide/integration-server-sdk-unreal-ref-actions.html#integration-server-sdk-unreal-ref-describeplayersessions) to get information for a single player session, for all player sessions in a game session, or for all player sessions associated with a single player ID. * Developers can use [GetInstanceCertificate()](https://docs.aws.amazon.com/gamelift/latest/developerguide/integration-server-sdk-unreal-ref-actions.html#integration-server-sdk-unreal-ref-getinstancecertificate) to retrieve the file location of a pem-encoded TLS certificate that is associated with the fleet and its instances. * The existing C# SDK, version 4.0.2, has been verified compatible with Unity 2020.3. No SDK updates were required. For more info, please visit: * [AWS What’s New](https://aws.amazon.com/about-aws/whats-new/2021/06/amazon-gamelift-adds-sdk-support-and-updates-for-unreal/) * [GameLift Release Notes](https://docs.aws.amazon.com/gamelift/latest/developerguide/release-notes.html#release-notes-summary) * [GameLift Getting Started](https://aws.amazon.com/gamelift/getting-started/)
0
answers
0
votes
32
views
asked a year ago

FlexMatch pricing

https://aws.amazon.com/gamelift/pricing/ > GameLift FlexMatch usage is included in the fees for GameLift if you host your games on GameLift servers. **Does this mean that FlexMatch is free if I let GameLift / GameLfit Realtime manage my server instances?** > GameLift FlexMatch usage will be charged separately if you host your games on any other game server solution, including on-premises, peer-to-peer, cloud compute primitives, and GameLift FleetIQ. You are charged based on the number of **Player Packages** you submit and the number of **Matchmaking Hours** you consume. Some rough analytics - Break into two groups - Short session game (mobile PVP): 2 mins game session, 1 min idle interval, 1v1 gameplay. - Long session game (PC PvP): 10 mins game session, 2 mins idle interval, 10v10 gameplay. ``` match requests (player packages) / sec = CCU / (game session length + player idle interval) match hours = match requests / player-per-match * match window / 3600 ``` Short session |CCU|session length (mins)|idle time (mins)|match requests/sec|match requests/mo|match requests $|players/match|match window (secs)|match hours|match hours/mo $| |---|---|---|---|---|---|---|---|---|---| |50|3|1|0.21 | 540,000 | 10 |2|5| 375 | 370 | |600|3|1|2.50 | 6,480,000 | 129 |2|5| 4,500 | 4,495 | |2000|3|1|8.33 | 21,600,000 | 431 |2|5| 15,000 | 14,995 | |5000|3|1|20.83 | 54,000,000 | 1,079 |2|5| 37,500 | 37,495 | |10000|3|1|41.67 | 108,000,000 | 2,159 |2|5| 75,000 | 74,995 | Long session |CCU|session length (mins)|idle time (mins)|match requests/sec|match requests/mo|match requests $|players/match|match window (secs)|match hours|match hours/mo $| |---|---|---|---|---|---|---|---|---|---| |50|10|2|0.07 | 180,000 | 3 |20|10| 25 | 20 | |600|10|2|0.83 | 2,160,000 | 42 |20|10| 300 | 295 | |2000|10|2|2.78 | 7,200,000 | 143 |20|10| 1,000 | 995 | |5000|10|2|6.94 | 18,000,000 | 359 |20|10| 2,500 | 2,495 | |10000|10|2|13.89 | 36,000,000 | 719 |20|10| 5,000 | 4,995 | - For the short session game, it doesn't make sense at all - way more expensive. - For the long session game, it may be affordable. Because this genre usually gains higher LTV. Well, it's good to have FlexMatch as a free addition to Gamelift services (if it is). But as a standalone service, it's just too expensive. The estimation is rough, it assumes the CCU is a constant for 7x24x30. But you can just half the CCU number to get the point. Please let me know if it's not good, or am I missing something obvious.
0
answers
0
votes
12
views
asked 2 years ago

GameLift adds SIX new regions and easier Fleets management with Multi-Region Fleets

Today, we are excited to announce the general availability (GA) of an update to Amazon GameLift, which increases global coverage for developers, while providing seamless, low-latency gameplay experiences for players worldwide. With this update, game developers can now tap into six new regions (from 15 to 21), while also getting up and running faster from simpler fleet management. With Multi-Region Fleets, not only can you now reach more regions, we have also reduced the complexity of creating and managing separate fleets, so you only have to create and upload a build once, replicate, and then deploy across multiple regions. To learn more about this update, visit our [more regions](https://aws.amazon.com/blogs/gametech/amazon-gamelift-announces-general-availability-of-six-new-regions/) and [ease of use](https://aws.amazon.com/blogs/gametech/amazon-gamelift-is-now-easier-to-manage-fleets-across-regions/) blogs. In summary, this GameLift update will: * Deliver lower player latency from increased global coverage. Now with 21 regions instead of 15, place players closest to where they are playing to ensure a smooth experience. The 6 new regions include: Europe (Milan, Paris, and Stockholm), Africa (Cape Town), Middle East (Bahrain), and Asia Pacific (Hong Kong). * Build once, deploy anywhere. Simplify fleet management by creating and uploading builds once, replicate, and deploy in multiple regions. Key regions that support this simplified fleet management include: US East (N. Virginia), US West (Oregon), Europe (Frankfurt and Ireland), Asia Pacific (Seoul, Sydney, and Tokyo). * Access an easier to use console. It’s now easier to dive into the metrics. Previously, you had to aggregate multiple fleet metrics across all regions. Now, with a location dimension, all metrics are aggregated so you can grab and view metrics for all locations from the fleet’s region. As a reminder, GameLift is available in 21 public Regions: US East (Ohio and N. Virginia), US West (N. California and Oregon), Africa (Cape Town), Asia Pacific (Hong Kong, Mumbai, Seoul, Singapore, Sydney, and Tokyo), Canada (Central), Europe (Frankfurt, Ireland, London, Milan, Paris, and Stockholm), Middle East (Bahrain), South America (São Paulo), and China (Beijing) operated by Sinnet. [Full Release Notes](https://docs.aws.amazon.com/gamelift/latest/developerguide/release-notes.html#release-notes-summary)
0
answers
0
votes
8
views
asked 2 years ago
  • 1
  • 2
  • 12 / page