2008-11-10

Deter videogame piracy, rentals and used sales with your pricing

Alot of big game companies have been whining and complaining about the rise in game rentals and used game sales over the past few years. They've been worried about piracy for much longer. All of these problems are directly related to the overinflated pricing of the average videogame.

Now I've been making this argument for over 10 years now, but apparently it's time to go over it again. All these problems are never going to go away as long as the industry keeps trying to treat the symptoms rather than eliminate the causes.

There are many reasons why people don't buy brand new games, whether it be way of buying used, borrowing from a friend, renting or piracy. In this post I'm going to focus on pricing, but some other reasons are poor quality, or perceived questionable quality. By that last bit, I mean how many gamers don't really know whether a game is good or not and don't want to risk their hard earned cash on it unless they know it's good beforehand. Besides the obvious solution of focusing more on quality (aka fun), offering free demos would easily alleviate the fear of buying a game that sucks. That being said, most demos I've played in the last couple years barely even give you a whole level to explore, so the gamer still isn't sure if they like your game or not even after playing your pathetic excuse for a demo.

So onto the easiest, quickest way to work on a solution: pricing. To put it frankly, videogames cost too much. Sure, there are a hundred and one excuses as to why they cost so much, but just like your business gamers only care about the bottom line. $50 is too much for a game, and $60 is absolutely too much for a game. The game industry loves to brag and boast at how much gross revenue they are bringing in in comparison to the music and movie industries; however, if you look at the actual number of products sold it still pales in comparison.

This summer the movie industry was disappointed in the new X-Files movie's opening box office sales of only $10.2 million in its opening weekend (just as a note, I'm not picking on the X-Files for any reason other than it was the first result for 'poor box office'). So, to do some quick anecdotal math...if each ticket was sold for $10 (which in my town they're more close to $7) then that means over a million tickets were sold. And that's just the opening weekend, I would say it's safe to assume that they continued to sell more after the opening weekend, and when it comes out on video a few more million will be sold. Now, in the movie industry this is considered to be so-so, or maybe even a failure; however, if a game was to sell a million copies or more it would be considered a blockbuster!

Whether we like to admit it or not, gaming has still yet to become mainstream, and I'd wager the number one reason is price. The rising budgets of $5-10 million for a AAA game's production are given as the primary reason the average Xbox360 and PS3 game cost $60. According to Wikipedia the X-Files movie mentioned before had a budget of $30,000,000. That would be an outrageous budget for a game, but the industry still wants to play the numbers like they're more successful than the film industry. Now also, the Wikipedia article claims the movie has grossed over $65 million so far simply from box office. So how come this supposed flop has been seen by over 6.5 million people before it has even been released to video...while one of the industry's most popular games of recent, Halo 3, has just only sold a little over 8 million copies? Seriously, there are over 6.7 billion people on this planet, yet only 1 in a 1000 people have played one of the most popular games ever (now of course to be fair over half of that figure comes from areas that couldn't ever afford to be gamers).

Now I'm not an expert in economics, but the basic principals of supply and demand are not hard to grasp. If you want to expand your user base, lower your price. Keep lowering it gradually over time until the market is saturated. With the enormous popularity of DVDs in the past decade, the movie industry seemed to have found a sweet spot of $20. At that price point many people felt comfortable enough to buy movies they had only seen trailers of or their friends had told them were good. People are much more willing to take a gamble of potentially buying a bad movie when there's only $20 at risk. However, with the average next-gen game costing three times that people are going to be 3 times more choosy. It has been suggested that the average gamer will spend $1000 per year on gaming (including consoles and peripherals), however keep in mind that is most likely for hard-core gamers which are still at the end of the day a niche market. I'd bet that for ever 1 gamer you can walk into the living room of and find a big rack of games, there are 10 if not 100 people where you will find a similar rack of DVD movies. Once again, I blame this on cost of entry. Blu-ray players have still yet to take off at prices of $200+ and it will probably not be until you can buy one for $100 that the average American will finally buy one. Now in game consoles, during the 8-bit through 32-bit generations all the consoles eventually dropped to $100 price point or less, but the original Xbox and PS2 have still yet to hit that price and probably never will. Not only do individual game prices need to drop, but so do the consoles that play them. The market has also shown that people do not want to have to choose between competing formats. HD-DVD and Beta both held back the home video industry until a clear winner was picked. Now I may be personally biased...but I see the only solution to the problem be an open standard for game consoles, but my experience in recent years has show that the industry is far from ready to accept this.

So, which would a game developer prefer? Sell 3 million copies at $60 ($180M gross) or 30 million at $20 ($600M). I think the benefits are obvious right there..but now, lets get back to the original topic: used game sales. If a gamer can buy a used copy of a game for $30-45 rather than $60 for a new copy, of course they're going to at the very least consider it. However, if your brand new game is sold at $20, why would anyone in their right mind want to buy a used copy for $15? If the game industry is tired of Game Stop and the like selling their games at these reduced prices, then they are going to have to reduce their own prices to compete.

Not only would this thwart the proliferation of used game resellers, this would also deter rentals and piracy. Once again, you ask a pirate why they don't buy games very often and I can guarantee you one of their reasons will be the cost is too high. Things like DRM and one time use DLC only attempt to block these people's attempts, but does nothing to stop their motives. In fact it actually drives many gamers who might normally buy your game to download a pirated copy instead. Just look at the backlash to many recent EA PC releases.

Now the flip side of the coin is how to accomplish such a massive price drop. Sadly, if you drop your AAA titles to launch at a $20-30 price point quite a few people will see it as a sign your game is not very good. At first the only safe way to do this would be with big name franchises which are guaranteed to sell, like a Madden or a Halo or GTA. New franchises could easily be hurt during this transition. Also, if one company decided to go this route while their competitors stuck with the old pricing, once again human psychology would put you at an unfavorable place, with people almost always assuming the worst. You can't come to an agreement with your competitors to all drop your prices at the same time, or else you might get in trouble for some sort of price-fixing or something. So the only way for this to really happen is slowly, and with big name titles. Of course, this has been tried before to some extent, a few years back many PC games were sold at almost half the price of their console counterparts, but it couldn't stop the fact that hardcore gaming was dying in that market regardless..or perhaps it was just too little too late. Sega tried selling it's NFL 2K5 at $20 to better compete with Madden, but then EA bought exclusive rights to all NFL games so that killed that little experiment as well.

Honestly the best place to try out a new pricing level is in the online sales arena (ala Xbox Marketplace, Steam or even the iPhone App Store). However, this still has the problem that to make money at this lower price point we need many many more consoles in potential buyers hands first. So, this is a complicated and potentially dangerous concept at this point really...however, it's going to have to happen at some point if the game industry ever wants to become a truly mass market medium. The same goes for stopping used game sales from out numbering new game sales, which is going to eventually happen if it hasn't already with the current pricing schemes.

$20-30 games will hopefully eventually be the norm, but the entire industry will have to work together. The nice part is it's a win-win situation for both developers and gamers alike...it's just a matter of time.

2008-10-23

Upcoming Browser JavaScript Engine Benchmarks

I've seen lots of people recently saying that Firefox's TraceMonkey JavaScript engine blows Google's V8 out of the water...but was a little skeptical so I decided to do some benchmarks of my own. Now with any benchmark, everything here needs to be taken with a grain of salt as performance will certainly vary upon which sites you are viewing. For this test I have used WebKit's SunSpider. Also, since Chrome and Safari do not have native ports available on Linux right now, I had to do the test under Windows XP. The test machine is dual-core so multi-process/threaded apps should show a benefit, but I feel it's totally fair as single-core machines are quickly going the way of the dinosaur and do not accurately represent the future, which is what we're talking about here. Also as Chrome does not have a stable/final release yet, I've compared with many other browsers' development builds.

So let's get to some numbers. On my test machine Chrome completes the SunSpider test with a total time of 2423ms; pretty nice! Ok, now what about Firefox? The current release, 3.0.3 takes 4244ms. Well, what about the new beta for 3.1 that just came out? It scores at 3823ms. So, wait...that's not too terribly much faster than 3.0. Do we have TraceMonkey enabled? Nope. I don't know why, but the default build of FF3.1.beta1 comes with TraceMonkey disabled by default, so after enabling it the results jump down to 1654ms. Wow! That really is faster than Chrome. Ok, so how about "minefield" AKA the nightly trunk build of Firefox (FF-3.1.b2pre-20081023): 1567ms! So yes, yes indeed Firefox 3.1 and the TraceMonkey JavaScript engine are indeed faster than Chrome and it's V8 engine.

So what about the other guys? Well, first off let's try Safari which shares it's webkit rendering engine with Chrome. The current release, 3.1.2 scores at 4894ms. So how about the development build? With webkit-r37604 (and Safari/WebKit's new SquirrelFish JavaScript engine): it goes to 1664ms. That's faster than Chrome/V8 too, but not quite as fast as FF/TM.

Opera's latest release is 9.6, and I didn't manage to find a development build available for it's next version...probably because it's still proprietary unlike the open source competitors we've discussed so far. Opera scores 5979ms which is slower than both Safari and Firefox's current stable releases, but it's still much better off than Internet Explorer. Internet Explorer 7 scores an abysmal 90522ms. That makes it almost 58 times slower than Minefield. Microsoft, that's absolutely pathetic. I didn't get a chance to try out IE8, but from what I understand it's not much better off in the JavaScript department. See update below...

Here's a chart I threw together in OpenOffice of the results. I omitted IE7 because it was such a huge difference that it made it hard to tell the difference between all the others.

sunSpiderBenchmarksChart

Lastly, just for fun I tested my iPhone and Mobile Safari (running firmware 2.0.2), it took 136081ms. But hey, for a device running an ARM @ 412Mhz with 128MB of RAM vs. a full fledged computer with a dual core processor, and a gig of ram...that's still got to be better than Internet Explorer 7 did. I wish I had a Windows Mobile device to test, and a Android/G1 too, but oh well.

So, yes, with TraceMonkey enabled...Firefox reclaims its place as the fastest browser, but Safari and Chrome certainly aren't too far behind either. With this extreme increase in JavaScript performance on it's way...maybe it's time to finally retire the old "web 2.0" buzzphrase and move onto Web 2.1

UPDATE:
Seems I owe Microsoft an apology for not benchmarking IE8 before. They really have made some progress. The following numbers can not be fairly compared with the above because it was ran inside a virtual machine with only access to a single core and half the RAM, but here they are. IE8-beta2 scored at 9542ms. But, for reference, in the same virtual environment Firefox "Minefield" was still able to pull off 1873ms. So, as while still no where near as fast as the other guys, IE8 is lightyears ahead of IE7 in its javascript performance.

2008-08-12

Guide: How to install Quickbooks Enterprise 8.0 on Ubuntu 8.04.1

I recently had the "fun" of forcing Quickbooks Enterprise Server 8 onto an Ubuntu 8.04 server. Intuit only officially supports Fedora and OpenSUSE with thier RPM installer, so I had to work a little Alien magic and do quite a bit of hand editting, below you will find a guide of how to do this yourself. Do note, that a large portion of this guide is derived from an older one located at http://brousch.orthicomp.com/howto/qbent7-linux-server-ubuntu-dapper.html ...the rest comes from reading through the non-functional post install script inside the RPM.

1. Login as root (or you can use sudo on each command if you just really want to)
2. apt-get install alien rpm lsb lsb-rpm gamin
3. mkdir /var/lock/subsys
4. ls to directory containing RPM
5. alien qbdbm-VERSION.rpm (do not use the "--script" option, Will Fail)
6. dpkg -i qbdm-VERSION.deb (for some reason Alien will bump the last number)
7. add "daemon.* -/var/log/qbdbfilemon.log" to /etc/syslog.conf
8. touch /var/log/qbdbfilemon.log
9. /usr/lib/lsb/install_initd /etc/init.d/qbdbfilemon
10. /usr/lib/lsb/install_initd /etc/init.d/qbdbmgrn_18
11. addgroup quickbooks
12. Add users who will be accessing the samba share to the quickbooks group
- usermod -G quickbooks USERNAME
13. Create a directory that your quickbooks data will go in (referred to as PATH from here out)
14. chown :quickbooks PATH
15. chmod -R 770 PATH
16. If the path you just created is not already within a Samba shared directory, set it up as one.
17. Use your favorite text editor to edit /opt/qb/util/qbmonitord.conf
- Remove the default path and type in the new one you just created
- qbEnterprise does not scan for subdirectories, so if you have more than one directory each one will need to be added on seperate lines in qbmonitord.conf
18. /etc/init.d/qbmonitord start
19. /etc/init.d/sysklogd restart

Now the original guide I went by had a list of commands to create links for putting it into the startup of your system, but I believe the last two commands (taken from the install script) should take care of that for you. However, when I was setting this up, the first time I attempted using the script which failed out, but may have done this for me before failed. So, if it's still not working right after you finish my guide, try going back and doing this too.

- ln -s /etc/init.d/qbmonitord /etc/rc2.d/S85qbmonitord
- ln -s /etc/init.d/qbmonitord /etc/rc3.d/S85qbmonitord
- ln -s /etc/init.d/qbmonitord /etc/rc4.d/S85qbmonitord
- ln -s /etc/init.d/qbmonitord /etc/rc1.d/K15qbmonitord
- ln -s /etc/init.d/qbmonitord /etc/rc6.d/K15qbmonitord

For more info see the Linux Install Guide PDF that was included on the CD

If converting an old company file to Enterprise'08, you'll need to make the user you login to the samba share with during the upgrade, the owner of the .QBW, .QBW.ND and QBW.TLG files.

Hope this helps...and good luck!

UPDATE:
Make sure to also create "/var/lock/subsys/" and touch /var/lock/subsys/qbdbfilemon and /var/lock/subsys/qbdbmgrn_18 or you will get some weird errors with the file saying it's in use when it's really not!