Showing posts with label bugs. Show all posts
Showing posts with label bugs. Show all posts

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.

03 April 2011

[Literature] Game Balance ch5 - The human-side of probabilities

My notes from course 5 of the Game Balance class of Summer 2010, by Ian Schreiber.

The more randomness in a game, the more casual it is: there are fewer strategic choices. Less randomness means more of the fate of the game lies in the player’s choices. That’s not always the case, though. Ex: TicTacToe has no randomness, but is not about skill. Other counter-example: a Poker hand is random, but there are skilled Poker players.
Skill dominates (over luck) if the player is rewarded for predicting and/or responding to the randomness. Ex: one can base his decision on probabilities in Poker, but not in Black Jack.
There is no skill in executing a difficult pattern that you’ve practiced (eg counting your hand or memorizing cards in BlackJack). Skill appears in planned, successful and unexpected decisions.
Luck can be carefully increased to even the playing field. Ex: headshots make it possible for weaker players to sometimes luckily kill better players. Head shooting is also a high-level skill. How much luck or skill a game should have depends on the target population: social games and kid games = luck, hardcore games = skill.
How to transform skill into luck:

  • replace player choices by dice rolls
  • throw less dices (so that there is no law of large numbers, hence less prediction)
  • increase the impact of random events on the game state
  • increase the range of randomness (like changing a d6 roll to a d20 roll)

Human biases

Humans tend to remember things that happen the least often, or forget those who are unpleasant (eg match loss), hence they tend to overestimate their level. Humans have a flawed understanding of probabilities, hence showing the actual probabilities will actually make them feel like something is wrong/broken. Here are a bunch of biases humans are subject to:

selection bias improbable but memorable events are seen as more likely than they really are
self-serving bias "unlikely" (5%) is interpreted as "nearly impossible" (0.01%) when the odds are in your favor. However, "unlikely" (5%) is interpreted as "possible" (30%) when the odds are not in your favor.
attribution bias positive random result is assumed to be because of a player’s skill, negative random result is assumed to be bad luck/cheating
anchoring over-evaluation of the first/biggest number seen. Ex: losing 2/3 of the trials is not as bad as losing 20/10 of the trials. Consequence: small base dmg but high bonus dmg = player likely to underestimate.
gambler's fallacy assumption that a string of identical results reduces the chance the string will continue
hot-hand fallacy assumption that a string of identical results increases the chance the string will continue

Ethics

Dishonest game design = make the players believe they are very likely to win. It increases excitement and anticipation of hitting a jackpot. Hence it keeps them engaged. Ex: dishonest car dealership: show VERY big prices first to anchor the customer, then show "normal" big prices: they look like small prices.
Honest game design = tell the player one thing, but actually do something else. Examples:

  • If the player has 75% chance of winning, under the hood roll the number as if it were 95%.
  • If the player gets a failure, make the next failure less likely, and the one after that even less likely (= avoid long streaks)
  • Hot-hand streaks should happen in a positive feedback loop, to counteract the greater chance of a miss after a string of hits (ie give bonuses when series of wins)

But also, stay ethical as much as possible. Display wins, losses and various stats to enable players to grasp their actual skill and to "prove" the game is not unfair/imbalanced or that the AI is not cheating.

Saving

In a game where the player can save anywhere at any time, players are likely to save just before an important roll, and keep reloading until their roll succeeds.

  • Naive solution: do not re-generate the random number each time they reload => new problem: players can now anticipate future rolls (the seed has not changed).
  • Alternate solution: the player can save anywhere, but the total number of saves is limited (cf the original Tomb Raider) => new problem: players need to know how far apart they should save on average so that in the end of the game, they still can save.

26 March 2010

Vivox in SL: timeline, business and reception

Timeline

This article follows the one about Vivox integration.

As an introduction, a timeline and some figures:

  • 2006: the Vivox-SL collaboration started (Joe Miller said in March 2007 that The program has been in development for over a year).
  • 2007: voice chat is integrated into the SL Viewer in August.
  • 2008: SLim is launched in September. It is a lightweight client that enables SL residents to interact with their Second Life friends without having to go inworld with the Second Life Viewer and the ability to leave voice mails for offline friends.
  • 2009: AvaLine (beta) is launched in May. To encourage all residents to use Avaline when the beta ended in August, LL offered free communications to AvaLine subscribers the first month and free voice-mail for the rest of 2009. And a Hula Bear.

According to Linden Lab's blog and press release, Over 15 Billion Minutes of Voice Have Been Delivered in Second Life. In the entire year 2009, the number of voice minutes used by SL residents has remained around 3 billion per quarter and more than 60% of Second Life Residents are using voice at any given time. Vivox reported in July 2008 a daily average of 600,000 minutes of peer-to-peer calls, Over 1 billion minutes of voice communications per month, Group events as large as 400 Residents. As a comparison, Skype had 6 billion minutes per month at that time (according to Gigaom). The numbers extracted from the May 2009 press release (700,000 unique users consuming more than a billion minutes a month) mean the average resident using voice-chat spends 17h per month speaking or listening (and not 357).

Out-of-game messaging and calls

AvaLine is the name of the current virtual telephony system powered by Vivox. A timeline in the May 2009 press release indicates that sending SMS from inside SL to out-of-game mobile phones should become possible in 2010. AvaLine's extension will let residents call or send SMS to real-world phones. Since March 2007 (before the launch of the voice-chat in SL), SL residents were told they would have to pay to use out-of-game telephony features: Eventually, Linden plans to charge Linden Dollars for the service to be activated on privately owned land. People who own land can pay to have VoIP activated for all users on their property. For a single user, AvaLine costs L$14,400/year, ie US$70/year. Residents pay only for monthly flat-rate AvaLine service, regardless of how many calls are received or minutes are used. And

Before AvaLine was launched, other organizations had started to think and actually implemented out-of-game calls and SMS. For instance, in September 2007, NEC opened an island in SL. They offered the possibility for residents to make calls to another person in the real world and send text oriented messages such as SMS, email and IP Messaging [...] to the real world. Other organizations such as Swisscom (through Starfruit) sponsored 100,000 SMS that residents could send from virtual phone booth to out-of-game phones. Another system called SLFONE enables residents to send 120SMS to 240 countries and 700 networks for 8500L$/year (ie US$40).

Reception and adoption by the residents

Three major announcements were made by LL to their residents about voice integration in SL. The earliest news was a FAQ justifying the introduction of voice to SL. It was published by Joe Linden and received half a thousand comments. The second news was published in May 2009. It introduced the AvaLine beta and showed a lot of unsatisfied users as well. Third, the end of AvaLine beta in August 2009 and its introduction to all residents as one of the new bells and whistles brought a lot of concern as well. The residents' comments showed they cared more about stability than new features. Many of them wondered why they would pay to use a semi-working functionnality while they are currently doing fine with other voice-chat systems.

  • When voice was first introduced the same arguments were made - LL said we all loved it, most people said they never/couldn't use it and some people said it was vital for them.
  • This new shiny toy is just something to try to distract people from the real issues.
  • We want stability before the introduction of new features.
  • Utterly pointless and I bet you were told so in all those ridiculous surveys. And your call quality is awful, skype ftw.
  • each shiny new toy gets lots of marketing attention, but fixing things that are broken in a product you've already sold isn't as sexy.

Unfortunately, one of the last word given by LL was: join me for Office Hours [...] we will discuss your ideas about what kinds of communications tools would best help you enhance your Second Life experience. A very interesting official Linden reaction to residents' complains was Partnerships, like the one with Vivox that helped bring us AvaLine, also greatly reduce the number of internal staff needed to deliver projects.
LL may have to keep bringing new content to its customers to keep some of them attracted. That is a perfectly normal marketing strategy in any MMOG. However LL is not an MMOG, and the average SL residents may differ quite much from the average MMO gamer. The obvious difference is: some of the residents work or earn money thanks to SL. So I think it might be more efficient to base a communication strategy on debugging or maintenance rather than on new features.


Finally, I am puzzled by the strange (or lack of?) community management style followed by LL. Joe Linden published "Over 15 Billion Voice Minutes Served", but he was not in charge of answering the comments although he wrote I look forward to hearing what you think. Instead, it was Jeska Linden (an actual community manager with 20 times more news posted than Joe) who stepped up to the plate. Is "what is rare is important" the point in Joe announcing new features to the community?

08 January 2010

[Cinema] A few common aspects in the Matrix, eXistenZ and Avalon movies



These 3 closely-related sci-fi movies deal with the virtual reality theme:

  • The Matrix (all of the 3 movies) from the Wachowski brothers, 1999. A “steampunk” rusty-metal reality and black-and-green virtual world where machines use humans to generate electricity. Slave humans are permanently connected to the Matrix to keep their mind busy.
  • eXistenZ from Cronenberg, 1999. A game designer introduces and tests his new game with a dozen of people. The game content changes with the participants’ state of mind. A very interesting idea is a series of virtual reality game inside a virtual reality game inside a virtual reality game. In the end, some of the players do not know what is real and what is virtual.
  • Avalon from Oshii, 2001. In a dark, gloomy and uninteresting world, an FPS-like game called Avalon gathers many players. One gifted player makes her way into the levels to reach the legendary “class Real” level.

The interface to connect to the game slightly differ from one movie to another. Humans can connect to the Matrix if they sit on a dental chair and are plugged hard-metal sharp-ended wires at the top of their spinal column. In eXistenZ, the player connects to the game station called pod through an umbilical cord plugged in the lowest part of their back (spinal column again). These two movies depict a very intrusive and violent way to connect to the game. Indeed, the first time Neo logs in the Matrix, his convulsed face makes the spectator feel the pain of the connection. However, in Avalon players just stay peacefully on a dental chair and only wear a helmet that covers their entire face. Logging off the game can be done in putting off the helmet. To my mind, external user interfaces for virtual games should stay “outside” of the body for people to accept the game. I choose to play the game, and I am free to push the “log off” button at any time. Similarly, computers have more and more complex pieces of software to manage the energy they consume, make them sleep, shut down when this task is done, etc. but it is unimaginable that our computers do not have any physical power-on/off button. Same idea for virtual reality games.

Players can be trapped IG. Traps are illustrated by the same example in Avalon and the Matrix: bricked up windows. Players do not know they are imprisoned until they try to draw the curtains and discover a wall instead of a glassed window.

As for the IG characters, the Matrix contain NPC (agents and “programs”) and actual humans who can change into agents at any time because they are plugged into the Matrix from the machine world. The “program” characters such as the Oracle or the Merovingian lead me to compare the Matrix to a Massively Multi-player Online Game (MMOG) where players have to accomplish quests: the Oracle said that freeing the Key-maker will let Neo enter the secret back-door to end the war between humans and machines. In Avalon, the “Ghost” is the NPC to kill to access the secret levels. Some mercenaries are used by a GM to help Ash, the heroine, destroy a huge war machine but all the other characters are actual players. Avalon reminds me more of a First-Person Shooter (FPS) game as we never see huge groups of people connected at the same time in the same level of the game (a dozen players in the “Ruins C66” level and half a dozen players in the “Flak Tower 22”). In eXistenZ, all the 10 connected players have a role and the story evolves around these roles. NPC are seen very rarely and players never talk to them. eXistenZ is actually just a virtual role-play game, but the GM usually in charge of organizing the story in table role-play games has been replaced by a computer.

In the three movies, pets have minor background roles which most of the time make the spectator raise an eyebrow. In Avalon for instance, in one reality, the heroine feeds a dog she has. When she goes in another reality, a portrait of the exact same dog hangs on her wall, but she can not find the dog. Another time, she prepares food for her dog, but suddenly realizes she has no dog. It took me some time to figure out that maybe the “realities” she thinks she lives in are actually other levels of the game where some parameters change from time to time. In the Matrix, Neo has a déjà-vu when he sees the same black cat doing the same actions twice in a row. The other members of the team explain that a déjà-vu happens when the Matrix is being modified dynamically. Indeed, they shortly realize that they have been trapped inside a building as the windows have been bricked-up. A dog was seen inside the eXistenZ game, and this dog happens to be the dog of the winner of the game. I think the message conveyed by the 3 movies is that pets follow us in all the worlds we can be. They are life partners and therefore stay permanently in our minds, whatever the reality we are in.

The death of players is implemented differently in the 3 virtual worlds. In eXistenZ, the player is simply kicked-out of the game while in the Matrix, dying IG means dying In Real Life (IRL). Unlike Avalon, in both the Matrix and eXistenZ, we never see bodies disappearing after their owner has been killed. In Avalon, a player asks the heroine to kill him and see if his body vanishes to check if the “Class Real” level they are currently in is actually the real world: “if you kill me and my body does not vanish, then this world is the real one”. Following this discussion, Ash shoots the other player and the corpse disappears as usually happens in game levels, leaving her astonished.

In the 3 movies, exploits, cheats and bugs keep reminding the spectator that the action occurs in a computer game and underline the fact that all of these incredible events remain virtual, they are not real. At the end of the eXistenZ movie, the game designer reaction about the winning couple is “there was such a non-fair-play and anti-game atmosphere inside the game”. In the Matrix, Neo’s unique superman powers “break” the Matrix rules (ie stopping bullets with a gesture of his hand) while normal humans can only try to “bend” these rules (ie try to dodge bullets). Breaking rules is nothing more in the Matrix than an exploit. The cat deja-vu happening when the Matrix is dynamically changed to trap the group is an obvious bug. Killing the Ghost NPC in Avalon brings a ridiculously huge number of points to the player, letting her connect to the higher levels. I feel like that this huge number of points is an exploit in the game design of the level. Moreover, a Game Master intervenes to make the heroine reach the Ghost: this intervention can be seen as cheating. Finally, a character in a fish shop of eXistenZ repeats the same words until the players say the appropriate words that launch the discussion with the NPC. Such a not flexible dialog feature in NPC made me think of the underlying code:
while(input != “blabla I expect you to say”)
{
print(“what do you want?”);
}
print(“here is your quest”);