About 2½ years ago, I started a new job that limited how much I could work on independent projects (let me tell you, not a fan of policies like this). Still, rules are rules and Voyager, along with my other projects, was put on ice. It was in fine shape at the time, so there didn’t seem to be any harm in leaving it in cruise control.
About 2½ months ago, everything had changed. I was my own boss and beginning the Latin American leg of our journey. BuildDown had shipped, other projects still too green to talk about, and I was looking for a quick win. Voyager was an obvious choice. Problems that had trickled in while I was hands-off grew larger and more serious. The solutions were relatively straightforward… they just needed doing. There were also neat ideas I’d been sitting on for years that I regretted not having in there. A little bit of love would go a long way, so my course was clear: I was going to turn around an update to Voyager, and I was going to do it fast.
But what were those problems anyway, and where did they come from?
One of the reasons the digital nomad lifestyle is such a good fit for us is that making games solo is pretty location-agnostic. As long as I have my computer and electricity, I can develop. Throw in a solid internet connection and I’m happy. Once those basic needs are met, the biggest challenges are trying to approximate a good work environment, and maintaining a healthy and productive work-life balance.
Ergonomics are usually non-existent; an ironing board makes a decent makeshift standing desk
Most rentals are aimed at sightseers, so dedicated workspace is vanishingly rare. We’re usually left to fend for ourselves when it comes to managing ergonomics and comfort. Many throw pillows end up as temporary desk chair upholstery, and our first walk through a new apartment includes testing any torso-high surface for standing desk feasibility. Likewise, a minor nuisance like nearby construction or street noise can be torture when trying to concentrate on a challenging task. It definitely pays to give extra attention to complaints about noise levels in apartment reviews.
In addition to all the other fun stuff we’re working on, we decided to do something fun to celebrate the end of the year. Voyager: Grand Tour is getting its biggest update ever, including our first content update since we launched! What’s included?
New lander levels, improved replays, and more
The highlight of this new update is the Touchdown mission pack, which features 20+ new levels, including a new type of mission where the objective is to land a probe on the planet surface.
Reach drop zone, release lander, navigate gently to surface
But it’s not just new missions. Everyone benefits from this update, with new probe-specific special abilities (including new free probes available just for rating the game or trying one of our others), upgrades to replays (now probes are smart enough to look for an interesting shot even on the night side), and tons more fixes and improvements.
Finally, we’ve dropped all paid advertising from the game. If you enjoy what you see, we’d love if you’d purchase our new levels and keep playing, but we’re no longer forcing anyone to pay to get rid of banner ads.
Special thanks to our fans over the years who supported us and offered up their valuable feedback. We always listen, and we are so grateful. Thanks for playing Voyager: Grand Tour!
Voyager: Grand Tour 2.0 is out now on iOS and Android:
Part 3 of a discussion on the development of BuildDown. For design decisions, read Part 1 and Part 2.
Coming from a software engineering background and with some WPF on my resume, I’ve long preferred the MVVM pattern to Unity’s more laissez-faire component approach. Don’t get me wrong, components are great. The trouble comes when trying to organize one’s code with some semblance of separation of concerns, since Unity mixes business and presentation at nearly every level.
There have surely been countless pixels spilled on this paradox. My impression is that for many, the choice seems to boil down to capitulating to bad practice, or completely beating Unity into submission: some combination of physics proxy, startup sequencer, singleton, “MyMonobehaviour” with “MyUpdate” called by “MyUpdateManager,” tool-prescribed workflow e.g. define a model and generate codebehind, etc.
With BuildDown, I aimed squarely for a happy medium. Build an event-driven, model/presentation-distinct architecture where the cost was low and return on investment was high, but leverage Unity where it made sense. For one, it made implementation that much simpler. And realistically, I’m not about to jump ship for another engine anytime soon, so saving myself some minor future refactoring was hardly worth the headache or heartache of fully platform-agnostic intermediary layers and proxies muddying up the codebase.
Today marks the anniversary of the day we departed* from our home country to live abroad for an extended and indeterminate amount of time. Six months ago, we’d lived in six different countries; since then, we rounded out our stay in Romania and added seven more – Ireland, Hungary, Poland, Estonia, Mexico, Peru, and just recently, Argentina. We’ve traveled 63437 kilometers, more than 1½ times around the entire Earth. And now that BuildDown is released, I’m excited to talk soon about some of the other projects I’ve been working on. But today, a look back.
*Actually, the anniversary our “lost day” – we left Chicago December 6 and landed in Chiang Mai December 8. Long flight, long layover and international dateline!
Romanian Architecture, Irish Whiskey, Hungarian Parliament, Polish Headstone, Estonian Park, Mayan Pyramid