Updated: Jun 24
Welcome back everyone! Today we're talking about our engine switch, our plans with modding and we're explain the concept of our new and very powerful UniversEdit Framework.
- We switched to a new Engine: Unity
- Remaking everything from scratch is hard but allows us to start on very strong grounds
- The UniverseEditor is a powerful framework to create new content with extreme ease
- We are planning to gradually release UniverseEdit tools over time
- A mod browser will be put into the games
- There will be free mods and a curated workshop is also planned
- We try to make modding and the workshop better for creators
- Non-custom asset mods will even be possible on consoles
A New Engine
As you will certainly have noticed, Synthetik 2 uses a very different engine than S1.
Synthetik 1 used Game Maker Studio 2, which was a 2D engine, best used for creating small 2D games quickly with its best trait being ease of use, but it came with significant costs and complications for a large project, especially with multiplayer at play.
GMS did enable us to make the game however, so we are definitely grateful for that.
Now, our future games will be based on the popular Unity3D Engine, coming with a much greater base feature set, cutting edge 3D graphics (mind you that graphics still always depend on the artist) and powerful C# scripting. While all engines come with many advantages and many flaws, this is the best option for our future plans and our greatly expanded team, which has grown from 2 to around 20 as of the time of writing this.
Unreal Engine has also been a consideration, but for our modding and Editor Framework plans, Unity is more flexible and less rigid (although more 'rough' at the baseline), making this our Editor Framework plans a realistic possibility with our current team.
A New Start
Switching the Engine basically forced us to throw away everything we had built over the last 5 years. It's a risky fresh start on a completely blank slate.
(If you don't care about Engine talk, skip this section)
Generally such a thing is rarely done and it's a huge risk, especially for established studios of larger sizes. Taking the call to just halt development for 6 months or more to set up a new engine is usually extremely expensive and hard to justify, especially when it means throwing away all previously made code and implementations.
You only want to build your core once and then upgrade and refine it over the coming sequels, as you see with basically all games which have sequels. This is not about being "cheap", it is the smartest, most efficient way to do and generally gives the best results.
Per example, Call of Duty still uses extremely refined versions of the Quake 2 engine, which they upgrade, extend and refactor every year, as it works well and certainly has workflow improvements that have been amassed over decades to a refined degree, thus making it extremely crazy to throw this work away and just start on a new engine for no reason, especially if you can just add new graphics features or rewrite the graphics engine (as has happened with Modern Warfare 2019 per example). At this point, probably almost nothing really is left from the original Quake 2 version. Engines are just bundles of tools and code components which can all independently be upgraded (or not), often the names do not have much meaning. However if not done well, code can be very interconnected and also cause severe limitations as it is virtually impossible to untangle without breaking a ton, as example Airports and Planes still use MS-DOS for all flight code as it is so complex that nobody can touch it.
While starting back from scratch seemed like a big disadvantage at the start, it now starts to become more and more of a big advantage, as we are effectively forced to throw away not only the bad, but also the kind of mediocre or slightly-questionable-but-working-fine things, which you then usually simply don't touch. If it works, why change it, right?
So unlike many companies making their first game, we do not build our second game based on the questionable choices made that inevitably happen when you struggle to make a game happen at all.
Now we have the rare opportunity to bundle all our combined learnings from Synthetik and remake all the code and elements from scratch on a infinitely better foundation.
The UniverseEdit Framework
Traditionally, you would build your game based on the Unity Editor, handle all your game logic over Unity scripting and its "Inspector" components, directly in the Engine, but we have chosen to go with a very different and unusual approach, concepting the UniverseEditor.
The UniverseEdit, short for Universe Editor, is our custom framework on top of the Unity Engine, it is built to be as detached as possible and not rely on Unity workflows for much of the content creation, but allow editing right in the game, eliminating the need to download an SDK and do complicated things to mod.
It is built so the content creation and balancing can be done within the game menus directly instead of within the engine.
This means per example that you can just go the game main menu, enter the editor, and create a new working unit or rebalance a drop table or similar in seconds.
(Early alpha version of the Editor, visuals and usability are being overhauled)
Another great thing about the Editor is that we use the exactly same version for creating the game as modders will have access to, so you don't get all the issues with separate mod tools versus the real dev tools, where mod tools stay broken or are not getting updates because developers don't need to use them themselves.
Making this Framework required a lot of hard thinking. It was a tremendous amount of work many other teams could likely not have afforded. It also blocked work and testing gameplay on our new games for many months but it will certainly grant big fruits down the road.
Scope of the UniverseEditor
The UniverseEditor is made to create content and balancing first and foremost, so this differs from a moddable Engine such as Source 2 per example. The Editor will give you a great many options to create new content and many cool things with unparalleled ease and speed, but it is not an engine where you write custom code and make new UIs or create new core gameplay elements that never existed before, such as making a Synthetik tennis game or the like.
The other great thing is that things like the action editor are self contained and cannot cause crashes (unless you spawn a particle effect 100000 times maybe) so there is not much you can do wrong aside of making something that doesn't work!
The strength of the UniversEditor is that you can do infinitely new things that can be pretty complex through smart modular systems at great speed and ease of use, so it has an insane ratio of speed and learning requirement to quality compared to a full engine. It will not offer the complete freedom of a full "blank canvas" engine unless you build up your own tools and systems in a full engine over many months, however the UniversEditor will give much greater results for a much smaller effort, and every time we expand it, you will also get new features, most notably new "Results" (effects) for the action editor.
So what is within the scope of UniversEdit?
(Within possible technical scope of the UniverseEditor sooner or later)
Weapons, Items, Perks, Buffs, Enemies, Factions, Localization, Classes, Spawn Tables, Core Game Balancing, Feedback Tweaks, Ammo Types, Projectile Types, Global Settings, Balancing, new Resources, Campaigns, Ingame progression, Multiple choice popups and more
Custom scripting, new UIs, custom data parsing, making different subgames, Bug fixing, core mechanics, Outgame progression (Class progress however, yes), changing Main Menu etc, making new Maps (although this might change in the future).
Mod.io and Workshop Plans
We are planning a integration of the Mod.io browser into our games where you can browse for mods straight from the game client.
For the start, there will only be a modding section, but we are planning on having both a free-for-all modding section/browser and a curated workshop, similar to steam's workshop you know, such as CSGO or Team Fortress 2, so dedicated workshop creators can make money of their work and afford to spend the time to create higher quality curated content for you.
(Example of another game using an Mod.io browser implementation)
With a workshop we can bring you a lot of cool new content, bring in more players and revenue over time, which then allows us to make more content for the game, support a live team for S2 and expand the Synthetik Universe while modders can make money by doing something they enjoy. We also try to support non-modding creators or special things you made outside the editor with funds from the workshop. A win for everyone!
We will however of course avoid things like Bethesda "paid mods" where people turn free content into paid mods with the click of a button, using content from others, zero curation and having no legal nor customer support nor quality control.
Shrike: I have been an modder and workshop creator myself, you can see some of my stuff in CSGO, Payday 2 and Killing Floor 2, and know about what could be improved in the process. 1. We will try to have a better feedback cycle as it can be very frustrating to work in a black box without any feedback and seemingly gamble upon acceptance. 2. We target a fair profit share and 3. we also try to stay within the stylistic guidelines of the universe, so there are no doubts what is desired or not from the curator, while we avoid degrading the game with blindingly cheesy neon dragon skins and all the sorts.
We think the workshop is of great benefit to everyone as it greatly increases quality of content for the players without taking away from free mods, it allows fans to make money off of something they enjoy doing and it expands the game in a way where we still have quality control and can keep up artistic and gameplay integrity from our side.
For mods we will try to allow donations, paypal, similar payment services or we might even consider things like mod subscriptions to optionally support the creators in some way. We will also consider supporting popular mods directly from our side. Nothing is set in stone yet and we will consider the best options to support modders and try to do it better than other companies do right now.
About the workshop and what type of content would be within the workshop is not yet decided. So far anything that can be created within the editor is open for the curated workshop, same as for the free for all mod browser. You can however not submit your already live mod to the curated workshop as we don't think its cool to take something away, so you have to decide beforehand. Maybe workshop creations will be finalized by us and directly integrated, maybe you have the last say and control it end to end and we just give feedback.
Larger creations or addons might also be built in cooperation with some funding from us, but we'll see. We also try to support other content creators outside of modding with funds from the workshop if find a good way to automate (and afford) this as its a bit of a paperwork hassle.
We plan to start off strong with a modding contest before the workshop launches, and we will try to regularly feature good content as you have already seen, starting with our new universe hub.
Either way, we try to be very supportive and cooperative and a lot of great content is to come!
Our Plans for Modding
With the big complexity and depth of the UniverseEditor, we have to consider which features we polish up and give to the public in which order. Some should probably not be accessed or are simply not technically possible / make little sense due to how they work.
We will start with some high value features, such as the Action Editor (perks, items, abilities, attachments etc) and gradually release more and more of the editor features.
With the Synthetik 2 alpha build demo from the Steam festival, you could already play with the Action Editor and we also enabled the Class Configurations, allowing you to actually create custom classes!
Importing custom assets: Yes this will be possible, you will be able to import sounds, sprites, textures and models. This will likely require a download of free Unity and then use some sort of package process, which should not be a big deal however, more about this at a later point.
Coop mods: While this is always a very hard subject, we will try to make things work somehow, and in the worst cases, accepted curated workshop content will be online compatible. That's all we can say for now.
Scripting: We'll look into it for the future but no promises, maybe with C# or something similar
Mapping: This is likely the hardest and will require some hard thinking, there are multiple approaches to this, but for the moment mapping is not being developed and we will likely take the proper time to develop a good approach for mapping for our games in the future.
Platforms: Action Editor and other things from UniversEdit are within the game, as such it should all be cross platform compatible in the end and would work on Xbox and PlayStation as it looks right now, this is however restricted to using our art and audio assets as you can of course not get your 3D model onto your PlayStation.
Scripting: We'll look into it for the future but no promises, maybe with C# or something similar
How to get started:
Be sure to check out the steam demo of Synthetik 2 and try out modding for yourself:
We have also done a small introductory video to modding with the UniversEditor that will help you understand the system and get familiar with it:
That is all for now. We hope you are excited as we are for the future of Synthetik 2 and modding as a whole! Let us know what you think!
Until next time!