Category: Game Design

  • False Unicorn Horns

    The game I’m working on is really really fun. When I first played it I had near orgasms of delight. The problem is, it’s really really hard. I want to give players orgasms of delight but to experience them they have to learn a lot of stuff. I’ve decided to try to solve this problem with a false unicorn horn.

    No one I ever try to explain this to has ever seen The Last Unicorn (which is a shame) so I will fill you in on what I’m talking about. In the movie there is a last unicorn. It also contains Mommy Fortuna, a relatively evil witch who keeps a traveling sideshow of rare animals. Most of her animals are very humdrum but she uses a magic spell to make it appear to onlookers as if they are manticores and satyrs. The pertinent idea here comes up when Mommy Fortuna captures our Unicorn. Since unicorn horns are invisible to the general public she magically applies a false one. This is a great idea that I want to steal.

    Since the game is so hard players will never learn how to play it if I just explain all the buttons and throw them in. Red-faced, they will exclaim “this is just a horse” to each-other between quaffs of ale, have a good laugh, and then move on. I need to apply a false horn so that people will play the game even when it is not at its orgasm inducing peak in order to bring them great joy later on when they can see the horn for real. I think there are a couple ways to do this and I want make use of as many as I can. More ideas are appreciated, there is a comment feature on this blog.

    Abuse of Dopamine Receptors. The ultimate false unicorn horn, behavioural psychologists have done a pretty good job of ferreting out the strings attached to our brain that make us dance and have called them dopamine receptors. Things that our brain loves: bright colours, intermittent rewards, a feeling of progress, close calls, basically Peggle. Basically our brains were put here on earth to play Peggle.

    Our brain loves these things because they are hints that we are learning something. And god DAMN do we love to learn. The problem with Peggle is that any player-skill is swamped out by the random element. So, like gambling, it’s just a trick. An illusion. It tickles the brain making us feel like we’re learning something and improving but we aren’t. The horn on the unicorn is a fake. There are a lot of other games with big fake horns, like Farmville, WoW, and Drop7 (actually I’m willing to budge on Drop7 if someone can find me a player that reliably gets very high scores).

    So anyway, I have to get some fake learning into my game so I can get people to the real learning. I’m not really very good at this and it will take some serious study. Time to download WoW I guess.

    The other way that I can think of to paste a false horn on this unicorn is the “puzzle mode” strategy. The idea here is to provide a totaly different game mode from the one I want players to eventually play. But a game mode that has a learning curve. You can think of it as a very extended tutorial. Or like an upside-down Scribblenauts. Scribblenaut’s orgasms came from the sandbox mode. Making Scribblenauts the best kind of game. Everyone could see the horn right from the beginning. But you can’t really sell toys right now. Well not un-musical ones anyway. So they had to affix a false horn to get we who aren’t good without a reward structure to fondle the real horn.

    I have the opposite problem but want to take the same approach. I’m planning to have a fairly long set of puzzles that are more in line with “permute choices until you win” style of play like Splitter or Angrybirds. Which give you all the skills you need to play the more Aramdillo Runy, Contraptiony game later on.

    I have hacked out a small level-set to try this out on just a very few testers and the results have been. Well, lackluster is the word. So I definitely have a road ahead. Fortunately the puzzle design was pretty crappy and it had no Peggle elements so I might still manage to weave a horn that will wow the beer-soaked crowds. I can’t quite remember how The Last Unicorn ends but I’m pretty sure Mommy Fortuna comes out on top in the end.

  • Of Rods, Cones, Meat and Monaco

    This was orginally a guest post I wrote on the gifted game author Andy Moore‘s website. It is reprinted here without his permission, or indeed any regard for how he might feel about me duping content on his site.

    I’ve spent the last few years prototyping games and generally trying to get my head around the discipline of game design.

    This post is about the latter.

    As you know the human eye uses Rods and Cones to detect light. Cones see colour and Rods see black and white. Since Cones see in colour and Rods don’t you’d think we could ditch the rods and just use the whole eye to see in glorious colour. Unforunatley Cones suck at a lot of things. In fact Cones are so bad at most things we don’t have very many. The human eye contains abut 7 million Cones and about 100 millions Rods.

    The biggest thing Cones suck at is seeing in low-light conditions. This is why dogs see better at night but also see in black and white. They haven’t sacraficed any retinal real-estate to Cones. Cones also suck at detecting motion. Our eye harneses groups of rods together to be incredibly good at detecting motion and it can’t do that with Cones. Mabey because of this some of the pathways in our brain that process motion are also bad at dealing with colour.

    This is pertinent to video games. Especially games which have a lot of motion and rely on quick decisions. Like Super Meat Boy for instance, or Monacco.

    I recently started playing the PC version of Super Meat Boy. I have been eagerly eagerly eagerly awaiting the release of the PC version of Super Meat Boy and it has not disapointed. It is a wonderously tuned piece of art. The pacing and the feel are perfect and it is seriously cutting into the time I’ve spent working on my own game. But I noticed in a few levels that I was having a hard time keeping track of Meat Boy as I sent him careening around the levels. After dying a few hundred times I began to wonder if it was related to how my eye perceives motion. Here is a screenshot of a Super Meat Boy level I have trouble with:

    And here is the same image completely desaturated:

    This image is how the motion sensing part of your eye and brain sees Super Meat Boy. Notice how Meat Boy fades into the background? That means he’s almost invisible to the part of you that detects motion. This is bad for a couple of reasons. Mostly because you Fovea is so small.

    The Fovea is the part of your eye that can see details. It’s where most of those 7 million Cones are. Inside the fovea the rods and cones are packed into a tight latice and we have very good visual acuity. Outside of the fovea we only have a vague sense of what’s around us. Outside the Fovea we have an sense of patches of bright and dark and we are extremely queued to see motion. The problem is the Fovea is tiny it’s about the size of your thumb-nail at arms length. That means we can only see a very small part of the world with any clarity. It doesn’t seem that way to us because our brain is so good at filling in the gaps. You know how you don’t notice the Blind Spots in each eye? Your brain is filling them in so you don’t notice them. It’s also doing similar tricks for pretty much 90% of your visual field.

    Your brain actually builds up a scene by using tiny eye movements to flit your eyes across your field of view. These tiny movements are called Saccades and you need them to build up an image in your head of what’s out there and what’s happening. Motion is a major driver of Saccades. If something is moving your eyes will quickly move to focus your Fovea on it, take in all the details, and then flit back. Your brain will then super-imposing the data it has gained on your view of the outside world. This makes you think you have a pretty good idea of what’s going on out there even thought you exist in a fog of uncertainty

    Meat Boy blending into the background causes two problems for this system. The first is, we can’t track him very easily. The part of the visual system that keeps a moving target in view is very old and very honed and it needs the motion sensitivity of your rods to do its work. If you rob it of those rods it will have a harder time doing its job. The second problem is reaquiring Meat Boy after you Saccade off to the ledge you’re trying to land on. Imagine you hurl Meat Boy off a cliff planning to land on a narrow ledge farther down. As Meat Boy travels south you can’t fit both him and the ledge in your Fovea at the same time, it’s too small. But you need acurate information on the ledge and on Meat Boy in order to land on it so your brian Saccades your eyes back and forth. It’s pretty easy to Saccade to the ledge since your brain remembers where it is. But Saccading back to Meat Boy is harder since he’s moving. In most levels your brain manages without too much trouble. It uses the movement data your rods are feeding it to keep track of where Meat Boy is moving while you Saccade off to the ledge. Then you can Saccade back because you know where his new location is. But in the levels where Meat Boy is of a simmilar brightness to the background your motion sensing system suddenly goes blind, you miss your Saccade and Meat Boy falls to his death two or three hundred times.

    Note that this is only a problem in a handful of levels and it doesn’t erase your ability to play, it just makes it a little harder. It is a good example, though, of how knowledge of the eye and the brain can make you a better game author.
    Now. If I haven’t totaly bored you to tears lets talk about how this relates to Andy Schatz’ upcomming game Monaco. Like Meat Boy, I am a giant fan of Monaco. I spent most of PAX this year playing Monaco. In fact it was all my Monaco playing that got me started researching all this eye-brain stuff in the first place.

    In a very real way Monaco is about Saccades. You Are Not So Smart is a relatively interesting blog on how the brain operates and the author, David McRaney, managed to coin one of my favorite quotes: “Reducing chaos into a manageable mental state is a constant battle”.

    A lot of our brain is dedicated to making sense of the world around us and multiplayer Monaco is a direct gloves-off challenge to this ability. It requires an extreme level of Situational Awareness. That’s a fighter-pilot term. Situational Awareness is how well you understand the state and location of all the important variables around you. Those variables might be MiG fighters or they might be french goons looking to knock the block off whover took their employer’s shinies. In Monaco you have to worry about the goons but also, more importantly, you have to worry about your team-mates.

    Monaco is about working as a team and you can only work with your team-mates if you know where they are and what they are doing. The pacing of the game is such that verbal communication is often too slow to adequately coordinate everyone’s movements. You all have to be actively keeping track of what’s going on and making decisions that will further the goals of the team. In this sense Monaco is more like a basketball game than a game of Chess. In this way Monaco is about Situational Awareness. And that Situational Awareness comes from your eyes and the processing of the information your eyes provide.

    Monaco sets the motion sensing part of your brain all alight. Like christmas tree lights. Your brain is trying to keep track of everything and is sending your eyes flying all around the screen trying to keep your mental map up-to-date. Andy Schatz hasn’t ham-strung our Rods by making the players blend in with the background. Monaco represents a fair challenge to the sensory system. But there is a lot of extraneous movement to draw the eye in the form of fog-of-war. As a player enters a room the scope of their vision rapidly opens up which makes objects in the room much brighter. This brightness is in turn noticed by our perephreal vision which then Saccades the Fovea off to identify it.

    This is troubling because usually we don’t need that information. We don’t need to know the contents of the room someone just walked into unless it contains a guard or a shiny. We should be satisfied with the vague notion of our teammate being “off in the top left cooridor somewhere”. But every movement of our team-mates is providing many pings of movement to our brain. With so much movement the location of guards and team-mates becomes lost in the shuffle. If you played Monaco while the fog-of-war was tile based you’ll know exactly how this works. Each tile used to change brightness so each tile represented a possible source of attention for our brain. It was very difficult to seperate important input from the constant bombardment of flickering tiles.

    Interestingly, I think this could be a good thing. Just as Situational Awareness seperates fighter pilots into the skilled and the dead it seperates Monaco players into the rich and the jailed. Brains are magical learning machines. Unlike the small handful of Super Meat Boy levels Monaco doesn’t blind our visual system, it just presents it with a very hard challenge. A challenge your brain can improve at subonciously. Think how much of getting better at Super Meat Boy is subconcious. It’s about training your brain with practice just like Situational Awareness in Monaco. That’s pretty much the definition of video games.

    Which is a good thing since I don’t think there’s much Andy can do to change it.

    In fact back when I was reading about all this I made up a simple Monaco analogue. I made a game that mimics (although mimics poorly) the Situational Awareness challenge of playing Monaco. It has a fake fog-of-war that moves around as the players move and you have to keep track of many variables while ignoring changes in the fog-of-war.

    You can swap the fog-of-war from being based on changes in brightness to being based on changes in hue with the space bar. Theoretically the version where the changes are in hue and not brightness should be easier. In practice the difference is subtle.

    You can play it here: Morocco

    You will need instruction as it took about an hour to write:

    Goal: Get a high score. Your score is the Grey Number in the top left-hand corner.

    Score By: keeping your mouse hovering over the player that is the same colour as the square in the top left-hand corner

    Also Score By: the other players will ocasionally turn into squares. Keep track of them and Click on them when they do for a big point bonus.

    Swap Between Brightness and Hue Fog Of War: with spacebar

    Restart at the end of a round: with the “R” key

    I am always impressed at how broad a base of knowledge is required to author video games. I think understanding of the human brain is one of the most rewarding. Learning about the Brain is also great for shining light on every-day life. I am constantly trying better to understand my own.

  • Spelunky is Nascar

    This was originally published on our travelogue but I have back dated it and moved it over here where it fits in more.


    Spelunky Logo
    Originally uploaded by gerbil.llama.

    I’ve been playing Spelunky all day and just wanted to get a few thoughts out of my head.

    Most importantly: Spelunky is Nascar racing.

    At some point I was trapped in a hotel room and ended up watching the Rednecks Turning Left show. I discovered that cars break down alot in Nascar. There are all sorts of things that can go wrong in Nascar from mechanical difficulties to cars running into eachother. What is interesting is that the percentage chance of something going wrong is proportional to how hard you’re driving your car. So if you take off like a hare you’re car is going to fall apart and you’re going to lose. But if you’re slow like a turtle everyone will pass you and you’ll lose. So Nascar is the game of balancing the two goals of going fast and not breaking down. It’s fundamentaly a calculus problem. Which seems to be amusing to the human brain.

    Spelunky is almost exactly the same thing. But in Speluky speed is replaced by collecting gold.

    Fascinatingly the goal in spelunky is not to beat a set number of levels. It is to get 100,000 gold to the guy standing at the end of level 4. But you can make multiple trips to fill him up. So if you take him 50,000 the first time you play and 50,000 the 2nd time then you’re done. But you can also play through ten times and take him 10,000 gold each time.

    Spelunky is also fucking hard. Making breakdowns inevitable. So the longer you spend in the level the more likely you are to die. But the only way to get more gold is to spend longer in the level.

    So you have to do the same kind of calculus Nascar teams do. What is the optimal amount of gold to grab each time through the level? If you try to get all 100,000 in one trip then you may die hundreds of times before you make it. But if you just grab 1,000 you have to play it at least 100 times!

    This is a fantastic meta-game that gives each run purpose and meaning as every play you make is seen in the light of this risk/reward calculus.

    What would make Spelunky really awesome is if Derek explained to you that this guy who wants 100,000 gold exists instead of making you wander off to the Spelunky Wiki to figure out how the fuck to save your progress.

  • Hey Guys

    This is from a series of posts I wrote about Fantastic Contraption when I originally released it. They were originally published on our travelogue but I have back dated them and moved them over here where they fit in more.

    This is a post I wrote on the Fantastic Contraption forums. Someone (OfficiallyHaphazard) asked me a few questions and I ended up writing a whole thing.

    It was an attepmt to sum up this particular life-altering experience.

    The original thread is here: http://fantasticcontraption.com/forum/viewtopic.php?f=6&t=1212&st=0&sk=t&sd=a

    Hey guys.

    Sorry I don’t post much. Sorry I don’t get more bug fixes out.

    This has been an incredibly overwhelming experience for me. Weasel’s bang on in all his answers. But I can offer my perspective. Come with me on a trip down memory lane.

    Imagine yourself a corporate web developer. You are a .Net and SQL server ninja. You hate microsoft but accident and the world have made you really good with their web-dev suite. Which is not an easy thing to be good at.

    So, my young ninja, you decide to move to San Francisco after taking a year traveling in asia. You end up in a job really quickly. There is a ton of work in this city. The job looked really good on the packaging. But after you sit down and start taking on projects you realise most of your day is going to be hacking asp and tweaking existing sites. “can we add another item to that dropdown?”. And every time you drop a wicked prototype for a database-enabled flash front-end on them they look at you like you just dropped a turd on their desk.

    Seven months pass. You are a thoroubread greyhound (who can’t spell) forced to jog beside a fat owner. You are the bazooka swatting flies. You are bored out of your gord. You listen to the entire back-log of “this american life”.

    But then you get this idea. Out of the blue, an idea. A game. Kind of like Armadillo Run, kind of like the Increible Machine. But with a twist. Instead of making an environment that the armadillo moves through, you make an armadillo that moves through the environment. You’re pretty sure this is a good idea. You run it past a few friends who’s opinions you respect (weasel) and they also think it’s a good idea.

    So, what the hell, you’ve got alot of creative energy left at the end of the day. Pretty soon every spare waking hour is writing code and learning flash. No weekends for four months. Hoping to get sick so you can stay home and write code.

    Ideas are considered and rejected, flash is puzzled over and solved, bugs come and go. A game begins to take shape.
    Eventually menus and graphics are made, everything ends up actually working pretty well. And your family and friends doing the beta-testing are hooked.

    Time to put it out into the world. Forget ads. Ads suck. And forget selling it to a portal. You made it, you’re going to host it. So try charging a few bucks for the level editor and mabey it will buy us all a round at the pub.

    And up it goes. You bootleg some bandwidth off of a friend for 10$ a month. Announcing this momentus event are two blog-posts. One on your travel log that gets zero traffic, and one on weasel’s bloggy web-space-thing. That gets alot more traffic than yours but not a ton.

    A few days pass. Life goes on as expected. The game gets a few small blog posts. A small gaming site links to it and the users rate it pretty well on that site. Then, one fateful sunday, you come home to 20,000 users on the server.

    Stumble-Upon has found you and likes what it sees. From then on it’s a roller-coaster ride to over 1 million views in the second month of release (august). This rollercoaster is punctuated by constant server meltdowns. A steady stream of server upgrades and massive database changes are the only thing keeping the hungry behemoth at bay. Even with all your best efforts the servers still spend the better part of some days offline and when they are up it takes 3 minutes to save. People start writing you emails: ‘how much money do you want to put it on our portal?’, ‘how much to make an iphone version?’, “we’re discussing the possibility of a DS version of your game internally. Are you interested?”. Pretty heady stuff. And you’re getting these emails while trying to write asp code at the day-job.

    So the day job has to go. The game is making more money than your day-job is at this point anyway (thank you everyone, and a bunch of it gets kicked back to almost everyone in the credits page).

    The last day of real in-the-office work is August 8th. Just under a month from the day of release. Not that now your life is easy. This is in the middle of the server meltdowns. But eventually you switch hosts, become a reasonably skilled DBA, and things start running smooth.

    But behind the maelstrom crazy things are happening. People are playing the game hard. They are doing amazing things, mind-blowing things. You have now gotten your head around 1 million page views in terms of server resources. But not in terms of actual people playing the game. And mabey that’s a good thing. Mabey you’ll pay a good friend to get his head around it instead. Mabey if you spent too long on the forums or too long flipping through levels and solutions your life will be paralyzed by the idea that _millions_ of people are playing, loving, and hating, your game.

    Can you really imagine what that means? Millions of people? I can’t.

    I know when I went to PAX the Wizards of the Coast guys treated me like a rock-star. I know people at Blizzard play my game. Gaming heroes know Fantastic Contraption.

    And all of it leaves me just stunned.

    It’s hard to think about Fantastic Contraption now. About the things that need improving. I probably won’t be spending alot of time on it. It is wildly succesful as it is. There are things that could be much better. But I might leave those for Fantastic Contraption 2. Or some totaly different game. I can let my imagination go wild and play with game ideas _full time_ now.

    Interesting times though. Even if I don’t spend a ton of time on the game from now on it looks you guys might get the game that you deserve anyway. The polished game with a good level browser and graphics that took more than two weekends to knock out. I don’t want to jinx it but there could be some very exciting news in the future indeed.

  • Administration

    This is from a series of posts I wrote about Fantastic Contraption when I originally released it. They were originally published on our travelogue but I have back dated them and moved them over here where they fit in more.

    More in the series of articles about writing Fantastic Contraption.

    With some measure of success comes some measure of administrative problems. The game is up and everyone loves it and all the press is good and the world is generally being my oyster. So that’s awesome.

    But remember how I made this game in my free time? And how that is limited? Well development has dropped off to a slow trickle. Because all that free time I used to use to write code I now use to wrangle servers and write emails and put out fires.

    Turns out having a massively popular flash game with login accounts, saved contraptions, a thriving board and a pay version generates alot of random little tasks.

    Luckily Travis Stone is taking care of the hosting problems. So when the database went down today and when the hosting company is dragging its feet over upgrades he takes the brunt.

    But when that happens there are also a bunch of PayPal payments that fail. Well, the payments don’t fail. I get the money. But the user is obviously never registered as paid. So I have to go correct all of those manually and write sorry notes to people if they’ve been waiting for a while.

    Also it turns out there are just a ton of ways to buy things with PayPal. And I don’t support all of them as gracefully as I should. And my PayPal code is in PHP and I kind of hate PHP and don’t know it very well. So there is alot of trialing and erroring while I try to get all of that working.

    And then there are the wonder-mails. The random emails of wonderous or possibly wonderous offers or events. Like job offers and offers to do things with the game and the like. Some of those are just awesome (thanks Pez for hosting the music for us!) but alot of them require negotiation and carefully worded replies. Which sucks up more time.

    I think I spend more time replying to board posts about future development than I spend actually doing development.

    But things are just going so peachy-well it’s impossible to complain. I’m not bitching, I’m merely cataloging. So the next guy knows what to expect.