MiniLD 53 – A Cruel World’s Post-Mortem

Posted by (twitter: @TheOccasionalK)
July 24th, 2014 3:49 pm

So the Mini Ludum Dare #53 was my first ever LD, and all I can say is that it was fantastic! Great people, game development, and an excuse to geek out and rapidly destroy my health over the period of 48 hours. I entered the jam as a solo participant (because I don’t have any game developer friends in real life) and spent the weekend in the solitude of my study. It was an experience that definitely opened my eyes to quite a few things.

 

The Game

A Cruel World was my attempt to express my artistic side a bit. I don’t have time to do art anymore, and even though I’m terrible at digital art (I’m more comfortable with a good ol’ pencil and paper) it was a great learning experience for me. Although the atmosphere may have been a little wishy-washy, it was meant to be a depressing exploration game covering the topics of corruption and greed, self-image issues, deforestation, animal cruelty, and over-reliance on religion. This was my take on ‘The Future Is Now’ theme – because these are problems that we face today, that will only worsen as time goes by.

The atmosphere I aimed for was heavy, with anthropomorphic character designs that matched each NPCs character (such as the wolf being the greedy salesman, and the sheep being the religious figure). I would have loved to have had more time to build a more complete world and to iron out many of the bugs, but alas it didn’t work out this way.

The first level of the game, where a poor man tells the player about the world.

The first level of the game, where a poor man tells the player about the world.

 

The Development Process

With only 48 hours to complete the game, I used my own libGDX-based framework (with already implemented input, render, debugging, and audio controller classes). From here, it was a simple matter of creating the world-space, drawing the art, coding the logic, and slapping in some audio for good measure. I started with a notebook and pencil for all my designs (all concepts, artwork, algorithms, and level layouts) and subsequently implemented my designs as I went.

Although I have developed a few small games, I have explored quite a lot of new territory this time around. For instance, I have never written a free-roaming game with separate levels, so this was an interesting endeavor to implement dedicated classes, each with their own self-contained logic, for each world-space. An inventory system (although extremely basic) was another thing that I had never touched on.

The fact that I had an extremely tight schedule and clear deadline definitely helped me set aside my uncertainty and simply slap together code to make it all work. I tend to be overly pedantic when it comes to programming, always considering optimal memory/CPU usage, neatness, code commenting, and so on. There is no time for this in LD however, and this really helped me overcome my care and simply MAKE THINGS WORK (albeit only adopting this strategy nearly half-way through the compo).

Exerts from my MLD#53 design book.

Exerts from my MLD#53 design book.

What I Took Away

All in all, I was quite happy with the result. It may be slightly buggy, and perhaps I could have been clearer about where to go and what to do, but then again it is an exploration game. I would have changed a few things if I could however, but as I said I had run out of time.

First things first, I realize now that programming is my absolute favorite part of the game development process. The labyrinth of flowing code is an intoxicating mind-game to me – a way to lose myself in complicated algorithms and hierarchical visibility. I loved the art side of things as well, but I found it became somewhat tedious (and anyone who has played my game may see how the quality of art declines the further you get.) This may have been the problem of hand-drawn art taking so damn long to make, and this coupled with the deadline put me off. Who knows?

Secondly, I learned that an exploration game is not the best approach to compo with such a short deadline. It has almost zero replay-ability, the slightest bugs come out glaring like a car’s headlights in the dead of night and utterly ruin the experience, and you simply do not have enough time to create an expansive and interesting world that will offer a lengthily play-through.

On the game front, I definitely would have approached some problems differently. I relied too heavily on boolean control variables for inter-class communication, which could have been replaced by a much more, much simpler system if I simply based actions on player position, instead of an activation button while the player stands at a specific position. It’s a minor thing, but this simply change would have saved me an hour or two of debugging which could have been used far more productively. Good knowledge for next time then.

 

All in all however (as I said), I am pleased with what I accomplished. The purpose of these jams is to extend your knowledge and experience, and this is exactly what I managed to do. I explored new territory with A Cruel World, and enjoyed every sleep-deprived second of it. I’ll definitely be more confident, prepared, and efficient at the next Ludum Dare. I will also take what I have learnt in the mere 48 hours of development and funnel it into my current Android game – a project I hope to complete soon and release on the Play Store.

To end off this post, I have uploaded the time-lapse video of the development process for anyone who likes to stare at low-framerate, illegible windows:

 

Just another note: I haven’t had the chance to play through any other games as of yet. I’ve been out of town, and operating only by smartphone for the last couple of days. Last night I returned, and I’m off again tomorrow morning. Perhaps next week I will have a gap in order to melt my mind with some of your guy’s lovely creativity. Until then, have good one!

 

 

Tags: , ,


Leave a Reply

You must be logged in to post a comment.

[cache: storing page]