Live data from Hacker News

Godot game engine reaches 2.0

godotengine.org

21–30 of 59 posts

Re: Godot game engine reaches 2.0

#21
post #8

One thing I don't get with game engines: why do they feel the need to make a X-like scripting language, where X=Python in this case, and X=JavaScript in Unity's case? Why do they make people re-learn the specifics and slight differences of a language that has been around for more than a decade? On top of this, they are making their engines more difficult to maintain: bug fixes, new features, deprecation and backwards…

This should answer your question, http://docs.godotengine.org/en/latest/reference/gdscript.htm... As for my personal experience with GDScript, I used to experiment with Godot a while back, and honestly I never felt like GDScript was some sort of hindrance never felt it was in the way. It was really, really easy to pick up if you know another programming language already.

Totally agree. I made the same small game in Unity and Godot about a year ago to compare them. Learning and using Godot script was no big deal.

The main difference was that I could use VS for Unity and it had a vim plugin, but if I wanted to edit text in-editor I was stuck with Godot's own one.

Re: Godot game engine reaches 2.0

#22
post #6
post #4

The features page looks well presented but has anyone actually used Godot? What are their experiences with it compared to writing your own games from scratch?

"From scratch" isn't the right metric, you'd compare it to unity or unreal. The key difference is this is actually open source so you have 100% control over your own distribution and licensing. I haven't looked at it in 6mo but back then on the 1.x branch there were many, many thoroughly polished example games ranging from 2D (platform / isometric / tile) to 3D (third person, others i forget). Normally you get 1 inco…

I don't see the sample games listed on their site but found some googling. I'd be very interested in a good sample point&click adventure game especially for a FLOSS-engine. Creating one has always been in my "neat project" pile but I suck too much at drawing to motivate myself. Last time I tried (with no engine, just pygame) I got stuck figuring out a good way to do paths/movement/blocking areas and it sort of fizzled :D

Re: Godot game engine reaches 2.0

#23
post #15
post #8

One thing I don't get with game engines: why do they feel the need to make a X-like scripting language, where X=Python in this case, and X=JavaScript in Unity's case? Why do they make people re-learn the specifics and slight differences of a language that has been around for more than a decade? On top of this, they are making their engines more difficult to maintain: bug fixes, new features, deprecation and backwards…

Moreover, there are very good languages out there, which are designed for simple embedding. LUA, for example, seems to be quite popular among game engines. Reinventing a custom embedding language is almost always a bad idea.

On the GDScript introductory page (http://docs.godotengine.org/en/latest/reference/gdscript.htm...), they give the explanation of the shortcomings of other languages:

- Godot embeds scripts in nodes, most languages are not designed with this in mind. - Godot uses several built-in data types for 2D and 3D math, script languages do not provide this, and binding them is inefficient. - Godot uses threads heavily for lifting and initializing data from the net or disk, script interpreters for common languages are not friendly to this. - Godot already has a memory management model for resources, most script languages provide their own, which resulted in duplicate effort and bugs. - Binding code is always messy and results in several failure points, unexpected bugs and generally low maintainability.

The gave a shot at LUA, and it didn't work out well.

Re: Godot game engine reaches 2.0

#24
post #8

One thing I don't get with game engines: why do they feel the need to make a X-like scripting language, where X=Python in this case, and X=JavaScript in Unity's case? Why do they make people re-learn the specifics and slight differences of a language that has been around for more than a decade? On top of this, they are making their engines more difficult to maintain: bug fixes, new features, deprecation and backwards…

That's an over generalisation. Unity uses JavaScript, Boo, and C#. Cryengine and Stingray use Lua. They are those exact languages, not "like" those languages.

Re: Godot game engine reaches 2.0

#25
post #8

One thing I don't get with game engines: why do they feel the need to make a X-like scripting language, where X=Python in this case, and X=JavaScript in Unity's case? Why do they make people re-learn the specifics and slight differences of a language that has been around for more than a decade? On top of this, they are making their engines more difficult to maintain: bug fixes, new features, deprecation and backwards…

That's an over generalisation. Unity uses JavaScript, Boo, and C#. Cryengine and Stingray use Lua. They are those exact languages, not "like" those languages.

As far as I'm aware, Unity does not have JavaScript. It has the superficially similar "UnityScript" [0].

[0]: http://wiki.unity3d.com/index.php/UnityScript_versus_JavaScr...

Re: Godot game engine reaches 2.0

#26
post #8

One thing I don't get with game engines: why do they feel the need to make a X-like scripting language, where X=Python in this case, and X=JavaScript in Unity's case? Why do they make people re-learn the specifics and slight differences of a language that has been around for more than a decade? On top of this, they are making their engines more difficult to maintain: bug fixes, new features, deprecation and backwards…

That's an over generalisation. Unity uses JavaScript, Boo, and C#. Cryengine and Stingray use Lua. They are those exact languages, not "like" those languages.

[deleted]

Re: Godot game engine reaches 2.0

#27
Godot is awesome. It's a great alternative to Unity. It has a friendly community (IRC). The all-in-one editor is nice. The scripting language is easy to get into and if you need to, you can extend the engine and scripting language with C++. And the export to windows, linux, mac, ios, android and web works actually quite well.

What's really nice is the notion of scenes which I prefer to the way scenes are handled in Unity. Scenes in Godot are are simply node-trees which you can instantiate in existing scenes. For example you create a character in a single scene which you instantiate in a level scene. I always had the impression that this favored encapsulation compared to highly interdependent components in unity.

What brought me back to unity was 3D, scripting and debugging. 3D in Godot feels limited. Shader graphs are not really usable, yet. It's a lot simpler to create something nice in Unity with the standard shader and some assets. And well, the debugger, it's simply not comparable to Visual Studio. Variables are sometimes not inspectable. I missed refactoring alot. And sometimes you need to dig very deep to understand how stuff works because many things are not yet documented.

All-in-all, I love Godot. It's a nice cross-platform development environment. I simply hope that I can come back later when all rough edges are gone.

Re: Godot game engine reaches 2.0

#28

Godot is awesome. It's a great alternative to Unity. It has a friendly community (IRC). The all-in-one editor is nice. The scripting language is easy to get into and if you need to, you can extend the engine and scripting language with C++. And the export to windows, linux, mac, ios, android and web works actually quite well. What's really nice is the notion of scenes which I prefer to the way scenes are handled in U…

same here. much much better at 2d than unity and holds its own in 3d as well, even if not really comparable to what unity 5 can do.

gscript is a little too slow, but layouts are great to make ux with and the event framework is sane enough to make user input not a chore as in other engines.

eventually moved to phaser.js because that's even more cross platform and I'm fitting more and more stuff in shaders anyway.

Re: Godot game engine reaches 2.0

#29
post #2

Some meta discussion: "xyz reaches/releases version number 234234.324234" is entirely meaningless and the best way to ensure that nobody will care about your release announcement. Your project may internally have a very well defined and entirely logical policy as to how exactly to change version numbers based on internal project changes, but from the outside this is 100% untrustable and invisible, meaning your 2.0 re…

Yeah or announcing other things that are actually valuabe to readers like "Game engine XYZ reached 1000 published games" or "Game engine ABC reached this new platform DEF".

Re: Godot game engine reaches 2.0

#30
post #12
post #8

One thing I don't get with game engines: why do they feel the need to make a X-like scripting language, where X=Python in this case, and X=JavaScript in Unity's case? Why do they make people re-learn the specifics and slight differences of a language that has been around for more than a decade? On top of this, they are making their engines more difficult to maintain: bug fixes, new features, deprecation and backwards…

> "One thing I don't get with game engines: why do they feel the need to make a X-like scripting language..." They make it in "X" because they want a scripting language that is familiar to a large number of users and they only want it "X-like" because they don't want to recreate the entire language, including edge cases and undefined behaviour.

So in other words: make it like "X" to confuse people who already are fluent with "X", and remove the undefined behavior in "X" and introduce new undefined behavior, which will happen eventually as no language is immune to this.

Sounds awesome.

Post reply on HN