210 likes | 320 Views
Design for Longevity. Sara Jensen Schubert Senior Designer, Spacetime Studios 2008 ION Game Conference. Players get bored and quit without frequent updates. You can’t depend on code features to fill out patch notes. You will have neither the money nor the time to do what you want to do.
E N D
Design for Longevity Sara Jensen Schubert Senior Designer, Spacetime Studios 2008 ION Game Conference
Players get bored and quit without frequent updates. You can’t depend on code features to fill out patch notes. You will have neither the money nor the time to do what you want to do. Live team truths
Mobs, items, abilities, quests, NPCs, zones … everything that supports content. INFRASTRUCTURE SYSTEMS
Designer scripting. Write a script to modify your other scripts: if (/\s*sound\s*=\s*fire.wav/i) { … } Or use your fancy form-based tool … … over and over and over and over again. Or browse your database. Select, filter, enter down the list. Or update your standard. Change one file. Done. Data Maintenance Options
Data-driven technical design. Quality data storage. Database-style tools. KEYS TO MAINTAINABILITY
Start by thinking of your workflow. Technical design
What do I need to define a creature? • Name • Level • Appearance: mesh and skeleton • Sound • Health and health regeneration • Damage range • Special flags like whether or not it’s “elite” • AI info – casting behavior, aggro radius, etc. • Spells to cast • How much gold it drops • Loot table
Super Awesome Form-Based Tool Name Mesh Level Skeleton Health Sounds Damage Save Gold Leaving out some fields, of course …
But what do I really need to define a creature? • Name • Level • Appearance (including sound) • Special flags like “elite” • One of several standardized AI packages • Spells to cast
Start by thinking of your workflow. Standardize. Only customize data that really needs to be unique. TECHNICAL DESIGN
Start by thinking of your workflow. Standardize. Only customize data that really needs to be unique. Customize by combining small pieces. Small pieces take little code. TECHNICAL DESIGN
Don’t maintain multiple copies of the same data. Name stuff well. Use XML. Source control each entity separately. Data storage
Use a database. It lets you survey the whole data set. It exposes errors. It makes it easy to compare things. tools
Use a database. It lets you survey the whole data set. It exposes errors. It makes it easy to compare things. It’s efficient. TOOLS
caster melee melee caster
Data-driven technical design. Quality data storage. Database-style tools. KEYS TO MAINTAINABILITY
Email: sjensenschubert@gmail.com Blog: http://www.lietcam.com Questions?