Recently I saw an Interview with a game designer and she said that most of her work is done in Excel spreadsheets. Can you give me an exemple on how game designers use Excel? What should I try to learn on Excel that would help me desing games?
Sure. Let’s imagine for a moment that you’re a game designer working for Blizzard on the next expansion for World of Warcraft. Your job is to create, modify, and balance items for the expansion. What kind of information do you think is necessary to create an item?
Well, let’s think about it. First and foremost, the item will need a unique ID number, probably generated for you so you don’t accidentally duplicate the same ID for two different items. The item has to have a name. That name will also need to be localized into each of the languages the game supports, so it needs its name in each language. It has to have a rarity, which will affect its stat budget. It has to have an item level, which also factors into its stat budget. Most items one or two specific types of rating bonuses (e.g. haste, versatility, mastery, critical strike), some primary attack stat number (intellect, strength, agility), and a bonus stamina number. Every item has an equipment slot, even if the slot is “inventory-only”, or an item type that determines what sort of thing it is (weapon, armor, potion, etc.). These items might have class restrictions, be part of a set, have procs, or an on-use effect. The item must have an icon ID for inventory use, a level requirement, and (if equippable) a model reference ID so the game knows what visual to apply to the character wearing it. These are all qualities shared every item in World of Warcraft, and many of them have mathematical formulae that must be applied (such as using the item level to determine the exact value of a specific bonus).
Now consider… you want a tool that can automatically enforce certain mathematical rules for specific shared values across the hundreds of items you’ll be creating, and the thousands of items that already exist. You probably want to be able to sort and filter specific qualities, like only showing rare wrist armors, or legendary capes. You probably want to be able to look at multiple items at the same time, so that you can compare the ones you did to the old ones, or make the same change apply to many of them at the same time. You need a way to organize all these data at a glance. So how do you organize this all?
The magic comes when you realize that every attribute you need to track and/or edit can be treated as a column in a spreadsheet, and each individual item can be a row in that spreadsheet. If you do that, Excel can run the math for you. You can write macros to limit the cells in a specific column to choose from a specific set of possible choices. You can filter them and sort them by specific attribute. You can copy and paste as needed. You can set up formulas to automatically update when values are changed. You can use the built-in graphing and charting to look at curves and see if groups of items are behaving the way you expected. This is why excel is an awesome game design tool and why it is used in development studios all over the world.
It isn’t limited to just itemization either. This is applicable to any type of content where you have a lot of unique attributes on each of a lot of different individual entries. This could mean spells, abilities, bonuses, modifiers, crafting recipes, experience level tables, treasure drop tables, enemy spawn rates, NPC attributes, or any of a hundred other types of content. It’s all about being able to edit data in a way that is less bug-prone and more visually intuitive. Excel has excellent macro documentation and support from Microsoft, and can even turn the data values into graphs so you can verify the growth rate looks like what you want.
How do you learn to do this stuff? You must learn how to write excel macros to pull data and apply math and formulas from other cells. Think about really big spreadsheets and what you need to pull the information you need out of them quickly. Then, go to any of the excel macro tutorial sites and start digging. Excel is just a tool like any other editor; it has a lot of documentation and support already.
Got a burning question you want answered?
- Short questions: Ask a Game Dev on Twitter
- Long questions: Ask a Game Dev on Tumblr
- Frequent questions: The FAQ