CONFRONTING THE “HERO INVENTOR” SYNDROME

Before the team at Villain launched their first game, “Archetype,” they got a lot of smaller projects off the ground, each with grand dreams of breaking the Top 100. The design framework was worked out, schedules were made, milestones created, and the first of the contractors were contacted, all in an effort to follow the latest trends — or at least some killer ideas.

In a common work week, the team would be gung-ho for one project, only to have an idea pop into one of their heads by the weekend that they wanted/needed to pursue — always ASAP — and, thus, the next week would see the previous week's work postponed. Needless to say, planning new projects in this way broke older schedules that hadn't even been given the chance to be assigned yet.

Inevitably, the question would occur at some point in the week, “You know that game/app named blah-bleh-bloop? Well, what if we took x, did y to it, then blended in z…” and dollar signs appeared yet again in the eyes of the team. The gist is that planning an app is easier said than done. Schedules, ideas, and even grand designs do not an app make.

Everyone wants to have that one design or idea that he or she turns into the next “Angry Birds,” but we can't pursue them all. That's the pitfall — the need to constantly create and ideate, but never actually take action.

Benefitting by Doing It Yourself

When you finally decide to take the plunge, it is advisable to start by making a list of what assets you have in terms of production capability, and where you're lacking. How much you can do “in-house” or all in one place largely determines the overall cost, notwithstanding external marketing pushes near the end of development.

For example, say you have an artist friend who is willing to help out with assets for a cut of profits (also known as revenue share or “rev” share), or you've been referred to a somewhat fresh programming team that want to prove themselves and will charge less if you go with them. Essentially, to lower costs, you decide to manage production from your end instead of paying a full-featured development studio to carry it all.

As a matter of fact, many of these teams do little more than provide a method to outsource to their own workhorse teams, with internal project managers to coordinate it all.

image With “Archetype,” the Villain team went with both in-house help and outsourcing to a more full-featured team. Because the team decided on a tight production schedule that required a competent programming team to pull off advanced three-dimensional (3D) and multiplayer support, the team outsourced to a relatively new team in the San Francisco Bay Area that took over all project management of the code and art for a reduced rate. What the team at Villain did was essentially merge two key producers/designers into the flow of the development team, especially regarding level and combat design, then quality assurance (QA), and eventually the implementation of localization (which is how to get it into other languages). It was a competent, but small, core team overall, with not a lot of experience yet on iPhone app design, which helped keep costs down on a more ambitious title.

Outsourcing

With easier collaboration methods such as Skype and other communication/project management tools, as well as faster asset/code turnaround than used to be possible with things like Software Development Kits (SDKs), outsourcing has fast become a viable and efficient manner to cut app and game development costs.

This section examines the ways an app developer can outsource (Figure 2-1 shows one of the most popular outsourcing tool in the U.S.), and provides some tips for finding help.

image

FIGURE 2-1: The easiest way to find outsourcing in the U.S

Few developers are capable of doing everything in-house — project management, production, design/level design, programming, art, audio, QA, and so on. Therefore, an important early consideration to be made is what you can achieve in-house, and what you'll need to farm out, or outsource.

One half-truism that comes with a caveat is the belief that you can dramatically cut app development time with more people working on it. Though, to an extent, this is true from a production standpoint, more people involved also means significantly more complexity with project management, budgeting, and bringing the different parts of the app together.

With asset development such as art, audio, and animation, these things are typically easier to generate in parallel than things like code features or new systems for your app. For programming, it's best to stick to one small team or programmer so that you're not dealing with the complications from merging and coordinating code implementation from multiple sources.

Outsourcing Assets

Typically (at least in game development), it is fairly common to outsource two types of assets — much (or all) of the art and also audio — because games are fairly heavy in each. Fortunately, if you're lucky enough to be dealing with a utility or non-game app, the required quantity of both of these diminishes greatly (relatively speaking), as does the cost.

So, what exactly is an asset that can be outsourced? Assets are each individual file for every piece of art, animation, and audio (be it music or sound effect, sometimes called sfx) in your app or game. For example, if you were doing a role-playing game, you might have several static screens (to keep costs down) for the story intro, then all the player character art, non-player characters, objects and items (which could be hundreds or thousands), background scenery, special effects, icons, maps, main and sub interfaces, sounds, animations, and thematic music.

As a general rule of thumb, the more of a “game” your app is, the greater amount of art and audio you'll need, with art usually being the much, much bigger expenditure.

Let's look briefly at each of these types of assets.

Outsourcing Art

With art, you'll first want a general scope of what you need from the designer so that you can get a proper quote. If it's a 3D game, you'll need 3D assets, so you'll need artists who can deal with exporting from programs such as Maya and 3D Studio Max. These artists are usually proficient in modeling, characters, and texture work. Figure 2-2 shows a textured 3D model from the Rocket Launcher in “Archetype,” which was eventually exported into polygons for use in the game.

image

FIGURE 2-2: 3D model of a weapon from “Archetype”

For two-dimensional (2D) user interface (UI) work such as what is shown in Figure 2-3, another type of artist is needed — artists who are good at drawing and positioning layouts. These artists will usually work in tandem with the designer (more typically near the beginning of development) to streamline menu progression, functionality, and layout, sometimes according to the designer's initial spec.

image

FIGURE 2-3: Example UI from the game “Archetype”

In some instances (for example, if your app is a simple business or utility app that relies on much of the core iPhone standard UI art), the iOS programmer has access to the full set of standard graphical user interface (GUI) elements straight from Apple for use in any app. This could be a way to cut costs, but obviously there wouldn't be much except for functionality to set your app apart from the rest. So, it better be good if this is the direction you're planning on.

Another option some developers have taken (mainly to opt out of art outsourcing) is to put an artist hat on a team member who normally wouldn't be an artist (such as the programmer). This often occurs for a team that can't afford an artist, and settles for creating more “crude” hand-drawn art. Although this was (and sometimes is) highly popular in certain cases (for example, “Doodle Jump”), and it can certainly cut costs, ensure that you have a solid reason for going with this.

The hand-drawn style has somewhat worn thin after all with the resurgence of independent (indie) game development (that is, those without a big budget doing as much as they can). Don't be dissuaded from using that style if your budget or vision merits. But if your budget allows, you'll likely make a bigger impression by hiring a real artist, even for a unique “crude” hand-drawn style.

Finally, for conceptual work, typically at the beginning of development and prior to asset generation, an artist will be needed who specializes in the look/feel of the world, the backgrounds, characters, and sometimes weapons, which the 3D artist would render after being approved.

Sometimes any type of artist can function as a concept artist, but there are specialists out there who do excel in the field. These artists are usually more proficient in traditional drawing and painting methods than the others, as opposed to working mostly in the digital medium.

Figure 2-4 shows the first concept character art from a casual matching game, “Matchlings,” which is full of unique characters. Initially, the Villain development team had a vampire, and it was working okay, but all of the characters were male-oriented, so the team felt the need to change a few to females to better appeal to a general audience.

image

FIGURE 2-4: Concept art for “Matchlings,” an early game by Villain and its second to be released

CONCEPTING FOR A 3D FPS

For “Archetype,” production outsourced to both a team of 3D artists for modeling the various weapons and textures, and 2D artists for things like GUI work and other 2D elements (such as the all-important logo). Production also outsourced to an outfit that could do conceptual work in the beginning for things like the look/feel of the world, and the look of the characters and weapons.

The game's intro was one of the later items produced, and, in fact, a significant portion of game art for in-game elements was complete before an intro was ever commissioned. When the team got to the computer generated imagery (CGI — basically pre-rendered advanced 3D graphics with great lighting and animation) intro, they had another go-round with concept stuff from that studio before they started production.

Outsourcing Audio

Audio assets come down to what UI elements you desire (typically standard button presses, swipe and gesture sounds, scrolling, and so on) with any other unique interactive elements. Typically, for good gameplay and general interface design, any action the user can do will require feedback in the form of something visual (a highlight or other indicator) and a sound effect file (sfx). This is especially true for current touch devices, because, since they lack tactile response, feedback can only be delivered via graphic or sound, as opposed to the click of a button or vibration of a controller.

Then there's music. Should you have an intro theme that loops? Should you have several tracks for different levels? How long should they be, and should they repeat? All this requires is a general indication of scope (again, typically from a designer) before setting out to get quotes. These days, it's usually enough to hire an audio engineer, and he or she will have several different libraries from which to pull and export the sounds in the format that you need — for a cost, of course.

Finally, there's voiceover (VO) work. If you have a game with VO, you're possibly talking anything from simply recording a team member's best John Wayne impersonation to paying Screen Actors Guild (SAG) fees for premium talent. Well, recording from a team member not only ups morale and is usually highly funny (at least to the team) until it gets amazingly annoying, but it is also a good way to get in placeholder assets until the real talent can be had — which sometimes is never. This method happens to be popular, for obvious reasons, within indie game development.

image The music and sound in “Archetype” was done by a company Villain first used for a smaller project. The development team ended up liking that company's work, and so tasked it with the main theme for the game (which ended up an appropriately thematic, epic, impending doom-like march). Along with music, Villain had several sounds for weapon fire, pickups, other interactivity, and UI notifications. For when the player was awarded medals, VO was considered, but didn't make the cut because of time schedules and because, though cool, Villain simply didn't think of it as a high enough priority.

Outsourcing Your Programming

Let's face it. Most small developers with a big idea will be in the need of a programmer or three, depending on scope, who aren't on the payroll. You should be warned, however, that this is where your budget gets a big bite taken from it. Fortunately, with iPhone development really taking off in the past few years, you should have little trouble finding a team willing to take on your app and, for whatever their reasons (which are important), work with you on cutting a deal.

To be able to find the right help, you must have a basic understanding of the scope and features of your app. For example, here are a few features worth considering for a short feature/concept document:

  • Does it need 3D graphics?
  • Does it need to connect to Facebook, Twitter, and so on?
  • What kind of social features/sharing will it have/require?
  • Does it use advanced motion controls like the iPhone gyroscope, or the accelerometer/tilting?
  • Does it need to manipulate or access your music collection? (For an example, check out “Planetary,” a neat iPad music app that does this in a very interesting way!)
  • Does it have multiplayer capabilities?
  • Does it need its own physics engine? (For an example, see “Angry Birds.”)
  • Will it need to access the Internet from within the app?
  • Does it have high-score lists?
  • Does it access your mail?
  • Do you need to be able to draw?
  • How about chat?

In this document, you should lay out a bulleted list of features you require from the following:

  • The iPhone/iPad core functionality (such as possible controls and existing device programs you'll need access to)
  • All the functionality you need it to be able to do from within the app

With your feature/concept document in hand, you'll be able to quickly gather quotes from competing sources and make a judgment call as to who to go with.

Outsourcing Design

Not everyone can program, but it's true that everyone is indeed a designer. It will be very tempting to try to cut costs here by throwing together a “specification” document and hope that the programmers can make enough inferences from vague descriptions to properly execute the vision. But it is strongly recommended that you hire an expert, because your killer app's core functionality and user experience depends on the design.

Ideally, you'll want to use someone who can come up with functional (and intelligent, but creative) designs, communicate effectively with clear documentation using flowcharts and the like, and be able to creatively (and quickly) iterate on team feedback. A good designer can handle the math for you, making it easier on the programmers, in addition to the design of most of the entire user experience (including controls, interface, flow, social features, and other elements that go into an app).

It's likely that you already have a million-dollar idea or more that you're kicking around, and have already jotted down some (or a lot of) info, maybe even specifics about certain features of your app. This is a time when you'd hire a designer to flesh out the experience according to the vision, while ensuring that you don't have any user experience hang-ups along the way. The outcome should be a package of the design in a nice document, ready for programming.

At other times, you might only have the idea, and simply need it fleshed out. If you don't already have a designer in house, a good choice you might consider hiring would be freelance game designers.

Avoiding the Pitfalls of Going It Alone

There is one clear way to avoid many of the pitfalls you might otherwise encounter during your journey, and it can easily be summed up with these words: Find the right talent. It cannot be overstated that you'll need to get good at evaluating outsourced talent based on cost, portfolio, communication, and location.

Let's briefly fast-forward and assume that you've acquired the services of reasonably capable people who, under most conditions, would do an average to great job. To deliver an exceptional app, you will also need these things:

  • A capable project manager/leader/decision maker (which can be included in the list of acquired capable people)
  • Efficient communication tools
  • An online project-management collaboration framework (usually shared by outsourcers)
  • A reasonable development schedule/plan

As far as a project manager, it is highly recommended that you take on this duty yourself, or already have one or two people in mind for various main tasks. This is because this position isn't usually outsourced, unless you're paying for a full-featured development team.

For communication tools, Villain hadn't yet jumped on the Skype bandwagon as a whole, but instead used Gmail (an online collaboration tool), and Gmail's built-in chat when appropriate. Nowadays, you should have a free Skype account (www.skype.com) or other similarly featured chat/messaging client. Being able to share your screen and send files, as well as instant chat and video calls, make Skype indispensible as a communication device.

image For the team at Villain, because the company was paying for a team that could handle most of the art, QA, and all of the programming within the company, Villain had its own project leader who was in constant touch with the development team to work out scheduling and deliveries. In turn, the Villain team managed everything that wasn't covered by the outsourced team, including localization, some QA (everyone was involved in this), combat and level design, audio, CGI animation, other outsourced scheduling, and marketing. In the end, it was largely a collaborative effort with the outsourced team and CEO, and Villain's own team.

image Appendix B provides more information on useful tools.

Other highly recommended team collaboration and communication tools are available that take the place of dedicated project-management-only programs like Microsoft Project and are used by an entire team. Online full-featured project management tools such as BaseCamp (www.BasecampHQ.com) can handle everything from multiple projects, file sharing and repositories, milestone creation and tracking, message posts and replies, e-mail alerts, task tracking, to-do lists, and much more — all in one place. They're typically super simple to use, and will help keep everyone on the same page. Most of these are not free, but relatively inexpensive, and come with monthly pricing plans.

Finally, from the project manager, you'll need a reasonable plan that reflects the scope of the app, as well as outsourcing intangibles, and merges them into a typical development timeline.

image Chapter 5 provides more information on plotting the stages of development.

As shown in Figure 2-5, in the end, there's going to be an optimal solution for each outsourced component in terms of how cheap or expensive, how good the outsourcing resources are, and how fast they can work. Assuming the general principle that the cheapest is usually less experienced and not the fastest, and the most expensive is usually at least effectively experienced, the optimal solution for your project is likely somewhere in the center, near the peak of the bell curve. For example, as you elect to go with higher-priced talent along the curve, you will eventually reach a point where expenses outweigh the benefits. Conversely, if you go too low along the curve, chances become higher that the talent will not be able to complete the task on time, or as intended.

image

FIGURE 2-5: Optimal cost solution for hiring outsourced talent

TOP THREE TIPS FOR FINDING THE RIGHT OUTSOURCED TALENT

Following are a few tips for ensuring that you avoid the major pitfall of not having the right talent:

  • Always ask to see a portfolio — Whether you are working with artists, programmers, audio engineers, or designers, you'll want to first tell them what your app is about in a nutshell, and then see their closest and best representative work to your future design. For programmers, stay away from those who have no or relatively little experience programming iPhone apps. It may cost less per hour, but will be more costly in the long run, both in terms of money and time. For programming teams, play the games or apps they've contributed to, while specifically asking which parts they worked on to see if it is up to your standards.

    In the end, if you're still on the fence, it's always a good idea to ask for references and follow up with them. Work-for-hire sites such as Elance (www.Elance.com) or Guru (www.Guru.com) have ratings and feedback you can browse, further filtering the pool to narrow your choices.

  • Gauge their communication effectiveness — How quickly do they respond? Do they seem like they understand the vision? Are they professional in demeanor? How well can they speak your team's native language? You'll sometimes be able to find exceptional talent with very little speaking ability in your language, but generally, the more complex your app is, or for example, the less visual documentation you have available, raises the need to communicate any ideas or designs with them, and thus the better their grasp of your language should be.
  • Negotiate the rate — Did you find someone promising, but who is out of your budget? Don't be afraid to ask for a slightly lower rate (because of your tight budget), or, failing that, potentially trade for a share in revenue. Sometimes this can actually save you quite a bit of money, but there's the chance they may not be willing to go this route. Still, it is done. In any case, to get your business it's very likely they can find some way to do the job for somewhat less than the quote (5 percent to 15 percent isn't unreasonable to request, depending on the job), and they often bid with this in mind. Just be sure to have a number in mind that sounds fair. Asking for a discount isn't always as good as just asking, “Can you do it for X amount?” Then, if they decline, you would still have some room for a follow-up amount, whereas a simple “no” to the general discount question pretty much closes the negotiation.

At the very least, unless there's exceptionally high demand for their services at the time, you'll often come away with a better deal, even if it means negotiating in some type of small sacrifice on your own (such as scheduling, or without optional feature X, Y, or Z).

Whomever you decide to work with, ensure that you have a proper non-disclosure agreement (NDA) in effect. Basic versions can be found on the Internet and tailored to your needs, but, of course, using your own lawyer to prepare one would be the safest.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.22.27.45