{"author_name":"Frozen Fractal","cat":"LD #22","comments":[],"epoch":1324246440,"likes":2,"metadata":{"p_key":"60583","p_author":"Frozen Fractal","p_authorkey":"7882","p_urlkey":"96336","p_title":"A lonely ninja calling it a day","p_cat":"LD #22","p_event":"LD22","p_time":"1324246440","p_likes":"2","p_comments":"0","p_status":"UPD5","us_key":"7882","us_name":"Frozen Fractal","us_username":"thomastc","event_start":"1323993600","event_key":"8","event_name":"LD22"},"text":"<p>Whew! What a ride! What an experience! And above all: what a game! I&#8217;m extremely satisfied how well my first Ludum Dare went. My game, called &#8220;I Am A Ninja&#8221;, though short, does not have too many bugs, is fun to play, has a nice graphical style, even does some character building&#8230; it just looks <em>done<\/em>. Here it is! Click the screenshot to play!<\/p>\n <div id=\"attachment_97657\" style=\"width: 490px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/frozenfractal.com\/play\/ninja\/\"><img class=\"size-full wp-image-97657\" src=\"http:\/\/www.ludumdare.com\/compo\/wp-content\/uploads\/2011\/12\/ninja-small.png\" alt=\"\" width=\"480\" height=\"360\" srcset=\"http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2011\/12\/ninja-small-300x225.png 300w, http:\/\/ludumdare.com\/compo\/wp-content\/uploads\/2011\/12\/ninja-small.png 480w\" sizes=\"(max-width: 480px) 100vw, 480px\" \/><\/a><p class=\"wp-caption-text\">Screenshot of my game &quot;I Am A Ninja&quot;. Click it to play!<\/p><\/div>\n <p>Yesterday I collected a list of things that had to be done today, and in part thanks to luck (not getting stuck on tricky bugs), in part to good planning, I got through them all.<\/p>\n <p>I started with adding a storyline to fit in with the theme. Well, maybe it&#8217;s not so much a story as it is a character and his characterization&#8230; but it fits, nonetheless. Unfortunately it is told through text only and does not integrate with the gameplay.<\/p>\n <p>I then drew up some instruction graphics to stick at the bottom of the page. Unobtrusive, but there when you need them. On smaller screens they&#8217;ll be below the fold, but I think that price is worth paying for not slapping the instructions into the player&#8217;s face.<\/p>\n <p>Then came the most challenging and fun bit: drawing animations. I&#8217;d never done this before, but as my character is just a 32 by 32 pixel silhouette it was over almost before I got started, and it looks nice. The animations are packed into a single 128 by 128 image, with 4-frame animations for each of 4 states (standing, walking, swinging, falling). The protagonist is actually the only sprite in the game; all the other things are pure canvas geometry. (There&#8217;s one more image for the noise overlay and another for the instructions.)<\/p>\n <p>Then I built two more levels, for a total of three. My brother&#8217;s playtesting shows that an experienced gamer can get through in about 10-15 minutes, which is perfect for a game of this scope. However, when building levels I really don&#8217;t have a clue what I&#8217;m doing&#8230; I just throw stuff together randomly with some regard to how difficult I think it would be. I have little to no experience in this area, and I hope it doesn&#8217;t show too much.<\/p>\n <p>The same goes for sound effects. If there&#8217;s one thing I don&#8217;t like about my game, it&#8217;s those: they don&#8217;t fit in at all with the style. But without a decent microphone, I was stuck with <a href=\"http:\/\/www.bfxr.net\/\">bfxr<\/a>, which makes all games sound like the MS-DOS era. I wonder if it would have been better to have no sound at all. On the bright side, I just noticed that sound does not work at all in Firefox, so I get some A\/B testing for free!<\/p>\n <p>With just a few hours left, I turned to polishing. The first step was a dying animation; simply making the player disappear would not do. So I added a simple particle &#8216;engine&#8217; and made the character fall apart into a bunch of white sticks when he dies. Combined with the sound effect (one of the better ones), it really gets the idea of &#8220;painful&#8221; across.<\/p>\n <p>Then, once I had the particle system anyway, I reused it to make the hero leave behind a trail of sparkles. When swinging through the room on your rope, this gives a really nice effect. I initially tried for a black smoke cloud instead, but that just came out looking as a cartoon-like cloud of smelliness.<\/p>\n <p>Finally, I added a nice animation for the end of a level, sucking the player into the vortex. Turns out, it&#8217;s quite tricky to tie this into the physics: your standard Newtonian mechanics just end up in oscillations. Some friction that increases near the centre of the vortex did the trick nicely.<\/p>\n <p>The finishing touch was to replace some jQuery show() and hide() calls by fadeIn() and fadeOut(). It makes everything feel so much smoother.<\/p>\n <p>And that&#8217;s it! Thanks for reading! I hope you enjoy my game as much as I did making it!<\/p>","time":"December 18th, 2011 5:14 pm","title":"A lonely ninja calling it a day"}