<?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>Zachernuk.com &#187; Games</title>
	<atom:link href="http://www.zachernuk.com/category/games/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.zachernuk.com</link>
	<description>The desk of Brandel Zachernuk</description>
	<lastBuildDate>Thu, 02 Feb 2012 22:36:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Review of Empires &amp; Allies &#8211; the good bits</title>
		<link>http://www.zachernuk.com/2011/07/16/review-of-empires-allies-the-good-bits/</link>
		<comments>http://www.zachernuk.com/2011/07/16/review-of-empires-allies-the-good-bits/#comments</comments>
		<pubDate>Sat, 16 Jul 2011 10:19:30 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[allies]]></category>
		<category><![CDATA[critique]]></category>
		<category><![CDATA[Empires]]></category>
		<category><![CDATA[Empires & Allies]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[facebook game]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[online]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[social game]]></category>
		<category><![CDATA[social media]]></category>
		<category><![CDATA[strategy]]></category>
		<category><![CDATA[zynga]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=943</guid>
		<description><![CDATA[Last month Zynga released Empires &#38; Allies, a social game about warfare and militarism. I started playing on release day and it&#8217;s surprisingly complex and entertaining &#8211; so far I&#8217;m really impressed. The game has strategic elements that haven&#8217;t been present in any other game on Facebook, and it facilitates interaction between players that has [...]]]></description>
			<content:encoded><![CDATA[<p>Last month Zynga released Empires &amp; Allies, a social game about warfare and militarism. I started playing on release day and it&#8217;s surprisingly complex and entertaining &#8211; so far I&#8217;m really impressed. The game has strategic elements that haven&#8217;t been present in any other game on Facebook, and it facilitates interaction between players that has a real, lasting impact. It also explores much darker subject matter than Zynga generally goes for. Because of this, they&#8217;ve had to tread carefully, with some mixed results. There&#8217;s a lot to talk about, so my discussion of the game will be spread over a couple posts. This post will cover what I like about it.</p>
<p><strong>The Metanarrative</strong></p>
<p>The game is framed in an overarching narrative that gives everyone a sense of purpose &#8211; a story about military defence against an overwhelmingly powerful enemy. You&#8217;re put in charge of a small, sparsely populated island that has just been bombed by a group called  &#8221;The Dark Alliance.&#8221; You&#8217;re led carefully through the initial part of the game by tutorials framed in this narrative. Even after learning the ropes, the story still guides you, with three or four missions related to an aspect of your island&#8217;s development. Having a broad and inclusive enough plot to frame the activity is important, because players need to feel like they&#8217;re bringing something of their own to the world. However, if the plot is too vague, the player&#8217;s actions become meaningless. It&#8217;s a difficult balance to strike and Empires &amp; Allies has done it well.<br />
<strong></strong></p>
<p><strong>Managing the resources takes strategy and skill</strong></p>
<p>Empires &amp; Allies has in-game currency, two primary resources, and four metals. Money comes from farms and houses, oil and lumber come from wells and mills, and metal comes from mines. The player selects a &#8216;production contract&#8217; with a cost in time and money for a specified amount of a resource, e.g. you might pay $200 to get 10 oil in 5 minutes. Shorter contracts have greater payoff, but are more demanding on the player&#8217;s energy. In addition, a player has access to only one kind of metal on their island, e.g. you might have iron and your friend may have copper. It&#8217;s possible to purchase metals for in-game money, but it&#8217;s vastly cheaper to make more of your own metal and trade your excess with friends for their surplus. This trade system is a great reason for interacting with other players, and is a welcome departure from the social incentives offered in previous games. In earlier Facebook games, many items necessary for progress could only be obtained by receiving them as &#8216;gifts&#8217;, but those gifts were completely free to send, undermining any notion of scarcity and the strategy that comes with it.<br />
<strong></strong></p>
<p><strong>The wither mechanic is (nearly) gone</strong></p>
<p>Zynga caught a lot of flak for this one since they introduced it in Farmville. If you planted a crop that took 6 hours to harvest, and didn&#8217;t return within 12 hours, the crop would &#8220;wither&#8221; and the ruined crop would remain as a blight on your farm. Not only was your money wasted, others would be able to see that you were a neglectful virtual farmer. The response was polarizing &#8211; many people accepted it as reasonable, and arranged their lives around making sure they could make it home in time to tend their crops.  Others called the mechanism manipulative (or were embarrassed by their ruined raspberries) and refused to play along. However, with each game released since, Zynga have introduced more forgiving measures. They&#8217;ve increased the time that the player has to collect resources after maturation, and allowed your friends to intervene and &#8216;un-wither&#8217; crops &#8211; an excellent social feature, even if a little unrealistic. For the first few weeks I had actually thought that the wither mechanism was entirely gone. It turned out that the time-scales have shifted so that it appears less as a punitive measure than a natural outcome of leaving one&#8217;s crops for too long, which is less offensively intrusive.<br />
<strong></strong></p>
<p><strong>Combat is more than just clicking a button</strong></p>
<p>In most social games, the outcome of the player&#8217;s actions have about as much strategy as a coin toss, but Empires &amp; Allies is a little more complicated than that. There are land, sea, and air units, and three classes of unit per terrain type. These units follow a paper-scissors-rock pattern for dominance. In preparation for a battle, you first choose the terrain type and then the specific units for that terrain, e.g. if you choose air then you might select a bomber, some fighter jets, and a helicopter. For story missions it is necessary to enlist friends as &#8216;allies&#8217; who can be called on in battle. Doing so will give you a randomly-selected powerup, such as field repairs on your vehicles or an air strike against the enemy&#8217;s forces. What is available through your allies is determined by their level of experience, and the balance of their &#8220;infamy&#8221; and &#8220;honour&#8221; ratings. This results in your play style having an impact on how others benefit from you, even without your explicit involvement in the battle.<br />
<strong></strong></p>
<p><strong>Infamy and Honour</strong></p>
<p>Your levels of infamy and honour are determined by the kind of involvement you have with your friends in the game. If you visit their islands and assist their efforts, you&#8217;re rewarded with &#8216;honour&#8217;, which gives you experience and means that when called upon as an ally, your bonuses are biased toward constructive, defensive powerups. If you invade and plunder their lands, though, your &#8216;infamy&#8217; level rises &#8211; which also gives you experience, but means that your powerups are biased toward attacking, destructive ones. Infamy probably results in a greater XP payoff, but comes at a material cost through the risk of losing your military forces in the invasion, as well the fact that your friends will be less likely to cooperate in future. The sting of being invaded isn&#8217;t quite sharp as it could be, though &#8211; it&#8217;s still possible to go about your business; it just takes more energy to do so.<br />
<strong></strong></p>
<p><strong>Collections are a thing of the past</strong></p>
<p>Collecting sets is one of the central features of Mafia Wars and many other games on Facebook. While I don&#8217;t mind it as a mechanic, it is often used to gloss over an inherent shallowness in the game &#8211; objects are desirable simply for the sake of possessing them, there are no costs to possessing more, and the only difference between one item and the next is its name perhaps a small icon. This feature is entirely gone in Empires &amp; Allies. A player could<em> </em>collect all of the kinds of tanks, or plant all of the different crops to make a picture with the harvest &#8211; but the items have an intrinsic utility in the game, and goals like this are imposed solely by the player for the sake of self-expression. When Zynga makes a game complex enough that there is a genuine reason to obtain a full complement of Civil War moustaches, I&#8217;ll welcome the collection system back with open arms, but in the meantime I am happy to see it go.<br />
<strong></strong></p>
<p><strong>So far, so good!</strong></p>
<p>Between these features, there&#8217;s a lot that is new and interesting. Many of the shallow and manipulative features are totally gone, and others are toned down significantly. It&#8217;s not perfect, though, and while some of the problems simply come about because of the game&#8217;s target market and the Facebook platform, it&#8217;s worth examining them to see if anything can be done to improve the game. I&#8217;ll go through those problematic features &#8211; and some proposed solutions &#8211; in an upcoming post.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2011/07/16/review-of-empires-allies-the-good-bits/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DIY Escher Tiles</title>
		<link>http://www.zachernuk.com/2011/04/24/diy-escher-tiles/</link>
		<comments>http://www.zachernuk.com/2011/04/24/diy-escher-tiles/#comments</comments>
		<pubDate>Sun, 24 Apr 2011 09:21:06 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[doodles]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[opticks]]></category>
		<category><![CDATA[escher]]></category>
		<category><![CDATA[grid]]></category>
		<category><![CDATA[periodicity]]></category>
		<category><![CDATA[tessellation]]></category>
		<category><![CDATA[tile]]></category>
		<category><![CDATA[tiling]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=898</guid>
		<description><![CDATA[This is a tiling system!  Click-and-drag on the pulsing white line to add points to it, click on the colour swatches in the panel to assign different colours to the tiles, and have fun! 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_LTessellateur_1601894411"
			class="flashmovie"
			width="800"
			height="600">
	<param name="movie" value="http://www.zachernuk.com/wp-content/2011/04/LTessellateur.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://www.zachernuk.com/wp-content/2011/04/LTessellateur.swf"
			name="fm_LTessellateur_1601894411"
			width="800"
			height="600">
	<!--<![endif]-->
		 
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object> I&#8217;m a big fan of M.C. Escher&#8217;s work  - in particular the tessellations [...]]]></description>
			<content:encoded><![CDATA[<p>This is a tiling system!  Click-and-drag on the pulsing white line to add points to it, click on the colour swatches in the panel to assign different colours to the tiles, and have fun!</p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_LTessellateur_307195655"
			class="flashmovie"
			width="800"
			height="600">
	<param name="movie" value="http://www.zachernuk.com/wp-content/2011/04/LTessellateur.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://www.zachernuk.com/wp-content/2011/04/LTessellateur.swf"
			name="fm_LTessellateur_307195655"
			width="800"
			height="600">
	<!--<![endif]-->
		
<p><a href="http://adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
<p>I&#8217;m a big fan of <a href="http://en.wikipedia.org/wiki/M._C._Escher">M.C. Escher&#8217;s</a> work  - in particular the tessellations &#8211; and have always wanted to come up with a way to handle the difficult-but-mechanical task of making sure that the tiles actually match up properly.  It&#8217;s a reasonably simple problem, so while the internet was disconnected this weekend I tried to build it, and so far it seems to be working!  I&#8217;d be very interested in either animating a blend from one set of points to another, or blending over distance (like something in <a href="http://en.wikipedia.org/wiki/File:Escher,_Metamorphosis_III.jpg">Escher&#8217;s Metamorphosis</a> series.) In any case, I 1. Have had a  a great time with it and 2. thought other people would like it too.  I hope that that is the case!</p>
<div id="attachment_900" class="wp-caption alignnone" style="width: 495px"><img class="size-full wp-image-900" title="houses" src="http://www.zachernuk.com/wp-content/2011/04/houses.png" alt="" width="485" height="433" /><p class="wp-caption-text">Simple house tessellation</p></div>
<div id="attachment_901" class="wp-caption alignnone" style="width: 469px"><img class="size-full wp-image-901" title="tile1" src="http://www.zachernuk.com/wp-content/2011/04/tile1.png" alt="" width="459" height="409" /><p class="wp-caption-text">A lot of things end up looking like either fish or birds.  </p></div>
<p><a href="http://www.zachernuk.com/wp-content/2011/04/tiley.png"><img class="alignnone size-full wp-image-902" title="tiley" src="http://www.zachernuk.com/wp-content/2011/04/tiley.png" alt="" width="64" height="64" /></a> (and this is the icon for the page)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2011/04/24/diy-escher-tiles/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Javascript physics!</title>
		<link>http://www.zachernuk.com/2011/01/30/javascript-physics/</link>
		<comments>http://www.zachernuk.com/2011/01/30/javascript-physics/#comments</comments>
		<pubDate>Sun, 30 Jan 2011 05:12:29 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[doodles]]></category>
		<category><![CDATA[balls]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[physics]]></category>
		<category><![CDATA[simulation]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=747</guid>
		<description><![CDATA[A few years ago my friends Bill and Aidan and I started mucking about with the new javascript canvas class, and this is what we came up with. While there are other more robust physics engines out there &#8211; even in Javascript &#8211; it&#8217;s good to know how straightforward it is to get some of [...]]]></description>
			<content:encoded><![CDATA[<p>A few years ago my friends <a href="http://www.billsbooze.com" target="_blank" >Bill</a> and <a href="http://aidan.rfm.co.nz/blog" target="_blank" >Aidan</a> and I started mucking about with the new javascript canvas class, and this is what we came up with. While there are other more robust physics engines out there &#8211; even in <a href="http://box2d-js.sourceforge.net/" target="_blank" >Javascript</a> &#8211; it&#8217;s good to know how straightforward it is to get some of that behaviour working.  If for any reason you want to use this, please do!<br />
<br/></p>
<p><b>Usage:</b> Click and hold inside the grey square to create a ball.  The longer you hold down the mouse, the bigger the ball.  Click, drag around, and release a ball to &#8216;throw&#8217; it. You can change gravity and the drag coefficients by changing the numbers in the boxes below. Gravity can be any number, negative, positive or zero. Drag coefficient is only going to make sense as a number between 0 and 1. Greater than 1 means that energy is added to the system and things get a little crazy! <br/><br />
<b> Note: </b> to see this you will need to be using Firefox, Chrome or Opera. </p>
<p><script language="JavaScript" src="/wp-content/2011/01/ball.js"> </script><br />
 <canvas id="canvas" width="500" height="500" ></canvas></p>
<div id="debug"  style="background-color:#f0f0f0; width:300px;"> Click and drag inside this box to make a ball<br /> drag and release to move and throw a  ball.</div>
<div id="inputcontainers" style="border:thin solid black; width:200px;"> </div>
<p><b>Disclaimer:</b> Given that this was such a casual collaboration, please excuse the messiness of the code.  It was just the fastest way to get this kind of thing happening.  If you want a more coherent mechanism for control, Box2DJS is the way to go. </p>
<p><img src="http://www.zachernuk.com/wp-content/2011/01/2809594459_f716be8f5d_o.jpg" /><br />
<br/>(this is just so that a link to this post has a pretty picture to show!)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2011/01/30/javascript-physics/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>On Social Games: Moving beyond &#8216;weak social&#8217;</title>
		<link>http://www.zachernuk.com/2011/01/18/on-social-games-moving-beyond-weak-social/</link>
		<comments>http://www.zachernuk.com/2011/01/18/on-social-games-moving-beyond-weak-social/#comments</comments>
		<pubDate>Mon, 17 Jan 2011 22:16:00 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[alpha user]]></category>
		<category><![CDATA[ampu]]></category>
		<category><![CDATA[analysis]]></category>
		<category><![CDATA[arpu]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[connectedness]]></category>
		<category><![CDATA[connection]]></category>
		<category><![CDATA[datamining]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[graph]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[toothpick]]></category>
		<category><![CDATA[whale]]></category>
		<category><![CDATA[zynga]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=383</guid>
		<description><![CDATA[Update on the social gaming space A lot has happened to the social game space in the last year or so. Shortly after EA&#8217;s purchase of Playfish in 2009, a lot more developers began working on Facebook titles, and a number of new shops opened up to specifically target the platform. From the player&#8217;s perspective, [...]]]></description>
			<content:encoded><![CDATA[<h2>Update on the social gaming space</h2>
<p>A lot has happened to the social game space in the last year or so. Shortly after EA&#8217;s purchase of Playfish in 2009, a lot more developers began working on Facebook titles, and a number of new shops opened up to specifically target the platform. From the player&#8217;s perspective, there have been developments too &#8211; people are starting to scoff a little less at the idea of playing a game on Facebook as a legitimate activity, players have become increasingly comfortable with parting with money for the experience, and the more dubious methods for extracting revenue have largely fallen by the wayside.</p>
<h2>What about the <em>games</em>?</h2>
<p>These developments have more to do with the business imperative for games on Facebook, though, and less to do with what&#8217;s happening in the games themselves. On that front, things aren&#8217;t moving quite as fast. The bulk of the new games are generally functional copies of older ones, and even the more novel designs still feature a lot of plain <a href="http://en.wikipedia.org/wiki/Token_passing">token-passing</a> and <a href="http://en.wikipedia.org/wiki/Grinding_(video_gaming)">grind</a> for the sake of grind. In particular, very few games are making use of the fact that they&#8217;re connected to an enormously valuable data source: The social network.</p>
<h2>Making more out of the network</h2>
<p>Social networks typically have &#8220;a high degree of partial overlap&#8221;. A person has an average of about 150 friends, and might share 75 or so with their closest friend, 60 with the next-closest, and so on. By looking at these measures of overlap, as well as indicators like wall-to-wall messaging, we can build a picture of who these friends are and what a user&#8217;s relationship to them is. A game could exploit this by encouraging cooperation (or rivalry) with your closest friends, or encourage you to get back in contact with people you haven&#8217;t spoken to recently. Finding clumps of densely-connected people probably means you have a &#8216;clique&#8217; that might enjoy operating as a group in the game, and so group quests can be offered to them to encourage that participation.</p>
<h2>Good for business</h2>
<p>A better understanding of the of social connections &#8211; and quality of those connections &#8211; is going to be better for business, too. If a person has a higher friend count than the average friend count of <em>their</em> friends, they are generally a more influential person. If a &#8216;hub&#8217; user has good things to say about your game, that praise will go out to more people. In fact, if you want to get really sneaky, you can bias the game in favour of these users, giving them more free stuff and making things slightly easier for them.  It&#8217;s effectively making the game &#8216;cheaper&#8217; for them in recognition of the fact that they&#8217;re likely to increase the <a href="http://en.wikipedia.org/wiki/Average_revenue_per_user">Average Revenue Per-User</a> (ARPU) through encouraging others to play. From a marketing standpoint, they are essentially micro-advertisers rather than sources of revenue. This tactic is hardly new &#8211; the promotion strategy for the first commercially-available toothpicks consisted of giving free packs to influential students at Harvard University, with a special request that the toothpicks be used as conspicuously as possible. The field of Viral Marketing calls these people <a href="http://en.wikipedia.org/wiki/Social_marketing_intelligence#Alpha_Users">Alpha users</a>, though discussion seems to focus mainly on finding these users in the first place, rather than the tailoring of an adaptive system to bias alpha users in favour of it.</p>
<h2>Other types of users</h2>
<p>Another user of particular interest to social gaming is one who spends money on playing the game. These users are referred to as &#8220;Whales&#8221;<em>,</em> a term borrowed from the casino industry. In casinos, these people can often spend millions of dollars in a single visit. In social games, however, the figures are much more modest &#8211; a &#8220;Whale&#8221; is generally someone who spends around $20 per month. Often, though, it seems that players with money would be happy to spend a lot more. It would be possible to reveal progressively more extravagant purchases for a &#8220;Whale&#8221; to pick up, where the emphasis could shift from gameplay to collection and memorabilia. Examples could include a figurine of their in-game character, large-format schematics of a player&#8217;s farm/city/restaurant/etc, books that chronicle their progression through the game or simply an alternate electronic view of their game-worlds. As the top end of the available purchases climbs higher, the number of purchasers required to justify investment in them should hopefully decrease, since one purchase at a hundred dollars yields as much return as twenty purchases at five dollars.</p>
<p>While the discussion of these strategies here might seem cold, the role of the game designer is to pick methods for engaging the player, or <em>game mechanics</em>, that are appropriate both in the context of the underlying theme and in combination with one another. If used in the right context, a socially adaptive model can lead to a more personalized experience for individual players.  It can expose certain mechanics to people who are likely to appreciate them, and keep those mechanics out of way the for people who won&#8217;t. Everybody wins!</p>
<p>[UPDATE] It turns out that <a href="http://www.insidesocialgames.com/2010/09/10/zyngas-platinum-purchase-program/">Zynga does allow</a> users to spend a lot more than the $20/month figure, but it seems like people only have a good reason to do so in their Poker game. Since poker requires players to engage in oneupmanship in the form of ever-increasing bets, it&#8217;s not really making use of an adaptive model for determining the best way to make use of a user. Still, it&#8217;s very interesting to know that someone is offering players the opportunity to spend as much as they want &#8211; and that some players are doing just that!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2011/01/18/on-social-games-moving-beyond-weak-social/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>L-system in Unity3D, with Source</title>
		<link>http://www.zachernuk.com/2010/12/30/l-system-in-unity3d-with-source/</link>
		<comments>http://www.zachernuk.com/2010/12/30/l-system-in-unity3d-with-source/#comments</comments>
		<pubDate>Thu, 30 Dec 2010 04:24:50 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[unity]]></category>
		<category><![CDATA[fractal]]></category>
		<category><![CDATA[generative]]></category>
		<category><![CDATA[l-system]]></category>
		<category><![CDATA[Lsystem]]></category>
		<category><![CDATA[parameter]]></category>
		<category><![CDATA[parametric]]></category>
		<category><![CDATA[tree]]></category>
		<category><![CDATA[unity3d]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=723</guid>
		<description><![CDATA[Yesterday I was thinking about how to make a fun game about being a caterpillar, and came to the conclusion that the make or break would be in the trees.  Toward that end I wrote an L-system tree generator in Unity3D.  I&#8217;ve exposed a couple of variables so you can click on &#8216;em to change [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I was thinking about how to make a fun game about being a caterpillar, and came to the conclusion that the make or break would be in the trees.  Toward that end I wrote an L-system tree generator in Unity3D.  I&#8217;ve exposed a couple of variables so you can click on &#8216;em to change the rules that are being consulted to generate the tree.  Give it a try!</p>
<p><em>Please view the full post to see the Unity content.</em></p>
<h2>Technical details</h2>
<p>If you want the source code for this, you can grab it <a href="http://www.zachernuk.com/wp-content/2010/12/LTreeController.cs">here.</a></p>
<p>In the process of making this experiment, I discovered a couple things:  Establishing the parental hierarchy for objects in Unity3D by using  &lt;childNode&gt;.transform.parent = &lt;parentNode&gt;.transform  requires the additional re-zeroing of the localPosition, localEulerAngles and presumably localScale in order to take effect.  The assignment of the transform&#8217;s parent also updates the local values to preserve the current world-space orientation and scale of the transform.  I can see the argument for running things this way, but it wasn&#8217;t what I expected so it tripped me up for a while.</p>
<p><a href="http://www.zachernuk.com/wp-content/2010/12/treeee.png"><img title="treeee" src="http://www.zachernuk.com/wp-content/2010/12/treeee-300x281.png" alt="" width="300" height="281" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2010/12/30/l-system-in-unity3d-with-source/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Developing Broadband IO</title>
		<link>http://www.zachernuk.com/2010/11/13/developing-broadband-io/</link>
		<comments>http://www.zachernuk.com/2010/11/13/developing-broadband-io/#comments</comments>
		<pubDate>Sat, 13 Nov 2010 02:11:18 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[doodles]]></category>
		<category><![CDATA[analysis]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[gaming]]></category>
		<category><![CDATA[mic]]></category>
		<category><![CDATA[microphone]]></category>
		<category><![CDATA[singstar]]></category>
		<category><![CDATA[spectral]]></category>
		<category><![CDATA[spectrum]]></category>
		<category><![CDATA[voice]]></category>
		<category><![CDATA[voiceprint]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=675</guid>
		<description><![CDATA[This is the game!  No keys, no mouse &#8211; just whistle to move the cat up and down.  The higher the pitch, the higher the balloon, and the lower the pitch, the lower.  Try to catch the yellow dots and see how far you can get! NOTE: This requires Flash player 10.1, a very recent update &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p>This is the game!  No keys, no mouse &#8211; just whistle to move the cat up and down.  The higher the pitch, the higher the balloon, and the lower the pitch, the lower.  Try to catch the yellow dots and see how far you can get!</p>
<p>NOTE: This requires <a href="http://labs.adobe.com/downloads/flashplayer10.html">Flash player 10.1</a>, a very recent update &#8211; if it isn&#8217;t working, chances are <a href="http://labs.adobe.com/downloads/flashplayer10.html">you&#8217;ll have to grab it from here</a>.  Due to feedback issues you might want to mute your system while it&#8217;s playing.</p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_Singstart-1_1467255758"
			class="flashmovie"
			width="620"
			height="400">
	<param name="movie" value="http://www.zachernuk.com/wp-content/2010/11/Singstart-1.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://www.zachernuk.com/wp-content/2010/11/Singstart-1.swf"
			name="fm_Singstart-1_1467255758"
			width="620"
			height="400">
	<!--<![endif]-->
		
<p><a href="http://adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
<p><span style="color: #800000;">UPDATE</span>: This also suffers from the &#8216;default input device&#8217; problem that my webcam <a href="http://www.zachernuk.com/experiments">experiments</a> experience &#8211; in order to get this to work, you&#8217;ll need to open the &#8216;settings&#8217; panel by right-clicking and selecting the microphone icon.</p>
<div id="attachment_696" class="wp-caption alignnone" style="width: 294px"><a href="http://www.zachernuk.com/wp-content/2010/11/mic-settings.gif"><img class="size-full wp-image-696" title="mic-settings" src="http://www.zachernuk.com/wp-content/2010/11/mic-settings.gif" alt="" width="284" height="195" /></a><p class="wp-caption-text">Select this section and check that the right mic is selected.</p></div>
<p>I just got back from <a href="http://www.animfxnz.com/index.php">AnimFX </a>10 this weekend, and it was a fantastic experience!  It was a great opportunity to learn about what Zynga thinks about their games, how Popcap manages to polish the way it does and what the pipeline for making a film like Avatar looks like.  I&#8217;ve taken lots of notes on the sessions and will do a more complete write-up of the sessions that I have something to say about, but for now I&#8217;d like to thank the speakers and the GAV NZ Trust for putting on such a great show, and all the attendees from all around NZ and Australia -it&#8217;s fantastic to know that there is such a talented and interesting community of people here working on such fun stuff!</p>
<p>Since the first time I started thinking about game design (admittedly only in about 2004), I have been interested in what happens when you break convention.  How do you make a first-person shooter from the perspective of a blind person?  How can you play a game without moving a mouse or pressing any buttons?  What do we have access to that we could try to read information from that people can use in a game? The bandwidth, or amount of information that can be transmitted back and forth between a computer and a person is determined by the Input-Output systems available (IO).  In future, we will hopefully have access to facial recognition, galvanic skin response and, eventually, brainwaves &#8211; although at this point it&#8217;s anybody&#8217;s guess how to make sense of them!</p>
<p>In the meantime, without bolting extra sensors on to a computer system, the range of input mechanisms is somewhat more limited.  We can at least play around with what&#8217;s generally available, though.   One thing that I&#8217;ve always been interested in is making use of voice input to play a game &#8211; and not necessarily a game about singing, either.  The way I see it, the voice can represent at least three different values at once (pitch, volume and &#8216;envelope&#8217; &#8211; basically <a href="http://en.wikipedia.org/wiki/Formant">the vowel sound</a>).  In theory, you&#8217;d be able to control each aspect independently, and have a continuous, three-dimensional mode of input even before you touched a button!   If people got precise with it, it could be a way of learning how to form certain sounds, develop a sense of rhythm, or learn perfect pitch &#8211; It&#8217;s a long shot but there&#8217;s only one way to find out!</p>
<div class="wp-caption alignnone" style="width: 441px"><a href="http://en.wikipedia.org/wiki/Spectrogram"><img src="http://upload.wikimedia.org/wikipedia/commons/6/6c/Dolphin1.jpg" alt="" width="431" height="324" /></a><p class="wp-caption-text"> Spectrogram of Dolphin Clicks, Whistles, and whines (Wikipedia)</p></div>
<p>As a starting point, the relatively recent update of Adobe Flash Player to version 10.1 has exposed the actual waveform data that gets taken in from a microphone feed.  This means that we can start trying to look at that wave data and look not just at the volume, but <em>everything </em> about it.  I&#8217;ve made a super-simple prototype that takes in the voiceprint, picks the loudest overtone and lets us see it.  In this case I have made it specify the altitude of an hilarious cat, which is trying to catch all the goodies it can.  Whistle high to push the cat-balloon up, low to make it go down low, and anywhere in between to reach the height that a pitch corresponds to.  I&#8217;d love to hear what you think of the concept!</p>
<p>By default, Mac computers have a number of &#8216;microphone devices&#8217; attached like &#8216;firewire&#8217; &#8211; make sure the selected mic is something like &#8216;built-in&#8217;.</p>
<p>A couple of things that come to me from the limited testing I have done:</p>
<p>1. Quite a lot of people can&#8217;t actually whistle.  The choice to use whistling as a driver is not out of malice, but because it&#8217;s such a &#8216;pure&#8217; waveform. I&#8217;m going to try and increase the sensitivity of the analysis so that singing would work too.</p>
<p>2.  I got quite a lot better at estimating pitch after playing the thing for 5-10 minutes.  Having such a direct mapping, with visual feedback about how close an attempt is to the actual goal seems to make it a lot easier to estimate my error as a whistler.</p>
<p>3.  I can&#8217;t make it to more than about 25 points without cracking up from the silliness of it all.  With a little more variety in the goals and the kinds of interactions and I think we&#8217;ll be on to a winner!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2010/11/13/developing-broadband-io/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Digital sand</title>
		<link>http://www.zachernuk.com/2010/03/17/digital-sand/</link>
		<comments>http://www.zachernuk.com/2010/03/17/digital-sand/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 03:07:20 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[doodles]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[doodle]]></category>
		<category><![CDATA[emergent]]></category>
		<category><![CDATA[generative]]></category>
		<category><![CDATA[sand]]></category>
		<category><![CDATA[simulation]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=400</guid>
		<description><![CDATA[As I have mentioned earlier, what excites me most about gaming &#8211; and computers in general &#8211; is the capability for simulation. If we create a system that obeys the same rules as reality, we can use that system to better understand reality. Not only that, it allows us to test out new theories and [...]]]></description>
			<content:encoded><![CDATA[<p>As I have mentioned earlier,  what excites me most about gaming &#8211; and computers in general &#8211; is the capability for simulation. If we create a system that obeys the same rules as reality, we can use that system to better understand reality.  Not only that, it allows us to test out new theories and ask  &#8220;what would happen if things were a little different?&#8221;</p>
<p>The complexity of the thing you simulate doesn&#8217;t have to be much either.  The term &#8220;computer simulation&#8221; often evokes imagery of simulating enormous and complex systems &#8211; weather patterns or the turbulence flow from a large-scale atomic detonation &#8211; but simulation can be useful on a more modest scale too.  In University, a friend of mine threw together a blackjack simulation.  He wanted to see the patterns of how well a virtual player does when it follows hard-and-fast rules &#8211; refusing cards over a total of 16, 18 and so on.* The first programmable computer, the Z3, ran at a staggering 10 Hertz &#8211; roughly one <em>billionth </em>of the speed of a modern computer.  Even at that speed, though, it brought the science of aviation forward by a decade through simulating wing flutter at rates of execution that were previously impossible to reach.</p>
<p>The example I often use to explain my fascination with simulation is this:  Imagine a child&#8217;s sand-pail at a beach.  Imagine the light dusting of sand it gets from a long day of use.  The smoothness at the joints, the build-up inside any detailing and under the lip.  Now imagine taking the bucket away and leaving the sand &#8211; the suggestion of form but not the form itself.  Next to impossible in reality, but in a simulation, once you have the base action down, setting things to on or off is the easiest thing in the world.</p>
<p><a href="http://www.zachernuk.com/wp-content/2010/03/sandy.PNG"><img class="alignnone size-full wp-image-407" title="sandy" src="http://www.zachernuk.com/wp-content/2010/03/sandy.PNG" alt="sandy" width="293" height="274" /></a></p>
<p>I&#8217;ve been using this example of the sand and the bucket for years now, and recently I decided to actually do something about it &#8211; make a sand simulation that can show you what I mean, rather than just telling people about it.  Here it is! Just move the mouse around on the play field to shift the sand.  If you want extra options for playing with the sand fall or changing the pen size, open the options panel.  Many thanks to Aidan of <a href="http://aidan.rfm.co.nz/blog/">Shade and Prime</a> for the fantastic elevation visualizer.</p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_SandDisplacer_1767217681"
			class="flashmovie"
			width="400"
			height="600">
	<param name="movie" value="http://www.zachernuk.com/wp-content/2010/03/SandDisplacer.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://www.zachernuk.com/wp-content/2010/03/SandDisplacer.swf"
			name="fm_SandDisplacer_1767217681"
			width="400"
			height="600">
	<!--<![endif]-->
		
<p><a href="http://adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
<p>iPhone app, anyone?</p>
<p>*  While it might seem like this is a less-than-useful endeavour to use computers for, I&#8217;m sure we can all agree that it is better to test a virtual player losing virtual money than trying it at your local casino.  In fact, after finding that there is no foolproof approach to blackjack, he gave up on it altogether and started putting his money in the stock market&#8230; you win some, you lose some.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2010/03/17/digital-sand/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cascading OpenAvatar</title>
		<link>http://www.zachernuk.com/2010/02/11/cascading-openavatar/</link>
		<comments>http://www.zachernuk.com/2010/02/11/cascading-openavatar/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 00:06:08 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[avatar]]></category>
		<category><![CDATA[customization]]></category>
		<category><![CDATA[Grand theft auto]]></category>
		<category><![CDATA[GTA]]></category>
		<category><![CDATA[Playfish]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[World of Warcraft]]></category>
		<category><![CDATA[WoW]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=388</guid>
		<description><![CDATA[A few months back I played through as many social and internet games as I could get my hands on.  One thing I was always simultaneously impressed and frustrated by was customization.  Games like YoVille and Pet Society,  environments like IMVU and the short-lived Google Lively often boast about detailed avatar controls &#8211; not just [...]]]></description>
			<content:encoded><![CDATA[<p>A few months back I played through as many social and internet games as I could get my hands on.  One thing I was always simultaneously impressed and frustrated by was customization.  Games like YoVille and Pet Society,  environments like IMVU and the short-lived Google Lively often boast about detailed avatar controls &#8211; not just shirt and trouser colour, but jawline, skin colour and sometimes even customizable decals.   I think this functionality is a great idea &#8211; the wardrobe features in World of Warcraft or Grand Theft Auto are things that draw the unlikeliest players into the game, and help players identify more closely with their character.  It&#8217;s not easy to tell just how strongly that is felt until it&#8217;s gone &#8211; in Playfish&#8217;s new game Gangster City on Facebook, the customization is completely absent &#8211; the back-story each player encounters is identical, with no real accommodation for concurrent players existing in the same universe at the same time.  It was surprising to realize how much I missed it.</p>
<p>Of course, it&#8217;s great when GTA and WoW do it because you know that any investment you make in your character customization is going to be worth it.  Each new installment of GTA offers gameplay for dozens of hours, and you can play WoW, for better or worse, for as long as you can stand it without running out of things to see.  In games of this calibre, the new customization options are a welcome sight, and I enjoy discovering what new options are available as time goes on.</p>
<p>In a new game &#8211; particularly one without the backing of recognizable names &#8211; customization screens can have the opposite effect.  Without knowing a little bit of what I&#8217;m in for, it&#8217;s hard to muster up the enthusiasm to define my character.  If it&#8217;s a requirement, which it often is, I make rash decisions in a show of contempt for the system that end up making my avatar look something of a mess.  The remainder of my play experience is then realized through this hash of a character, and ends up tarnishing my experience of the whole game.  A difficult-to-implement feature, that is often considered a must-have for social games, can end up ruining it.</p>
<p>So customization screens as a first port-of-call are annoying, but so is a lack of customization options.  It can be made an optional, progressive task, as in GTA: San Andreas, but most games can&#8217;t afford to demand the sheer amount of time that GTA can.  In addition, games in a highly-connected, social space <em>have</em> to make this a requirement in order to make concurrent players distinct, so it has to be done, and done before a lot of the fun can begin &#8211; so the question we&#8217;re left with is <em>&#8220;How do you give people a meaningful custom avatar without forcing them into a customization screen?&#8221;</em></p>
<h2>Web development to the rescue</h2>
<p>I&#8217;ve done time as a web developer before, and one of the technologies that has made the job much easier since the 1990s is the development of  <em>Cascading Style Sheets, </em>or CSS.   The Cascading part refers to a neat technique where more general definitions are are inherited by more specific ones, unless otherwise specified.  Basically this means if I want all text to be red, I say &#8220;All text should be red&#8221;.  Then, headings, subheadings, body and caption text will all be red &#8211; unless I want caption text to be green, in which case I say &#8220;All text should be red but caption text should be green&#8221;.  This has a significant advantage over defining each piece of text colour by hand in that it&#8217;s smaller to load, faster to write and easier to change if you decide you want to go with a slightly less gross colour scheme.</p>
<h2><em>..So?</em></h2>
<p>What I would like to borrow from CSS here is the idea that definitions can start out as vague, and become more specific with time &#8211; not just definitions of web pages, but definitions of character customization too.  Say I often have pale skin, wear glasses, grey shorts and a red-and-blue T-shirt (I do).  It wouldn&#8217;t be a bad place to start for <em>every</em> character I start out as to possess these properties,  and if I want to refine them further, I could.  If a game demanded a character that was an elephant instead of a humanoid, I might decide that I would prefer it not to wear glasses, but I&#8217;m not likely to resent the attempt, particularly if it was done automatically.</p>
<p>To an extent, Nintendo already does this with the concept of the portable &#8216;Mii&#8217;, which can represent you in a number of different games.  However, Nintendo requires that the Mii be presented indentically in all the games it appears in, which either limits the aesthetic of the game to the standard set by the Mii art, or jars with the artistic style employed in the game.  On the other extreme is Second life, where there are next to no restrictions on what you can do to your avatar or to your island.  The results of that aren&#8217;t pretty either.  I&#8217;d suggest we not go there.</p>
<p><a href="http://farm3.static.flickr.com/2676/4058110942_b4d9093104_m.jpg"><img style="border: 0px initial initial;" title="Cascading OpenAvatar" src="http://farm3.static.flickr.com/2676/4058110942_b4d9093104_m.jpg" alt="" width="240" height="125" /></a></p>
<p>I think it would be possible to find something in the middle.  If players could define a character appearance once. with some kind of open standard, then it would be possible to use that as a basis for any new character in a game.  If those parameters were made available to game developers, they could be integrated into the game in a manner that was in-keeping with the artistic direction of the game.  Players get avatars that they can immediately identify with, without having to invest time in building them,  Developers get a recognizable source of customization data that they can interpret how they like.  Everybody wins!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2010/02/11/cascading-openavatar/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>On Social games: Why Mafia Wars isn&#8217;t social</title>
		<link>http://www.zachernuk.com/2010/01/09/on-social-games-why-mafia-wars-isnt-social/</link>
		<comments>http://www.zachernuk.com/2010/01/09/on-social-games-why-mafia-wars-isnt-social/#comments</comments>
		<pubDate>Sat, 09 Jan 2010 03:29:09 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[Incidental Learning]]></category>
		<category><![CDATA[doodles]]></category>
		<category><![CDATA[deferred]]></category>
		<category><![CDATA[gaming]]></category>
		<category><![CDATA[indirect]]></category>
		<category><![CDATA[mafia]]></category>
		<category><![CDATA[participation]]></category>
		<category><![CDATA[simultaneous]]></category>
		<category><![CDATA[skinner]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[symmetry]]></category>
		<category><![CDATA[wars]]></category>
		<category><![CDATA[zynga]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=360</guid>
		<description><![CDATA[I contend that "Social Games" are not currently Social at all.  I suggest some directions to explore.]]></description>
			<content:encoded><![CDATA[<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">I don&#8217;t really know what I want to say about Social games.  Is a background really interesting? I don&#8217;t think so.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">On Social Games: Mafia Wars and a question of &#8220;Social&#8221;</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">A few months back I started playing through all of the main (free) Social Games available &#8211; I went through most of the games by the two major figures in the space, Playfish and Zynga, and a handful of the offerings from other competitors. I&#8217;m hoping to</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">Why can&#8217;t we all just get along?</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">One thing that struck me about these Social Games is how little social relevance they possess.  Mafia Wars, the most popular social game, puts you in the position of a mafia boss.  Friends of yours who also subscribe to the game comprise your mafia.  You are able to request assistance on specific jobs from your friends, give them gifts and swap special &#8216;collectible&#8217; items with them &#8211; but participation goes no further than this.  All that distinguishes one friend from another is their name, avatar and experience level.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">In fact, for a price, you are able to enlist random strangers into your ranks, who behave no differently to your peers. Equally, you are treated in an identical manner &#8211; your name used as a largely meaningless token in your friend&#8217;s Mafia engagements.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">So?</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">To an extent, this is an inevitable part of gaming &#8211; if I create a game-world with a limited complexity of representation, some features of my personality will be rendered irrelevant.  The fact that I like long walks on the beach is likely to be insignificant in a game about intergalactic space battles, just as my intergalactic space tactics are likely to be unimportant in a game about long walks on the beach.  In Mafia wars, though, not even my views on &lt;i&gt;the mafia&lt;/i&gt; make the cut &#8211; not so much as a D&amp;D-style moral alignment or request to sacrifice progress toward one goal for another.  Likewise, any charitable acts I engage in &#8211; sending out an &#8220;Energy Pack&#8221; or giving a gift to my peers &#8211; carries no consequence to me.  The items are not available to me in the first place other than to give to others.  Without any opportunity cost there is no decision for me to make, and no way to make my mark or distinguish myself from other players.</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">The fact that players in Mafia Wars are often on at different times, and for wildly different quantities of time makes more direct involvement somewhat difficult, but not impossible.</div>
<p>A few months back I started playing through all of the main (free) Social Games available &#8211; I went through most of the games by the two major figures in the space, Playfish and Zynga, and a handful of the offerings from other competitors. I&#8217;m hoping to turn this into a series of posts on my observations through these games.</p>
<h2>Why can&#8217;t you play nicely with the others?</h2>
<p>One thing that struck me about these Social Games is how little social interaction actually occurs.  Mafia Wars, the most popular social game, puts you in the position of a mafia boss.  Friends of yours who also subscribe to the game comprise your mafia.  You are able to request assistance on specific jobs from your friends, give them gifts and swap special &#8216;collectible&#8217; items with them &#8211; but participation goes no further than this.  All that distinguishes one friend from another is their name, avatar and experience level.</p>
<p>In fact, for a price, you are able to enlist random strangers into your ranks, who behave no differently to your peers.   Equally, you are treated in an identical manner &#8211; your name used as a largely meaningless token in your friend&#8217;s Mafia engagements.</p>
<h2>So?</h2>
<p>To an extent, this is an inevitable part of gaming &#8211; if I create a game-world with a limited complexity of representation, some features of my personality will be rendered irrelevant.  The fact that I like long walks on the beach is likely to be insignificant in a game about intergalactic space battles, just as my intergalactic space tactics are likely to be unimportant in a game about long walks on the beach.  In Mafia wars, though, not even my views on <em>the Mafia </em>make the cut &#8211; not so much as a D&amp;D-style moral alignment or request to sacrifice progress toward one goal for another.  Likewise, any charitable acts I engage in &#8211; sending out an &#8220;Energy Pack&#8221; or giving a gift to my peers &#8211; carries no consequence to me.  The items are not available to me in the first place other than to give to others.  Without any opportunity cost there is no decision for me to make, and no way to make my mark or distinguish myself from other players.  When I play, no aspect of how <em>you</em> play has any impact on my game&#8217;s representation of you, and vice versa.</p>
<p><strong>How it normally works</strong></p>
<p>Most multiplayer games have been based on either <em>symmetrical </em>(largely turn-based) or <em>synchronous </em>play.  Symmetrical games like Chess require that for every move that you make,  I make one too.  Synchronous games like Warcraft 3 and Halo  rely on the fact that we are both given the same opportunity to act &#8211; they assume that every player is giving the game their full attention,  so that any difference in impact comes down to a difference in skill.   It&#8217;s not possible to rely solely on these techniques for creating a multiplayer experience in the social space &#8211;  I may rack up ten times the average play-time of my friends in a week.  A symmetrical, round-robin approach would mean that nine-tenths of my time in the game would be spent waiting for others to catch up, while a synchronous model would require that I be online at the exact same time as my friends in order to collaborate.</p>
<p>These traditional methods for creating a multi-player experience may fail in a larger social context, but they were  also designed for a different quantity of players.  Chess requires exactly two players to allow a game to proceed, and games like Warcraft or Halo require between 2 and 16 players.  A typical social game has players in the thousands &#8211; Mafia Wars has membership in the <em>tens of millions</em>.</p>
<p>The second difference is in the length of engagement.  A Counterstrike match  is generally around 35 minutes, and a game of Warcraft 3 can last between 30 and 120 minutes.  Mafia Wars and Pet Society offer a single, persistent game experience which lasts indefinitely, often with players racking up 30 minutes or more every day of the week.</p>
<p><strong>Options</strong></p>
<p>The differences between normal videogames and &#8220;Social Games&#8221; do close off some possibilities for how to establish a shared experience, so while we can&#8217;t rely on symmetrical play patterns from a core set of players, we can make use of much longer time-scales and a vastly larger pool of players to draw on.</p>
<p>Rather than a single, one-to-one sequence of interaction, social games can make use of the wider network of contacts &#8211; engaging in multiple parallel &#8216;quests&#8217;, each one requiring roughly equal participation from its members, where the number of quests allows the player to scale their level of involvement.  If I play 2 hours a week, I might participate in 3 quests,  where someone who spends 10 hours will join 20.</p>
<p>Another approach is to let the game play itself &#8211; or at least to for friends to interact with a simulated version of the player,  which is refined over the course of their play-time.  Say I&#8217;m predictably good-aligned in most games (I am.) &#8211; If a friend of mine requests my assistance on a mission which requires some morally dubious action,  It should be possible for my approximated self to decline any requests to participate.  If it is necessary at some later date to request the services of a character with such dull and unflinching moral fortitude, My virtual character may offer his services up (or at least ask me directly whether to do so).</p>
<p><strong>That&#8217;s <em>weird</em>.</strong></p>
<p><strong> </strong>While breaking the convention of a game following a single, coherent thread, or providing a simulated copy of me and my behaviours sound like strange approaches, this is essentially already happening in these social games.  Many avid &#8220;Social gamers&#8221; are registered in several services &#8211; and often several accounts &#8211; suggesting that thy feel that the maximum level of engagement available under a single game / account is insufficient.  Likewise,  any time a character bearing my name, experience level and portrait appears in a social game, it is <em>effectively</em> a simulation of me.  It just so happens that the simulation is  so poor that no two characters with the same level of experience can be considered behaviourally distinct.</p>
<p><strong>What do we get out of this?</strong></p>
<p>Using either (or both) of these approaches, we can come closer to having an actual social game experience.  By relaxing the requirements for symmetrical participation, we can play alongside a number of friends &#8211; and be playing with <em>them,</em> rather the  poor approximation we have now.  By relaxing the requirement for synchronous play through improving that approximation, we open up new opportunities for participation.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2010/01/09/on-social-games-why-mafia-wars-isnt-social/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>First-Person Snake!</title>
		<link>http://www.zachernuk.com/2009/12/18/first-person-snake/</link>
		<comments>http://www.zachernuk.com/2009/12/18/first-person-snake/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 09:13:59 +0000</pubDate>
		<dc:creator>Brandel Zachernuk</dc:creator>
				<category><![CDATA[Games]]></category>
		<category><![CDATA[doodles]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[bitmap]]></category>
		<category><![CDATA[fill]]></category>
		<category><![CDATA[fps]]></category>
		<category><![CDATA[relative]]></category>
		<category><![CDATA[rotation]]></category>
		<category><![CDATA[snake]]></category>
		<category><![CDATA[transform]]></category>

		<guid isPermaLink="false">http://www.zachernuk.com/?p=352</guid>
		<description><![CDATA[Finally finished the work that had built up over my time in Qatar!  After making the Buffer-snake game I started wondering about what else you can change about the basic game mechanic &#8211; if you followed the snake head,  or pivoted with it as though you were playing from something more like a first-person perspective. [...]]]></description>
			<content:encoded><![CDATA[<p>Finally finished the work that had built up over my time in Qatar!  After making the Buffer-snake game I started wondering about what else you can change about the basic game mechanic &#8211; if you followed the snake head,  or pivoted with it as though you were playing from something more like a first-person perspective.</p>
<p>The following is the outcome:  Make sure you click inside the window to get it started, the keys are as follows:</p>
<p><strong>Q: </strong>Toggles making the camera turn with the snake, so the head is always pointing down.</p>
<p><strong>W: </strong>Toggles moving with the snake, so the head is always center screen.</p>
<p><strong>E: </strong>Toggle turn amount (90º or continuous)</p>
<p><strong>R: </strong>Get points (increase length)</p>
<p><strong>Arrow Keys:</strong> Turn snake.  In continuous-turn mode, or in rotate-with-snake mode, left and right turn CCW and CW,  and in right-angle,  non-rotate mode, the arrow keys behave like a normal snake game.</p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_FPSnake3_755496644"
			class="flashmovie"
			width="400"
			height="600">
	<param name="movie" value="http://www.zachernuk.com/wp-content/2009/12/FPSnake3.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://www.zachernuk.com/wp-content/2009/12/FPSnake3.swf"
			name="fm_FPSnake3_755496644"
			width="400"
			height="600">
	<!--<![endif]-->
		
<p><a href="http://adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
<p>What do you think of it?  How do the changes in presentation affect your feelings on the game?  Any reactions would be most welcome.</p>
<p>Personally, I&#8217;m pretty impressed by how different a follow-mode snake feels.  You could imagine navigating a much wider world, or even a looping one where subtle differences creep in over time. Making the game focused on the<em> player (</em>rather than the<em> level) </em>makes me think of it as a much more character- or story-focused environment.</p>
<p>I was also very surprised by just how sickening the motion is in first-person mode.  After messing around with it for about three hours today,  I think I&#8217;m going to need a lie-down.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zachernuk.com/2009/12/18/first-person-snake/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

