Thursday, September 17, 2015

[WoW] The Show Must Go On -- Agile Development vs. Content Pipelines vs. Social Media

Alternative Chat has an interesting blog post where she talks about the tension between what some devs call "open development", and the fact that Blizzard is basically the Titanic as far as steering the product goes.

For those not in the know, #RaveholdtOrRiot is a hashtag used by the WoW Rogue community who're upset that the Rogue Class Hall was said to be in the sewers of Dalaran. See, Ravenholdt was the defacto Rogue central in Vanilla, and that was reinforced by the legendary daggers quest at the end of Cataclysm largely taking place in and around Ravenholdt itself. When you have Blizzard stating that Paladins are going to get Light's Hope Chapel in the Plaguelands, and Shaman are going to get a cavern system by the Maelstrom, of course Rogues will want something that's tethered in their history as a class, and not in the basement of the floating Mage city.

Of course, as Alt points out--and Blizzard has confirmed multiple times--Legion has been in development for well over a year now already. Since before Warlords was even released. And despite Blizzard's insistence for folks to wait for the full reveal, as the tweet above indicates, waiting often means it's too late. By the time it's polished and ready for reveal, there's no going back. In fact, it's honestly probably already too late today.I hinted at this a year and a half ago with my post Should Monolithic Expansions Be Obsoleted?. There's just way too much pipeline in a giant expansion in a giant game like WoW to switch directions. A timeline might actually look similar to this:

The groundwork for Legion started 3 years ago, probably slightly more. Based on my experiences as a game developer and as a software engineer, plus the data they gave us via the linked interview above, the timeline for Legion might look something like:

High Level Planning (2012)

Basic Concept

Basic Story/Continent/Raison d'être, Concept Art

~1% of staff

Mid-Level Planning (2012 - 2013)

Zone flow, dungeon concepts, story flow

Feature planning (ie: artifact weapons, class halls, PvP talents)

Concept art for zones/dungeon/major story scenes

Engineers start prototyping features

Ramp to ~25% of staff by next phase

Low-Level Planning, Level Design, Feature Coding (Late 2013 - 2014)

Start fleshing out individual zone design, quest hubs

Fleshing out dungeon/raid designs

Blocking out the above in rough

Start coding features and new tech for server/client

Artists start turning concept art into in-game assets

Ramp to ~50% of staff by next phase

Full Production (2014 - 2015)

Zones get filled (interview linked above states they had 2 zones in production by 2014 Gamescom) with terrain, art assets, quests, quest hubs

Features get design iteration with engineers

Dungeons get similar treatment to zones

Classes get design attention for new abilities/talents, may need engineering help

I don't know precisely how Blizzard pipelines their work, but it most definitely is pipelined. Interestingly, graphics cards and CPUs may provide a good analogy to this. The deeper your pipeline, the more work you can parallelize. But if you have to do a context switch? Dumping the entirely of your multiple parallel pipelines sucks hardcore.Agile Development and Content-Heavy GamesSo to get more content out faster, Blizzard has probably built a very deep pipeline. They'd have to, really. There's only so much in a single expansion you can parallelize since you'd have designers waiting on engineers, artists waiting on designers, artists waiting on engineers, engineers waiting on designers, and so on. Having a deep pipeline means less downtime due to waiting on others; you're almost always busy, which is good from a financial and throughput perspective. But having a deep pipeline also means you're very much not agile.That being said, consumers generally don't care about the why something is not responsive, even if that something is as huge as World of Warcraft. Consumers see an issue (lack of flying, rogue class hall being in the "wrong" place), and they speak up. If Blizzard can't or won't change in response to that--whether it's for practicality of development reasons, or because they want to stick to their guns--then as Alternative Chat suggests, perhaps they shouldn't be interacting with the community on these issues.Maybe discretion is the better part of valour here, and despite the fact that they listened to the community and changed their mind on flight--something they allowed themselves to do because they developed Warlords with the possibility of flight in mind in the first place and probably pulled a bunch of QA and designers from Legion to pull it off--a class hall may have a bunch of art assets, quests, level design, and the like already done likely a year or more in advance is not able to be changed without throwing out a bunch of work and starting from near-scratch. It's like Karabor vs. Stormshield in Warlords all over again, really.Using my game, Eon Altar, as an example, having to radically redesign one of our stages is probably outside our current capabilities as a studio. Tweaks to improve quest flow, or encounter design, sure. But re-creating an entire chunk of the level? That'd take our current staff an immense amount of time--time that would be taken from other features/levels/encounters. Time we literally cannot afford. And we have maybe at most 1/30th of the raw content WoW throws into an expansion.Agile development can be powerful, especially for programming. But for heavy content games, I'm not sure agile is really possible at the content level, at least not for monolithic expansions the way Blizzard does them. For one, you'd think the film and television industry would've figured something out on that by now, and they haven't really in nearly 100 years, and they're a decent analogue to the content portion of game development. For a small team, with a game that's more features than content, like a match-3 game, or Geometry Wars? Yeah, agile works well to change things up really fast. But WoW? Not so much. Even FFXIV's content pipeline is probably pretty deep. It'd have to be to put out patches like clockwork the way they do.Social MediaBlizzard has a choice to make here: try to make agile work for content and keep responding to content-based feedback as if it matters for the present, rather than as data points for future content; or just...stop responding to that kind of feedback, because right now the halfway point they're hitting feels more frustrating than helpful. People think they have the developers' collective ear, and then folks are told to sit tight, and the devs are clearly frustrated with consumers banging on their window since said consumers don't have the full picture yet (which, to be fair, is Blizzard's fault for giving only a piece of the puzzle).Something you learn in music theory very quickly is that silence can say as much as any note. Blizzard may need to learn to exercise that when dealing with feedback that cannot be actionable, rather than being defensive. Even if it hurts to see people upset about your work. #WoW, #GameDevelopment

5 comments:

Just a couple of questions: I don't understand how your explanation of planning works with Draenor flight: if all the work was already done in advance, why the change to no-flight? Was it just testing the waters for no-flight in Legion? (in which case it would be too late to reintroduce it, BTW) Or flight was NOT planned and they downright lied at the start of Warlords? (The existence of Aviana's feather suggests that flight was planned all along)

For the Rogue guild hall: it's Blizzard who made Ravenhold the "center" of rogue activity throughout all the previous expansions, did they really think not to have an enormous backlash when deciding not to use it?

When Talarian is talking "content", he generally means art and models. Those take a long time to create and get right. In contrast, purely programmatic rules can be iterated on very fast.

So whether a change can be fast or slow, depends a lot on what type of change it is. Turning on or off flying when the zone art is designed to handle it is a programmatic change, and thus is easy to change. However, if the art had not been designed to handle it, it would have been a very large change.

This is why Blizzard can iterate quickly when tuning most abilities. But will take forever if it is something involving artwork.

Fiddling with what NPC gives out a quest? Probably easy. Changing the actual quest text? After a certain point, difficult (mostly due to localization).

Not all the work was done for flying in advance, clearly, as they had a bunch of stuff to fix for 6.2.2 (though according to Lore a lot of the bugs came about due to hacks workarounds during the live expansion). But it's relatively "easy" to tell your staff to design this expansion as if it will have flying eventually, especially since they've been doing that as their modus operandi since TBC. Eventually. They probably figured we don't have it right now, let's save some time by not doing any more work on flight just before Warlords release.

Then, as Rohan said, when they wanted flight later, flip a programmatic switch and then go fix all the wonky places where you fall through the world or get dismounted. Honestly, getting flight ready for release in Warlords was probably 80% QA time, 20% dev time.

It does not answer my question.... If all the work was done, why start a shitstorm (which was entirely predictable) by announcing no-flight? Was it just to save the (little) work of fixing stuff?It didn't make much sense to me when they announced it, and it makes even less after you explanations on the work cycle.

The only thing that makes logical sense is to take what the developers said at face value: they were undecided about the future of flight at the time still, and eventually they had decided that the difficulties of designing around flight wasn't worth having flight. The people rebelled, and they decided to compromise.