Concept Animation for a Legend of Zelda Movie

Shawn Depasquale, over at Nerdist: 

The clip contains one minute and 37 seconds of pure, unadulterated, LoZ-filled goodness! In that short span, the animators managed to capture the mood, wonder and adventure of a Zelda game with slick animation that would put a smile on even old Zora’s fish-face.

The video (see the source link) is apparently a concept for a Legend of Zelda movie. The style of the characters and the animation flow is quite good for a concept video. The look and feel reminds me a bit of the look and feel of the Star Wars: The Clone Wars television series, but with a more 'anime' character design. I'm not convinced that a live-action Legend of Zelda movie could ever work, but this animation has me thinking of all the possibilities for an animated movie.

Japan Increases Its Lead in Virtual Girlfriend Technology with Hatsune Miku App for iOS

From the folks at Japanator:

Miku will dance with your music, communicate with you, play dress up, and give you presents to collect.

It won't be long before someone marries this virtual girlfriend, folks

Usain Bolt Has Gone Temple Running

Tom Phillips, over at Eurogamer:

12 months have passed since the glory of London 2012. Jessica Ennis is now appearing in skin care ads. Olympic Park is being dismantled, and gold medallist Usain Bolt is now available to purchase as a playable character in endless runner Temple Run 2.

If you've ever had the desire to play as an Olympic gold medalist in Temple Run 2, then now's your chance. As for me, I remember having a lot of fun playing World Class Track Meet for the NES with my cousins. 

'So You Want to be an Indie'

The fine folks that make the Penny Arcade - Extra Credits series have posted a video about what it means to become an independent game developer. If you are currently an 'indie' game dev, or are considering going that route (like yours truly), then check out the video. You might be surprised at what it takes to be an indie (hint: it's not just about programming video games)!

You Don't Have to Trick Users Into Buying In-App Purchases

I received some excellent feedback for my post on freemium's negative impact on video game design. Part of that post was about in-app purchases, and some folks had the impression that I was against in-app purchases as they relate to game design. That is not the case. I don't think that in-app purchases are bad per se, but I do recognize that they have been misused in recent years (especially in freemium games).

If freemium games are littered with examples of 'bad' in-app purchases, then what kinds of in-app purchases could be considered 'good'? 'Good' in-app purchases are the kind that add to the player's enjoyment without being detrimental to the player or to gameplay. To put it another way, game designers should always strive to make in-app purchases fun and fair .

Here are some examples of good in-app purchases. Please note that I am sometimes referring to a particular in-app purchase in isolation from other 'bad' in-app purchases. 

Character Customization

The iOS game Punch Quest has a good example of in-app purchases related to customizing the player's character. By default, a player has a limited set of options to choose from (male/female and a few colors). If a player wants to use a different garment color, add a hat, or choose a different face then they can buy an in-app purchase for their character. Their character is not impacted by these selections in any meaningful way, thus maintaining balanced gameplay. People often want to customize their in-game avatar, and this is a good way for devs to fulfill that desire in a profitable way without resorting to tricks.

Options. 

Options. 

New Songs/Levels

Having in-app purchases that allow players to buy new songs or additional levels to play can be a good way to provide ongoing customer satisfaction. Magic Guitar comes with several songs preloaded, and users can purchase additional songs that they wish to play. These types of in-app purchases help keep players engaged in the game without going into addiction territory.

California Dreamin, baby.

California Dreamin, baby.

Unlocking Levels/Chapters

Another way to make use of in-app purchases is to let users unlock all of the levels/chapters in the game. Rock Runners, for example, normally requires users to complete levels in order to unlock new levels. There is an element of chance and choice to how its game map works when users unlock levels. An in-app purchase that lets the user unlock all levels is a good way to balance the needs of skillful players (who can earn their way to all the levels) and the needs of less skillful players (or players that don't have quite enough time to master the game). The latter can still gain access to all that the game has to offer, but without any significant sacrifice in game balance or fairness.

Not a bad price.

Not a bad price.

Folks, in-app purchases for games aren't all bad. In fact, some of them can be quite good for devs and players alike. Just remember to keep things fun and fair. 

Freemium is Hurting Modern Video Game Design

If anything has hurt modern video game design over the past several years, it has been the rise of 'freemium'. It seems that it is rare to see a top app or game in the app stores that has a business model that is something other than the 'free-to-play with in-app purchases' model. It has been used as an excuse to make lazy, poorly designed games that are predicated on taking advantage of psychological triggers in its players, and will have negative long term consequences for the video game industry if kept unchecked.

Many freemium games are designed around the idea of conditioning players to become addicted to playing the game. Many game designers want their games to be heavily played, but in this case the freemium games are designed to trigger a 'reward' state in the player's brain in order to keep the player playing (and ultimately entice the user to make in-app purchases to continue playing). This type of conditioning is often referred to as a 'Skinner box', named after the psychologist that created laboratory boxes used to perform behavioral experiments on animals. The folks that create the Penny Arcade - Extra Credits series of videos have a good video describing the use of the Skinner box in video games that is recommended viewing on this topic. The use of this type of design is at best ethically questionable and at worst deplorable. It is one thing to create a game that is so fun that players don't want to stop playing, and another thing altogether to create a game that preys on its players using behavioral tricks.

Freemium games are often examples of some of the laziest and most poorly designed games. They usually include some sort of 'energy meter' that is designed to limit how much time the player can play the game before they either have to wait long periods of time until the meter recharges, or pay to continue playing immediately. This often results in nonsensical gameplay elements such as the player's character getting 'fatigued'  without any in-game recourse other than plunking down cash to instantly recuperate. Similar to this design is in 'endless runner' games where the player can 'revive' their character after colliding with an obstacle (which would ordinarily end the run). Another troublesome freemium design is to encourage users to 'pay to win'. The player can simply purchase the most powerful weapon/item/whatever in the game rather than earning it via playing the game. This has implications on game balance in competitive games, and raises questions about whether players are actually playing a game if they can just convert money into victories. In all of these cases, the game is designed to keep the player from playing the game unless they open their wallets.

Freemium is currently having noticeable negative effects on the video game industry and will have negative effects on the industry in the future. Perhaps the biggest impact is that freemium skews the market's perspective on pricing. Users are becoming accustomed to app and game prices that are unsustainably low. It's depressing to see complaints about games being 'too expensive' when they are priced at five dollars or less. (Michael Jurewitz, by the way, has an excellent series of blog posts on app pricing and why low prices aren't the only way or even the best way to achieve profits.) Zynga's rise to prominence was partially based on its use of freemium design, and its fall can be blamed in part on an over-reliance on freemium. It simply isn't sustainable to have such low prices, and the result is that legitimate game dev shops go out of business while the sleazy game dev shops create games that aren't really games but instead elaborate psychological traps.

Folks, games should not be designed by spreadsheets. You can do your part to support good game design by paying for games that are truly fun. Don't get trapped in the Skinner box. 

My Experience at the TechCrunch Meetup in Seattle

Yesterday, I attended the TechCrunch Meetup in Seattle which took place at the Showbox across from the historic Pike Place Market.  The event was an opportunity for attendees to network, meet and greet with startups, with the main focus being the startup pitch-off. Unfortunately, the speakers were not quite loud enough for me to hear all of the startup pitches, so I missed a handful of the pitches before I moved close enough to the stage to hear the proceedings. Here are some of my thoughts on the startups that I recall.

Red Ride: This company is trying to become the 'Kayak of ride-sharing' by aggregating the various ridesharing options (e.g. Uber, Lyft) available so that users can make a decision on the fastest and/or cheapest rideshare vehicle at a particular moment. This seems like something that fans of ridesharing would find very useful.

HearIt: This company lets users create a 'playlist' of text content (e.g. blogs, docs, web pages) that can then be listened to via text-to-speech (similar, in some respects, to Audible). It's limited to Android at the moment, but this seems like an interesting app to watch since the Googles, Apples, and Yahoos of the world are moving into this space.

Hypejar: This startup focuses on creating a community around products that have not yet entered the market. Honestly, this seems like it isn't very different from an interest site like Pinterest.

Braintree: This is essentially a competitor to payments processing platforms like Stripe and Square. As far as I can tell, nothing really differentiates it from the other competitors.

Pigeonews: As far as I can tell, this is not yet a company so much as it is a Kickstarter project (which has not yet reached its funding goal as of this writing). If you liked Google Reader, Google Currents, and/or Google Alerts then this may be a service for you.

 Apptentive: This is in some respects similar to Crittercism or HockeyApp, but rather than focusing on app crashes and analytics, this company is focusing on being able to have conversations with customers so that they don't leave a poor review of your app on the App Store. As a developer, I understand the desire to have more communication with customers than what Google and Apple provide (i.e. slim to none), but I fear that this could very quickly devolve into spammier apps.

Coach Cheetah: If you've ever participated in a recreational sports league, then you know it can be a hassle to assemble a team and keep it participating during the season. This company provides a platform to simplify and manage this process.

Poshlight: This company has an app that lets users create 'levitation' photos using their phone. Users take two photos of the same subject, one photo with the object at the appropriate placement, and one photo of just the background. The 'levitation' magic trick pretty much boils down to letting users 'erase' the parts of the photo they don't want so that the underlying background photo peeks through. It's like Photoshop masking in an app container.

Lootcheck: I wasn't entirely clear how this service would work. It sounds like users would use their phone to take photos of everything in their house (i.e. inventory), and then their system would tell users how much value they have. It was presented as a way to make insurance valuations easier, as well as a way to figure out a source of money should the need arise to sell items. However, it seems as though this would be information that is most interesting to burglars. No need to take chances on what you will find when breaking into somebody's home, because if you can hack into this data source then you pretty much know what everyone has in their house.

Skyjuke:  The idea behind this app is that it allows you to share your music by streaming to your friends connected to the same Wi-Fi network. There are other services out there like this, but I'm not sure that I've seen one with this particular 'locality' twist.

DailyDollar: This company lets you register your credit card so that users can have a digital copy of their receipts without requiring any sort of scanning process. As far as I can tell, this is the sort of 'service' that really should just be a feature of a larger product such as Mint.

In summary, this was an interesting event with quite a variety of attendees and startups. I hope to continue to attend this event in the future.

Lots of people.

Lots of people.

'Designing for a Touch Screen'

The Penny Arcade - Extra Credits series of videos on game design and game culture topics are generally quite excellent. This particular video covers some of the challenges and follies when designing games for a touch screen.

Perhaps the most interesting statement in the video is the idea that having a 'virtual joystick' on a touch device is an example of poor design. I have to say that, in general, I agree. I most often see this type of design in games that try to emulate the traditional platformer style (e.g. 'Mario' style games). This type of game doesn't really lend itself to a touch device since the virtual joystick is much more error-prone than what would be acceptable in a platformer. Typically, the best way to handle a platformer type of game is to create an 'endless runner' type of game where the controls are simplified to a single touch (such as in Rock Runners) or at most two different touch spots (such as in Punch Quest). Perhaps the only good example of a virtual joystick is in Zombiegal Kawaii, and I think that really only works because it is a shooting game (instead of a platformer) where the lack of precise controls isn't quite as apparent.

Folks, watch the video in the source link.

The Problem with Collecting Statistics to Measure Developer Productivity

A common thing I've seen in my time as a developer is that there will often be an attempt to measure developer productivity. While I can understand the desire to gain an insight into how a project is coming along, with very few exceptions it turns into an exercise in futility. The problem with most methods used to try to quantify developer productivity is that they are akin to measuring a portrait artist's productivity based on the number of brushstrokes completed.

One example I have seen is to measure productivity based on the number of lines of source code, typically measured in the thousands (KLOC). The basic idea here is that it is possible to take a comparable software project (with a known number of lines of source code)  and compare with where the current project is in terms of the number of lines of source code, thus establishing an estimate for how much effort remains. There are several problems with this approach. The first (and most obvious problem) is that it assumes that two software projects are truly directly comparable. Unless this is a situation where the same 'cookie cutter' projects are being produced repeatedly, it is quite rare for two different software projects to be close enough in complexity, staffing experience/talent, and budget/schedule for lines of code to be a useful measure. As well, measuring lines of code doesn't account for differences in developer's abilities (e.g. two developers may write the same feature using a very different number of lines of code), nor does it account for differences in the number of lines of code that would be written in different programming languages.

Another example I have seen is to count the number of code checkins to the source code repository. This is a particularly baffling statistic to measure, since it cannot be correlated to developer productivity. Even after accounting for checkin standards, there is far too much variability in how software is developed for code checkin counts to be meaningful. One feature may require significant changes to a single file, while another feature may require trivial changes to multiple files. As well, there is going to be variability in how developers checkin their code, even with standards established. Some developers will use as few checkins as possible (collecting changes into larger chunks) while some developers will produce many more checkins (with each checkin having a much smaller set of changes).

These are just a few of the kinds of measurement follies that exist out in the wild. If these types of measurements (and others like them) are problematic, then what sort of measurements (if any) are useful? 

Quite frankly, the best measurement of developer productivity is how useful the software is to users or how much enjoyment they get from using the software. Everything else isn't really that important. Certainly, there are considerations for timeliness and remaining within the budget, but the questions around those topics aren't going to be answered by trying to measure developer productivity as if software was produced on an assembly line. What works for measuring productivity on the factory floor does not work in the context of a development team.

Folks, don't let your managers try to measure your productivity using methods best used in other professions.