Creative Assembly Supports Players While Launching Total War: WARHAMMER III on AWS
Creative Assembly (CA), a SEGA studio, is at the forefront of the strategy gaming genre, maintaining its position in the industry by rapidly developing detailed, engaging features for its Total War franchise, its award-winning, 22-year-old gaming series. To increase development capabilities, foster innovation, and iterate more quickly, CA wanted to help its team of developers spend less time managing infrastructure and focus their attention on making great player experiences by adopting fully managed solutions, including some serverless technologies.
The company had already been using Amazon Web Services (AWS) for a decade when it engaged the AWS team for support in developing a more strategic approach to adopting cloud solutions. CA decided to go all in on AWS, gradually adopting over 60 AWS services that it has used to innovate and release games at an accelerated pace. Since then, the gaming company has developed and launched eight live games—including some of its recent games in the Total War franchise—that run on AWS. Moreover, when CA released Total War: WARHAMMER III, it introduced a number of revolutionary new features to the iconic strategy franchise, including eight-player campaign multiplayer with simultaneous turns and a prologue campaign designed specifically with player onboarding in mind.
We know that AWS services are reliable and scalable, and there are all sorts of innovative ways that we can use them.”
Technical Director of Live Services, Creative Assembly
Expanding Its Cloud Journey on AWS
Founded in 1987, CA crafts deep and detailed gaming experiences for players using a wide range of devices. Since its journey to building online player infrastructure started, CA has relied on AWS to remove any necessity for time spent on systems administration, saving resources to spend on core game development instead. CA embraced the cloud in 2011, initially adopting Amazon Elastic Compute Cloud (Amazon EC2), which provides secure and resizable compute capacity for virtually any workload. As the company developed new games, it wanted to future proof its architecture, make the gaming experience more fault tolerant, and innovate more efficiently using fully managed services. “If our infrastructure is going to run, we want it to run forever and as reliably as possible,” says Seb Maynard, technical director of live services at CA.
To achieve outstanding performance and optimize its resources, CA went all in on AWS to build its game services. The company wanted to use the full breadth of AWS services for this next step in its cloud journey. “We decided that if we’re going to use managed services, we wanted to use everything that AWS provides so that we can release games more efficiently and sustainably,” says Maynard. “We know that AWS services are reliable and scalable, and there are all sorts of innovative ways that we can use them.”
Automating Systems Administration by Going Serverless
To start, CA set up Amazon EC2 Auto Scaling, which gives companies the ability to add or remove compute capacity to meet changes in demand. By implementing this feature, the company’s team of developers can focus on game features and fixing bugs instead of on provisioning more Amazon EC2 instances. By using this feature, the company managed to avoid building a dedicated backend team just to manage its architecture, instead focusing developers on supporting its live gaming services.
Moreover, the company innovated its use of Amazon EC2 Auto Scaling by pairing it alongside Erlang programming language and OTP framework to increase fault tolerance and maintain high player uptime for hundreds of thousands of players. Generally, banking and telecommunications companies use this language and framework alongside their near-real-time systems on AWS. Because CA provides its Total War series across multiple distribution services to millions of players globally, it saw an opportunity to repurpose Erlang for its live gaming services. “Erlang provides a rock-solid, battle-proven framework for building long-running systems that solve difficult distributed system problems,” says Maynard. “Pairing Erlang and Amazon EC2 Auto Scaling was the right match to build resilient, fault-tolerant services.”
As it added serverless components to its infrastructure, CA adopted AWS Lambda, which helps companies run code without thinking about servers or clusters. Pairing Amazon EC2 with AWS Lambda, CA has developed approximately 25 microservices running across 38 environments. “We’re no longer managing infrastructure,” says Maynard. “We don’t have to do a hard-core analysis of how many hardware nodes we need to buy. It’s a very different way of building and provisioning.” With greater scalability, the company can better allocate its resources to support core game development.
The company also implemented Amazon DynamoDB, a fast, flexible NoSQL database service for single-digit millisecond performance at virtually any scale. “Using Amazon DynamoDB, we can write our data to it and save it with ease,” says Maynard. “We don’t have to think about or worry about it. The solution makes things easier for our teams.” Alongside DynamoDB, CA uses Amazon Kinesis Data Streams, which easily streams data at virtually any scale. “Kinesis Data Streams is great for our metrics pipeline,” says Maynard. “We can track near-real-time streams that give us graphs of crashes by users and countries.” Using these solutions, CA has gained deeper insights about the player experience so that it can quickly identify and fix bugs in a localized way for minimal impact on players.
As of 2022, CA has released eight live games that run entirely on AWS, and it has developed multiplayer modes with simultaneous turns for Total War: WARHAMMER III. “The number of features that we’ve added to our games and the breadth of AWS services that we use is massive,” says Maynard. “We’ve proven that we can build a whole bunch of gaming experiences with a team of less than 20 engineers.”
Planning Game Releases for the Future
With an architecture that lends itself to innovation and sustainability, CA plans to further expand its gaming development teams and explore other serverless solutions on AWS. “AWS provides us with really great tools that we’re using to build resilient services,” says Maynard. “We are evolving, and the games that we build are more powerful, broader, and bigger than ever.”
About Creative Assembly
Founded in 1987, CA strives to deliver deep and detailed gaming experiences to its players across a wide range of distribution services and consoles. The company’s headquarters are located in the United Kingdom and Bulgaria, and it employs over 850 employees.
Benefits of AWS
- Developed and launched eight live games on AWS
- Scales to the demand of concurrent players
- Increased the fault tolerance of its workloads
- Freed up team members to focus on more innovation and game development
- Built multiplayer modes with simultaneous turns
- Developed 25 microservices running across 38 environments
AWS Services Used
Amazon Elastic Compute Cloud (Amazon EC2)
Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides secure, resizable compute capacity in the cloud. It is designed to make web-scale cloud computing easier for developers.
AWS Lambda is a serverless, event-driven compute service that lets you run code for virtually any type of application or backend service without provisioning or managing servers.
Amazon DynamoDB is a fully managed, serverless, key-value NoSQL database designed to run high-performance applications at any scale.
Amazon Kinesis Data Streams
Amazon Kinesis Data Streams is a serverless streaming data service that makes it easy to capture, process, and store data streams at any scale.
Organizations of all sizes across all industries are transforming their businesses and delivering on their missions every day using AWS. Contact our experts and start your own AWS journey today.