Question about blueprints.

I am not a programmer, but I do want to create game projects, my question is what are the specific limitations of Blueprints that differ from C++?

My game project is a tycoon type game, so I can imagine that it is achievable with blueprints unlike more complex games. But is there any specific drawbacks to Blueprints? Or should I find a C++ coder to help me? And can I convert Blueprints to C++ later if I need to?

Very new to this, I’m doing models and levels myself and have to use blueprints for now.

Hi,

There are a few limitation to Blueprints, more like things to consider. First, no visual scripting method can be as efficient as coding. In fact, Blueprints are kinda pieces of C++ code (not literally) and when you compile, it gets translated to C++. Keep in mind that not all C++ functions are exposed to Blueprints and if your are working on bigger projects things can get messy quite fast. Fortunately there are a few built in tools to help you control the chaos, but you will realize that some complex tasks are just easier to code. It is cool to have some features provided for level designers to implement simple things, but making a serious game should be handled in C++.

Regarding your question, yes, you can edit code that you made in Blueprints, you can even make your own Blueprint node (that is some really cool stuff)

Anyway, here is a link to get you started:
https://docs.unrealengine.com/latest/INT/Engine/Blueprints/index.html

Not quite… Blueprints are compiled yes, but into bytecode for the “blueprint-engine”.
Currently Epic is working on a conversion functionality, but BPs arent C++.

I use blueprints a lot and the only instances where they fall behind coding in terms of elegance and verbosity are:

  • Recursions. Try to implement something like quicksort, mergesort or building a Huffman tree. Ists messy and (nearly) impossible to debug properly.
  • You cant really parse a string by character or some other “low level” operations.
  • Functions themselves are no datatypes. Thus, functions cant be parameters of other functions. A very handy feature in some code based languages.

Making the game purely in C++ would be sub optimal either.
I guess the “best approach” would be handling all the complicaed in C++, wrap then in custom BP nodes and go from there.

Well, thats new to me as well, I am not a programmer either, just wanted to help this guy as much as I can because nobody answered his question. I guess the ability to make nodes in C++ confused me and I made a wrong assumption.

Yes, I meant something like this, using code for the core features of the game, and Blueprints can be very handy dealing with the rest. I would even risk to say that it is possible to make an entire game in Blueprints (but might be not that efficient).

In the learning tab/free projects section, there is the black jack game, made entirely with blueprints.
And as far as I recall, the memory game and the tower defence exampla also use only BPs.
So yes, its possible :slight_smile:

You can do a lot in blueprints, but not some of the more advanced things that some games might have. I think you’d be fine using blueprints for now, but maybe consider having someone that knows C++ help you out as you get closer to release.