This content was created in association with Improbable. Find out more about Improbable and Game Server Hosting orchestration here.
What does ‘finding the fun’ mean to you? Maybe it’s about experimenting with scale and simulation. Perhaps it entails regular content updates to keep players engaged, or putting on epic events to reinvigorate your community and bring in new players.
What about making sure players get to play your game as it was designed to be played, without pesky lag or technical glitches? It might sound basic, but setting up your backend tech in a way that supports and elevates your game is anything but. The bottom line is: if you want players to spend time in your game and keep coming back, you’d better make sure you offer them a seamless, immersive experience.
Effective game server orchestration is vital for the success of your game
Game server orchestration is the ongoing process of reconciling the availability of game servers against player demand to make sure your game runs smoothly. Vital though it may be, ideally players will never even be aware it’s happening. Effective orchestration is invisible.
Many of the challenges studios face when attempting to manage orchestration in-house might not be obvious from the outset – which can lead to catastrophe down the line. In a bid to eradicate some of the mystery, we’re sharing seven things you need to know about game server orchestration to guarantee a great player experience.
- Hug the demand curve
Compute isn’t cheap, so buying it is a delicate balancing of the books. On one hand, buy too little and you could risk losing players because they have nowhere to play, which costs revenue in the long run. On the flip side, no studio wants to pay for compute you don’t actually need. To run your game efficiently, your server availability should mimic demand – that means provisioning more in the evenings and on weekends, for example, when players are more likely to log in.
But what if demand suddenly and unexpectedly spikes? VP Customer Experience at Improbable Manuel Karg says, “You can’t predict, but you can prepare.” If a streamer goes live on your game, or a high-profile gamer Tweets about it, you don’t want players having to wait while servers boot up. To mitigate this, keep a buffer system of pre-warmed compute ready to go at a moment’s notice.
- Combine bare-metal and cloud for cost-efficiency
The first thing to know is there are two types of compute that are priced differently. Bare-metal is cheaper, but you buy it on a monthly basis. Whereas cloud is more expensive, but can be provisioned per minute. Bare-metal is a better choice when your player count is predictable over a long period of time – that way, you can justify the monthly subscription. But for random player spikes – or times when there’s uncertainty around your expected player count, such as at launch – cloud is more flexible. You might pay a higher rate, but you’ll only pay for what you actually use.
By using a hybrid model with autoscaling, you can allocate appropriate bare-metal compute for your known player demand, then use cloud compute to bridge the gap during periods of high demand. This gives you the best of both worlds: the cost effectiveness of bare metal, with the elasticity of the cloud.
- Plan ahead for regional availability
It’s not enough to have the right number of servers for your players. Typically, you also need to make sure you strategically place servers so no player is too far away from one – or else risk high ping times that cause frustration and impact player experience.
You might be thinking this isn’t an issue, because your game is only available in limited regions. But when it comes to regional availability you need to be looking to the future. If you tie yourself to a provider with limited regional viability early on, it might impact your potential revenue if and when you do expand by limiting your addressable market.
- Strategise your game’s hardware requirements
When it comes to hardware, every game is different. Some require more CPU power (GHZ) to run, whereas others are more memory-intensive. One thing all games have in common is that players will log off if they experience a distracting amount of lag caused by poor hardware performance.
To ensure a smooth player experience, first decide on the ideal CPU, RAM, storage and bandwidth configuration for your game – then work out which servers and suppliers offer it. It’s a fair assumption that more expensive servers have more power, but that’s not the whole story. Cloud providers have limited hardware types, so they might not always be the optimal choice.
- Get your server supply chain in order
Effective orchestration requires that you have sufficient servers available to cover your expected player count, along with plenty on standby so you can scale up on demand. Of course, that means establishing and maintaining a partnership with a compute provider – or, in most cases, multiple suppliers.
Even if you’re managing game server orchestration in-house, you might want to think about outsourcing your supply chain management – that way, you can benefit from a hybrid, cross-provider solution with only one point of contact. If you partner with IMS on your game server orchestration this comes as part of the package.
- Gain observability over your server infrastructure performance
The more transparency you have over your game, the quicker and better you can iterate to improve player experience. But if you don’t plan for gaining insights into player behaviour until your game is live, it can leave your observability stack lacking.
Done right, observability means capturing the right data, recording it in the right way, and asking the right questions about disaster recovery, fault tolerance, replication, scalability and more. To make sure it stays useful, studios building their own observability pipeline also need to be aware of what’s involved in (and potential hidden costs of) scaling it.
- Nail your image distribution
To make sure your game plays as it should, you need to ensure your game servers always have the image ready to run when they spin up. That means you need the ability to quickly and effectively distribute images globally to both cloud and bare-metal machines without any downtime.
Nailing your image distribution also means you can run several builds in parallel and run tests across all of your environments. Whether you’re developing during soft launch or launching regular content updates to keep your live game fresh, the faster you can upload, store, distribute and update the image, the more seamlessly you can iterate.