Progress Report, and Miegakure Videos viewed over 1.5 million times.

Hi!

Miegakure is coming along great. All the puzzles have been done for almost a year now. I have polished many parts of the game, in areas such as graphics and sound, but a few more remain.

As an example of polish, I recently improved the lighting, which was difficult because the game is so dynamic it is not possible to precompute in advance where the light bounces, as most games do. I came up with with a novel way to do it and looks amazing and I can't wait to show it soon.

The largest task for me personally now is to go through the remaining levels and place objects and generally make them look as pretty as the levels we have shown so far. I get to make more cool 4D objects too, which I also can't wait to show. I have a few videos planned on them and other things.

By the way, I recently noticed the Miegakure videos have been viewed over a million and a half times! This makes me happy because even though the game is not out yet it has already done a lot of good for the world, with hundreds of people saying the above video is "the best explanation of 4D they have ever seen." Not many games have trailers that stand on their own as useful things. It's also good because a lot of what I say in the videos cannot be said via the game, because games should mostly teach non-verbally, so they are complementary.

To the people who have been waiting for a long time, thank you for your patience. I am making sure the game that comes out will be accessible and beautiful so that more people can experience how amazing the concept of 4D is.

I will do a bunch of blog posts in the next few weeks, talking about the lighting, the world building we have been doing, etc...

New Video: A Grove scattered with 4D Spherinders

We are working on making every level in the game beautiful right now! Here is quick nice-looking video to make you happy!

Old tales say that deep within the Ancient's Grove one can sometimes find scattered stone pillars, remnants of the old gods and those who worshiped them. Some people even claim they have seen stones levitate above the ground, held in place by a strange power.

But as you may start to know by now, it is not quite as it seems.

First, if you haven't seen the game yet, this video is a good introduction:

This is way to much detail and nothing explained here is required to play the game, but I still think it's really cool.

Spherinder Columns

The columns are in fact spherinders, which are one way to generalize the concept of a cylinder to four dimensions.

Extruded Circle

A cylinder can be thought of as a circle that has been extruded upwards (perpendicular to the plane of the circle).

Extruded Sphere

In a similar way, a spherinder is a sphere that has been extruded in the fourth dimension (perpendicular to all 3 directions of the sphere).

Depending on how you slice a cylinder with a plane you might get a circle, an ellipse (if slicing at an angle), or a rectangle (if slicing straight down the main axis). (One may also get a truncated ellipse if the slice goes through the top end of the cylinder)

Cylinder Slices

Rotating a cylinder while stuck in a 2D plane

Similarly, if you slice a spherinder with a 3D plane you might get a sphere, an ellipsoid (if slicing at an angle), or a cylinder (if slicing straight down the main axis). (One may also get a truncated ellipsoid if the slice goes through the top end of the spherinder)

Rotating 3D Cross Section of a 4D Spherinder (source)

Many of the spherindrical pillars found in this grove have tilted over the ages, and so one may look at many different slices of them. The ones still standing straight will look like cylinders, but the tilted ones may look like floating ellipsoids. Look for the one that has completely fallen to the ground and hence sometimes appears as a sphere.

Concentric Spheres Carved into the Ground

Concentric Spheres Carved into the Ground

While dirt and moss have mostly reclaimed the area, one can still see that around each spherinder the stone surface was carved in a series of concentric spheres. Yes, an entire 3D sphere can lay flat on the ground in 4D!

In a 3D game the ground is 2D, and so in a 4D game the ground is 3D. That means that if you are standing on the ground there are six possible directions you may go: forward/backward, left/right, and ana/kata. However, in the game, because you are only seeing a 3D slice of the 4D world, you only see a 2D slice of the 3D ground at any given time (only two pairs of directions out of three).

Slicing ConcentricS pheres

And therefore the concentric spheres look like concentric circles to a regular 3D person. Depending on which slice a person sees, the circles might look larger or smaller (if one takes a slice near the side of the sphere the circles will be smaller than if the slice is taken near the middle of the sphere).

Because the spherinder lies in the center of the sphere pattern, during the transition (when the character changes which way they are facing i.e. the orientation of their slice), one can see each spherical pattern “anticipate” or “follow” the spherinder that stands at its center: the circles grow larger before the spherinder is about to become visible, and after the spherider disappears the circles shrink. I think this effect looks so freaking great!

4D Grass

4D grass

Other curious things one may find in the Ancient's Grove are blades of grass that appear to float in mid-air. This is because the point at which they grow out of the ground is out of sight in the fourth dimension. (The same effect makes certain slices of spherinders look like floating ellipsoids) Some grass bunches are more prone to this effect, based on which direction their blades tend to grow.

Seeing Inside Trees

Seeing Inside Birch Trees

While the character is facing the fourth dimension, they may also examine the inside of the Birch trees. This is just like how for a 2D being a house only needs four walls but us 3D beings can see inside the house by just looking at it from the third dimension.

2D Temple

I love how art and mathematics blend in this game!

IndieFund is backing Miegakure

This is helping us finish up the game! Here's the announcement.

A look at the Technology behind the 4D Game Miegakure

Development is going well... so that means it is time for another video!

This time about the crazy tech we built for this game. Tetrahedral Meshes instead of Triangle Meshes! Also 4D Crystals.

Talk: Exploring and Presenting a Game's Consequence-Space

I gave a talk at the PRACTICE game design conference at the NYU Game Center a couple months ago:



Slides are here

I had meant to update the talk I gave at Indiecade in 2011, and talk more in depth about how I used these ideas for Miegakure, but in the end because of the half hour format I do not cover the first half (designing mechanics to generate an interesting possibility space) and only cover the second half (how to explore the space the mechanics create). I also talk about a bunch of game design problems that are especially interesting in the case of Miegakure. I also cut the intro a bit, but posted it Here.

How do you even develop a 4D game?

A question I get a lot is: How do you even develop this game? This is related to the question: how can you think in 4D?

Personally when I approach a problem in 4D the key is to find which dimension is the least important and mostly ignore it, so I can think in 3D instead. For example to understand something about the main mechanics, I might think about the 2D/3D levels which I have shown in the trailer. In these levels, the up axis is obviously important, and the rotation is happening in the other two (horizontal) axes, switching from one to the other. In the 4D there is an additional axis, but it is not affected by the rotation of the character, so it can often be ignored.

Later, when I need to write down the 4D math for the model I was thinking about in 3D, it is often the exact same math as in the 3D case. This is because in linear (and geometric) algebra we strive to work in a “coordinate-free” manner, which means we don't write down the x,y,z, and w components of a position but rather work with all the coordinates at the same time, without needing to write them down. Any operation we do works on all the components, one by one, implicitly. For example adding two 2D vectors means adding their x and y components, and adding two 3D vectors means also adding their z components. Having an additional component does not fundamentally change anything about the operation. We are working in a way that does not depend on the number of dimensions. This also works for rotations, which are fundamentally two dimensional in the sense that they rotate one vector into another, regardless of the number of dimensions. I sometimes use 4D Rotors, which have the same interface as Quaternions but for 4D.

That's it! I got better at finding which dimensions to ignore over time.

This approach kind of breaks down a little bit when thinking of objects that change in all dimensions at once (such as duocylinders for example), but the general idea is the same: you can work with math without needing to see all of what it represents at once. Imagining different parts of it one at a time is often enough. The math, and the computer that works with it to display it, can do the rest.

By the way, someone asked a similar question about Intuitive crutches for higher dimensional thinking on mathoverflow and a few outstanding mathematicians even provided answers. I certainly used many of the other things mentioned as well.

Abstraction Design

The Introduction to a talk I gave recently...

Abstractions

Creating an abstraction means to take a phenomenon or concept and reduce it to a simpler version by ignoring certain factors. We can then use an abstraction to predict things about the more complex phenomenon or concept.
For example, we can predict the motions of entire planets just using a few simple equations, despite the fact that planets are extremely complicated, by reducing planets to points with mass.

When building abstraction with the goal of predicting something the goal is to simplify as much as possible, but not too much so that we don't lose the ability to predict what we want to predict. An abstractions that is more detailed (ignores less effects) can potentially predict more about the world, but at the cost of being more complicated.
In some sense that is what we have evolved to do as humans, is to learn to ignore the parts of the chaos of our universe that are not necessary for our survival.

Instantiation

If we take a model/abstraction and look at a particular case, we get a prediction.
If we are doing a thought experiment we can imagine what the future state might be.
Or if we have an equation that models some part of the world we can plug in some numbers into it and it will output predictions of what the state of the object will be in the future, for example.
But it recently got very interesting because computers have made this step much easier to do.

For example to produce images of a 3D scene a computer uses abstractions of how light bounces around in the world before it reaches our eyes to produce the images we see, and computes this 30 or 60 times per second.
In some way, by instancing abstractions computers turn them back into “realities” because they can feel surprising, interactive, etc...

Generalization

There is another thing we can do an abstraction. We can take any abstraction and generalize it without concern for whether it has a physical representation in our universe. You could say this is what pure mathematics is about.
For example, we can add a fourth number to space (x,y,z,w) and see what that would be like.

Any game does this and in a sense games are a natural part of a process to understand the universe, a universe in a more general sense including its generalizations.
For example, Sim City is based on a model (i.e. is an instance of an abstraction) of a city created by Jay Wright Forrester. Adding Godzilla to Sim City is a generalization.

Designing Abstractions

When you look at the world to design an abstraction, ideally if you are a physicists the abstraction might contain surprising results because it might encode more about the world than what you based in on when you designed it.

For example one of the things that made Einstein famous is that his theory of relativity predicted that light’s path would get bent by heavy objects, and in 1919 during a solar eclipse, it was confirmed by looking at starlight as stars passed behind the sun.

When you are making a Video Game, you have to decide what the abstraction level for each component is going to be.

The highest abstraction (i.e. the less detailed) might be “if statements,” for example: if (main character does this) then { react like this } else { react like that }.

For more detail we could use an equation for example to compute the path of a projectile. The equation might become more detailed: we could consider air friction, etc...

An equation might return something that the designer of the equation didn't expect. That's interesting because it means that systems that are at a more detailed level of abstraction are more interesting to explore since the designers themselves more often do not know everything that could happen with them. This effect is what I care about a lot as a designer.

If statements are essentially step functions, which also create discontinuities that are often a source of problems in models. It is possible to combine lots of step functions to make a smooth-looking curve, but it takes a lot more effort.

By the way, I am not saying that all if statements are bad, just that as a designer we chose to focus on a region to explore, and where we explore it is better to use more detailed abstractions. For example, in Miegakure there are characters that walk around using simple state machines. I choose to not explore their internal state very much, as just their change in position is interesting enough with respect to the core of the game.

Almost done with puzzles! Counting Levels of each type/main mechanic

I am nearly done with making puzzles for the game! I might still add a couple puzzles here and there but the bulk of the work is done.

I was curious about how many levels of each type (i.e. main mechanic) there were so I made this (approximate) chart:

The colors indicate main mechanics and the subcolors indicate relative difficulty within a mechanic. (Some levels use more than one mechanic, however...). The surprising thing for me is the large "blue" section, which is one fourth of the game, and which I added almost as an afterthought and didn't anticipate would be so rich, while some other sections didn't end up as relatively interesting as I thought they would be.

I am very happy with the result as every single one of these levels contains a unique idea. Luckily the 4D mechanic is extremely rich so I didn't have to look much higher than the low-hanging fruits.

It seems like I almost doubled the number of puzzles in the game these past seven months? The initial prototype had about 30 puzzles, which defined the basic rules and most of the mechanics. Then I fleshed out the tutorial section and added two main mechanics: two years later I had about twice that amount. Then I mostly stopped making puzzles (even though all the mechanics were set) to focus on improving the graphics (which in turn improved the gameplay), but I added a few puzzles here and there, and I had about 80. This final push increased that to around 140: I added puzzles to all the mechanics to fill-in blind spots and make the difficulty ramps smoother, then made most of the puzzles for two main mechanics and replaced a small mechanic that had been bothering me for a long time with one that is much cooler.

Now I will do a last pass improving various graphical things, while we work on making each of these puzzles and the rest of the game look and sound as good as possible.

Finally, here's a recent screenshot I didn't post on the blog yet:

Miegakure is coming to Steam.

Pillars

Deep within the Ancient's Grove one can find broken-down stone columns, erected to worship old gods.

I could have officially announced this much sooner, but I wanted to wait until the game was further along. Miegakure will release on Steam when it is done. It will be out for Windows/Mac/Linux.

I have been working on finishing up most of the puzzles for the game. There are about 130 right now, and not that many left to do! I am not shooting for a specific number, but rather exploring all the mechanics in the game.

I am also having fun making levels that are less puzzle-y and more about showing off cool 4D things, like the 120-cell level from the trailer, and the above Spherinder grove. My design philosophy has been that each puzzle in the game should be about a cool consequence of what you can do because you can move in 4D but I realized this extends naturally to more visual consequences as well.

Understanding Miegakure, and the 4D as Parallel Universes.

When looking across worlds the windmill appeared strange, its swift blades moving in and out of sight. I could hear their faint echo ripple through the dry desert air.

There's something very mysterious about a fourth spatial dimension. We can't directly see or touch it. We don't know if it exists, and if so in what form. It is difficult imagine, because our sensory system is built for three dimensions. Furthermore, most people have never tried imagining it at all.

And yet Miegakure can be understood and played by any random puzzle-game player, at PAX for example. How come?

[I messed] about with this strange toy until I quickly understood most of the problems that I faced. - Jim Rossignol (Rock Paper Shotgun)

When I did finally get it, I realized how fantastic Miegakure could be. -Tyler Wilde (PC Gamer)

It's amazing how fluid the transitions between dimensions are, and how much sense it makes once you play. -Chloi Rad (IGN)

For me the main reason might be the fact that Miegakure starts by purposefully framing the fourth dimension from a particular point of view, one that we are very familiar with, that of parallel universes.

Think of a stack of paper, each piece of paper is a 2D square, but together they form a 3D cube. Each piece of paper is literally parallel to the other pieces of paper; they don't intersect. The same thing happens in lower dimensions: we can build a 2D square out of parallel (1D) line segments, or a line out of (0D) dots. This pattern works in any number of dimensions: we can think of a 4D cube as being a stack of parallel 3D cubes. They are stacked along the fourth dimension.

So a 3D world can be seen as a stack of 2D spaces, as is shown in the trailer:


Similarly, the fourth dimension can be seen as literally parallel universes (A 4D world can be seen as a stack of 3D spaces). The fourth dimension is a way to mathematically define parallel universes in a rigorous way.

Zelda A Link to the Past overworld

As a culture, we have been thinking about parallel worlds for a long time. Here's a long list of Parallel Universes in Fiction on Wikipedia, going back to Through the Looking-Glass and The Lion, the Witch and the Wardrobe.

Some parallel universes are completely separate from each other, but some are connected in some way. In games there's the Dark World and the Light World from Zelda A Link to the Past and A Link between worlds. There are also parallel worlds that are the same world but at different times, like Back to the Future, and Chrono Trigger.

Miegakure happily leverages all this experience we have thinking about parallel universes, but extends the concept as contained in the concept of 4D space.

I find it a bit similar to skeuomorph interfaces used previously on the iPhone, where for example the calculator looked like an actual old calculator. “it makes it easier for those familiar with the original device to use the digital emulation by making certain affordances stronger.” [Wikipedia] We can recreate something that people are familiar with, but also extend it, freed from the physical limitations.

In Miegakure, especially at the beginning of the game, to help players understand the game we texture the ground differently at intervals, to group parallel worlds together and visually differentiate them. So the first main thing that needs to be figured out when playing Miegakure is how do the literally parallel worlds (that are a natural consequence of a 4D world) manifest themselves in the game. How do you move between them? How do they relate to each other? Which point in one world is closest to this other point in another?

While any interaction with a video-game is very instinctive (especially at first, and since I chose to make the game teach non-verbally), at a basic level these questions do have relatively simple answers that can be expressed in words, in part because of the vocabulary we have built for parallel universes.

2D/3D version of the game

Of course, A 4D world is more than an stack of independent 3D worlds, just like a 3D world is more than an stack of independent 2D worlds.. Something deeper is going on, something that takes longer to grasp. Something that players tend to feel but can't express in words.

For example, while these worlds are parallel, they are not necessarily independent. So while each piece of paper in our stack can contain its own 2D world, independent of all the other worlds, this stack is different from a cube, which is a single continuous object. If we still insist on seeing the 3D object from a multiple-2D-worlds perspective, we can say that the worlds can somehow be connected/attached to each other. They can also rotate together by rotating the whole thing, etc...

Furthermore, a true 3D object might look very complicated and confusing if we only saw it through 2D slices. And so similarly if you look at the shape at the beginning of the 2nd trailer or the end of the first, you can see that it is not made out of layers (parallel worlds). It is a 4D shape called the 120-cell.

My design goal in creating Miegakure is to use the very familiar concept of parallel worlds as a strong foundation for understanding, acknowledging it as a part of the concept of a fourth dimension, but to not limit the game to it. Since the game is properly programmed in 4D if players wish to dig deeper there are plenty of things to discover and try to understand, things that I sometimes don't even fully understand myself.