Thursday, November 30, 2006

If I were to write a game development application…

I’m no programmer. I can’t program English without a spell checker. But if I were, or if I knew one *wink*, this is what I’d do.

I would come at it head on to make it as easy and intuitive as possible. I’ve never made games in an office environment. Everything I’ve done so far has been remote. Working with guys from other states and nations.

That being said, I’d want something that would help me in that regard as opposed to one that may help me in an office environment.

Look and Feel.

The first thing I would design is a user interface that looks like a desktop. Why? We all use a desktop of one form or another. We’re all familiar with the concept so a desktop interface in a window that you could maximize, scale, and minimize would be necessary. A virtual desktop would be indispensable.

Database, file storage, etc.

Games are files. Nothing more. Sound, art, code etc. This app would need to have the ability to allow users to swap, transfer, back up, and store files.

This would also necessitate that the app is hosted on a server someplace. While I would personally like to avoid this, I can not see any way around it.

It would work this way:

You and I both have our game development application on our computers. I run the program and right click on the virtual desktop. From it I have several choices and the one I need at the moment is “create new folder.” I create a new folder titled “Game docs”. I then take a word document that I wrote in MS Word earlier (titled “Game Design 1.0”) and I simply drag it from my pc file system into my new folder on my virtual desktop. At this point it is uploaded to our server.

Now it’s your turn.

You come home and run the game development app. You log on and the program communicates with the central server looking for changes. It notices that I uploaded “Game Design 1.0”. It would actually tell you Charles uploaded a new file at 12:00 PM titled “Game Design 1.0”. Would you like to download it?

So you would check the boxes of all the newly uploaded files and they would download to the appropriate locations. Basically you and I would have identical game apps keeping us on the exact same page of music!

Downloading all the files isn’t necessary. If the users choice. A texture artist doesn’t need to download and read the document on game AI but he can if he wants.

This system would also log which users have what and this can be looked at periodically by anyone. “Does Dave have the game design doc?” I may ask. So I check. “Hmm..he must have missed it. I better send off a memo to him….”

Communication.

The Memo.
Communication is paramount. It is the most important aspect of game development and it is also the most difficult concept to grasp and to make work for you and your team.

That being said, within this desktop the users would be able to write memos.

The memos could be directed at one individual, several individuals, or the entire team. You could also write memos to yourself i.e. “don’t forget to design the to hit/ to would/ kill system for the programmer!”

When you received a memo it would be present on your desktop when you next logged on [u]so you would be sure to see it[/u]. Kind of like a Post-It Note. Best of all, from a producers perspective, you’d have to physically click the “I read it.” box to make it disappear. This will ensure that you read it and let the sending party know that it was read.

The Forum.
I’ve found that forums have always been the best way to communicate with remote team members. It has the benefit of communal input if you so wish and it is passive. Respond when you want. Take your time to think about replies and new posts.

But it has a down side as well. You cant force your team to read the forums and there is always a good chance that they will miss important posts directed at them. Also, while there are a lot of free forums out there they are plagued by bots, spammers, and the occasional hacker. They require maintenance and sometimes can be a hassle to run.

So I would suggest that the game development app comes equipped with a very basic forum set up type application that is accessed from within the game development app itself. It would have all the basics that an online forum needs. Quote, bold, italic functions, new post and reply post options.

One thing I always wished that a forum would have is an “I read this.” button that everyone on the team would have to click. This would really help. It’s not intrusive but it reminds people that they have to read it.

The intention is to cut out the middle man totally. No muss no fuss.

Would I suggest that there be a limited java chat app within the virtual desktop? Maybe. Ive never made good use of one but others may.

Documents.

Documents are super important. Word and spreadsheet doc’s both have a place. Especially if they were modifiable and readable by all.

The solution to this is easy.

Either contact Google and get permission to embed “Google documents” into the app which already have this function or write your own. Personally I’d talk to Google.

File System.

This is the easiest concept to grasp. Mimic Windows file tree and file display. Don’t fix what isn’t broken.
Well, that’s about all I can think of right now. So, whos gonna build this for me? ;)