Godot & Python (How To)

_moe__moe_ Posts: 2Member

Hello to everybody, this is my first post.

I am very new to Godot (and Python also). But Godot looks interesting and I want to learn Python, so here we are.

To quickly answer the inevitable "why not use the Godot native scripting language?". Well, its not useful anywhere except Godot.

Moving forward. I see that Python is going to be supported in the stable release of Godot 3.0. I dont want to wait that long.

So right now I am looking at this link: https://godotengine.org/article/beta-release-python-support

I am running linux so that is not an issue.

First question: Does this only work on with the Godot 3.0 alpha, or can I make it work with the stable 2.1 version?

Next question, assuming it only works with 3.0, can I get some help with installing the alpha 3.0 with python version?

At this point I need step by step instructions to get it installed. I would be very grateful if somebody was willing to help me. Also, this thread should help anyone else looking to get started with Godot and Python.

It looks to me like I will need to download alpha 3.0 and compile it, and then download and compile the python stuff? Is that correct?


  • NeoDNeoD Posts: 171Member
    edited October 2017

    If Python uses GDNative you'll need Godot 3.0. Godot 3.0 alpha is available for this. This alpha is a bit outdated but GDNative was already included. Personnally, I compile Godot myself even if I don't have programming skills. It's very easy, at least on Linux, because the docs give the "one liner" command to solve the dependencies.

    But keep in mind that GDNative workflow add some complexity to your project. It's not very hard to manage, but in my opinion, you must ask yourself if it worth the effort.
    I can enumerate two advantages with GDNative who can worth the effort.
    First, GDNative allows to use external libraries and it is useful to add features to Godot.
    The other advantage is about performance if you use a faster language, C++, D, Nim, maybe Rust are already available. But I'm not sure Python is faster than GDScript, since it is an interpreted language. Even with the compiled languages listed above, the performance gap is not visible on classic simple scripts.
    If your game will include scripts with lot of computations, you can go this way without hesitation. But you need to learn a compiled language.

    There is another advantage. Some people are already used to a language available with GDNative. I don't see a big deal with this since GDScript is very easy to learn and the Godot editor have syntax highlighting, auto-completion and debugger. It is easier to learn GDScript than setting and managing a GDNative library in your project.

    GDScript has lot of similarities with Python, so if you learn Python you learn most of GDScript at the same time.
    Sorry if my english is not quite correct.

  • bassebasse Posts: 20Member

    i'm a huge fan of python and was excited when I saw this new python support being available.. tried it a bit, and then decided gdscript is enough for me, atleast for now. I don't know if it's how it's implemented or what, but it's a bit tedious to write as it's all class... so much "self.something" "self.somethingelse"... lot of things that seem unnecessary to me.


  • _moe__moe_ Posts: 2Member

    NeoD, thanks for the thoughtful response. I think your english is pretty good. I dont mind if this takes me a while to get going and I dont mind putting in extra work. That said, at this point I dont even know where to start. So I am basically going to come here and look for answers.

    basse, its not that I have anything against the actual syntax or structure used in gdscript. The reason I am dead set on using python is that its very useful in world at large, and I intend to use for other projects, not just games. I suspect I am going to spend many many hours using python in godot, so if it takes me a week or two to get it all set up, that is fine with me.

    So, in order to compile my alpha version of godot 3.0 I have downloaded the linux 64 version from here: http://godot3builds.digitecnology.com/

    So now I have the file: godot-v3.0-x11.64

    What do I do with it?

  • NeoDNeoD Posts: 171Member
    edited October 2017

    If nothing happens when you double click on this make sure to have the permission to run the file, by opening a terminal in the executable folder, and type the command sudo chmod +x godot-v3.0-x11.64 and press enter. Then you can retry to start Godot.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file