在游戏领域，云技术在2013年得到广泛支持。今年2月，NewZoo首席执行官Peter Warman甚至宣称“有朝一日所有游戏都会实现云端运行。”我同意他的预言，虽然我不知道游戏全面云化的“有朝一日”到底是哪一天，但我敢肯定2014年会是大多数游戏“飞上”云端的一年。许多大公司已经把游戏搬上云端。例如，游戏如《Candy Crush》只有一小部分在设备上运行，大部分精巧的工作是在云上或服务器端完成的。游戏开发者需要适应的是心态转变。公司如King也在考虑为游戏搭建一个数据中心。我们也必须那么做。以下是原因：
如果游戏设计很出色，那么你要擅长的第二样本领就是，销售理论并且有支持你的合适的系统。你的系统必须有管理股票、定价、定位、管理仓库、分析数据和报告的功能。这些都是云端需要的工具，因为在每一款游戏中分别构建是不可能的。它们对于电子商务系统是必不可少的功能，如果不具备基本的玩家管理和合造的销售系统，没有人能擅长在不同设备上销售大量游戏。经营游戏需要灵活性，这样才能维持游戏的动态变化。例如，能够快速改变虚拟商品的价格，给忠实玩家提供的折扣和举办促销活动。这些事是不可能提前准备的，这就是你的游戏必须搬上云端的原因。把这些事做好了才有可能获得像Supercell的《Clash of the Clans》和King的《Candy Crush》那样的成功。
在这样一个竞争激烈的世界，玩家开发是游戏开发者面临的一个大问题。因此，有那么多游戏设计师忽略了关于玩家开发的关键元素——多人模式，不可谓不令人惊讶。从根本上说，社交性越强的游戏，病毒传播力越强。Zynga 的《Letter Press》、《Draw Something》和“with Friends”系列能在一个平台上获得巨大的成功，正是归功于游戏本身的社交性和多玩家属性。郎忘了营销吧。如果游戏本身不具这种病毒性传播力，那么它就一开始就是残缺的。
在多人模式方面，Apple的Game Center只为iOS设备提供混合解决方案。 Google Play的Game Services为了支持iOS和Android，也做了同样的事。在我看来，这些只是隔靴搔痒。如果你要做出一款成功的多人游戏，那么就你必须理解你在做的事。有限的游戏状态持续性、排行榜、挑战……这些都好，但其实只是冰山一角。你最终需要把游戏逻辑转移到后端和开发服务器端代码。
Resistance is futile: 5 reasons your games need to run in the cloud
By John Griffin
2013 has so far seen the emergence of some pretty strong endorsement for the cloud when it comes to games. Peter Warman, CEO of the highly rated NewZoo, boldly declared in February that ‘Someday all games will run in the cloud’. I agree with this. I am not sure when exactly it will apply to 100% of games but I am sure 2014 will be the year that most games convert. Many of the larger games studios of course already architect their games on the cloud. In fact, if you look at a game like Candy Crush, the device executable is only a tiny part of it. Most of the smart stuff is done in the cloud or on the server-side. Its a mindset shift that games developers need to adopt. Companies like King think data centre when they think game. Most of us need to do the same. Here’s why …
(please note that in most cases I am using ‘the cloud’ to imply server-side but stick to referring to the cloud for reasons that should become clear at the end)
#1: It costs less
These days a game needs to launch across a lot of platforms – particularly if mobile. A game that has to launch across iOS, Android, Windows etc on tablet, smartphone and now the whole plethora of open consoles appearing on the market will end up having lots of versions of the core game client-side code. In fact many of the games developers we work with have up to 15 different versions of the same game. This is a versioning nightmare and not to mention unmanageable in the medium term. It makes complete sense to reduce the amount of game logic that happens in the client and transfer it to a single instance on the server that interfaces with them all. Of course there are lots of ways to minimise the overhead of the versioning issue such as source code control systems like Perforce and Git. Game engines like Unity also allow you to write once and run across devices. Sure these can work … but combined with the other key reasons, the best solution is to move as much of the game logic to the server as you can. This is really just following the architectural shift towards multi-tiered systems that has already occurred in many other verticals.
#2: You cannot run your game as a service if it is not in the cloud
There has been a strong paradigm shift towards thinking of games as a service (GaaS) rather than as a product (GaaP). Why? Its less risky for both publishers and developers … They are less orientated around trying to build instant hits and gambling huge amounts to support the initial launch. Rather they take a long term view and take a good game concept, get it out as early as possible and build player numbers over time making sometimes (but hopefully minimal) fundamental changes to the game in response to feedback from players. There are other reasons for this shift too though. Basic technology changes make this shift possible. Digital convergence generally speaking has played a big role. GaaP to GaaS is the key way the games industry is evolving to the changing digital landscape (always-on fast connections, device capabilities, penetration leading to huge player volumes, etc etc). Ultimately, to sustain a games business the games have to make more money than they cost to build and operate (and yes – to market). Of course I realise this is stating the obvious but it needs to be stated plainly as it seems to get overlooked by so many people so frequently.
The business models underpinning the games industry are evolving so fast it is hard to know what works in every circumstance. Freemium? F2P? Subscription? Which one is right for you? If you embrace cloud-based gaming you don’t have to hitch your wagon to only one of these models. Cloud-based systems allow you to play with these models a lot more. I don’t advocate designing great gaming experiences without having a strong idea about how to go to market but I do strongly recommend you build in the ability to tweak it or alter it as you go forward in response to what your player base tells you. There are no hard and fast rules around this. What works for one demographic in one country for a particular genre of game may not work elsewhere. There are so many variables at play that its hard to predict with any certainty. Publishers play the game that VC’s do … they bet on several and hope and pray the good bets cover the bad bets. Its not a good idea to just take a punt and hope for the best.
When you run a game as a service, you are now in the business of building an audience and trying to make more money from them than it costs you to get them to your game. Once you have players playing your game you need a lot of capabilities in order to be successful at this. You need to understand how players are playing the game. You need to understand their preferences and their buying habits and be able to respond to this. You need to give them new and engaging content. You need to enable them to engage socially with their friends. It is only when these things are done properly will a games company successfully sustain and grow its player base. You cannot achieve this without having your games based on some server side capabilities such as player management, in-game commerce and storefront management, dynamic content management, analytics etc.
#3: You can be more effective at in-game selling
I am a huge fan of the Free-2-Play revenue model for a variety of reasons and recognise one thing very clearly. To do well out of it I have to be an expert at selling. There are many levels to this expertise. The first and most important aspect is to design the whole gaming experience with this in mind. Game designers need to create scarcity in a world where clearly there are no real limits to supply. I can create more digital tractors than the world will ever need – anyone can. Once there is scarcity you have a supply and a demand. Once you have that you have a market … and once you have that you are in the selling game.
If the game design is good then the second thing you need to get pretty good at is retail theory and have the systems in place to support you. You need to have stock management, pricing, placement, store management, analytics and reporting capabilities. These are all tools that should be available on the cloud as it would be wrong to build them into each and every game. They are the essentials of eCommerce systems and there is no way one can be good at retailing across a large install base of games on different devices without some basic player management and merchandising systems in place. Running a game requires flexibility so that things can be changed dynamically. For example, being able to change the prices of virtual goods on the fly, offering discounts for loyalty and running promotions. Its an impossible task to get all of this right up front which is why your game needs to be dynamic and cloud-based. Getting this right is the key to success like that enjoyed by Supercell with Clash of the Clans and King with Candy Crush.
Systems in this area are in short supply admittedly. The larger games companies have, to date, had to build these capabilities themselves, which is a shame. People in other verticals, faced with similar challenges, wouldn’t expect to have to build a CRM or an eCommerce system from scratch any more. I’ll be open. I work for a company (GameSparks) whose main purpose is to bring these capabilities to every games developer. The reason I work for this company is because I believe what I am writing.
#4: You need the cloud to support multiplayer
In a very competitive world, player acquisition is one of the larger issues facing game developers. It is surprising therefore that so many game designs overlook one of the key strategies around player acquisition: multiplayer. Ultimately, games that are more social by design and bring people together to play are more viral. Letter Press, Draw Something, the ‘with Friends’ series from Zynga were all at one stage (if not still) hugely successful games because of the social and multi-player nature of the games themselves. Forget marketing. If the games themselves do not support virality the game is handicapped from the start.
With respect to multiplayer, Apple’s Game Center provides a hybrid solution for iOS devices only. Google Play’s Game Services does the same and aims to support both iOS and Android. In this writer’s opinion these are just scratching the surface. If you are going to be successful in building social multiplayer games then you have to understand what you are really doing. Limited game state persistence, leaderboards, challenges … these are great things but they are the tip of the iceberg really. Ultimately you need to transfer game logic to the back end and develop server-side code.
#5: Infinite scalability
Games that do not run on the server do not have a problem scaling. Let’s acknowledge that upfront. However, a lot of the arguments for moving to the cloud really pertain to making your games more server-side and let’s face it … you can do that without a cloud. The cloud comes into play to make scalability easier and, in many cases, using cloud services is the only way to make the whole thing commercially sustainable.
Perhaps somewhat naively, I am of the opinion that most games developers build their games with a view to making them successful. For server-based games this would imply the need to scale the back end services appropriately to meet the player volumes expected. Its very hard to predict accurately and it makes no sense to provision a large infrastructure upfront without certainty. Cloud or Infrastructure-as-a-Service offerings remove this burden and allow you to launch your games on a minimal infrastructure and then burst or scale as appropriate.
Just be wary that using a 3rd party IaaS provider requires some know-how too. One needs to be careful about bursting freely and incurring charges for that without taking into account the revenue performance of the game. You somehow need policy management that enables you to set the option: ‘burst to this capacity regardless of game performance and only go above if game is profitable’. GameSparks allows you to do this by the way.
How a company like Zynga views a game.
Conclusion … Cloud-based games
All of the reasons cited here are closely linked. Our vision is for all games to eventually be run as services, managed from the cloud. Its a vision that divides the games industry and no doubt there are lots of examples where this is not the optimal design paradigm right now. Some day it will be though .. for all games.(source:gamesbrief)