Voyager Level Design

I’d like to share a bit of my process of creating levels for Voyager.

Most of the time, a level starts as an idea for a technique I’d like the player to learn, or a cool experience I want them to have. For instance, a gravitational slingshot is a core mechanic in the game, but at some point I’d like players to figure out how to chain multiple slingshots together to get past several obstacles. I also like the idea of weaving between planets – sort of a space slalom. So, there should be a level between learning how to do a slingshot maneuver and being expected to string them together to win where the chaining concept is introduced and presented in a fun way.

The “Gas Giants” level does just that. It features an arrangement of planets that suggests (but does not require) a winding, between-the-gates sort of trajectory. Jupiter blocks a direct route to the target Uranus, and Saturn gets in the way of a simple slingshot around Jupiter on the right-hand side. Once I’ve got the general arrangement of planets figured out, it’s time to run the Path Predictor.

Path Predictor is one of the more important tools in my design arsenal. It simulates the trajectory for a launch, given an angle and power level (and delay, for levels with a timing element). After running it, I end up with a visualization like this.

Though it’s usually more helpful to filter out angles that result in crashes and misses and just focus on successful paths.

This view makes it clear that there are a few viable slalom trajectories, but it’s also quite easy to just bypass that experience and slingshot straight to the target. I need another way to reinforce the weaving path as something worth attempting. That’s where star placements come in.

In this level, there are a few points where the slalom trajectories intersect, providing natural, ideal locations for stars. This ensures there are multiple viable solutions. And of course, players will experiment with different power levels (or, with the “expert” controls enabled, fractional angles) that could surprise even me.

Of course, at this point the level is still far from done. It needs to be playtested for fun and difficulty before making the cut in the finished product!

Announcing Voyager: Grand Tour

It’s about time I start talking about what I’ve been working on these last few months.

This!

Voyager: Grand Tour is more than a sequel or remake. It’s a re-imagining.

Dramatically improved graphics (before/after):

VoyagerVoyager: Grand Tour

New multiple-target levels:

grandtour_multitarget_croccograndtour_multitarget_titan

Stunning first-person replays of each successful flyby:

grandtour_replay2grandtour_replay

More planets, more missions, more everything!

Completely rewritten from the ground up using the powerful, cross-platform Unity game engine, I hope to eventually target many devices and markets. But the inaugural release will be next month on the App Store, for iPhone, iPad, and iPod Touch!

Stay tuned to Facebook, Twitter, or right here for updates.

Dark Side of the Jam

Last weekend, I organized and participated in Seattle’s satellite “Dark Side of the Jam,” a space-themed game jam which the Academy of Interactive Entertainment graciously agreed to host. Our mission was to build a game (using at least one NASA asset) in just 48 hours.

Our satellite jam started at 6pm on Friday, with participants filing in until around 7:30. We kicked off the event with some inspirational words by Dan Dixon, the creator of Universe Sandbox, and then started brainstorming ideas. As more people arrived, we decided to split into two teams, but to let everyone collaborate between the two projects (especially our artists and sound designer!).

We tossed around a number of exciting and ambitious ideas, from a game about discovering exoplanets with real-world problem solving elements (along the lines of Foldit) to one about engineering your own rockets (think Kerbal Space Program).

Two projects gathered the most attention and excitement, though. One was a game about driving the Lunar Rover around to pick up your astronaut bros. The other, and the one I worked on, is called Seven Minutes to Heaven. The game is about the time delay involved in communicating with a rover on Mars. While that delay can range from a couple of minutes to nearly half an hour, the name is an allusion to Curiosity’s Seven Minutes of Terror.

The game is played by selecting commands from the control panel’s arrows to drive the rover, a camera to get a better view of the surrounding area, and the drill to take a sample from the surface. The objective is to search for elements of interest (Hydrogen, Helium, Carbon, and Oxygen) within the time limit. The amount of each element in a square is communicated through an emission spectrum. The player can cross-reference this against known spectra to make decisions about where the most productive areas to drill are. It’s a little like Minesweeper, if you had to wait a while for your moves to take effect, the numbers were in code, and you only had until the sun goes down to finish playing. Also it’s on Mars.

Because we only had 48 hours to build the entire game, some features did not make it into the finished product before the end of the jam. With more time, we would have given players specific objectives (for example, find at least 6 units of Carbon and 2 of Helium) and better explained the controls and emission spectra in-game. We also didn’t get in all the art and sound effects produced by our teammates, or have much time for testing and play balance.

Even so, I’m really proud of how complete and polished the game ended up. More than that, I had a great time getting to know and work with a bunch of awesome people.

Ad-Supported

Voyager, like all my games, is free to play and was designed to be supported by in-game advertisements. So far, players have responded very positively to the game. Unfortunately, my bottom line has not.

So far this month, about 300k ad impressions have been served to Voyager users. This chart breaks down those percentages by region:

From this perspective, it appears the game has been most successful in Asia and Europe (and my App Hub download numbers, Flurry analytics, and the huge number of positive reviews from those regions corroborate this). This next chart tells a different story:

In terms of revenue, many of the regions where the game is the most popular barely chart. In fact, almost 80% of the revenue earned in that period comes from just 12% of the total impressions.

Why is this happening? The answer is eCPM. eCPM means “effective cost per thousand impressions,” and it’s what determines how much money a developer makes from ads. An eCPM of 1 means that 1000 impressions earns the developer $1. The value can vary wildly, from a few cents to several dollars. Unfortunately, because I’m using Microsoft’s ad control, “a few cents” is often overly generous.

This complex chart demonstrates the relationship between impressions, eCPM, and revenue. The further to the right a country is, the more impressions, while height equals higher eCPM. Finally, dot size correlates to revenue. Notice how most countries have an eCPM at or near 0, including many with highest number of players.

I’m thrilled with the amount of support and positive feedback I’ve been getting from abroad. Ultimately though, what this boils down to for me is that unless my game does better in the US, UK and Canada (or unless Microsoft gets its act together with worldwide advertising), it’s never going to make money (on Windows Phone, anyway). I’m still surprised it hasn’t done better in the US, but I can always hope that it will someday get featured and attract the audience it needs to thrive.

Also, Rare Earth

By the way, I haven’t forgotten about Rare Earth! A new update (v0.7) has been submitted to Microsoft for certification. What’s in store?

  • Ability to customize any planet with a moon or rings
  • In-game ability to start a new solar system after your star dies*
  • New abilities for spacefaring life
  • Bug fixes and stability improvements

*The ability to start a new system was around in v0.6 – after a star died, a “new game+” option opened up in the About menu – unfortunately, it seems like it was way too hard to find! This update makes reincarnating a star an in-game event, and allows players to carry over life from one star to the next.

Out Now: Voyager

Voyager is now available to download on the Windows Phone Marketplace!

Get it today (it’s absolutely free), and be among the first to play what some are calling “The smartest game about flinging things at things since Angry Birds: The College Years. Oh, that’s not a thing? Yeah, this is the smartest one, then.”

Announcing Voyager

35 years ago this week, Voyager 1 was launched by NASA to explore the outer Solar System. In honor of one of the most successful scientific expeditions of all time, I am proud to announce Voyager, the next game from Rumor Games.

As an engineer in charge of the Voyager space probe, your job is to carefully aim your launch to avoid obstacles, gravitationally slingshot around planets, and get close enough to your target to scan it – without crashing into it!

  • 20+ challenging levels spread across a Grand Tour of the Solar System
  • Take and share pictures of the planets you’ve explored
  • Online scoreboards powered by Scoreloop

Coming soon for Windows Phone.

The Worse Bug

Rare Earth is not profitable. Let’s get that out of the way up-front. The game was released as an experiment to see whether the mobile games platform would be receptive to an unfinished (but frequently-updated) game concept. In many ways, the experiment was a failure. Users were extremely divided about playing an unfinished product (almost all the reviews were either 5 stars or 1 star), and there were nowhere near enough users to generate enough impressions to make any money off the game. Or so I thought.

Here’s a graph of my impressions for June and much of July. Rare Earth is just one of the pack among the 3 ad units from BuildDown:

However, when I was finalizing the latest Rare Earth release (v0.6), I noticed an oversight on my part.  had programmed logic into my ad control wrapper to detect errors, wait a bit, and try to recreate the ad control, in an attempt to recover from any crashing issues in Microsoft’s ad control. Unfortunately, I had forgotten a critical component – to actually call my update logic! Ultimately, any ad crash caused the ad control to stop functioning until the game was started up anew. I had no idea I was missing out on potential impressions until I fixed the bug. Here’s the same chart, with another two weeks added in:

Well that’s interesting. Flurry tells me there hasn’t been any significant uptick in my userbase or number of sessions. Isolating for the variable, that means I have a 5-20x upgrade in my number of impressions just by compensating for errors in Microsoft’s ad control! Extrapolating backward, Rare Earth could have been sitting on hundreds of thousands more impressions over the two months it’s been live.

I’m sure there’s a lesson in there somewhere.