Scripting enhancements

If there is something important you think is missing in the current version of ZGameEditor then you can post a feature request here!

Moderator: Moderators

Post Reply
Deakster
Posts: 1
Joined: Wed Jul 07, 2010 9:51 am

Scripting enhancements

Post by Deakster »

Having played around with ZGameEditor for a few days, I must say I am very impressed. In my case, I needed a quick way to prototype some procedural generation ideas, and it definitely helped a lot.

In terms of feedback, I think the main thing I would like expanded is the scripting system. After looking at the forums a bit, I think a lot of the requests or problems people are having could be resolved with some extensions to scripting too.

Allow creating components through code.
Component chains can get pretty long and confusing if you are trying to do some complex logic. Having to jump from zexpression->component->zexpression->component can really break up the thinking when you are trying to look at what is happening.

Also, certain components would make a lot of sense just having them as functions, that you can put right into a zexpression - SpawnModel("ModelName", i, j, 0); etc.

Object / Component id data type
Referring to objects by name is not always possible or the most elegant solution. It would be great if we could efficiently loop through a certain set of models, push some into list A and the rest into list B, then do something with each list later etc. Also, following on from the previous point, functions such as SpawnModel could return these id's (which could map directly to pointers to the object internally).

Support a generic object type
Many scripting languages such as LUA are able to stay small and efficient (bloat free) by having a simplified, generic object (or table) type. At the moment, it is very 'hacky' to have to use globally defined arrays for everything (also many things are not possible with pure arrays).

If such a datatype is put in place, it can then be used for stacks, queues, hasmaps, sets, lists etc.


I know there are arguments against making the scripting language more complex, however I think it could push ZGameEditor to be used for much larger scale projects. Also, this could allow a lot of things to be achieved much more simply (less components, simpler logic) which means that executable sizes might not always be greater.
User avatar
VilleK
Site Admin
Posts: 2274
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Post by VilleK »

Thanks, these are all very good suggestions.

I'd say that the top priority in ZGE is improve scripting because this has been lagging behind other features for a long time now. The reason it hasn't happened yet is my own limited time and lack of experience. Scripting is the most advanced part of ZGE so it requires more time and concentration than other features. Also I've never created a scripting language from scratch before so I need to research every language feature before I can implement it in the best and most compact way. I will definitely try to make these improvements but I cannot promise when they will appear. Thanks again for your feedback.
User avatar
prinsukun
Posts: 11
Joined: Fri Jan 04, 2013 5:32 am
Location: QATAR
Contact:

Post by prinsukun »

VilleK wrote:Scripting is the most advanced part of ZGE so it requires more time and concentration than other features. Also I've never created a scripting language from scratch before so I need to research every language feature before I can implement it in the best and most compact way. I will definitely try to make these improvements but I cannot promise when they will appear. Thanks again for your feedback.
Sorry to bump this, if i could suggest that a simpler scripting language that mimic GameMaker Language (GML) would be a time saver for a lot of users, me included, the way i script in gamemaker is so clear and easy, their are already other game engines mimicing GML like Tululoo Game Maker (http://www.tululoo.com)

i'm not saying copying GML, but at least make it as an inspiration for how Zscript should be in ZGameEditor.

+

improving the script editor would be a bonus, like coloring functions word, purple for models, orange for sound file etc..
User avatar
Kjell
Posts: 1876
Joined: Sat Feb 23, 2008 11:15 pm

Post by Kjell »

Hi prinsukun,
prinsukun wrote:Sorry to bump this, if i could suggest that a simpler scripting language that mimic GameMaker Language (GML) would be a time saver for a lot of users
The syntax is already quite similar to GML .. apart from how variables are defined. In Game Maker you don't / can't define the variable type, in ZGameEditor you can / have to.

Can you specify any particular circumstances where you found GML easier / more intuitive then the scripting language in ZGameEditor?

K
Post Reply