Game engines, such as Unity and Unreal, have enabled a huge creative swell in the industry, enabling indie games to go well beyond what had been previously thought possible with small teams. Now though, the engine itself is going beyond, offering more and more services to such creators.
Those services range from the likes of additional technical support for developers, plug-ins such as voice service or player management, or even cloud-based development options – allowing for fuss-free workflows in an increasingly remote-focused world.
To look further into some of these options we spoke to developers about the additional services, in this instance from Unity, and how their games simply wouldn’t have thrived without them.
ALL THE ANSWERS
Outer Wilds is undoubtedly one of the most ambitious and well-received indie titles of recent years. Making the game was quite an undertaking and to achieve it the team at Mobius utilised on Unity’s professional services during development, we talk to Alex Beachum (Co-creative lead at Mobius), Loan Verneau (co-creative lead), and Wesley Martin (art director) about how crucial that became.
The game is built on Unity – Why did you choose it for Outer Wilds?
The earliest of the prototypes that would come together to become Outer Wilds came to be when Alex Beachum wanted to test if you could have a ship you could walk around in, then sit down in the cockpit and fly it from planet to planet. This proved surprisingly feasible to implement in Unity 4, the engine used for the class assignment this prototype was made for. When the full project was started at Mobius, prior experience with custom engines had shown the limitations of such a choice and the team’s familiarity with Unity made it a far more natural choice.
What exactly did Unity’s professional services consist of?
We were able to submit bugs and questions directly to the Unity engine team, with a great direct contact at Unity that would help prioritize and follow up on those tickets.
How did the feedback help you create Outer Wilds as we know it today?
We often joke that Outer Wilds is a game that does everything you should not do when making a game: the entire game world moves at all time, everything is built on spheres, all lighting is dynamic. This meant we would hit many edge cases that most games would not encounter. Having direct support from Unity allowed us to make Outer Wilds a reality at the level of polish it was released at, in particular on consoles where performance would be a significant issue.
Would you use similar services on future projects?
This direct line of communication with Unity has allowed us to push the boundaries of what we could do with a game engine and for as long as we continue to do that sort of projects, we will want to have that Unity Professional support.
LOOK WHO’S TALKING
Nakara: Bladepoint recently launched into western markets after proving popular in open beta in China. With over 40,000 positive reviews on Steam, the 60 player martial arts battle royale has garnered strong reviews from western press and is looking to build a big community. As a part of that developer 24 Entertainment chose to use Unity’s Vivox voice comms solution. We talked to the studio about the game and that decision.
Describe Nakara for those who aren’t familiar with the title?
Nakara: Bladepoint is an online action battle royale developed by Chinese game studio 24 Entertainment with Unity 3D engine, presenting an unbounded and visually stunning fighting stage for players. Nakara has been open for Beta in mainland China for a period of time and is extremely popular and well performed on a variety of platforms. On August 12th, 2021, it will be launched on Steam and Epic platforms globally, aiming to be the world-class action battle title.
And the game is built on Unity – Why did you choose it for Nakara?
Unity is one of the top game engines in the world today. With the evolution of Unity in these years, there are quite a few successful games that proved that Unity’s technology has been upgraded and perfected in many technical aspects with high stability. Especially for small and medium-sized teams, they don’t need to spend too much time maintaining the engine so that they can focus more on project requirements.
Unity’s cross-platform functionality is the best among others. With the addition of SRP, it offers more flexibility. It can optimize the performance on PC platforms, fully utilizing the power of PC while preserving the possibility to work on multiple different platforms in the future.
Nakara:Bladepoint is developed based on the Unity source code service and makes full use of many existing features inside the engine, such as movement system, physics system, DOTS, URP + HDRP, ShaderGraph and Visual Effect Graph and so on.
More specifically on Vivox. What were your needs regarding voice comms, why are voice comms crucial to the game?
Nakara:Bladepoint is a competitive multiplayer action game featured with the Chosen One mode, which has two options: solo and trio team. In the trio mode, three players need to maintain a high frequency of communication and interaction. Since the game is fast-paced and the battles are intense and frequent, the voice function is crucial for Nakara and quite an important support feature when players want to have a good gaming experience. In addition, the title is globally released, so we need a stable voice service that can work well under all kinds of network conditions in different countries and regions.
Why did you choose to use Vivox over other similar tools?
The most direct and convenient way to communicate between players in the game is definitely through the voice. We researched several voice libraries and voice service providers, and finally decided to use Vivox. For one thing, it has a large number of successful use cases in the gaming field, for another, it provides a very distinctive position-based 3D voice, by which teammates can determine the position of each other, making the cooperation between teammates more smooth and direct. This exactly met our needs. Besides, Vivox’s voice quality, network bandwidth consumption and service stability are superb, and it’s very easy to integrate with the Unity engine as well.
How easy was it to integrate into Nakara?
Vivox provides a dedicated Unity plugin and integration examples. To get a basic working voice communication function, all we need to do is just to import the plugin and follow the steps in the examples to complete the client and server connection respectively. When encountering problems, we can send our questions to Vivox directly and will get the answers within 24 hours (it could be sooner if it was not for the time difference). If we meet difficulties, Vivox teams will work with us to debug, spot errors and figure out solutions.
And how well has it worked since launch?
In our last large-scale test, we encountered some problems such as failing to connect to the server,and dropping the connection during use, which were subsequently solved by the Vivox team. This is due to the fact that we were using Vivox’s test environment with limited capacity. Although we had communicated with Vivox to raise the capacity limit, it still could not meet our needs. After the official launch, Vivox deployed a dedicated server for us and allocated a sufficient capacity limit. Up to now, the Vivox service has performed solidly without any obvious failures.
SINGING IN THE CLOUD
Just because you’re making a classically-styled fantasy title doesn’t mean you have to do it in a classic way. Lavapotion is working on its RPG-strategy title Songs of Conquest and is using Unity Cloud Build to reduce the effort needed for day-to-day workflow and builds.
We talked to Lavapotion’s Magnus Alm (co-founder and CEO) and Niklas Borglund (co-Founder and lead programmer).
Please describe Songs of Conquest for those who aren’t familiar with the title?
Inspired by classic games of the 90s, Songs of Conquest lets you control powerful magicians called Wielders. Players will explore adventure maps, battle opposing armies and quest for powerful artifacts. It’s a charming mix of RPG and turn based strategy, set in a fantasy world.
The game is built on Unity – Why did you choose it for Songs of Conquest?
Unity is a great engine in terms of accessibility and speed. It’s easy to get up and running quickly on multiple platforms. Given many of the team members’ backgrounds in mobile games, all of us had extensive knowledge and experience in using Unity, so it felt like the obvious choice.
Why did you choose to use Unity Cloud Build in your development?
At previous studios I’ve worked on we’ve either had to build manually or maintain our own build server – and that takes time and effort. Unity Cloud Build already had a pipeline for us to use, with the ability to customize the settings and build with specific Unity versions right away. It’s been super helpful. Our build machine only automatically uploads the builds to the correct services and is very easy to maintain.
How did you improve the workflow of your team?
I’ve always been advocating for automating our workflows. If you do a 10 minute task multiple times a week it quickly adds up. If you write a script for it, you effectively take that time away, or reduce it, so you can focus on something else. Unity Cloud Build did that in a great way. Usually building & compiling a game takes a lot of time and just sitting around waiting might be a part of that – since you basically locked your computer to build. Now it all happens automatically and we can focus on making the game instead.
What SCM/repository were you using with Cloud Build?
We are using Git for our source code, hosted on Atlassian Bitbucket. For the large and binary files (like audio, textures, videos etc) we are using Git LFS.
Did Cloud Build help with distributed working?
Yes, for sure. Having the build system in the cloud where all team members can configure is very helpful when we are not working in the same office. Other Unity Cloud Services also helped a lot with that, especially Unity Cloud Diagnostics with background crash reports and user reporting.