Monthly Archives: January 2014

Iris: Persistence is Key

What started out as a simple sketch a few weeks ago has become our full-time efforts at Three Pixel Heart, and will ultimately lead to our first paid release on the app stores. Currently we’re calling it Iris, and it’s an ambient audiovisual puzzle game based on rhythm, spatial reasoning, and (attempts to) feature a wabi-sabi aesthetic.  Here are a couple screenshots, busy and sparse

Screen Shot 2014-01-28 at 5.48.59 PM Screen Shot 2014-01-28 at 2.54.57 PM


The basic mechanic of the game is the player sends out ripples from the enso by tapping, and attempts to fill all squares and triangles with their own color. Additional objects such as color changing circles (featured in the second picture) and amplifiers, as well as different types of movement, add to the complexity of the puzzles. But here I want to talk less about the game itself and more about the creation of it.

Takeaway lessons so far:

  • PERSISTENCE IS KEY. Making a game has ups and downs. Most notably the ups when initially prototyping and realizing something can be fun, downs when getting blocked on technical details or how to expand content (take a break, go for a walk, let your mind off it), and further ups when after making changes you find out they’re improvements by how players enjoy it much more in playtesting. Keep your mental life varied (have other projects, think about different games, keep playing other people’s games) while also putting in substantial work on the current game, and it should pay off.
  • When something confuses players and isn’t meant to, try to change it visually/through audio before adding help text (in Iris that meant changing the goals, which were originally circles, to squares and triangles–it helped a ton! In retrospect making everything circles was idiotic)
  • People like easy puzzles when they are aesthetically rewarding. I have a habit of cutting to the difficult things too quickly and experienced a backlash in the playtesting by watching players get confused. After expanding the difficulty curve out, and even throwing in some extra levels which I thought were trivial and boring, we saw the players enjoy the game more and not get lost when the harder levels came about because they had some time to adjust their minds to the mechanics.
  • Level design is much easier through a physical medium that you can move around to get different senses of what’s possible. Trying to see it all in your head all the time is an extra constraint that should be avoided when attempting to build better levels.
  • Masking objects in corona sdk is terrible (this is a technical point but it’s caused such duress that I feel like including it for anyone who ever uses corona and considers masks–be warned)
  • Listen to playtesters. Keep listening to them even when they tell you things you don’t like.

Thinking of something I didn’t cover? Let me know what I missed!

Games of the Day

I found these two on the Indie Game Enthusiast iOS spotlight section, and how they deserve to be there! If there were a theme here I’d say… games strongly featuring circles! Or, you know, pure mechanics games with simple geometry for visuals, well designed sounds, and properly implemented touch controls. I played them both and they’re great!

Here’s a trailer for Blek, a delightful puzzle game with a unique mechanic

And here’s one for Duet

Game Twik Tuesday

The category for today is: Limited Perception! That means the information you get from the game are going to be more limited than you’d experience in real life. Imagine being an ant, imagine being blind. We have a couple games ideas for you.

  • Zombie Ant (or Ophiocordyceps unilateralis): you control an ant moving around, visualizing the trails of your comrades and enemies as a wavy colorscape immediately in front of you. Avoiding predators and picking up sugar to fuel your journey, you pilot your ant ever higher into the canopy before releasing your spores to infect the next host.
  • Pedestrian Yield: you open the game to hear cars zooming by on either side. An image comes up on the black screen demonstrating that you hold down to move forward. You wait until it sounds clear. You start walking, footsteps fall. You keep walking. The sound of a car comes faster from one side. Is it in front of you, or in your lane? Screeching tires and a thud ring in your ears before the game pauses and resets. Get to the other side and you will learn about how you got here, why you can’t see, and why, of all things, you must cross this busy road to find out more.
  • The Deep: you are deep underwater. Everything is dark, foggy patches of unfocused shades of gray. Water noises surround you with the occasional calls of creatures you can’t name. After a while you will start gasping for air, which you’ll find along your travels in tiny bright patches, but never enough for you to feel comfortable. Avoiding the more dangerous shadows lurking on your sides you must press onward for more oxygen, wondering always when it will end. It won’t.

That’s all for today!

Game twik Friday

So I’ve got three twiks for you all today that hopefully will see at least a prototype level development sometime in the near future. The theme of the day is: Color! I love colors. The twiks are

  • Sheepdog–use your fingers to guide sheep into the pens of their color while chasing off wolves!
  • Lighthouse–position lighthouses with different colors to mix their lights and fill up colored beacons
  • ColorLyne–basically just Lyne but with colored paths and color changing vertices (it would be able to embed both Lyne and Flow Free, that popular and routine iOS game)

I’m only going to talk about Sheepdog because I think it’s the most interesting and I’ll probably be prototyping it soon (so consider this a pre-proto warning for the beta testers out there reading this). The neat thing about Sheepdog is the whole concept is built around flocking, algorithms for which have existed for a while (e.g. BOIDS). There are a few core mechanics/parameters that I think could make for a very interesting game. They are

  • terrain and placement of units
  • species/types of sheep and their flocking parameters
  • wolves and their speed/intelligence/etc. parameters
  • number and speed of sheepdogs

Difficulty increases with topologically complex terrain, slow/few dogs, fast/intelligent wolves, and hard to understand or mixed flocking dynamics, and conversely the game is easy with simple terrain, single type of sheep with predictable flocking, slow dumb wolves, and fast/numerous sheep. The interesting variable to me is the flocking behavior which is highly parametrizable, and it would be possible to make it fairly complex or even genetic in response to the player’s play style (given some type of level set challenge).

This gives rise to another game entirely, which is something of a get all sheep in the pen as fast as possible, with the sheep having strategies that are genetically selected so as to make it as difficult for the player as possible. Completely custom levels that no one else has likely seen. Seems like a neat idea. Or you could have automated sheepdogs that learn your strategy via a set of parameters in your behavior (i.e. you are training them) and then you’re scored by how well they perform.

What kinds of AI games would you like to play?

Games to play #2

So today I discovered and I’m just so pleased with the density of great looking things on it! Here are a few games for the day:

  • Particulars, this looks like a game that wouldn’t be possible if Osmos hadn’t come out some years ago, and I’m excited to see what it has to offer. Steam only at the moment.
  • Lyne, it’s got a cohesive and well-executed aesthetic and builds off of traditional connection-style puzzles with some more complications. Looks delightful! (And it’s on iOS, and I’m about to start playing.)
  • Snake blocks, for those of you who want to take connection puzzles up a dimension into 3D

And an honorable mention to the free Tiny World: The Musical: The Game for being a well executed cute concept piece and to 0rbitalis (it needs a trailer dammit!), mostly for the fact it’s priced at 3.14.

That’s all for now! Also, if you’ve played any of the above and want to share your experience, please, help yourself to the comment box below 🙂


What makes puzzle games fun? I want to know! So I’m going to try by

  • proposing and exploring a definition of difficulty (this post)
  • examining what makes for novelty, and how to modulate novelty over time (next post)
  • combining the two above to propose what makes pure-mechanics games fun for various types of people (in the future!)

First, some setting. My strongest genre currently is a class of games called referred to as ‘pure mechanics’ by some. This mostly means that there’s no real theme or narrative, and that the game is fun purely because of fulfilling goals inside of the mechanics. Themed and narrative games can in fact get away with having close to no mechanics, while still being a good, fun game (e.g. The Stanley Parable). However, in pure mechanics land while you needn’t make a theme or write a narrative, you have to engage the player’s interest by the mechanics alone–how they are unveiled, the ways they interact, and to what extent they are explored. This results in an experience for the player with a difficulty over time function and novelty over time, and depending on these functions different people will react differently toward the game. In this post I’ll create some language for talking about difficulty, and in a subsequent post I’ll discuss novelty, and then finally merge these two to show what makes a pure mechanics game fun for different types of people.

Difficulty, a proxy definition

Difficulty can be hard to quantify rigorously, but I’ll use the following definition, which leaves aside all physical matters as short-term memory, reflexes, etc., as proxy. If you haven’t heard of it before, the notion of a state space might be useful. Suppose that there are N possible states you can get to from the current state in the game, and there are W winning states. The difficulty of the game is inversely proportional to W/N. Now, this isn’t quite right because, for example, consider a game where you have to answer “what is 2+2”, and the input can be a number. Well this game would seem the most difficult of them all because only one out of infinitely many states are winning! This leads us to another aspect of difficulty: the ability of the player to prune the search tree, usually by means of what are called heuristics. So now supposing that the player can prune P of the states, the difficulty becomes proportional to W/(N-P). This definition can be further refined based on the complexity or depth required to search down to winning states (compared to not-winning states), but for now let’s think of W/(N-P) as a decent proxy.

Now that we have a working definition of difficulty, we can see how to make games easier or harder, and there are a few ways for each, by either increasing or decreasing any of the three variables.

How To Calibrate Difficulty

  • Increase W (easier): make the winning condition more relaxed. In a star-based points game, this could mean making the ‘win’ on a level count even at a single star (instead of, suppose, 3). One should watch out, though, that in increasing the state space one doesn’t increase N too much more, or you’ll be sitting at neutral.
  • Decrease W (harder): if things are too lax, just set the bar a bit higher to make for a harder challenge. Ask more given the same environment. For a good example of where W is set well, see one of my old favorites Auditorium.
  • Increase N (harder): the simplest way to do this is by adding pieces, mechanics, or upping the dimension of the game in some fashion or another. For something which gets insanely hard via dimensionality increase, check out English Country Tune.
  • Decrease N (easier): limit the space the player is working in without removing too many winning states. Add additional constraints so that the number of possible paths decreases and the level is easier to reason through. When testing a game where players keep getting confused at a point, simplify. Allow them to do fewer things. Some of the best tutorials I’ve seen make use of tiny state spaces (sandboxes) so that the player can learn the mechanics of the game without complex interaction.

Now for the most interesting variable: P. Now, how much a player can prune is dependent, naturally, on the player’s capability. The more interesting thing, however, is that their ability to prune and strategies for pruning are adaptive given games the player has seen in the past. Thus if you’re building off of existing mechanics, e.g. physics, where puzzles are related to the real world, or existing controls, e.g. the arrow keys, games become much easier to pick up. (If, however, you give them a text terminal and they input letters one at a time to navigate a maze by taking the last two bits of that character in binary to be a cardinal direction, it could be far more difficult.) So what makes pruning so interesting is that not only is it dependent on players, but also on existing designs. Through pruning it is possible to make an easy game very hard and vice versa, provided you can find a translation of the state space into a framing that is more conducive for human thought.

Back to the two examples mentioned earlier, Auditorium and English Country Tune, we have two examples of puzzles where the state space can be very large, and the win set sufficiently small, but the biggest difference is that Auditorium uses physics that we’re familiar with. Pushing things around, attracting, speeding up, deflecting, these are all natural movements. In contrast, ECT changes gravity depending on your perspective, has objects you push at a distance, and an entire slew of other mechanics which do not occur ‘naturally’, so to speak, within our Earth-bound physics. This is what makes Auditorium far easier to prune, and hence an easier game compared to the much more confusing ECT. Of course, ECT isn’t the most difficult thing to reason about, it just takes a bit of learning and practice, and we might notice that learnability of mechanics modulates the pruning function, and thus the rate at which a player’s P may increase–something which will affect the difficulty curve over time.

But really we just want two more bullet points, right?

  • Increase P (easier)
    • Use mechanics that are familiar (e.g. real world physics)
    • Teach mechanics through sequences of levels that show them in limited environments (i.e. keep N small for a while to train the pruning strategies–it is easier for the player to learn when they can remember everything they did)
    • Give hints or show demonstrations (gamer see, gamer do)
  • Decrease P (harder):
    • Use mechanics that are not familiar or hard to disentangle (e.g. context-specific rules are an easy way of making anything insanely hard)
    • Include false-positives on how a level might be solved. Basically, emulate various heuristics and make them lead to not win states.
    • Make mechanics interact in complicated ways. (For those of you who have played ECT, think the Larva+Whale levels.) Notice that this doesn’t have to make N blow up, it just makes the space more topologically confusing.

That’s all for now. Next up is a similar account of what makes for novelty, and then after that we’ll get to talking about novelty and difficulty over time, and how that makes for fun! Bonus points: For an alternate account of difficulty, check out Edmund’s account at Team Meat (note that % chance you’ll die is very similar to (N-W)/(N-P), though I didn’t add penalty here as I was thinking about puzzlers where you can step back/restart at any point–an idealized situation for sure).

Games to Play #1

First off: these are all free!

The best part about following tons of indie game devs is that they post games. Lots of them. Here are some from the past couple days that I’ve enjoyed, mostly sokoban-style puzzlers. They’re all online and free to play, but be warned they can get pretty tricky very quickly.

  • Impasse: a puzzler that takes place on a flattened cylinder
  • Sokobond: a sokoban-style flat molecule connecting game
  • Palette: another sokoban-type game, featuring color physics
  • Chesskoban: yet another sokoban, but with chess pieces


Iris: day 3

So a few days ago I started development on a new game called Iris. It takes some ideas from Circadia (see last post for a video) and expands the physics. Things we’re learning:

  • refactoring code is awesome (I’ve refactored the same bits several times now and with each pass it becomes easier to implement new functionality)
  • closures are amazing for making programmable objects (e.g. say you have a class that you want to move around, but you wan the movement to be generalizable; pass in a closure that keeps track of the movement and updates the object every time it’s called, and just bind that to the update() in the object. Done! Or even more generally, make a function that makes these closures for some parametrization and being DRY)
  • level design via text is a pain (seriously, we’d be so much faster if we just made a level designer… time to get on that)
  • people can enjoy playing something they don’t even understand! The first couple builds didn’t have any tutorial, and watching people play we saw them delighted by the audio/visual and aesthetic aspects of the game, without even being sure of what they were trying to do.
  • it’s pretty easy to make VERY hard puzzles with fairly few mechanics–the bigger difficulty is in crafting a journey

Screenshots are below, and per usual if you want to get access to pre-release builds join us on Testflight, we love to share!

2014-01-14 Screen Shot 2014-01-14 at 3.10.29 PM

Recap and hello!

It’s been a while since the last post here, but oh how we’ve been busy at Three Pixel Heart. Things I’ll touch on in order here are 1) progress on Block Party, 2) status of our live apps, and 3) new games for the new year.

1. Block Party
We’ve continued production on Block Party, researching manufacturing methods such as screen printing and stamping, but we’ve been pretty disappointed about something: manufacturing domestically (in the USA) is really expensive. The lowest bid we’ve gotten so far is $18 a set, which is basically what we’ve been selling them for. On the other hand, we have a bid from China at $3.80 a set–far more realistic aside from the fact that we’d need to order at least 8,000 sets, and we don’t have that kind of startup capital. Kickstarter comes to mind, but we’re going to look into manufacturing them ourselves a bit more first because we’d love to make it locally. Our current trajectory there is to make some stamps via laser cutter so that we can do one side of an entire set per stamp, 6 stamps total. This would lead to a potentially very fast production process, though the quality and price of inks (and the images they produce) is something we have yet to determine.

2. Live Apps
It’s been over a month now since we launched Unique and Party Rush to the app store, and we’ve been, while not overwhelmed, at least pleasantly surprised with the response to Unique. Party Rush is a much harder game (most people who play it have physical Block Party sets) and so hasn’t gotten a very wide audience. With a couple hundred downloads of Unique though we’ve become convinced that it’s a concept worth pursuing further, and the uniform feedback across the board is that it’s just too damn hard. Who has the patience to play over and over to the point of being able to remember 49 snowflakes (other than yours truly, who felt compelled just because he felt somebody had to beat it)? So we’re scaling down, adding a level system, downloadable content, and all new images to produce Unique: Things! Be on the lookout for it in the next month. We hope it will be a memory puzzler which will keep you engaged for hours on end, learning how to remember and classify whole sets of things you never thought you would. Of course, we’ll start with something more doable, so be prepared to play with famous portrait paintings!

3. New Games
Here is where I am REALLY EXCITED! Did you get that? I mean REALLY excited. But why all the excitement, George? It’s just more games. You’ve done some of those, right? Where’s the novelty?
Let me tell YOU where the novelty is. I’ve recently realized that doing things at least once (in a developer context, but you could generalize) makes the set of things I can do expand greatly. In the past few weeks we’ve picked up novelty bonuses for

  • multiplayer on a single device (Finger Disco)
  • unlocking achievements via exploration (Colorfun)
  • google analytics integration (PushButtonGetHappiness)
  • image masking in Corona (Lotus)
  • level system (Unique: Things)
  • one-battery prototype (Iris)

(Facebook integration is also on our list.) If you’re reading this when it’s published, most of those are probably meaningless names. However, they are all new games (except PB;GH, which is more of an interactive art project) which we currently have in development. A few of them are mockups, proof of concept pieces, but they hold the seeds for things to grow. Finger Disco is a two-player game best played on a tablet where players go head to head to dance and contort their fingers. Colorfun is an adventure exploration by way of a synesthetic canvas. PB;GH is linked. Lotus is a sketch of a music playing game. Unique: Things was discussed above. Finally, Iris is a rhythm puzzler with themes similar to the ones in Circadia (video below) but without the really annoying finicky bits, plus COLOR PHYSICS! I do love colors. If you’re interested in betas and have an iOS device, feel free to sign up with us on TestFlight

In the meantime, you can enjoy this trailer brought to you by IGN.