Ludum Dare

LudumDareThis wasn’t a good weekend for me.

Here’s the thing, and maybe I didn’t entirely acknowledge this, either publicly or personally, before I started: I didn’t just want to participate in this Ludum Dare, I wanted to win. I wanted to make the best dang game possible, and prove I could hang with the big boys. Now, there’s nothing wrong with this per se: However, it really would require me to be at the top of my game (so to speak) and, boy, was I ever not at the top of my game this weekend.

But I’m getting ahead of myself. Let’s start at the beginning. Let’s start with the theme selection.

You only get one”

As I mentioned before, I wasn’t too wild about this theme. It strongly suggests either only getting one of an important item, as with Portal’s Companion Cube, or only getting one life, as with roguelikes. Neither of those are bad as far as gameplay contrivances go, but neither do they get me particularly inspired, or spark my imagination, or really restrict my creativity in any particularly interesting way. So I started thinking about what that could mean from a story sense, and in order to help myself in this endeavor I found a random word selection tool and just kept pressing it until I came up with something interesting.

The word I stopped on, and started thinking about, was “Parents”. Though obviously appending that to the end of the provided theme is not correct grammatically, it is semantically, and opens up an interesting and evocative realm of thought. I think a lot of people ran with the them of “you only have one life”, but I think most people only think of that in terms of how precious that life is. Very seldom does the idea of how personal, unique, and powerful the history behind that life is: Each one is unique, a trail of events and relationships that together define the greater part of who a person is. And, from there, the idea for the game began to come together.

In this game, you played the disconnected spirit of a man who is having a recurring dream. The dream starts with you controlling a flickering point of light in his childhood bed room, where he as a child is asleep. You can look around his house at the different things, his childhood possessions, his sleeping parents, and by interacting with those objects learn about his history. As the game progresses, you move on to other rooms and buildings he has slept in – his college dorm, his desk at work, his home as a married man, his room living alone after a divorce, and eventually back in his childhood home which he inherits. You find that this is an old man, grown disconnected from the world, and everyone connected to him long dead, staying alive mostly out of habit.

There are a few decisions I made over the course of this project that are worth noting. Originally, I’d considered looking at a certain number of objects a certain number of times or exploring all of the rooms to be an appropriate way to progress the game, but I disliked that idea because there was no intuitive connection between the progress of the game and the actions of the player. A player could get stuck having not explored one area quite enough, which would totally kill the pacing and intent. On the other hand, since it was a dream, there was no more logical way to make things progress. Eventually, I hit upon the idea of a timed progression, flicking over to the next chapter of the game at set time intervals, probably a minute per section. This is an idea I still really like: It essentially means that the player is likely to feel frustrated at their inability to completely explore certain denser areas, such as the childhood home, while getting stuck longer than they’d prefer in more boring areas, such as the office or later apartment. This dovetails perfectly with the theme of mortality and personal history, where the moments we treasure never seem to last long enough while the time we wish we didn’t have to endure last an eternity.

The big other decision I made I’m not as big a fan of. As I started developing the project, more horror aspects started creeping in, taking a melancholic theme and turning it into something unworldly and disturbing. The alarm clock, which I had originally intended to be the one recurring prop, ended up being a grotesque emblem of mortality. While this is certainly an evocative image, it feels like the end result is more brutal and less honest than the original. more truthful and sad, image of mortality.

That was the concept behind the game. So why didn’t I finish it?

There are a few reasons.

First, and I think I want to give this special emphasis because it’s a mistake I seem to make frequently, it was depressing. I’m not saying that it’s a bad thing when art is depressing, but I mean that literally it made me depressed to work on it. I was already prone to this due to the weather, holiday stress, poverty, etcetera. Feeling shitty simultaneously makes me more likely to come up with depressing ideas and makes it a really bad idea to pursue those ideas. While there are certainly elements of melancholy and sorrow to Everending, the fact that overall the story is one of rebirth and awakening has made it possible for me to work on the game for more than a year without getting excessively bummed out. Depressing games may have their time and place, but I need to be sure I’m up to it before I start working on them.

Second, um, fuck content-heavy games. It didn’t seem like much when I was concepting the game out, but the sheer amount of drawing it takes to create the floor plans of several houses and apartments was daunting and exhausting. Moreover, because I was drawing from a perspective I wasn’t used to and because I was limited to 15-20 minutes per picture, I hated the end results. They looked to me like something I would have drawn when I was 13 or 14… which, you know, may have actually been appropriate to the game. I tried to tell myself that, anyway, but I wasn’t convinced. I couldn’t stand the idea of putting them out there with my name on them.

Now, all of that being said, the project is all public and available if you are interested in checking it out. You can play as much as I got done, which is basically everything except for the text for interacting with anything outside of the first room. There’s also no sound or music – perhaps if I had written the music first I would have been more motivated to follow through on the rest of the project. Perhaps not. Maybe I’ll try that next Ludum Dare.

Well, I won’t pretend I liked how this Ludum Dare went for me. I’ve felt really discouraged over it. So it goes. The life of an artist has ups and downs, and all I can do is learn from it as best as I can.

I think I might just spend, you know, a little bit of time just lying down for a while, though. I think I might just need a bit of time to myself.

Regular updates resume tomorrow.


This entire competition, I’ve been fighting against my own exhaustion and apathy, and I think I just lost.

I guess It’s not so bad. I got a ton done, and I proved to myself that I can get a ton done even when I don’t feel motivated at all, but still. I really wanted to finish something I could be proud of.

It turns out it’s really hard to finish something you can be proud of within 48 hours. Particularly if you’re of a perfectionist attitude and seldom feel proud of anything you do. Particularly particularly if you’re also struggling with depression and anxiety due to holiday stresses and seasonal shit.

Well, whatever. I don’t intend to make excuses, but I also don’t intend to beat myself up over it. So many events in our lives end up not providing quite what we wanted from them, and if you focus too hard on that you end up not appreciating all the good things those events DO bring you. So it’s not so bad.

Maybe I’ll finish the game over the next week, if I decide it’s something worth doing. Probably not. I’ll write up everything I did on it tomorrow, where I was intending on taking it, why I thought it was good, etcetera. That will probably go up sometime in the afternoon. And, after that, starting Wednesday, it’s back to our regularly scheduled programming.

Which sounds kind of nice, actually, at this point.


Well my procrastination capabilities seem to be in working order. I’ve probably spent as much time reading articles and watching youtube videos as doing actual work while I ‘work’ on this project.

Um. It’s all part of the process. Probably.

Anyway, I finally pulled all of my meandering bits of code together into something that will actually build and run and do basically everything I need it to. From one perspective, this project is basically code complete now, but from another I still need to do a lot. That is to say, a lot of the content for the game will require me to add it in with code since I’m obviously doing things kind of quick and dirty here. So, very little actual code left to go, but lots of manual entry of dialogue and stuff.

Here’s what it looks like now.

LD28 - 01

I spent a bit of time getting in some quick and dirty lighting effects and a bit of interesting visual noise, so even with placeholder graphics it looks kind of stylish. There are two main tasks left to do at this point: Draw all of the rooms and write all of the interaction lines. I also need to get music written, get some special case code done, and probably add a bit more in the way of sound stuff. It shouldn’t be an insurmountable challenge or anything, but it’s a big chunk of stuff to do and I should, uh, really get on it soon.


The theme for this Ludum Dare is: You Only Get One.

To be quite honest, not really a fan of this theme. I tend to dislike the ones that imply a really strong gameplay focus since that feels restrictive. I suppose restrictive is exactly how the themes are supposed to feel, but certain kinds of restriction seem more beneficial than others. I don’t know, I’m not feeling awake enough to express the difference cogently at the moment.

Anyway, moving along, despite not loving the theme I have figured out an approach to it that I think speaks to me. As I’m envisioning it now, it should be an EXTREMELY simple project from a programming standpoint, which is good. It will take a fair amount of custom writing, and also a fair amount of custom drawing, which are what I’m going to be doing for most of tomorrow.

This is going to be one of those “not a real game” games.

Anyway, I’ll get into more detail later. I’m really tired right now for now good reason, and am strongly tempted to go to bed nowish and get an early start tomorrow rather than try to force my way through this. I’ll have a bite to eat and then decide on that one.

Getting real tired of being tired.

Well it’s 10am and I still haven’t had any ideas so I guess today’s post is cancelled. Actually, semi-cancelled, since there’s something I wanted to bring up and now seems like a good opportunity to do so.

A new Ludum Dare is coming up, and I’d like to participate. For those of you who aren’t familiar, Ludum Dare is a 48-hour game-making competition – well, I say competition, but it’s not really about being competitive so much as it is just trying to finish a small project within a tight deadline. It’s been a while since I’ve participated since I’ve been so busy with my own work. Truth be told, I’m still pretty busy with my own work, but I really feel like I need to break out of that mold and do something more experimental and short-term. It’s super easy to get weird and inwards-focused and depressive spending weeks on the same project, so I think I just need to spend this time to loosen up and try to make something cool.

Anyway, what this means for the blog is that I’m probably going to do daily, possibly even multiple daily updates on the project as I work on it. If it’s not something you care about, well, sorry, regularly scheduled programming will resume next Wednesday. Otherwise, I hope you’ll enjoy the process of watching me puzzle through creating a small game within an extremely limited period of time.

The jam begins at 6pm pst on Friday. Next update here will be the regularly scheduled weekly DevBlog, but later that same day, probably around 7 or 8, I’ll make my first Ludum Dare update, after I spend some time brainstorming on how to approach the theme.

Also, of course, if any of you reading have any interest in making games, this might be a good opportunity to experiment with it and see what you can do in 48 hours. The work can be hard and sometimes frustrating, but it can be amazing to look back and see how much you can really do within that period of time.

Looking forward to it!

Has it just been a week since Ludum Dare ended? It seems much longer. I must be busy.

I’ve had a chance to look at some of the other entries. Some of them are pretty amazing, I gotta say. Many of them certainly much more finished and full than my project turned out, which I’m okay with. I’m pretty competitive, but I set my bar too high to compete in terms of overall quality this time. So it goes.

However. I learned a lot, or perhaps I just remembered a lot I used to know. I experienced again what it was to really devote my mind to a project, to work on that project and nothing but for a few days and submit my person entirely to the task of making it better and more fully realized– to become my work. I don’t know if I could have done it, though, if I didn’t know it would last only 48 hours. I got the slightest taste of that despair that so many developers must feel when they sacrificed their lives to a project which simply would never be what they wanted it to be.

Pictured: Alternate universe ghost version of Team Meat

So, a cautionary tale, and also an inspiration. Read More

Ludum Dare ended five days ago and now it’s in the voting phase, where everyone plays everyone else’s games and votes on them. There’s 1406 of them, though, and I’m being incredibly remiss and have only rated 10 or so randomly selected games. I’ve been lazy, and I’d make excuses for that laziness but I’m too lazy to bother. It’s a certain very special kind of efficiency I’ve perfected.

Anyway, the consensus on my project, as far as I’ve been able to gather from comments, mirrors my own analysis of it fairly closely: It’s an impressive bit of programming for 48 hours and an intriguing screen saver, but there’s not a lot of game there.

It was an interesting project to work on for several reasons, but it struck me as unusual in this way: If I were to pursue it completely and wholeheartedly I have no idea where it would take me. That is, usually when I have an idea for a game I have a very defined end point, either a story I want to tell or an experience I want to convey. In this case, I want to simulate the impetuses of nature which cause a species to evolve over time in an interesting way: Then, build a game on top of it. This approach has two– I want to say limitations, but that’s inaccurate. The opposite of limitations– two breaches in the hull of the ship that defines the design space, where the design can go off to infinity. Read More




Oh wow I can’t believe it’s over.

I’m pretty hyper despite being exhausted. I actually got in a lot of what I wanted to get here: the animals breed with each other, successive generations mutate slightly, and successful creatures survive and breed while the less efficient ones die out. Now, they’re all stupid and vegetarian, but I’d say that’s pretty good for a weekend’s work.


I don’t know if I’m ever going to work on this project again, but it was a hell of a learning experience and it should make for a truly excellent portfolio piece. I hope following my progress on this has been interesting for you guys. I’ve kind of lost all perspective and utterly destroyed my brain with caffeine and adrenaline at this point.

So yeah. If anyone wants to try out the game, it’s available here. If you’re a programmer and are interested in the source code, that’s all uploaded here. My entry is up on the LD site here: voting is only open to other entrants, but you can see how well I do if you’re interested.

If you’re sick of LD updates, well,  I have good news and bad news. The good news is, regularly scheduled essays will resume on Friday– the bad news is, the first one will almost certainly be a post-mortem of this project and experience.

7:30am. About 10 hours left.

I am incredibly tired.

The absurd scope of this project becomes more apparent with each step I make. This is a concept better suited to a thesis assignment than to a 48 hour competition. It’s absolutely apparent at this point that it’s super unlikely I will manage to meet even my more modest goals.

And yet, I am proud of what I have achieved here.

The creatures wander around. They perceive each other, follow their allies, avoid their enemies, They eat, they breed, they die. The terrain is procedurally generated using layered perlin noise, and though it’s not perfect by any stretch of the imagination it is nevertheless pretty good for thirty or forty minutes work. Water and grass are added based on the heightmap thus created. Creatures consume the grass, and without it they will eventually die. They drink the water as well, but not enough to lower the level or anything. If they go into the water too deep for too long they will drown. They move more slowly uphill, which is lucky for them because before that a lot of them were starving in the mountains.

If I had the time, I could turn this into something really special.

That may or may not happen (right now I’d just as soon never look at it again). However, I’m proud of what I achieved here on a technical basis alone. Lots of people like to play up Flash’s slowness and clumsiness, but on my system I have 800 creatures with basic AI wandering around and perceiving each other and it runs fairly consistently at 30 frames per second. Many of the techniques I’ve developed here I will, I’m certain, be using in future projects. Altogether, even if I dropped the whole thing right now and gave up on developing this any further, I still think this would have been time incredibly well spent.

You can check out a working version of this thingy here. Give it a little while at the start to generate the terrain, since that’s a slow process, and try looking at the full screen version for a better idea of what’s going on. The animals are in 8 species with 100 animals per species to start with: note how they will quickly begin to gravitate towards others of the same species and away from potential enemies. Food is stripped away slowly but where they travel will become browner. These critters are too dumb to swim to shore, so you can watch entire populations die out by swimming into lakes.

There’s no mutation yet unfortunately, which undermines the entire concept of natural selection. This is the main concept I’d really like to get into the simulation that isn’t in there now, but I’m just now starting to realize what a truly tremendous amount of work it would be to realize it the way I want to. So, that very likely won’t happen. So it goes.

My brain feels kind of mushy. I’ve been slowly improving on what I had last night, trying to fix the multitude of little problems that came up. Well, it’s better anyway.


After much tweaking and noodling around, the damn dots finally recognize each other and group up. I could probably spend the entire remaining 20 hours or so polishing up and improving this behavior, but I think it’s better to turn my attention elsewhere and try to see if I can get any gameplay up in this.

So yes, it’s that time again: Time for the traditional Ludum Dare lowering of the expectations! Current plan is to get it set up with some terrain, food, water, etcetera. Animals will eat, shit, die, all that good stuff. The role of the player will be to strike down select animals to help maintain the health of the overall ecology. Much as with the original hunter concept, but easier to program in 20 hours.

So yeah. Wish me luck.