Considering switching to Unreal from Unity, looking for some input

Hi. I’m a random game developer who did a bit of complaining on twitter and @UnrealEngine reached out to me. I was impressed with that, so I’m here to ask a few questions. I’ve got a pretty solid base for my game built in Unity already. I’m actually in the process of putting together a kickstarter campaign with the material I have. I’m trying to get this done fairly quickly because I’ve got some fairly major life changes coming up and I want to get my kickstarter campaign live before I move across country. I realize switching to Unreal before that is highly unlikely and would require the skills of people I can’t afford at the moment. That’s fine. If my kickstarter is funded, then I’ll look at switching to Unreal Engine. Anyway, I have some questions.

I realize that one doesn’t HAVE to write everything in C++ anymore and can just use blueprints. That’s good for me because I don’t know C++ and it’d likely take me the better part of another year to become familiar enough with it where I would be confident in the code I’m writing. I don’t have time for that. What are peoples’ opinions on using Blueprints and what’s the learning curve like? I’ll be honest, I’ve never dived very deep into any node-based system like this. It looks a bit like Blender’s node editor. Am I correct in making that assumption?

In Unity, it’s very easy to import a heightmap to define the contours of a terrain. It looks like there are similar systems in Unreal but they look far more complex than what I’m used to. That’s fine, I can handle complex, but I’d like to hear from someone who’s maybe used both Unity’s terrain engine and Unreal’s to kinda give me an idea of the differences and just how much more complicated it is. Is that at all possible?

Something I’ve yet to implement, but it’s on the list is multiplayer floating origin. I’m building a HUGE world and WILL encounter floating point errors if I don’t implement floating origin to keep things a reasonable distance from 0,0,0. Are there any Unreal-specific references I can utilize or will that need to be written from scratch? I was already planning on hiring someone more experienced than myself for that anyway… and that’s part of the reason I’m here. It seems to be remarkably difficult to find Unity developers who are experienced at anything but small-scale mobile development. I’m hoping I can find some developers in the Unreal community who are more interested in making AAA PC games.

Finally, if anyone’s interested in what I’m actually doing, I’m making a multiplayer pirate sandbox game with some gameplay mechanics no one’s seen in this type of game before. The survival genre has brought some fantastic concepts to the world of game development and I intend to refine those elements into something new and exciting and engaging while ditching the tedious pieces of that genre (… like survival… sorry survival game creators, it’s just not my thing :). Players will be able to form a crew with a captain and chain of command. That crew will be able to sail the seas, do battle with other ships, make landfall, build a pirate stronghold and defend it and expand territory to gain access to new resources. Players will be able to raid ancient native ruins while overcoming traps and other pirates, as well. I’ve got a lot of really fun, interesting, new things that I want to do with this game and I think Unreal Engine is probably going to be the best way to go, but I want to get some perspective of what I’m getting into.

Here’s a couple raw, unpolished screens if anyone’s interested in seeing them. These have no camera effects or anything applied, so they don’t look as good as they will in the final product. I’m also lacking in character models and custom ship designs, at the moment. My artist is hard at work on them, though! Thanks for reading and I look forward to hearing your opinions.

f630640c9d183bf0626a6f6d1d40989bb63a525f.jpeg
e9db08fa9afb44504ebcffd38d356f465214d166.jpeg

Although I cant help you with the multiplayer aspect, I can give some input to how Blueprints work. As far as I know blueprints are just exposed C++ classes and functions, but are very easy to learn, and they are proficient at what they do. The downside to using visual scripting over traditional methods is it becomes a mess, very fast, and it is also roughly up to 10x slower than the same system in C++, so you wouldn’t want to implement something very demanding using blueprints. The upside to this is that you can use blueprints in conjunction with c++ and utilize new c++ functions with blueprints.
One important aspect of switching to Unreal that I find personally relevant, is that it a complete next gen engine, which doesn’t support older hardware and scale back nearly as well as Unity does. Im not sure what Unity offers in terms of level streaming, but Unreal has the option for a singular large would, or dynamically loading in new parts of the level (which could perhaps ease your mind about floating point issue).

Your idea for your game actually seems quite refreshing, and sounds very interesting. I hope to see more of it in the future, preferable on Unreal!

Uhm… hmmm… that’s kind of a big deal. Unity doesn’t have a built-in system for level streaming. There’s a community-created script for it, but the thought of integrating multiplayer into that script gives me a headache. That’s pretty much the big bad deal that I don’t know how to tackle and if Unreal tackles it for me, the Unity’s time may have come. Thanks for your input! I’m really hoping to do something special with this game and bring new gameplay elements to the table. The survival game genre needs some evolution and I’ve got ideas for doing just that. Plus… PIRATES!

Your biggest issues are probably going to be getting the game optimized well and getting the network features working well. With UE4 it’s particularly difficult to know what things you can do to adjust performance, like what are all the features that are running and how to control them. Unity starts out with few features so it’s pretty easy to get it running well by simply not adding advanced graphical stuff. With UE4 it’s a problem because some settings are in the editor but there’s also stuff in the config files. and that’s on top of the standard stuff like making things low-poly and lowering draw calls. For large worlds UE4 has World Composition tools, and the landscape tools are very good. Networking is an issue for pretty much any engine though.