Saturday, July 18, 2015

Scripting language in game ....

I know I know I stepping on thick Ice. Some people love scripting languages other hate and other don't care. Personally I still don't know to which group I belong.

I somehow understand all sides:

  • Scripting language:
    • [+] Have quick iteration time
    • [+] Non programmer can do some simple stuff
    • [+] It's easier than native code
    • [+] Separate game from engine
    • [-] Can be slow (most of the time is)
    • [-] Use garbage collector so it was more user friendly 
    • [-] Can be tricky to debug.
  • Native code:
    • [+] Can be really efficient
    • [+] Give you access to everything
    • [+] You have full control
    • [+/-] No garbage collector
    • [-] Can get easily messy
    • [-] Easy thing can take really a lot of time
    • [-] Slow iteration time
    • [-] You need really good programmers to utilize it
Because I'm not 100% sure about using scripting language in game I will try to create some add-on to engine so you could use scripts but you weren't forced to do this if you want. 

And here start my dilemma and request for advice: 

Which script language you would like to use create game and why ? 

There is big choice of them C#, Lua, Python, Java Script (This one I would like to avoid) or maybe something completely different? I will be happy to hear your opinions.

Greg

4 comments:

  1. I'd say either Mono(C#, and bunch of others), or maybe a visual scripting language. It kind of depends on who you want to target as the scripter. Programmers will rather use a text based scripting language, while designers seem to favor visual scripting languages.

    ReplyDelete
    Replies
    1. Yes but visual scripting language can be easily create on top of some text scripting language. So I want to start slowly so text one :]

      Your "a bunch of others" intrigue me so I read a little bit more about Mono. I thought earlier that: mono is open source C#. But right now I see I was mistaken and this is just virtual machine. I see I need to check a little bit more about it.

      Delete
  2. Python. Mostly because of rapidly expanding community. Other then that: low barrier to entry, prerequisites formatting, strong meta programming capabilities, etc. Most of game engines support Python just for fun, I think, but those who do support only Python as for me are very flexible and fast in development. Big World Engine for instance.

    ReplyDelete
    Replies
    1. Ahh... Python ... Personally I really like it and use it for some tools. But I know there is a lot of people who hate it for indentations. What would you say about support of python from Mono level ? I know they use IronPython but this is still interesting option to be able to use C# and Python. I think this is possible to do but I would need to read a little bit more to be 100% sure.

      Delete