In a nondescript corner of a packed Cologne show floor stands a temporary outpost of Cloud Imperium. Inside, silent staffers sit facing blank partition walls, clutching keyboard and mouse as if involved in a kind of digital seance. Their monitors reveal that one is piloting a ship; another drifts in space nearby; a third walks around the ship’s interior, occupying a different version of gravity.
This is Star Citizen’s live multi-crew ships demo, but it represents much more – the efforts of Cloud Imperium to glue together the disparate parts of their sprawling space simulation.
“Pretty much most of the technology that we need to deliver Star Citizen as promised, as some people doubt whether we can do, is in place,” says Chris Roberts, in a laid-back transatlantic drawl that belies the expectations on his shoulders. “Now it’s just a matter of pulling things together, getting them working properly with the polish level, and then delivering a load of content.”
As the multi-crew demo begins, players potter out from the bowels of a space station and up a ramp to their ship. They’re exploring what Cloud Imperium call a “large world” – now possible thanks to a monumental effort that’s seen Star Citizen’s engine shunted over to 64-bit.
“In most engines, everything’s 32-bit,” explains Roberts. “And it’s fine for an FPS or a cover-based shooter where you don’t have areas more than a few kilometres in size. But for us, you know, we’re in space – we’re gonna have thousands, millions of kilometres.”
In a 32-bit engine, there’s a tradeoff made between range and precision: the further you end up from your point of origin, the less able the engine is to put its finger on exactly where objects are. Fly a long way out into open space, and the game might have trouble remembering the handful of centimetres between your visor and your face, for instance – introducing a worrisome shaking effect.
“When you need millimetre precision, you can’t get it,” says Roberts. “It’ll drop to centimetres, then metres, then tens of metres. That was a big endeavor to move it to 64-bit vector math.”
The vector upgrade is one corner of the tech intended to support the weight of Roberts’ ambition. Another is Cloud Imperium’s new zone system.
“Most engines, including CryEngine and Unreal, spatially partition all the graphics data in a very regular manner,” expands the CEO. “Because basically an FPS level is this constant – rooms, walls, graphics, everyone running around. But we can have large areas of space and then lots of areas of density.”
A planet will be a zone. An orbiting space station might be another – and each of the rooms within it their own, separate zones. Approach any of them in Star Citizen, and the game will know to start streaming in the required detail.
“That’s one of the goals of Star Citizen, to be fairly seamless as you’re moving around,” says Roberts. “No loading screens, just stuff streaming in the background.”
These are the foundations required to support Star Citizen’s absurd scale – a game both sprawling and granular, sparse and dense. And to hear Roberts tell it, the concrete is already laid.
“Those elements are the things that were needed to deliver the promise of a big persistent universe,” he says. “The zone system and the large world are the two things that we had to get built to basically do what we wanted to do with multi-crew and ultimately with the persistent universe.”
Right now the studio – with offices in several cities, most recently Frankfurt – are bringing delayed FPS module Star Marine back under the main development branch. The modules share the same codebase – meaning the zero-g antics shown in the multi-crew demo are simulated in exactly the same way as those in Star Marine’s sci-fi sports mode. Roberts expects to fold all of the currently-developed FPS features, as well as the game’s social module, into multi-crew 2.0.
“The only reason we have Star Marine is to have a mode that will allow players to test some of the FPS mechanics for the game itself,” reveals Roberts. “I’m looking forward to the Arena Commander 2.0 setup, where people can just move around, and the FPS part and the dogfighting – or goofing around meeting people – will be just something you can go and do.”
After that comes the biggie – planetside exploration, which Roberts plans to make seamless too.
“We probably won’t let you fly yourself directly down to a planet for the reason that we don’t want you to be crashing into things,” he explains. “But you’ll see the planet, and there won’t be a loading screen – essentially we’ll control the path. Everything will stream in and land and you’ll walk out.”
It’s always been the plan to do it this way – to craft Star Citizen’s component parts separately, taking care to carve out sockets so that it can be assembled later like interstellar flat-pack furniture.
“I kind of feel pretty good with everything,” muses Roberts. “We have a lot of people who work really hard on this, they’re very passionate about making everything possible for people that have backed it. Maybe it’s taking a bit longer than people want it to, but I think it’s going to be really good and it’s also expanded in terms of scope.
“I think the game’s going to speak for itself. I definitely know that what people care about is a good game more than anything else. At the end of the day, if it’s a bit late but it’s great, that’s what counts. If it’s crap and you push it out the door, it’s crap forever. It always has been.”