25.12.2012 Views

Ultimate Game Design : Building game worlds

Ultimate Game Design : Building game worlds

Ultimate Game Design : Building game worlds

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Building</strong> <strong>Game</strong> Worlds<br />

160<br />

U L T I M A T E G A M E D E S I G N<br />

AF: Most scripting languages that are used today, like Visual Basic, Python, and JavaScript, among<br />

others, are advanced and mature enough to do these tasks equally well; it again comes down to what<br />

a programmer is most familiar with and what language they can work fastest in.<br />

TM: Basic programming familiarity or exposure is considered key for <strong>game</strong> scripters. Any advice for<br />

students?<br />

AF: Probably the most important factor in getting familiar with programming is self-motivation and<br />

a willingness to learn new things and explore a language. Defining a specific task that you want to<br />

accomplish, like creating a simple shooter <strong>game</strong>, and going through with that to the end to finish up<br />

with an actual product is a great way to both learn programming and end up with something you can<br />

show to potential employers. Starting with something like WildTangent, which provides a complete<br />

scripting environment, and creating a complete <strong>game</strong> using the tutorials they provide in conjunction<br />

with programming resources on the web should give you a good foundation to build on.<br />

TM: Many scripters simply edit command lines or tweak variables. How do you keep this straight<br />

for workflow purposes?<br />

AF: One good approach is to keep all of the pieces of a script in some kind of source repository. A<br />

scripter may tweak a command line or tweak a single variable many times to get something just right,<br />

but these tweaks should be periodically checked in to the source repository and made available for<br />

others. Combining this with frequent builds and continuous testing will insure that all “tweaks” applied<br />

to the system will not affect it in a bad way.<br />

TM: Tools are expensive and risky to develop. Are these the major reasons why most <strong>game</strong> tools<br />

are so limited?<br />

AF: It’s relatively simple to throw together a basic tool to accomplish a certain task. But it’s much<br />

more difficult to develop that tool into something that would be considered good enough to be a<br />

product. Many times, developers that are already over-taxed with other responsibilities will take a<br />

short timeout to throw together enough of a tool to do basic editing. Most <strong>game</strong> budgets and<br />

schedules don’t include enough time and resources for developing serious tools.<br />

TM: How feasible is a drag-and-drop actor system attached to a drag-and-drop scripting system?<br />

AF: It’s definitely feasible, but requires a sophisticated and integrated environment. Many times,<br />

when highly sophisticated tools are attempted, they end up not being used because they don’t provide<br />

that certain feature that an artist or designer may have access to in their favorite animator package.<br />

It could certainly be done, but to do it in such a way that it would feel natural and simple to use and<br />

integrate with existing tools would be very difficult.<br />

TM: Do you see tool systems as one of the limiting factors in content development?<br />

AF: Certainly having a smooth workflow is of paramount importance in developing content. It’s not<br />

necessarily true that lack of mature tool systems has to limit development; if the artist-designer-developer<br />

loop can work efficiently, than advanced tools may be less necessary. Tools really become important<br />

when people with no previous experience with the <strong>game</strong> system and content being developed are<br />

asked to start producing something. At that point, a well-designed tool can mean the difference of<br />

several weeks for that person to ramp up.<br />

TM: What do you do when there is no budget for script tools?<br />

AF: Most scripting languages available today don’t require tools, and are possible to develop and<br />

test using only a simple text editor. In addition, there are often many free or nearly free tools that will<br />

help scripters put together more complex scripts more easily.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!