Musing – April 4th

Trade-offs are common on system design. You want to upgrade the system in one way, but by doing so you degrade it in another.

This often leads to a conundrum of accessibility. You want a system to be functional and accessible to everyone – but sometimes modifications that will make a system accessible to new users can degrade the system for existing users. Over several years Blizzard iterated on the design of the Starcraft 2 multiplayer ladder and it went from a rather harsh “You lost. It was your fault. Git good” system to one that was much more gentle on new players. Some of the veteran players balked at these changes – they were into the masochism of the experience. But ultimately things worked out because the fundamentals of the game remained.

Another twist to this conundrum is when you have different population sizes. If you have a large marjority of people who are benefitting from the system it’s hard to argue that the system should be changed to benefit a small minority. If you change the rules of a basketball game so that the kid in the wheelchair can play it you are degrading the experience for the able-bodied players. The

The problem here is one of deontology vs relativism. Noticing minorities, caring for minorities, including minorities – these are categorical imperatives. But is difficult to do so at a systems level.

I have a friend who’s child is autistic. She wants him to attend Mormon church services – which often require children to sit still for three hours without much stimulation. Anyone who has studied the challenges autistic children and adults face will tell you flat out that such a thing is impossible. The system is designed in such a way that autistic children cannot benefit from it. She attends a ward of 300+ people. Should the services that benefit all these people change for her single child?

The other consideration is that this argument is used as an excuse by an majority to justify their systemic oppression of a minority. The entire anti-immigration argument is framed on concept – that by changing our system to care for and accommodate immigrants we will make it work worse for the ones already here. Or if we change this system to combat racism and help raise blacks out of poverty we are degrading it for white people.

There’s not any single answer to this problem. But I think the categorical imperative is a meaningful guideline here. If a church claims to be for all children of God – like the Mormon Church does – but casts away autistic children then something is wrong. If a society claims to be good – but oppresses blacks, immigrants and other minorities – then something is wrong.

Posted in Free Writing | Leave a comment

April 2nd Free Writing

We are attracted to contrast. Not attracted really – it’s more like we’re hard wired to pay attention to it. Like contrast is a bug in the neural network that runs our attention system. We can’t help but ascribe special importance to the object that contrasts with it’s neighbors.

Now this bug can be useful. If your want someone to pay attention to something to learn something you present it in a way that contrasts. Contrast is used in Art, Film, Literature, Games in profound ways.

But it’s also used to excuse evil and to ignore good. If someone is good 99% of the time but commits one act of evil – the contrast is such that everyone looks at that one act. Conversely if someone is 99% bad and does one good thing – contrast forces you to observe that one good act.

Since the rise of Donald Trump I’ve heard the contrast excuse countless times. It goes like this: “Well he may be a terrible son of a bitch – but he’s right about not ignoring rural workers. Well he says stupid things all the time, but he did say something smart about earmarks. Etc.

(Coincidentallu many of these same people who make this excuse talk about Obama in the same way – i.e. Sure he was eloquent and all, but he lied that one time about Obamacare. Sure he was level-headed and all, but he blew it on Bengazi)

What this does show is an astounding lack of objectivity. If something is 99% bad and 1% good – you dont want it! As good as that 1% is the rest is garbage or worse. All decisions are important. Good must be pursued every day.

I think this is how abusive relationships work. The abused party becomes addicted to that 1% – because it’s so marvelous when it does occur. Whenever the abused is ready to quit they think of that one good thing that happened a few months ago and stay on for the next one.

This is probably a problem in good relationships too. You may have a partner who is always kind and caring, but does one selfish thing. And then that bad moment – by nature of it’s contrast – lodges in you brain, ready to be pulled up the next time things get hard.

Okay so I’m presenting this in a simplistic form. In reality “good” and “bad” are exceptionally difficult to define, and every act is somewhere on 20 different continuums. But it’s a principle worth considering.

Posted in Free Writing | Leave a comment

Z is for Zombie

Z is for Zombie

It’s Halloween, and that means zombies!

Or, at least symbolic representation of zombies using ASCII!





And experience the true terror of the letter Z!


I made this game because I love old-school ASCII roguelikes, but know too many people who are put off by how dense they are. Z is for Zombie captures the aesthetic of these games, but without the steep learning curve required to “see the matrix”

Also… because zombies

Z is for Zombie

Posted in Design, Games, Public | 3 Comments

Generating Documentation using Sphinx

Recently I’ve been working on a python project and decided to use the highly-praised Sphinx package to generate useful and beautiful documentation for it. Unfortunately I found Sphinx’s own documentation to be a somewhat lacking – which is kind of ironic if you ask me. Anyway, here are the steps I found to go from “A dirty pile of python code with no documentation at all” to “A dirty pile of python code with beatifully formated sphinx-generated documentation.” Continue reading

Posted in Design, Public | Tagged , , , | Leave a comment

Three Kings



I made Three Kings for the 2013 Holiday Game Jam by Glitch City. It’s an interactive exploration of one of my favorite Christmas carols: “We Three Kings of Orient Are.”

I’ve worked on it since then, cleaning up the bugs and making it a little less “game-jamy” The levels ended up being a little too long, and cinematic scenes are still a little rough, but overall I’m very happy with how the game turned out.

The music for this was done by the ever amazing Angus McKay.

Download Three Kings for Mac and PC

Posted in Design, Games | 1 Comment

Psychology Books for Game Designers

A few months ago I saw a question on reddit (in the /r/gamedesign subreddit) asking about useful books on psychology for game designers. At the time I had just finished a book on Jung and had been thinking a lot about how idea of the collective unconscious can be used in game design – so I had a pretty good response ready. Continue reading

Posted in Design | Leave a comment


Ever since I was a little kid, I’ve been inspired by stories of american slaves escaping north through the Underground Railroad.

I built this game prototype to see how these stories could play out in an interactive experience.

The build of the game is in a decidedly Alpha state. The core experience is there, but it’s missing lot of models / animations / sounds. Especially the slave hunters – who are pink capsules – and the cabin at the end of the game – which is a pink cube.

I’d love to develop this game further sometime.

Jordan – Windows

Jordan – Mac

Posted in Design, Games | Leave a comment



I’ve always been fascinated by simple pleasure found in physical play where the rules are enforced socially rather than mechanically. My kids have given me plenty of opportunities to experience this.

This game is an experiment to see if rules can be socially enforced by an NPC. I think it works pretty well.

Play Monster

Posted in Design, Games | Leave a comment

Squirrel Fight


I made Squirrel Fight for a one-button game competition in 2009. The idea for it hit me as I was riding my bike home one day and by that evening I had my first prototype. It’s an RTS game – like Starcraft – but with extremely simple controls.

It’s a two-player game, so you’ll have to grab someone nearby and play with them.


Posted in Design, Games | 2 Comments

Water Cooler

This one requires some explanation.

In 2009 I was a new graduate student in the Interactive Media program at USC (now the Interactive Media and Games program). One night during our weekly seminar, Scott Fisher – head of the program at the time – announced that because students kept stealing his water bottles he was going to put a new water cooler in the lab. The new water cooler came, and worked great for about 10 days – until we drank all the water in the two provided jugs.

Weeks went by with no replacement jugs. We worked late nights in the lab – groups of students huddled around glowing monitors furiously trying to make awesome games  – with that dry husk of a water cooler leering at us, mocking our thirst.

One night I’d finally had enough. Taking a cue from our many in-class discussions on “Serious Games” and “Games for Change” I opened up Adobe Flash, and in an hour or so built a game. A game with a powerful contemporary message. A game that would show the elites that they could no longer ignore our suffering. A game that could inspire all humankind to lay aside our petty differences and be united in the cause of ensuring well-hydrated game designers!

And that was how Water Cooler was made.


Anyway it worked. You can still see the reaction to it on the USC Interactive website ( look for Scott Fisher’s response 🙂 ). New water arrived shortly afterwards and the cooler was finally filled.

I worked in that lab for 3 more years, and every time I drank from that water cooler I felt the satisfaction of having made the world a better place.


Posted in Design, Games | Leave a comment