<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Streaming Colour Studios &#187; Project Management</title>
	<atom:link href="http://www.streamingcolour.com/blog/category/project-management/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.streamingcolour.com/blog</link>
	<description>The trials and joys of indie games development</description>
	<lastBuildDate>Sat, 28 Jan 2012 03:48:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>The Distracted Programmer</title>
		<link>http://www.streamingcolour.com/blog/2010/11/21/the-distracted-programmer/</link>
		<comments>http://www.streamingcolour.com/blog/2010/11/21/the-distracted-programmer/#comments</comments>
		<pubDate>Sun, 21 Nov 2010 17:00:59 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[iDevBlogADay]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[baby]]></category>
		<category><![CDATA[distracted]]></category>
		<category><![CDATA[home]]></category>
		<category><![CDATA[interruptable]]></category>
		<category><![CDATA[shovebox]]></category>
		<category><![CDATA[working]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=1400</guid>
		<description><![CDATA[On Friday I jokingly posted on twitter that I was going to write my #iDevBlogADay post on &#8220;How to code with a baby in your arms&#8221;. A whole bunch of people responded saying they&#8217;d love to see a post on &#8220;The Distracted Programmer&#8221;, so here I sit typing. With a baby born over five weeks [...]]]></description>
			<content:encoded><![CDATA[<p>On Friday I <a href="http://twitter.com/OwenGoss/status/5646493255995392" target="_blank">jokingly posted on twitter</a> that I was going to write my <a href="http://idevblogaday.com/" target="_blank">#iDevBlogADay</a> post on &#8220;How to code with a baby in your arms&#8221;. A whole bunch of people responded saying they&#8217;d love to see a post on &#8220;The Distracted Programmer&#8221;, so here I sit typing.</p>
<p>With a baby born over five weeks ago, I took several weeks off work entirely. But about two weeks ago I started trying to get back into doing little bits of work. Working from home with a baby in the house is proving to be quite difficult, but I&#8217;ve already learned a few things that are helping me get at least <em>some</em> work done. Just keep in mind, I&#8217;m still new to this. I don&#8217;t pretend to have all the answers, just some tips that work for me.</p>
<h4>1) Start Small</h4>
<p>When I first decided to start coding again, I set a goal of writing one hour of code per day. The first few days I failed miserably. I&#8217;m glad I hadn&#8217;t decided to work full days or I might have been very discouraged. However, after a few days I found I was able to get even up to two hours of work done, just in 20 minute increments. My main point here is don&#8217;t expect too much from yourself at first. Getting used to having a baby is a huge change, trying to work at the same time is a massive challenge. Accept that it&#8217;s going to be hard and don&#8217;t beat yourself up if you&#8217;re not working full days right away.</p>
<h4>2) Learn to Work in Small Increments</h4>
<p>If you haven&#8217;t read this excellent article called &#8220;<a href="http://www.stevestreeting.com/2010/09/04/work-2-0/" target="_blank">The Interruptable Programmer</a>&#8220;, do so now. All of his tips apply to working at home with a baby in the house. I&#8217;ll wait. Done? Good. The biggest take-away there is that you need to get used to working in small chunks. Always be aware of what you&#8217;re working on. Make notes about what needs to happen next. If you need to stop coding because the baby starts screaming, jot down something quick about what you were doing; put it right in the code if you have to. Personally, I bought a little Mac app called <a href="http://wonderwarp.com/shovebox/" target="_blank">ShoveBox</a> that allows you to take very quick notes just by pressing a key combination on your keyboard.</p>
<p>If you&#8217;re a programmer who likes to really dig deep into code and do marathon coding sessions (like I used to), this is going to be a huge adjustment, but it&#8217;s a necessary one. If the choice is between coding 30 minutes at a time and not coding at all, I&#8217;m going to try to code 30 minutes at a time.</p>
<h4>3) Staying Motivated</h4>
<p>One of the most difficult things for me over the last couple of weeks has been staying motivated when I can only code in short bursts. It&#8217;s easy to get side tracked. It&#8217;s really easy to get distracted with reading blogs posts [cough] after each break in coding. This will kill your time. You need to find ways to keep motivated and keep working. I&#8217;ve completely stopped reading RSS feeds during the last two weeks. It means I&#8217;m not as aware of what&#8217;s going on in the world of gaming, but I&#8217;ve got a contract to deliver on, so that takes priority. I try to limit my time on twitter when I&#8217;m starting a work chunk. I limit what links I click on to avoid being distracted.</p>
<p>The goal is to get right back in where you left off after you&#8217;ve been away from the computer for a chunk of time. This will help you stay motivated. Avoid the distractions, and you&#8217;ll find a new flow.</p>
<h4>4) Talk to Your Partner</h4>
<p>This is the most important point. Seriously. Make sure you do this.</p>
<p>If you&#8217;re a single parent, you&#8217;re amazing. I honestly don&#8217;t know how people do it on their own. A baby is a huge amount of work, even spread over two people. Single parents, I&#8217;m in awe of you.</p>
<p>But, if you&#8217;ve got a partner who is also at home (on maternity or paternity leave, or as a stay-at-home mom or dad), talk to them. Make sure they&#8217;re on board with you going back to work. You will need their support. You will need them to look after the baby while you&#8217;re at work. You will need them to understand that you&#8217;re going to need some time to code/design/draw/create. At the same time, make sure they understand that you&#8217;re not disappearing. If the baby won&#8217;t stop screaming and they need a break, let them know it&#8217;s OK to interrupt you and ask you for help. But also make sure they&#8217;re OK with you shouldering them with more responsibility while you&#8217;re working. As the baby gets older, and you establish more of a routine, hopefully you&#8217;ll be able to spend more time working each day.</p>
<p>Having an amazing wife who understands all of this has made it much easier to get back to working. I&#8217;m still only working half-days, but without her support I wouldn&#8217;t be doing even that.</p>
<h4>5) Working With the Baby</h4>
<p>There are times when I need to look after the baby and do work. If (and this is a big if) the baby is in the right mood, sometimes he&#8217;ll let me put him into a baby carrier and he&#8217;ll happily sleep while I sit and do some coding. It doesn&#8217;t always work, and it&#8217;s not ideal, but it is a way to look after the baby and do some work at the same time.</p>
<h4>6) Family Comes First</h4>
<p>Yes, I&#8217;m talking about working with a baby in the home, but the final thing I wanted to say is to remember that your baby and your family come first. If your partner needs you, be there for them. If the baby needs you, look after him/her. Yes, we need to get work done, but work isn&#8217;t everything.</p>
<h4>Conclusion</h4>
<p>Working at home with a baby in the house is possible, but it is very challenging. The thing I keep reminding myself is that it&#8217;s an amazing opportunity most people don&#8217;t get. Most people don&#8217;t get to go back to work yet still see their child grow up before their eyes. We&#8217;re very lucky that we get to do this. Don&#8217;t take it for granted. Enjoy it.</p>
<p>What about you? As a mom or dad programmer/designer/artist/creator, what are your tips for working from home?</p>
<p>Owen</p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2010/11/21/the-distracted-programmer/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>LandFormer Postmortem</title>
		<link>http://www.streamingcolour.com/blog/2010/08/27/landformer-postmortem/</link>
		<comments>http://www.streamingcolour.com/blog/2010/08/27/landformer-postmortem/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 17:45:38 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[in app purchase]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[LandFormer]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[postmortem]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[ad network]]></category>
		<category><![CDATA[ads]]></category>
		<category><![CDATA[artwork]]></category>
		<category><![CDATA[everything]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[gameplay]]></category>
		<category><![CDATA[iap]]></category>
		<category><![CDATA[ios 4]]></category>
		<category><![CDATA[launch]]></category>
		<category><![CDATA[level editor]]></category>
		<category><![CDATA[multitasking]]></category>
		<category><![CDATA[right]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[wrong]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=1216</guid>
		<description><![CDATA[A couple of months after I launch a game, I like to sit down and take a hard and honest look at the things that went right and the things that went wrong: a postmortem. It&#8217;s a great exercise to go through after a game is launched to learn from your successes and, more importantly, [...]]]></description>
			<content:encoded><![CDATA[<p>A couple of months after I launch a game, I like to sit down and take a hard and honest look at the things that went right and the things that went wrong: a postmortem. It&#8217;s a great exercise to go through after a game is launched to learn from your successes and, more importantly, your mistakes. I wrote up a <a href="http://www.streamingcolour.com/blog/2010/01/06/postmortem-monkeys-in-space/" target="_blank">postmortem after launching Monkeys in Space</a> that was based on the structure that <a href="http://www.gdmag.com/" target="_blank">Game Developer Magazine</a> uses. I&#8217;m going to use that same format for this LandFormer postmortem.</p>
<h4>Introduction</h4>
<p>If you haven&#8217;t played the game, <a href="http://www.landformer.net" target="_blank">LandFormer</a> is a puzzle game for iPhone/iPod touch. Each level is made up of a 5&#215;5 grid of terrain at different heights (oceans, up to mountains). The goal on each level is to use land forming tools to modify the heights of the terrain tiles to flatten things out. It&#8217;s a challenging game that starts off very easy, but get quite difficult in the harder levels. It&#8217;s a game that requires skill, patience, but most of all, intuition.</p>
<p>The game is free to download and try (there are 12 levels currently in the free version of the game), with In-App Purchase (IAP) available to upgrade to the &#8220;full&#8221; version of the game, as well as IAP for additional visual themes and additional levels. I think of it like a demo, where the user gets to try it and then decide if they want to spend money on more levels. The free version also contains ads, which are disabled if the player buys any content from the in-game shop.</p>
<p>The game launched on June 29, 2010 and has had 147,000 downloads of the free version of the game so far.</p>
<h4>What Went Right?</h4>
<h5>1) Gameplay</h5>
<p>I&#8217;m really happy with how the game itself turned out. LandFormer started as a <a href="http://toucharcade.com/2009/10/02/360idev-game-jam-10-hours-of-game-development-insanity/" target="_blank">prototype called &#8220;UpDown&#8221;</a> that I did in 6 hours at the all-night GameJam for 360iDev Denver in September, 2009 (I participated via Skype). After I launched Monkeys in Space, I returned to the prototype in early 2010 and started playing around with ways to make it more fun, and settled on the terraforming theme, which helps players understand what they&#8217;re supposed to do, and why.</p>
<p>What I like most about the game is that I haven&#8217;t really seen other puzzle games like it. It&#8217;s similar in play-style to sliding block puzzle games (it requires a similar combination of spatial reasoning and intuition), but the up/down movement of the pieces makes it feel very new and requires new ways of thinking. It&#8217;s also very easy to learn how to play, but takes time to really master it and get good at the more difficult puzzles. In the end, I think the gameplay stands as being strong, and I&#8217;m very pleased with how the game turned out.</p>
<h5>2) Strong Launch</h5>
<p>This is my 3rd game, and thus my 3rd game launch. However, with LandFormer I decided it was time to try a new launch strategy. With my previous games, I launched the games as soon as Apple approved them. This caused all sorts of problems in terms of getting press materials out, and reviews trickling out gradually. With LandFormer, I decided to set a proper release date. When Apple approved the game, I set the release date for a week and a half into the future. I immediately sent out press releases to sites along with promo codes (yes, they work once the game has been approved, but before it&#8217;s available in the store) for press to try the game. Because my content is all IAP on my server, I could also make it available to the press for free during the pre-launch review period. Very handy.</p>
<p>The result of this new launch strategy was that several large review sites had reviews out within one or two days of launch. This helped pick up momentum for the game, then the first Thursday after launch Apple featured it as a Hot New Game. The Friday immediately after the feature, <a href="http://gizmodo.com/5578615/this-weeks-best-apps/gallery/" target="_blank">Gizmodo ran a review</a> of the game, which boosted downloads tremendously for the following weekend.</p>
<p>I really couldn&#8217;t have asked for much better a launch. The only way it could have been better was by getting a front-page feature, or App of the Week feature from Apple. They&#8217;re probably just saving that for my next game (har har).</p>
<h5>3) Free + IAP</h5>
<p>As all developers do, I struggled a lot with the pricing model for the game. My other games are both paid games, but Dapple has a separate Lite version for players to &#8220;try before they buy&#8221;. The thing I don&#8217;t like about the Lite model is that it requires players to download two separate apps if they then want to buy the game. It always felt kludgy to me. Ultimately I decided to set things up like a PC or XBLA demo: free to download it, but if you like it, buy the full upgrade from within the game. This is the really exciting monetization path that IAP opened up when Apple introduced it.</p>
<p>Because I was implementing the in-game store for this anyway, it also allowed me to developing a theming system for the game and sell themes. It also means I can continue to release new level packs for users without having to update the game itself.</p>
<p>I think the model has a lot of potential on the app store. The free download gets you maximum visibility on the store (people are willing to download something just because it&#8217;s free), but then you have a way to earn some money within the app. However, it&#8217;s not all <a href="http://games.adultswim.com/robot-unicorn-attack-twitchy-online-game.html" target="_blank">rainbows and unicorns</a>: see the corresponding section in What Went Wrong.</p>
<h5>4) Level Editor</h5>
<p>When I started building the game, I was building levels as string of data then loading them into the game and testing them. This was ridiculous. I realized early on that building a level could be seen as solving a level in reverse. I was able to very quickly build a first pass at a level editor just by reversing the rules: start with a flat plane, and use the tools to deform it. This had two advantages: 1) it made building levels much easier, and 2) it meant that any level created in the level editor was guaranteed to have a solution.</p>
<p>Once I had it working for my own purposes I decided that it needed to be available to players in the game. The level editor is so easy and intuitive to use, I need people to be able to play with it. I&#8217;m happy I took the time to do the UI work required to build the level editor out into something that everyone could use.</p>
<p>The editor allows players to create their own levels, but beyond that, I implemented a sharing system based on URLs, where players could email a level to a friend. The friend clicks a link in the email and the level opens inside their copy of the game for them to play. It&#8217;s a simple system, that I think works quite nicely.</p>
<h5>5) Doing Everything (Almost)</h5>
<p>Since Monkeys in Space, I&#8217;ve been doing everything except the music in my games by myself. For both Monkeys and LandFormer I did all of the game design, programmer, artwork, UI design, sound design, PR, and marketing. I don&#8217;t do music, because that&#8217;s just something I&#8217;m not capable of doing myself. However, doing everything myself has given me a lot of freedom to make the game exactly how I want to make it. It also allows me to think about how a change will impact all the various aspects of the game. And, perhaps most importantly, it allows me to save a huge amount of out-of-pocket expense. I would love to have the funds to pay a full-time artist to work on the game, but that&#8217;s just not in the cards for me yet. I do have some art background, but doing all my own art for these games has helped me get a lot better than I was. I hope I&#8217;ll continue to improve. However, this is also another one of those things that also appears on the What Went Wrong section. So let&#8217;s get to that now.</p>
<h4>What Went Wrong?</h4>
<h5>1) Free + IAP</h5>
<p>I listed the reasons why I thought Free + IAP was great for LandFormer, but it&#8217;s also something that didn&#8217;t work great. One thing I was not at all prepared for was a backlash from users over the pricing model. I thought that players would be happy that they were given an opportunity to try the game before spending any money on it. However, the reaction from a lot of players instead was &#8220;The game says it&#8217;s free, but you have to buy stuff!&#8221; I got called a cheat, a liar, and a con artist.</p>
<p>My immediate reaction was that my app description clearly states that you only get the Beginner levels for free and have to buy the others. The app page in the store also lists the top IAP. But what I learned is that no one reads that stuff. I think I got a lot of downloads (especially after some of the big press stories ran) from people who saw the name, the icon, and &#8220;free&#8221; and downloaded it.</p>
<p>The problem is that there&#8217;s a disconnect between my view of the pricing model, and that of the minority of angry, vocal, app store consumers. I saw: &#8220;LandFormer offers you a way to try the game for free, and if you like it, buy it.&#8221; That customer sees: &#8220;Hey, a free game!&#8221; And then is angry when they discover they can&#8217;t play all the levels for free.</p>
<p>In the end, I&#8217;m not sure if the pricing model I chose for LandFormer was the right call or not. I&#8217;m not convinced that I wouldn&#8217;t have made more money by distributing a Lite version and a separate paid version (or only a paid version). App Store customers have gotten used to that model. I think it&#8217;s a problem with the fact that IAP didn&#8217;t exist from the start. Users had a year to get used to a certain business model, now we&#8217;re trying to change that. It&#8217;s going to be a difficult transition.</p>
<p>Not to go on about this for too long, but I think the Free + IAP model works best for games where you&#8217;re giving away a complete game for free, and then selling IAP for additional content that&#8217;s not required. If I ever do another free game, I&#8217;ll be looking toward that model.</p>
<h5>2) iOS 4 + Multitasking</h5>
<p>Apple launched iOS 4 on June 21, 2010, 8 days before I launched LandFormer, but 2 days after Apple had approved it. I had time with the beta SDK to make sure the game didn&#8217;t crash and that the game could be put into the background and restored properly before shipping it. However, I spent a great deal of time over the next 3 updates fixing weird little issues that cropped up because of iOS 4 multitasking. Multitasking caused all kinds of problems with my level sharing system, as well as my save system. I believe there was also one crash that only showed up in iOS 4 because of a change in the way some touch events fired. I&#8217;m not blaming Apple, it was just bad luck on my part that I launched so close to iOS 4, and I couldn&#8217;t afford to delay the launch of the game any more to deal with all the little issues that cropped up.</p>
<h5>3) Ad Network</h5>
<p>I mentioned in the introduction that I decided to include ads in the free version of the game. This is in this section for several reasons. At the peak of LandFormer&#8217;s popularity, it was being downloaded about 12,000 times per day. This translated into about 50,000 ad impressions a day. However, my click-through rate (CTR) was abysmal. It turned out that the way I was loading ads meant that a lot of people never saw the ads I requested. On my best day, I made about $5 off of ads. In the first update to the game (v1.1) I released a fix that made sure that ads were displayed properly to users. However, by the time it was approved I was down to a few hundred downloads a day of the free game. Even though my CTR increased dramatically with the change, my earnings averaged out around $0.30-0.40/day.</p>
<p>On top of that, the ad network I used had a crash bug in its code. After a couple of weeks trying to help them track the problem down, they told me they weren&#8217;t going to look into it any further. I was getting several support requests a week from players about this crash, so ultimately I pulled their ad network out of my game and I wrote my own custom system.</p>
<p>The game now (in v1.1.2) pulls ads of my own server. This is cool for several reasons. Now I get to decide what ads get shown in the game, it means I can cross promote my other games, and it means that I can promote games that I actually buy and play. I use LinkShare to get a small royalty any time someone actually buys through this system, but that&#8217;s been next to nothing so far. Still, I&#8217;d rather help support developers whose work I respect and have no crashes, than get the $0.30/day but with 10% of users experiencing a crash every time they launch the game.</p>
<h5>4) Themes</h5>
<p>When I built the IAP system I was very excited to be able to sell themes (skins) for the game. The way I had set up the graphics engine meant that it would be easy for me to load different textures to change the look of the game. I thought players would like the chance to be able to customize their experience a bit more too, but I was wrong. I&#8217;m seeing about a 0.1% conversion rate on themes (i.e. about 1 in 1000 people download a theme).</p>
<p>At this point, I only have one theme for sale. So it could be that people just don&#8217;t like that theme. It could also be that people just like the default art more. Or it could just be that people really don&#8217;t care about theming this kind of game. Though, if you think about it another way, if 1 in 100 people buy the premium content, the users who would buy a theme are probably a subset of that 1 in 100. So that means about 1 in 10 of those people have bought the theme, so maybe that&#8217;s ok. Still, when you do the math, that&#8217;s about $100 made off the theme so far, and it took almost a week of art work to build it (not even counting the time it took to put the theming system in place). When you look at it like that, it&#8217;s not as worth it.</p>
<p>I&#8217;m currently working on another theme. If it doesn&#8217;t sell, I probably won&#8217;t be releasing more themes. I think themes would sell better in a game where you could play the whole game for free. I think people might be willing to buy a theme in that case.</p>
<h5>5) Doing Everything (Almost)</h5>
<p>I&#8217;ve already outlined why I thought this worked for the project, but doing everything by oneself also comes with some big downsides. The biggest is time. LandFormer took 5 months from start to launch (then another month of work after launch). I&#8217;d guess that at least 2 months of that was doing the artwork and UI design for the game. If I could have afforded to pay a professional artist to do that for me, they probably would have taken half the time, and they could have been doing it while I programmed.</p>
<p>The other big downside is not having someone to bounce ideas off of. Working with an artist allows you to brainstorm, to try new things, and play with the concepts in the artistic direction of the game. When you&#8217;re doing it all yourself, it&#8217;s easy to get caught in the trap of just doing the first thing that comes to mind. It&#8217;s hard to force yourself to try multiple things and to find the best artistic solution to a problem.</p>
<h4>Conclusion</h4>
<p>In the end, I&#8217;m extremely pleased with the way that LandFormer turned out. I think it&#8217;s my strongest game to date. The game was also an opportunity for me to experiment with several new things I&#8217;d never tried before: IAP, free games, ad-supported games, and user-created content and sharing. I&#8217;m very happy with the number of free downloads the game has had. I find it absolutely amazing to think that almost 150,000 people have downloaded my game! At the same time, I&#8217;d be lying if I said I was happy with the conversion rate I&#8217;ve seen from free to paid.</p>
<p>The game continues to get a couple hundred downloads a day, and it seems to have stabilized there. I hope that it will maintain this level (or higher) for quite some time. The fact that it&#8217;s free seems to help keep the downloads alive.</p>
<p>Every game is an incredible learning experience, and I&#8217;ve learned a lot in making and launching LandFormer. I&#8217;ll be continuing to support it and add new content, but I&#8217;m also looking ahead to what&#8217;s next. Onward!</p>
<p>Owen</p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2010/08/27/landformer-postmortem/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>LandFormer Update</title>
		<link>http://www.streamingcolour.com/blog/2010/05/31/landformer-update/</link>
		<comments>http://www.streamingcolour.com/blog/2010/05/31/landformer-update/#comments</comments>
		<pubDate>Mon, 31 May 2010 14:11:40 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[LandFormer]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[alpha]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[bug fixing]]></category>
		<category><![CDATA[improvements]]></category>
		<category><![CDATA[testers]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=1054</guid>
		<description><![CDATA[It&#8217;s been over a month since my last post and I&#8217;ve been working hard on LandFormer. I was shooting to submit the game to Apple by the end of May, but seeing as today&#8217;s the last day of May and the game&#8217;s not ready, that&#8217;s not going to happen. I apologize to those of you [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been over a month since my last post and I&#8217;ve been working hard on LandFormer. I was shooting to submit the game to Apple by the end of May, but seeing as today&#8217;s the last day of May and the game&#8217;s not ready, that&#8217;s not going to happen. I apologize to those of you who are waiting to play the game.</p>
<p>The good news is that I&#8217;ve had my testers playing the game and I&#8217;ve received a tonne of great feedback and bug reports. I&#8217;ve decided that a lot of the feedback was worth implementing to make the game easier to learn and nicer to use, so it&#8217;s been taking a bit longer than I thought to wrap up. The good news is that I should be ready to declare Alpha (feature complete) by the end of the day! I&#8217;m working on the last major feature today, and I should be able to wrap it up by this afternoon. After that it&#8217;s all small improvements and bug fixing until I ship the game.</p>
<p>So the game is coming along. It&#8217;s taken much longer than I originally planned, but I&#8217;ve put in a lot of really cool features that I hadn&#8217;t originally planned on; things like: in-game level editor, the ability to send levels to your friends, and an in-game store so you can download more levels and game themes. All of these things take time, but the end result is a game that I&#8217;m extremely proud of and very excited to get into your hands once it&#8217;s ready.</p>
<p>With this game I&#8217;ve taken an &#8220;it&#8217;s done when it&#8217;s great&#8221; kind of approach. I hope it&#8217;s worth the wait.</p>
<p>Owen</p>
<p><strong>Update:</strong> At 12:25pm today I officially declared Alpha! Just tuning, tweaks, improvements, and bug fixing now. &#8220;Just&#8221;&#8230; <img src='http://www.streamingcolour.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2010/05/31/landformer-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LandFormer Status Update</title>
		<link>http://www.streamingcolour.com/blog/2010/04/26/landformer-status-update/</link>
		<comments>http://www.streamingcolour.com/blog/2010/04/26/landformer-status-update/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 15:50:01 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[LandFormer]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[april]]></category>
		<category><![CDATA[delay]]></category>
		<category><![CDATA[editor]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[friends]]></category>
		<category><![CDATA[level]]></category>
		<category><![CDATA[levels]]></category>
		<category><![CDATA[may]]></category>
		<category><![CDATA[share]]></category>
		<category><![CDATA[sharing]]></category>
		<category><![CDATA[status]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=1038</guid>
		<description><![CDATA[If you read the LandFormer preview on Touch Arcade back in March, the article mentioned that I was hoping to release the game in late April. At the time I did the interview that really seemed like a realistic goal. That&#8217;s not looking likely anymore. I thought I should post an update since I&#8217;d received [...]]]></description>
			<content:encoded><![CDATA[<p>If you read the <a href="http://toucharcade.com/2010/03/16/gdc-2010-a-look-at-upcoming-landformer-puzzler/" target="_blank">LandFormer preview</a> on <a href="http://www.toucharcade.com" target="_blank">Touch Arcade</a> back in March, the article mentioned that I was hoping to release the game in late April. At the time I did the interview that really seemed like a realistic goal. That&#8217;s not looking likely anymore.</p>
<p>I thought I should post an update since I&#8217;d received a lot of questions recently about how the game is coming along and was I still planning to release in April. As often happens, life and some technical challenges got in the way of me finishing the game on time. My gut tells me that I&#8217;ve got about 3 weeks of work left on the game at this point. I want to make sure the game is as awesome as possible for when it launches, so I hope you&#8217;ll understand that I&#8217;m taking this time to make sure the game is the best it can be.</p>
<p>Since my last post about the game, I&#8217;ve implemented some pretty major changes to the game. One of which was a complete overhaul of the artwork in the game. I liked the theme of the game, but the artwork seemed a bit dark and drab, so I&#8217;ve worked to brighten things up and make the game more appealing and enjoyable to play.</p>
<p>For comparison, this is the last screenshot I posted of the game back at the end of February:</p>
<p><img class="alignnone" title="LandFormer Feb 2010" src="/games/landformer/images/LandFormer_2010-02-23.jpg" alt="" width="480" height="320" /></p>
<p>Here&#8217;s a screenshot of the current state of the game:</p>
<p><img class="alignnone" title="LandFormer April 2010" src="/games/landformer/images/LandFormer_2010-04-26.jpg" alt="" width="480" height="320" /></p>
<p>As you can see, the game is basically the same as it was, but I think it looks a lot better. I hope you agree.</p>
<p>One of the other big things I managed to get working was the level editor and level sharing code. When the game ships, it will ship with a bunch of built-in levels. However, it will also contain a level editor so that you create your own levels. Not only that, but you can email levels to your friends so that you can play each others&#8217; levels! This feature was a little more work than I had originally planned for, but I think it adds a lot of fun to the game, so it was worth it. It should allow you to keep playing LandFormer long after you&#8217;ve solved all the built-in levels.</p>
<p>Several people have asked for more details about how the game is played. I think it&#8217;s easiest if I create a short video showing the game in action, but that will have to wait for a few days. Hopefully I can find some time to do that soon.</p>
<p>Until then, please know that I&#8217;m working as fast as I can to get the game done and into your hands. I&#8217;m working hard to make sure it&#8217;s the best game it can be.</p>
<p>Owen</p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2010/04/26/landformer-status-update/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>My First GDC</title>
		<link>http://www.streamingcolour.com/blog/2010/03/19/my-first-gdc/</link>
		<comments>http://www.streamingcolour.com/blog/2010/03/19/my-first-gdc/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 18:43:45 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Game Design]]></category>
		<category><![CDATA[game developers conference]]></category>
		<category><![CDATA[GDC]]></category>
		<category><![CDATA[main]]></category>
		<category><![CDATA[sessions]]></category>
		<category><![CDATA[summits]]></category>
		<category><![CDATA[tutorials]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=1020</guid>
		<description><![CDATA[I returned home from the Game Developers Conference (GDC) nearly a week ago, but I feel like it has taken me this long to be able to recover from the late nights, the jetlag, the cold I caught, and put things into perspective. I thought I&#8217;d share a summary of my experience there, for those [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="GDC at Night" src="/blog/wp-content/uploads/gdc2010_00.jpg" alt="GDC at Night" width="500" height="375" /></p>
<p>I returned home from the Game Developers Conference (GDC) nearly a week ago, but I feel like it has taken me this long to be able to recover from the late nights, the jetlag, the cold I caught, and put things into perspective. I thought I&#8217;d share a summary of my experience there, for those who are thinking of maybe going next year.</p>
<p>Executive Summary: SO AWESOME!!!</p>
<p>GDC is held every year in San Francisco. I&#8217;ve been in the games industry for over 6 years now, but this was my first time at the conference, so I wasn&#8217;t really sure what to expect. I managed to get an All Access Pass to the conference, so I was there for the summits and tutorials, as well as the main conference.</p>
<p>Let me back up a little and talk about my reasoning for going, as that will help you understand why the conference was so valuable to me. At the beginning of the year I started thinking about what conferences I wanted to attend. <a href="http://www.360idev.com" target="_blank">360iDev</a> was a must-attend for me, so I booked that first. However, I was torn between attending WWDC (Apple&#8217;s big annual conference) or GDC. I attended WWDC last year and it was great. But this year I felt like what I really needed was general game design inspiration, and less Apple-specific technical inspiration. With that in mind, I chose GDC. My goal for the conference was to focus mainly on game design sessions and take in a few technical and business sessions.</p>
<p>So, I arrived in San Francisco Monday, March 8th, the day before the Summits started. I managed to meet up with a bunch of iPhone devs I know from Toronto, other conferences, or Twitter. We had a few beers and tried to adjust to west coast time. It was a good way to ease myself into the week.</p>
<p>Tuesday and Wednesday were the Summit &amp; Tutorial days at GDC. There were two summits I was interested in: the iPhone Summit, and the Independent Games Summit (IGS). I think I spent about 60% of my time at the IGS and about 40% at the iPhone Summit. I saw some great technical iPhone talks by <a href="http://www.gamesfromwithin.com/" target="_blank">Noel Llopis</a> from <a href="http://www.snappytouch.com" target="_blank">SnappyTouch</a> and <a href="http://www.philhassey.com/" target="_blank">Phil Hassey</a> from <a href="http://www.galcon.com" target="_blank">Galcon</a>. I also saw some great IGS talks that ranged in topic from managing an independent game studio&#8217;s creative process, to how to better design indie games. I saw a session by Ron Carmel from <a href="http://2dboy.com/" target="_blank">2D Boy</a>, several awesome sessions by the people at <a href="http://thatgamecompany.com/" target="_blank">thatgamecompany</a> (Flower is one of my favourite games), and a terrific session by Randy Smith from <a href="http://www.tigerstylegames.com/" target="_blank">Tiger Style</a> (among so many others!). By the end of the Summits, my head was already spinning with inspiration. The IGS design talks in particular were extremely motivating for me. Getting a chance to meet and hear amazing indie game designers/developers talk about their processes was fantastic. It started me thinking about a lot of things as they relate to my own processes. More on that later&#8230;</p>
<div class="wp-caption alignnone" style="width: 510px"><img title="GDC Expo" src="/blog/wp-content/uploads/gdc2010_01.jpg" alt="GDC Expo" width="500" height="375" /><p class="wp-caption-text">A tiny segment of the massive GDC Expo</p></div>
<div class="wp-caption alignnone" style="width: 510px"><img title="IGF Awards" src="/blog/wp-content/uploads/gdc2010_02.jpg" alt="IGF Awards" width="500" height="375" /><p class="wp-caption-text">The IGF Awards</p></div>
<p>Thursday through Saturday were the main conference, expo, and Independent Games Festival Awards. I sat in session after amazing session listening to industry leaders in game design, technical development, and business talk about their processes. I saw <a href="http://en.wikipedia.org/wiki/Peter_Molyneux" target="_blank">Peter Molyneux</a> talk, <a href="http://en.wikipedia.org/wiki/Sid_Meier" target="_blank">Sid Meier</a> talk, and even <a href="http://en.wikipedia.org/wiki/Will_Wright_%28game_designer%29" target="_blank">Will Wright</a> talk. I saw a moving and inspirational talk by <a href="http://bbrathwaite.wordpress.com/" target="_blank">Brenda Brathwaite</a> on her exploration into board games with serious themes. I saw a head-ache inducing (in a good way!) talk on PixelJunk Shooter&#8217;s real-time fluid dynamics system that made me really miss doing PS3 SPU programming. I saw an in-depth and honest look a the successes and problems encountered by Naughty Dog&#8217;s attempts to create an active cinematic experience for Uncharted 2. I was blown away by the quality of the content, and I was left reeling by how the talks started forcing me to think about the direction I want to take with my own games.</p>
<div class="wp-caption alignnone" style="width: 385px"><img title="Crowds" src="/blog/wp-content/uploads/gdc2010_03.jpg" alt="Crowds!" width="375" height="500" /><p class="wp-caption-text">There were huge crowds in the halls between sessions!</p></div>
<p>But of course, the sessions are only part of GDC. The other part comes from meetings and parties. I was able to set up a few meetings with iPhone press to show them my new game. That was really great to be able to demo the game in person. I think it was extremely valuable. Then each night there were countless parties happening. Each party was a great chance to meet people in person who I&#8217;ve only communicated with on twitter or via email. It was a chance to discuss iPhone development with other people going through the same thing as me. It was a chance to discuss game design in general with other game designers and developers. It was a chance to have fun with people who share in the same daily challenges that I do.</p>
<div class="wp-caption alignnone" style="width: 510px"><img title="Will Wright" src="/blog/wp-content/uploads/gdc2010_04.jpg" alt="Will Wright" width="500" height="375" /><p class="wp-caption-text">Will Wright giving his presentation!</p></div>
<p>For me, I got out of GDC exactly what I wanted: design inspiration, new friends, new business connections and a wealth of knowledge. But perhaps most importantly, GDC helped me to put me back on track with where I want to take my games. When I decided to go indie in 2008, it was because I wanted to make the games that I was <em>compelled</em> to make. What I&#8217;ve noticed is that I&#8217;ve been making more and more design decisions lately based on what I think will sell well. This isn&#8217;t how I want to make games. I want to make the games that I <em>have</em> to make, not that I think I should make because I think it might make some money, even though the idea doesn&#8217;t excite me. Granted, I would love to be able to make the games that I feel compelled to make and have them also become a financial success. And obviously I can&#8217;t ignore the fact that I&#8217;m running a business. But GDC helped to remind me of what I want my priorities to be, and that, to me, is the most important part of having gone.</p>
<p>Owen</p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2010/03/19/my-first-gdc/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Postmortem: Monkeys in Space</title>
		<link>http://www.streamingcolour.com/blog/2010/01/06/postmortem-monkeys-in-space/</link>
		<comments>http://www.streamingcolour.com/blog/2010/01/06/postmortem-monkeys-in-space/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 21:00:13 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[Art]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[monkeys in space]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[artwork]]></category>
		<category><![CDATA[conclusion]]></category>
		<category><![CDATA[delays]]></category>
		<category><![CDATA[escape to banana base alpha]]></category>
		<category><![CDATA[feature]]></category>
		<category><![CDATA[feedback]]></category>
		<category><![CDATA[flight control]]></category>
		<category><![CDATA[gameplay]]></category>
		<category><![CDATA[harbor master]]></category>
		<category><![CDATA[iteration]]></category>
		<category><![CDATA[levels]]></category>
		<category><![CDATA[name]]></category>
		<category><![CDATA[play testing]]></category>
		<category><![CDATA[postmortem]]></category>
		<category><![CDATA[Prototype]]></category>
		<category><![CDATA[Prototyping]]></category>
		<category><![CDATA[release date]]></category>
		<category><![CDATA[testers]]></category>
		<category><![CDATA[thanksgiving]]></category>
		<category><![CDATA[Touch Arcade]]></category>
		<category><![CDATA[toucharcade]]></category>
		<category><![CDATA[what went right]]></category>
		<category><![CDATA[what went wrong]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=930</guid>
		<description><![CDATA[I never wrote up a formal postmortem for Dapple and I wish I had. Now that Monkeys in Space has been out for over a month and I&#8217;ve released one major update, I thought it was about time to sumarize what went right and what went wrong on my second game. Because I really enjoy [...]]]></description>
			<content:encoded><![CDATA[<p>I never wrote up a formal postmortem for Dapple and I wish I had. Now that Monkeys in Space has been out for over a month and I&#8217;ve released one major update, I thought it was about time to sumarize what went right and what went wrong on my second game.</p>
<p>Because I really enjoy reading <a href="http://www.gdmag.com/" target="_blank">Game Developer Magazine</a>, I thought I&#8217;d follow their template for a postmortem and list 5 things that went right followed by 5 things that went wrong on the project.</p>
<p><em><strong><a href="http://bit.ly/MiSBlog" target="_blank"><img class="alignnone" src="/games/monkeys/images/MiS_header.jpg" alt="Buy Monkeys in Space - $0.99" width="416" height="136" /></a><br />
</strong></em></p>
<p><span style="text-decoration: underline;"><strong>What Went Right</strong></span></p>
<p><strong>1. Prototyping, Iteration, and Early Feedback. </strong>One of the processes I put into place when I started Streaming Colour Studios is the extensive use of prototyping and rapid iteration. When you build a large console game, you need to plan out everything a lot more because there are 100 people working on the game. When it&#8217;s just you, you can afford to play around with ideas a lot more.</p>
<p>Monkeys in Space actually started out as a completely different game. The first prototype I built involved controlling space ships with black holes. One of the things I learned with Dapple is that the sooner you get feedback the better. So this time I sent that first prototype out to a few trusted friends to get their opinions on it. The feedback that I got was that the controls weren&#8217;t intuitive enough and the game wasn&#8217;t really fun to play, just frustrating. This was fantastic feedback to get so early in the process and I was able to start trying new ideas and iterating on the design.</p>
<p>Eventually I got to the point where the game was fun, but the space ship theme wasn&#8217;t working for me anymore. I had had an idea for a bonus level that involved picking up monkeys floating in space with your ship, but after discussing this with a few friends over coffee (one of them ended up writing the music for the game) I decided that the game might be more fun to play if the monkeys were the focus of the game. Once this decision was made, it opened up new avenues for art direction, marketing, names, and even merchandise.</p>
<p>Once I had the monkeys in the game, I opened the game up to much more public play testing. People were playing the game and providing regular feedback at a much earlier stage of the development than with Dapple. This proved to be invaluable for fine tuning the design and polishing the game.</p>
<p><strong>2. Gameplay. </strong>Monkeys in Space fits into the &#8220;line drawing&#8221;/&#8221;chaos management&#8221; genre of games, but it needed something to set it apart and help it to stand out. I had also learned, through my experiences with Dapple, that I needed a gameplay mechanic that was easy to understand, but offered depth to the experienced player. Monkeys in Space offers familiar gameplay goals to players familiar with the genre (get the monkeys to the bases), but adds a twist that adds depth to the game (linking monkeys together). The chaining mechanic was added about mid way through the prototyping process, but the feedback from play testers was unanimously positive. I&#8217;m very happy with how the game ended up playing out. The chaining adds a risk/reward factor to the game that has been mentioned in a lot of reviews.</p>
<p><strong>3. The Name.</strong> I mentioned above that the game was originally about space ships. Well, it was a search for a name for the game that ultimately led to the game being about monkeys instead. I was brainstorming game names with some friends when I mentioned I had been thinking about adding a space monkey level to the game. Immediately we all started thinking about fun names for a game involving space monkeys. My favourite at the time was &#8220;Space Monkey Rescue&#8221;, but I ultimately abandoned it because of trademark concerns. I contacted my friend <a href="http://portfolio.perplexity.org/" target="_blank">Stacy</a>, who is a writer, and asked her for help. I sent her some of my favourites, including just &#8220;Monkeys in Space&#8221;. I told her I was looking for a 50&#8242;s or 60&#8242;s sci-fi b-movie feel for the title and she came up with &#8220;Monkeys in Space: Escape to Banana Base Alpha&#8221;, which I absolutely loved. I think the name is perfect for the game in that it captures that silly retro feel I wanted, and it says &#8220;yes this is a game set in space, but it&#8217;s not a serious sci-fi game; it&#8217;s fun and it has monkeys!&#8221;</p>
<p><strong>4. Artwork. </strong>With Dapple I had decided to hire a professional artist to do the game&#8217;s artwork. While the artist did an amazing job and I was extremely happy with her work, hiring an artist is also expensive. With Monkeys in Space I decided to take a different risk and do the artwork myself. Now, I took some art classes in university, I&#8217;ve done a little life drawing since then, and I once had a job where I was using Photoshop for eight hours a day, but I&#8217;m not a professional artist, so this was kind of a risky move. However, in the end, I was quite pleased with the art in the game. I think the monkeys especially turned out quite well. No doubt a professional artist could probably have bumped the artwork up a notch (or two), but I&#8217;m happy with the results. On top of that, it was also really fun. It was great to get back into drawing regularly again and I think it&#8217;s something I&#8217;ll be considering for future games, if it&#8217;s a possibility.</p>
<p><strong>5. Reviews and Apple Feature. </strong>Monkeys in Space has received some great reviews from the iPhone gaming press/critics (you can read them on the <a href="http://www.streamingcolour.com/press.html" target="_blank">Press page</a>). Every good review helps to build buzz around a game, but one of the biggest reviews the game got was from TouchArcade.com. Their Monkeys in Space review was on their front page for two days and during that time I saw a sales spike close to what I was to see being featured by Apple. Then a week after the Touch Arcade review ran, the game was featured on the App Store in the Games -&gt; What&#8217;s Hot section. This happened just before Christmas, which couldn&#8217;t have been better timing. It wasn&#8217;t a front page of the App Store feature, but it was enough to push me into the Top 100 Kids Games in the U.S. store. This gave the game some momentum through the holiday boost.</p>
<p>I&#8217;ve decided that while I don&#8217;t want to share sales specifics about the game (like the infamous Dapple &#8220;Numbers&#8221; post), I will share the shape of the graph of sales since the game&#8217;s launch:</p>
<p><img class="alignnone" src="/blog/wp-content/uploads/MiS_DownloadGraph_2010-01-05.jpg" alt="Monkeys in Space Sales" width="540" height="235" /></p>
<p><span style="text-decoration: underline;"><strong>What Went Wrong</strong></span></p>
<p><strong>1. Release Date. </strong>I mentioned this <a href="http://www.streamingcolour.com/blog/2010/01/04/we-live-in-the-future/" target="_blank">earlier this week</a>, but my release date turned out to be a big mistake. I submitted the game to apple in mid-November and wasn&#8217;t sure when to expect it to be approved. I got the email from Apple saying the app was ready for sale at about 7:30pm on Wed, Nov 25th. I was so excited that I switched the app into the &#8220;for sale&#8221; state (by setting the release date to the 25th) and started preparing the email I&#8217;d send out to the press in the morning. On Thursday morning I sent out my press release along with screenshots and video, etc, to iPhone sites. At that point I started getting back &#8220;out of office&#8221; replies and suddenly released it was Thanksgiving in the U.S. See, we Canadians celebrate Thanksgiving in October, so the date completely slipped my mind.</p>
<p>At first I didn&#8217;t think it would be a big problem. But then I started reading the review sites that were staffed for the holidays and most of them were just running stories about the hundreds of games that were going on sale for Black Friday in the U.S. Not only that, but it turns out a lot of people apparently take a long weekend from Thursday-Sunday, so it meant I didn&#8217;t hear from anyone until well into the next week.</p>
<p>However, I can&#8217;t really complain as the game eventually did get picked up by review sites, but the roll out was more gradual than I had hoped. The delay meant that my marketing lost some momentum right at the start, which isn&#8217;t ideal. In the future I will be paying closer attention to U.S. holidays when I set my release dates.</p>
<p><strong>2. Delays.</strong> When I did the first concept sketches for the game that was to become Monkeys in Space, the original plan was to build the game in 2 months or less. From start to finish, the game ended up taking almost exactly 3 months. One extra month isn&#8217;t terrible, but that&#8217;s a 50% overshoot of the original plan. Now I have excuses: my wife and I moved cities, which ate up a few weeks with packing, moving, and unpacking, etc. But I think the biggest reason the game took longer than I thought it would was because I decided to do the artwork. Because I was doing the art and the programming, it meant that the two couldn&#8217;t happen concurrently. When you work with an external artist, they can be drawing while you&#8217;re coding, but I didn&#8217;t have that ability this time. The artwork took longer than I thought it would, which pushed my timeline out. Ultimately, it was worth the extra time to make sure the art was good enough to meet my expectations for the quality of the game, but it did delay its release.</p>
<p><strong>3. Marketing Push. </strong>I learned some important lessons with the launch of Dapple. One of the most important was the need to have your marketing push happen all at once. You want everyone to be talking about your game at the same time. I&#8217;ve already mentioned the problems the release date caused with this, but I suspect there were some other missed marketing opportunities around advertising that I didn&#8217;t explore. I haven&#8217;t had a lot of luck with advertising driving sales. However, I think if done properly, there may be ways to leverage advertising effectively, even for $0.99 games&#8230;I just haven&#8217;t figured it out yet.</p>
<p><strong>4. Not Enough Levels in v1.0. </strong>During development I had to make a call about how many levels to include in the initial version of the game. I looked at the great games in the genre (e.g. Harbor Master, Flight Control, etc) and looked at how many levels each had shipped with, and decided to ship three levels. I also chose to limit myself to three levels at first because the game was already taking longer than I had expected. However, what I discovered is that people expect new games to contain as many levels as the other games do <em>now</em>, not how many they contained when they shipped. Some of the reviews of Monkeys in Space have mentioned that they would have liked to have seen more levels in the game. Since then I have released a fourth level as part of a free update and I hope to release more. Regardless, what I failed to realise is that the free update system for iPhone apps creates a different set of expectations in people&#8217;s minds. They don&#8217;t care that game X shipped with one level; what matters is that it has five now. This was an important lesson in competitive analysis for me.</p>
<p><strong>5. Public Recruiting of Testers. </strong>I almost listed this in the &#8220;What Went Right&#8221; section as well, and it just <em>barely</em> squeaks into the &#8220;What Went Wrong&#8221; list. Very early in the process (much earlier than I&#8217;d ever considered before) I started asking people to play test the game and provide feedback. I put out a call on Twitter, on this blog, and in iPhone gaming forums, looking for people who wanted to play the game and provide some honest feedback about what did and didn&#8217;t work. The reason this should also be in the &#8220;What Went Right&#8221; is that I got some terrific people playing the game and providing me with insightful and helpful feedback. However, I also had a lot of people sign up, get the builds, and I&#8217;d never hear from them again. I think there is a small group of people who say they&#8217;ll beta test a game just to get a free game. The good news is that I&#8217;ve met enough great people that I now have a decent list of preferred testers I&#8217;ll ask first next time.</p>
<p><span style="text-decoration: underline;"><strong>Conclusion</strong></span></p>
<p>All in all, I&#8217;m extremely proud of Monkeys in Space. I think that I learned a lot from some of the mistakes I made with my first game, but I still made a few new mistakes. I suppose that&#8217;s all part of the process of becoming a better game designer, developer, and business person. What I like most about Monkeys in Space is seeing new players pick it up and to watch how easily they get involved with the game. I also love watching people laugh when the monkeys scream and wave their arms frantically. People seem to have fun with the game, and that makes me happy. To me, that alone makes the game successful.</p>
<p>Owen</p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2010/01/06/postmortem-monkeys-in-space/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>I&#8217;m Still Here&#8230;Making Progress</title>
		<link>http://www.streamingcolour.com/blog/2009/10/21/im-still-here-making-progress/</link>
		<comments>http://www.streamingcolour.com/blog/2009/10/21/im-still-here-making-progress/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 18:51:34 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[monkeys in space]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[high scores]]></category>
		<category><![CDATA[hud]]></category>
		<category><![CDATA[leaderboards]]></category>
		<category><![CDATA[physics]]></category>
		<category><![CDATA[play testing]]></category>
		<category><![CDATA[save files]]></category>
		<category><![CDATA[save system]]></category>
		<category><![CDATA[testers]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=855</guid>
		<description><![CDATA[It&#8217;s been a little quiet here on the blog and video blog lately. I apologize for not being more communicative. I&#8217;m hoping to get a new video blog posted in the next couple of days. The gameplay for the game has been nailed down and I&#8217;m really close to having the in-game art locked. Once [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a little quiet here on the blog and video blog lately. I apologize for not being more communicative. I&#8217;m hoping to get a new video blog posted in the next couple of days. The gameplay for the game has been nailed down and I&#8217;m really close to having the in-game art locked. Once I finish up a HUD for the game I&#8217;ll post some screenshots and even some in-game video! Woo!</p>
<p>However, before that can happen I&#8217;ve been taking care of some less exciting stuff. The last couple of days I&#8217;ve been working on a save system for the game. It turns out saving the state of a game that has a physics engine and is interacted with in real-time is a lot more complicated than for a turn-based puzzle game. Who knew? I kid. But seriously, what I hadn&#8217;t anticipated was having to build a whole new save game framework to handle it nicely.</p>
<p>At this point I&#8217;m getting a little concerned with the fact that there are only 10 days left in October. If I&#8217;m going to submit by the end of the month, I&#8217;ve got a lot of work to do. If I really buckle down I still might make it, barring any horrible problems [knocks on wood]. Otherwise I might end up pushing a week in November. Here&#8217;s hoping the next two weeks go well!</p>
<p>The good news is that my play testers seem to be really enjoying the game! There are a couple that keep battling for the high score in the leaderboards. It&#8217;s exciting to see! A week ago I thought I was Mr. BigShot with the high score in the game for the first level. Now I&#8217;m 5th. I love it when that happens. It means the people playing the game are discovering strategies that I hadn&#8217;t anticipated.</p>
<p>It should be an exciting next couple of weeks!</p>
<p>Owen</p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2009/10/21/im-still-here-making-progress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Make Dapple in 6 Months</title>
		<link>http://www.streamingcolour.com/blog/2009/04/14/how-to-make-dapple-in-6-months/</link>
		<comments>http://www.streamingcolour.com/blog/2009/04/14/how-to-make-dapple-in-6-months/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 15:42:44 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[6 months]]></category>
		<category><![CDATA[AAA]]></category>
		<category><![CDATA[console]]></category>
		<category><![CDATA[Dapple]]></category>
		<category><![CDATA[effort]]></category>
		<category><![CDATA[lines of code]]></category>
		<category><![CDATA[person-hours]]></category>
		<category><![CDATA[timeline]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=553</guid>
		<description><![CDATA[When I posted my &#8220;Numbers Post&#8221; back in March, one of the most common questions I got asked was &#8220;how did it take 6 months to make Dapple?&#8221; I found this question interesting. I&#8217;ll admit that at first I found it frustrating, and I thought &#8220;how could it not have taken 6 months?&#8221; But then [...]]]></description>
			<content:encoded><![CDATA[<p>When I posted my &#8220;<a href="http://www.streamingcolour.com/blog/2009/03/09/the-numbers-post-aka-brutal-honesty/" target="_blank">Numbers Post</a>&#8221; back in March, one of the most common questions I got asked was &#8220;how did it take 6 months to make Dapple?&#8221; I found this question interesting. I&#8217;ll admit that at first I found it frustrating, and I thought &#8220;how could it not have taken 6 months?&#8221; But then I started thinking about it more and more. It occurs to me that if you&#8217;ve never built a game from start to finish, you might now know what goes into making a game.</p>
<p>With that in mind, I thought I&#8217;d take some time today and go over a few things about Dapple. If you haven&#8217;t read <a href="http://www.streamingcolour.com/blog/2009/03/06/my-360idev-presentation/" target="_blank">my 360iDev presentation</a> on the creation of Dapple, you might want to do that. I consider it a companion to this article, but this will go into more depth.</p>
<h3>Effort:</h3>
<p>The first thing I want to do is look at some numbers, because I think it&#8217;s good to put Dapple into context. The question of &#8220;how could you spend 6 months making Dapple&#8221; is interesting to me because I come from a AAA console game background. Before I moved back to Toronto and founded Streaming Colour, I worked on a team of over 100 people who all worked on a single game for 3 years. Dapple had one person (me) working on it full time for 6 months, and 3 content creators working on it, say, half-time for one month each (call it 1.5 months total). When you put it like that, it&#8217;s hard to really put that into perspective&#8230;so let&#8217;s do it this way instead.</p>
<p>AAA Console Title (Xbox 360 or PS3):</p>
<ul>
<li>100 people (this is actually fairly conservative; some teams are up to 200 people now)</li>
<li>3 years (this is pretty standard, unless you&#8217;re EA putting out a franchise every year)</li>
<li>220 working days a year (this doesn&#8217;t include overtime, which means this will be much lower than actual effort involved)</li>
<li>6 hours of work per day (again, not including overtime)</li>
<li>Total person-hours: 396,000</li>
</ul>
<p>Dapple (iPhone):</p>
<ul>
<li>1 person</li>
<li>7.5 months (this includes the contractors&#8217; time)</li>
<li>We&#8217;ll call it 160 working days</li>
<li>6 hours of work per day (again, not including overtime)</li>
<li>Total person-hours: 960</li>
</ul>
<p>Let&#8217;s call it 1,000 hours for Dapple, then. In actuality, I worked quite a bit of overtime, especially on the last 1/3 of the project. But still, for that amount of effort, I think Dapple is quite impressive. Maybe I&#8217;m biased.</p>
<h3>Lines of Code</h3>
<p>My friend <a href="http://igamemaker.com/2009/03/09/how-many-novels-of-code-does-it-take-part-1-90s-commercial-games/" target="_blank">Jay posted on his blog</a> recently about the growth of code size between Wolfenstein 3D and Quake 3. It&#8217;s a fascinating read. It also got me thinking about Dapple&#8217;s code size. With Wolfenstein 3D being released for iPhone as open source recently, I thought I&#8217;d compare the two. I used a tool called <a href="http://cloc.sourceforge.net/" target="_blank">cloc</a> to run a line of code comparison of Wolf 3D and Dapple:</p>
<ul>
<li>Wolf 3D = ~28,000 lines of code</li>
<li>Dapple = ~21,000 lines of code</li>
</ul>
<p>This means that Dapple is about 3/4 the size of Wolfenstein 3D, which I actually found quite shocking. The big difference here is that Wolf 3D&#8217;s code is mostly for the game. When I broke it down further, I discovered that over 6,000 lines of code for Dapple is for the front end and user interface. If you look at Wolf 3D, they only have a few very simple menus in the game. Dapple has dozens of screens.</p>
<p>I&#8217;m not sure if there are any conclusions to be had here, other than to say that it does take time to write 21K lines of bug-free code.</p>
<h3>Timeline</h3>
<p>Finally, this will only be of interest to only the most hard-core of the hard-core, but I took an hour or two and I went through all of my change logs during development of Dapple. What I&#8217;ve done here is give a week by week summary of what I did to create Dapple. Keep in mind that most stuff relating to the business (e.g. finding and hiring contractors, dealing with international sales contracts, etc) didn&#8217;t have any mention in my change logs, so I haven&#8217;t mentioned them here. This mostly just relates to the coding tasks involved in creating Dapple. So, without further ado, here&#8217;s how you make Dapple in 6 months:</p>
<h5>Pre-Production</h5>
<p><strong>Week 1: </strong><br />
- Downloaded, installed and learned Playfirst&#8217;s Playground SDK (2D game engine) for Mac.<br />
<strong><br />
Week 2: </strong><br />
- First pass at prototyping original game concept.<br />
- Game isn&#8217;t fun.<br />
<strong><br />
Week 3: </strong><br />
- Created animation system.<br />
- Changed some gameplay mechanics to make the game more fun.<br />
- Added some simple animations.<br />
- Game still isn&#8217;t fun.</p>
<p><strong>Week 4:</strong><br />
- Branched prototype and started working on new gameplay mechanic, based around same idea: mixing paint colours.<br />
- Gameplay now based around making matches (more similar to final product)<br />
- Game is more fun, but is too complex &#8211; new players are easily confused.<br />
- Experimented with simple SFX and background music<br />
- Experimented with some simple HUD elements (displaying score, for example)</p>
<p><strong>Week 5:</strong><br />
- Ported prototype to Windows.<br />
- First draft of game design document.<br />
- Started designing front-end UI flow (menu screens).</p>
<p><strong>Week 6:</strong><br />
- More gameplay mechanic changes to simplify the gameplay.<br />
- Game is now quite fun (very similar to final game mechanic).<br />
- Added logic to detect end-of-game condition.<br />
- Changes to underlying board data structures to make things more flexible.<br />
- Added hint animation.<br />
- Added in the concept of brown paint.<br />
- Game no longer fun with current first-pass implementation.</p>
<p><strong>Week 7:</strong><br />
- Balanced the way brown paint works.<br />
- Added in concept of brown paint spreading.<br />
- Game is quite fun again (and is now almost the same as final game, in terms of mechanics)<br />
- Decided to port to iPhone, just to see if I could.<br />
- Prototype ported to iPhone successfully (but no UI, no ability to restart a game after it ends, etc).<br />
- Game uses CocoaTouch and UIKit for now.</p>
<p><strong>Week 8 &#8211; 10:</strong><br />
- Working on company website and logo design.<br />
- Other misc business stuff.</p>
<p><strong>Week 11:</strong><br />
- Added special items to the game (water drop + diamond).<br />
- Game much more fun, much better balance.<br />
- Gameplay tuning.<br />
- Fixed major bug in the search algorithms when looking for potential matches for the hint arrow.<br />
- Hint tuning.<br />
- Branched from prototype branch into the main trunk.</p>
<h5>Production</h5>
<p><strong>Week 12:</strong><br />
- Now working on the game I will eventually ship &#8211; no longer prototyping.<br />
- Deleting all the junk code from the prototype.<br />
- Refactoring reusable code.<br />
- Rewriting all the classes that were deleted.</p>
<p><strong>Week 13:</strong><br />
- More refactoring and rewriting.<br />
- Code base is much cleaning and extensible.<br />
- Set up developer profiles, etc, and got project running on device hardware (instead of just simulator).<br />
- Fixed some major bugs in the game logic and UI.<br />
- Created Front End wireframes document to provide to artist.</p>
<p><strong>Week 14:</strong><br />
- Converting game to OpenGL.<br />
- Got the game back up to previous state, but with rendering layer swapped out and now using OpenGL instead of CocoaTouch and UIKit. Game now completely OpenGL-based.<br />
- Adding temporary Title Screen on launch.<br />
- Implemented game mode loading system.<br />
- Did some event handling to disable rendering/update while device locked and handling long update times after unlocking.<br />
- Fixed some bugs.<br />
- Upped number of levels that game has difficulty controls for.<br />
- Set up ad hoc distribution builds.<br />
- Fixed some memory release bugs.</p>
<p><strong>Week 15:</strong><br />
- Fixed bugs in touch handling.<br />
- Implemented audio system shutdown during device lock (was causing battery drain).<br />
- Implemented end-of-game handling to bring up simple high scores list.<br />
- Difficulty tuning.<br />
- Implemented paint &#8220;falling&#8221; animation and tuned.<br />
- Implemented support for animated textures.<br />
- Implemented paint &#8220;match&#8221; animation with temporary texture.</p>
<p><strong>Week 16:</strong><br />
- Changed hint logic to pick random hint instead of closest to top-left.<br />
- Adjusting scoring system to take into account special items.<br />
- Implemented &#8220;scoring&#8221; animation.<br />
- Fixed some bugs related to scaling/translation in animation system.<br />
- Animation tuning.<br />
- Fixed a bug with alpha blending for textures that had alpha in them.<br />
- Fixed some memory leaks.<br />
- Started adding first art assets that arrived from artist.<br />
- Score tuning.<br />
- Implemented score multiplier system for combos.<br />
- Implemented &#8220;multiplier&#8221; animation.<br />
- Refactored rendering code to separate rendering of individual HUD elements more.<br />
- Implemented progress bar functionality.<br />
- Implemented bitmap font rendering system just for number values in-game.<br />
- Started implementing a Front End framework system.<br />
- Implemented system to load/unload front end screens (i.e. menus)<br />
- Implemented temp main menu to test FE flow system.</p>
<p><strong>Week 17:</strong><br />
- Implemented more of the FE framework system.<br />
- Hooked up the Pause button to load an empty pause menu.<br />
- Added new artwork to the game.<br />
- Implemented tinting for the bitmap font system.<br />
- Implemented UI Widget framework to hook into the FE framework.<br />
- Implemented &#8220;Menu&#8221; widget.<br />
- Implemented first pass at &#8220;Main Menu&#8221; using new Menu widget.<br />
- Implemented &#8220;Chooser&#8221; widget.<br />
- Implemented first pass at &#8220;New Game&#8221; screen using the Chooser.<br />
- Implemented &#8220;Slider&#8221; widget.<br />
- Implemented &#8220;Checkbox&#8221; widget.<br />
- Implemented first pass at &#8220;Options&#8221; popup.<br />
- Connected widgets in Options popup to control user settings.<br />
- Implemented first pass at &#8220;Pause Menu&#8221;.<br />
- Implemented first pass at &#8220;How to Play&#8221; popup.<br />
- Implemented first pass at &#8220;Credits&#8221; screen.<br />
- Scoring tuning.<br />
- Implemented a user data storage class.<br />
- Connected user data to NSUserDefaults to save out user data settings.</p>
<p><strong>Week 18:</strong><br />
- Added first SFX assets from sound designer.<br />
- Added first music assets from composer.<br />
- Implemented first pass at colourblind support.<br />
- Added high scores to saved data.<br />
- Animation tuning.<br />
- Difficulty tuning.<br />
- Added SFX to animations (e.g. &#8220;squish&#8221; effect when paint falls).<br />
- Fixed a bunch of bugs and memory leaks in SoundEngine.<br />
- Fixed some bugs around touching the screen during animations.<br />
- Replaced all art in the game that contained text with new art with a new font (font licensing issues).<br />
- Added new match animation.</p>
<p><strong>Week 19:</strong><br />
- Implemented first pass at a &#8220;Generic Popup&#8221; class.<br />
- Implemented &#8220;Quit Confirm&#8221; popup using new Generic Popup.<br />
- Implemented system to save the user&#8217;s game in progress.<br />
- Art tuning.<br />
- Implemented first pass at &#8220;High Scores&#8221; popup.<br />
- Hooked High Scores popup into the end-of-game flow.<br />
- Implemented the &#8220;Level Up&#8221;, &#8220;Good&#8221;, &#8220;Great&#8221;, and &#8220;Amazing&#8221; animations.<br />
- Big bug fix to do with alpha blending to do with premultiplied textures.<br />
- Bug fixes.<br />
- Implemented the Mixing Guide.<br />
- Added new colourblind mode artwork.<br />
<strong><br />
Week 20:</strong><br />
- Implemented first pass at &#8220;New High Score&#8221; popup.<br />
- Hooked New High Score popup into end-of-game flow.<br />
- Added new SFX assets.<br />
- Implemented all of the &#8220;How to Play&#8221; sub-popups.<br />
- Tuned colourblind mode settings.<br />
- Tuned all the FE positioning values to make sure everything lined up properly.<br />
- Difficulty tuning.<br />
- Started adding real credits to credits screen.<br />
- Added final art assets.<br />
<strong><br />
Week 21:</strong><br />
- Christmas holiday</p>
<p><strong>Week 22:</strong><br />
- Created game video captures and created first trailer video.<br />
- Wrote announcement press release.<br />
- Started gathering contact information for PR.</p>
<p><strong>Week 23:</strong><br />
- Added new music assets.<br />
- Added final SFX and music assets.<br />
- Implemented system that allows user to either listen to the game&#8217;s music, or listen to their own iPod music. Game auto-detects whether user is playing their own music or not.<br />
- Refactored audio SFX system to allow for easier playing of SFX.<br />
- Hooked up SFX to all FE screens and widgets.<br />
- Added &#8220;Tips&#8221; popups when user first starts the game.<br />
- Implemented &#8220;Reset Tips&#8221; system that allows user to reset the tips state to see them all again.<br />
- Updated and tuned the multiplier animation.<br />
- Refactored and removed some dead code.<br />
- Adjusting game initialization settings.<br />
- Adjusted the Generic Popup code to make sure things looked better.</p>
<p><strong>Week 24:</strong><br />
- Implemented first pass at &#8220;Timed&#8221; game mode.<br />
- Implemented changes to store separate high scores for Classic and Timed modes.<br />
- Added descriptions to Game Modes screen.<br />
- Update High Scores screen to display separate lists for Classic and Timed modes.<br />
- Added new &#8220;Game Mode&#8221; How to Play popups.<br />
- Added Game Mode tips to start of game.<br />
- Added confirmation popup to Continue button that displays info about game in progress.<br />
- Fixed a bunch of memory leaks (mostly textures that were alloc&#8217;ed without being released).<br />
- Implemented &#8220;3, 2, 1, Go!&#8221; animation for Timed mode.</p>
<p><strong>Week 25:</strong><br />
- Implemented &#8220;Game Over&#8221; animation.<br />
- Implemented audio warnings for Timed mode.<br />
- Implemented first pass at &#8220;Two Player&#8221; game mode.<br />
- Refactored most major classes to support a &#8220;player&#8221; parameter.<br />
- Fixed major bug in the end-of-game detection code.<br />
- Updated all rendering code for Two Player mode to rotate to face the current player.<br />
- Updated all animations for Two Player mode to animate correctly for the current player.<br />
- Update board logic so that tiles can fall in two directions.<br />
- Implemented &#8220;Player X Wins&#8221; popup for 2P end-of-game flow.<br />
- Optimized board rendering to get rid of some dumb, slow code.<br />
- Fixed bugs.<br />
- Updated FE framework so that FE screens get rotated based on the current player.<br />
- Changed &#8220;New Game&#8221; confirmation popup to display info about game in progress.<br />
- Animation tuning.<br />
- Difficulty tuning.<br />
- Added new &#8220;Board Layout&#8221; How to Play popup for 2P mode.<br />
- Implemented &#8220;Player X Go!&#8221; animation for 2P mode.<br />
- Hid current brush colour while input is disabled.</p>
<h5>Post-Production</h5>
<p><strong>Week 26:</strong><br />
- Fixed a bunch of audio bugs.<br />
- Fixed a bunch of UI bugs.<br />
- Gameplay tuning.<br />
- Implemented loading screens.<br />
- Modified the sliders so that they are easier to use (bigger touch area).<br />
- Implemented &#8220;System Layer&#8221; popup support.<br />
- Implemented error popup if corrupt save data is detected for any reason.<br />
- Hooked up save points to a lot more places in the game.<br />
- Tuning score animations to render better when they&#8217;re close to edge of the screen.<br />
- Created final icon and iTunes artwork.<br />
- Fixed a bunch of memory leaks.<br />
- Modified some UI widget functionality allowing for more intuitive use of Chooser widget.<br />
- Changed the way the in-game double-tap works to make it easier to play.</p>
<p><strong>Week 27:</strong><br />
- Updated Credits screen to support 2 pages of credits.<br />
- Added Special Thanks credits.<br />
- Fixed a few memory leaks.<br />
- Major rework to SoundEngine.<br />
- Fixed a couple of really obscure SoundEngine crashes that happened extremely rarely.<br />
- Fixed a bunch of memory leaks in SoundEngine on engine shutdown.<br />
- Created a &#8220;Final&#8221; build target that disables logging and asserts.<br />
- Submitted to App Store!</p>
<p>Owen</p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2009/04/14/how-to-make-dapple-in-6-months/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>360iDev: 3.5 Days of Awesomeness</title>
		<link>http://www.streamingcolour.com/blog/2009/03/06/360idev-35-days-of-awesomeness/</link>
		<comments>http://www.streamingcolour.com/blog/2009/03/06/360idev-35-days-of-awesomeness/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 22:57:05 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[360|idev]]></category>
		<category><![CDATA[california]]></category>
		<category><![CDATA[san jose]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=450</guid>
		<description><![CDATA[I apologise for the length of this post, but I wanted to get it all out in one post, so as not to forget anything&#8230; I thought I&#8217;d take some time and talk in detail about 360&#124;iDev. Overall, let me say this: the conference was fantastic. There were about 200 developers there and there were [...]]]></description>
			<content:encoded><![CDATA[<p>I apologise for the length of this post, but I wanted to get it all out in one post, so as not to forget anything&#8230;</p>
<p>I thought I&#8217;d take some time and talk in detail about <a href="http://www.360idev.com/" target="_blank">360|iDev</a>. Overall, let me say this: the conference was fantastic. There were about 200 developers there and there were at least 3 talks running concurrently over 3 days with 5 sessions per day! That&#8217;s a lot of great content!</p>
<p>I think the easiest way to do this is a day-by-day breakdown, so here we go!</p>
<p><strong>Day 0 &#8211; Sunday, March 1st, 2009</strong></p>
<p>I arrived in San Jose on Sunday afternoon and checked into the hotel. I walked straight over to the eBay Town Hall Conference Center where the conference was being held. Sunday had some &#8220;pre-conference&#8221; hands-on presentations going on, for those who were able to attend.</p>
<p>Joe Pezzillo from <a href="http://www.metafy.com" target="_blank">Metafy</a> was giving a great hands-on talk on creating 3 &#8220;Hello World&#8221; apps in 3 different ways. I arrived about half-way through the session so I just sat at the back and listened. What a great session! Dapple hardly uses any UIKit stuff, so I barely touched Interface Builder when I was working on it. Joe&#8217;s session showed me some amazingly powerful stuff you can do in Interface Builder with writing hardly any code! He also showed us some really cool stuff to do with memory management that I didn&#8217;t know about before. I was very impressed and knew the conference was going to be great right then.</p>
<p>After Joe&#8217;s presentation I ran into Keith Shepherd from <a href="http://www.imangistudios.com" target="_blank">Imangi Studios</a> and Noel Llopis from <a href="http://www.snappytouch.com/" target="_blank">Snappy Touch</a>. We all talk on Twitter and it was really cool to meet these guys in person. Noel and Keith are both awesome and the three of us spent a lot of the conference together, as we had interest in a lot of the same sessions.</p>
<p>Sunday night has a Speaker&#8217;s Dinner where us speakers all got to meet each other. Then they opened the party up to everyone and we had drinks and played Rock Band and started meeting other people. I also got to meet Jeff Scott from <a href="http://www.148apps.com" target="_blank">148Apps.com</a>, who is a great guy. It was a great way to start the conference. Unfortunately, I was kind of jet lagged, so I wasn&#8217;t able to stay up very late that night and went to bed fairly early.<br />
<strong><br />
Day 1 &#8211; Monday, March 2nd, 2009</strong></p>
<p>I got up really early Monday morning and went for a run with Noel before the conference started. It was great to run in the warm weather and not have to wear a hat or mitts. I kind of hurt my knee, though, so that was the only day I was able to run while I was there.</p>
<p>The first session of the day was two keynotes: one from the lead researcher at eBay (whose name I forget&#8230;sorry) and another from Mike Lee. Mike&#8217;s presentation, in particular, spoke to me as he discussed the need for the iPhone development community to work together and act as a community.</p>
<p>Next up with <a href="http://www.e-string.com/" target="_blank">Julio Barros&#8217;s</a> talk called &#8220;iPhone and Android?&#8221; He talked mostly about the differences in the way apps are created and distributed. It was a neat talk with a lot of questions and discussions that resulted. It&#8217;s clear that a lot of iPhone devs are considering Android as an alternate platform and wanted to know more about it.</p>
<p>There was a break for a delicious lunch, where I got to meet a bunch more people, like: Peter and Mike from <a href="http://www.byteclub.com" target="_blank">ByteClub</a>, <a href="http://www.chucksmith.de" target="_blank">Chuck Smith</a>, <a href="http://collindonnell.com/" target="_blank">Collin Donnell</a>, <a href="http://www.markj.net" target="_blank">Mark Johnson</a>, and Julian Dolce from <a href="http://www.fuelindustries.com" target="_blank">Fuel Industries</a> (who are based in Ottawa, Ontario). And after lunch I gave my talk. I was lucky enough to be able to give a presentation on the creation of Dapple, the processes I used, and the lessons I learned. The room was nearly full for my talk and a lot of nice people said that they enjoyed the talk a lot.</p>
<p>Right after my talk I went to see a talk on the Unity Engine. The guy who was supposed to do the talk couldn&#8217;t be there so 4 students from a local game design school who are working at eBay gave a talk on Unity instead. They had been building a game in Unity and spoke very well about Unity and their processes.</p>
<p>The final talk of the day that I saw was by Scott Michaels, from a Canadian company based in Vancouver called <a href="http://www.atimi.com/" target="_blank">Atimi</a>. This was the presentation that people talked about for the rest of the show. He gave an in-depth and knowledgeable talk on marketing as it relates to iPhone apps. It was full of useful information and recommendations and I was blown away by it. It really showed me how little I understand about marketing. I started thinking about hiring a freelance marketing consultant at that point.</p>
<p>After that there was dinner, talking to lots of people, beer, and more Rock Band. By the end of the first day I was already convinced that the conference was worth more than the price of admission.<br />
<strong><br />
Day 2 &#8211; Tues, March 3rd, 2009</strong></p>
<p>Up early again, but this time I met up with an old friend of mine I hadn&#8217;t seen in about 15 or 16 years. He lives in San Francisco now and I was nice enough to drive out to San Jose and meet me for breakfast. It was cool to get a chance to meet up with him after all these years. However, as a consequence I missed the first slot of speakers that day.</p>
<p>I arrived in time for the second slot and sat in on <a href="http://blog.neontology.com/" target="_blank">Tim Burks&#8217;s</a> &#8220;Deep Geek Diving into the iPhone OS and Frameworks&#8221; session. This was a fascinating talk about how to dig into the underlying core APIs and see what&#8217;s available. There&#8217;s all kinds of cool stuff that Apple doesn&#8217;t allow developers access to, and this was just a look at what&#8217;s there that we can&#8217;t use yet. It was kind of a tease actually&#8230;look at all this cool stuff that&#8217;s available! But you can&#8217;t ship an app on the App Store if you touch this stuff&#8230; Still, a great session.</p>
<p>Lunch time again, more tasty treats. More chatting.</p>
<p>After lunch I attended Noel Llopis&#8217;s (<a href="http://www.snappytouch.com/" target="_blank">Snappy Touch</a>) talk on &#8220;Becoming Indie: A Professional Game Developer&#8217;s Change to the iPhone&#8221;. It was a great talk and I learned a whole bunch of information about iPhone hardware. I wish Noel&#8217;s talk could have been twice as long as there was a lot of stuff he talked about that I would have loved to have seen more on. Noel is also a huge proponent of unit testing and talked quite a bit about it in his presentation. It&#8217;s definitely something I need to do more of.</p>
<p>Next up with Peter Bakhyryev&#8217;s (<a href="http://www.byteclub.com" target="_blank">ByteClub</a>) presentation on &#8220;Making Multiplayer iPhone Games: Theory and Practice&#8221;. Peter had a great talk, mostly concentration on all the things you need to take into consideration when you&#8217;re designing a multiplayer game. This talk sparked dozens of ideas for new games or multiplayer extensions to Dapple in my head. I spent quite a bit of time talking with Peter and Mike at the conference and they&#8217;re both great guys. They&#8217;re doing some really cool stuff around releasing a multiplayer gaming framework.</p>
<p>The last talk of the day was Jonathan Saggau&#8217;s (<a href="http://code.google.com/p/touchengine/" target="_blank">TouchEngine</a>) presentation on &#8220;Connecting iPhone to Google&#8217;s App Engine&#8221;. I made a bit of a mistake here and assumed this would be much higher-level than it was. The started his talk assuming that everyone knew what &#8220;The Cloud&#8221; and how Google&#8217;s App Engine worked, and so most of the presentation was kind of over my head. It wasn&#8217;t until later that I realised the talk was a 300-level talk, meaning it was an advanced topic. Oops. I&#8217;m sure it would have been cool if I&#8217;d already known how to use App Engine.</p>
<p>Dinner, more beer, more networking. Met some more people. Back at the hotel I ended up in the lobby with a bunch of people talking about iPhone stuff. It turns out I was talking to one of the guys who first jailbroke the iPhone, as well as the guy who wrote Cydia (<a href="http://www.saurik.com" target="_blank">saurik</a>). They were really interesting to talk to because they have a very different perspective on things.</p>
<p><strong>Day 3 &#8211; Wed, March 4th, 2009</strong></p>
<p>Another early day&#8230;got up to make it to the keynote presentations. This time by Eric Litman from Medialets and a guy (whose name I forget, sorry) from AdMob. They both talked about analytics software and advertising in apps. They were neat talks. The AdMob guy talked a lot about monetizing apps by ad-enabling them, which I have no interest in, but he also talked about how I could run ads in other apps. That&#8217;s something I might look into at some point.</p>
<p>Next up was <a href="http://www.craftymind.com/" target="_blank">Sean Christmann&#8217;s</a> presentation on &#8220;Powerful Visuals with Quartz 2D&#8221;. I didn&#8217;t know much about Quartz 2D, so this was a really neat presentation for me. I learned a lot about how it works and now I want an excuse to play around with them.</p>
<p>Final lunch break.</p>
<p>After lunch I went to <a href="http://iphonedeveloperjournal.com/" target="_blank">Danton Chin&#8217;s</a> &#8220;Managing and Optimizing Memory Usage&#8221;. I had hoped that this talk would be a little more in-depth, but a lot of it covered the same kind of stuff I&#8217;d written up in my Leaks Tutorial. I think it would have been a great presentation if I didn&#8217;t already know how to use Instruments to track down memory leaks. However, I did learn some things about using the Static Analysis to find mem problems at compile time.</p>
<p>Next I popped into a talk being given by <a href="http://iphonedevelopment.blogspot.com/" target="_blank">Jeff LaMarche</a> and another guy whose name I forget (sorry) on Open GL and the iPhone accelerometer. The accelerometer stuff was quite neat, but the OpenGL discussion kind of got side-tracked by people asking a lot of questions about how it works. OpenGL is difficult to learn in an hour. It was still a good presentation, though.</p>
<p>Finally, the last presentation of the show I went to was <a href="http://dom.net/" target="_blank">Dom Sagolla</a>&#8216;s &#8220;Why a Dollar?&#8221; presentation. His was about why his company only releases $0.99 apps and about the process he uses to create these apps. It was interesting to hear his point of view and to see how he does it.</p>
<p>With that, the conference was over! There were a bunch of us who weren&#8217;t flying out until the next day so we headed out to a Mexican restaurant for drinks and food. The conference organizers, <a href="http://www.360idev.com/" target="_blank">Tom Ortega</a> and <a href="http://www.360idev.com/" target="_blank">John Wilker</a>, were there too, so it was cool to get to hang out with them a bit. I also spent some time talking with one of the guys, Azeem Ansar, from <a href="http://www.pinchmedia.com" target="_blank">PinchMedia</a>, which was cool, as well as Mark Thomas, who had flown all the way from the UK for the conference.</p>
<p>After that, I went back to my hotel, exhausted from all the excitement and brain activity. I was up bright and early yesterday morning (4:30am) to get on a plane back to Ontario (via Chicago of course). Today has been kind of a wash. I&#8217;m having trouble concentrating as my brain tries to sort through all the amazing things I&#8217;ve learned this week and all the things I want to do in the future!</p>
<p>If you weren&#8217;t able to make it to <a href="http://www.360idev.com/" target="_blank">360|iDev</a> this time, I highly recommend it. They&#8217;re talking about doing another one in 6 months, but possibly further East. When tickets go on sale, get in early!</p>
<p>Owen</p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2009/03/06/360idev-35-days-of-awesomeness/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>It&#8217;s Getting Close&#8230;</title>
		<link>http://www.streamingcolour.com/blog/2009/01/23/its-getting-close/</link>
		<comments>http://www.streamingcolour.com/blog/2009/01/23/its-getting-close/#comments</comments>
		<pubDate>Fri, 23 Jan 2009 15:28:19 +0000</pubDate>
		<dc:creator>OG</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[2-player mode]]></category>
		<category><![CDATA[advertising]]></category>
		<category><![CDATA[alpha]]></category>
		<category><![CDATA[apptheater]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[beta testers]]></category>
		<category><![CDATA[beta testing]]></category>
		<category><![CDATA[Dapple]]></category>
		<category><![CDATA[money]]></category>
		<category><![CDATA[oolong engine]]></category>
		<category><![CDATA[snappytouch]]></category>
		<category><![CDATA[timed mode]]></category>
		<category><![CDATA[TTC]]></category>

		<guid isPermaLink="false">http://www.streamingcolour.com/blog/?p=292</guid>
		<description><![CDATA[I&#8217;m prepared to officially declare Alpha this morning! I had an extremely productive couple of days and finished off the 2 Player Mode last night. There are still a few small things to add to the game (a few animations to spice things up in places), but all the big features are finished. At this [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m prepared to officially declare Alpha this morning!</p>
<p>I had an extremely productive couple of days and finished off the 2 Player Mode last night. There are still a few small things to add to the game (a few animations to spice things up in places), but all the big features are finished. At this point it&#8217;s finishing up the last of the polish items and then it&#8217;s tuning, testing, and bug fixing until submission!</p>
<p>My original plan was to declare Alpha by the end of December, but then I decided I had time to implement Timed Mode and 2 Player Mode. I&#8217;m really glad I spent the time to add these modes; they add so much to the game. I really feel like I&#8217;ll be able to justify the price-point I&#8217;ve been mulling over in my head (more on that later). Given that I added two game modes in the last 3 weeks I&#8217;m feeling pretty good at declaring Alpha today.</p>
<p>The plan now is to wrap up the last of the polish tasks and fix the bugs I&#8217;m aware of by mid next week. At that point I&#8217;ll declare Beta and send out a Beta build to everyone who has signed up for Beta Testing.</p>
<p>I&#8217;m still looking for more Beta Testers. If you&#8217;re interested, please send me an email (info AT streamingcolour DOT com) with &#8220;beta test&#8221; in the subject. There are full details in <a href="http://www.streamingcolour.com/blog/2009/01/20/a-call-for-beta-testers/" target="_blank">this previous post</a>.</p>
<p>Unrelated to <em>Dapple</em>, I wanted to share a few links that have been sent my way over the last while:</p>
<ul>
<li><a href="http://www.apptheater.com/" target="_blank">AppTheater</a> (www.apptheater.com) &#8211; A site that collects videos of iPhone Apps. If you want to see what an App is like before you buy it, look for a video here.</li>
<li><a href="http://oolongengine.com/" target="_blank">Oolong Engine</a> (www.oolongengine.com) &#8211; Noel from <a href="http://www.snappytouch.com/" target="_blank">Snappy Touch</a> informed me about this freely available simple engine for iPhone. It looks to me like it&#8217;s based off the code from Apple&#8217;s (now removed) CrashLanding example project, but they&#8217;ve added all kinds of handy functionality. I wish I&#8217;d known about this 6 months ago&#8230;</li>
</ul>
<p>Oh, one final note: I contacted the TTC (Toronto Transit Commission, for those outside Toronto) about advertising on buses and subways. They sent me some pricing information and I&#8217;ve realised that the old adage &#8220;you need to spend money to make money&#8221; is so true. There should perhaps be a corollary &#8220;you need money to make money&#8221;. I&#8217;ve realised I can&#8217;t afford to do that kind of physical advertising until I make some money. Ironic, ain&#8217;t it?</p>
<p>Owen</p>
]]></content:encoded>
			<wfw:commentRss>http://www.streamingcolour.com/blog/2009/01/23/its-getting-close/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

