We've tackled a pretty big hurdle over the last two months that most development teams would never want to do: switching our game engine. Under normal circumstances that's a coding nightmare, but less so for us, as we're switching to Amazon Lumberyard; a relatively close cousin of our previous software, Cryengine®.
Moving to Lumberyard comes with a number of advantages. A good deal of them relate to the tools we get as developers, along with the engine's more robust, extensible C++ architecture. We aren't in a position to take full advantage of every feature yet (as we've built many of our own systems that do similar jobs), but we'll integrate with it more over time. Its modding-friendly licence is also a big plus, since we have plans in that area.
Lumberyard is designed with multiplayer in mind, and has cloud server deployment built-in so we can easily throw up servers wherever we like across the globe, and scale them to meet demand. Not every deployment is going to be cost-efficient, but it's nice to have the option.
Metastream is another feature we have our eyes on. This optional extra runs a lightweight server alongside the game, which can expose game data and events in real time for other services to use and display.
Once we've set it up, this technology allows streamers, analysts, or players to adapt any of the incredible charts over at d3js.org (or those of their own making) to display live game data: either in a local browser tab for enhanced replay analysis, or as a dynamic overlay for live streaming. Charts can be shared, customised, and hopefully contribute to a richer ecosystem of sharing game knowledge.
Personally, my plan for Metastream is to continue an age-old RoW tradition of setting up joke sound effects to play when I finally get a kill after 10 deaths. I'm sure there's a few streamers out there who wouldn't mind playing with custom game event reactions either!