{"author_name":"BleuLlama","cat":"LD #21","comments":[],"epoch":1314121500,"likes":0,"metadata":{"p_key":"63679","p_author":"BleuLlama","p_authorkey":"1591","p_urlkey":"99464","p_title":"Streetlights \u2013 Postmortem","p_cat":"LD #21","p_event":"LD21","p_time":"1314121500","p_likes":"0","p_comments":"0","p_status":"UPD5","us_key":"1591","us_name":"BleuLlama","us_username":"bleullama","event_start":"1313712000","event_key":"7","event_name":"LD21"},"text":"<p>I&#8217;ve been looking at the LD compos for a couple years now, always wanting to do one, but due to various life events (generally, caring for my toddler) I was unable to join in. \u00a0This year was different. \u00a0We were on vacation, and would be driving home on Saturday. \u00a0This gave me 5-6 solid hours in the car to work on it, so I figured, why not!<\/p>\n <p>Once the theme &#8220;Escape&#8221; was given, I was instantly unable to figure out anything. \u00a0I knew I didn&#8217;t want to do a standard, expected type of game&#8230; something predictable. \u00a0And I knew that I would be writing it for iOS, meaning that basically 98% of the reviewing audience would likely not be able to rate it, instantly guaranteeing that I will not come anywhere near placing&#8230; which is fine. \u00a0The reason to do this is to do it&#8230; to get my brain working&#8230; to get <em>something<\/em> accomplished&#8230; and I did.<\/p>\n <p>I started thinking out of the box a little. \u00a0Journey had an album called &#8220;Escape&#8221;, containing the hit &#8220;Don&#8217;t Stop Believing&#8221;. \u00a0Seems like a good point to start with. \u00a0But honestly, I didn&#8217;t really settle on this until Sunday morning.<\/p>\n <p>I spent Friday night thinking about something to do, a game mechanic or somesuch. \u00a0I also got the git repository started up, and came up with a codename for it in my current codenaming theme, cheeses. \u00a0&#8220;Raclette&#8221;.<\/p>\n <p>Personally, I find that I can&#8217;t get started on a project until I have a name for it, and can start the source repository&#8230; so I started using code names with a cheese theme. \u00a0It works for me. \u00a0It let me get the project going, and got the process of naming it out of my head so that I can just start working on it.<\/p>\n <p>Saturday afternoon, in the car, first I made an icon for the game, a fancy &#8220;R&#8221; for Raclette. \u00a0I know this seems like the wrong order to do things, naming it then giving it an icon, but it was necessary for the way my brain works.<\/p>\n <p>Next, I started up the Xcode project. \u00a0OpenGLES template project, removed GLES2, added BL2D (my 2D sprite and tilemap library, released last fall), did other general GLES2 cleanups. \u00a0Then I brought in the hooks for the BL2D engine, cleaned up the sprite and tilemap PNG spritesheets to bring them back to &#8220;font only&#8221; condition, to satisfy the rules of the compo.<\/p>\n <p>Note: all of this is visible in the following timelapse video, 0:00 thru 0:23 or so.<\/p>\n <p><iframe width=\"500\" height=\"375\" src=\"http:\/\/www.youtube.com\/embed\/5XcnXuPTfVs?fs=1&#038;feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n <p>One of the other things I added in the car ride was the game state engine. \u00a0After working on &#8220;The 7th Guest: Infection&#8221; I came to realize that for the way I work on games, having the state engine in place earlier rather than later is very much welcomed. \u00a0I had worked on a state engine for a game last week, so I essentially worked out a new version of that from scratch.<\/p>\n <p>At this point, about 6 hours of work in, we got home. \u00a0I spent much of the evening helping out around the house and unpacking. \u00a0I got a few extra minutes in to integrate the tile\/sprite engine a little more. \u00a0I<\/p>\n <p>Sunday, I was able to spend a lot of time in the afternoon to work on it. \u00a0I managed to somehow clean the entire house, and play with my kid beforehand as well, so that was nice. \u00a0While doing all of this, I thought about a game mechanic that involved clicking or drawing on the screen, and it color cycling. \u00a0I wasn&#8217;t sure where it would take me, but I felt it was an ok place to start. \u00a0It was also about this time that I almost gave up completely, feeling unable to finish in the time available to me.<\/p>\n <p>Then it hit me. \u00a0The lyrics to the song were the basis for the game. \u00a0E5c4P3. \u00a0Don&#8217;t Stop Believin. Streetlights, People. \u00a0Escape the streetlights. \u00a0You&#8217;re Steve Perry.. too specific. \u00a0You&#8217;re Perry. \u00a0Got it. \u00a0People attracted to streetlights like moths. \u00a0When you hit some streetlights they go out. \u00a0There we go. \u00a0Run around, hit streetlights, people attracted to them will scurry away.<\/p>\n <p>I then spent a lot of time getting simple cheesy people graphics and a horrible streetlight graphic worked out. \u00a0Horrible graphics are better than no graphics. \u00a0By the time dinner rolled around, i had the basic mechanic of the game working, but no real goals or score or anything. \u00a0My wife suggested that the guy gets zapped from the lights. \u00a0 Danger! Great! \u00a0Then I added health bar in a half hour. \u00a0Added a few more states to the game state machine for &#8220;died&#8221;, hook the state paths around, and i have a basic, mostly feature-complete game!<\/p>\n <p>The initial engine effort i made was essentially abandoned, but I did use a remnant from it to do the color cycling background for the intro screens, so all was not lost.<\/p>\n <p>&nbsp;<\/p>\n <p>So what&#8217;s left for it? \u00a0I want to get it into the App store asap, so that people have more of a chance of trying it out. \u00a0After judgment period, I&#8217;ll be adding in things I ran out of time to do: sound, progressively harder levels, more clever people, graphics for the &#8220;street&#8221; rather than just black, a time limit, and perhaps high score saving.<\/p>\n <p>I know it&#8217;s not the best game ever, but I made it. \u00a0I made it in about 16 of the alotted 48 hours to do it. \u00a0I know I could do better, I know I have done better, but I started it, I did it, and I got it done. And I think it&#8217;s a fairly amusing stretch from the song.<\/p>\n <p>And here&#8217;s the gameplay&#8230;<br \/>\n <iframe width=\"500\" height=\"375\" src=\"http:\/\/www.youtube.com\/embed\/TCWCwimYsgo?fs=1&#038;feature=oembed\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n <p><a href=\"http:\/\/www.ludumdare.com\/compo\/ludum-dare-21\/?action=preview&amp;uid=1591\">Link to the compo page for &#8220;Streetlights&#8221;<\/a>.  To build it, you&#8217;ll need Xcode 4 with the iOS SDK (included with Xcode 4).<\/p>","time":"August 23rd, 2011 12:45 pm","title":"Streetlights \u2013 Postmortem"}