A Fresh Breeze: The Witness & Jonathan Blow

I was lucky enough to get a chance to interview Jonathan Blow, creator of the most challenging game of this generation “Braid”, and play a very early version of his next puzzler The Witness; so early that only the core structure will be preserved when it’s finally released.

To the tune of: Nick Cave & The Bad Seeds – The Witness Song

I was lucky enough to get a chance to interview Jonathan Blow, creator of the most challenging game of this generation “Braid”, and play a very early version of his next puzzler The Witness; so early that only the core structure will be preserved when it’s finally released.

The island is small, but it’s complex, hilly and strangely landscaped. Blow later explains to me that he’s hired architects to help him establish a pre-history for the island, re-landscape it and redesign all the buildings to reflect the multiple peoples who have lived there. It’s a lot of hinterland to put into the background of a puzzle game, and is the thing that most reminds me of the obvious referent, Myst.

Over the next half hour, I wander past several other incomprehensible puzzles, escapees from Mirror’s Edge: a tangle of red girders balanced along the shore like children’s toys; orange geometric blocks jutting from the light blue sea; a cylindrical black monolith standing by itself in a glade; a buddha hardly noticeable in the shadow of a tree decal; a hole in a wall that forms a human face if looked at from an exact angle; an ancient oak tree covered in shoots of new life and surrounded by dead twigs. All this is place-holder?

This is a game about working your mind hard, becoming aware of the world around you and coming to appreciate it how it can be integrated with puzzles about sound, shadows, texture, mathematics, location, light and memory, never knowing what’s going to be relevant to the next puzzle. Like Blow’s Braid, it’s also about the expression of both philosophical concepts and of intriguing, rapidly-changing mechanics, though neither of these are forced on you. They produce a coherency to the world, give a cleanness and light to The Witness that’s hard to express; you’ll snark me off the site for being this synaesthetic, but it feels like a mix of the contrasty cinematography of Ibsen’s The Seventh Seal, the architecture of Frank Lloyd Wright and the sudden glare of fresh snow.

(From The Witness: Hands On)

RPS have most of the content, but it’s worth pulling a few quotes out of the lonnnng interview I did with Jonathan:

…if there’s a puzzle that’s too difficult and 70% of players don’t get it… it’s o-kay. I’d rather have it, to be able to go to that depth or height or whatever. Cuz otherwise you’re saying a good video game is one that doesn’t alienate players and is linear and these things, then you’re saying that games can’t do puzzles of a certain complexity. Which I think is a shame.

Games have this very traditional thing where you find a key and the key gets you through a door. It’s like that here, except that the key is just what you understand. Concepts as keys.

The core idea behind the game has something to do with the very difficult question of who we are and why we’re here. What is it about walking around a world, looking at things and noticing things and being conscious of them? It’s a question a lot of people have asked throughout history and for which there are a number of approaches, in the wide sense. You might have a very scientific mindset and say, “all we know about the universe is that which we directly observe”, or you might have a philosopher’s mindset and base your things on argument… I wouldn’t break it into discrete avenues like that; there’s some scientific stuff, philosophical stuff, and spiritual and religious stuff, some just straight up pragmatist… and there’s this idea that this stuff is the space because the character is trying to figure out what way to go, trying to understand these things better.

With this, there’s no action-element, nobody’s going to kill you or a bomb that’s going to blow up in five minutes. It’s about building that space that’s pensive. Having the faith that what’s behind the puzzles is interesting enough that we don’t have to push the player with an emergency or drama or fight to survive. I like that because it’s a mood you don’t get very often, especially in games where you’re walking around a world. Usually if you’re playing a RPG and feel safe, it’s because you already killed everyone in the area. To have that be the game, to have it be a placid place, almost a meditative place, or just a calm, subconscious place.

There’s something about a flow of ideas that starts and goes places and keeps refining and evolving and ends up somewhere, even if it’s not linear, that seems more literary. In something like Do Androids Dream of Electric Sheep, which I haven’t read but I’ve seen the film, you start with a conceit, possibly several, and you ask “what happens in this situation” and every one of those questions has an answer that’s interesting. I don’t feel like we do that kind of thing in games yet; this sort of ended up there accidentally, where there’s this flow of ideas all the time. I kinda like it, now that the game’s designed, but I’m not going to pretend that I planned that.

(From Coming to Blow’s: The Witness Interview)

Read more:

The Witness: Hands On

Coming to Blow’s: The Witness Interview

Interview: Transgaming & CCP on Mac Gaming

To the tune of: Tim Curry – Sweet Transvestite

Another interview that I felt guilty about woefully under-using in a feature. Still about making games for Apple Mac, but this time I was talking with Transgaming, who convert PC games to Mac for large publishers and developers, and with CCP, who’ve used Transgaming to transfer Eve: Online to Mac.

Gavriel State

TRANSGAMING: CTO, GAVRIEL STATE.

(Which is an awesome name.)

What differences in tech are there between a Mac and a PC?
From a hardware perspective, Macs and PCs are very similar these days – they share elements like the CPUs, graphics cards, and memory. The biggest hardware difference is on the desktop side, where most PCs use add-in cards for graphics, while the iMac has the graphics chip built directly into the system. Only Mac Pros have upgradable graphics cards on the Mac side.

The real differences come in the software side, where the operating system and driver layers for the systems are radically different, as are the APIs used by applications.

What needs to be adapted to make games on it?
TransGaming’s Cider technology makes it very easy to bring PC based titles to the Mac, by bridging the API gap that is the most important thing separating the platforms. For example, Cider takes care of the work of adapting a games’s DirectX API usage for graphics and sound to OpenGL and CoreAudio. Beyond that, TransGaming’s work typically focuses on user experience areas – components such as launchers, patchers and the like need to be rewritten using Apple’s Cocoa APIs. In the case of EVE, we worked hard to ensure that components such as the in-game browser were built with Mac-based browser code, so that UI elements inside the browser on the Mac match what they look like outside the game.

Eve graphs make me happy.

Are simultaneous releases feasible?
They definitely are! Mac updates for EVE Online expansions and patches are released simultaneously with updates on the PC. A close working relationship between CCP and TransGaming, built on constant communication, has been paramount in ensuring that updates are prepped in advance for such dual-platform releases.

What disadvantages and advantages are there in developing for the Mac?
One nice advantage to developing for the Mac is that there are relatively few system configurations that must be supported compared to PCs. Most Mac gamers are quick to adopt the latest OS updates, especially compared to what happens with PCs.

On the flip side, because the Mac OS is so tightly integrated with hardware, Mac users only get new updates to video drivers as part of the OS. This is great for users, since they never have to think about whether they have the right driver version, or finding out where to get updates or what particular version of the driver to get. But for developers, it means that sometimes a fix for a game has to await Apple releasing that new OS update. It also means that its much harder to support older versions of the OS which are no longer receiving updates.

There are dangers in closed systems – do you know whether Apple will implement a system similar to the iPhone’s app store?
On the contrary – traditionally, closed systems have been much easier for game developers to deal with, since they tend to further reduce the complexity of having multiple configurations to deal with, whether on the software or hardware side. That said, while Apple may well at some point in the future introduce an app-store type system for the Mac, the Mac is by its nature an open platform where anyone can develop software. That’s something that will never change.

The old barriers to entry for Mac development were the alien processor architecture for PC developers, the limited RAM & the lack of DirectX. Are there any more barriers that still cause problems?
While some of the old barriers such as CPU differences are behind us now, there are still many significant impediments to developers who try to do traditional porting. Doing so can require massive changes to a game’s source code just to get the game to compile on the Mac, especially when complex middleware is being used. In some cases, developers don’t have source code access to their middleware, making a traditional port impossible. And all of that is still ignoring the need to write new graphics and audio paths in the game, which in some cases can require changes to the actual content data.

This is where TransGaming’s Cider technology really shines, since developers can maintain their existing build systems, continue using the same middleware they’ve adopted, and fully use their existing graphics paths. At the same time, areas that touch on user interface can still be customized for the Mac, and other places that need attention require much less effort to deal with than a traditional port. Finally, some of the changes that TransGaming recommends developers undertake to improve the Mac version of a game are just as applicable for improving the Windows version, so the code ends up remaining the same for both platforms.

Spaceships, yesterday.

Are there middleware licensing issues porting to Mac?
While we can’t speak to specifics, it all depends on the middleware provider. Some have platform restrictions in their licenses while others don’t. Aside from middleware components from Microsoft, we have yet to experience a situation where a middleware issue made it impossible to bring a game to the Mac.

Are porting houses still necessary? What’s this Cider app we’ve heard all about?
The kind of porting house that used to be typical of the Mac gaming world is likely to have little place in its future. As the Mac becomes a bigger and bigger percentage of the overall PC market, more and more game developers and publishers are looking at getting into the platform directly, rather than trust their IP and profit margins to third parties. For more and more of these players, Cider is the technology they turn to when they want to go this route. By engaging with TransGaming and licensing Cider, game developers and publishers can bring their games to the Mac far more quickly than was ever possible before, and they can be directly in touch with their customers instead of going through a third party.

What’s more, the same technology behind TransGaming’s Cider is now being deployed on next generation TV set top boxes through a platform we call GameTree.tv. So developers who move to the Mac with TransGaming also have the opportunity to reach an even bigger audience in the future!

Gabe Mahoney

GABE MAHONEY, VP OF ENGINEERING AT CCP

Will CCP continue to develop all its games for the Mac?
As long as we have a strong contingent of players playing on the Mac, then absolutely yes. And there are no signs that are Mac subscriber numbers will do anything but continue to grow. We have more and players using the Mac client as time goes on as OSX gains market share and becomes more of a gaming platform.

Do you find any differences between Mac Gamers and PC Gamers?
To be honest, not so much anymore. While the Mac used to be more of a specialty OS for graphics designers, musicians and other creatives it is now gaining a lot of traction with business and general home users. This means that more people are using Macs as their general purpose computer and are expecting it to run games as well as their PCs. I think this trend will tend to create homogeneity between Mac and PC gamers and wise developers will embrace both platforms equally.

Interview: James Brown, Ancient Workshop

This is an interview I had left over from a feature, and it seems a shame to waste it. It’s with a Mac developer, James Brown, who is the entire staff of Ancient Workshop and it’s about Mac gaming.

To the tune of: Belle and Sebastian – Funny Little Frog

The Frog Prince

Tell me about you.
I worked in the mainstream games industry for 10 years (including stints at EA & Lionhead) but recently went indie. I have a game called Ancient Frog which is currently out for the iPhone and, in expanded form, iPad. Internally I also have versions running on OS X, Windows, Android and Palm Pre, each at a different stage along the release pipeline.

What differences in tech are there between developing for Mac and PC?
I develop simultaneously on Windows and Mac – they’re side by side on my desk like something from a Stevie Wonder song, and so far neither of them has managed to completely oust the other. I prefer OS X as a general development environment (it’s funny how the Mac ended up with a far better command line, given the history of the two platforms), but there’s still nothing to touch the Visual Studio debugger on Windows.

In terms of developing for them, they’re only as different as you allow them to be. Apple wants you to use Objective C, Microsoft wants you to use C# and DirectX, but in neither case is this enforced. If you develop in straight C++ targeting OpenGL, the differences are entirely superficial.

What needs to be adapted to make games on it?
Games are probably the easiest type of application to adapt from PC to Mac. Where you run into difficulty porting an application from one platform to another is in the user interface. If you’re making a traditional utility application, you have to either make something generic (which feels clumsy and wrong on every platform), or you have to bite the bullet and rewrite huge swathes of code for each version.

With a game, though, it’s different. A game pretty much is a user interface – it exists solely as something to be interacted with, and that interaction is something which shouldn’t be shoehorned in to the platform’s general look and feel. Imagine writing a puzzle game that conforms to the Mac OS human interface guidelines; it would just show you the completed puzzle – after all, users shouldn’t have to fiddle around solving problems that the computer can solve for them.

So it’s a given that a game handles all of its UI in its own way. Everything else is, to a certain level of abstraction, identical. You have a C compiler, a file system, a graphics unit that will draw triangles with textures on them really quickly. The higher level stuff that each operating system can do for you doesn’t really come into it.

Are simultaneous releases tricky?
From a technical point of view they needn’t be tricky. The easiest way to handle multi platform development is to make sure you’re building on each platform right from the start. One of the reasons I’m constantly switching back and forth between the Mac and PC is that I catch any non-portable code immediately, while it’s still fresh in my mind and it hasn’t burrowed its way to the heart of the codebase. It’s a natural extension of this development approach that when the game is finished on the Mac it’s finished on the PC. (I also target iPhone, iPad, Android, Palm Pre and so on, but the tighter constraints on performance and resolution mean that they each need a bit of individual care and attention before they’re ready for release.)

Marketing is a bit trickier – a big publisher is able to reap the benefit of one big marketing blitz covering every platform. As a one man indie, I’m chipping away trying to get reviews within my particular niche, so I feel I’m better off releasing one version at a time.

There are dangers in closed systems and Apple love them – do you think Apple will ever implement a system similar to the iPhone’s app store for Mac? Or has Steam already taken that function?
I really can’t see them implementing an app store in the same form as the iPhone / iPad store, where it’s the only way to install applications – Microsoft failed to achieve that with Palladium, and I’d expect any attempt by Apple would suffer the same fate.

An app store in the Steam mold is another matter, and in fact I’m a little surprised they haven’t already done it. (I can’t see Steam itself being any barrier – they already have the iTunes infrastructure in place, and it’s not as if they’d have any difficulty attracting developers.)

The old barriers to entry for Mac development were the alien processor architecture for PC developers, the limited RAM & the lack of DirectX. Are any of them still problematic? Are there any more barriers that I’ve not mentioned?
Pre-OS X memory management was a pain, but endianness and the specifics of the graphics API were never the real difficulty. Or at least, they were only a difficulty when the Mac was an odd niche market that publishers didn’t look at until they’d finished the game and wondered if there was any more cash to be squeezed out of it.

If you develop with multi-platform in mind from the beginning, you just need a slim little abstraction layer and it’s all pretty straightforward. The real change that’s happened here is not so much the hardware as the general resurgence in Apple’s fortunes. It’s no longer a niche; it’s something you develop for as a matter of course.

Are there middleware licensing issues porting to Mac? Do you use any middleware?
The less middleware I use, the happier I am. My current engine has no external dependencies – if a platform has a C compiler and something resembling OpenGL, I can build my games on it.

Are porting houses necessary with these changes?
If you’re a Windows developer making Windows games, then a porting house will save you an awful lot of work. But you’re paying someone else to do what is really your business, and for your next game you have to get them in again to do pretty much exactly the same work.

I’m definitely a believer in controlling that side of things myself. If you have a codebase that builds on two platforms, you’re most of the way to having something that builds on absolutely anything. There are odd little devices popping up all over the place at the moment, and I like being in a position to take advantage of them.

That’s the case for games at any rate. As mentioned before, while a game UI is a game UI, a native application really needs a native UI. If your target platform isn’t also the computer you use every day, you’ll probably make something that feels all wonky and wrong to people who do use it every day. That’s where a porting house can shine.

Do you find any differences between Mac Gamers and PC Gamers?
Of course! Mac Gamers are smarter, wittier and more attractive. FACT.

Why is GSB going to be SO AWESOME on the Mac?
Well, GSB is indeed going to be SO AWESOME, but you’d have to ask Cliffski for the specifics.

The Mac version of Ancient Frog is going to be startlingly prettier than the iPhone version. I’ve re-shot the textures (some of the iPhone originals were captured using a little 5MP compact digital – the new ones are hot off the full-frame sensor of a Canon 5D mk II), so it really shines fullscreen on a hi res Cinema Display.

Thanks and stuff!