Overduty VR: Battle Royale is a VR Battle Royale game built on SpatialOS. We caught up with the creators, Overduty, to find out more about the game.
How did your team start?
We started as a local virtual reality arcade, with two room-scale Vive setups.
What did you do before this project?
Before this, we were juggling between being a VR arcade and a VR consulting studio. During that time, we were working on some game projects on the side, and since then have taken that on as our main focus.
How did the idea for your game come about?
During the early days of PlayerUnknown’s Battlegrounds, we had a pretty solid VR shooter engine that we’d been working on in our spare time, and thought how exhilarating a game like that would be in VR. So, we started plotting how we could make our own battle royale game in virtual reality.
Give us the elevator pitch for your game.
It’s the battle royale experience, in virtual reality, set in the near future. We put a lot of focus on making the gunplay feel really good and predictable, as well as the experience when driving our cars and hoverbikes, or climbing a tall building.
What's unique about your game?
We offer a huge environment in VR, through which players can traverse in multiple ways; using thrusters, climbing, ziplines, cars or hoverbikes.
Tell us about your team.
We’re all friends from college who had no idea we would be working together some day.
What's next for your game?
People can currently purchase our Founder’s Pack on Itch.io, and we plan to release the game as early access this summer.
What's your dream project?
Without being too direct, GTA Online in virtual reality would be pretty sweet.
Why did you choose to develop on SpatialOS?
SpatialOS showed the most promise for handling a game as big as ours, especially when developing for virtual reality.
In most non-VR multiplayer shooter games, you’re only sending one transform for every player: the player’s position and direction. In VR multiplayer games, you’re sending the player’s transform as well as those for the headset and the two controllers.
This works just fine in 6v6 PvP, or even 30v30, but you start to feel limited when you approach numbers like 100 VR players in one match on a 4x4km map!
Did you start building on SpatialOS or did you port?
We started building the multiplayer aspect of our game in SpatialOS. Before that, the game was offline.
Did you use an SDK or GDK, or did you integrate your own engine?
We started with the Unity SDK and then migrated to the GDK for Unity very recently.
What couldn't you have done without SpatialOS?
Without SpatialOS, we couldn’t consider supporting 100 concurrent VR players in one session. As we are using SpatialOS, we even have the flexibility to add more networked entities on top of that, such as drones that carry supplies, or sentries that guard certain areas.
What are your favourite SpatialOS features?
We love how seamless it is for an entity to cross through to a different worker, and how much that helps with a big map. The persistence is super-neat, too. It’s also amusing to go into our test scene and see a supply crate we spawned eight days ago in the same spot it’s been all week!
What has been the biggest improvement in SpatialOS for you?
This might sound silly, but in my early days of working with SpatialOS, the time it took to upload an assembly was very lengthy (around 20 to 30 minutes). One day, seemingly out of nowhere, it started taking only a minute or so to upload my assembly. That kinda stuff goes a long way.
What other projects would you be interested in building on SpatialOS?
It would be fun to experiment with more social VR experiences and games. It’s just a matter of thinking about the social experiences in real life that we haven’t yet been able to recreate in multiplayer games: the feeling of being at a huge conference, in the sea of fans at a big concert, or even just strolling through the mall. It’s finally possible to make and deploy these multiplayer experiences. There are so many possibilities.
If you’re working on a SpatialOS game or project and are interested in it being featured on our blog, contact our community team.