Vanishing Stars is a tower defence game set in an endless galaxy of 3D planetoids, varying in their climate and size. Featuring both PvE and PvP gameplay, gamers will explore its universe, battling to expand their empires at the expense of their foes. Here NINPO’s founder Cédric Tatangelo takes us through the game’s inspirations and why it could only work on SpatialOS.
We’d been working on Vanishing Stars for about four months, when we showed it off at Paris Games Week. At this stage, it was pretty simple – just a single player against a single AI on a single planet. Even thought it was really well-received, we didn’t really know where to go after the demo. Our vision was to let players conquer the galaxy, all of space – but how do you do that with two-and-a-half developers?
There are lots of multiplayer plug-ins, sure, from Photon and Unity. But to have more than even 20 people, you have problems with servers, with networks. If you don’t have specialised network developers in your team, it’s simply not possible. And to set up on Google or Amazon cloud, well, you’d need a whole separate team.
That’s the state we were in when we met Vitor from Improbable. He saw the game, liked it, and wanted to talk about it. We told him our problem – and he said, straight away, “I know how you can do that.” He started explaining about SpatialOS and it was like a star in the dark.
"SpatialOS was like a star in the dark."
The idea for Vanishing Stars started many years ago, when I was working in a previous development studio, but I couldn’t persuade my partners to take it forward. Two years ago, when I founded NINPO, I could finally start work on it.
Oddly enough, it started as a mixed-reality card game inspired by Skylanders. We created the universe, the species, a codex and a complete backstory for this universe, really a complete scenario. This main project is still ongoing, both in print and connected, as a Hololens game, with the cards creating holograms that you can play with in augmented reality arenas.
To support this, we originally planned to create a small Facebook game. That’s what eventually became Vanishing Stars.
We call Vanishing Stars a tower defence game, mainly because we don’t want to call it an RTS. You build up your headquarters on one planet, build a defense network of turrets to protect it, then create units to automatically attack your enemies. Your goal is to conquer one planet – and after that expand your borders, create a kingdom to capture resources and territories, and conquer the galaxy planet by planet.
It’s mixed PvE and PvP. An initial tutorial will take you through a starting star system, fighting against an AI, before you attempt to expand into the galaxy properly. There you will battle AIs and other players for control of systems in real-time. As you explore, you will find other technologies expanding your capabilities, enabling you to attack more planets, and so on. Though we’ll have different varieties of environment, each planet will be procedurally-generated to prevent them becoming familiar or combat becoming trivial.
We needed SpatialOS to make that PvP element non-trivial – to have thousands of people in the same space and load-balance it. Because our planets are 3D spaces in themselves, they and all the entities on them are represented as the same co-ordinates in the SpatialOS simulation. So from the global sim you can’t see what’s moving on a planet, but you can see how many headquarters and units are there. SpatialOS both handles all the tech and makes it easy for us to pair new starting players together in newly-generated areas.
There’s more we want from SpatialOS – though it’s easy to develop on, we’re still getting to grips with it. Particularly, we want it to solve another hard problem for us – how to handle multiple players on a server. At the moment, we have to create our own system, to authenticate and manage them, which is troublesome – we’d love for SpatialOS to get this built in with a secured database with a good authentication process.
Vanishing Stars isn’t just important to us – it’s important for SpatialOS too. It shows that not everything developed on the platform has to be a traditional MMORPG. It shows that the system can handle non-traditional 3D spaces. It’s pushing the capabilities of the platform forward by demanding other features. And it shows that it works for strategy games too, not just RPGs.
Join our community forums to discuss this article or find out more about SpatialOS.
Update – we have announced a new Unity game developer kit (GDK) that is an improved version of our SDK. Find out more here.