The script engine in ZGE is a very simple parser which allows for numerical expressions, assignments and if-then conditional statements.
The lack of advanced features in scripting is currently the major obstacle for making many types of games in ZGE.
Wish-list for improved scripting support:
- functions
- parameters
- more datatypes
- local variables
- arrays
Technical details/requirements:
- parser and runtime implemented in Delphi/freepascal
- Runtime implemented with minimal footprint to be part of 64kb binary
If you are interested in helping with this task then please reply to this topic.
More info:
- ZGE script documentation http://www.zgameeditor.org/index.php/Ma ... xpressions
- ZGE source code http://www.zgameeditor.org/index.php/Main/Download
Script compiler
Moderator: Moderators
- jph_wacheski
- Posts: 1005
- Joined: Sat Feb 16, 2008 8:10 pm
- Location: Canada
- Contact:
angelscript
found this;
http://www.angelcode.com/angelscript/
not sure if it helps or if you already know about it,. however it does look interesting nevertheless,. and is free and "It is successfully being used in Delphi projects"!
http://www.angelcode.com/angelscript/
not sure if it helps or if you already know about it,. however it does look interesting nevertheless,. and is free and "It is successfully being used in Delphi projects"!
iterationGAMES.com
AngelScript is used in professional products such as GameCore (http://www2.gamecore.ca/home/anonymous)). It's a nice language.
Re: Script compiler
The one thing I would recommend is using Python as the scripting language. It's cross-platform and can be compiled to byte code.VilleK wrote:The script engine in ZGE is a very simple parser which allows for numerical expressions, assignments and if-then conditional statements.
The lack of advanced features in scripting is currently the major obstacle for making many types of games in ZGE.
Wish-list for improved scripting support:
- functions
- parameters
- more datatypes
- local variables
- arrays
Technical details/requirements:
- parser and runtime implemented in Delphi/freepascal
- Runtime implemented with minimal footprint to be part of 64kb binary
If you are interested in helping with this task then please reply to this topic.
More info:
- ZGE script documentation http://www.zgameeditor.org/index.php/Ma ... xpressions
- ZGE source code http://www.zgameeditor.org/index.php/Main/Download
I'll add that I'm not exactly a fan of Python, but for what it's worth - Blender heavily hinges on it.
However, I'm sure the binaries will be way over 64KB. Which, perhaps having two options isn't a bad idea - ability to not use Python and use the "limited built in" scripting language when you want to target 64KB, and ability to hinge Python and have a larger toolset but have the understanding that it will create larger binaries.
Here is a link from stackoverflow talking about it:
http://stackoverflow.com/questions/5512 ... g-language
My two cents.
- jph_wacheski
- Posts: 1005
- Joined: Sat Feb 16, 2008 8:10 pm
- Location: Canada
- Contact:
Seems all of these areas have been addressed in the continual updating that Ville has been up to. The built in ZGE scripting has become very powerful lately. Although, I am sure a dedicated widely used script system would be even more powerful, (I used Lua for a Caanoo game, and it is nice to have dynamically sized arrays, for example.) I am not so sure it is really needed any longer?
iterationGAMES.com
Hi guys,
K
Seconded, all of the scripting issues mentioned in the first post have been solved.jph_wacheski wrote:Seems all of these areas have been addressed in the continual updating that Ville has been up to.
There are actually some benefits to static arrays, such as the fixed footprint and the fact that it forces you to use batched solutions .. but in some cases it would be convenient yes. However, you could for example use a linked list to maintain a collection instead ( that way you don't need a array at all ). Attached is a example.jph_wacheski wrote:I used Lua for a Caanoo game, and it is nice to have dynamically sized arrays, for example.
K
- Attachments
-
- LinkedList.zgeproj
- (5.71 KiB) Downloaded 1382 times
- jph_wacheski
- Posts: 1005
- Joined: Sat Feb 16, 2008 8:10 pm
- Location: Canada
- Contact:
LinkList that is pretty neat - You did that without any arrays too - I'm kind of in same boat as JPH with it though - It's a bit confusing to understand how it's working.
I do like dynamic arrays. esp. things like Push,pop,append...but I do like the ability to use arrays as arguments in functions too - would be very useful for dealing with some math operations.
I do like dynamic arrays. esp. things like Push,pop,append...but I do like the ability to use arrays as arguments in functions too - would be very useful for dealing with some math operations.