Friday, December 28, 2007

Travelogue: The Move To Osaka

Weird, many people think I'm already in Japan. Anyway, It's T-Minus 7 hours before my first plane takes off, so here's a liveblog of my departure from Adelaide, Australia to Osaka, Japan. Check back often, I'll keep updating.

Friday, 28.12.2007
23:16 - I'm alone at the ETC, so iTunes is cranked up. I'm ripping Clone High for Rob, and trying to fit all my crap into my two large suitcases and two carry-on bags. I have about 50kg of stuff. This will not end well.

Saturday, 29.12.2007
4:21 - Well, it didn't end too poorly. My luggage is quite heavy, but acceptable. I'm all packed up, ready to call a cab and leave the ETC. Man, I really hope I don't lock myself out this time.

6:35 - Sitting in the Adelaide airport, waiting to board the plane. Beautiful sunrise as I sit here. Also, holy crap that was an expensive charge for overweight baggage: over A$300! Oh well, it had to be done, and wasn't much more expensive than the Australia Post would have been. Here's hoping the wine makes it through the trip!

22:27 - Well, that was a boring travelogue; no Internet access anywhere. *sigh* I'm in Japan now! Woo!

Tuesday, December 18, 2007

Fixing Leopard's .dylib Problem With Universal MacPorts

Apparently, Mac OS X Leopard has drastically altered the way its linker works. The Ruby community is running into problems installing gems, but this change extends beyond interpreted language modules, and some people are getting really irate. I ran into this stuff head-first today while trying to make a program building off of XNJB.

I'm building an Automator action deriving from XNJB, but for the life of me I couldn't finish compiling; the linker insisted that libiconv was not defining the proper symbols. Despite libiconv being in both the OS X 10.4u and 10.5 SDKs, as well as MacPorts, the program just would not link.

If you tell Xcode to only compile for your architecture, things work out alright. But what if you want to distribute your app? Isn't that what Universal Binaries are all about? Well, apparently, the real problem with Leopard is some complicated gcc/linker mojo (something about the way Leopard resolves .dylib locations), but it's easy enough to workaround if you link to MacPorts versions of your libraries; just recompile your ports as Universal Binaries. For me, I had to recompile several:

sudo port deactivate libiconv zlib libxml2 libxslt jpeg tiff libpng

sudo install libiconv zlib libxml2 libxslt jpeg tiff libpng +universal

Ugh, MacPorts needs some common nomenclature. (Yes, I know most of that isn't their fault.) Once those were installed, and Xcode was instructed to look in /opt/local/lib for libraries, everything compiled (to a UB!) just fine. If you've got this problem, hopefully this helps!

Maybe I can use this to finish that OS X build of Panda3D.....

Sunday, December 16, 2007

StreetSmarts Public Release

A really long time ago I planned on open-sourcing some of my stuff. "Some of my stuff" ended up being "none of my stuff," because I was just too damned lazy to clean it up.

No longer! I found out the code to StreetSmarts, my file renamer, is pretty cross-platform if one is inclined to use Mono on MacOS or Linux. So, I finished cleaning up the code, figured out what command lines would compile StreetSmarts in Linux and OS X, and VIOLA, now I've got a project up on Google Code.

You can give it a whirl, if you've got files that need renaming. Just head to, download the version that's appropriate for your system (or checkout/compile from source), and have at you!

Are there simpler ways to do mass file renaming? Hell yes. Still, I'm happy to have produced something relatively interesting and open-sourced it.

Monday, November 05, 2007

Quick Path Access in OS X

Here's a neat trick I just found out about, that I'm sure has been present forever. When you're using Safari, Finder, and presumably any other application with "paths," context-clicking the title bar will provide a breakdown of your current browsing context.

In Safari:

In Finder:


Sunday, November 04, 2007

Amazon MP3 Store: Digital Music Done Right

I just spent 30 minutes tooling around in Amazon's MP3 Store. After reading the reviews and whatnot, I was pleasantly surprised with exactly the experience that was promised--tons of music, all of which is priced relatively cheaply, with a light-weight cross-platform downloading program (whose usage, best of all, is OPTIONAL).

It's spooky how well this store is put together. The (unfortunately Flash-based) preview applet is non-intrusive, opens no new windows, and works nicely. I've been wanting Kanye West's Stronger, so I got it. Easy-peasy. I also bought Year Zero and Human After All for about $8 each. No DRM, high-quality. The coolest thing? I had free access to those albums anyway, but in lower quality rips from friends.

Do you hear me, you media conglomerate bastards? (Of course you don't, but I'll talk anyway.) You will sell more music if you sell it without being a bunch of money-grubbing fiends. Customers will stop stealing music if you actually treat them like valuable customers.

Thursday, October 25, 2007

Portal Giveth, and Portal Taketh Away (Outlook Sounds)

If any of you haven't yet played the amazing, wonderful game called Portal, you owe it to yourself to start up or install Steam and get cracking. It's incredible.

I'm listening to the soundtrack, and it appears that there was some sort of recording error in the song "Party Escort." Turn up the volume and go to 2:25. You'll hear it, plain as day: the Microsoft Outlook new mail notification sound? WTF?

Also, I found a pretty trivial bug in MacOS, maybe it will be fixed in Leopard? Damn, guess I'll have to get a copy of it to find out! :)

Tuesday, October 23, 2007

Regurgitated Press Releases

1UP is a fickle beast. Sometimes, they've got some very good articles. (Their "Northern Lights" series on Q? Entertainment was fantastic.) And when they write "news" based on rampant speculation, a problem the tech industry can't seem to get over, they've got the balls to fess up and apologize for it.

But this nonsense has got to stop. This article is basically a two-paragraph press release, and not a very good one at that. It is an advertisement dressed up like an article (surrounded by ads) trying to sell me 1) Haze, and 2) Korn. It ends with a link to their preview of Haze, so that you can see more ads all around the actual article.

Slow news month? Naah, I just haven't had the time to write much. I'll have Leopard impressions up, I guess.

Tuesday, September 25, 2007

DiGRA 2007: Tuesday Game Design

DiGRA 2007 is off to a great start right now, with paper and poster presentations, as well as symposia and panels. I've been attending the game design track for the most part, and it's fun to hear all the different theories. There are some good, relevant topics that my old Core III students would really enjoy, like generally defining the avatar, or the Magic Circle.

The most interesting topic so far was the "Playing Music" paper, which was a survey of the many music-centric games in our industry. He makes a distinction between games that quantize player action (like Rez) and games that make the player perform in rhythm (like Amplitude). What's most interesting about that is how my current project at ETC straddles that distinction quite easily.

Pictures of Japan forthcoming...

Wednesday, September 19, 2007

Off to Japan

Alright, I'm off to Japan!

I'll be blogging about noteworthy talks and exhibits at Tokyo Game Show and DiGRA 2007. Weird stuff I see in Japan will most certainly merit blogging, too.

Stay tuned, this will be a busy week at Knee of the Curve!

Sunday, September 16, 2007

The New Vienna

There's a new version of Vienna, the open source RSS reader for Mac OS X. While I haven't been keeping tabs on the progress of previous updates, this new one rolls out a brand-new interface that rocks severe.

If you're using Vienna, you owe it to yourself to upgrade.

If you don't use owe it to yourself to upgrade.

Humor in HCI

I think it's hilariously appropriate for the iPhone Dev Team's anySIM to operate via Apple's "slide to unlock" mechanic.

Wednesday, September 12, 2007

Rez HD is Coming

Oh, now isn't this just super-exciting. Microsoft just announced that Q? is porting Rez to the Xbox Live Arcade, in high-def and with 5.1-channel sound.

What? Oh, sure, I could say more, but what could make you more excited than Rez HD? That's right, nothing.

Monday, September 10, 2007

Bioshock's Great. Not THAT Great.

The past few weeks, for many gamers, have been devoted to playing Bioshock, a graphically beautiful first-person shooter with some truly exciting gameplay. The game also came with a lot of hype surrounding its take on morality and Objectivism, Ayn Rand's philosophy which is outlined in her literary works. Specifically, 2K Games billed Bioshock as a treatment of Atlas Shrugged, a look into the effects on society, should an entire class of productive workers abstain from contributing.

Sadly, the game didn't live up to these lofty expectations (and the inherent hype of it being the spiritual successor to System Shock 2). Throughout this game, moral choices seem to be in abundance, but the game's design consistently fails to enable the player to make important gameplay decisions, or removes the pros and cons of the few that the player actually can affect.

If you don't mind spoilers, this is a nice, to-the-point critique of Bioshock's defusal of any morality in the "Little Sisters" mechanic. While the Little Sisters serve as the most fundamental aspect to Bioshock's morality, just look at Ars Technica's breakdown. It's virtually a zero-sum game.

It's a shame that such a fun, beautiful game tripped and fell on what should have been another bullet-point, but the hype machine seems to have taken hold. If you're looking for moral choices in games, I propose you look no further than Deus Ex. You can get it for pretty cheap on Steam now.

Monday, September 03, 2007

Scrabulous on Facebook

Scrabble is an awesome game. It's strongly emergent, multi- or single-player, accessible to many skill levels and most of all, loads of fun. If you're on Facebook then you owe it to yourself to check out the Scrabulous application, which will let you 'scrab with up to four of your Facebook peers. Give it a go!

Tuesday, August 28, 2007

GMail Collaborative Video

GMail's recent call for videos (CfV?) to make a collaborative "behind the scenes" movie has finally borne fruit. Here's the final version. It ended up looking pretty good:

My favorite part is when the arrow hits the next guy in the ear.

Sunday, August 26, 2007

WTF Mac Store

WTF Mac Store
Originally uploaded by Jeff Carlson
Wish I could say I found this like I found the MacOS graffiti, but it's still some cool found Mac stuff. It's supposed to say "The Mac Store," but the word "the" is laid out...........ah, awkwardly.

Monday, August 20, 2007

Found Mac Art: MacOS Graffiti

Here's a cool piece of found art: A MacOS menu bar pasted up on a wall near my uni.

Couldn't even get a picture of it in time before someone ripped and tagged it. Apparently I'm not the only one upset that Adelaide isn't getting the new Bluetooth keyboards for four weeks. :)

Friday, August 17, 2007

Original ADVENT Source Code Found!

Too cool not to blog about....

This guy has analyzed the original source code to Adventure. Notable in that sentence is that he actually has found the source code to Adventure, in a backup of Don Woods' account. This is a phenomenally important piece of code, and I think it's incredible that it's managed to survive into an age where it can be preserved.

Looking at it a bit, it's funny to think just how unlike the game itself this code is. Today, you can at least read many parts of code and see the game itself in the source. Whereas some game code to pick up an item may look like:

int Player::itemCollision(Item item)
Alert("You can't carry any more items!");
return -1;

The Adventure 0 code (in Fortran-IV!) to "CARRY" something is:


9000 IF(JOBJ.EQ.18)GOTO 2009
GOTO 2011
GOTO 2011
9003 IF((IPLACE(4).EQ.-1).OR.(IPLACE(4).EQ.J)) GOTO 9004
GOTO 2011
9004 IPLACE(JOBJ)=-1
9005 IF(IOBJ(J).NE.JOBJ) GOTO 9006
GOTO 2009
GOTO 9007
GOTO 2009

My, my, how far code has come. Anyway, if you're interested, I recommend at least thumbing through the source. It's a nigh-mystical artifact to some of us. :)

Thursday, August 09, 2007

Why Unreal Engine Is Closed Source

Silicon Knights is suing Epic because improvements that Epic made to Unreal Engine 3 didn't trickle down to SK, thus making Gears of War superior by default to Too Human. This is a great example of why you should be hesitant to trust closed-source technology in your multi-million-dollar game production.

What I think happened is that Epic and SK defined "Unreal Engine 3" in two different ways. Epic made this thing called "UE3," and aside from building their own games on it, they also licensed it out so others could, too. While Epic made some enhancements to the engine, they considered such work part of Gears of War, and didn't distribute it to UE3 licensees (their competitors).

What if both Epic and SK had been using an open-source engine? Gears of War's release would have required the release of the entire source tree for the game, and the same would have applied to all other users of said technology.

Is this a bad thing? Well, it depends. Do you want your games to advertise their superior engine features, or superior game design? In an open-source world, the playing field is leveled, and your skill in crafting a good game is now more important than your skill in supporting the latest shaders, environmental audio, et cetera.

Gee-whiz technical features versus compelling game experiences. Your choice.


Oh sheesh, I signed up for Twitter. I've got it installed on this blog and Facebook, and I'm running Twitterific on my Mac. Follow me if you're on Twitter, and I'll follow back!

Sunday, July 15, 2007

Rabbit-Proof Fencing Available!

I've whipped up a subsite for a Panda3D-based game I made last semester, called Rabbit-Proof Fencing. You can see screenshots of the game, and Windows (XP and Vista) users can download the game right now and install it. I'm working on the Mac version as you read this.

Yes, all you do is hit rabbits with the spacebar. :) If the game seems a bit simplistic, that's because it is. RPF was made more for the final ETC Show than to be a particularly intricate game.

Panda3D is a very cool framework. Besides being (kinda) triple-platform, it also is why we can make these games so fast. Very cool tool, I recommend you check it out.

Friday, June 22, 2007

Nick Montfort's "Narrative Variation"

Just a quick link right now, if you're interested in Interactive Fiction at all you should check out Nick Montfort's dissertation on generating variant narratives:

A very cool spec for a system called nn that splits up a story between what is being told, and how it is told, something that until now has been controlled by only one entity. Montfort's approach consists of many smaller modules, and is making me pine for a version of nn to try out on my own.

Friday, June 15, 2007

BT on the iPhone

I was looking at the iPhone demos on and noticed BT's album This Binary Universe in the music library. Click for a larger view:

I'm not really that much of an iPhone fanatic, but the end-of-semester crunch is reducing any meaningful posts, and BT is always worth a mention. :)

Sunday, June 03, 2007

Apple Prank Calls

Just a bit of humor. The first real iPhone adverts have hit the airwaves, one referencing a supposed Californian seafood restaurant named "Pacific Catch."

Engadget looked them up for reals:

"Pacific Catch, may I help you?" "Hi, I just wanted to know if you were getting a lot of calls tonight?" The hostess answered, "Yes." "Do you know why?" "Yes."
I love it.

Wednesday, May 23, 2007

StarCraft 2 and the ETC-AU Blog

A lot of people have been complaining about the new StarCraft, saying it's not different enough. I couldn't be happier that it's not changing, because that's what made the original StarCraft so good. It's a sequel done right: Take what works (superb class balance, for one) and leave it the hell alone. Now add things that don't pollute the formula. Height, 3D environments, etc etc. I guarantee you Koreans will be owning us in StarCraft 2 for many many years to come.

Life is still hectic, and I don't have much time to post these days, but that hasn't stopped me from working on yet another blog! This time, I've taken charge of the ETC-Australia blog, so yours truly will be keeping you in touch with the goings-on in Adelaide! You can also check out our podcast, again organized by me.

Wednesday, April 25, 2007

I Really Am Still Blogging

You know something's up when your last post starts with "I'm going to try to be terser and more frequent in my postings." And said last post is almost three months old.

Well, I have something to show for such a delay. Three things, actually:

Firstly, a link to a game I made here at ETC. It's not as good as I would have liked it to be, but seeing as how it's my first finished game and was made in two weeks in a language I didn't know before starting, I'm quite pleased with the result. This (and subsequent games I post about) were made in a class called Building Virtual Worlds, where you're given a game design prompt, and two weeks to implement it.

I also have a video of my most recent BVW assignment. Why no link to the game? Well, for one, I haven't packaged it up yet. But also, it uses an alternative input device (read: not a mouse or keyboard) so you'd have a hard time playing it anyway. The video will be at the bottom of the post. I made it myself. =)

Finally, some news: I'm pitching a project for next semester here at ETC-Adelaide. If it gets greenlighted (and it's looking like it might), then I get to design a game over the spring Down Under! Schweet.

That's all for now. I seriously will try to post more often, or at least regularly. Hard to keep up when you're this busy!

Thursday, February 01, 2007

Catching Up, and (Corporate) Desktop Linux

I've been inspired by Donna's impressive adherence to regular, frequent posting, I'm going to try to be terser and more frequent in my postings. I doubt I can manage daily posts, especially these days, but we'll see what comes about.

Like this guy, I'm sick of trying to get Linux to play nice with corporate networks. Granted, it's not Linux's fault. Crappy MS Exchange installations (that is to say "MS Exchange installations at all"), and other proprietary nonsense is most certainly not how one should run an office. If your business doesn't use standards like IMAP/POP3, SSH, iCalendar, OpenVPN et cetera, then getting Linux to play nice with it is more trouble than it's worth. There's another *nix vendor out there who plays much nicer with such environments. :)

More frequent posts will inevitably mean more personal posts as well, which I guess is fine with me. So, I'll just use this post to catch up to the present. As I posted previously, I'm leaving Arkansas to go to the Carnegie Mellon ETC in Australia this month. My schedule works like so:

  • My last day at Acxiom is the 9th.
  • I'm leaving on the 12th for Australia.
  • School starts the 26th.

Since I'm going to be super-bogged-down with all sorts of wonderful ETC stuff after that, I've assembled a laundry list of things to do before I go:

  • Get more acquainted with the Torque products, Game Builder and Game Engine.
  • Redesign the five-year old using my newfound abilities as a Web 2.0 programmer.
  • Sell all my crap, and get my MacBook triple-booting so I only need one computer overseas.
Future entries will be less catch-up, more substance!

Thursday, January 18, 2007

NYC Games Salon

I was going to sum up the NYC Games Salon that I went to on 9 January, but: 1) I got into the Carnegie Mellon ETC in Adelaide, Australia which has thrown my schedule off-kilter with doctor's appointments, visa applications and the like, and 2) seeing as Gamasutra has already blogged it better than I would have been able to, I'll just refer you to that and point out two things that really, really bothered me:

The DWI Simulator's development started in Torque, until they decided it wasn't as good as they wanted, so they switched to a web-based Java app. What? As you programmers know, Java runs on OS X and Linux, and even Windows. As does Torque. The big difference? Java can run within a web browser, without installation. Torque, while required to run natively in a "full app" context, has significantly more graphical/input chops. It's better for full-fledged games, and could make the simulation that much more immersive, by not having to deal with the headaches of a browser paradigm.

As was evidenced when the Java-version of the game failed to run properly in his web browser. Now, he didn't say what, exactly, they didn't like about their Torque version, but I'd wager it has more to do with developer familiarity than any sort of defeciency in Torque. There's nothing wrong with being upfront about such unfamiliarity, but there is something wrong with asserting (without evidence!) that the pathetic Java3D toolkit could somehow make a better simulation experience than Torque.

And I realize that there was no actual Inspector Carbone game, it was still being designed, but I really don't like these non-material metrics for gameplay, we'll call them "Glue Points."

See, Inspector Carbone used a system of "Eco-Points" to represent several metrics: financial capability of residents, willingness to live greener, capacity for ecological responsibility education, et cetera. These nebulous points grew with time, but fell with upgrades. There's a flaw in the mechanics when a metric representing education falls after installing CFL bulbs.

I think that's just a symptom of the simulation being too simple. SimCity simulates urban development quite well, but it breaks simulation parameters up sufficiently to resemble real-life parameters. Taxes, energy, water, population, zoning. It all adds up to a realistic simulation, than if something like "City Life Points" had been used to "glue" several distinct aspects together.

Anyway, it was a great event and I wish I could go to another. Here's hoping one comes to Australia. :)

Saturday, January 06, 2007

Off to Meet Jesper Juul

I'm heading to New York City to attend a game salon at The New School/Parsons, where Jesper Juul's a featured speaker. Expect a full summary here, but for now, just know that when flights are delayed at Little Rock International Airport, there's only one place I get my Cinna on: