🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Which Script Language use

Started by
8 comments, last by Licu 19 years, 4 months ago
In these days I'm going to integrate a script language in my 3d engine(principally for shader but not only...).So I'm choosing the right script language that match my needs. So which is the advantages of AngelScript against,for example, lua or python? This is not a war lua vs AngelScript vs python, so try to be practical :-) Thanks Davide
Advertisement
I haven't used AngelScript but it seems like a nice language. One thing with the big languages is (python, lua, perl etc.) is that they have a large user base and the languages are mature (you rarely find new weird bugs etc.). That's pretty much what advantages I can find in using the other languages.. But it seems that AngelScript has been around quite a while also. Just pick the language you like best.
Ad: Ancamnia
I can't and won't say that AngelScript is better than Lua or Python. They all have their advantages and disadvantages.

tentoid is correct in saying that Lua and Python are mature languages. AngelScript has been in development during almost 2 years, and still hasn't reached the goals I originally envisioned.

AngelScript is constantly evolving as I continue to introduce features to make it better. So keep this in mind, if you find that AS is missing something you need. I'm also pretty easy to convince in introducing new features (if they are reasonable).

Currently the main advantage of AngelScript is its interface to the application. AS is able to call almost any type of application function or class method directly without the need for wrapper functions.

AS is also not typeless, and uses datatypes compatible with those of C/C++. Wether this is an advantage or not depends on what you prefer.

Strong types and the fact that wrapper functions are not needed, can give AS an advantage in performance. I already believe that AS is faster than both Lua and Python (though I haven't made in attempts to prove this), and it has potential to be even faster. (Though if you really need speed you need to look for a language with JIT compilation.)

Currently AS lacks a few features that I consider important (and will add soon): structures/classes, function pointers for callbacks, co-routines (although it is possible to write them yourself), and persistent script contexts.

It may be important to you to know that AS is being used in upcoming comercial games. Though I'm not at liberty to talk about any other than what is already on the users' list.

AS is also pretty portable, currently working on Win32, Linux, XBox, and Dreamcast. I have a programmer currently trying to port it to PS2 (let's hope he can do it). I'm also introducing new features to make the library even more portable, such as a flat C interface, and a generic calling convention which doesn't need compiler/platform specific code.

If you are using a compiler other than MSVC++ or a GCC based compiler, you might need to make some adjustments to make everything work as the calling conventions are slightly different on the various compilers. I will help with whatever customization you need to do.

If you have more questions about AngelScript, don't hesitate to ask.

Regards,
Andreas

PS. I hope you choose AngelScript [wink]

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

Thanks,
I have seen quickly the documentation of angel script, but there isn't, for me, an important feature: How can I define a class into angel script to use in my c++ program???

Davide
At the moment the scripts can only export global variables and functions to the application.

I plan to add structs for AS 2.2.0, which will allow scripts to declare structs that can be passed to application functions and even stored in application defined objects.

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

Will the structs be C like structs in that you can define functions along side data members?
Wow, I didn't know the creator of AS was a mod here. I definitely have to give it a try now [smile]. I too am in search of a scripting language. I'll have to start hovering around this fourm some time now.

- Drew
Rain dog:

At first the structures will be without any functions. But I plan to introduce function pointers soon after that, which of course can be stored in the structures as well.

After that I will try to add complete class methods, with inheritance, polymorphism and everything else that belongs with object oriented design.

Drew_Benton:

Yes, I'm an old-timer here at GameDev.net. Before AngelCode I was the moderator of the DirectX forum. Nowadays I rarely go outside this forum, due to lack of time.

Don't forget to sign up to the newsletter so that you can get notices about the AngelScript updates first-hand. Though I usually announce them here as well.

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

Lord,
I believe that JIT and structure is the way to go :-D
What is a good thing about Angel Script is that you get feedback very quickly. If you have any problems post them here and you get your answer in the same day or so.

Another point is that is very fast and now is becoming more and more mature.

It will not take long until it will be used in more commercial titles (I cannot say more for now :)

This topic is closed to new replies.

Advertisement