30
Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin [email protected] http://www.carywalkin.ca © 2014 Cary Walkin CPA, CA, MBA Let’s be friends !

Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin [email protected] © 2014 Cary Walkin CPA,

Embed Size (px)

Citation preview

Page 1: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Advanced Spreadsheet Skills for Game Designers

Cary Walkin, CPA, CA, MBA@CaryWalkin

[email protected]://www.carywalkin.ca

Let’s be friends!

Page 2: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

About Me

• CPA, CA, MBA• Creator of Arena.Xlsm – RPG Made in MS Excel• Game Designer – 6 published games, 4 in development• Director of Operations at Xenophile Media

• Game Consultant – Evaluation, Monetization, Training, Game Design, Financial Management, Production Management, and Business Advisory

Page 3: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Goals for Today

• Learn at least 1 new Excel tool and how to apply it to Game Design

• Become more confident with your ability to use spreadsheets to:– document your designs– communicate your designs– iterate quickly and easily on your designs

Page 4: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Looking Forward

• The Value of Spreadsheets in Game Design• Interactive Spreadsheet Design Theory• Spreadsheet Communication Tips• Prototyping with Spreadsheets• Advanced Spreadsheet Tools• Spreadsheets and Game Engines

Page 5: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Games Are SpreadsheetsProduct Layer

UI/UX Layer

Spreadsheet Layer

•Marketing•Distribution

•Programming•Art Design•Sound Design•QA

•Game Design

Page 6: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Interactive Spreadsheet Design

• Static vs. Dynamic Spreadsheets• Decision Variables• Formula Design for Interactive Spreadsheets

Page 7: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Spreadsheet Communication Tips

• Just because you can understand it, doesn’t mean anyone else can.– Titles

– Labels

– Conditional Formatting

Page 8: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Spreadsheet Communication Tips

• Interactive Spreadsheet Design and Spreadsheet Communication – Example Spreadsheet

Page 9: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Logic Functions and Conditions

– IF• If a condition is true, result 1, else result 2

– AND• If all conditions are true, result 1, else result 2

– OR• If any conditions are true, result 1, else result 2

Page 10: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Prototyping with Excel

• Using Excel to prototype is a powerful tool to prototype systems to balance them quickly.

• Game Design is iterative: Fail Faster.

Page 11: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Prototyping with Excel

• Battle System Prototype – Example Spreadsheet

Page 12: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Naming Ranges

1. Drag select the range to be named.

2. Click in the Name Box to the left of the Formula Bar.

3. Type the Name such as Player_Level and hit Enter.

Page 13: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Data Validation (Dropdown Lists)

1. Select the cell where you want the drop down list.

2. Go to Data -> Data Validation3. In the settings tab, under “Allow” select “List”4. In the “Source” selection, put your range that

you want to become your dropdown list. Ie. =Player_Level

Page 14: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Checkboxes

• Enable the Developer Ribbon– Excel 2010 and 2013: File -> Options -> Customize

Ribbon -> Developer– Excel 2007: File -> Options -> Popular -> Show

Developer Tab in the Ribbon

Page 15: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Checkboxes

1. In the Developer Tab, Select Insert -> Form Controls -> Check box

2. Right click on the checkbox -> Format Control -> Cell link

Page 16: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

VLOOKUP

• The VLOOKUP function finds a value in a table and returns a value in a corresponding column.

• Syntax: =VLOOKUP(value we want to find, table we want to search, corresponding column number where we want the returning value, True/False – Match Type)

• Note Match Type: 99% of the time, we want an exact match so the final parameter will be FALSE.

• Note: The value we want to find must be in the LEFT column of the table for a VLOOKUP

Page 17: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

INDEX and MATCH

• Index: returns a value at a specific row in our range.

• Syntax: =INDEX(range, row number)

Page 18: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

INDEX and MATCH

• MATCH function returns the ROW NUMBER in our range where we find a value.

• Syntax: =MATCH(value we want to find, range we want to search, match type)

• Just like with VLOOKUP, the match type will usually be FALSE because we want an exact match.

Page 19: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

OFFSET

• The OFFSET function returns a value in a range that is offset a number of rows and columns from another cell.

• Syntax: = OFFSET(Range Reference, Rows away from Reference, Columns away from Reference)

Page 20: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Using Solver for Quick Balancing

• Solver is exactly what it sounds like. It will solve your math problems for you.

• To enable Solver, click on the Microsoft Office Button -> Excel Options -> Add-Ins. Then in the Manage box, select Excel Add-Ins. Click GO. Select the Solver Add-in Check box.

Page 21: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Using Solver for Quick Balancing

• Scenario: We have received data that our game is too hard. We decided that in order to balance our game, the enemy HP should equal the player HP at level 10. Recalculate the enemy HP curve.

Page 22: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Linear Programming for Balancing

• Scenario: We want to change the experience scale so that the experience curve is between 100-1000xp.

• Decision Variables• Constraints

Page 23: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

VBA, Macros, and Simulations

Page 24: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

VBA, Macros, and Simulations

Page 25: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

VBA, Macros, and Simulations

Page 26: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

VBA, Macros, and Simulations

Page 27: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Spreadsheets and Game Engines

• Segregation of Duties• Talk to your programmer, know what they

need.– Int – Integer Data: 3,6,23– String – Text Data: “All your base are belong to us”– Bool – 1/0 Data: TRUE, FALSE

Page 28: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Spreadsheets and Game Engines

• More advanced: Depending on the type of game, you can even do level design in a spreadsheet where the spreadsheet dictates an array of prefabs that comprises your level.

• PRO-TIP: Print out a visual reference guide for the prefab ID codes.

Page 29: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Goals for Today

• Learn at least 1 new Excel tool and how to apply it to Game Design

• Become more confident with your ability to use spreadsheets to:– document your designs– communicate your designs– iterate quickly and easily on your designs

Page 30: Advanced Spreadsheet Skills for Game Designers Cary Walkin, CPA, CA, MBA @CaryWalkin cary@carywalkin.ca  © 2014 Cary Walkin CPA,

© 2014 Cary Walkin CPA, CA, MBA

Thank You!

Cary Walkin, CPA, CA, MBA@CaryWalkin

[email protected]://www.carywalkin.ca

Questions?