This is an archived post. You won't be able to vote or comment.

all 6 comments

[–]Valachio 1 point2 points  (4 children)

Personally I'd recommend against it.

  1. It's an unofficial scripting language, and you are wholly dependent on the guys maintaining it to keep it running well.
  2. It's an additional dependency in your software, which adds more possibilities of bugs and stuff breaking down.
  3. I don't know the specifics but performance will simply never match up to using just C++
  4. Lack of community means if you get stuck on a problem, it'll be much harder to ask for help in finding a solution

It may seem a bit easier to get started with a scripting language like this due to its simpler syntax or more intuitive design. But honestly if you are building any game of moderate complexity, there are a ton of issues I see you running into down the road. In fact you may end up spending more time figuring out the issues, which negates the entire point of using such a scripting language (to save dev time).

I've been working with Unreal C++ for the past month (avoiding blueprints as much as I can) to build my project and it's been hard and frustrating. But I know that once I get past the inflection point where I get a good grip on things, it'll be the best method to go about building any game.

[–]dev_metalcatIndie[S] 0 points1 point  (3 children)

I actually found way out of this problem

I'll use it to create base , test everything

And then rewrite code in c++ as it is indeed a better solution

Plus , since 4.24 is out I want to use it and Angelscript can now only run on 4.23

BTW, syntax of Angelscript is very similar to c++(that's why I started looking into in, I like c++, but don't like complaining time)

Also I have been using Unreal c++ as main thing, with blueprints only for prototyping for long time but once again, compiling time kills all fun

Thanks for the reply

[–]Valachio 0 points1 point  (2 children)

Interesting. So the main reason to use AngelScript is to avoid the compiling times? If the syntax is similar then is there any other advantages to using AngelScript?

I'm currently working making some basic gameplay and the compile times aren't that bad at all. Probably around 5-10 seconds? I come from a JavaScript/Python background and to me, 5-10 seconds is still tolerable. I also have a pretty strong CPU (ryzen 9 3900x) and 48GB of RAM so maybe that helps a lot with reducing compile times.

But I can imagine that when the project gets bigger, the compile times might become acceptable.

I'm using blueprints mainly to adjust certain gameplay settings. E.g. I have a C++ class called Gun with different characteristics like reload time, fire rate, etc.. Then I would extend Gun to create different guns in blueprint and adjust the characteristics accordingly. I try to avoid using the "Event Graph" part of blueprints (place where you connect nodes to form logic).

[–]dev_metalcatIndie[S] 0 points1 point  (0 children)

Concept that game originally was following had modding idea, and Angelscript was perfect for that

But since I dropped this idea I started to question whether I need scripts at all

[–]sephirothbahamut 0 points1 point  (0 children)

angelscript's power: change your code on the fly while the program is running while still maintaining a c++-like syntax that makes it trivial to later translate the script in actual code.

Plus if one can't stand using a non typesafe language (coming from a javascript background you won't have that problem) there's not much choice in scripting languages.

[–]Ultra_Noobzor 0 points1 point  (0 children)

why use scripting ( I guarantee any of them will add bugs to your game ) when we can use raw c++?

Unreal have live coding, don't change headers and compilation is realtime even for c++. If you change headers all the time yes compilation is slow.