If you find this article contains errors or problems rendering it unreadable (missing images or files, mangled code, improper text formatting, etc) please contact the editor so corrections can be made. Thank you for helping us improve this resource
Austin GDC was yet another well-run GDC event taking place in... hey look at that, Austin Texas! Like last year, it was held in the spacious convention
center downtown, which is within easy walking distance of the famous 6th Street and tons of bars, resteraunts and clubs. So you know the game developers
were out partying until all hours of the night, every night. The weather was absolutely great - Austin can still be pretty steamy this time of year but a bout of rain swept through that ended
literally the day people started arriving and temps stayed in the low 80's during the day, mid 70's during the night. Considering people were mainly inside all day, venturing outside mainly for
lunch, we all got to enjoy some great weather as the sun went down and the parties began.
The conference was smaller than last year, although that didn't really affect the overall quality at all. Sessions were still very top-notch almost across the board from what John and I attended,
and although the Expo was tiny, it was at least densly packed enough to "appear" really busy at times. But then at times it was still as dead as the huge main GDC Expo floor earlier this year in San
Francisco. Yes, the economy is still biting people hard, but it was nice to see that everyone who came to the event was still stoked about the games industry moving forward with all speed. There
hasn't been any sort of post-conference press release yet delivering attendance numbers or anything like that, and some people voiced concerns that this would be the last Austin GDC - but it appeared
to me that AGDC downsized its event appropriately to account for a smaller number of attendees.
Austin GDC is scheduled to return next year, October 5-8.
We've continued our live-coverage of AGDC sessions via twitter, first started during GDC earlier this year. While the 140 character limit sometimes makes it challenging to follow a lecture, what
ultimately results is the very essence of a talk being revealed through nuggets of golden information. This is the stream of tweets that came from @gdevnet
during the conference. To save you from a wall of text, it's been formatted into seperate lectures, and at the bottom is all the retweets from people also covering sessions via twitter.
Beyond the Finish Line of Shipping an Indie Game Ron Carmel (Co-Founder, 2D Boy)
Ron: PR & Promotion after ship (World of Goo) responsible for ~1/3 of total revenue. WiiWare, Steam, MacHeist
Ron: tried updating FAQ to reduce barrage of emails. "No one gives a shit about the FAQ". Putting FAQ in email response did help a bit
Ron: if someone complained about not getting d/l link they just sent a game copy - too much time to check through. Same for refunds
Ron: 2D Boy website, surprisingly, sold ~23% of sales. That's the *second-best* channel after 40% from WiiWare US. Use your website!
Ron: don't let PayPal boss you around with a minimum balance (substantial one, like $5-$10k). Threaten to switch payment providers
Ron: Bluehost gave them horrible treatment when the launch demand crashed their servers. He does not recommend them at all
And Yet It Moves: From Student Prototype To Published Indie Game Felix Bohatsch (Game Design and Project Lead, Broken Rules Interactive Media GmbH)
Felix: ~93% piracy rate for And Yet It Moves. Looking for upsides, at least ppl are playing your game and spreading word about it
Making an XBLA Game in 6 Months: A Splosion Man Postmortem Mike Henry (Lead Programmer, Twisted Pixel Games), Sean Riley (Lead Designer, Twisted Pixel Games)
Twisted Pixel used a list of all gameplay elements prioritized constantly so it was easy 2 c what on the bottom could be cut if needed
Q: Why only 6 mo? Twisted Pixel: to be ready for Summer of Arcade, as more games sell better with bigger Microsoft PR push @ that time
The Universe of World of Warcraft Frank Pearce (Co-Founder & Executive Vice President of Product Development, Blizzard Entertainment), J. Allen Brack (Production Director, Blizzard Entertainment, Inc.)
WoW engineering team is broken into five sub-teams, Engine, Gameplay, Tools, Server, and UI.
WoW servers have 13,250 total server blades and 75,000 total CPU cores and 112.5 terabytes of RAM running the servers
There is currently one “unannounced MMO”, and it's a huge undertaking - the WoW guys
To maintain one online game (WoW) requires 20,000 computer systems, 1.3 petabytes of storage, more than 4,600 people.
Resumes, Cover Letters and Websites Jim Rivers (Hiring Manager, Obsidian Entertainment)
Jim: Resume do's - multiple resumes (tailor to company), 1 page, .DOC or .PDF, spell check EVERYTHING, include website, keep updated
Jim: Resume dont's: bulking up to compensate for lack of experience, logos/artwork, crazy fonts, including wrong company name
Jim: also do NOT include your hobbies, marital status, political status, SSN, drivers license #, b'day, pic of yourself. Yes, ppl have
Jim: use tables, not tabs, in Word to list your skills and organize layout. Makes for quick edits and easy upkeep
Jim: use *your name* for your email, not firstname.lastname@example.org. Have a professional ring/voice mail to your cell phone
Jim: same for website. Be professional. A colleague of his once got sent to yellowsnow.com
Jim: recruiters are more interested in what you can give the company rather than what you hope to get from the company
Jim: likes it when you spell out your degree. No one needs to know your GPA. Don't forget expected grad date if still in school
Jim: cover letter do's: show passion; fan-boy bit is ok, but don't overdo it; research company; be confident; what u can bring to team
Jim: cover letter dont's: your (whole, entire) life story; address to wrong company; beg or plead; more than 1 page
Jim: cover letter 3 parts: intro (create interest, attract attention); body (why work at company); closing (state interview interest)
Jim: likes it when people thank him for reading their resume. "Thank you for your time" is a good example start of a closing statement
Jim: never call for a follow-up, after sending resume. Send an email but not like, once a week or every day
Jim: a lot of people these days will not take a paper resume. Websites are king. He once had to travel with 20lbs of resumes. Hates it
Jim: have on website: best work, easily accessible content, downloadable resume link. Always assume recruiter knows nothing about you
Jim: website don'ts: using other ppl's work; quantity over quality; work that doesn't apply; anime. Please no; hard to access content
Jim: artists can have multiple sites for seprate disciplines (concept, environment, character, etc). If 1 site, must be well organized
Jim *will* play games if you link to them and provide a quick install. Demos are best
Jim: if ure a programmer, he wants 2 know you can make games. Lots of ppl can program, few can make games. CS degree alone means squat
we gots the slides from Jim River's #agdc talk on resumes. TONS and TONS of good stuff from him & other HR ppl - http://tr.im/zyMW
Developing in the Cloud Ben Garney (Programmer, PushButton Labs)
Ben: the real power behind cloud computing and tools is the ability to scale dynamically and readily to meet ever changing demands
cloud risks: dependent on outside services (can go out of business, can turn evil, can nose dive in service support)
cloud limits: may not scale for very large needs (Blizzard in the cloud for WoW? Uh, no), sensitive information, custom hardware reqs
The Loner Damion Schubert (Lead Combat Designer, Bioware Austin)
Schubert pointed at the interesting data gleaned from research into the psychology of traffic; love of the commute and [...]
And minimizing road rage by allowing drivers to see other drivers (personalize a "solo" experience).
Randomness: The Danger and Value of Chance Elements in Game Design Greg Costikyan (CEO, Manifesto Games)
Balancing randomness/strategy: regression toward the mean (decreasing pure randomness; depending on statistical analysis).
Next strategy to balance randomness: randomness which affects all players. Random, but players all work with the same lot
Third strategy: ensure all random effects are "balanced" - different effects, no one cumulatively better than another
Randomness as a means of providing an infinite amount of content of variable strategic value (Nethack, etc.).
Where Agile Falls Apart Rich Vogel (Co-Studio Director, BioWare)
Rich: Agile process lets you find the fun fast
Rich: Scrum (Agile methodology) is *not* a silver bullet. No clear finish path (can lose where you are), publishers are NOT agile
Rich: polishing what you have is key to moving forward. last sprint is dedicated to polish, no new development allowed
Rich: we don't do verbatim the Agile methodologies, we take what we want and adapt to our team (remember, no silver bullet)
RT @ChrisA9 Registration bounce rate when asked birthdate = 40%. When changed to "How Old Are You?" bounce rate = 10%.
RT @SnappyTouch Indie business tip #1: Develop something that becomes a hobby for the player, not a consumable game like fast food.
From AAA to indie: Tiger Style and the making of Spider
Randy Smith (Owner and Game Designer, Tiger Style), David Kalina (Owner and Programmer, Tiger Style)
Why an iPhone studio?
We started out with a vision statement outlining their vision for the products they'd be creating. They targeted iPhone user habits and lifestyles (i.e. carrying the thing around all the
Traditional business - Investors vs self-funded, lawyers vs plain-English agreements, buying software vs using free stuff. Salaries vs royalties.
Not all of these are available to everyone, but many are. Remotely-run projects are very doable.
Managing a distributed team – empower them with trust, flexibility, transparency, ownership of direction, and generous royalty compensation. Everyone is in alignment. Awesome team culture
(not sure what "awesome" is, but hey, awesome's awesome).
The schedule did slip, as the schedule was not predictable before Alpha, feature and quality-creep crept in, and a "because we could" mentality creeped in, stretching the schedule.
Evolution of the controls
Initial design for walking was based on the accelerometer, turning the iPhone around to make the spider crawl. Turned out it was tedious to force the user to rotate the device, so they went with a
tilt-based approach similar to "spiky rolando" games as a compromise.
Quotes from playtesters showed that controls were confusing. Eventually they went from tilting the unit to a touch-based approach. The tilt-based approach just ended up feeling gimmicky. The
controls ended up getting better as the tutorial got simpler. The tutorial ultimately ended up being a pile of still images with very simple controls.
Evolution of the art direction
The design was originally based on macro photography – very short depth of field with blurry backgrounds to give the impression of looking at something really small.
Another design was art inspired by Edward Gorey's drawing story. The final art style ended up with this style, although with color to give things a bit more depth. In the end, it's unknown if the
photographic version would've been cheaper. Illustrations would be easier to modify.
Evolution of the story
Original story – you're a human who was turned into a spider by a witch, and you need to turn yourself into a human again. This turned out to be a crappy idea. Not a good way to relate
yourself to your spider character.
Story eventually became more ambiguous, exploring an abandoned house. There's a back-story, but you're not really attached to the story. You're just a bystander.
They didn't go with the first story idea, but they did end up leveraging it for the final story.
Evolution of the marketing
The biggest part of marketing your game is the app store description. They spent a lot of time coming up with a compelling description, screenshots, and byline.
They added facebook connect support, allowing you to post snips of the story to your facebook timeline. They can also add your friends' faces to the game (high score tables). Adoption rate was
rather low (about 9%).
They're localized into French, Italian, German, and Spanish.
As for versions, most people have upgraded to iPhone 3.0+, but not everybody.
Release and Promotion
Picking the price-point – people really get stuck on this, and there are multiple strategies. What you think you're worth and what people will pay are two different things.
There seems to be a gulf between the 99-cent apps and the "premium" games for $5 and up. That's where they placed Spider, at $2.99
Note to Apple, please de-obfuscate the process. Communicate with developers. Check metadata FIRST (referencing other games in the metadata is verboten). Document reasons for rejection. Show "place
Ten days after submission, they were approved but their website wasn't ready. The trailer wasn't ready. Turns out marketing is a full-time job. You have to cast a wide net and leverage everyone
The touchArcade site was a good bump for them. They ended up getting a review on the first night. They also wanted to see the developers on the forum.
Is the "Apple featured page" the magic bullet for big profits? Well, sort of. The sales boost isn't automatic. Converting the page-view to a sale is (mostly) up to you.
In conclusion – The AAA mentality is "take time and get things right" while the indie mentality is "decide quickly and trust your instincts".
The two points that came up from the users are that the controls are very responsive, and there is a story. Production quality is high, and it's a fully-featured game.
The sweet spot for iPhone games is "immediacy with depth". The core mechanics are responsive. The game's not demanding. There's no menu. You just go right to the game. The depth comes from the
story and game modes and scoring/leaderboards and achievements.
Pangea's Road To Success: Launching and Marketing an iPhone app
Brian Greenstone (President & CEO, Pangea Software)
(how to market an iPhone app)
In 2008, it was easy to make lots of money on the iPhone. There were fewer apps and hence less competition. Apps cost more and there were higher profits. Most good games cost about $10. It was
new, and it was easy to get good press for your apps. Most good games made it into the top-100. Any reasonably good app made good money.
In 2009, it's a different story. There are 75k apps in the app store (22k are games), and competition is huge. The price-war was driving unit profits down. The newness of the iPhone wore off, so
the press doesn't care so much anymore. It's now very difficult to get into the top 100. Quality no longer guarantees success.
33% of iPhone apps earned less than $250
52% earned less than $15k
2% earned $15k-$50k
1% earned $50k-$100k
1% earned $100k-$250k
1% earned $500k-$2m
Playing the app store is like playing the app store. If you don't really know the rules, you're pretty-much guaranteed to lose.
Five marketing rules for success
Rule #1: Get into the top 100 (now the top 200)
Apps in the top 100 typically sell over 1000 copies a day. Top 10 apps generally sell over 6k copies per day.
Only the top 50 are visible on the iPhone and iPod, so that should be your goal.
Getting into the top 200 requires you have a really good launch. Ranking is most important in your first week. Ranking leads directly to sales and vice-versa. Have a "special introductory price"
to boost initial sales.
Admob released a big survey on iPhone app customers. Top store ranking led to about 60% of sales. Searches led to 60%. Word of mouth about 40%. Seeing ads in other apps about 25%. News articles
Rule #2: Get the customer's attention
The first thing users see is your icon, so make it compelling. Make an icon that is going to stand out. Look at similar icons and see if yours stands out.
Modify your icon about every six months so people don't subconsciously skip it.
The next thing a customer sees after the icon is the itunes and iPhone description, and the screenshot is the most important thing. You get five screenshots, and the primary one is the most
important. Nobody cares what your title and menu screens look like. Don't waste your screenshots on anything but gameplay. Show what makes your game worth buying.
If your game is landscape-oriented, upload your screenshots in landscape. Pre-rotate them and upload at 480x320 so they look right.
Product description – make it simple and concise. Localize it for other markets. Put keywords in your description to help your app appear in search results.
Lists are released in batches and are released in alphabetical order. If you get in a big batch, you won't get on the first page of "what's new" if your game doesn't start with A..D.
Sub-categories – if you cannot get into the top 200 list, try to get into a subcategory's top 200 list. You can choose two subcategories, and some categories are more crowded than others.
You only need to sell about 15 copies a day to get into the top-100 list for kids' games, for instance.
Rule 3: Promote Your App
Expecting people to magically find your app on iTunes is a recipe for failure. You have to let people know your app exists before your app launches, during launch, and after launch.
Pre-launch hype – not the most important, but still the more the better. Put up a web page for your game. To to iPhone forums, Twitter, etc. and talk about your app.
Make a press-release. Try to release on a Friday so it'll stay up a bit longer. YouTube demo videos are good, so link to 'em from your press-release.
Most importantly, get reviews. Press releases last a day or so, but reviews will get you a week of exposure. You get 50 promo codes for each app, so reserve those for reviewers. The press gets
literally dozens of releases a day, and you'll need to develop a relationship with media if you want them to cover your game.
It's okay to "jump start" iTunes reviews if you do it ethically. Just don't lie about your product. iTunes reviews are a pain because people can change five-star reviews to one-star reviews just
out of spite.
Advertising doesn't really work for the iPhone, because there are really small unit profits. Advertising's good to build brand recognition, though.
Getting Apple "love". You can't buy placement. Apple puts stuff up that they like and want to promote. Do your best to make Apple aware that your app exists and hope that they choose you. Try to
establish a relationship with 'em.
Post-launch hype – put things on sale! Give a reason for your sale "back to school sale", "labor day sale", etc. Send out press-releases, although the press doesn't usually cover sales.
Make sure your app is up in the search rankings before you start with press-releases so the press can find the app.
Pricing. If possible, try to keep your regular price at $1.99 or higher so you can always go lower and put your app on sale. If you're not in the top 200, set your price to what you think it
should really be, then do an occasional sale to try and get back into the top 200.
Higher prices tend to filter out bad reviews from the "apptards" who like to write bad reviews.
What is better, 10k games at $1 each or 2k games at $5? The word of mouth of 10k people is better, but many $1 customers would've paid $5.
Updates are another good way to generate post-launch hype. You can get back on the chronological listing IF YOU KNOW THE TRICK. . .
After you get the approval email from Apple: log into ITC. Go to "edit product listing", and change the release date that the date that the update was approved. Click "submit changes", and the app
will go out in the "new" batch even though it's an update.
Demo "lite" versions. In general, they don't work. In some cases it works great, but most times it doesn't.
Keywords are a pain because the content police often reject because of keywords. It's easier to add keywords later after the app is approved.
Rule #4: Diversify your portfolio
To be successful n the App Store, you have to diversify with many apps. Don't bet all your chips on one hand. The sum of cash flow from a large portfolio will give you a good income. No single app
is liable to make a lot of money unless it's a rare hit.
A large portfolio also lets you cross-promote your apps.
Rule #5: Keep your development costs low.
It is very risky for an unknown company with an unknown title to spend a lot of cash on development. The safest strategy is profit sharing. If possible, keep costs at $0. Everybody can win and the
risk is minimized.
Bringing Games to the iPhone: A Business Approach
Chris Williams (iPhone Product Manager, PlayFirst)
Video Games: The Perception – Games are made for the 18-34 year old male with a game console. The money is exclusively with young males.
The Reality – More than 200 million people play online games each month, and 52% of casual game players are women.
PlayFirst makes games that appeal primarily to women, and it makes them uniquely qualified to develop for iPhone. They're still primarily a download/boxed product developer, but iPhone is big.
Diner Dash – 90% female audience and a very wide age range.
Dream Chronicles – 71% female, primarily 18-34 year old women.
Chocolatier – 74% female, primarily 18-34 year old women.
They're multi-platform, done with a C++/LUA framework that's freely available and community supported.
Their first products were very much ports that intended to leverage the existing brand recognition. Later products were more closely tied to the platform.
Cooking Dash was much more of a iPhone-centric game. It had a lot more native functionality than previous products.
Play-times are increasing. Things are going from quick 3-5 minute play to more immersive ½ hour times more akin to the play-time of a console.
Pricing-wise, depth is key. Also having an entrenched brand. Otherwise you're going to have to make your price low. Unless you have a powerful brand and an elaborate game, you'll have to make your
native feature-wise as possible.
Native Features = Aclerometer, Multi-touch, GPS, Camera, Microphone, Wi-Fi
Native gameplay = Pick up and play, "bursts", Rewards early and often, Intuitive controls
Native visuals = Button and font sizes, Game motif is familiar, Vibrant and distinct.
Indie developers have taken a back seat, as they don't have the budgets for marketing that'll become necessary as the platform's mass grows.
Before bringing a game brand to the iPhone
Survey the market opportunity and establish some expertise with the device. You need to be really knowledgeable of the iPhone, which means downloading and playing lots of games to see what'sexpected.
Understand what your audience expects. If they expect anything at all.
Define your business objectives and be prepared to revise it.
How big is the iPhone gaming market?
Apple doesn't release publicly how much money is being made, but it's a lot.
Know your competition and their pricing strategy.
Play all of the competing games and play them all the way through. Learn their strengths and weaknesses. Also look at their prices, because people will buy the cheaper game even if yours is
Understand Your Customer
Does your target player own an iPhone or iPod Touch? Do an online survey.
Does your audience want an iPhone version at all? Again, contact your customers.
Do iPod Touch and iPhone gamers want your game or brand?
What are they expecting? If they're expecting a technology that the iPhone can't deliver, then you have a problem. Do they expect the same feature-set?
Define Your Business Objectives
How much money do you expect to make? Have reasonable revenue and margin expectations. It's okay to have low revenue expectations if it drives sales or builds brand awareness elsewhere.
You can make a quick buck if you can get the app out quickly and cheaply. Or you can go the other way and build a super-premium app.
Technology strategy – figure out if you're making an iPhone or a SmartPhone strategy. Know what it'll take to move your technology to other platforms.
Does your brand provide a competitive Advantage
Games associated with brands get noticed, but the app store is a great equalizer. Every app has the same "canvas" in the iPhone app store.
Brands do cut through the clutter of the app store, and branded games outsell "generic" apps of equal quality. They bring in an existing fan base. And you're going to get Apple's attention.
Other advantages – You have the existing library of assets (graphic and sound) that you can move over. Hopefully your technology foundation can move over, at least in part.
The competitive advantage – You can get premium pricing and leverage customer trust.
Know who's talking to the Apple developer portal. They control the certificates and profiles and device ID's and such. Make sure you own those.
Define your team roles and responsibilities
Create an honest and informed Profit and Loss projection. Success not measured in dollars should still be measurable.
One side does not fit all.
Social and connected features
At very least, email "tell a friend", import your friends list, broadcast your scores to feeds, invites and cross-promotions.
At most, have full asynchronous "live" multiplayer with cooperative multiplayer. You'll get strong user retention and you'll get Apple's attention.
Overall Take Away
Know your audience. Talk to iPhone gamers and give them what they want.
Define and leverage your brand's competitive advantage. Make it meet your business's objectives.
Once your app goes live, be prepared to adjust it. You are just getting started.
The Goldilocks Conundrum – Steering A Middle Path Through Apple's Orchard
Chris Ulm (CEO, Appy Entertainment Inc.), Paul O'Connor (Brand Director, Appy Entertainment Inc)
Appy Entertainment is a new (1 year) mobile game developer.
iPhone apps are generally high volume and low price.
Appy Face Fighter is their current hit.
The iPhone install base is large and growing rapdly. It's now estimated at 5om, which rivals the PSP in sales. 40m are estimated to be added in 2010. Current estimates are between 800 million and
2.4 billion in revenues annually (but Apple's not talking).
There are currently 75k apps in the store, 22k of which are games. Apps are easy to buy and easy to try.
One solution: Micropublisher!
Three classes of iPhone developers – one man shops, micropublishers, and "big" publishers.
Micropublisher advantages: scale, brand identity, agility, control over product portfolio. The goal is flexibility, low cost, and long reach. The hidden cost of iPhone development is in all the
post-launch stuff you need to do to keep your product viable.
Micropublisher challenges: self-funded, new production model, new distribution model, new consumers, and self-funded.
Appy's Organization: They're under one roof. Most of the company is outsourced.
Appy Product DNA: Fun to play, fun to show. "5/500" model (play in 5 minutes, but return to it 500 times). Entertains yourself and others. Share share share aspect, leveraging viral aspects.
Under-promise and over-deliver. And snarky charm.
Building the Brand
Approachability and authenticity.
Company name, location & venue, logos and colors, development blog, and press outreach. It may look ad-hoc, but it's designed that way on purpose.
Their first product failed. In fact, it wasn't released. It just wasn't a good product. It was too ambitious and required an enormous amount of content.
Their second project was Appy News, and it was also wrong. It was opportunistic and optimistic development. Months of effort was blown by an app store glitch (lots of front-page views were lost).
Early reviews were good, but the app died. They released a free version, but it still didn't move enough of the paid version. They had plenty of theories as to why it died, but ultimately it was just
the wrong product for the iPhone market.
The third project was Face Fighter, and it was done right. It had a strong high concept. Version 1.0 was a bit thin, but they released updates that got it up to speed. They got version 1.0 out as
quickly as possible with the intention of updating later. Later updates made the product quite a bit deeper with more scenarios and finishing moves.
FaceFighter lessons – Get the concept right and execute. Pick the right launch category. Pick the right price (new IP = 99 cents). "Appy Fu" vs "FaceFighter" was a question, but they didn't
do the branding because it's basically an unknown brand in a crowded market, so they went with the more demonstrative because you have a 2-second "window" to grab eyeballs in the app store.
How Micropublishing Has Worked For Us
Multi-disciplinary team is flexible and can scale
Early brand identity and halo effect (app selling other apps from your company) in app store.
Full time marketing and customer feedback
"Adult supervision" watching finances
"Punching above our weight"
Allows simultaneous multiple products and updates
Not too big and not soo small
A growing portfolio reflecting brand identity
Many part time hats worn full-time
Scaling up, scaling down – contractor havens
Technological "Lilly Pad" jumps
Flexibility, low cost, and long reach
Is It Worth It?
They have "militant optimism" - problems have to be viewed as opportunities.
The conventional wisdom doesn't apply to what they're doing.
They've seen enough "sure things", so they know what'll happen.
Viral Marketing and Propagation on iPhone, YouTube, and Facebook
Keith Lee (CEO & Co-founder, Booyah)
iTunes app store really hasn't changed much since its launch. Channels and features and such are basically the same. There are no viral marketing channels in the app store. There's no way to
contact your friends and let them know about apps. The majority of app discovery is still on iTunes on the device itself. As of now, the best promotional tool is getting featured and listed in the
PR – traditional press coverage
Traditional advertising – Radio, digital billboards
Street marketing and contests
App category selection – Top 100 category and tarings
They started with "Imangi" and "Word Squares", but their biggest success was "Harbor Master", which is a line drawing style game.
They have a "notebook of ideas"
Follow concepts that WE enjoy playing
Look for concepts with a wide appeal
Look for an intuitive mechanic
Look for games you can pick up and play instantly
Make use of unique iPhone features
Focus on making something that's fun. See if the mechanic is worth pursuing before you spend a lot of time on it.
Focus on the mechanic.
Make it quick and dirty to start out. Try to get the prototype out quickly so you can try out the mechanic immediately.
Get feedback early.
Have a theme and style in mind before you start working with an artist.
Don't be afraid to iterate.
Menus, level design, fine tuning, music, and sound take up the bulk of the time.
One of the most important pieces of art is your icon, as that's the curb-appeal of your game.
Make a mockup of your app as it appears in the app store, just so you can see if it stands out next to similar apps.
Diverse Group (from hardcore gamers to your mom). Get people who don't play games at all to try it.
Watch them play to see what's intuitive and what's frustrating. You can't walk through people testing once your app's in the app store, so get feedback early.
Respond to ALL feedback and ideas.
Have a quick release cycle.
Make a rapid prototype that focuses on fun.
Spend a lot of time and effort polishing.
Know the App Store "sales curve", in which you'll get an initial spike of sales followed by long steady sales.
Get listed in the new releases and try to get listed in the top 100
Try to get positive reviews.
Try to get featured on the App Store.
Engage the community early. Check the Touch Arcade forums to generate some buzz on your product.
Try to get some cross promotion. App Treasures is another place for developers to generate some promotion for their own games while helping to promote others.
Engage The Community
Forums, Social Media.
Know your audience.
Pictures > words. Do screenshots. People don't like to read, so have pictures and video.
Respond to feedback. If you involve the community and the fanbase, you'll get more eyeballs.
Be part of the community.
Be nice. Even if people tell you that you suck, be nice.
Give out promo codes.
Engaging the Press
Get noticed by influential blogs. Apple reads the blogs, so if you wanna get noticed by Apple, get noticed by the blogs.
Timing, pre-release, launch day, and updates. On launch day, the "new releases" section is a guarantee of eyeballs. Know the "release date trick". The release date is, by default, the date thatthe app was submitted, so be sure to change it to the day it was approved, not before or after.
Press-release tips. Think like a reviewer. Reviewers get a lot of emails, so try to stand out as much as possible. Say why your game is cool and why people should pay attention to you. Just makethe release short.
Hopefully the buzz will get you there, as that's where you get the biggest exposure.
It's the best chance to make a profit.
Stickiness is the key to having a "long tail" where people keep buying your app over a long period.
Your price is one of the keys. Over 50% of the stuff in the top 100 are 99 cents.
You can't pay to be featured. "New and Noteworthy" and "What's Hot" are where apps show up in the App Store on the phone, which is where most people buy stuff.
Keeping Sales Up
Keep up the buzz.
Sales will inevitably slump after a time, so deal with it.
Drop your price if you can to improve your rank.
Give out a lite version. It doesn't work dramatically, but it has worked for some people.
Integrate with social media (tweet your scores).
If your app doesn't get a long tail
You might still get lucky.
Play with the price.
Be realistic about the market. No more match-3 games, slide puzzles, farting apps or sudoku
If a project isn't working, let it go.
Building a reputation is tough
Be creative and adaptive
Experiment with new gameplay mechanics.
Try to stand out fro the pack
Learn from others and how they're achieving success
Use your unique indie assets – experiment, be agile and in control, and interact with the players.
Use LinkShare to help track clicks from the App Store
Squeezing Every Drop of Performance Out Of The iPhone
Noel Llopis (Founder, Snappy Touch)
Performance has always been first and foremost when it comes to consoles.
"Flower Garden" is a 3D flower growing game that grows procedural flowers. First tests were on the simulator where they got 40 FPS only to end up with 4FPS on the actual device.
Performance Analysis Tools
Before you start with a formal tool, try turning features on and off in real-time to see what happens to the FPS.
Look at the "Instruments" tool which can be used as a profiler. It's a very comprehensive tool. It can display everything from frame rate to object allocations, memory usage, and even OpenGL
calls. Run it on the real device and not the simulator. It does, however, sometimes give false positives on memory leaks, so don't just assume its complaints are valid.
The sampling rate of Instruments isn't very high, so let it run for a bit of time so you can see the actual performance.
The first pass on "Flower Garden" showed that the simulation itself was the bottleneck, not the rendering.
"Shark" is another Apple tool that can dig even deeper than "Instruments". It's not as friendly as Instruments, but it can get you a lot of information. It can also sample on events like cache
misses. It's a fairly complicated tool, but you'll get some good benefit about it.
Everything after the 3GS has a 32-bit RISC ARM II running from 400-535 Mhz. The high-end latest iPod touches have a Cortex-A8 running at 600Mhz with a more advanced architecture than the ARM.
One thing the ARM provides is a thing called "Thumb Mode" which takes less memory, as it uses a smaller instruction set and no floating point operations. Floating point operations have to take the
CPU out of thumb mode and then back in, making floating point operations pretty expensive. And it's on by default, so there are potential huge wins by turning it off. It's in the target options on
In the case of Flower Garden, turning off Thumb Mode increased performance by a factor of two. Most games will benefit from turning it off, especially if you're doing 3D and stuff with a lot of
There's no integer divide on the iPhone, so integer divide is likely more expensive than you think.
The ARM itself doesn't have floating point hardware, so FP is handled by a vector floating point coprocessor. You can drop down to assembly if you want to vectorize your floating point operations
for maximum performance. There's a "vfpmath" project on Google Code that talks to the iPhone's VFP unit.
Game Loop Architecture
The typical game loop = Gather input ? Update state ? Render frame ? repeat
There's an NSTimer, but it's not very accurate. Frames can vary by as much as 5-10ms. One trick is to call it at a higher frequency so the main loop is called right away and timer messages are
more granular. Unfortunately then your queue can then be flooded with timer messages.
Threads are another solution, putting the game on a separate thread from the UI. That lets you run as fast as possible without delays, but it increases your complexity, especially with debugging.
Running as fast as possible can also cause problems with things like battery life. Theoretically it's the best results, but it's a pain to implement.
Flower Garden went with a "thread driving loop", in which a thread drives the main loop then goes to sleep. This can give you the best of both worlds with consistent calls to the main loop and no
flooding of events or "cuts in line". The best way to do it is with "CADisplayLink", which is triggered by display refresh. You can choose to receive the call every X updates. The updates are very
consistent. The only drawback is that it is only available for SDK 3.1, so you'll lose a lot of customers.
All iPods up to the high-end iPod Touch's have a similar first-generation rendering architecture. The new high-end touch's have a new architecture that allows shader programming and is much
improved over previous generations.
Avoid locking resources that the GPU needs while the GPU is rendering.
You might get a small speedup by rethinking your main loop. Present the frame, then update the game state, then finally render, hopefully leveraging using the render and main CPU's at the same
time. Ultimately this made almost no difference in Flower Garden.
Minimize your draw primitive calls and state changes. Most of the typical OpenGL optimization tricks apply to iPhone OpenGL.
Rendering a lot of vertices can be a bottleneck, especially on the older models. The iPhone doesn't have true hardware Vertex Buffer Objects, so the CPU is involved in every draw call. The 3GS
fixes this, but you'll still want to keep older phones into account.
Make your vertices as small as possible. Don't use 4-byte floats when a 2-byte integer will suffice.
Align your vertices on 4-byte boundaries at least. Experiment with larger alignments. Have a way to turn alignments on an off so you can test the results.
Use indexed lists and order them as if they were strips.
You can mix OpenGL and UIKit objects. Just try not to put UIKit objects on top of OpenGL, as it'll hurt your framerate badly.
Take advantage of the stuff built into iPhone like multitexturing and point sprites.
Memory management in iPhone is a problem. There's no guarantee of memory that you'll have available. You DO NOT know how much memory you have for your app at startup, so your game will need to be
able to deal with it. The system notifies apps if memory is runnng low, and your app should deal with it by freeing memory, but that's not really feasible.
The best way to deal with memory warnings is to ignore 'em for a little bit. Things like Safari and Mail wait before they compact themselves, so it's a big game of "memory chicken".
Allocate memory slowly at startup. If you get a warning, wait a little bit and try again. Repeat until you have enough memory.
iPort: How to Bring any C++ Game to the iPhone
Michael Smith (Senior Graphics Programmer, Elecorn LLC)
The project was to port the game "Caster" to the iPhone. It's a high speed action 3D game and didn't seem very suited for the iPhone. It was originally released for PC, Mac, and Linux.
There are lots of UI differences beyond just screen size. You need to take into account people covering the screen with their fingers. A faithful port that feels like a native app is a
Hardware-wise, an iPhone can be thought of as a ten year-old PC. If your game already runs on a low-end system, you're halfway there. Stuff like pixel shaders will need to be reengineered. Ditto
for threading. Since iPhones are single-core, threads can be a problem.
Fix up your Physics, AI, and content later. The port itself can be a quick and easy process compared to building it from scratch.
When doing a port, it's good to have a layer of abstraction to keep your platform specific code changes at a minimum.
OpenGL immediate mode isn't available for OpenGL ES. It's rather easy to write a wrapper, though, that'll batch up immediate mode calls for you.
A downside is that you can be inundated with #ifdef messiness.
Porting the Graphics Engine
Doing things in fixed functions is tough compared to doing things with shaders, so plan for that.
Have an "iPhone mode" on your PC in which you treat your PC like it's an iPhone. Mainly with performance. Just because something runs well on the PC doesn't mean it'll be tolerable. If you have
one codebase, make sure you can run with all the iPhone options turned on.
Check out iphone-glu and iPhone SDL, as they're nicely cross-platform.
In Xcode, go to the properties of the project's files and tell Xcode that they're Objective C files. That way you don't need to rename all your source files to .mm.
Landscape mode in OpenGL is fairly easy by setting your viewport to landscape mode.
Set Xcode to have "fat static libraries" so you can build a single library that runs on the iPhone simulator as well as the device.
-fno-regmove will remove a risky optimization that's been recently fixed in GCC 4.2.
Asset conversion – they did it with a script in Perl, calling these command-line tools.
oggdec – convert off to wav
afconvert – convert wav to caf
sips – resample image and convert image formats
texturetool – convert images to PVRTC format
in Xcode, add file references and use a "Copy Files" pase to bypass the standard Xcode "Copy Bundle Resources" phase.
Text Input – one hack is to make an offscreen text field. This will allow you to use the iPhone's keyboard but your own custom text field.
Audio and video. Use AVAudioPlayer for music. Use OpenAL for game sounds – one sound source per instance. Check out the oalTouch sample code.
Pay attention to UIApplication Delegate messages and respond to them.
In the iPhone OS, performance is inconsistent. Don't assume events get fired on a nice schedule. You can give the illusion of good performance even if your framerate isn't consistent.
One nice thing about the iPhone OS is that it's easy to update applications.
Crack detection – check your pinfolist for signer identity. If the game's cracked, you can respond to it in several ways. Their game stopped halfway in and implored the user to buy the full
Frank Pearce (Co-Founder & Executive Vice President of Product Development, Blizzard Entertainment), J. Allen Brack (Production Director, Blizzard Entertainment, Inc.)
WoW started with the Warcraft franchise that started in 1994 with Warcraft and 1995 with Warcraft 2. Warcraft 3 brought about the "yellow exclamation point" that's become a cornerstone of WoW.
The original project that became WoW started out as a squad-based RPG called "Nomad". Meanwhile they were playing Ultima Online and Everquest. They decided that if they were going to restart the
project, it'd be an MMO based on the Warcraft universe, so Nomad was set aside and WoW was born.
They try to keep teams around 5-8 people, but they routinely break that rule. The Engineering team is broken into five sub-teams, Engine, Gameplay, Tools, Server, and UI.
The art team is divided into characters, environment, dungeons, props, and animation. They have a dedicated "technical art team" that builds tools as well as maintains things like the correctness
of the meshes and such.
The creative teams do not report to producers. The creative team reports to other members of the creative team. The producers ultimately aren't the "boss" of the creative team. Over the course of
the project, the producers have tracked over 33,000 tasks.
As for design, there's a team that takes care of everything from "trash spawning" to the quests for players and guild leveling system. The "zones" are all built by hand and aren't built
procedurally. The design team consists of 37 people , creating over 70,000 spells and 30,000 NPC's.
The Cinematics department (123 people) takes care of all of the pre-rendered cinematic sequences. They also build the teasers, promotional trailers and machinima sequences.
The in-house sound department takes care of sound effects, music, and voice casting/recording. WoW currently has 27 hours of music, and that grows with every patch. About half of the size of most
patches are sounds.
Original WoW shipped with 2600 quests. Burning Crusade and Wrath of the Lich King expanded the number of total quests to 7650. The QA team is 218 people who are needed to play through all of
these. They currently track about 180,000 bugs in the system (most are fixed).
Localization is handled in-house, and the game's localized into ten languages. There are no "partial" localizations. Localizations are not taken lightly, as each new language is a huge task. Each
localization requires translating over 300,000 phrases.
Every patch must be multiplied by ten because there are ten languages (English, German, French, European Spanish, Russian, Latin Am Spanish, Koream, Traditional Chinese, Simplified Chinese, and
European English). And all those patches must be tested to work with all previous patches. Ultimately each patch ends up becoming 126 targets.
There are 13,250 total server blades and 75,000 total CPU cores and 112.5 terabytes of RAM running the servers. Data Centers include Washington, California, Texas, Massachusetts, France, Germany,
Sweden, Seoul, China, and Taiwan. The server staff worldwide is 68 people.
International offices are in France, Ireland, Korea, Taiwan, and China. China and Taiwan work through partner companies who handle most of the