Practical Systems Design in the Context of Darkspore Paul Sottosanti Overview of the Talk The Systems of Darkspore Some Design Goals and How We Achieved Them Things We Tried That Didn’t Work Out Problems and Their Solutions Where Did We Still Fail? Spread throughout: Relevant Systems Design Advice Systems of Darkspore Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed The Constraints The game takes place in a sci-fi setting. There must be at least 100 different heroes to collect. The game must have Spore in the name. Heroes can’t temporarily level up during gameplay (as in the MOBA genre). Players can’t equip loot during a level. The game is F2P…er, actually it’s a traditional boxed product. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Early Important Decisions Placement choices in the editor are not going to affect gameplay. Ugliness: Forces players to choose between power and aesthetics. Most will choose power. Gaming the system: Players will just copy the most successful placements. Creative Freedom: Wanted to enable the maximum amount. Players can’t create their own creatures from scratch. Recognizability Collectibility Animation Quality “Sporn”: Speaks for itself. Players will level up, not heroes. Easy hero swapping No skill trees: No way we could create enough abilities. Heroes had to be complete packages. The “chain game” will be the focus of how players interact with the PvE content. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed The Chain Game Originated when the game was F2P and didn’t have a traditional campaign. Wanted to bring back a sense of risk and adrenaline to gaming. Was a great hook for the press. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed The Genesis Types Inspired by the Magic: the Gathering color wheel. Allowed players to process the huge variety of heroes and enemies more easily. Allowed us to create other systems like type resistances. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Hero Stats and Classes Three classes of heroes. Sentinels: Strength focused, high health, close range. Ravagers: Dexterity focused, fast movement/attacks, high crit/dodge, close/medium range. Tempests: Mind focused, slow movement and attacks, high power/resist, long range. Each class has its damage increased by a different primary stat. Five secondary stats that are also increased through the primary stats. Around fifty tertiary stats that are all percentage based. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Stat Caps Enabled visual stat displays. Allowed us to have a “best” primary stat and still make you want other stats. Helped with balance. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Catalysts Needed something to replace loot for in-level upgrades. Gave players something to talk about and trade. Allowed heroes to grow in power on long chains. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Objectives and Medals Encourage you to play through the level for real instead of skipping content. Medals affect your chance of getting rare loot when you cash out. Had a hard time getting people to understand the formula. We decided early on that we wouldn’t reward playing more than four planets in a row. Clashed with player expecations… Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #1 Always be aware of the most efficient path that players can take to their goal. Your decisions will shape how many players interact with the game. Make sure the most efficient path is also a fun one! Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Elite Enemies Added to provide intensity spikes and some additional randomness. Increased health, damage, and size. Each one also had 1-4 affixes that made it more powerful. Switched to using the higher level model to make them stand out and give a preview. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Gating Progression Most RPGs use level and experience as a progression gate. Huge penalties for fighting enemies high above you in level. But we don't have that...our progression gate has to be the quality of your loot. Hero progression is now essentially sharable, easy to swap in new heroes. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Difficulty Scaling How to scale enemy health and damage? Linear scaling eventually fades… 110 is 10% harder than 100 510 is only 2% harder than 500 Need enemy health and damage to scale exponentially all the way up. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Difficulty Scaling Tried 10% per level… 100% health on level 1 110% health on level 2 121% health on level 3 133% health on level 4 146% health on level 5 But it felt flat, needed something to break it up. Added the concept of sublevels. 6% per minor level, 24% per major level. 100% health on level 1-1 106% health on level 1-2 112% health on level 1-3 119% health and a boss on level 1-4 148% health on level 2-1 Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System What makes a good randomized loot system? Provides excitement to players when they find rare or powerful items. Provides something worth talking about (and potentially trading) with other players. Makes players go back to underused skills or (in this case) characters. Provides replay value through adding goals; players want to farm specific bosses. Upgrades make you noticeably more powerful. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System Looked at Diablo’s loot system… Random level restricted affixes, higher level unlocks new affixes (e.g. “whale” -> “mammoth”). "Unique" hand-tuned items like Eaglehorn at a fixed level with a fixed look. Randomness both within the affixes and the uniques. Rings have a distinctive sound and are always magical. Powerful items have lots of different stats on them and crazy numbers like +200% attack speed. Wacky attributes like light radius and chance to find magic items. Visual changes! Leveled up skills, shattering enemies with your icy sword. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System And World of Warcraft’s… Items have a fixed number of points based on the item level. There are suffixes that are essentially percentage-based stat distributions. Greens and blues use those suffixes for the most part. Epics have hand-tuned stats and are a fixed level with a fixed look. Neither of these were quite right for our purposes. For the chain game we needed higher level loot to be clearly better than lower level, so Diablo style wouldn’t work. WoW loot was closer but still needed some tweaks… Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System Darkspore’s loot system: Like WoW, items have a fixed number of item points based on the item level, with bonus points for having a larger variety of different stats on the item. Green items get a suffix which is a percentage-based distribution of stat points. Blue items get an item level bonus and also get a “prefix”, which takes 25% of the item points and distributes those in its own way. Purples get a bigger bonus and two “prefixes”, with each prefix gets 20% of the points. Suffixes and prefixes are restricted based on the slot of the item. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System The initial item points formula: Figure out the item level. 1-1 drops level 11 items, 2-3 drops level 23 items, etc. The boss of 1-4 (and the cash out loot for 1-4) is level 20 to boost you up to the next major level. Add a level bonus for blue items (+10) and purple items (+20). Start with a base number of item points: 50. Factor in the item level exponentially, with items getting 5% better per level. Add in a 10% bonus for each different stat on the item (after factoring in suffixes and prefixes). Item Points = 50 * 1.05 ^ itemLevel * (1 + 0.1 * numStats) Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #2 Make sure any numbers that you might want to change frequently are tunable by designers. Be sure to always build in tuning knobs to your systems if you might need them. For items and other objects that players own, decide up front if you want tuning changes to be retroactive or not. This changes how the engineers build it and has a huge effect on your control and player perception. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System Determining the actual item stats: Take the item points (let’s say, 200) and divide them based on the percentages defined by the suffix. For example, “of Expertise” was 50% Strength and 50% Dexterity, so the item spends 100 on each. Those stats cost 10 points each, so this item has +10 Strength and +10 Dexterity. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System Final item points formula: 50 * (1.05...1.03)^itemLevel * (1 + 0.2 * numStats) The stat variety bonus increased to 20%. The 5% per item level changed to be 5%/4%/3% depending on how far into the game you were (at high gear levels you can give smaller percentage bonuses and they still feel like big upgrades). The item level bonuses for rarity changed to +5 and +10. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #3 Identify which systems need to be player understandable and which can be as complicated as you need. Treat them very differently! Chain game reward formula is the former. The item points formula is the latter. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System One problem with traditional loot systems: eventually characters of the same class all look the same, because the best items all have a fixed look. Decided that our “unique” items with hand-tuned stat blocks would be allowed to have a variety of models. Naming was difficult; eventually settled on using a possessive name to indicate the stats (e.g. Electra’s Wings). All of our “unique” items scaled in level, so if you found one you liked early you could still find a higher level version later on at max level. Also they had rare and epic versions. Imagine playing Diablo 2 and finding an epic Eaglehorn. Eventually these items were reserved solely for cash out loot. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System Hero Item Slots Traditional RPGs have around 12-18 item slots. With Darkspore we settled on six per hero. Problem: In Darkspore many of the items can go anywhere on your hero, but traditionally they are named after the placement. Solution: three of the slots are bound to a location and named after it (hands, feet, weapon) and three are freeform placement and named after their purpose (offense, defense, utility). Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #4 Set up structures at a deep level. Humans find structure comforting and it's exciting to your hardcore players when you break the structure later. Darkspore example: Restricting stats based on item slots. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System Weapons One of the main factors in making the heroes feel special and unique was the basic attack. Problem: Can’t allow heroes to use any weapon. Breaks animations and flavor. Solution: Weapons are hero specific (though all four variants can use it). New problem: Can be very difficult to find a weapon for a specific hero. New solution: Added a weapon store where you can buy slightly weak weapons if you haven’t found one for that hero in awhile. Unexpected but awesome benefit: Finding weapons drives players to try out new heroes better than any other mechanic. This alone made it worth it. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System Another traditional problem: having to replace items that you think look awesome when the stats are obsolete. Added slots for “detail” items. Unfortunately it didn’t work with hands, feet or weapons; we had a strange technical limitation where equipped items couldn’t be invisible. Considered the Guild Wars 2 solution of letting you merge the stats of one item with the look of another… We also let you stack multiple of the same model in one detail slot if you had them. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed In-Depth Look at the Loot System Cutting Down the Possibility Matrix The decision space of having up to 100 heroes crossed with hundreds of items is insane. Restricted all in-level items based on type. Used a stat system that allowed for obvious gear choices. Added other very specific stats: increased DoT damage, increased pet health, etc. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Design Goals Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Can Always Play With Your Friends Profitably Chose to “sidekick” players down instead of up. Gave the higher level player reasonable loot for their level. PvP was also sidekicked; all loot was scaled as though it had been found on 6-4. Players are unsurprisingly resistant to being nerfed like this. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Encourage Hero Swapping Picking up a capsule restored health or power to your entire squad. Elites had affixes like “thorns” to encourage swapping on the fly. Swapping cleared all debuffs and knocked back nearby enemies. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Don’t Reward Idling Because we had increased risk we knew players would use any tactics to win. Games with health or mana regen lead to idling. The only way to get health or power back is to kill enemies. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed All Heroes Should Be Viable Throughout the Game Later heroes are not better, just different. It’s okay that some variants are better in PvE and some are better in PvP. This is really, really difficult to pull off! But a fine goal. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #5 Excel is your best friend. You need to be able to explore systems and perform balance passes with spreadsheets quickly. Don't be afraid to make spreadsheets that are just for you that aren't especially usable for anyone else. Be efficient. When doing balance passes use conditional formatting to make outliers stand out visually. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Ideas That Didn’t Work Out Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Energy as a Third Resource Originally we had health, mana and energy. Energy was the “squad” resource, overdrive and swapping used it. The Problems Too much to keep track of. Running out of energy was miserable. Players didn’t want to use it at all. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Item Name Color Denoting Power Instead of Rarity Trying to fix the “problem” that greens are routinely better than purples. Use the name (prefix) to denote rarity instead. The Problems People are programmed now to have a visceral reaction to the color. Not worth it! Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #6 Don't reinvent the wheel unless you're really, really sure it's worth it. Conform to player expectations everywhere you can. Frees up player brain space for understanding everything else. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed White Items as “Trash Loot” White items originally had a huge item points penalty and only had health. Intended to almost always be sold. The Problems Needed them to be viable hole fillers. Five type restrictions and six slots = tough to find items for specific purposes. New Solution! Whites are only -5 item levels and get a basic suffix named after the classes. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Catalysts That Expire Based on Time Catalysts would last anywhere from a minute to several days after being found. Gave them an additional axis of rarity and encouraged people to keep playing. The Problems Some team members thought it was evil. Confusing for players to keep track, plus hard to implement. New Solution! Catalysts only expire when you cash out. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Catalyst Merging Original idea with catalysts was to make it more like the Horadric Cube. Three in a row of the same color or all different colors would merge into new catalysts. The Problems Was pretty horrible when it happened accidentally. Players kept asking for a button to merge them. New Solution! Catalysts now have link bonuses instead. No more irreversibility. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #7 Evaluating playtester feedback: Look for their reactions, NOT their solutions. “I don’t like x” is useful, “I don’t like x because of y” is great, and “You should do x” is useless. Trust the player’s gut (intuition) but don’t trust their reasoning as they do NOT have the same mental context you do as the designer." From Doublebuffered.com’s writeup of Jamie Griesemer’s Design in Detail GDC 2010 talk Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Problems and Solutions Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Enemy Type Resistance Many players didn’t realize what was going on. Doing less damage didn’t cause players to switch, it just frustrated them. Solution Flip it around. Enemies instead deal double damage to heroes of the same type. Now it’s exciting and the increased damage forces you to switch. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #8 Use positive encouragement instead of negative reinforcement where possible, especially when the mechanical result is the same. Famous example: World of Warcraft rested XP. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Ravagers and Tempests with No Health Base stats don’t scale like in other games because of no hero leveling. Heroes with no Health or Strength loot would die almost instantly. Solution Instead of Armor as a base stat on all items (which we didn’t have), use Health. New Problem Other stats are problematic too. Not enough power to use abilities or no chance to crit. New Solution Increase the health on Defense items, other slots get their own base stat(s). Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Power Costs Didn’t Scale In traditional RPGs skills level up, which increases their mana cost. Darkspore has no skill ranks… Solution Power costs scale when the primary stat is increased. Balance it so the extra damage is worth the extra power. Opens up a support strategy with low primary stat, high sustainability. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Hero Collecting Doesn’t Matter Enough When just building one squad and getting a choice of planets, players don’t need to care about any of their other heroes. Solution Take inspiration from Plants vs Zombies. Build three squads, get assigned a planet, choose which squad to use. Why not let players build them on the fly? Creates strategy and frees them from having to keep all of their creatures up to date. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Additive Damage Coefficients In many RPGs, ability damage = X + (stat * coefficient). Darkspore has no skill leveling, so the coefficient was even more important than usual. The Problem Keeping the coefficients and base damages synced up perfectly was difficult. Eventually the hidden coefficient is the only meaningful number. New Solution! Use multiplicative coefficients. Damage = X * (1 + (stat * 0.04)). Could now easily change player ability damage globally by tweaking one number. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Players Are Getting Separated in Co-Op Different hero speeds plus natural inclination to run off on your own. We want you to play together! Solution Operatives (inspired by Left 4 Dead) threaten players who are alone. All heroes get to travel at Ravager speed when out of combat. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #9 Don’t be afraid to use systems from other games if they solve your problems. Your game can borrow pieces without being derivative, especially if you iterate. There are lots of other smart people who have spent a lot of time thinking about problems like yours, take advantage of it! Darkspore borrowed systems from: Borderlands, Call of Duty, Warcraft 3, Left 4 Dead, Team Fortress 2, Plants vs Zombies, and so on. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Where We Still Failed Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Editor Fatigue Editing for the first time is awesome. So much customization! The 500th time…less awesome. People had to spend 15-20 minutes just equipping loot after a level. Maybe should have just gone the traditional route and focused on one hero… Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed “Unique” Items Didn’t Feel Unique Unique items had: scaling levels, variable looks, wacky names, and rare/epic versions. They lost their individual identities due to all the variables. Most people didn’t even use the prefix to refer to them. Also, players couldn’t farm for specific items anywhere. We wanted to have specific planet loot tables but never had time to add them. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed No Way to Start Over Players love rolling alts and experiencing the game again for a variety of reasons: Use newfound knowledge. Start over with a friend who’s new to the game. Parents want to let their kids play without screwing up their game. Wanted to add a hardcore mode but never found the resources. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Audience Confusion Couldn’t decide if we were building a game for mastery players or creative players. Tried to build it for both… Ended up pleasing no one. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Players Didn’t See Chaining as a Viable Option We thought players would be willing to start below their max progression to get a chain going in order to beat a hard level. Elites added too much randomness to whether or not you could beat a level. Made chaining worthless at higher levels. Not enough internal testing of the high levels, plus a beta level cap. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Plants vs Zombies Design Didn’t Work Out 96 different unique types of enemies, 25 unique heroes. Difficult to make enough obvious counters that players will understand. See Trenched for an example of doing it right. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Systems Design Advice #10 Avoid bias however you can. Don't get attached to the classes you primarily play or the ones you designed. DO play all the classes though. Get good at your own game. Don’t make changes based on emotion. Wait until you’ve calmed down. Systems of Darkspore Design Goals Ideas That Didn’t Work Out Problems and Solutions Where We Still Failed Questions? Thanks! Paul Sottosanti @psotto Slides will be available at: www.interestingchoices.com (feel free to come up and ask for a collectible business card!)