Hey, there. My name is Guillermo, I'm one of the co-founders of CremaGames, and this is my first post on GameDev.net.
After a few friends and gamedevs told me they liked the Unity tools we recommended in the studio devlog, and that I should republish it here, I thought: what the hell, let's try it. So I hope you find the list helpful for your own games, because they are essential for us and Immortal Redneck wouldn't exist without their help
I think I can say our new game, Immortal Redneck, is kind of big, but these tools have worked for us in smaller projects, too. Obviously, before trying them, and before paying for them, be sure you need it and that there's no other free or paid alternatives. After all, there's a lot of variety in the world of Unity tools.
Anyway, let's get on with it.
Behavior Designer was our choice when we needed a solution to implement Immortal Redneck's AI. It was compatible with other AI solutions, with state machines and with Behavior Tree. Before choosing BD, we tried Rain. It was free, and that was great; but we had lots of efficiency problems. Behavior Designer was a lot more compatible, had official support and we could work with a visual interface, not only with lines of code, which is always welcomed by programmers and artists equally.
We wanted enemies to move around scenes in their own, different patterns. Unity's default navigation system didn't let us move a
navmesh once it was generated into a scene, so we looked for alternatives and quickly found and fell in love with A* Pathfinding.
This plugin let us create meshes a lot faster in execution time and integrated quite well with Behavior Designer, which was a great plus. We particularly had to make a few changes in certain areas so the meshes stayed with the rooms themselves. This wasn't strictly necessary, but it reduced loading times by a good margin.
[media]
[/media]
Immortal Redneck's outdoors are the first impression you have of our game, so we wanted the place to be great and special. One of the first things we decided was that it needed a day and night cycle, even if most players won't stay long enough outside to watch it entirely.
After looking for a lot of assets, we opted for InstantGoodDay. It seemed like the best solution given our needs. We wanted to change every little detail of the animation so the cycle looked original and unique, and InstantGoodDay allows you to change every hour of the cycle. It has lots of values, from fog to lighting and also colors and stars in the sky. We worked a lot with it and we integrated StylizeFog by our own.
A huge effects library, with lots of post-processed stuff. At this moment, we are only using it for the transition from the outer camera in the main menu to the inside of the sarcophagus. Obviously, we'll use it with more stuff, like rapidly changing the rooms interiors and their mood.
Having an empty folder is not such a big deal, but when you are working in a big game like Immortal Redneck and when you have a git repository it starts to get annoying. This plugin's job is to erase all the empty folders without a constant use by any user. So even if that's not a big deal, it's a good way to keep your stuff tidied up.
I'm sure everyone making games has suffered an unexpected failure while working. Sometimes it's your computer, sometimes it's Unity and sometimes it's something or someone else, like your cat. The outcome: hours of work lost in a fraction of a second. We've been there lots of times. So much crying...
Anyway, we looked for a solution and we found Editor Auto Save. It's the best plugin around for this: it saves every scene and project (along with all the modified prefabs) on regular basis and every time you do some specific action (like playing) so you don't lose much stuff if you forgot to pay your bills. Ahem.
We've know DOTween for some time now.
We started using it while developing OMG Zoo Rescue, and we loved it. This plugin let us code animations in a fast, easy way. It's perfect for menus and UI, but also sprites and even models in 3D and cutscenes.
Also,
Mobsferatu's intro and ending were made with DOTween, so that's how much we love and trust it.
Even though Unity 5 has improved its audio systems a lot, there are better alternatives outside the official channel. Since the beginning, our friends at
Sonotrigger told us that we would probably have to use something else so they could do their magic work with Immortal Redneck's sound effects and music.
So we chose Master Audio. Not only does it give us access to a lot of tools, but our main reason to use it was so the audio team could integrate everything easily in the game without a lot of programming work. It's about resources and managing our time.
Nested prefabs is one of the most requested features for Unity - that's why they are a part of the company's roadmap now. So, meanwhile, we had to find a third party solution, and we chose Prefab Evolution for Immortal Redneck because it's the most used and supported. Thanks to this asset we could use nested prefabs and reuse particles in different objects. It worked great and allowed us to do exactly what we wanted.
Sadly, we had some problems and we ended up ditching it. Immortal Redneck is big, and that didn't go well with PrefabEvolution. Compiling and testing were stealing us a lot of time, so you have to keep an eye on what your game is going to be before using this, otherwise, great tool.
Maybe you build a unified system made just for your needs. That's actually what we are doing at the moment: we are changing our workflow so we don't need so many nested prefabs and we can use one tool of our own creation in the cases we really need to do it.
Unity Input is one of the least advanced tools since the engine conception. With a big game like ours, we wanted a lot of flexibility with our control system and needed a lot of compatibility with PC peripherals. Thanks to Rewired, everything is made around actions and are mapped with each device. Also, since it doesn't have any native code, it would work in consoles if needed.
ShaderForge is one of the best assets we've used and we can't stop suggesting you use it. Working with shaders is our Achilles heel: we don't have a person specifically coding shaders. Thanks to ShaderForge, our artists started making shaders without programming knowledge and with really great results. For example, this is one of the shaders we've built in Immortal Redneck.
A fantastic asset so you can have, heh, stylized fog in your game. You can use gradient colors so it paints the fog with those tones, and you can even mix two colors. When you have InstantGoodDay too, you can build some cool scenes with fog, changing open areas and such. We're going to use it in Immortal Redneck indoors, too. That's how much we liked it.
[media]
[/media]
A Unity classic. We've been using it since our first game with the engine (Ridiculous Triathlon) and it's been with us since then. If you need to make nice texts in Unity, we don't know a better tool than TextMeshPro. This plugin allow us to use words independently of their resolution and/or size and you can apply various effects (like shadows, outlines, gradients, glowing) easily. See those damage numbers? TextMeshPro.
(The hammer animation is ours, but the rest is UFPS)
UFPS helped us with Immortal Redneck's engine fundamentals. We used it in the beginning so we had a solid foundation that we could modify as much as possible. At this moment, we have changed everything in UFPS so it adapts to our most specific needs. We kept the procedural animations and event system, but excluding these, there's little stuff left. It's the best starting point if you are willing to build lots of stuff on it.
And that's it! What tools do you usually use? Should we try an alternative to ours?
Finally, if you want to keep updated with Immortal Redneck, be sure to
follow us on Twitter or
like our Facebook profile. Thanks in advance!
Pretty cool :D. I'd prefer to make it all myself, and would probably waste hundreds of hours on doing so.