Halo, plus Portal. The constant motion and killstreak ecstacy of Bungie’s multiplayer shooter, spliced with the unpredictable physics genius of Valve’s puzzle smash. It’s the combined gaming concept that would have captured the zeitgeist of the ‘00s, neatly packaging the decade’s high points into a single executable.
Except it didn’t happen in the ‘00s. It nearly didn’t happen in the ‘10s, either – until Splitgate: Arena Warfare came along. The question is: why not?
“That’s something we’ve asked ourselves,” 1047 Games co-founder Ian Proulx tells us. “From an indie perspective, the reason it hasn’t happened before is because it’s just really hard.”
Nonetheless, it’s a challenge these indies are throwing themselves into, rather like an Aperture Science tester. 1047, it turns out, is the number of a dorm room where two Standford students of computer science experimented with putting portals into an FPS for a project demo. Now, 30 people are working on a commercial game based on that concept, grappling with the strange maths involved in making Splitgate happen in Unreal Engine 4.
Getting (it) to work
Any online game is a constant conversation between your PC, the client, and the server. The client tells the server where you are and what you’re doing, and the server reflects that in-game, approximating your actions so that other players can see and react to them. If that conversation occurs over a poor line, the information only becomes more muddled.
Fudging the results in a way that satisfies players of a standard FPS is tricky enough: players move quickly, items are hoovered up, bullets are sprayed across the map, and if any of it happens with a discernible lag, players will be frustrated. When you throw portals into the mix, networking becomes a much bigger problem.
“It wasn’t just getting the portals to work,” Proulx says. “It was: how do they work in a network environment? You know, what if you have 500 ping, when the server is supposed to be in charge of your location and you need to teleport instantly?”
You won’t know it when you play, but as you hop through a portal, your client PC briefly takes over to tell the server your precise position, before handing back control once you’re back on terra firma. Which is a whole other issue: how do you make environments look good in a game like this?
“Portal was a lot of very simple, grey rooms,” Proulx points out. “And for our game, we have to look shiny, like Halo. That was a big hurdle in optimisation.”
1047 Games don’t only have to render the map once – they have to account for all the places the battlefield can be viewed through each player’s portals, too. These are issues that open-world developers often have to contend with – working out how to display vast tracts of land without slowing the game to a crawl.
“It was super tricky,” Proulx says. “A lot of it came down to not rendering objects that aren’t visible [through the portals]. Having a watery effect over the portal allows us to not render things at the highest fidelity without you noticing it.”
The ability for devs to crack open Unreal Engine 4 and code in C++ appealed to 1047 Games’ co-founders, both of whom had worked in C for their student projects at Stanford. But there was another, more specific engine legacy they wanted to tap into as well.
“Unreal Engine 4 has the track record for first-person shooters, and honestly it’s come in handy quite a bit,” Proulx says. “Unreal Tournament is open source, so there have been a number of times where we’ve just gone through the Unreal Tournament source code to try to understand exactly what they do, because they do a lot of fancy things.”
In other areas, the team has learned not to be shy about embracing its most direct FPS influence.
“We have a really powerful pistol that you can zoom in with, even though it makes no sense because it doesn’t have a scope on it, in reference to Halo 1,” Proulx says. “It’s funny. Originally we didn’t have the ability to zoom. We didn’t want to rip off Halo too much. And everybody was like, ‘Why can’t I? Just add a scope’. We added the scope. Everybody loved it.”
Turns out everyone knows exactly what kind of game Splitgate is – or more precisely, which two games it is.
Splitgate: Arena Warfare is currently in alpha. Unreal Engine 4 development is now free.
In this sponsored series, we’re looking at how game developers are taking advantage of Unreal Engine 4 to create a new generation of PC games. With thanks to Epic Games and 1047 Games.