Blog | Tristan Kernan

“That some of us should venture to embark on a synthesis of facts and theories, albeit with second-hand and incomplete knowledge of some of them – and at the risk of making fools of ourselves” (Erwin Schrödinger)

Katamari

I've been playing my nintendo switch again, grabbing games from the library. First, what a great deal, it reminds me of going to blockbuster as a kid, except there's no fee to rent, and generous return turnarounds. Second, it's been fun to play random indie games alongside more popular hits. I grabbed Once Upon a Katamari a couple weeks back, and what a blast, it took me right back to playing Katamari on my playstation 2 as a teenager.

For the uninitiated, Katamari is a game with a sacred mission: rolling up the world into a giant ball. You start small, maybe a few centimeters in size, rolling up paper clips and peanuts. Then, as you grow, you start rolling sushi rolls and playing cards, then small animals, then big animals, then people, bushes, trees, houses, and eventually islands. It's as silly as it sounds.

Reading the Artist's Way, and getting into a daily schedule, I wanted to get back into what it feels like to play at work. So I started where I started as a teen: making games in the terminal. Back then, it was battleship printed to the console; that evolved into curses games, followed by graphical games with sdl2 (C) and libgdx (java) and pygame (python).

screenshot

I made a simple Katamari-inspired game in the terminal this week (code-named Battle, you can see my creative energy went into the game not the name!) - check it out here. The object is the same: roll over other players of lower levels to accumulate them and grow in size, while avoiding higher level and larger players.

It was fun, even doing 2d math in the convoluted dimensions of curses where (0,0) is the top left corner, and positive is down and right. I set a daily goal of 1 hr and regularly exceeded this goal to the point I had to hold myself back (pacing works in both directions, doing not too much and not too little). I am pleased with how it came out, though not perfectly pleased - it has some rough edges and bugs remaining, but I'm intentionally practicing marking it done now so as to also get in the habit of shipping imperfect code over endlessly tinkering (how many half-done projects lie in my github private-repo graveyard!).

As Julia Cameron said, when work is fun, it's a lot easier than when work is forced and perfectionistic. Thank you, Julia!