<?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>Touch Arcade &#187; Developer Corner</title>
	<atom:link href="http://toucharcade.com/category/developer-corner/feed/" rel="self" type="application/rss+xml" />
	<link>http://toucharcade.com</link>
	<description>... keeping in touch with the latest in iPhone gaming</description>
	<lastBuildDate>Thu, 09 Feb 2012 22:57:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>Digging Into the iPad 2's HDMI-Out Capabilities</title>
		<link>http://toucharcade.com/2011/03/25/digging-into-ipad-2s-hdmi-out-and-what-it-means-for-games/</link>
		<comments>http://toucharcade.com/2011/03/25/digging-into-ipad-2s-hdmi-out-and-what-it-means-for-games/#comments</comments>
		<pubDate>Fri, 25 Mar 2011 17:41:59 +0000</pubDate>
		<dc:creator>Blake Patterson</dc:creator>
				<category><![CDATA[Developer Corner]]></category>
		<category><![CDATA[iPad 2]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://toucharcade.com/?p=61771</guid>
		<description><![CDATA[Earlier this morning we posted news that Firemint would soon be bringing an update to Real Racing 2 HD [App Store], with support for full-screen 1080p video-out on the iPad 2. This news got us wondering about the overall situation that the iPad 2 and it's new PowerVR SGX543MP2 graphics processor(s) present to existing games that [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-61786" title="apple_hdmi_out_2" src="http://toucharcade.com/wp-content/uploads/2011/03/apple_hdmi_out_2.jpg" alt="" width="290" height="310" />Earlier this morning <a href="http://toucharcade.com/2011/03/25/real-racing-2-hd-set-to-get-full-screen-1080p-video-out-feature/">we posted news</a> that Firemint would soon be bringing an update to <em><a href="http://toucharcade.com/2011/03/11/real-racing-2-hd-arrives-just-in-time-for-the-ipad-2-launch/">Real Racing 2 HD</a></em> [<a href="http://toucharcade.com/link/http://itunes.apple.com/us/app/real-racing-2-hd/id414566922?mt=8">App Store</a>], with support for full-screen 1080p video-out on the iPad 2. This news got us wondering about the overall situation that the iPad 2 and it's new <a href="http://toucharcade.com/2011/03/13/ipad-2-gpu-benchmarks-show-dramatic-performance-gains/">PowerVR SGX543MP2 graphics processor(s)</a> present to existing games that already utilize TV-out by way of Apple's earlier component and VGA video cables for iOS devices.</p>
<p>I chatted up Keith Shepherd of <a href="http://imangi.com">Imangi</a>, author of <em><a href="http://toucharcade.com/2010/12/13/max-adventure-review/">Max Adventure</a></em> [<a href="http://toucharcade.com/link/http://itunes.apple.com/app/max-adventure/id396057778?mt=8">App Store</a>], which has <a href="http://toucharcade.com/2011/01/04/max-adventure-gets-video-out/">supported TV-out</a> via the aforementioned cables for some time now, to see what he thought the iPad 2's 1080p capability means for existing titles. While he hadn't tested <em>Max</em> on an iPad 2 personally, he felt it likely that the newly supported resolution should be there among those presented to an application by iOS, and therefore presented as an option in his game.</p>
<p>And, he was right.</p>
<p><span id="more-61771"></span>With an iPad 2 connected to a 1080p HDTV by way of the Apple Digital AV Adapter (the HDMI cable), I fired up <em>Max Adventure</em> to see how it runs on the new hardware. <em>Max</em>, which supported a maximum resolution of 1280x720 on all previous devices, presents the option to run at a full 1920x1080 on the iPad 2. And, when chosen, the game runs beautifully in full 1080p.</p>
<p>I also loaded up MajicJungle's <em><a href="http://toucharcade.com/2010/07/26/chopper-2-a-game-thats-more-than-universal/">Chopper 2</a></em> [<a href="http://toucharcade.com/link/http://itunes.apple.com/us/app/chopper-2/id363912842?mt=8">App Store</a>], which has supported TV-out since day one, and noted that it runs in full 1080p on the iPad 2, where it, too, was previously limited to 720p.</p>
<p>It's great news that existing apps like these got an automatic upgrade courtesy of Apple and Imagination Technologies.</p>
<p style="text-align: center;"><a href="http://toucharcade.com/wp-content/uploads/2011/03/max_hdmi_tv_large.jpg"><img class="aligncenter size-full wp-image-61777" title="max_hdmi_tv" src="http://toucharcade.com/wp-content/uploads/2011/03/max_hdmi_tv.jpg" alt="" width="500" height="306" /></a></p>
<p>Since I was caught up in waving around my HDMI cable, I decided to try it out on the iPhone 4 running iOS 4.3, which we already knew supports TV-out via the component and VGA cables. I loaded up <em>Max Adventure</em> and my HDTV lit right up, with full audio and video coming through just fine, but at a maximum resolution of 1280x720 due to limitations of the device's earlier generation graphics chipset. Still, this is great news, as HDMI delivers a nice, clean digital signal while the VGA and component cables provide analog output only (and lack audio information).</p>
<p>Speaking of those older cables, a quick look at Apple's website indicates that the VGA cable will also deliver 1080p video when used with the iPad 2, but that the component cable is limited to a maximum of 576p on recent devices and just 576i on older hardware.</p>
<p>Our earlier iPad 2 HDMI-out demo video can be seen <a href="http://toucharcade.com/2011/03/17/ipad-2-hdmi-out-to-hdtv-demo-video/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://toucharcade.com/2011/03/25/digging-into-ipad-2s-hdmi-out-and-what-it-means-for-games/feed/</wfw:commentRss>
		<slash:comments>46</slash:comments>
		</item>
		<item>
		<title>Developer Profile - Daniel Zandelin of Donut Games</title>
		<link>http://toucharcade.com/2010/02/05/developer-profile-daniel-zandelin-of-donut-games/</link>
		<comments>http://toucharcade.com/2010/02/05/developer-profile-daniel-zandelin-of-donut-games/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 15:30:51 +0000</pubDate>
		<dc:creator>Ryan Rigney</dc:creator>
				<category><![CDATA[Developer Corner]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Interviews]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://toucharcade.com/?p=31483</guid>
		<description><![CDATA[Donut Games is the developer/publisher of well over a dozen iPhone games including fan-favorites like Rat On A Scooter XL, Comet Racer, and Cows in Space. Officially titled "Swedish Game Development Group AB," Donut Games has all of their games available in flash form on their website, where they can be played for free. With [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_31485" class="wp-caption alignright" style="width: 240px"><a href="http://toucharcade.com/wp-content/uploads/2010/02/DanielZandelin_w_MarioKartDS.jpg"><img class="size-medium wp-image-31485 " style="margin-left: 2px; margin-right: 2px;" title="DanielZandelin_w_MarioKartDS" src="http://toucharcade.com/wp-content/uploads/2010/02/DanielZandelin_w_MarioKartDS-230x300.jpg" alt="" width="230" height="300" /></a><p class="wp-caption-text">Daniel Zandelin, who is apparently a big fan of Mario Kart DS</p></div>
<p><a href="http://www.donutgames.com/">Donut Games</a> is the developer/publisher of well over a dozen iPhone games including fan-favorites like <em><a href="http://appshopper.com/games/rat-on-a-scooter-xl">Rat On A Scooter XL</a></em>, <em><a href="http://toucharcade.com/2010/01/21/comet-racer-an-arcadey-time-trial-game-that-does-things-right/">Comet Racer</a></em>, and <a href="http://appshopper.com/games/cows-in-space"><em>Cows in Space</em></a>. Officially titled "Swedish Game Development Group AB," Donut Games has all of their games available in flash form <a href="http://donutgames.com/index.php">on their website</a>, where they can be played for free. With a arcade-like menu and three-star rating system for the levels in all their games, Donut Games has earned a large fanbase by consistently providing simple, quick experiences that draw players in for more, usually with a focus on increasing high scores.</p>
<p>I got the chance to find out a little bit more about one of the important faces behind the company, Daniel Zandelin, one of the founders of Donut Games.</p>
<p><span id="more-31483"></span><strong>Touch Arcade:</strong> What is the history of Donut Games as a company?</p>
<p><strong>Daniel Zandelin: </strong>We're a small team of game enthusiasts, with roots going back to the good old days when the 8 and 16-bit gaming systems evolved. As a kid in the '80s I was quickly sucked into the intriguing gaming world of the Commodore 64, and together with my older brother, Ola, I grew an early interest of developing our own games, which lead to a bunch of quirky, buggy BASIC-games. Many years (and programming languages for that matter) later, in 2003, Ola started his own indie company to develop shareware games, and a couple of months later I quit my current job to join him.</p>
<p>The shareware market, which had just started to transform into the casual games market, was a blast! You could be a small team of 2-5 people and release quick, innovative downloadable games on the internet without the need for large budgets, and our titles (which we released under the Arcade Lab brand) were very well receieved.</p>
<p>As the casual games space and its portals grew more mature, productions grew bigger and a few certain genres got established and didn't leave much room for creativity or variety. So in 2006 we launched DonutGames.com, which started off as site for our Flash games. This project would give us our much needed room to play with new concepts and try out new ideas or whatever fun or crazy thing that popped into mind. When Apple announced the AppStore in 2008 and we started to dig deeper into the specs and SDK, we realizied this was the perfect platform for us: a device that you can carry with you anywhere you go, a store that is open for all and an excellent hardware to build your apps upon.</p>
<p><a href="http://toucharcade.com/wp-content/uploads/2010/02/CR1.png"><img class="size-full wp-image-31484" title="CR1" src="http://toucharcade.com/wp-content/uploads/2010/02/CR1.png" alt="" width="480" height="320" /></a><br />
<em>Comet Racer, one of our favorite creations from Donut Games</em></p>
<p><strong>Touch Arcade:</strong> What exactly is your role within Donut Games? Could you tell us about some examples of your contributions to some of the company's games?</p>
<p><strong>Daniel Zandelin:</strong> My role differs from one game to another, but my main areas of involvement are programming, sounds and last minute tweaking. The creation of a Donut game typically follows this flow: Ola, the concept master mind, brings up a new idea for a game, decides a theme to go with, and creates a mock-up of the basic artwork needed to get started. A programmer picks up the game and makes it playable, and we evaluate the result to see which elements are in place and what can be improved.</p>
<p>Once the basics are in, the level designers start working on the levels, and may eventually request more features from the programmer. In the last phase, I start working on the music and sounds. Once they're in, it's time for the final tweaking, which may or may not include additional visual effects, an extra mini game, and other last minute adjustments to make the game feel more solid. Simply put, Ola starts off the games, I finish them, and the whole Donut team is involved in the in-between.</p>
<p><strong>Touch Arcade: </strong>What's the weirdest thing that has ever happened to you during your time with Donut Games?</p>
<p><strong>Daniel Zandelin: </strong>This happens occasionally: When I'm sitting in a public place and a stranger next to me picks up an iPhone and after a few seconds I realize they just launched a Donut game. It's a weird feeling!</p>
<p><a href="http://toucharcade.com/wp-content/uploads/2010/02/RatOnAScooterXL_screen_02_premium.jpg"><img class="size-full wp-image-31486 " title="RatOnAScooterXL_screen_02_premium" src="http://toucharcade.com/wp-content/uploads/2010/02/RatOnAScooterXL_screen_02_premium.jpg" alt="" width="480" height="320" /></a><br />
<em>Rat On A Scooter XL, one of Donut Game's biggest sellers </em></p>
<p><strong>Touch Arcade:</strong> If you had an unlimited budget to create an iPhone game, what sort of game would you make?</p>
<p><strong>Daniel Zandelin: </strong>Back in the '90s, me and my brother started working on a really whacky point-and-click game for the Amiga in which players controlled a crazy kid with long greasy hair called Matthew. I don't remember all of the details of the story that we came up with for the game, but Matthew owned a tiny, aggressive poodle and had a secret band in his cellar together with his best friend who owned a shabby old Hammond organ. It would play like a “Get item A to unlock item B, use item B to find item C” sort of game, but instead of logical puzzles it would involve things like flushing yourself down the toilet to find certain items. I'm not sure everyone would appreciate a game like that for the iPhone, but if money was no issue it sure would be fun to bring this old concept to reality.</p>
<p><strong>Touch Arcade: </strong>What is something that you'd personally like to do in a future game release?</p>
<p><strong>Daniel Zandelin: </strong>I know that this may sound dull, but I'd like to continue with what we're currently doing. We have great fun creating these games, our model works really well for us and our fans seem to enjoy what we're doing.</p>
<p><em>Thanks Daniel. Check out <a href="http://toucharcade.com/link/http://itunes.apple.com/us/artist/donut-games/id310068844">Donut Games' catalog</a> on the App Store. Daniel is username <a href="http://forums.toucharcade.com/member.php?u=19556">DonutGames</a> on our forums.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://toucharcade.com/2010/02/05/developer-profile-daniel-zandelin-of-donut-games/feed/</wfw:commentRss>
		<slash:comments>77</slash:comments>
		</item>
		<item>
		<title>Christian Whitehead On 'Sonic CD' and His Retro Engine</title>
		<link>http://toucharcade.com/2009/07/29/christian-whitehead-on-sonic-cd-and-his-retro-engine/</link>
		<comments>http://toucharcade.com/2009/07/29/christian-whitehead-on-sonic-cd-and-his-retro-engine/#comments</comments>
		<pubDate>Wed, 29 Jul 2009 04:42:41 +0000</pubDate>
		<dc:creator>Eli Hodapp</dc:creator>
				<category><![CDATA[Action]]></category>
		<category><![CDATA[Adventure]]></category>
		<category><![CDATA[Developer Corner]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[iPhone games]]></category>
		<category><![CDATA[iPod touch games]]></category>
		<category><![CDATA[Platform]]></category>
		<category><![CDATA[Upcoming Games]]></category>

		<guid isPermaLink="false">http://toucharcade.com/?p=14762</guid>
		<description><![CDATA[This certainly has been an interesting last couple of days, between Sega's challenge to gamers to come up with what game to make next and then Christian Whitehead's surprise response unveiling a remarkable Sonic CD proof of concept port created with his own Retro Engine Development Kit. Eager to know more about both Sonic CD [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://toucharcade.com/wp-content/uploads/2009/07/sonic_cd_title.gif"><img src="http://toucharcade.com/wp-content/uploads/2009/07/sonic_cd_title-300x210.gif" alt="sonic_cd_title" title="sonic_cd_title" width="300" height="210" class="alignright size-medium wp-image-14769" /></a>This certainly has been an interesting last couple of days, between <a href="http://toucharcade.com/2009/07/27/sega-asks-what-should-they-bring-to-the-iphone-next/">Sega's challenge to gamers</a> to come up with what game to make next and then <a href="http://toucharcade.com/2009/07/28/sonic-cd/">Christian Whitehead's surprise response</a> unveiling a remarkable <em>Sonic CD</em> proof of concept port created with his own Retro Engine Development Kit.</p>
<p>Eager to know more about both <em>Sonic CD</em> and the <a href="http://www.christianwhitehead.com/soniccd/view.html">iPhone Retro Engine and Retro Engine Development Kit</a> (or RDSK), we fired off a series of questions. The interview is totally worth a read, but beware, it will only make you want <em>Sonic CD</em> and other games produced by the RDSK even more.</p>
<hr width="50%">
<p><strong>Eli Hodapp</strong>: How flexible is the RSDK? Is it tied to a game like <em>Sonic</em> or would something like <em>Castlevania</em> with RPG elements be possible?</p>
<p><strong>Christian Whitehead</strong>: All of the actual <em>Sonic CD</em> logic is script driven, so the Retro Engine is more than capable of different styles of gameplay. A game like <em>Castlevania</em> would definitely be possible, since the engine excels at handling 2D side scrollers. Stuff like top down RPG's would be fine too, I wouldn't count it on doing something like a full on 3D racing game though!</p>
<p><span id="more-14762"></span>
<p align="center"><a href="http://toucharcade.com/wp-content/uploads/2009/07/rsdk1.png"><img src="http://toucharcade.com/wp-content/uploads/2009/07/rsdk1-1024x570.png" alt="rsdk1" title="rsdk1" width="500" class="alignright size-large wp-image-14771" /></a></p>
<p><strong>EH</strong>: What is involved in building a game in the RDSK? Does the it somehow interpret the ROM file to generate levels and sprites automatically? Can you tell us how closely your RSDK relates to the original ROM code? </p>
<p><strong>CW</strong>: Using clean reverse engineering, I've been able to extract the level layouts and sprites in a pretty automated fashion. The formats in Sonic CD (especially the PC version) were pretty easy to deduce. I haven't touched the original ROM code though... I don't have that level of understanding of Motorola 68k assembly.</p>
<p><strong>EH</strong>: How much research did you do on the <em>Sonic CD</em> game? The physics in your demo look spot on, what was the trick behind that? </p>
<p><strong>CW</strong>: Quite a lot to be honest, it owes much to my many years as a Sonic fan. If you go to <a href="http://www.sonicretro.org/">http://www.sonicretro.org/</a> you'll see a community that's very interested in dissecting the original games. That's why the demo was made in a short time, I know Sonic inside out, and so have a very clear understanding as to how it can be recreated. It involved a lot of frame by frame analysis of the game running in an emulator to observe how the game (and all its objects) behaves in detail. I could go on and on, but y'know... trade secrets? <img src='http://toucharcade.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><a href="http://toucharcade.com/wp-content/uploads/2009/07/rsdk2.png"><img src="http://toucharcade.com/wp-content/uploads/2009/07/rsdk2-300x167.png" alt="rsdk2" title="rsdk2" width="300" height="167" class="alignleft size-medium wp-image-14773" /></a><strong>EH</strong>: On your site you mention putting together the Sonic CD proof of concept in a month. Does that count development of the Retro Engine and RSDK, if not, how long did those take you to do? </p>
<p><strong>CW</strong>: Officially, the Retro Engine and RSDK have been in development since March 2008. However, the iPhone version of the engine actually only took a week to set up!</p>
<p><strong>EH</strong>: During your month long process of porting what you have so far of Sonic CD, what was your average work day like? </p>
<p><strong>CW</strong>: I'm a freelancer and a musician too, so it was sort of in between a lot of this stuff. Lot's of late nights, and giving up partying! But yeah, it certainly wasn't some insane crunch period you hear about at some of the big name studios.</p>
<p><strong>EH</strong>: What is the work flow of starting a new game in the RSDK? Say you wanted to remake <em>Gunstar Heroes</em>, what would be involved?</p>
<p><strong>CW</strong>: To create a game like <em>Gunstar Heroes</em>, or to literally port it? Obviously a literal port requires a degree of reverse engineering to find out how stuff like level layouts and sprites can be extracted first. But creating a new game in the style of <em>Gunstar Heroes</em> would just be a normal game development process. One thing I want to make very clear: The Retro Engine and RSDK are not magic, it will NOT instantly port a game for you (or toast your bread either). All it does is provide a fast and efficient 2D framework, which has features very similar to what were present in many 2D games of the 'golden' 16 and early 32 bit era along with a nice editors and powerful scripting system. It takes the hassle out of having to set up API's, you can just get down to business.</p>
<p align="center"><a href="http://toucharcade.com/wp-content/uploads/2009/07/rsdk3.png"><img src="http://toucharcade.com/wp-content/uploads/2009/07/rsdk3-1024x570.png" alt="rsdk3" title="rsdk3" width="500" class="aligncenter size-large wp-image-14775" /></a></p>
<p><strong>EH</strong>: What are your plans for the future with the RSDK? Has Sega been receptive to your <em>Sonic CD</em> demo? Ideally would you want to sell them the RSDK technology or just a perfectly ported copy of the game?</p>
<p><strong>CW</strong>: Personally, I'm only marketing end product <em>Sonic CD</em> to SEGA, not the actual engine. I'm proud of my work and it'd be a shame to let it go and not be able to develop it further for my own future endeavors. The pitch was made to Sega about 2 weeks ago, and after an initial response, I hadn't heard back until they made that blog post. That's what made me decide to show it publicly, they asked what to port and I wanted them to see a clear answer.</p>
<p><a href="http://toucharcade.com/wp-content/uploads/2009/07/ddici_01.gif"><img src="http://toucharcade.com/wp-content/uploads/2009/07/ddici_01-300x187.gif" alt="ddici_01" title="ddici_01" width="300" height="187" class="alignright size-medium wp-image-14778" /></a><strong>EH</strong>: In 1990, John Carmack and Tom Hall built a similar demonstration based on their own game engine running the first level of <em>Super Mario 3</em> titled "<a href="http://www.youtube.com/watch?v=cj4HJkeQSg0"><em>Dangerous Dave in Copyright Infringement</em></a>." Nintendo politely refused their offers to make a <em>Super Mario</em> port for the PC and they went on to use that same engine for <em><a href="http://en.wikipedia.org/wiki/Commander_Keen">Commander Keen</a></em>. Do you have any similar contingency plans if Sega gives you the cold shoulder and/or sends you a cease and desist?</p>
<p><strong>CW</strong>: Gary the Porcupine anyone?... Seriously though, I do have my own game ideas that I'll be pursuing if this all folds up. I really like the iPhone as a gaming platform, so it wouldn't be the last you'd hear from me.</p>
<hr width="50%">
<p>And there you have it! Sounds like amazing technology, and I can't wait to play a game built with it whether it's <em>Sonic CD</em> or some other game. Since we first posted about it, their <a href="http://blogs.sega.com/usa/2009/07/27/community-brainstorm-we-want-your-iphone-game-ideas/">comments</a> have been flooded by people demanding <em>Sonic CD</em>. If you want to see Sega explore the Retro Engine instead of their current barely-playable emulator, let them know.</p>
]]></content:encoded>
			<wfw:commentRss>http://toucharcade.com/2009/07/29/christian-whitehead-on-sonic-cd-and-his-retro-engine/feed/</wfw:commentRss>
		<slash:comments>45</slash:comments>
		</item>
		<item>
		<title>Dev Corner: Mark Andersson on Freeverse's Flick Baseball</title>
		<link>http://toucharcade.com/2009/03/06/dev-corner-mark-andersson-on-freeverses-flick-baseball/</link>
		<comments>http://toucharcade.com/2009/03/06/dev-corner-mark-andersson-on-freeverses-flick-baseball/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 22:02:06 +0000</pubDate>
		<dc:creator>arn</dc:creator>
				<category><![CDATA[Developer Corner]]></category>
		<category><![CDATA[Exclusives]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Upcoming Games]]></category>

		<guid isPermaLink="false">http://toucharcade.com/?p=1992</guid>
		<description><![CDATA[This is a developer guest post written by Freeverse's Mark Andersson and details some of the design challenges in Freeverse's upcoming Flick Baseball game. While the content is aimed more at developers, it also provides fans an early peek at this upcoming game. My name is Mark Andersson, and I have been working with Freeverse [...]]]></description>
			<content:encoded><![CDATA[<p><em>This is a developer guest post written by Freeverse's Mark Andersson and details some of the design challenges in Freeverse's upcoming <em>Flick Baseball</em> game.  While the content is aimed more at developers, it also provides fans an early peek at this upcoming game.</em></p>
<p><a href='http://toucharcade.com/wp-content/uploads/2009/03/markandersson.jpg'><img src="http://toucharcade.com/wp-content/uploads/2009/03/markandersson.jpg" alt="" title="markandersson" width="256" height="256" class="alignright size-medium wp-image-1994" /></a></a>My name is Mark Andersson, and I have been working with <a href="http://www.freeverse.com">Freeverse</a> for over a decade. I was the Lead Programmer for <em>Burning Monkey Puzzle Lab</em>, <em>Burning Monkey Casino</em>, <em>Wingnuts</em>, <em>Wingnuts 2: Raina's Revenge</em> and <em>Neon Tango</em>. Most recently I've been working on games for the iPhone, and developing versions of <em>Burning Monkey Puzzle Lab</em> and <em>Burning Monkey Casino</em>. </p>
<p>In that effort big chunks of code came over from the original Mac versions largely unchanged, making development on the iPhone that much easier. You really can consider the iPhone platform to be like a tiny Mac, which is great for old-school Mac developers like me and the other Freeverse guys. The real effort goes into rethinking the interface for the smaller screen and the innovative control methods, and of course maximizing performance within the limitations of the hardware.</p>
<p><center><a href='http://toucharcade.com/wp-content/uploads/2009/03/image-3-1.png'><img src="http://toucharcade.com/wp-content/uploads/2009/03/image-3-1.png" alt="" title="image-3-1" width="489" height="318" class="aligncenter size-full wp-image-1993" /></a><br />
<small>early development shot of Flick Baseball</small></center></p>
<p>My current project for Freeverse is an original, ground-up, iPhone game and the next title in the Flick Sports series: <em>Flick Baseball</em>. So when you're not bowling or fishing you will be able to enjoy America's favorite pastime in your pocket! (Hmmm... that didn't come out quite right)...  In this post I hope to give you some behind-the-scenes peeks at the game during development and touch on some hopefully interesting aspects of the process.</p>
<p><span id="more-1992"></span><b>Scope of Gameplay</b></p>
<p>The first design challenge in <em>Flick Baseball</em> was trying to determine the right mix of game depth and complexity while keeping intuitive mechanics and "pick-up and play" appeal. It's a tough problem, as baseball is a very intricate sport and that's part of its appeal. We think we've charted a course that gives the player the maximum freedom in choosing how they prefer to play, but I'm sure we'll be tweaking and making adjustments well into the testing phase.</p>
<p><em>Flick Baseball</em> will begin with the ability to pick a pre-made team or to customize the names of the players, edit their stats and even design their uniforms. You can then choose to play a single game against any other team, play an entire season, or just skip the hard work of the regular season and enter the post-season race with your team in the wild card slot. If you go through the regular season you'll be able to speed things up by skipping any games you feel like and letting the computer simulate the outcome.</p>
<p>We needed player-controlled batting, of course, but we also wanted to include pitching with some control over the pitch types. Your players will also have some individual statistics which may make them more able to get a hit or a home run, and we wanted to keep an element of strategic use of your lineup to try to get the best outcome possible. For example, if your pitcher gets up to bat you are likely not going to swing for the fences and instead may want to try a sacrifice bunt instead -- especially, if you have a runner on base and an out to spare.</p>
<p>What we did not want to do is include the ability to control absolutely every aspect of the game, which would slowg down the action and sacrifice fun for realism. So, stealing bases, controlling base running and dictating the movement and action of the fielders was dropped. With only touch controls and limited screen real estate, keeping out clutter and unnecessary complexity is a top priority.</p>
<p>While I played a few baseball games, including some really awful ones (yes, Ninja Baseball Bat Man, I'm looking at you), I wanted to avoid playing every game available out there because I did not want to subconsciously copy from them. Also, their input methods were universally very different from what the iPhone offers and implementing D-pads and virtual buttons on the device screen was not an option we wanted to explore.</p>
<p><b>Prototyping</b></p>
<p>During initial prototyping, I worked on the basic setup and engine and used 3D animation built for <em>Moto Chaser</em> and <em>Flick Bowling</em>. I started out by implementing batting practice to get a feel for animation, timing and ball simulation.</p>
<p><center><a href='http://toucharcade.com/wp-content/uploads/2009/03/flick-baseball.jpg'><img src="http://toucharcade.com/wp-content/uploads/2009/03/flick-baseball.jpg" alt="" title="flick-baseball" width="500" height="263" class="aligncenter size-full wp-image-1995" /></a></center></p>
<p><b>The Sequencer</b></p>
<p>We decided early on that we wanted as many CPU cycles as possible dedicated to graphics and sound processing. So, we are not going to take all nine fielders and give them each complex artificial software brains so they can work intelligently as a team. Instead, we realized that you can figure out a set of possible realistic outcomes when a hit occurs. For example, one of these could be a line drive that goes over the shortstop's head but drops down before the left fielder can get it, and results in all base runners advancing a single base. Others are even simpler, such as foul balls and home runs.</p>
<p>So with a large enough set of these outcomes you would be able to put together a realistic game. You will be able to pitch or bat and your inputs will determine the possible set of outcomes, but once the computer figures out how the play will proceed, a sequence of actions will take place that has been predetermined to some extent. However, there is still a real time simulation of the ball motion and the fielder actions. So it's not a movie clip like in Dragon Slayer.</p>
<p>The way this works is that there is a sequencer that can be issued commands. These can be stacked up and then the sequencer will go through them and take the appropriate action, which is really delegating the command to the various independent controllers for the ball, the fielders, the runners and the camera.</p>
<p>So the sequence for an easy grounder to the shortstop who throws the ball to first to get an out might consist of:</p>
<p>1. Set the initial velocity and angle of the ball to go towards the shortstop but roll along the ground.<br />
2. Tell the short stop to move to intercept the ball and stop it when it gets to him.<br />
3. Tell the first baseman to start moving towards first base.<br />
4. Wait until the short stop has the ball.<br />
5. Tell the short stop to throw the ball to first base.<br />
6. Set the velocity of the ball so that it arrives at catching height at first base.<br />
7. Tell the first baseman to catch the ball.<br />
8. Wait until the first baseman catches the ball to report the outcome and end the play.</p>
<p>Within this framework I ended up adding other niceties, such as being able to set a delay to wait before the next command is processed, as well as telling fielders not directly involved in a play to rotate to face the ball. If the command is not a time delay or waiting for a fielder, they are processed and removed from the queue during the same animation frame.</p>
<p>I have also been implementing a number of camera commands, such as moving the camera to another location, either instantly to simulate a cut to another camera or gradually as if the camera were on a giant moving boom. There are also commands to point the camera at any fielder or base or follow the ball and change the field of view to simulate zooming.</p>
<p>This can get complicated quickly if you want to be able to control everything, but the most important part is to make sure that things from the camera point of view look good and you can see the action.</p>
<p>In order to perform the simulation of the sequences in a controlled environment, I am working on the various controller objects using g++ in Unix and staying away from Xcode for the time being. I need to make sure the outcomes are working properly before trying to debug other aspects of the game on the device. So, for now I am simulating the game frame by frame and outputting visualizing objects in POV-Ray files. I am moving the camera around as it would be on the real device so I can get a sense for how things might look and how the timing is working.</p>
<p>In the following movie example, using little monoliths for the players, the batter hits the ball towards the shortstop, who fields the grounder, lobs the ball to the second baseman who then turns and quickly throws it to first base for a double play. There are about 30 sequencer commands right now to implement this sequence, although there are few extra ones to simulate a pitch right now. About a third are dedicated to camera movements and timing.</p>
<p><center><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/mJyJ7UUy6qU&#038;hl=en&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/mJyJ7UUy6qU&#038;hl=en&#038;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></center></p>
<p>The red boxes are the inactive fielders, while green indicates fielders that are doing something, either moving, waiting for the ball, or just facing the ball in the case of the third baseman for example. The yellow boxes are the active runners.</p>
<p>That's it for this edition, but feel free to ask questions and comment about anything you like.  I'll also be on the TouchArcade forums (username <a href="http://forums.toucharcade.com/member.php?u=5810">hellosh</a>) so you can reach me there too.</p>
]]></content:encoded>
			<wfw:commentRss>http://toucharcade.com/2009/03/06/dev-corner-mark-andersson-on-freeverses-flick-baseball/feed/</wfw:commentRss>
		<slash:comments>48</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using memcached
Page Caching using memcached
Database Caching 1/27 queries in 0.017 seconds using memcached
Object Caching 403/446 objects using memcached

Served from: toucharcade.com @ 2012-02-09 20:07:27 -->
