Wednesday, July 18, 2012

How to integrate Unity and Twine.

EDIT, 16 May 2013: Unity has changed their Browser to Web Player communications, but just a little. Basically, you don't use "getObjectById()" anymore, you just use "getUnity()" to get a reference to the web player -- more details here.

*****

Okay, I'm one of those people who thinks the problem with interactive fiction is that it's not sexy enough. However, I think IF, as a mode of interaction, is extremely powerful and is quite possibly light years ahead of whatever we're doing with narrative / meaning in the latest 3D whiz-bang video games.

Then one day I realized -- I could combine the CYOA tool Twine with the web player export of Unity, and the two could possibly hook into each other through Javascript. Turns out, they can.

Unfortunately, the project I used it for -- well, it didn't really work out -- but maybe someone else can use it?

The Unity Web Player has a useful method Application.ExternalCall() that can call Javascript methods on the web page. Similarly, you can call SendMessage() from a page script to call a method on a specific GameObject and even pass strings into Unity. That's the gist. If you need more help / my code snippets, a more detailed guide is here:

Friday, July 13, 2012

The shape of crime and escape.

From "Payday: The Heist"
I went to another BLDGBLOG / Studio-X event: "Breaking Out Breaking In." This time, it was a panel with FBI agents, crime experts, and architects, all focusing on heists: what does it mean to break into a bank and how should we approach bank design?

As I sat there, I pondered a much, much, much more important question: how does it affect the ways we design video games and levels about heists. How should we abstract the heist?

Wednesday, July 11, 2012

On Planet Phillip entering hibernation.

I've never really agreed with his attitude / his community's general attitude towards art and level design, but I always deeply respected Phillip's mission to exist as a hub for single player Half-Life 2 maps and mods. I'm sure it took a lot of work to keep the community running and to keep putting up new content, and I guess it was finally encroaching too much on his personal life and other projects -- so now it seems that Planet Phillip is going into a sort of hibernation.

Thanks for existing for all these years, Mr. Marlowe.

Well, I predict you're actually going to come out of retirement soon, if only briefly, within the next few months. Some little birdies have been chattering about a certain improbable mod approaching completion...

Tuesday, July 10, 2012

Monday, July 9, 2012

"A People's History of the First Person Shooter" at the No Show Conference at MIT.

If you'll be in the Boston area, come see me (and a bunch of smart people) talk about games at the No Show Conference running from July 14th to July 15th at MIT. Hopefully there'll be some kind of livestream or webcast thing available. I'll fill you in on those details when I get them.

My talk is called "A People's History of the First Person Shooter."

Now, I love stuff like 7DFPS, but I disagree with some of the reasoning behind it -- that the FPS genre, in particular, is creatively dead and requires an injection of indie ingenuity. That's wrong; indies have been working in the FPS space for nearly as long as the FPS genre has existed, and continue to make amazing innovative work.

It just plays into the fact that the popular history of the genre is largely a company history, written by the big winners.

My goal is to outline an alternate narrative of game developer history, to talk about the need and methodology for a game developer history, and to explicate some currents of thought running through the cutting edge of first person design in the indie scene.

(If you're in the New York City area instead, I highly recommend attending the annual Come Out and Play festival and the annual NYC MP3 Experiment, both at Governor's Island this coming weekend.)

Friday, July 6, 2012

Rule Databases for Contextual Narrative... and spelling bees.


Valve's Elan Ruskin gave a fantastic talk at GDC 2012 on using "Rule Databases for Contextual Dialog and Game Logic" -- basically, the implementation behind the dialogue response system in Source games, most recently used in Left 4 Dead 2 and DOTA 2. I'm surprised more people haven't picked up on it because I think it presents some really effective research on procedural narrative systems.

A lot of game logic / narrative resembles a flowchart, especially with the advent of visual scripting systems like Unreal's Kismet or Twine -- resulting in this deeply entrenched concept of branching structure. Authoring and changing these individual branches is usually very expensive.

Thursday, July 5, 2012

On landscape porn.



We couldn't do large, open, video game environments before. Now we can. However, this kind of power is limiting in its own way; you just see the same concepts of grand sweeping vistas, over and over. It's very beautiful and expertly crafted, but it also resembles the same stagnation of a mud-brown rusty metal corridor decorated with skulls -- a certain lack of imagination.

Conceptually, this is Thomas Kinkade, repeating, instantiating, stretching endlessly past our view frustums to infinity. It's always the same sunlit painterly natural realism with some normal-mapped ruins in the foreground.

Monday, July 2, 2012

A short history of non-monoplanar first person movement.


I'm working on a new game that reuses a lot of Souvenir's code, so lately I've been doing more research into non-monoplanar first person movement, meaning you're not limited to primarily moving along the X and Z axis / traversing across a single, fixed, designated "ground" plane.

Traditionally, "noclip" flying / spectator modes have been the most common form of non-planar first person movement. However, I'm not a fan of it as a movement mechanic because you're always "right side up" above a ground plane. Your idea of space never really changes because that's not the point.


Shattered Horizon (2009) was a multiplayer FPS in space, where astronauts shoot each other while hovering around asteroids. From what I can grok in gameplay videos, players can rotate and hover freely, but they almost always maintain the same common "ground plane" as if there's a "right side up" in space. Common map layout terminology and directional lighting also reinforce the idea of a "top" of the map.