31 December 2013

Clash of Clans - match-making and retention


A player can only be attacked when she is offline. Hardcore trophy hunters are online most of the time, because trophies are mostly gained in offense, not in defense (some gemmers even ignore upgrading their buildings). Thus it can take a while for high trophy players to be given a match when they are attacking. Players complained about the player base being too small to support trophy hunters, when the game came out in August 2012. Trophy hunters kept complaining, and the most SC did was force players to logout at least every 8 hours.

The fact that players can only be attacked when offline has another consequence. When a player logs in while under attack, she does not see what is going on. Instead, she is given a loading screen for up to three minutes. This is inelegant, and it could be improved.

As others have noted, in Clash of Clans, the clans don't really clash. Players of the same clan can not gang up against a rival clan. The only thing they can do is chat together and donate troops to each other. Some even say that the game only provides the illusion of a multiplayer game. Players can not even choose who they will attack. The system gives them villages from other players one at a time, and the player has to next sometimes for 10 minutes to find an appropriate target.

Match-making is also SC's way to remove churners from the game. Churners are called inactives in the community. Inactive bases have full mines, so they provide a lot of loot for little effort. To keep the loot in check, SC removes inactives from the match-making queue every few weeks. Players notice it very quickly: one day, they loot 300k gold per raid on average after 30 seconds of nexting. The next day, it takes 10 minutes of nexting for a 150k-gold raid. I think a lot of players stop playing when they suddenly can't find loot.

Retention and monetization

Achievements such as unlocking the Dragon, reaching a certain amount of trophies, or looting 100M gold, all reward the player with gems. These gems are the only way to acquire builders to speed up the upgrading of buildings. Thus for players who do not spend real money to buy their builders, these achievements are long-term goals. For many players, the game is about the journey, not the end. Achievements also work in the beginning as quests guiding the player through the basic game mechanics.

30 December 2013

Clash of Clans - polish

SC spent a lot of time polishing CoC. They launched the game in beta only in Canada for exactly one month. I have never heard of such process for other iOS games. As a result, the game has been praised as well-presented and easy to play, with a smooth, clear interface and animations that are packed with character.

The depth of CoC's mechanics is a much-argued topic. When the game came out in mid 2012, a reviewer argued that the actual strategic elements of gameplay are far too lightweight and hands-off to satisfy fans of more traditional strategy games. But another praised CoC's unbelievably high replay value thanks to its varied troops, and distinctive performances of all defensive buildings, walls and traps that generates infinite possibilities for battles. The core of the argument comes from the fact that once a troop is deployed, the player is not in control of it anymore: the unit just behaves according to its AI behavior until it dies or the battle times out (after 3 minutes). In the first few weeks of play, CoC battles feel not precise and even frustrating. But then some players realize that battles are simply about unleashing a horde of troops to overwhelm the enemy. Some even go so far as saying that even a moron with no strategy at all will advance in the game with time. It is true: in the first month, the mechanics are so forgiving that some adults even let their infant playing CoC for fun.

But after a few months of play, I realized that no two units or buildings have the same function or effectiveness in battle. For example, among meat shield units, Barbarians are the cheapest and fastest to train, Giants also fast to train but more costly, and Golems the slowest and most expensive. But these units are actually very different in practice: Barbarians target any building, whereas Giants and Golems only defensive buildings. Giants have five times more DPS per housing space than Golems, and therefore can pierce through walls, whereas Golems need wall breakers to open the path. Even though the most powerful units are usually the most expensive and slowest to train, the behavior of the units in battle allow for dozens of attack strategies. So the game is essentially deceivingly simple, and its complexity grows with time. In my opinion it's great for newcomers and loyal players alike.

A lot of tiny details contribute to the great play experience. For example, the Dragon generates a lot of excitement when it becomes available at TH7. Players can donate troops to each other through their Clan Castle. Dragons can only fit in a Clan Castle level 3 or above. The Clan Castle reaches level 3 at TH6. So if I am TH6, even though I can not produce dragons, I get the thrill of using one through my TH7 friends.

The game also receives patches with new content, bug fixes, and balance tweaks roughly every 50 days. An observer suggested in September 2012 that SC implements super units, in which players emotionally invest to, because these units sell like pop corn in a movie theater. Heroes got introduced in January 2013. Unlike other units, which disappear after being used in battle, heroes stay after a battle and only need to be recharged after a battle. Heroes also provided a sink for dark elixir, a game currency introduced in the same patch.

In my experience, players were not very emotionally invested in their heroes. Getting a permanent hero for the first time generates the same craze as training a new disposable troop such as the dragon. The craze fades off quickly, and heroes are just a way to loot more gold. This lack of emotional attachment may be due to heroes being human-looking. If they were pets with accessories, players may be more emotionally invested.

While the base game was very polished when it hit the app store, each patch released so far has contained a couple bugs. Many of these bugs are graphical and directly observable when launching the game. Clearly, the QA for patches could be more thorough. Moreover, the aesthetic choices for buildings follow too many different styles: lava, electric, diamond, and so on. Players have complained about villages becoming ugly.

29 December 2013

Clash of Clans - mechanics

Clash of Clans (CoC) is a mobile game for Android and iOS. It launched in August 2012, was the most lucrative iOS game of 2013. CoC was developed by SuperCell (SC), a Finnish game company founded in 2010. In April 2013, SC was generating 2.4 million dollars per day with only two games: CoC and Hay Day, a Farmville clone. In October 2013, a giant Japanese conglomerate bought half of SC's shares for 1.5 billion dollars.

I have played CoC actively from February to December 2013. I always played the game for free.


At the first glance, CoC is very much like Farmville: two resources, namely gold and elixir, are produced automatically over time. But resource production is perfectly done compared to Farmville: crops do not wither if they are not harvested on time. So it's always rewarding to come back and collect resources from the gold mines and collectors (mines, for short).

Building upgrades

Most buildings can be upgraded by spending one of the two resources. Gold is used to upgrade defensive buildings such as cannons or walls. Elixir is used to produce troops to attack other players, and to upgrade troop-related buildings such as barracks or army camps. Mines can also be upgraded to produce more resources per hour, but also to store more resources until they are collected. For example, a level-2 mine takes 2h30 to fill up, which may encourage new players to visit the game more often. But players quickly realize that they are wasting resources during the night or a day at school. So players want to upgrade their mines to level 5 because then they take 10 hours to fill up. But upgrading a mine to level 5 requires Town Hall level 3, which itself requires a significant amount of gold, usually obtained after several hours of play. And that is how players get hooked.

Player versus player

After 3-4 days, the core mechanics change progressively. The amount of resources produced by mines becomes negligible compared to the cost of building upgrades. The player realizes that to keep her upgrades going, she must steal resources from other players, or from the solo campaign missions. The solo missions can only be completed once, so PvP is unavoidable. At this point, I suspect most players to take a decision. Some decide PvP is not for them, so they stop playing. Of those who continue, a very small minority decide that the game is all about competing against other players. These players are called trophy hunters, since winning a battle rewards the player with trophies. A leader-board shows the 100 players with most trophies. Most trophy hunters spend real money to instantly max their buildings and troops. They eventually become regular buyers, the 2% whales spending $200 per week.


The remaining 98% who decide to keep playing focus on stealing resources from other players. The most dedicated of them are called farmers; they train cheap armies and ignore trophies as long as they loot resources. Farmers are very practical and calculating: should they build an army costing 5-50k elixir in 15 minutes, and loot 100k-500k of resources from another player, or wait for their mines to produce 5k of each resource in these 15 minutes? Their behavior is obvious: 1) turtling is a waste of time, 2) they login when their army is trained, and 3) they logout when they have attacked and do something else (like playing another game) while their troops are training.


There are one elixir sink and two gold sinks. Elixir is sunk when the player trains expensive and powerful troops. Since farmers usually train fast and cheap troops, they often have more elixir than they can spend. The first gold sink is walls. Each of the 250 walls costs 8M gold to max out. The best farmers make 1M per hour, so we're talking about 2,000 hours of (sporadic) gameplay here. For someone playing 5 hours per weekday night and 20 hours during the weekend, walls take around 10 months. So walls are a humongous gold sink. The second gold sink lies in the match-making. When a player goes to attack, she is presented with another player's village. If there is too little loot, she can next for 200-1000 coins. Spending 50k gold in nexts to find a 200k-gold raid is very common. That second sink is very big too.

Pace of progression

To give an idea of the pace of progression, below are screenshots from my village from March to November 2013.

30 November 2013

WoW subscribers and Blizzard's strategy

I found this graph of WoW subscribers from launch until end of 2013, but could not track any of its sources. So here's my version of the graph, with the sources below.

The most interesting part of the graph is that Mists of Pandaria (MoP) is the first reported expansion to suffer from churn a few months before release. Blizzard's CEO says that have become much better and much faster at consuming content, and so they would leave when they're done. Have players changed, or has the game changed? Probably both.

The game has fundamentally changed, and this is a result of Blizzard's design approach of depth first and accessibility later. But as the game becomes more accessible, new content is consumed faster. Veteran players agree.

Have players changed? Probably. When WoW launched in 2004, mobile and social games did not exist. Blizzard has always targeted PC gamers. That segment was growing in the early 2000s, but has probably started shrinking in the last 3-4 years. Free-to-play PC games have also bloomed since the late 2000s, and lots of PC gamers would rather play for free than for $15 per month. WoW remains subscription-based because, according to Blizzard's CEO, it was not designed as a free to play game and would not transition to F2P. Keeping WoW subscription-based is a very conservative and obstinate stance, but Blizzard probably lost faith in F2P after the Diablo 3 real-money auction house failure.

Blizzard is conservatively milking its existing games. But I don't see the pay-to-play PC-gamer segment increasing. So Blizzard will have to adapt their game design or die.

date millions of subscribers
23-Nov-04 0 (launch)
17-Mar-05 1.5
14-Jun-05 2
21-Jul-05 3.5
9-Nov-05 4.5
19-Dec-05 5
1-Mar-06 6
11-Jan-07 8
24-Jul-07 9
22-Jan-08 10
31-Jul-08 10.9
28-Oct-08 11
23-Dec-08 11.5
11-Feb-09 11.5
7-Jul-09 6
10-Feb-10 11.5
5-Aug-10 11.5
1-Oct-10 12
4-Nov-10 12
31-Mar-11 11.4
1-Sep-11 11.1
8-Nov-11 10.3
9-Feb-12 10.2
31-Mar-12 10.2
4-Oct-12 10
31-Dec-12 9.6
31-Dec-12 9.6
31-Mar-13 8.3
30-Jun-13 7.7
30-Sep-13 7.6

25 October 2013

Blizzard's Hadoop platform

Talk given by Brian Griffith and Amanda Gerdes at the OC Hadoop user group meeting in October 2013.

Blizzard uses the same Hadoop platform for Diablo 3, Starcraft 2, WoW, and Hearthstone. This platform went live in March 2013. Before this platform, game developers would log game events in log files, and use custom scripts to ETL these log files into relational databases for analysis. Problem: cumbersome, hard to maintain, low performance.

Solution: game developers, on their own, decide what to track in their game, and send that data to the platform. Instead of a log file, the game developers send protobuf objects. The 20 nodes in the Hadoop cluster receive and deserialize around a billion objects per day. The message's headers determine where to store each protobuf object within Hadoop. Blizzard also uses Hadoop as an operational data store. The cluster runs map-reduce jobs to filter and aggregate the stored protobuf objects. Currently, the 20 nodes store 60TB, but now that Blizzard realizes what they can do with Hadoop, they plan a 100-node cluster storing 1PB. Current bottleneck: CPU for deserialization. They rarely hit the disk for data so no IO waiting bottleneck.

For the messaging, they use a federation of machines running RabbitMQ. 50 producers worldwide (China, Europe, US, etc.) and 8 consumers (most likely in the Blizzard headquarters in California). When an Internet cable got cut with China, some messages were queued for 40 hours.

The analysts were using Greenplum for processing game data in parallel and ETL. Now that Hadoop is in place, they could start using Pig for ETL. But sales and customer data still come from relational databases, and the Greenplum is great at ETL. So there is no reason to force analysts into Hadoop. Solution: ETL jobs pull data from Hadoop and store it into Greenplum for warehousing. Greenplum is still in charge of its own ETL jobs.

Some data (such as a character's level or class in WoW) stay interesting across patches, but others (such as transmogrification usage) are only interesting when the feature launches. So the platform allows to build KPIs daily (e.g. activity aggregated per character level) and dive deep on demand.

Use case: WoW economy. Every gold transaction is sent to Hadoop. Reduce step aggregates by NPC id, item id, or player id. Makes it possible to:

  • Check if the gold sinks follow designers' expectations.
  • Detect networks of gold farmers.
  • Keep an eye on auction house prices.
  • More ...

15 October 2013

Handling references in ACM format in Word

This was tested on Word 2010 on Windows.

Step 1: Download and install the styles (instructions on their website). We still have a problem: the ACM - Name Sequence* formatting does not work (it writes [BO] instead of the ref numbers).

Step 2: Download the extender. Save your doc with the ref style ACM - Name Sequence*. Close Word. Run the tool. Don't forget to re-open the doc and select the style again.

08 October 2013

Importing Chinese characters from CSV file to SQL server


Error 0xc02020a1: Data Flow Task 1: Data conversion failed. The data conversion for column "Column 0" returned status value 4 and status text "Text was truncated or one or more characters had no match in the target code page.". (SQL Server Import and Export Wizard)


29 July 2013

Solstice Arena UI

Lots of things to say about the UI of Solstice Arena (SA), an ipad MOBA by Zynga.

Gameplay of Solstice Arena

SA is a traditional MOBA adapted for the ipad. Players first pick a character among the dozen available. Characters can get various advantages by selecting/buying a potion before the game starts. Matches are 3 vs 3, and typically last from 5 to 10 minutes. One team starts on the left, the other on the right.

Players can buy equipment using coins, which they gain automatically at a rate of around 1 per second, as well as by collecting a chest standing in the middle of the map (100 coins at once per character in the team). Players also amass energies to increase their power. All the controls are based on the player's taps. Players can also send signals such as "retreat" or "attack this target" to each other.

There is no character leveling within a match: during a match, a character becomes stronger only by collecting energies and buying equipment. Completing a battle rewards a character with XP, and the player with valor points. Valor points can be used to buy characters or potions, or level up characters without fighting with them. When characters level up, the player can improve one of that character's skills. Gems are the in-game currency bought with real money.

UI problems

To get from the main screen to a game with 2 other human players takes 9 taps and about a minute of waiting when I'm not doing anything but watching a blank screen. Plus it's 10 to 20% of a match's duration! This is way too long...

Let's look at some of these 9 screens and critique them.

  • 75% of the screen, in width and height, are taken by an ad.
  • The left icons all have a blue background with some swords, and it takes a few seconds to distinguish them.
  • The Redeem Code button is next to my nickname and level, which is itself next to my valor points, my gems, and my friends. Quite a mess.
  • Communities keep the game alive - and the giant ad to join the forum says that too. Then why is the Friends button so small? Why do I need to tap the button to see which of my friends are online and I can play with?
  • Logout button: Zynga has decided to not use the iOS's built-in game center, but rather forces players to authenticate through their own servers. Hence the need to log in... As a result, I can't invite the friends I'm playing with in other iOS games.
  • It took me a week to spot the button to invite friends to join a fight.
  • Too much information: when I'm going to fight, I do not care about the price in gems or valor points of a character. I should not have to scroll to pick Kyra, which I have unlocked and reached max level (15) with. In fact, all characters should fit on one screen.
  • There is no difference between the "previous screen" button (left arrow at the top left of the screen) and the top-right corner cross. Why having both?
  • There is so much information in such small font that I did not notice the potion slot in the middle of the screen.
  • If "one potion is always free", why not selecting it by default and save me two clicks that I ALWAYS will do, unless I forget?
  • Why displaying the small picture, and not rotating/animating the full 3D model like in the previous screen?
  • Play tip: good.
  • 30-second waiting time for a 5-minute match is way too much.
  • The ready check is here only to check that players did not leave within the 30 seconds (or more) that they were in the queue. If you reduce the time in queue, you may not need the ready check anymore.
  • If one of the 3 players does not click within 10 seconds, the whole match is cancelled, all players return at the end of the queue, and wait for another 30 seconds. The players who ready-checked should be sent to the head of the queue instead.
  • My character has 100 sun for 0% cooldown reduction (what is the point of sun, then?), and 10 moon for 3.51 movement speed (then why is my character aligned with sun?). I was expecting the other way. I guess it is thanks to the fury potion, but it is quite unclear.
  • Exit button is not a red cross, and is not in the top right corner.
  • The head equipment bubble could target my character's head, but it's instead targeting his belly. Why? Because there is actually a much smaller and quasi transparent model superposed over my character's pelvis.
  • Why is the reason I'm reporting not next to the player I'm reporting? It looks like the reason is common to both players...
  • The reporting window/box does not have to overlay the victory screen. The reporting could take place in the victory screen itself.
  • When reporting a player, I only see his name and the name of his character. I should also see what his avatar looked like, instead of having to remember it. I could also see some stats about that character (eg number of kills or time spent in the base). Recognition rather than recall.

30 June 2013

Player Experience Panel, Phillips 2010

Player Experience Panel, Phillips at GDC 2010.

(slides, mostly about FPS games)

Each dot represents the average number of days taken to complete a particular achievement. DLC achievements are farther because DLC were released later (not because they are harder or take more time to complete).

Box gameplay peaks when new DLC is released: new content does increase the number of people playing. However, later DLC packs do not peak as much as the first DLC pack.

26 June 2013

Influence of gameplay on skill in Halo: Reach

Huang et al. Influence of Gameplay on Skill in Halo Reach, 2013

Data: 3m player data (entire population) for the first 7 months of Halo Reach, and 70 players in a survey. Mixed methods: use survey data to help explain the big dataset.

Most played mode is Team Slayer: from 3v3 to 5v5, one point per kill, first team to reach 50 kills. Match ends after 15 min.

Player skill metric: TrueSkill's mean μ. More frequent players have bigger μ drop at week 1, but their μ increases faster over the weeks.
The longer the break between two games, the bigger drop in skill. It takes 10 games (3h of gameplay) to regain the skill lost after a break of 1 month.
Most of the top 100 players use the DMR (same range as sniper rifle) and sniper rifle.

18 June 2013

Installing and customizing sublime on Ubuntu 12.04


Either go to their website and select your version, or: For Linux 32 bits:

   wget http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.1.tar.bz2  -O sublime.tar.bz2

For Linux 64 bits:

   wget http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.1%20x64.tar.bz2 -O sublime.tar.bz2

Unzip into user folder, and add symbolic link so that you can launch sublime from the command line:

   tar vxjf sublime.tar.bz2
   mv Sublime\ Text\ 2/ sublime
   mkdir ~/apps
   mv sublime ~/apps
   sudo ln -s "~apps/sublime/sublime_text" /usr/local/bin/sublime


Open sublime (command line), then Preferences, and Settings - User should open a document.

   "color_scheme": "Packages/Color Scheme - Default/Sunburst.tmTheme",
   "highlight_line": true,
   "tab_size": 3,
   "translate_tabs_to_spaces": true,
   "caret_style": "blink"


26 January 2013

Game Architecture and Design - part 2 and 3: Management and Architecture

Game Architecture and Design - parts 2: Management and 3: Architecture, by Rollings and Morris, 2004

Ch9 - Current methods of team management

Several developer stereotypes pose problems.

  • Mavericks are skilled and trust no one else.
  • Prima donnas know they are the best and consider others as threats.
  • Shy guys are ... shy, so they don't always say everything, which reduces the project visibility.
  • Sleepers appear nice to their boss, but actually attack the management in their back.
  • Jacks of all trades are overconfident and sell themselves too well. They can get overwhelmed.

Ch16 - Current development methods

Two quotes in this chapter exemplify the two main concerns I have with this book:

  • Games are less original that they used to be. The authors explain further down that in a dozen years, graphics have improved a lot, but gameplay not as much. I disagree: with the blooming indie scene, and more and more games being made every year, this sentence sounds more like nostalgic bitterness than a constructive remark.
  • C++ was considered too slow to be useful for game programming. The authors refer to Michael Abrash and his Assembly skills with so much awe that it gets a bit awkward. I think mentioning Assembly optimizations is worthless, and maybe even detrimental, to a 21st-century introductory book about video games. We have engines and high-level languages now!

Ch17 - Initial design

Tokens are elements of the game directly or indirectly manipulated by the player. Tokenization is the process between game design and implementation. Start with the token interactions and basic state machines, then the token-property interactions, and finally the property-property interactions. Example for Pacman:

Token interactions
Pacman death X X
Ghost eaten X X

And the state machine for the ghosts.

Token-property interactions
Token Properties Hungry Strong Eddible Weak
Hungry X Pacman death Score++ Ghost eaten
Strong Pacman death X X X
Weak Ghost eaten X X X
Eddible X Score++ X X

Ch18 - Use of technology

Game reviewers do not have time, so they give good reviews to the shallowest aspects of games: the graphics, not the mechanics.

Research and development is risky. Why not teaming up with a local university?

Ch19 - Building blocks

A bunch of design patterns useful for game programming. Here's chain of responsibility.


Below is State:


And finally, Template:

Ch21 - Development

  • Plan for reuse
  • Document
  • Design then develop
  • Schedule ad communicate
  • Catch mistakes as you go
  • Limit R&D
  • Know when it is good enough
  • Team ownership/"invisible" management
  • No feature creep
  • Team solidarity

22 January 2013

Game Architecture and Design - part 1: Design

Game Architecture and Design - part 1: Design, by Rollings and Morris, 2004

Ch1 - First concept

Originality can come from the gameplay, story, setting, characters, interface, or technology. It can also come from unexpected combinations. For example, a vampire living on a foggy island must fight against invading pirates. Present it through Indonesian shadow puppets, or Dia de los Muertos, or The Terror in France. It helps to think of movies, books, or music related to the theme.

Ch2 - Core design

Player goals can range from collecting something, gaining territory, racing, removing obstacles (finding keys to open doors), discovering (eg puzzles), or beating/killing other players. Provide means for these goals, and think about the feelings conveyed.

Emergence can be defined as complexity arising from simple rules. That is, rules interacting with rules or the environment. Populous preachers provide an interesting example of emergence. Preachers can convert warriors to their side unless those warriors are already in battle. Thus the first wave of enemy warriors will be converted by the preachers, but the second wave of warriors will fight with the converted warriors instead of being converted. These two simple rules force the player to regularly check her defenses.

Trivial choices are choices the players will always or never take. They should be avoided or left for the computer/AI to perform for the player. For example, when an ennemy unit is in sight, the player's units should shoot.

Ch3 - Gameplay

Synergies (also from slides by Claypool)
of scale of scope
Economy The more of one unit, the cheaper/better/stronger. Ex: making more knights reduces their shadow cost per unit. The more of a set, the better. Ex: trident + net, healer + tank + DPS.
Diseconomy Benefits decrease with quantity. Ex: mixed troops go as fast as their slowest member.

An interesting decision has an upside, a downside, and the payoff depends on circumstances (eg other players, environment, or self). For example, a Starcraft Terran player can choose to upgrade his Marine's attack range or attack rate. If the opponent plays Zergs, upgrading the attack rate is a very good choice. If the opponent plays Protoss, Marines are generally not the way to go (unless for surprise effect in a Marine-Vulture rush).

The shadow cost of a unit is any requirement the player had to pay before buying that unit. For example, knights require the cavalry technology ($100) and stables ($200). Knights can be purchased at the stables for $50. Thus making the first knight has a direct cost of $50 and a total shadow cost of $100 + $200 = $300. So overall, the knight costs $350. Making a second knight still costs $50, but reduces the shadow cost per knight to $300/2 = $150. Overall, making 2 knights costs $50 + $150 = $200 per knight. The tenth knight still costs $50, but decreases the shadow cost per knight to $30. At that point, the overall cost of a knight is $50 + $30 = $80.

Supporting investments are remotely related to the player's goal. For example, one needs to build farms to produce food to feed knights. Farms are a 2-degree supporting investment (farm - food - knights). Upgrading the damage of knights is a 1-degree supporting investment (upgrade - knights).

Costs (whether normal costs, supporting investments, or shadow costs) also depend on the environment. In Age of Empires, a unit costs 40 woods and takes 40 seconds to build. In the early game, things start slowly, so the expensive part is the 40 woods. Mid-game, events happen quickly, so the expensive part is 40 seconds. End-game, wood is depleted, so 40 woods is expensive again.

Strategic (ie long-term) choices will later impact tactical (short-term) choices.

Impermanence is an interesting choice: should I receive armor+100 for 30 seconds, or armor+5 forever?

Versatile choices are good for beginners. In an RTS, speed makes units more versatile.

Ch5 - Balance

Rewards = gameplay payoffs + graphics eye-candy.

Component balance = comparing unit A to unit B.

Attribute balance = comparing attack range to attack power (in a small map, attack range is not as important as attack power).

Ch6 - Look and feel

A list of storytelling techniques.

Obstacles: the player has to decipher/fight/think about the events to make the plot progress

Foreshadowing: prepare for the plot by giving a hint/preview. Ex: in an RTS, a couple clubmen attack my settlement. They were only scouts of a larger army ...

Personalization: saving the world is cliche and bad. Instead, the sexy princess asks ME to save her. Saving the world is a side-effect. The player identifies with his avatar during gameplay AND cutscenes. If the avatar has 2 hours to find a cure for himself, the player cares.

Resonance: The most subtle consists of repeated images that defy instant critical analysis. More direct: visual symbols that directly express the subtext.

Resistance: elements that delay the unfolding of the story. Helps suspend disbelief. The best way to involve the hero in a crazy story is by having him refuse at first. Ex: "please save the president" - "no, i'm retired" (this surprises the audience) - the bad guy kidnaps his daughter - "OK I'll do it"

Plot point: confound expectations or change the story's direction. 3 types: reversal (traitor!), discovery (a change from ignorance to knowledge, usually most effective when paired with reversals), and calamity (Gandalf dies at the beginning of the journey!). Ideally, each level begins and ends with a plot point, ideally during gameplay rather than during a cutscene. Early plot points deepen the story, later plot points clear u[ mysteries. Small plot points every 30 mins, big plot points every 3h.

Suspense: fear and expectation.

Dialogue: not needed if images can convey the idea better. Can give more colorful details.

Theme: Do not answer the questions you ask. Ex in Matrix: What is reality? How powerful is love?

Resolution: should be hard-won (satisfaction from effort), not obvious, satisfying (morally or aesthetically), consistent (with what happened so far), and achieve closure (solve problems of the story). Could use self-sacrifice at the end: when the avatar dies, the story naturally ends for the player.

Change: Change in the status quo causes the action. At the end, the hero must have changed in some ways (he learned or failed to learn something, grew up, ...).