Game Development

Vol. 6 No. 7 – November/December 2008

Game Development

Articles

Better Scripts, Better Games

The video game industry earned $8.85 billion in revenue in 2007, almost as much as movies made at the box office. Much of this revenue was generated by blockbuster titles created by large groups of people. Though large development teams are not unheard of in the software industry, game studios tend to have unique collections of developers. Software engineers make up a relatively small portion of the game development team, while the majority of the team consists of content creators such as artists, musicians, and designers.

Better Scripts, Better Games

Smarter, more powerful scripting languages will improve game performance while making gameplay development more efficient.

Walker White, Christoph Koch, Johannes Gehrke, and Alan Demers, Cornell University

The video game industry earned $8.85 billion in revenue in 2007, almost as much as movies made at the box office. Much of this revenue was generated by blockbuster titles created by large groups of people. Though large development teams are not unheard of in the software industry, game studios tend to have unique collections of developers. Software engineers make up a relatively small portion of the game development team, while the majority of the team consists of content creators such as artists, musicians, and designers.

Content Creation in Games

Since content creation is such a major part of game development, game studios spend many resources developing tools to integrate content into their software. For example, entry-level programmers typically make tools to allow artists to manage assets or to allow designers to place challenges and rewards in the game. These tools export information in a format usable by the software engineers, either as auto-generated code or as standardized data files.

by Walker White, Christoph Koch, Johannes Gehrke, Alan Demers

Code Spelunking Redux

It has been five years since I first wrote about code spelunking, and though systems continue to grow in size and scope, the tools we use to understand those systems are not growing at the same rate. In fact, I believe we are steadily losing ground. So why should we go over the same ground again? Is this subject important enough to warrant two articles in five years? I believe it is.

Code Spelunking Redux

Is it getting any easier to understand other peoples code?

George V. Neville-Neil, Consultant

It has been five years since I first wrote about code spelunking,8 and though systems continue to grow in size and scope, the tools we use to understand those systems are not growing at the same rate. In fact, I believe we are steadily losing ground. So why should we go over the same ground again? Is this subject important enough to warrant two articles in five years? I believe it is.

The oft-quoted Moores law about the increasing power of computers actually works against the code spelunker. The more powerful computers become, the more we demand that they do, which increases the complexity of the software that runs on them. Processor speeds increase, and that means more lines of code can now be run in the same amount of time. Available memory gets larger, so we can now keep more state or code in memory. Disks get larger and require less power (in the case of flash), and suddenly were able to carry around what were once considered huge amounts of data in our pockets. What was termed the software crisis in the 1970s has never really abated, because each time software engineers came up with a new way of working that reduced complexity, the industry moved forward and demanded more.

by George V. Neville-Neil

Scaling in Games & Virtual Worlds

I used to be a systems programmer, working on infrastructure used by banks, telecom companies, and other engineers. I worked on operating systems. I worked on distributed middleware. I worked on programming languages. I wrote tools. I did all of the things that hard-core systems programmers do.

Scaling in games & virtual worlds

Online games and virtual worlds have familiar scaling requirements, but dont be fooled: everything you know is wrong.

Jim Waldo, Sun Microsystems Laboratories

I USED TO BE LIKE YOU.

I used to be a systems programmer, working on infrastructure used by banks, telecom companies, and other engineers. I worked on operating systems. I worked on distributed middleware. I worked on programming languages. I wrote tools. I did all of the things that hard-core systems programmers do.

by Jim Waldo

Kode Vicious

Debugging Devices

I hope you're lucky enough to have decent documentation and support from your vendor. If not, then I'll see you at the bar. I'm the guy sitting alone at the far end, crying into a chip manual with an always-full gin and tonic. My bartender knows me well.

Dear KV,
What is the proper way to debug malfunctioning hardware?
Hard Up Against a Bug

Dear Hard Up,
I suggest taking a very sharp knife and cutting the board traces at random until the thing either works, or smells funny! I gather youre not asking the same question that led me to use the word changeineer in another column (Permanence and Change, Communications of the ACM, December 2008). I figure you have an actually malfunctioning piece of hardware and that youve already sent three previous versions back to the manufacturer, complete with nasty letters containing veiled references to legal action should they continue to send you broken products.

by George Neville-Neil