Engineer's Workshop: Developing for Mobile and PC
Originally Posted by Blizzard (Blue Tracker / Official Forums)
As Shadowlands ramps up into Beta, we wanted to provide an insider’s look at the development process of creating some of the great features that you’ll see in the expansion. In this Engineer’s Workshop, we’re focusing on developing a feature simultaneously for mobile and PC platforms with the new Adventures feature, our new offline progression system for Shadowlands. Adventures is a spiritual successor to Missions & Followers systems from previous expansions that allows you to send parties comprised of five adventurers to fight enemy encounters in an auto-battler format.


It Begins With System Design

Every feature begins in system design where our designers take a set of goals and hammer out the framework to create what’s known as a feature pitch, which then becomes a playable feature. For Adventures, we wanted to retain the things that worked well from previous Missions & Followers systems and iterate on the other aspects. Specifically, we liked that the system presented frequent rewards and goals to the player, allowed for progression while the player was logged out, and providing another avenue for storytelling while emphasizing the fantasy of the game. The major aspect we wanted to iterate on was to make the gameplay more engaging and the determination of mission success more fluid. Previous iterations of the Missions & Followers system were solved somewhat trivially, especially with the use of AddOns. On the other hand, Adventures is a system within a game, not a game on its own. New players should be able to jump in and be successful without having to read guides, but there should be enough depth to reward those that invest more time into it. In addition, we don’t want to create a system intended for offline progression that takes a significant piece of a player’s time while at their PC.

In this stage of development, the designers’ best friends are spreadsheets. Spreadsheets allow designers to bridge the gap between ideas and data. They can get a rough picture of whether or not an idea resonates well, apply different data curves for things like experience and attack power, and allow rapid iteration when it’s still inexpensive to try wild things.


In the end, we landed on an “auto-battler lite” model utilizing turn-based combat that is automatically resolved. Players place five adventurers on the board, strategizing ideal placement based on each adventurer’s abilities. As long as all enemies are defeated, you win and reap your rewards. However, through careful adventurer selection and placement, efficient players can minimize the amount of damage adventurers take during combat so that they can be sent on the next adventure without waiting as long to recover.

Mobile Challenges and Considerations

Adventures is a feature that is a natural fit for the WoW Companion App and developing the feature simultaneously for both mobile and PC platforms allowed a close cooperative working environment between systems and user interface (UI) design, as well as providing a singular UI vision for both platforms. One of our UI design pillars for the Adventures feature was to strive for parity between PC and mobile as closely as possible. However, the Companion App is a companion to the PC experience, so parity shouldn’t be enforced at the expense of the main game.



Mobile Graybox



PC Graybox

While PC faces complex challenges like rendering the 3D world on a wide variety of hardware and balancing live player concurrency, developing for mobile has a different problem set to work through. Phones can be a wide variety of aspect ratios and sizes and the UI and user experience (UX) need to account for this. The app’s data footprint must be minimized so that we can support as many device models as possible. The biggest hurdle to overcome when developing features for the mobile platform is that the game was not originally built for mobile. If you think back to 2004 when World of Warcraft was originally released, the phone of choice was the Motorola Razr and the mobile game of choice was Snake. Needless to say, the frameworks being developed at the time didn’t have mobile compatibility in mind. Even the simplest features can require large amounts of PC framework to be implemented on the mobile platform first.

Engineering Design

Luckily for Adventures, much of the framework from previous iterations of Missions & Followers could be reused; at its core, players are picking followers from a collection and assigning them to a mission. We chose to implement both mobile and PC platforms simultaneously rather than serially due to the tightly coupled nature of the design. Developing both platforms from the ground up provided another boon in that we could write server messages to explicitly support both platforms. Until we could get the major UI elements in game, we used some prototyping software to get the adventures from a spreadsheet to a more interactive and iterative representation in game.



Client GUI

Look and Feel

One of the larger challenges to solve on both platforms involved the special effects (FX) used during combat replays. We discovered early on that the FX were critical to making the combat read clearly and pace well while providing a more immersive, visceral feel to the experience. However, this involved breaking new grounds in UI; both platforms had a piece of the pie. Although the PC platform had a robust library of existing FX, the existing tech to put these FX into UI frames was not quite sophisticated enough for combat animation. The mobile platform had a good animation framework, but the FX were not optimized for mobile use. In the end, both platforms decided to invest in developing their missing piece knowing that the framework would be reused in many features to come.

For the mobile platform, we already knew that app size was going to be a concern. Adding FX for a full suite of adventurers and encounters on top of our existing content was going to be a memory challenge.* On top of the visual portion of the FX, we also went from having just a handful of sounds app-wide to a set of sounds for each spell effect.* We were able to consult with both our WoW FX team as well as the Hearthstone FX team to see what lessons we could learn and incorporate into our workflow. We settled on an approach that chose the spell effect to play based on spell school and adventurer type and introduced some additional framework that we’ll discuss in another article to help break apart data.


Playtesting

Once an implementation is far enough along, it’s important to do playtesting sessions early and often.* Your game may be technical perfection, but if players don’t find it fun, it’s missing its mark. The current work from home situation provided an additional hurdle to overcome for the mobile team:* the traditional playtest is to put a build on several mobile devices and playtest together in a room. In the work from home world, we needed a way to reliably and securely distribute mobile builds to personal devices, and we only had a couple of weeks to do it before work-from-home began in earnest.* Due to the quick collaboration of multiple teams within Blizzard, we were able to get enough of a distribution framework in place to support mobile playtesting. This is another piece of framework that has already paid dividends in not only being able to coordinate playtests, but also in distributing app builds to other WoW team members and providing avenues for future features.

Looking Ahead

We’re not done developing the feature by any means and will continue to iterate and polish Adventures as we transition into the Shadowlands Beta and beyond. Hopefully, this peek behind the curtains provides some insight into the process, challenges, and solutions in developing features like Adventures for World of Warcraft. As critical as playtesting is, our testing forces are nothing compared to the number of players in our playerbase; if you have feedback for us that can help improve the Adventures experience, leave it on the Shadowlands beta forums. Thanks for joining us and see you in Shadowlands!
This article was originally published in forum thread: Engineer's Workshop: Developing for Mobile and PC started by Lumy View original post
Comments 47 Comments
  1. Michael Jackson's Avatar
    Putting way too much work into this shit that should go into the game instead. What a waste of time for a feature that takes you so much out of the game.
    Fucking hell, what a state of gaming 2020 is in....
  1. TickTickTick's Avatar
    So much talk about this unimpactful, boring crap.
  1. Sunnydee's Avatar
    Quote Originally Posted by Michael Jackson View Post
    Putting way too much work into this shit that should go into the game instead. What a waste of time for a feature that takes you so much out of the game.
    Fucking hell, what a state of gaming 2020 is in....
    Yes, thats absolutley how that works, the people who tunes numbers are making phone apps. Stop and think for a while before you post yeah?
    An entire different team is making this and if they didnt make this they would of made something else not related to what you are thinking they should put time on.
  1. Redroniksre's Avatar
    Man, so many salty people at a feature they probably won't use. I am not into pet battling but god damn those who are deserve as much as the rest of us. That said, at least they are trying to make this a bit more entertaining of a feature, hopefully it won't be as terrible as BFAs table, but not as lucrative as Legions/WoDs.
  1. Ielenia's Avatar
    Quote Originally Posted by Sunnydee View Post
    Yes, thats absolutley how that works, the people who tunes numbers are making phone apps. Stop and think for a while before you post yeah?
    An entire different team is making this and if they didnt make this they would of made something else not related to what you are thinking they should put time on.
    Reminded me of back in April 1st, people kept complaining about the April Fools jokes and talking about how they waste "development time" on those jokes than on improving the game...
  1. Nishapve's Avatar
    Quote Originally Posted by Michael Jackson View Post
    Putting way too much work into this shit that should go into the game instead. What a waste of time for a feature that takes you so much out of the game.
    Fucking hell, what a state of gaming 2020 is in....
    I like this kind of things. So I am glad they are doing it again. I hate pvp. Why don't delete it?
  1. dunkl's Avatar
    Not to detract from the companion app because it’s fine and useful for some and the technical stuff such as coding and so on is interesting

    If they ever do pet battles for mobile I suggest the arena or field or dojo wherever the battle takes place, since it will be a self contained environment/setting, they can have the camera spin around and go through the battle and above the pets and

    even zoom out and in for certain moves such as a water squirt attack could start in close where the pet is inhaling/gurgling then the the camera zooms way out to the opposing pet as the water travels towards it, hitting/splashing it.

    I like pet battles and don’t need mobile but I know people do and could be cool if they make the display and animations immersive or at least engaging. You could choose static so it appears like in wow or immersive where the camera highlights the battle from different angles and pans, appropriately.
  1. Alanar's Avatar
    Yea.. realy not interesting at all lol

    It's basically: blablablabla Luckily for adventures we were able to reuse the follower system blablabla

    No ones cares dude.
  1. Darknessvamp's Avatar
    Looks like the design hasn't changed much since Pre-Alpha then if the images used in the announcement blue post from a while back was supposed to be an indication of this feature in it's most recent state and the very first image is labeled as pre-alpha. So back around Blizzcon time?

    if you have feedback for us that can help improve the Adventures experience,
    Yeah they should've been scenarios that you can launch in-game, allow you to command the adventurers in a limited fashion and watch the fight play out in real time using that Island AI tech you were so proud of last expansion and get your reward if you won once finished, then limit the system by having a character stamina/injury system like other rpgs and strategy games that take adventurers out of the active pool after so many missions/injuries and put them in the "healing" pool for some time.
  1. unbound's Avatar
    Quote Originally Posted by Sunnydee View Post
    Yes, thats absolutley how that works, the people who tunes numbers are making phone apps. Stop and think for a while before you post yeah?
    An entire different team is making this and if they didnt make this they would of made something else not related to what you are thinking they should put time on.
    And that entire different team could have worked on something in the game instead of this nonsense. Stop and think for a while before you post yeah?
  1. m4xc4v413r4's Avatar
    Quote Originally Posted by unbound View Post
    And that entire different team could have worked on something in the game instead of this nonsense. Stop and think for a while before you post yeah?
    I love how you're assuming they would ever be put to work on the game when they're not part of the team...

    It's like saying the janitor at microsoft should be creating a better folder system instead of wasting so much time cleaning the floors.
  1. xdunpealx's Avatar
    I have no interest in the mobile apps, and I hate companions. With that said, really, how are they not moving pet battles into mobile? I am sure they could make lots of money for it.
  1. Edward Wu's Avatar
    California and their obsession with mobile development. What a pack of fucking losers.
  1. tamarin's Avatar
    some of the great features that you’ll see in the expansion
    developing a feature simultaneously for mobile and PC platforms
  1. javierdsv's Avatar
    For God's sake, what's up with people in this site being so damn negative?

    Guys, come on, it's someone's work you're complaining about, something they do to bring food to their tables.

    If you are seriously affected by someone's work, feel free to provide constructive criticism instead of being such a prick.

    I believe it's always welcome to have some sort of mobile interaction with the game, and it's amazing to see how they get these kind of things working.
  1. Sorshen's Avatar
    So it's yet another shitty auto-battler. How entertaining.
    If only they were this enthusiastic about optimizing the game performance and not butchering the lore every expansion.
  1. scelero's Avatar
    Quote Originally Posted by javierdsv View Post
    For God's sake, what's up with people in this site being so damn negative?

    Guys, come on, it's someone's work you're complaining about, something they do to bring food to their tables.

    If you are seriously affected by someone's work, feel free to provide constructive criticism instead of being such a prick.

    I believe it's always welcome to have some sort of mobile interaction with the game, and it's amazing to see how they get these kind of things working.
    get rid of the first three paragraphs you wrote and just stick with the last. because you're being the same thing you're complaining about.
  1. tamarin's Avatar
    Quote Originally Posted by m4xc4v413r4 View Post
    I love how you're assuming they would ever be put to work on the game when they're not part of the team...

    It's like saying the janitor at microsoft should be creating a better folder system instead of wasting so much time cleaning the floors.
    This stuff involves more people than just the janitors mobile dev team though since that mission table crap also exists in the actual game:

    - back end people, who could be working on relevant features
    - gameplay programmers, who could be working on relevant features
    - ui programmers, who could work on making the ui suck a little less so the game would be playable with only a mere dozen addons
    - ui artists
    - designers scratch that, its probably for the best that those working on this aren't doing anything important
  1. Sunnydee's Avatar
    Quote Originally Posted by unbound View Post
    And that entire different team could have worked on something in the game instead of this nonsense. Stop and think for a while before you post yeah?
    These people are most likely hired to handle Battlenet on phone, apps and such. they have most likely have no other purpose AT the company.
  1. Leyre's Avatar
    Quote Originally Posted by Sunnydee View Post
    Yes, thats absolutley how that works, the people who tunes numbers are making phone apps. Stop and think for a while before you post yeah?
    An entire different team is making this and if they didnt make this they would of made something else not related to what you are thinking they should put time on.
    Guess what dumb dumb, instead of hiring people to develop an idiotic mobile app, they can instead hire more people for the main game

Site Navigation