Home | Rules and Guide | Sign In/Create Account | Write a Post | Reddit | #ludumdare on irc.afternet.org (Info)

Ludum Dare 26 — April 26th-29th Weekend — Theme: Minimalism

  • Judging Ends: in 22 hours, 53 minutes, 17 seconds
  • Play and Rate Games | View All Games | Edit | View My Entry
    Twitter | #ludumdare on irc.afternet.org

    [ Warmup Weekend | Real World Gatherings | Tools | Ludum Deals (yep, we got it) ]


    Crashed on Planet Minutiae: Post-Mortem

    Posted by
    April 27th, 2012 6:21 pm

    Now that the dust has settled, it’s probably reasonable for me to write a bit about the development process of my Ludum Dare Jam entry, Crashed on Planed Minutiae.

    I wrote this game using ClojureScript, a variant of Clojure which compiles to JavaScript. For the unfamiliar, Clojure is a dialect of Lisp which runs on the JVM. Barely one year old, ClojureScript is an extremely new language, and when rushing to complete a game, it shows. For the first 24 hours, my development was fraught with regular (every twelfth build, oddly enough) compiler crashes due to an undiscovered memory leak. The JavaScript interop was shaky (but has already improved to address issues I faced during development), and some bugs in my code took a very long time to track down.

    That said, I’m happy with my choice. It allowed me to write the logic for the game at an very high level, including writing a (very) small domain specific language for generating random levels. The compiled code ran quite quickly, and I didn’t really have any performance issues with it (that said, the game runs at 30fps, and not at 60 like I would have liked. I attribute this to my reckless calls to the canvas, more than to any fault of ClojureScript). I was able to write a couple macros to ensure that my canvas stack usage was always valid (every call to context.save() had a matching call to context.restore()), and to ease some of the burdens of the canvas’s API. Once more of the quirks with ClojureScript are worked out, I’d recommend it to anyone.

    More detrimental to my progress as a whole than the language I used, was the fact that there seems to exist no good tool for writing canvas paths. My process involved tweaking lots of numbers, much guess and check, and just ditching things that I couldn’t make look right. THis, more than anything else, was why I ended up entering the Jam as opposed to the primary competition itself (that and poor time management, of course)

    The game itself is somewhat neat, it’s a top-down adventure game, I wish I had time to add more features. Originally my plan was to have beasts rise out of the ocean and attack you as you harvested the crystals. You would have also gotten a blaster, to fight them off (in fact, the dialog still says that you do get one, but it does nothing). I would also just used HTML for the minimap/health window. Much more hassle than it was worth, and for no benefit.

    Overall, I count it a success, even though I wasn’t as excited about my product as I had last time I entered (which had the benefit of being my first game as well).

    One Response to “Crashed on Planet Minutiae: Post-Mortem”

    Leave a Reply

    You must be logged in to post a comment.


    All posts, images, and comments are owned by their creators.

    [cache: storing page]