Tuesday, July 25, 2006

Consoles vs PC: Article about PS3

(This topic just doesn't want to let me go...)
A very interesting article was published recently on Gamasutra:Analyst: PS3 To Slow Industry Growth, Nintendo & Microsoft Could Capitalize. Recently I talked about the advantages consoles have over PCs in terms of gaming. When I read the article in Gamasutra, I was really puzzled: it seems like Sony in PS3 is going to forfeit all these advantages. PS3 isn't going to be cheap - I knew that. I would even say it is going to be absurdly expensive. But now the CEO of Sony Computer Entertainment (SCE) states that
"we don't say it's a game console, the PS3 is clearly a computer unlike PlayStations so far."

He explains further:
Since PS3 is a computer there are no 'models' but configurations. We'll want to upgrade the hard drive size very soon. If new standards appear on the PC, we will want to support them. We may want the Blu-ray drive to write. In the PC business, if you fix the spec for two years you'll be caught by competitors. Computers should be changing, right? It's inevitable that 60GB hard drive will become too small, and memory may become too small as well"

Wow! So, in other terms, the buyers of PS3 should be ready for spending even more money on upgrades. And the developers should be ready for much harder QA, because now the testing of the new game should have to be done on all possible "configurations". Which, in turn, means that the users should be ready for more bugs in the games.

And why would I (or anyone) want to spend money on a contraption like this instead of buying normal PC - which might be in a long run just a little bit more expensive than PS3, but which can do so much more? I don't know the answer to this question. It seems likeanalysts the analysts from "DFC Intelligence" (whose report is a base for this article) are also puzzled. They predict:
1) the high price of the PlayStation 3 is going to slow overall industry growth, especially for software and 2) if Sony does not change its current strategy for the PS3 the system will probably end up in third place in installed base.

I agree with those analysts. Either people at SCE are geniuses, and can see some things in the future which neither I nor the analysts from DFC can see - or we should prepare for a huge change in consoles game market in the nearest future.

Technorati tags: ,

Friday, July 14, 2006

Some business database design rules

A short disclaimer: These rules are coming from my own experience. The list is not complete, and, actually, it's not a list - rather a reminder for myself and an advice for all others. Most of the rules might seem obvious, but I have spent several nightmarish days recently fixing the consequences of not following those rules.

1. Every item of business data which enters the database should have the information about the source of the data and the time when the data was inserted. The source should be as atomic as possible (not "one of mail servers", but "server mail05.mycompany.com"; not "a user input", but "Entered by user Joe Schmoe"). Of course, this does not have to be a text field - a source ID will do.

2. All changes to business-impacting data items should be recorded in corresponding history tables, together with the information about the time and the source of the changes (ID of the user who performed editing, name of the process that changed the data etc.). A note - this rule doesn't state that changes of all data items should be archived - just the ones that might be important for the business.

3. All changes to the database that are not done according to standard operation procedures should be documented. If there is some problem with the data, and there is no other solution but to fix it manually, the script used to perform the fix (even if it is a single SQL statement!), together with the description of the change and the time the change was performed, should be stored in some archive.

4. For each and every table in the database there should be a documentation describing how the data in this table can be changed, and what are the procedures for fixing the incorrect data. And, I will add, the designer of the database should take into consideration the fact that sometimes some data in each table might need to be fixed. For some tables, the documentation would be very simple: "Use UI to modify data". Some tables might require more complex procedures -for example, an error in financial transaction requires creation of a reverse transaction (and transaction types should include reverse transaction in this case!). Another example would be a table which somehow aggregates data from other tables - in this case incorrect data in this table might require changing data in some other table and, for example, running some update script.

Following these rules is not always easy - but in the long run it will save you from some extremely unpleasant experiences. Trust me - I've been through that!

Technorati tags: ,

Monday, July 10, 2006

PC vs Console: an example

Last Sunday I've decided to spend some time playing games on my PC. I've started "F.E.A.R.", which I didn't touch for several months.

First of all, I've spent some time trying to find which of 5 nearly identical CDs the game wants to have in the drive. The game just kept telling me "Wrong disk inserted". At last I've found out that it wanted disk number 5. Then the game started, and immediately suggested me to download and update. I agreed - and the game immediately quit, starting some downloader instead, which told me that it will take 20 minutes to get the update. (by the way, I have cable - I hate to think for how long the people with dialup would wait...) Well, It was a surprise, because I was in the mood of playing right now - but, after all, I had some other stuff to do, so I just let it run.

In 20 minutes the update was downloaded and installed. I've started the game again, and it again suggested me to download yet another update. Again I agreed, and again the downloader was started - but this time it couldn't locate the file on the server. I decided to run the game without getting the latest patches and features. Alas, I couldn't do it, because the game just crashed when trying to load any of my saved games. I've rebooted a couple of times, and, when it didn't help, I went to the Internet for the help. Very soon I discovered that there was a bug in the first patch I've installed, and that I have to download and install the latest patch. Luckily I found the required file manually pretty soon, and in less than ten more minutes I finally started playing.

And, by the way, while searching for the patch I've accidentally discovered, that another game I've played not so long ago installed some driver on my system for some incredibly advanced copy-protection lock. Now I have to remove this driver, because I do not want some unknown drivers on my PC. The funny thing is, that I've discovered this fact while reading the message on how to install the cracked version of this game!

So, just to add to my writings about what PC games should do to regain market from consoles: these are good examples of what the PC games shouldn't do! For any console gamer, starting the game is a matter of inserting one disk and pressing one button. And the console games just do not download patches - neither they modify the firmware of consoles.

Technorati tags: ,

Wednesday, July 05, 2006

Fading glory of PC games

(David - thank you for suggesting this topic).

As I mentioned earlier, I grew up on PC games. I've always considered consoles as being inferior to PCs. But now it seems like PC games are being aggressively pushed out of the market by consoles. Just 5-6 years ago in most video gaming stores the majority of space was occupied by PC games, with just a couple of shelves dedicated to consoles. Now the situation is just the opposite: I've seen already couple of stores that do not carry PC titles at all! In other stores you have to work hard to locate one or two tiny shelves with PC boxes - all the rest are games for PS2, Xbox and GameCube.

I don't like this at all. I also think that having a healthy market for PC games is essential for the development of video gaming industry and video games as a cultural phenomenon. Consoles are much less flexible than PCs in terms of game genres and game mechanics they can support.

So, can anything be done to reverse this market takeover and bring the market to some kind of a healthy balance? In order to answer this question we have to understand why the consoles became so popular.

A quick disclaimer: I am absolutely sure that some research has been done already regarding those questions. However, I don't know anything about the results of those researches. So, whatever I say now is just my own opinion, based strictly on my own perception. If anyone would point me to any materials on that issue, I will be extremely grateful.

What made consoles so popular in recent years? The answer is very simple: the consoles just got better! One of the major problems with consoles was lack of horsepower - in computing, graphics, sound. The consoles of the current generation are powerful enough to run complex 3D games similar to the PC games. Of course, the most complex 3D games - "Half Life 2", "F.E.A.R.", "FarCry" are still beyond the power limits of PS2s and Xboxes, but look at the next generation - PS3, Xbox360, Wii... The have multi-core processors, capable of running several processes in parallel and tremendous graphics power. This comes very close to the current gaming PCs. So, with the lack of power being out of the way, the other advantages of consoles begin to shine. It's important to understand those advantages in order to come with a working strategy for PC games to regain their market share. The most important advantages of consoles are, as I see it, price and simplicity.
  • Price. Even though the prices for the next generation of consoles are simply outrageous (except Wii, probably), a console is still far less expensive than a decent gaming PC. And - another related issue - a console ages much better than a PC. A console becomes obsolete only when the next version of the device saturates the market. Until then, the console is as good as new. Different situation with PCs: a capable high-end gaming PC in two years becomes mediocre, and will not play any modern game.

  • Simplicity. Consoles are really "plug and play" - you plug the cables, and you are ready to play. Compare this with setting up a new PC... With console, it's easier also to start playing: you insert DVD (or cartridge), turn the device on - and there you are! With PC, you have to install the game, configure it, sometimes download a patch...

So, what happened is: for quite some time parents bought consoles to kids, because they were cheap and easy to use, and to keep them off their parents' computers. Now the kids grew up, they are used to playing on consoles, and the gap between PCs and consoles is almost closed.
Is there any hope for PC games? I think, yes. First of all, the situation might improve in some not-so-distant future when having a computer will become a requirement for school. With kids already having their own computers, the parents might be more inclined towards buying them a PC game than towards buying them a separate gaming device. Thus a new generation of kids raised on PC games will appear. But, speaking frankly, this will happen only in several decades - and this is a tremendously long time for an industry which is hardly forty years old. And what can be done now?

Well, PCs still have several advantages over consoles, which can be used to regain public's interest in PC games:
  • Controls. Mouse is still far better as an aiming and selection device than any joysticks. And a keyboard is much more versatile control device than any gamepad. Besides that, a keyboard can be used for text input - meaning, for example, chats for multiplayer games.

  • Graphics Since consoles are hooked up to TVs, the quality of image is limited by the capabilities of TV screen. Displays are still far ahead - but, alas, the lack of resolution is compensated by the size of the screen. Playing a console game in front of a large TV is definitely an intense experience. Still, this advantage can be used.

  • Storage. This is where computers are still far ahead of consoles. How this can be used in games? Well, for example, a game might feature a complex and large world, which requires constant downloading of new parts. Or the game might produce some useful artifacts (images, movie clips etc.) which will be stored on a computer's hard drive.

  • Native environment People are, generally, using computers not only for games - but for surfing the web, reading and sending emails, sending instant messages and so on. A game can be integrated with these activities - which makes Alternate Reality Games (ARGs) an important part of re-capturing the market.

There is one more advantage of PCs - now from the point of view of game developer and designer. It's much easier for an independent game studio to develop a PC game than a console one. The prices for console SDKs are still very high. Which means that PCs as a platform are much more open to innovations than console. And, as we know, innovation is one thing the computer games industry needs desperately.

To summarize: in order to regain their market share, the PC games should capitalize on the strengths of PCs as a gaming platform, should be innovative and should target all ages of the audience (including the youngest kids). Not sure whether this will help - but this is the only direction I can see.

Technorati tags: , ,