Coherence is billed as a network engine that will allow just about anyone to make online multiplayer games. We talk to its creators as version 1.0 launches.
Dino Patti, the Danish producer behind indie classics Limbo and Inside, evidently loves Thatgamecompany’s ethereal masterpiece, Journey. We know this because, unprompted, he brings the game up no fewer than three times when we speak to him via Zoom in late April 2023.
“If I’d made another multiplayer game,” Patti says, referring to his time at developer Playdead, which he left in 2016, “it would have been a multiplayer game. Something like Journey, where you think it’s a single player story, but really it’s multiplayer… it becomes elevated to something else through multiplayer. Nothing like that has been done before or after, and I don’t understand that. The blueprint is there.’”
Patti’s latest project, Coherence (styled as ‘coherence’ with a lower case ‘c’), could allow more indie developers to make their own take on Journey. A platform that will, its website says, “help anyone create a multiplayer game”, Coherence is designed to lower the barrier for entry to what has long been one of the most technically intimidating aspects of the games industry.
According to Patti – who founded Coherence in 2017 with chief technical officer and veteran developer Tadej Gregorcic – a single developer could theoretically “make a multiplayer game in a weekend, deploy it instantly on Twitter, then maybe have 50 players give feedback.”
“Then the next weekend, based on that feedback, he can [make changes],” says Patti. “So there’s this game that’s born out of really quick user testing. It’s never been possible before, and I can see how that could be really strong for ideas and innovation in games.”
“Quick iteration time is key,” nods Gregorcic, speaking to us from Malmo, Sweden. “It’s very important to us that, from within the editor, you can upload your build to the cloud with one click and then you send every Coherence user a URL so they can play it together. So it’s really easy to share it and get feedback.”
To illustrate Coherence’s ease of use, Gregorcic refers us to a YouTube video in which it’s shown how a single-player experience can, within a few minutes, Coherence can allow a developer to add a simple multiplayer mode to an existing game.
“Multiplayer is still something that requires network knowledge, network expertise,” says Patti. “If you have a big vision, you need to build a network stack before you test your ideas. It’s such a big barrier to entry to get into this field and build something great, because you have to plan far ahead… It would be the same as you wanting to take a picture, but having to build a camera first.”
To prove their point, Patti and Gregorcic have taken earlier builds of Coherence to events like Nordic Game Jam and Global Game Jam, just to see what developers could build in a couple of days. (You can see some of the results of these game jams on itch.io.)
“I don’t think any of them had made a multiplayer game before this,” Greogrcic recalls of one recent game jam held in Sweden. “And every one of them, I think, ended up making a multiplayer game over the weekend. None of them thought they could do it, but now they’ve all had this experience… There was a huge variety in what people made. You can go from the classic shoot-’em-ups and more arcadey types of games, and those are a lot of fun. But there was one game where you were an acorn in a field, and there’s this really fun movement mechanic.”
Coherence’s ease of use could, therefore, give rise to all kinds of strange and imaginative multiplayer concepts, though its creators also point out that it could be used to make more conventional things like online shooters, arcade racers, and even MMOs. The engine has the ability to cater for such features as persistent objects and potentially thousands of players interacting at the same time; the only real boundary, says Gregorcic, is “CPU, memory and bandwidth.”
“But we have tools to optimise those things,” he adds, “so you can fine-tune how objects are synchronised in the world – at what frequencies. You can specify zones of interest – we call them live queries – where only inside that zone things get synchronised to you. So you might have thousands of players but only the ones that are around you will get replicated.
“We have levels of detail where you can fine-tune levels of detail for any object in the world. So if I have an object like a rocket then when it’s very close to me, I want it synchronised very precisely, and use a bit more data bandwidth to synchronise the position and other elements. Then as it moves further away I can lower the frequency of updates and the resolution of the data. That ultimately saves a lot of bandwidth, which I’m sure a lot of game developers will appreciate.”
At the time of writing, exactly how Coherence’s pricing system will work hasn’t been publicly announced. The engine’s website says that it’s “free to try”, and users will be given 30,000 ‘credits’ when they get started. These credits will then be spent by developers on “CPU time, on bandwidth, on usage of services,” says Gregorcic. This means that, inevitably, more technically demanding multiplayer games will use up more credits – and by extension the developer’s budget, so a simple co-op adventure will be cheaper to run than a 1,000-player MMO.
As well as a credits system for games hosted by Coherence itself, there’ll also be a free self-hosted model, Gregorcic points out. “That’s our way of showing that we understand how game development actually works,” he says. “Especially for indie games, because when you’re releasing a multiplayer game, sometimes you don’t have a business plan. You don’t know how many users you’re going to have, you’re going to get surprised how much it costs to run these users through a hosting service. So we gave developers the option to start for free with self-hosting, and then they can very easily transition to an online managed model. If you suddenly have 500 or 1,000 players in your world.”
Developers will also have the option to reverse course if they see their player counts decline – so if a once-popular MMO starts to dwindle, but still has a small yet dedicated user base, its studio could then opt to host the game itself, saving costs while also keeping the experience available to those still invested in it. “This is perfectly in line with the life-cycle of some indie developers – and larger developers to be honest,” says Gregorcic.
Coherence isn’t the only tool of its type. Its obvious rivals include Microsoft’s Azure Playfab and Photon, though Gregorcic says that Coherence has been designed to be easier to use than those engines. “Photon’s a good tool,” he says. “A lot of the people on the Coherence team have used whatever’s out there, and part of the reason we’re making Coherence the way we’re making it is because we’ve learned what we want to improve.”
At present, Coherence only supports Unity, but an Unreal Engine-ready version is currently in development, as well as direct support for iOS and Android. Even with a lengthy development cycle of five or so years behind it, Patti and Gregorcic still have plans to improve and expand the engine after version 1.0’s launch. “We have a long roadmap,” he says. “There are a lot of improvements, first of all – how to use persistence, for example. You can have a player host a game locally, and that data, what changes were made, is saved on that player’s computer. Then if the game transitions to a managed hosting model, you can take that data and upload it there and continue playing the same world with hundreds of others, which is quite exciting.”
Coherence has been a “massive undertaking” its creators say, but it’s clearly one buoyed up with a considerable amount of optimism. Although Patti is perhaps best known as the producer of single-player games, he argues that there’s a huge amount of untapped potential in the multiplayer side of the industry. “ I love single-player games, and it lies deep in my heart to both produce and play these types of games, but I just think the next level is playing with others,” says Patti. “The best games I’ve played, the most memorable ones, are the ones where I’ve shared the emotions, shared the stories. So if I had made another game, it would have been a multiplayer game – something like Journey.”
Over the past decade or so, the games industry has been shaken by its core thanks to indie developers pushing the boundaries of online games. Markus Persson redefined the sandbox with Minecraft. PUBG was created by Irish indie dev Brandan Greene, and gave rise to the battle royale genre. If Coherence is indeed as user-friendly as its creators say it is, then who knows? Maybe the next industry-shaking hit will be made with Patti and Gregocic’s new engine.
Coherence 1.0 is out now. You can find out more about the network engine on its website.