Monthly Archives: March 2014


When we’re hungry, we can gain insights our overall physical and mental state by the foods we crave: Sugary and sweet stress salves or crunchy salty protein reinforcements, our hungers reveal our deficiencies, real or perceived. Our tastes in entertainment, our fickle fiction hungers for games and other media, are little different, and can be similarly revealing.

I’ve just had a falling out with a game I’ve played nearly every day for the past year or so. This isn’t the first time this has happened, either in general or with this particular game – but it’s interesting, once I pull that plug, seeing the shape of the hole it leaves behind. It’s interesting feeling the cravings that I begin to develop in its absence, and begin to wonder at what they might mean about myself – and, furthermore, what the massive popularity of certain games and genres might mean about what we crave as a society.

I miss the feeling of mastery that competitive games offer, and this is something that concerns me slightly. Just as the readiness of my response to the easy creativity of building games like Minecraft revealed my frustrations with my own creative process – and the ways in which that process felt unfulfilling and artificial – I’m forced now to wonder: what exactly does it mean to me when my efforts at mastering art, music, and programming, fields that produce actual works which can be appreciated by other human beings, feel so ethereal and insignificant compared to blowing up a stranger in a video game?

It may just be a matter of rapid feedback. It takes a long time to develop a game, to compose an album, even, relatively speaking, to complete a drawing. Even disregarding the production time, the results of my effort take time to reach their intended audience, sometimes just a few minutes, but sometimes hours and days and weeks, sometimes months. Certainly, at any rate, much slower than a cartoon rocket, which reaches its intended recipient within a second or two.

It’s also a matter, I suspect, of the clarity of the feedback. You can have all your friends tell you that something you’ve made is brilliant and still suspect, somewhere deep inside, that they’re just trying to be nice, or that their judgment is clouded by their friendship – but that dude you shot with your rocket gun definitely blew up, and there are little bits of him still rolling around. The contract the game makes with you is that if you take the time to get good at it, it will reward your skill with an increased chance of victory – something we prefer to believe is paralleled by other forms of mastery, but which all but the most successful of us find little concrete evidence of. Indeed, it was a perceived violation of this contract that made me stop playing the game… but I digress.

These are the thoughts which occupy me in my idle moments, now, moments which I’d probably otherwise be using to play this game. It leads to another line of thought, though: These mobile games, these miniscule and monetized, micro-transacted and unprincipled skinner boxes, why is it that they’re so successful? What is the hunger that they feed, and where did it come from? Is it the need for steady progress? Is it the need to feel rooted in, and established in, a world, no matter how inconsequential that world might be?

Or is it, as with me, a need to exert a kind of mastery? Is it the need to believe that our money, meager as it may be in the grand scheme of things, is enough to make a real difference in some kind of world? Is it a desire to know that all the hard work we put in every day, even if it makes no visible difference, still has an impact somewhere, sure as a cartoon rocket?

What is it you’re hungry for?


This project has been moving so goddamn slow it’s starting to make me sick. This is the part where I’d promise to do better this week, but to be honest I’m perceiving the forces and weights that have pushed me into this kind of slow progress and some of them aren’t likely to be moved so quickly. It’s worth, though, taking a moment here to discuss what they are, since I don’t really have a lot of progress to report.

1) Tool Development

Tools are kind of interesting to program, but they’re extremely detail-oriented and time consuming – and, more importantly, because they’re not really creative work as such, I have an extremely difficult time maintaining motivation and precision of focus on the sub-project for a long time. As I spend more and more time on these programming sub-tasks, my morale suffers, and I start casting for excuses not to do the work, or I begin hunting for more interesting sub-tasks to focus on while I build it up. I’ve experimented in the past with splitting and segmenting my programming work out so that I don’t ever end up doing too much of it at once to counteract this effect, and maybe it’s time to think about doing that again. It’s an approach that comes with its own set of problems, but a new set of problems is better than dealing with problems grown decayed and tedious. I’ll have to develop a secondary task list of non-programming work, though, if I’m going to split my time. I’ll be considering that.

2) Money Work

Because this project isn’t likely to make me any money for quite some time (especially at this rate), I need to spend a lot of time doing odd jobs to pull in money for rent and food. Along with these jobs comes a certain degree of intellectual, emotional, and organizational overhead which tends to add up, and above and beyond the time it takes to do these jobs takes its own toll in terms of the focus I can apply to my work on EverEnding.

3) Side Projects

This emerges from the first two pretty directly, now that I think of it. Since I’ve been frustrated by the relatively tedious section of work I’ve been doing on the game, and since I’ve been continuously starved for funds, I decided to pursue a side project … at a point earlier this year when funds and time were a little bit less scarce than now. Well, it’s still not done, though it’s getting close, and I’m hoping that the time its completion will free up and the money it will (hopefully) generate will reduce pressure in all other areas. We shall see.

4) Idleness

I have no idea how much time is appropriate to dedicate to relaxation, to playing games of others, to reading, et cetera. I suspect that I spend too much time on this stuff, but I’m also wary of the consequences should I push myself too hard to abandon them, which have in the past sometimes exacted a somewhat harsh toll in terms of stress, depression, and creative burnout.


So I have these four forces, and between them I’m trying to establish some kind of alchemy that generates a life of happiness, fulfillment, and productivity – and, incidentally, a completely awesome video game. So far I’ve only met with middling success. But, here’s the thing: If I can maintain a balance, and maintain it for long enough, eventually things will happen. Eventually I’ll start to achieve a critical mass on EverEnding, and it will need less and less conscious effort from me…  Not to say I won’t have to work as hard on it (quite the opposite in fact), but that its shape will be defined by the skeleton which I have granted it, and what will be left for me is to spin the flesh that fills the space in between the ribs. That’s the dream, anyway. But, until the balance can maintain itself, all I can do is progress, and try to maintain the balance myself, and tweak as I go, seeing if one change or another brings me closer to the ideal.


Whenever I decide I’m not going to do something I’d intended to do, whenever I decide to let myself off the hook, my jaw loosens. I don’t notice the tension until it’s gone. I put these burdens on myself and forget about their weight, but that weight adds up, and I get tired.

It’s often, these days, only after I give myself permission to give up that I find the energy to persevere. What a betrayal! That’s not how determination is supposed to work!

This is the way of things though. Once you’re on the hook, sometimes you have to step forward before stepping back if you’re trying to shake free. Though striding ceaselessly forward is admirable, that doesn’t make it intelligent or useful. Sometimes you must go the long way.

But who has the time for that shit?

It’s optimization. It’s calibrating my load to match my strength, and when that strength varies wildly from day to day it leaves me struggling to keep up. Since it’s uncommon for me (and, I think, most people) to take on extra work on days when I’m feeling exceptionally capable, that means that I need to calibrate my load rather high, and scale that back. But I’m afraid of setting a precedent, of taking things too easy on myself, of backsliding, further and further away from where I want to reach. It’s a balance between present and future, safety and happiness, and there’s no stable point of equilibrium. Every day is a new game of analysis.

The quest to find a long-term happiness for oneself can’t be divorced so easily from the quest to be happy day-to-day. There’s no point to burning the present in the hopes of fueling the future – but there’s no benefit to selling the future to pay for the present either, so this too is a balance.

Eventually I will master this skill. Eventually I will gain the vision to gauge my strength accurately, without being dazzled by my image of a better self, an inexhaustible, abundant, and infinite manifestation of my will. Eventually I will gain the discretion to know what tasks I can assign myself, how taxing they will be, and how quickly I will recover.

Until then, all I can do is forgive myself when I fall short. All I can do is remember to breathe, remember to loosing my jaw muscles, try not to be angry, try not to be irritated, try to keep moving, try to maintain an existence which justifies itself rather than one which seeks justification.

It don’t think it will ever be easy, but I’ll live, if can I let myself.


Another week developing interface stuff. I finally got the scrolling window working right and debugged, so I’ve started implementing all of my entity editor interface components using it, and I’ll be trying to spot other places where it might come in handy as I go. With that, I’ve started finishing up with creating and adding the control panels, only to run into two difficulties:

First, for some reason none of the text input works on the control panels. This is something of a mystery, since testing shows that the text fields are properly receiving mouse events, but the text isn’t getting selected or edited the way an input text field is supposed to. All of the code looks good to me, so it’s probably some kind of weird interaction with something else I’ve written or a structural problem with the way mouse events are going through the display list. This was only a minor issue as long as I was inputting solely boolean and numerical values, but as I develop the animation and sound control panels, which use a lot of string parameters, this is going to become more and more problematic.

Second, and less confusingly, there’s currently no support for creating an ’empty’ command for the sound or animation behaviors, something crucial to making the actual control panel interface work. This isn’t really a big challenge, but it is, alongside the aforementioned text problem, an obstacle that will definitely need to be addressed before I can make progress on the sound and animation editors.


That’s what it looks like right now. Notice that the panel at the top is now handled in terms of nested scrolling windows: Each of the most internal ones represents a discrete sound command, and hidden to the right is a (currently non-functioning) button for adding new commands. For the next few days, I’ll be working on getting that button working… and figuring out what the heck is going wrong with these text fields.

It’s been slow going. I’ve been working on some flavor of these problems for more than a month now, I think. But I’m starting, however slowly, to approach the end of this particularly boring side of the project, and get slowly back into the parts I actually find interesting. Hopefully not too much longer now…


Is luck fun?

Games, and those who play them, have a somewhat tense and delicate relationship with luck and randomness. In the best case, adding some randomness to a game can create unexpected and delightful variations on the basic challenge of a game, forcing players to improvise through bad situations and capitalize on favorable ones. In Spelunky, the behavior of all in-game objects is – hypothetically, and aside from minor programming inconsistencies – completely predictable: However, the placement of these objects in relation to each other is randomized, and what at first seems like a commonplace challenge can quickly spiral out of control as the objects interact on each other causing a hectic chain reaction. The skills of recognizing how these situations can arise, recognizing the warning signs, and taking appropriate precautions, far outweigh the demands of pure platforming skill when it comes to performing well in Spelunky.

In the worst case, however, randomness can arbitrarily punish players for making what is actually statistically the best choice: If you know that nine times out of ten saving up for a cloaking device is the best path to victory in FTL, and you play accordingly – only to find out that this is that one time in ten where the resources you gave up cost you the game – it feels frustrating and random, like losing at a slot machine masquerading as a game of skill. Another example: By default Team Fortress 2 has a randomized +/-10% damage range on all weapons, with a randomized chance of occasionally doing a “critical hit” which does 300% damage: What this basically means is that no matter how carefully you’ve planned an engagement, if you think “okay, I can get the drop on this guy, get one hit in, he’ll turn and shoot and even if he hits I’ll survive and hit him once more and drop him”, all planning is rendered irrelevant by the other player getting lucky and instantly killing you in one shot.


Pow! Right in the kisser!

So what’s the difference? What’s good random and what’s bad random? What’s an engaging and unexpected twist and what’s an arbitrary and undeserved punishment or reward?

The key to whether randomness in a given game mechanic is fun or not primarily has to do with how much room the player has to react to it. This can come in the form of pre-knowledge, giving the player the exact odds of success or failure or the range of values an action might produce, so that they can integrate that into their strategy. However, if the consequences of that strategy failing are dire, then we’re in the FTL situation, where the player can easily be punished for making what is generally the best possible choice. If the player is being asked to create an optimal grand strategy around a set of statistical chances, then it is vital that the risk on each individual engagement be low – or, as is the case with Poker, the player have some degree of ability to determine how great the risk, and commensurate rewards, should be.

Better still, give the player post-knowledge, show them the numbers after they’ve been rolled and then give them a chance to formulate a strategy around them. Spelunky’s randomness is seldom frustrating, since you have plenty of time to survey the field and devise an approach.



Most card games use a combination of pre-knowledge (knowing which cards are in the deck and how many) and post-knowledge (knowing which cards are in your hand) to create a vibrant strategic space. Games like Magic further riff on that by hiding pre-knowledge of your deck from your opponent, while traditional card games like Poker add an additional layer of wagering to the game system as mechanism to account for the randomness.

By giving the player pre-knowledge and post-knowledge of your randomized systems, you’re enabling them to make informed gameplay decisions, and creating a more interesting strategic and tactical space. Without these elements, adding random factors to your game will only make it more tedious and arbitrary, rather than more exciting.


The Game Developer’s Conference is starting today, and I’m not there. I haven’t yet managed to reach the heights of either profitability or notoriety that make attending practical, so I have to sit out for now.

It’s not a disaster, but it’s something that saddens me, if only slightly, about the life I currently lead.

I’m trying to steer a path between two extremes: On one side, we have poverty, which I have a regular flirtation with but keep at enough of a distance that I can feed and house myself, however humbly. On the other, we have surrender, giving up all of my time to further someone else’s ambitions, flying their banner, so that I don’t have to struggle to get by. Freedom is somewhere in between, but it’s a narrow path.

If I cede too much ground to indulging my own desires, I run into money problems rather quickly – these problems are less immediately threatening to me than they are to many, as I have a number of friends and family guarding my safety. It’s a terrifying thought, to me, how many people have to brave this chasm without such a safety net. This is one way in which I am incredibly lucky. I hope never to be forced to rely on these, though, since at that point I’ll feel ethically obligated to take whatever work I can to regain my self-sufficiency, regardless of how far it may take me from my own ambitions.

It might not sound so bad, taking whatever job, and for sure it’s better than the lives that many people have been forced to live. It is a terrible sign of indulgence that I’m dissatisfied at the idea. However, there’s things I want to do, and if I can’t live a life that takes me where those things are, I really start wonder what the point is. If I spend all my time grinding money to secure a future, what does the actual future I’m securing contain? If I concede my precious time to someone else in exchange for money, what is the money actually good for? What could it get me that would possibly be as precious as what I’m giving up?

I’m hungry for time, hungry for freedom, and hungry for money, but each hunger abides at a manageable level, none too consuming. I constantly worry about that balance being thrown off.

I don’t mean to complain. Even as the balance is delicate, even if I’m poor and lonely, the life I’m living now is kind of amazing. I don’t know if I could keep doing what I’m doing now if I thought I had to do it forever, but nothing is forever. Perhaps all I need to do is hit a certain critical mass of completed work, and pressures from all directions will start to ease – or all I need to do is discover a set of smaller ambitions, closer to home and easier to grasp. But I don’t think it will ever be easy: I don’t think I have it in me to lead a life without wanting to do something at least slightly impossible. The life I choose will probably never be a contented one, I’ll never be able to sleep but to imagine sheep grazing on greener grass, but it’s enough for me that it be one that I chose for myself.

I don’t know what more anyone could ask for.


For a lot of this week I ended up being out of town on a little family vacation, so there were a few days there where I couldn’t do much of anything. I don’t know, maybe I needed the break – I’ve certainly been feeling more motivated for the past few days. Then again, that may also have to do with the slightly grotesque quantities of caffeine I’ve been imbibing. Who can say?

Anyway, I’m finally getting close to the end of working on this stupid pain in the ass interface component for this stupid pain in the ass entity editor – and, what’s more, I’m starting to realize some of the unexpected benefits that can occur when one takes the long road. Here’s a screenshot:


Here you can see the scrolling windows in place for the control panels of the behavior editor. They look basically the way they’re supposed to now, but are still a tad unreliable in terms of behavior. You can also see an entirely new window here in the middle-left: I originally created this just to test out the scrolling window class, but then I started thinking about what controls I could include there, and I started to be intrigued by the potential applications. Now, granted, since I have to add each control manually in the program, this is hardly as flexible a dev tool as the development console you get in most 3d engines, but it could still be pretty damn handy. Right now I have a switch to enable/disable the FPS display, and I’ll probably add some buttons to change editor mode, but beyond that I haven’t decided which controls to add. I may just add them as I feel like I require them.

So, not a ton of progress this week, but I’m finally wrapping up these side-tracking problems of interface design that have been taking up my past few weeks. Once I do some debugging and add a bit more polish to all of this stuff, I should be able to go back to the entity editor itself, where I anticipate some fairly quick progress. As I go I’m probably going to have to revisit these interface elements bit by bit to add or streamline features, but I think in general my work will be more directly related to the game from now on – which is a really really good thing, because this incidental stuff and the time it devours really saps my motivation.


There is a process which repeats, a cycle with no end in sight. As my skill grows, my ability to recognize my own flaws grows with it, and thus, from my perspective, it appears that I’m not growing more skillful at all, or perhaps even that I’m getting worse. The train car I travel in moves with me, and I can only tell by shrinking scenery and a creaking back and forth sway that I’m moving at all.

It’s not uncommon to come back to a game after taking a long break from it and find that one has improved greatly in the interim – as counter-intuitive as that may seem – only to soon thereafter decay back to one’s previous level of performance. Is it just the frame of reference shifting, the increase in skill seeming impressive from the sudden start and leveling off as we get used to our game? Or do we actually sink back down, weighed down by our previous good performance and the new expectations it created within us?

It isn’t just skills that follow this pattern – or, at least, things we traditionally consider skills. The more humble and patient we become the more out of place and ludicrous our remaining pride and aggression seem, the more we try to fit into the world the more we see the ways we stand out, the more accomplished and celebrated we become the more we see ourselves as imposters. Everything is moving, but we keep standing still – even when it was us that drove the change, even when we were the catalyst, even when we are the captains of our destinies, it just never seems that way.

And then we make so many of our games in the opposing shape, cast inverted against the mold our world provides. All feedback, no progress. The numbers go up, the monsters get bigger, the stakes higher, the drama more overblown, while the core of who we are remains untouched. We do not improve, we do not change. We see the progress, instead of being the progress, and when the train leaves we’re not on board.

We’re starting to see the difference, though. We know what progress looks like, and though it can be inspiring viewed from the outside, it isn’t the same as a personal transformation. This is why games are starting to push back. This is why Spelunky will murder you, Dark Souls will murder you, Super Meat Boy will murder you, and you will like it. If the game doesn’t push back, if it doesn’t apply itself against the player, it will never change them. If the game doesn’t push back against your hand – whether it feels like a stone labyrinth wall as in Dark Souls, a Chinese puzzle box as in Antichamber, the wood grain of an old house in Gone Home, the rumbling cartoon machine of Spelunky, or the warm pressure of another hand from Team Fortress 2 and other competitive games – if it doesn’t push back, you will never feel anything at all.

Mere interactivity is meaningless without the pressure of that touch. It is that which makes a game a game. If you don’t have to exert yourself against it, if you cannot feel it pressing back against you, it may as well be a sitcom or the tinkling of chimes in the breeze.

Seeing a train go by may be beautiful – but only the trains you board will take you where you want to go.


I keep having trouble writing. I’m dismayed at how many posts I’m writing premised on the situation that I’m having a hard time writing, even if each approaches it a bit differently, even if each day’s problem is its own. There’s a block of clay in my chest and it sinks into my shoulders and it makes them heavy. Of course, when I say I’m having trouble writing, I mean I’m having trouble writing what I want to write. I can always just say words. I can always just tell you about the block of clay. I can always just connect, my mind against the paper, generate a spark by contact, even if it isn’t one that illuminates.

I have a well of words, it floods up through my feet, it chills me, it carries diseases. I can’t express how much I want to express, and trying to work my jaws to say the words they rust and they crumble, useless, onto a page.

I hate this. I want to be better. I keep trying, and I make a seesaw sine wave progress, a bit up and then down, frequency unstable but amplitude climbing. The more I want to be better, though, the heavier the clay gets, and the more of it I have to spit out before I can dig through and into my insides, where the real insights hide. Probably. I hope so.

There isn’t another process but by trying again, and then again. There isn’t a way to do it right the first time: Even if the first try was right, it can’t be shown to be so except by light of the 100th try. I have to do this again and again and again, a million extra lives, Spelunky to Groundhog Day to purgatory, or I’ll never ever get it right.

This is practice. Even after you leave school you never really leave school – although, by the same token, even before you leave you’re already halfway gone. The true masters never stop being apprentices, keep on pursuing the invisible quarry of their vision, and live each day hating themselves for their inadequacies. Probably. I think so.

The more I can improve, the more I ask of myself. This is not a trend that I foresee ending. Even so, I can remember that not all days will be my best, remember that I am climbing many trees at once, and remember that straight paths don’t always lead to great work. I can remember to just let myself be what I can, create what I can, for now.

I’ve said all this before, yes, but I see I must say it again and again, better each time, expanding on the idea piecemeal, until I can finally forgive myself for my rampant everyday inadequacies.