Machines That Tell Stories: SXSW 2015

Last Saturday at SXSW Interactive Jon Lebkowsky and I curated a Core Conversation titled Machines That Tell Stories. I proposed the topic as a book project to Jon last year, and we put together this discussion as a stepping stone. Software storytellers are in the air. There were over a dozen sessions at SXSW this year on storytelling systems, and that kind of consensus usually heralds a new wave about to break. We’ve setup a twitter and tumblr for this project, if you want to follow along.

Machines That Tell Stories PlacardsOur argument: Software is moving beyond raw data and into narrative.  First it will help you weave the tales you want to spin, but soon it may be telling stories better than all but the best human storytellers.

The conversation was all over the place, and I don’t think anyone recorded it, but here are some notes and references that could be helpful…

IMG_8519

  • Lisa Cron’s Wired for Story: “A story is how what happens affects someone who’s trying to achieve what turns out to be a difficult goal, and how she changes as a result.”
  • Wired For Story Takeaway: Story is about mechanics, the trappings that you think of as important aren’t as critical as hitting the right beats that resonate with the human brain.
  • The Future of Storytelling Conference – Great speaker videos
  • Dwarf Fortress’s Legends mode, Procedural Poetry Analysis (Leave the creative imagination up to the user. Provide concrete, easy to procedurally generate elements, and let the brain fill in the rest.)
  • Weavrs as storytellers
  • The Nest Home Report monthly email as a machine-generated story
  • Collaborative human/machine storytelling at DARPA
  • Machine data into text reporting at Automated Insights (1 billion articles for 1 person each, instead of 1 article for 1 billion readers) More at CNN
  • Games by Angelina – Procedurally generated videogames, played through brute-force to see if they’re solvable. Potentially compare play throughs to known-pleasing physical interactions (progressively more complex button presses and movements)
  • Mechanical Turk as a part of a story machine, using human filtering to produce more compelling procedural content
  • Turing in The Imitation Game: The question isn’t whether machines will think like humans, it’s whether machines will think like machines.
  • tmbotg – Random TMBG tweeting bot, sometimes interacted with by humans due to serendipity
  • Talk PhotoWhy limit to text? Is software that generates a song based on your day’s quantified self data creating a story?
  • Shadows of Mordor’s Nemesis System as a storytelling engine – characters continue to exist when you aren’t looking, maintain the thread without you
  • Games as half-way points: PROCJAM’s The Inquisitor as procedural murder mystery
  • NaNoGenMo – Software generated novels
  • Eugene Goostman – Chatbot & Winner of the Loebner Prize.  13 year old Ukrainian boy personification: more constraints (space on twitter, language barrier with Eugene) result in increased credibility
  • Deus Ex Machina interactive theater project in Austin, sms polling to a web UI to allow for story decisions
  • Communal entertainment as a cultural touchstone: In a world where everyone gets personalized entertainment, does it become harder to relate to other people?  (No more watercooler conversations?)
  • Storium as a story generation human/software collaboration system

We had a great crowd for the conversation, and even managed to be “Hot” in the schedule.  Thanks to everyone who was able to make it!

Schedule-Hot

Games That Play Themselves

Some thoughts on RPGs and God games that keep playing when you aren’t watching, and what new hardware platforms like the Raspberry Pi and cheap tablets might mean for them.

A few days ago a new iOS app called Dreeps landed in my news feed, heralded with headlines like Maybe The Laziest RPG You Could Ever Play and A Video Game That Plays Itself. Dreeps is an app where a little robot boy goes on an adventure, Japanese RPG style.  You set an alarm to tell him to rest, and that’s it.  When the alarm goes off, he gets up and gets on with his adventure, fighting monsters and meeting NPCs.  There’s pixel art and chiptune audio.  Dialog is word balloons with squiggly lines for text.  It’s all very atmospheric.  You just don’t do anything, really, but watch when you want and suggest he get up when he’s resting after a fight.

Dreeps is a lot like Godville, a game I talked about in a post about Pocket Worlds back in 2012.  They’re games that (appear, depending on the implementation) to be running and progressing even when you’re not around.  While Godville does its magic with text, Dreeps has neat graphics and sound.  They’re essentially the same game, though.  A singular hero you have slight control over goes on a quest.  In Godville it’s for your glory (since you’re their god), in Dreeps it’s to destroy evil (I think).

screenshot02

Both Dreeps and Godville are passive entertainment experiences, they’re worlds that are all about you, but not really games you play.  They’re games you experience, or perhaps we need a new word for this kind of thing.  While books and TV shows and music (although not playlists, as we’ve seen with Pandora) are hard to create for just one person’s unique enjoyment, games are great at that.  They can take feedback and craft an experience just for you, and as we built more complex technology and can access more external datasets, they can get even more unique.

Imagine a game like Dreeps where the other characters (or maybe even the enemies) are modeled algorithmically after your Facebook friends (or LinkedIn contacts).  Take their names, mash them through a fantasy-name-izer, do face detection and hue detection to pick hair color and eye color, maybe figure out where they’re from (geolocated photos, profile hometowns or checkins) for region-appropriate clothing.  Weather from where they are, or where your friends live, maybe playing on an appropriate map.  You could even use street view and fancy algorithms to identify key regional architectural elements and generate game levels that ‘feel’ like the places they live.  That starts to get pretty interestingly personalized, though much less predictable.

261308-animal_crossing_screenMike Diver over at Vice posted an article about Dreeps titled I Am Quite OK With Video Games That Play Themselves, where his main point was that he’s figured out that he’s actually bad at games, and it’s nice to have something where you can enjoy the progression without working about your joystick skills.  Maybe Mike should spent more time with Animal Crossing, a game series I think Dreeps shares a lot of DNA with.  In Animal Crossing your character inhabits a town that progresses in real-time.  You can go fishing and dig up treasure and pick fruit and talk to the other inhabitants in your little village, but the world keeps going when you’re not playing, so if you leave it alone for a long time, you come back to a game that’s progressed without you (with the game characters wondering where you’ve been).  Dreeps is like that, but without the active user participation.  It’s like a zen Farmville.  Take out the gamification, add in some serenity.

It feels like Dreeps could be a really fantastic lock-screen-game, if that’s a thing.  You nudge your phone awake, and see your guy trudging along.  He’s always there, in a comforting, reassuring, living way.  Maybe Samsung or someone with some great cross-vertical reach could implement lock-screen or sleep-screen as a platform across TVs, phones, tablets, fridges, etc.  That’d be something.

ant-farmI was talking to a friend of mine about these kind of games yesterday, pondering where this is headed, and I mentioned that the experience almost feels like an Ecosphere.  Ecospheres are those totally enclosed ecosystems, where aside from providing a reasonable temperature and sunlight, you’re a completely passive observer. There’s something nice about walking by and peeking in on it every once in a while.  Something comforting about knowing that even when you’re not watching it’s going on about its fantastically complex business without you.  But there’s also a spiritual weight to it, because it’s a thing that could cease to exist.  I could cover the Ecosphere with a sheet or leave it out in the cold, I could delete Godville or Dreeps from my phone, or have my phone stolen, unable to retrieve my little robotic adventurer.

It isn’t a huge weight now that we carry with these sorts of things.  In fact, I stopped checking in on my Godville character a few months ago, after over a year of nearly daily care.  Sometimes you just lose the thread.  But these systems are going to become more complex, more compelling.  They’re going to have more pieces of ourselves in them.  How would I feel if a friend of mine was a major character in Dreeps, always showing up to help me out, and then he died in real life?  What if Dreeps decides to shutter their app, or not release an upgrade for the new phone I get after that?  Would I leave my device plugged in, forever stuck at iOS whatever, just so the experiences could keep going?  The Weavrs I created for myself back in 2012 are gone, victims to this onward march of technology and unportability of complex cloud-based systems.  I’m fortunate that I never got too attached.  Droops is an app, but there’s still a lot there outside of my control.

GodBenderI’m particularly interested in where this stuff intersects with physical objects.  Tamagotchis are still out there, and we’re building hardware with enough smarts to be able to create interesting installations.  There’s an Austin Interactive Installation meetup I keep meaning to go to that’s probably full of folks who would have great ideas about this.  Imagine a pico-projector or LCD screen and a RaspberryPi running a game like Dreeps, but with the deep complexity and procedural generation systems of Dwarf Fortress.  Maybe a god game like Populous, with limited interaction.  You’d be like Bender in Godfellas, watching a civilization grow.  Could that sit in your home, on your desk or by the bookshelf, running a little world with little adventurers for years and years?  Text notifications on your phone when interesting things happened.  A weekly email of news from their perspective?  As it sat on your desk for longer, would it be harder and harder to let go of?  When your kids grew up, would they want to fork a copy and take it with them?

4 years ago there were no low-power GPU sporting Raspberry Pis or globally interconnected Nest thermostats or dirt-cheap tablet-sized LCD screens or PROCJAM.  Minecraft was still in alpha, the indie game scene hadn’t exploded, the App Store was still young, procedural content generation was a niche thing.  Now all those pieces are there, just waiting to be plugged together.  So who’s going to be the first one to do it?

Thoughts on Digitally Native Artisanal Artifacts

Tucked away in a corner of a bustling storage depot in the halo of the San Francisco bay area is a metal shipping container.  Nestled inside that container, surrounded by the furnishings and bric-a-brac of a contemporary urban life, is a small, silver figure.  It is the only one of its kind in the world.  It is the result of a nearly 20 year design process, distilled through three minds from a short collection of descriptive words.  It is also the future.

A Little Backstory

It’s good to have friends who understand you.  I like to try things.  I like to pick up new technologies and roll them around, get a feel for their heft and texture.  This often involves doing a project, but these projects can sometimes be a little weird.  Finding good natured co-conspirators really helps.

Matt & Jeff Party Hearty

For the last few years, Matt Sanders has been my target guinea pig.  Matt is perfect, because we’ve diverged paths enough he doesn’t know everything I’m up to.  However, we spent years in the trenches together, so I know him pretty well.  If we saw each other all the time there might be an obligation tied to the things I come up with, and that would make it weird.  Matt also happens to enjoy the artistic and technological, so I know the fundamental concept of the attempt will be appreciated.

In 2010, I got Matt a rap song for his birthday.  DJ Brixx, a friend I met through an electronics comparison shopping project wrote and recorded it.  Brixx lives in the Philippines, and once professed a desire to eat at the Cracker Barrel.  He’s a crazy guy.  You meet crazy people by trying to do crazy things and finding the people who are willing to go along for the ride.

Ideas

The rap song set a high bar, but sometime in 2011 I was driving up Loop 1 with Irma, and realized that I could top it by making the virtual real.  I could create a small figure of one of his RPG characters.  Years ago, starting in 1994, Matt and I spent a lot of time together in an Internet-based text-based role playing game called Ghostwheel.  I’ve talked about it a couple of times before.  In Ghostwheel you describe yourself, what your character looks like, and what it’s carrying.  I had been looking into creating 3D models of the Dust Bunnies characters, and knew that there were freelance 3D modelers out there who were experienced at character design.  Shapeways let you print things in metals, including a very nice sterling silver.  So the pieces were there, I just needed to get it done.

Production

SketchI ended up working with a 3D modeler named Bhaskar Rac.  He had worked at a video games studio, and had a good feel for character design.  We did a contract through oDesk, which handles payment and taxes and whatnot.  I sent Bhaskar Matt’s character’s description, some photos of him for general reference, and some sample pictures of the things he had on his person.

After a few days of discussions about Fallout and thematic inspiration, Bhaskar sent back this sketch.  A few days after that he followed up with a draft 3D model.  I thought it was awesome, so we tweaked a few small details, and I uploaded it to Shapeways New York manufacturing facility.

Shapeways prints their sterling silver models in a three step process.  First they print the model in wax using a high resolution 3D printer.  Then they submerge the wax model in liquid plaster to make a mold.  The wax is melted out and molten silver is poured in, resulting in the final piece.  It produces a very high level detail, and is a process often used for jewelry.  It also works really well for anything small you intend to last for a long, long time.

A few weeks later, this appeared in the mail:

MattFig 1 MattFig 2 MattFig 3

Reflections

The little 2 inch high figure is now in transit with the rest of Matt’s stuff as he moves to San Francisco.  The digital model exists, but no other physical traces grace the earth.  There is only one.  Unless Bhaskar sketched out something on paper, it’s the only physical manifestation of this entire project.  That’s a pretty weird thing.

If Matt were to somehow lose the figure, if someone broke into his house or if there was a fire, or someone unleashed a bio-engineered virus that only ate silver, we could print another one.  As part of the “gift” I sent him the 3D file, so if he wanted he could populate his house with tiny Matt figures in every size and color.  He could open source it, upload it to Shapeways and let anyone print a tiny Matt figure for their Monopoly set.  It’s a present that comes with it’s own infinite digital reconstruction blueprint.

But what if someone stole the digital one?  What if it leaked out, and people liked it so much they started printing their own?  How would that make Matt feel?  How would it make me feel?  Does he have “the original” even though there is no original?  Is it a “first” like a blog comment?  Is there still something unique about the one that arrived in his house packed in a tiny little box for his birthday in 2011?  I think so, but it lives in a weird space.

Implications

I think this kind of gift, the present deeply rooted in the past, in a shared history and experience, but interpreted by skilled artisans into something new, is going to be the new normal.  While hiring artists and 3D modelers is challenging now, there’s nothing stopping someone from creating Photoshop or Maya as a service.  Perhaps Shapeways will even evolve in that direction.  Supply the talent, ship the product.

We’re surrounded by mass market objects.  Books, movies, furniture, even sometimes what we consider to be art.  We collect it and we arrange it, but it isn’t truly unique.  The hand blown glasses at Ikea say they’re made by hand and each is unique, but you’re buying them from Ikea, so the really weird ones probably get tossed in the recycling heap.  Sometimes we may shop at craft fairs, but even crafters will reproduce an item if it sells.  It’s hard to create things from scratch, and producing one-offs is expensive in a traditional model.

But now that the means of production are so cheap, and the training to use them is largely free and open, we can truly have unique things without spending a lot of money.  We can create home movies that are beautiful, we can hire artists to create beautiful things just for us or the ones we care about.

It’s possible we’re just setting ourselves up for a backlash.  The figure I made for Matt isn’t a Warhol, and while we both get it and enjoy it, I’m sure some would argue that we’d be better off with a good reproduction of something truly important instead of a meta-reference.  But Warhols are meta-references, so maybe we’re just becoming hyper-personal with them.  In the end that’s what we get to weigh.  Is the quality of the work more important, or the personal connection you have to it?

Book Review: YOU by Austin Grossman

YOU Novel Cover

Austin Grossman has a new novel out.  It just hit last week, and it’s called YOU.  YOU is like Ready Player One and Fight Club having a baby while making an Ultima game.  If you’ve read both of those books (or watched the movie, in Fight Club’s case) and liked them, do not pass go, do not go to your cave and find your power animal, buy this book and read it.

YOU is a book about making computer games, about making the Ultimate Game, a game where you could be anyone and do anything and the world would still work, the story would still unfold completely naturally.  Austin has worked as a writer and designer on some of my favorite games, including Deus Ex and Thief: Deadly Shadows.  His experience in the games industry really shows, and you can see bits of real games peaking through the imaginary ones.  There’s a section in the book about a demo at E3, and it sounds exactly like they’re playing Thief, scrambling over rooftops, firing flaming arrows at torches, evading the city watch.  Austin’s latest game is Dishonored, which is sitting on my shelf, and has now risen much higher in the next-to-be-played list.

The story of YOU is told through a prodigal protagonist.  Out of options, he returns to the game company his friends started after high school, after they all built a pair of RPGs together.  He gets a job as an entry-level game designer, and proceeds to unravel a mystery about friendship and adolescence and being a nerd.  The game shifts between its present day of 1997 and the 80’s years of high school, the story unfolding through flashbacks and dives into the games the company created.

If you read REAMDE and enjoyed the parts in the MMO, or if you enjoyed Daemon, or Ready Player One, or Tad William’s Otherland books, you’ll like this book.  It’s obvious he’s writing from experience when he introduces a game, and while some of the details may be embellished from what was possible then, they play like we want to remember them.

The ending of this book doesn’t land as well as it could, it doesn’t leave you with a particularly warm sense of accomplishment, but it isn’t bad.  The macguffin is resolved, but the mystery sort of peters out.  This isn’t a book you read for the ending, though, it’s a book you read for the journey, for the time warp back into high school, into games on floppy discs and BBSes and a million possibilities inside the magical machine that no one over the age of 25 understands.  As an ode to that bygone era, it is unmatched.

VallisMOO: A Game Designer Is You!

The world is a scarred shell of wind and sand and heat.  Whoever had their finger on the button finally pressed it.  There’s only one safe place left, a tiny, sheltered valley between two giant mountains.  To the south is the ocean, to the north, the wasteland.  A magical gate keeps the monsters out, and keeps the valley safe.  We live well here, in our little sea side town or deep in the forest.  We roam the grassy plains, dotted with bald hills.  We hunt, and forage, and build.  Sometimes we fight, because what’s worth fighting for more than the last good place on Earth?

YOU & Me

A couple of days ago I read a review of Austin Grossman‘s new book, YOU, by Cory Doctorow, and decided to buy a copy.  Austin’s a game designer, and he’s worked on System Shock, Clive Barker’s Undying, Deus Ex, and Dishonored.  He’s now an author, with his first book SOON I WILL BE INVINCIBLE, and now YOU.  YOU is a book about a directionless 27 year old who gets a job at a game company started by some of his high school friends.  While designing a new role playing game, he delves into the mystery of what happened to his friends and their dream of the ultimate game.  A game where you could be and do anything, and the story would unfold before you naturally.

I haven’t finished YOU, but it’s been bringing up all kinds of memories.  I got my first internet account in early 1994, dialing up through Real/Time Communications in Austin.  R/T hosted a game, a text-based Zork-ish virtual world game called Ghostwheel, or GhostMOO.  I’ve talked about GhostMOO before in my Pocket Worlds post, but I had forgotten an interesting chunk of GhostMOO history, and my own stab at multiplayer game design.  My own dream of the Ultimate Game.

Ghost^2

In 1997 GhostMOO was on the decline.  We’d had a big rush of users in 1995, but many of them had graduated from college, and user numbers were down.  The two main drivers of the game, Quinn (lead programmer) and Razorhawk (content creator) were busy with other projects, and without strong direction, GhostMOO was stagnating.

scribbleA couple of GhostMOO programmers, including Matt Sanders (who I’d go on to start Polycot and then join HP Cloud with) and I decided we’d start a spin off.  Quinn had been gracious enough to release the core of the game, the bits and pieces that made up combat and non-player characters and monsters, out into the open as the GhostCore, so we had a good place to start.

We were thinking of creating a Ghost^2 or Ghostwheel 2.0, if you will.  Similar core concepts, but different execution.  Ghostwheel was all over the place thematically, we had monsters cribbed from Princess Bride, Alien, a whole community of Dragons straight out of Pern, a quaint japanese island, basically whatever a programmer was really into, they built.  Even the name was cribbed from Zelazny’s Chronicles of Amber.  In retrospect what we had was a mashup, we were just ahead of our time.  Ghost^2 was an attempt to wipe the slate clean, to start with a core concept and theme that would be internally consistent.

Like all groups starting with a blank sheet of paper, we wanted to create the Ultimate Game, and we had the audacity to think that we could create a better game than the ones that had come before.  We wanted to create a game where if you wanted to play a blacksmith, you should be able to do that all day, role play with other people, and generally succeed and feel progress.  If you wanted to fight monsters, great, but that wasn’t the only path.  Years later the first Star Wars Galaxies game would do this in MMORPG form, only to be neutered and turned into more of a combat grind in an attempt to compete with WoW.

Terrain Zones

One of the really interesting things that Quinn built at GhostMOO was the Terrain Room.  GhostMOO was a MOO, a text based game, kind of like a multi-player Zork.  In a game like this as you walk around you’re presented with room descriptions, which include the objects in the room (furniture, people, monsters, etc) and the available exits.  Like so:

The R/T Round Room
Eight walls for each point of the compass, each with an open doorway.  The
 floor is tiled with checkered perma-linoleum; little matching octagons.

                    N   
        NW        Lounge       NE
      Austin        |       Hot Tub             UP
             \      |     /                     Helipad-
               \        /                         Austin
    W              YOU             E              Jizo Island
 Library -----     ARE   ----- Infirmary          Ghostwheel Plain
                  HERE
               /   |    \                       DOWN
        SW   /     |      \    SE               Ground floor-
     Obsidian               Greenroom             Exit to Wasteland    
                   S                               Guest Chamber
            PX/General Store
The center desk is empty of all personnel.  Someone must be on an extended
 coffee break.  An electronic sign-in pad is bolted to the desk.  A monitor is
 bolted into the desk.  Nobody's sitting on the floor.  Alongside the east
 wall is a queer little potted tree, a tallish leafy husk with a, uh, snout?
Contents:
 Bulletin board                                             
Obvious exits include down (d, trapdoor) and Up (Helipad, u).

Each of these rooms is dug by a programmer from an existing room, like mining through the digital aether.  That new room then has an exit back to the room you were in before.  (Here’s a map of the main house and grounds of LambdaMOO, for comparison.)  That style of design makes for very detailed, interesting areas, but the overall area tends to be small, because every room needs to be described individually.

Quinn created something called a Terrain Room, which lived inside a Terrain Zone.  In a Terrain Zone you insert a little ASCII map, something like this:

        @qedit me.tmp
        # ############
        #    # #     #
        ###~~#~#~~~#~#
        #          # #
        ############ #
                     #
        ##############
        .

This map defines what kind of rooms there are and what the layout is.  In this case the pound signs (#) may be walls, while the tildes (~) may be rivers, and the blank spaces grassy fields.  With this lovely hack Quinn transformed the Zork style MOO into a player-perspective Rogue-like.

The cool feature of the Terrain Zone is that it only creates the rooms if they need to exist.  In a MOO everything takes up memory space, and back in the mid 90’s memory wasn’t as plentiful as it is now.  If you’re standing in a terrain room, the terrain zone can look at the rooms around you on the map, and tell you what’s there.  “To the north, east and west are open fields.  To the south is a stone wall.”  Those rooms don’t actually exist.  Once you decide to walk north, the Terrain Zone creates that room, moves you into it, and destroys the room you were standing in before (unless you dropped something, or there’s some other reason for the room to still exist).

By operating like this you could create huge areas without actually digging and describing every room yourself, and the memory consumption would be a lot smaller.  Your monsters and other non-player characters could also know about their “home” terrain type, so they wouldn’t stray from the grass or river.  You could also let the player “travel north” and they would keep walking through rooms until they hit a room that was different than the type they were already in, or contained something unique.

In Ghost^2, we decided to use a Terrain Zone for our world, since it let us create an overall map that had consistent distances and spacing.  I sketched the map out on a sheet of paper (above), and then started drawing it in a paint program on my Mac (below).  I had a program that let me convert graphical images into ASCII art, so I was able to go from a map directly into the MOO.  This is the last version of the Ghost^2 map, created in October of 1998:

terrainimage5

The map is 1,000 pixels by 1,000 pixels, so our game would would be 1,000 rooms by 1,000 rooms.  In the orange spots where there were towns we could dig out special rooms for houses and buildings, we could dig out special dungeons from the fields or forests.  In this map light green is grassland, dark green is forest, gray-green is hills, blue is water, yellow is roads, and grey is rocky terrain.  The outlines around large sections are edge types, like the edge of a forest, a beach or the base of a hill.

It was a really cool concept, and thinking about it still gets me excited.  The idea of adventuring in that world, exploring the bustling cities, verdant fields, dark forests and dimly lit caves sounds like a lot of fun.

VallisMOO

Game design isn’t easy.  It’s easy to dream about, but it’s hard in practice.  I’m about 1/3rd of the way through YOU, and the main character’s starting to realize that he has to enumerate every kind of object in the world, in every state it has.  We reached a similar place with Ghost^2, which eventually became VallisMOO when interest waned among the other developers.  We decided not to create a sister-MOO to Ghostwheel and I kept working on my own, and that MOO became VallisMOO.

I appreciate the stamina exhibited by the Adams brothers, the team behind Dwarf Fortress.  They’ve been working on that thing for years, but that level of dedication is really hard to maintain.  I got to a place with VallisMOO where I needed to begin populating the combat system with weapons.  I heard that Steve Jackson games was working on a Low-Tech book, due out “any day now”, and instead of forging ahead (ahem) and making do, I decided to wait till it came out, and use it for reference.  That was 1998.  GURPS Low-Tech finally shipped in 2002, and by then I was on to real paying projects and VallisMOO was only a memory.

Legacy

I went digging through my project archive and found a directory full of VallisMOO code and to-do lists and graphics.  It even had some logs of conversations where I discussed the ideas for Ghost^2 with some friends, things I’d long forgotten.

I thought I’d share the design documents with the world, so I’ve uploaded them to github with a Creative Commons license.  There are files of character types, races, locations, maps and all kinds of crazy things.

If you thought this post was interesting, and enjoy 90’s era game design, you’ll probably really like Austin Grossman‘s YOU.  I finished it last night, and once I get a chance, I’ll write a more complete review.

Agents vs Operatives (aka Spy Break)

spybreaklogoBack in 2008 when I was a managing partner at Polycot, we had an idea for a Facebook game.  I’ve always loved the spy genre, and it didn’t seem well represented, so we spent a few months of idle time writing up specifications, prototyping screens and mapping out how the application would work.  After it became obvious we didn’t have the budget to develop or launch the game, we shelved the project.  In the spirit of sharing ideas, here’s a glimpse inside the first phase of a game project.

Back Story

Agents vs Operatives, or Spybreak as it might have been known if it had reached the light of day, was a Facebook game.  Our setup was that players had been recruited as either Agents (good guys) or Operatives (bad guys) by competing cold war era organizations:

GALAXY – Global Alliance Limiting Aggressive Xenophobic sYndicates

and…

KOSMOS – Kommitte Over Sabotage and Mayhem, Overseas Services

Our design theme was inspired heavily by the early Bond films, the Flint films, Get Smart, and the fantastic game No One Lives Forever.

The Game Experience

UI Comp
User Interface Comp

The spy genre gives us a nice set of tools to make a game with.  There’s a spy (the player), bad guys and traps (obstacles), cool items (inventory), and exotic locations (setting).  I’d played a lot of Kingdom of Loathing, which has a similar set of elements, though KoL is an extremely silly parody of the fantasy genre.  We wanted AVO to be wry and funny, but not silly.  Like NOLF in theme, but KoL in experience, if you will.

When you’re developing a game you have to think about how people will play, and design a game to suit it.  Facebook games need to be playable in small chunks, though you may have a lot of time to burn, not everyone does.  We wanted a game you could play a mission or two of over your coffee break, and feel like you’d accomplished something.

We had three classes in the game: Muscle, Tech and Spook.  Tech characters would be able to crack security systems and take shortcuts while spooks would be able to use disguises or sweet talk their way around bad guys.  Muscle characters would just fight their way from one end to the other.

We decided on a mission setup where the player worked their way through a random arrangement of rooms (a dungeon) populated by randomly generated but thematically appropriate bad guys (monsters), trying to get to a goal, be it a safe with documents in it, a piece of stolen technology, or what have you (treasure).  We wanted to have at least a selection of classes available who would have different experiences, so we added the idea of optional routes that you could only get to if you had certain skills.  Here’s what we were shooting for with our random dungeon generator:

Test Dungeon Outline

When you started a mission you’d be dropped in a mission start area, like a square outside of a museum or a back alley behind a warehouse.  We had a selection of areas, in which we’d create some generic room types.  For instance the museum area would have a loading dock, an atrium, a long hallway, a display room, a break room, etc.  The game would put together a random arrangement of these areas when the mission was started, so each mission would feel a little different.  We also wanted some thematic variety, so we came up with the idea of having theme sets for areas.  For a museum you might have a cephalopod museum, a historic losers museum, a doll sized furniture museum, etc.  We’d differentiate these by substituting description phrases in the generic room descriptions, so the room might be:

You’re standing in yet another hallway. Marble columns arch from floor to ceiling evenly along the length of the hall. Security cameras sit high in the corners %instance_variable. The floors are spotless, shining in the glow of incandescent lamps set into small alcoves. A threadbare rug extends the length of the hall.

There is %roomlib_title here.

Assuming this was a Cephalopod Museum, into that we would substitute an instance variable like ‘above seashell sconces’ and the roomlib title would be ‘an angry-looking octopus’.

Those who have money do art, those who don’t have money do text.  Fortunately with layered graphics we figured we’d be able to create generic room backgrounds and then drop unique sprites on top of them as we had money to pay artists.

The rooms would be populated by thematically appropriate bad guys, and to proceed through the room you’d need to defeat or incapacitate them.  You’d get equipment for completing missions or helping out your friends, so you’d have leveled guns or grenades or disguises, if you were a spook.  Get through all the rooms and you successfully complete the mission.

Mission SelectionAs a Facebook game, you need to limit the amount of content and progression players can burn through in a sitting.  Otherwise, assuming your game is fun, they’ll burn through all your content in one sitting and then be done with it.  We planned on doing that by limiting the missions available to players.  We’d have low-value missions available regularly throughout the day that were only available for a set time (like the next 3 hours), and daily missions that were high value that were available all day.  You’d be able to help out your Facebook friends who were playing the game by sending them access to mid-value missions.

We also had the concept of multi-player missions, so the reward wouldn’t unlock unless all of the players who agreed for the mission completed it within the set time.  Since we were allowing good guys and bad guys, you’d also be able to PvP with other players, though we didn’t prototype that too heavily.

Over time you’d level up, gaining the ability to go on multi-player missions, go on missions in cities other than your home city.  We’d differentiate cities with unique areas and unique variables, so Paris might have a Stinky Cheese museum and cathedrals while Los Angeles might have a Plastic Surgery Parts warehouse and movie sets.

A Tragic Fate

In the end we didn’t get beyond a simple web demonstration without enemies that Ethan built in rails.  As a consulting shop we’d have had to finance it with profits from other projects, and since everyone had bills to pay, those profits never stayed around for long.  Not having a graphic designer on staff also meant we’d have to pay other folks to do a lot of work, which became a major stumbling block.  We probably could have repurposed this idea for an iPhone game, but by the time that platform was ripe we had other ideas to try.

I’ve uploaded a bunch of design documents to github, if you’d like to check out more.  Maybe someone will take the idea and run with it.  It’s still a game I want to play.

Fiasco: Bad Beans

Most gamers I know tend to collect unplayed games.  We buy them with the greatest intentions, but then they sit, unplayed, often unread.  Fiasco is a great game, a collaborative storytelling game about people with powerful ambitions but poor impulse control.  We finally got to play it tonight and had a great time.  For your enjoyment, here’s a rundown of our little adventure in Beatrice, Nebraska.  It was a real fiasco.

Continue reading “Fiasco: Bad Beans”

Platform Persistence, Virtual Death and Pocket Worlds

Note: This is a long, rambling, train of thought post. The tl;dr version is: Emotional connection to bots happens, we get sad when things we care for go away, so there’s a big ethical risk associated with human-acting bots living in unportable platforms. We members of the ‘Bot 2.0’ community need to address this before we get too far.

A little over a year ago I started playing a cloud-based iPhone game called GodVille. GodVille describes itself as a Zero Player Game. You take the role of a god, you create a hero, and you send that hero out into the game world to fight on your behalf. Your hero is an independent being.  When you come back to check on them, they will have recorded an entertaining diary of monsters fought, treasures collected, and items sold, all without your input. You only have four influence options on your hero: you can encourage them, which makes them heal faster, discourage them, which makes them fight better, shout down at them, and activate some of the items they pick up.

While it isn’t a very interactive game, it’s still a compelling experience. I check on my hero every day or two, look for interesting items to activate, and encourage him as much as I can.

Your GodVille hero can’t permanently die. They can be killed, but they’ll just wait around in the ground, writing notes in their diary until you resurrect them. (They’ll get tired of waiting for you and dig themselves out after a few days.) Not killing these bot-like characters is common in online games, permanent death is generally reserved for the hardcore modes of single player releases. (A really interesting article in wired.co.uk postulates that the free to play model is driving this, because developers don’t want to give you an excuse to walk away from their microtransactions, or get the feeling that your money was wasted.)

Pets in GodVilleOnce sufficiently powerful, your GodVille hero can adopt a pet, it’s own sub-bot that helps it fight and gains it’s own levels. My hero adopted a pet earlier this year. Over the a few weeks I watched the pet (a dust bunny named Felix) fight along side my hero, shield him from attacks and help heal him. The pet went up in level, gained some abilities, and everything was going just peachy.

Then I opened the app one day, and the pet was dead. My hero was carrying around Felix’s corpse. I went to the web and searched for pet resurrection, but found it wasn’t possible. Sometimes the hero will pay to have the pet resurrected, sometimes they’ll just bury them. After a grieving period, they’ll adopt a new one.

Felix’s death had a lot more of an emotional impact on me than I expected. I didn’t know Felix, I never met it, it really only existed as a few hundred bytes of data on a server somewhere. I’ve had more interactions with lamps in my house than I did with Felix.  If you tip a lamp I really like off a table and shatter it into a million pieces, I may be angry, but I likely won’t feel an immediate emotional loss.


A Lamp with Feelings

Felix’s death was hard because I’d made an emotional connection to him, watching him interact with my hero. His death highlighted my powerlessness in the game. I can resurrect my hero, within the confines of the game mechanic, but I can’t resurrect his pet. No matter what I do, no matter how hard I try, I can’t bring Felix back to life.

Someday, inevitably, GodVille will shut down. People will move on to other projects, the server bill won’t get paid, iPhone apps won’t be the hot thing anymore. My hero, his diary and pet will disappear, and because he only lives inside the GodVille system (and being part of that system is a fundamental aspect of who he is), he will be gone forever.

Bruce Sterling at SXSW 2010 (photo by jonl)

Bruce Sterling gave a great talk about this at SXSW in 2010, about how the Internet doesn’t take care of it’s creations. We build and throw away. Startups form, grow like crazy, and if they don’t sufficiently hockey stick, they close. Or they get popular but not popular enough, and the team gets hired away to bigger players. Either way, the service shutters, the content and context disappears, history is lost. If it’s bad to have this happen to your restaurant checkins and photos, how much worse is it when it happens to virtual beings you’ve created an emotional attachment to? As creators, if we encourage platforms like this, roach motels where content comes in and never comes out, what does that say about us?

Eighteen and a half years ago I created my first character on a text based multiplayer internet game called Ghostwheel, hosted by my first ISP, Real/Time Communications. Ghostwheel was a MOO, an Object Oriented version of a Multi-User Dungeon, the progenitor of today’s MMORPGs like World of Warcraft. In a MOO you can create characters, build environments and objects, talk to other people, fight, and even create bots.

Real/Time Communications hosted Ghostwheel on a small server in their data center, a 486 desktop machine. People from all over the world connected to that server, created characters, and wove shared stories together over the early boom years of the internet.

A Late 90’s Austin Ghostwheel Austin Meetup

Eventually Real/Time Communications lost interest in hosting and maintaining Ghostwheel (and eventually Real/Time itself disappeared), so we took it elsewhere. As someone with colocated servers and ISP experience, I ended up hosting it on one of my machines. It now lives in a cloud VM, and even though the players have left for newer, more exciting destinations, everything they created, the characters, the setting, the dusty echoes of romances and feuds and plots all still exist. It still exists because someone with the wherewithal got their hands on it, and cared enough about it to keep it going, and it exists because MOO is an open source platform that doesn’t depend on one company being in business.

While piecing together the thoughts for this post it occurred to me the that the MOO server could probably be compiled on some modern linux based smartphone. They have more than enough CPU power and memory, and even a 3G connection is fine for text. I could conceivably load Ghostwheel on one and carry it around in my pocket. A whole world, nearly a thousand characters, tens of thousands of rooms and objects, dozens and dozens of species of monsters, all living in my pocket. I could hand it to people and ask them about the weight of a world. Every time I think about that it blows my mind. There’s definitely the kernel of something new and weird there.

So back to my point, as I’ve talked about before there’s a whole species of autonomous bots appearing around us that we relate to as nearly human. Like my GodVille character, we don’t have direct control over them, their autonomy being one of the things that makes them seem more human. They’re coming, they’re awesome, and I think in a few years they’ll be as common as Facebook accounts.

The most exciting work I’ve seen in this field is from the good folks at Philter Phactory and their Weavrs system. Weavrs are social bots defined by location, work and play interests, and groups of emotional tags. The Weavrs system hooks into Twitter, generates its own personal web pages (kind of like a bot-only mini-Tumblr) for each weavr, and is extensible through API driven modules called prosthetics. Some example prosthetics include the dreams prosthetic, which folds images the weavr has reposted into strange, creepy kaleidoscopes.

Weavrs are easy to create, they produce some compelling content, and they’re fun to watch. I’ve created a few, my wife has one, several of my friends have them. Interest is picking up from marketing and branding agencies, and where the cool hunters go, tech interests will inevitably follow.

The thing that’s starting to concern me is the possibility that Bots 2.0 could end up being another field like social networking where the hosted model gets out ahead of ownership and portability. What happens when the service hosting our bots disappears?  What happens to all it’s posts, it’s images, it’s conversations?  (I suppose I wouldn’t be qualified to work at a cloud provider if I didn’t have strong feeling about data portability.)

Weavrs as a whole isn’t open source, but it has lots of open source bits. Philter Phactory is trying to run a business, and I don’t begrudge them that. They have the first mover advantage in a field that’s going to be huge. I’m sure data portability is on their radar, but it’s a lot easier to prototype and build a service when you’re the only one running it. Conversely, it’s a lot easier to scale out a platform designed to be run stand-alone than to create a stand-alone version of a platform.

Once a few more folks start to realize how interesting and useful these things are, I think we’re going to see a Cambrian Explosion of social bots, and I’m sure plenty of entrants in the field won’t be thinking in terms of portability. They’ll be thinking about the ease of centralized deployment and management, and the reams of juicy data they can mine out of these things.

I remember in the early 2000’s feeling a similar excitement about self publishing (blogging). It was obviously going to be something that was going to be around forever once it was perfected. You could see the power in it’s first fits and starts, and it was just going to keep getting better. I think there are more than superficial similarities between self publishing platforms and social bot platforms, in fact.

Thinking back on that evolution, I think the archetype that we should hope for would be the WordPress model. I remember Matt Mullenweg visiting the Polycot offices in 2004 or so. He was passionate, had a great project on his hands, and I’m embarrassed to say that we weren’t smart enough to figure out a way to help him with it. Matt, Automattic and the WordPress community have done a great job of managing the vendor lockin problem while still providing a great hosted service people are willing to pay for. They get the best of both worlds, the custom WordPress sites and associated developer community, millions of blogs hosted by ISPs, the plugin developers, and still get to run a nicely profitable, extremely popular managed service.  If wordpress.com goes away (god forbid), someone will still be maintaining the core codebase, and you’ll be able to export your data and run your own instance as long as you like. (Just remember to register your own domain name.)

I hope that the social bot community evolves something similar. I think that platforms are coming online to encourage that, and I think the people in the field are smart and recognize the ethical implications. Maybe in a year you’ll be able to run your bots on a hosted service or, if you’re motivated, run your own bot server and fiddle with it’s innards as you please.  Who knows, you may even run them on your smartphone.