• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

unity?

violet-ta

Landlubber
Hello! I am a young programmer and my dream is to work on some game like this :)
But I have no serious gamedev experience, now I try to get basic knowledge of popular game engines. Could someone explain why you choose Unity over, for example, UE4? Maybe it has some bugs like Cryengine or there's some other reason?

Thank you.
 
At the time UE4 was not available yet and therefore not an option.
We tried the previous version of Unreal, which did not allow updating the weather without reloading the scene.
That is of course a rather crucial requirement for a game like this.

Switching engines is a choice that should not be made lightly as it costs a lot of time and effort to do that.
We left CryEngine because it proved impossible to make the game we wanted with it.
But Unity can do it.
 
Last edited:
Thanks.
I understand that it's not easy to change engines and you won't do that again.
Just out of interest, if you had a choice now, would you still choose unity?
 
Just out of interest, if you had a choice now, would you still choose unity?
Difficult question to answer. To make a proper choice, you need to be familiar with all the options, don't you?
At the time we were familiar with the options that existed back then. I don't know if the current developers are fully familiar with the options now.
I could understand if they aren't, because it is a bit pointless to study alternatives that you aren't using anyway. :shrug
 
Just out of interest, if you had a choice now, would you still choose unity?
Probably, yes. Unity is every bit as capable as its competitors and it's only getting better.

I'd advise you to leave it at that. Engine choices have been a sore topic in the past and we'd rather not focus on that now.
 
Indeed.

We are very satisfied with Unity and what it is capable of. It truly is exactly what we need for HoO.

In addition we have very able people on board so we see results already now that can champion almost every aspect of glitter and gold that CryEngine offered back in the early days of HoO - which turned out to be just impossible to work with.

All that glitters ain't gold :cool:

And the developers are more than familiar with UE and what it is capable of.
We just don't find it to be any better for our purpose than Unity.

And besides - when you already have fully committed to a engine like we now have, it would be very counterproductive to continue a engine discussion regarding HoO.

A general engine discussion is always welcome of course. But that should be in a general forums section - not in the HoO section :cheers
 
Last edited:
A general engine discussion is always welcome of course. But that should be in a general forums section - not in the HoO section
In fact, this is to get general knowledge. I mean, it's better to ask the developers (you) than to try to guess true reasons of their choice.
I'm in no way trying to make you change your decision.

But.. Sometimes it appears to me that I can't see real arguments, and it makes me a little sad :)
For example, if we look at your game..
Hearts of Oak is a game where we have water, ships, naval battles. On the other hand it is land characters, some fencing, guns, beautiful towns, jungles and more.
And one can't just say that unity is awesome at making everything above and cryengine is just glittering pseudo-engine :)
So maybe you could explain it more precisely. (And maybe it all because i'm a noob and want to know so much so quickly)
All I can guess is that the naval part of the game is very specific, there are not many games with true and beautiful naval part.
Anyway, thank you for so many answers, you are so cool, bros :cheers

ps: I had a course of C# in my university and it seems not very hard for me, so I definitly can understand some code and improve my skill if necessary. So I'd be happy if you give me some opportunity to help you (decent amount of time is not guaranteed :oops:)
 
There most assuredly ARE real arguments. Exceedingly real ones too.
You didn't think the switch from CryEngine to Unity was might lightly, did you? :rofl

Fact is that the development team tried very hard to make HoO work on CryEngine.
But it was one step forward, five steps back, which is just not a workable situation.
That alone is reason enough.
 
OK, so we can break this down into a couple of different questions/answers.

Why did you stop using CryEngine?
That is actually explained in my video here:
The TL;DW is that CE was constantly breaking their engine and IDE and it was becoming entirely too cumbersome to even try and develop on that platform.

Why don't you use Engine X instead of Unity? Engine X is clearly better/faster/shinier/easier/cheaper?
No. Engine X is not better. Specifically, everyone ALWAYS tells us to use Unreal Engine. Unreal is fantastic at small levels, FPS, and games designed around limited areas. When we started evaluating engines, Unity was already being used in several large world games and was being expanded by UT to handle even larger ones. UE was not, and had nothing noted on their roadmap to do so and since HoO revolves around a large world it was a clearly better choice. Since then, UE has started supporting larger worlds, but it still has several drawbacks and memory limitations. Unreal is still very limited in terms of the community. One of our criteria for choosing an engine was community support so we went to every game engine forum and asked similar questions. Essentially the UE forums were a response of 'pfshhh, you are dumb / we are smart /read the manual / go away'. It hasn't gotten a whole lot better since then. The next item we did was contacted the development teams for each engine directly. We sent emails to both UE and UT with the same types of questions and within hours we got a response from the team at UT with an answer and some helpful tips. We are still waiting for that UE email to get responded to.

Would Unreal work great for other projects? Sure. It is a stellar engine. Just not the right engine for HoO. We need flexible options to stream levels, stream assets, connect to multiple clients/servers over multiple methods. We also need a much faster development cycle engine and C++ is just not a fast code base to work with. C# in Unity has been a very fast and flexible language to use and has shortened the development cycle considerably over any of the C++ based engines.

Assets and examples are the last part that pushed Unity over the top in our selection process. We found free assets to make nearly every base component of the game from, and for small amounts of money we could purchase other components that fulfilled the other parts we needed. Purchasing assets makes for a much faster development cycle again, and that is always a good thing.

So, in short, UT fit the bill for the project and was the better fit.
  • Graphics/lighting
    • UT - PBR/PBL, easily good enough for what we want. Some limitations in static lighting, but can be worked around. Has quickly caught up with UE levels of detail.
    • UE - PBR/PBL, extremely nice appearance, though has issues with dynamic lighting and large meshes
  • Source code access
    • UT - no, but we don't need it 99.999999% of the time. Any bugs are reported to Unity that releases a patch about 2-3 times a month that addresses them.
    • UE - yes, but we don't want to constantly run our own source code as that branches us further from the core code and slows development time and makes for more bugs.
  • Free and low cost assets
    • UT - Tons of great tutorials and free assets. Lots of low cost assets on the store.
    • UE - Not a lot of low cost assets. Store is still pretty barren.
  • Community of other developers
    • UT - Very helpful, lots of interaction between indie devs. Projects are more commonly scaled for indies so everyone helps each other.
    • UE - Almost like a minefield. Can either be very helpful or nearly toxic. Projects tend to scale toward tightly knit teams rather than indies (slowly coming around though).
Anyhow, probably more than was asked for, but that is the basic process we went through. Mind you, we agonized for several weeks over the decision but it was sealed with the above factors taken into account and that we did two simultaneous projects with the same goals in mind with the Unity project being done in a matter of hours and the UE one about 1/3 of the way done in the same timeframe. Just the development cycle speed alone made it a better choice for an indie volunteer project.
 
Back
Top