• 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.

  • Pura Vida


    Tap Dancing Horse! a video by apes_abroad on Flickr.

    Out at Gabe’s bar again, where we ended up for drinks after dinner. We finish our last beer on the beach under the new moon sky so filled with unnamable constillations. Colin’s been bugging Jose to have a game of pool since Thursday, but there are always too many dishes. Finally they’re into their second game, so I leave them to it. Wander back tipsy through the sand and baby palms, ducking under the clothesline and stepping carefully over the ageing barbed wire fence into our yard. Our beachfront yard in Pochote, Costa Rica. Taking the secret backup key from its hiding place and penetrating the hexagonal wooden capsule, our little shiplike home. Nuking some leftover Gallo Pinto, setting the aircon to stun and settling down to my laptop on the dining table.

    </wierd present tense>

    I was just saying to Colin today: Colin, life is good. We were floating out in the water near the little stream where the skimboarding is usually good. Today we went out at high tide and the waves were good instead, so Colin left his board to go bodysurfing instead. He’s quite good at it, and when he gets it just right you will see him coming towards the shore like a disembodied head in the middle of a rolling white wave, grinning ear to ear. We collected shells and looked for Mary’s beans on the walk back.

    It was our usual break to a day spent hard at work, as we have been for the last month. A writer’s retreat, Colin likes to call it. There’s not much to do here and we are both so excited about our games that we’d rather work on them than do just about anything (though we make time for swimming!). Tomorrow I’m sending Word Dog off to FGL for strangers to poke and prod and give me their first impressions. Today Colin sent Flora & Fauna (short for Flora & Fauna on the Isle of Ajav, his new working title) to a few people for personal review. He weighs those reviews so highly! If I had done that for Rebuild I never would have finished it, and it just won the Kongregate monthly contest and is their #3 ranked game – hah!

    Colin spent the last 2 days doing art for Flora, which has taken the style of a mid-1800s botanical text. It’s really quite beautiful what he’s done with it and his artistic strength seems to lie in his willingness to try crazy things, like bending the entire play screen as if it was folding into the center of a book. It really looks great and the gameplay is super fun, kind of like Contraption but with more organic kinds of creations.

    I whussed out again and did the art for Word Dog myself rather than getting an artist, but it was much less work than Rebuild and I did most of the character stuff in one afternoon. The gui and tiles are… well they’re good enough for now. I actually spent forever on the logo trying to get it to look like the spraypaint title to Wild Style, but I am just not that cool. I picked music for it yesterday which consisted of me listening to every song in shockwave-sound‘s “hip hop” category and eventually picking the cutest, least hip-hoppy song in there. I got some excellent feedback from friends and family this week and I think the tutorial is pretty solid. Today I fiddled with dog barking sfx and drew a pretty halfassed dynamite explosion. Totally nearing completion!

    Next up for me is a tossup between doing the iOS version of Word Dog myself (I’ve been meaning to learn) or jumping in to Rebuild 2. I haven’t decided if I want to make that sequel 1) a straight flash game, 2) a multiplayer facebook game, or 3) some flash demo/content pack thing. I guess I could add 4) full downloadable game in there because so many people have suggested it but the scale of such things is intimidating. Just hiring an artist to do some animations has me fretting but I’m going to have to bite the bullet this time. I just don’t trust other people to work hard and come through on things and I don’t want to end up in a relationship I regret.

    But anyway, it looks like I’m going to make my deadline of getting Word Dog done by the end of Costa Rica. The Mishkins are coming to visit about a week from now and we’ll have a nice break from our writers retreat to do some of the fun local things we’ve been planning. I’m determined to see monkies in one of the parks nearby and go snorkeling at the popular Isla Tortuga.

    Oh I nearly forgot to mention, one fun local thing we did do already was go to the annual Rodeo in Cobano. The bull riding was pretty wild, because they let spectators down into the ring where they run around drunk trying to get the bulls to chase them. This is after the riders dismount of course, when they send out guys on horseback to lasso the bulls. I was a bit disappointed nobody got gored (Colin was horrified at this remark, to which I replied, “just a little gored!”) but some of the rides were pretty amazing and looked scary as hell. Those bulls really can jump. The pupusas and churros were yum and we got to practice bad Spanish (and at the same time, bad English) in a bar playing salsa music and spanish rap. A Good Time Was Had By All, or as they say here, Pura Vida.

  • Wild Things


    Monty
    Originally uploaded by apes_abroad.

    Today was a very doggy day. As soon as I opened ‘the wall’: our front doors which make up a full 1/6th of our hexagon shaped house, our neighbor Larry’s dogs came over to greet us. Nearly as soon as they left, a trio of dogs I’d never seen before took over the deck. One of the females looked suspiciously similar to the puppies we’ve seen hanging out at the bar. They were probably strays although it’s hard to know here, and they were friendly and healthy and content to lie at our feet in the morning sun. Larry and I hatched a plan to adopt one of them while we’re here and get her spayed before we go.

    Later in the afternoon the half owned, half stray pack from the next cove over crossed the river and caused a ruckus with the local dogs. We only worry if they go after the iguanas, who are cat sized dinosaurs with a tendency to fall off the roof and surprise us. The biggest, which Colin nicknamed ‘Monty’ (pictured here), comes out to bathe himself in the sprinklers at midday while all the dogs are sleeping.

    We haven’t seen a howler monkey yet but today we found tracks by a stream, and of course we can hear them in the hills every morning and evening – I can hear them now like the roar of distant lions. One morning we had scarlet macaws in our yard pulling huge bean pods out of the trees. They used to be common here but disappeared in the 80’s during a time of local development. They’re coming back now with the help of a raise and release program in Tambor.

    This place is a birder’s paradise, but so far I’ve only identified the macaws and the long tailed grackle which is basically a crow with an expanded vocabulary. There are lots of green parrots and yellow birds with squawky voices, hummingbirds and seabirds. The pelicans are fascinating, how they so clumsily dive into the water and bob up, then float about for a minute trying to swallow their fish.

    Yesterday we watched people come to take the coconuts from our neighbor’s yard. One guy climbed up barefoot then a machete was passed up to him on a rope. He tied ropes to big bunches and they lowered them down slowly so they wouldn’t crack. Huge fronds were sent crashing down with a well aimed chop from the machete and a shout of either warning or joy, I wasn’t sure. In the end they had too many coconuts to take away so Colin grabbed some, borrowed a machete and started practicing his coconut opening techniques.

    Sometimes, in the middle of the day or night, a coconut will fall off one of our trees and land with a loud and recognizable thud. We hurry out to see if it is a tasty liquid filled brown one, or one of the sad aborted green ones which usually split on impact. I know they’re not great for you but the allure of eating something from our own yard is pretty strong.

  • Stunning successes and stunning sunsets


    Sunny and Happy
    Originally uploaded by apes_abroad.

    My game Rebuild went up on Kongregate, Newgrounds and the general public last weekend, and rocketed to the top of the charts. I expected a decent turnout since there aren’t a lot of Flash games like it, but I’m genuinely surprised at the number of people who have stayed up all night playing it, trying to get all four endings in one day. They aren’t turned off by all the reading either, which was my biggest fear. So many players are posting their suggestions for a sequel that I guess I’ll have to make one after I finish my next game. I have a suspicion Word Up Dog is going to disappoint my fans, having no zombies or visceral stories of life after the apocalypse. I suppose it could be post-apocalyptic, in some future where mutated animals find a collection of early 90’s hiphop albums and base their culture on them.

    It’s going to be great.

    Pochote’s been treating us very well this last week. We’ve made friends with our neighbours Larry and Angie and their three dogs. We took a trip with them to the next cove over and spent a beautiful day on the secluded little beach, swimming and exploring and getting rather too much sun as usual. Larry’s been in the area for several years and has lots of advice for other fun things to do nearby.

    Our neighbour on the other side is actually a sleepy little bar/restaurant run by expat Canadians. We head over there every second night to watch the sunset and have some fabulous roasted chicken from their big clay ovens. They just opened it a few months ago and so far it has a very quiet and chill atmosphere, lots of families and some nights with nobody there but us.

    On the same property the owners also run the free Harmony Music School for local kids, which they started out of their own pockets but the government has finally recognized and begun to fund. They are part of a volunteer program where people come to teach in exchange for accomodation. Pochote is a very small fishing village with few extracurricular activities for kids besides “futball”, so this school is a big deal for the area and is making a real impact. A number of their students have gone on to play for the national symphony orchestra.

    A couple days ago we walked with Don (a founder of the music school) all the way down the beach, past Tambor and another fishing village out to a place called the Jesus Tree. This was a spectacular little beach with one lone tree inexplicably growing out of the rocks in the ocean where no tree should be. High tide stopped us from going farther, but Don regularly walks all the way to Montezuma along this coastal path, about a 5 hour walk. And he does it without bringing water; just shorts and flipflops and an early morning start.

    I’m getting opportunities to practice my clumsy Spanish and to cook with unusual ingredients, and we are both working hard. During our daily beach walks and dips in the ocean we talk about game design. At 5:30 we take in the sunset on a beach log or at the (still nameless) bar next door. We rise and sleep with the sun here, it just seems to make sense that way.

  • Fish and Fishing Villages


    To houses on the beach!
    Originally uploaded by apes_abroad.

    I forgot to mention, I’ve been cooking again! I look forward to making dinner every day and spend my idle time looking up recipes and finding uses for local ingredients. I finally bought some achiote paste, which is a popular spice slash food colouring, so I’m going to see what I can do with it. Last week I made a seafood pasta salad for a small potluck dinner, a recipe of my own creation and one of my first times cooking for other people. It turned out really well! I did a trial run a few days before then made adjustments (green plantains need to boil for MUCH longer than yellow ones!). This week I cooked us a rather delicious Brazilian fish stew which was exciting because you don’t put any liquid into it, just tomatoes and other veggies which provide the juice, then you layer the seafood and herbs on top and those get steam cooked.

    As in Honduras, the seafood came right to our door at Casa Coba. A friendly guy in a pickup truck came by a couple times a week with camarones (shrimp) and a few fillets of whatever was caught that day. On his last visit he brought beautiful yellow-finned tuna which we ate as sashimi the first night (tasty!), then lightly seared with wasabi lime-mayo (mmmmm), then cooked in a honey-chili sauce (kind of weird, but good on a salad).

    We also picked bananas, basil, chilies and unripe mangoes from the garden at Casa Coba. Colin made excellent banana milkshakes every morning which were a wonderful start to our days. I shredded the mangoes and mixed them with lettuce and red peppers for my daily lunch. They were sweet and citrusy so I topped it with a little olive oil and soy sauce, which sounds weird but it worked.

    We mainly shopped at the Pali grocery, the first chain grocery which just opened in Samara: it’s big, it’s cheap, it doesn’t have a lot of things but has many brands of those few things. They have 5 types of canned tuna with peas, 5 types of lime-flavoured mayonnaise, 5 types of powdered chicken stock, 5 types of bologna sausage, and 5 types of dried black beans. But if you want, say, beef stock or plain mayo or pinto beans, you are out of luck. We had some laughs about it, and cooked using what they did have. Happily Samara also has a smaller grocery which takes the opposite approach and has one of everything. Fancy things like oregano, brown rice and chocolate, mostly imported from Spain at inflated prices, but sooo worth it (I am thinking of the chocolate).

    Hmm, I am obviously hungry as I write this. Must be time to try out the popular local restaurant in Pochote: Momo’s. brb.

    Momo’s food was very good! The shrimp was fresh and tasty and reminded me of Thailand, and they have a peaceful atmosphere on the edge of the river where we listened to howler monkeys and watched birds diving for insects. Unfortunately the menus are priceless and I think they gave us the gringo prices, which is not a system I’m fond of but whatever. On the way back we noticed a two table restaurant out of someone’s home which we are definitely going to visit. Also a home selling fish and lobster from a collapsing shack around back, which we will work up the courage to approach. Pochote is a fishing village after all, and the mangroves and riverbanks here are filled with fishing boats.

    I should talk more about our new casa for the next two months! It’s totally beautiful and built entirely of wood. We think the hexagonal shape makes it feel like a ship on the inside; it even has kind of a mast in the centre. We’re sleeping and living in the big room downstairs, then there’s a steep kind of ladder/staircase up to the big loft with two more beds and an extra bathroom. And a/c and hot water to boot – such luxury! Enormous doors open away onto a superb deck; hammock-lined and breezy, it’s definitely where we’ll be spending our time. The house is set back on a big treed lot right on the ocean, at the very very tip of the 8km long beach with Tambor at the other end. We went for a swim earlier and declared the beach wonderful, with even the ocassional body-surfable wave.

    We’re sitting out on the deck now listening to the gentle waves and the crickets and the other wildlife. The yard is filled with crab grass and crab holes but so far we’ve only seen an iguana and some big toads, which Colin is chasing around right now trying to get pictures of. We’re going to meet the house manager tomorrow and get the low down on the area. Then for a long walk on our nearly deserted, beautiful soft sanded beach. What a life!