Godot Engine

Godot Engine

fishiki Mar 24, 2016 @ 3:28am
No programming experience, is it worth it?
Programming isn't my cup of tea, but I am determined to start with GDscript if it isn't as insanity inducing as those other Matrix-esque languages. I'm so bad at staring at those mathematical stuff that i pray for visual scripting every night, but I know that learning to script manually provides more flexibility and I really want to make a game obey my every whim. So, can one without programming experience pull this off? If so, where does one start?
< >
Showing 1-15 of 19 comments
76561198084087454 Mar 24, 2016 @ 3:59am 
If you're not into programming, nearly everything will looks as "Matrix-esque languages"; first thing you really need to know, if programming is "actually something you want to learn". Otherwise you'll find yourself bagging your head on the wall with no results.
The fact is that people like programming because it introduces a way of thinking they enjoy to have; looking for a programming language which is not programming is mostly a time wasting loop.

If you have not such vocation; you may consider other aspect in the game development... there are plenty of them from artistic (modelling, drawing, audio fx/track composing) to design (level design, game mechanics) etc.etc.

If you're still figuring out if programming is your cup of tea, but don't want to put yourself into writing codes... I'll suggest you to take a start with
{LINK REMOVED}
Akien  [developer] Mar 24, 2016 @ 9:38am 
Though it does not have visual scripting, Godot is quite friendly to non-programmers, as the scene system provides a lot of flexibility already, and you can do advanced stuff with very little code (see e.g. the Platformer 2D demo).

Thanks to that, learning programming via GDScript might not be too painful because you'll only have to learn relatively simple stuff, that should quickly become familiar even if you have no prior programming experience. See this script for example: https://github.com/godotengine/godot/blob/master/demos/2d/isometric/troll.gd There are of course some basics to learn to understand what it does, e.g. that += is an operator that adds the operand on the right to the variable on the left (i.e. increments the variable by what is on the right).

By learning just the simple stuff that you need to script at first simple games, you'll rapidly understand more advanced concepts and be able to do more stuff -- and most importantly, you'll probably have fun learning.

Now, the code you'll write will probably be a bit messy, and in a year or so you'll look back on it and think "why the hell did I write it this way?", but that goes for all of us :)

If you are really interesting in learning to be a good programmer though, starting right off with a basic scripting language like GDScript is maybe not the best option. Learning a more complete language like Python would teach you more low-level stuff, such as how to manipulate strings, files, user input, etc. GDScript on the other hand is deeply integrated into Godot so you'll mostly learn how to use Godot and not how to do general programming.

So it's a tradeoff, if you mostly want to learn how to make simple games with Godot, start directly with GDScript. If you want to learn how to program efficiently before you dive into the (additional, but different) complexity of game development, I would advise you to learn the basics of Python (or any other language, but Python is very beginner-friendly IMO).
Last edited by Akien; Mar 24, 2016 @ 9:38am
eye776 Mar 26, 2016 @ 8:48am 
I really wouldn't choose GDScript as a starting language as it's a custom-tailored to Godot and it will be of little use outside of it.
Frankly if this were the 90's I'd have recommended Pascal as a startig language because it was built specifically to teach programming. But given that Pascal is pretty much done for I'd say start with C# or Java.
There are video tutorials on Youtube and elsewhere that will get you started.

Also steer clear of visual scripting, for now, if you really want to learn programming.
You'll get hooked on it and it's a very flawed and non-portable way to build software and games.

Also Godot is a pretty specialized tool.
Unlike the previous poster said Godot is not too friendly to non-programmers at all beyond the most basic (and I mean really basic) of tasks.
Last edited by eye776; Mar 26, 2016 @ 8:50am
Steve Mar 28, 2016 @ 9:47am 
Originally posted by pepper with eyes:
Programming isn't my cup of tea, but I am determined to start with GDscript if it isn't as insanity inducing as those other Matrix-esque languages. I'm so bad at staring at those mathematical stuff that i pray for visual scripting every night, but I know that learning to script manually provides more flexibility and I really want to make a game obey my every whim. So, can one without programming experience pull this off? If so, where does one start?

I'm in the same boat, programming is just over my head and I cannot learn it, even after buying books and following tutorials for months. (I put it down to a combination of age (53) and poor education level)

I suggest you look at Clickteam Fusion 2.5 or Construct 2. Both engines require no programming whatsoever. C2 has the better UI but Fusion can export native windows code so the games you create run a lot better and are more efficient.
eye776 Mar 28, 2016 @ 3:25pm 
Yeah, there are visual tools as well.

Construct 2 will somewhat teach you to think structured because it uses logic blocks and events (it calls them behaviors).
There's another program called Scratch https://scratch.mit.edu/
Scratch was made as an educational tool for kids, so technical terms are few to none in the docs. Stencyl http://www.stencyl.com is a commercial offshoot of Scratch that's more polished & has a free version.

If you want something free & open source in the vein of GameMaker and don't have the money for PRO there's also ENIGMA http://www.enigma-dev.org which started as a GameMaker clone and is pretty compatible with it.

Take it as a joke but and I quote a dude from a dev forum "Everybody and their mother is making their own game engine now...".

Frankly I'd say just pick something either open source or with a free version (so no money lost), with a large community and at least some youtube tutorials and try to stick with it.

http://www.slant.co/topics/341/~2d-game-engines has a more updated list of engines, godot is listed as well.
EDIT: Devmaster http://devmaster.net/devdb/engines is an old website but has a pretty exhaustive list of engines.
Last edited by eye776; Mar 28, 2016 @ 5:44pm
fishiki Mar 28, 2016 @ 8:16pm 
Originally posted by PaulFoster:

I'm in the same boat, programming is just over my head and I cannot learn it, even after buying books and following tutorials for months. (I put it down to a combination of age (53) and poor education level)

I suggest you look at Clickteam Fusion 2.5 or Construct 2. Both engines require no programming whatsoever. C2 has the better UI but Fusion can export native windows code so the games you create run a lot better and are more efficient.

Thank you for suggesting these! I tried Construct 2 today and I'm happy with the method of visual scripting it features. I think I'll be sticking to this while I try to learn Python on the sidelines in case there's ever hope for me graduating to Godot. Anyway, I'll check Clickteam Fusion out soon, Thanks!
Last edited by fishiki; Mar 28, 2016 @ 8:16pm
duke_meister Mar 31, 2016 @ 6:59pm 
Why don't you just try Godot for a few weeks and see? I've come from Construct 2 to Godot and for simple 2D stuff you can get by in C2 but beyond that you will find your hands are tied, and the issues with HTML5 games are discussed/complained about endlessly on the forum. But it might be perfect for you, who knows. Also I guess you know it's not free.
Last edited by duke_meister; Mar 31, 2016 @ 6:59pm
Lord Mystirio Mar 31, 2016 @ 10:23pm 
If you are interested in Construct2, I would suggest to give a try to GDevelop too :)
Orbister Apr 1, 2016 @ 6:58pm 
I have a similar question but slightly different, I come from an Arts background, i have traditional arts formation, painting, drawing, sculpting. I've been learning blender for a while and feel rather comfortable with it, and in parallel i played around a bit with Game Maker Studio. I managed to make fully functional simple games with it that felt artistically coherent with my view. But In fact i would like to work on 3d. I don't have any intentions of becoming a programmer i want to make games, and that's it. How good is Godot for making 3d games from the perspective of an artist with little coding experience? My goal is to make simple third person games with some rpg elements, not open world, mostly dungeon crawlers with random layouts of rooms. A good example of what I aim to is the indie game called Malebolgia which is (at least to my knowledge) a single person project with the difference that i would like to introduce some randomization but aesthetically would be along those lines, nothing too fancy yet attractive and functional.
Last edited by Orbister; Apr 1, 2016 @ 6:59pm
Tim Aug 11, 2016 @ 7:16am 
Game engine on C++ with Python or JavaScript. Why all such kind of software using their own scripting lang? What's the point? More optimized and fast?
Akien  [developer] Aug 11, 2016 @ 8:54am 
Originally posted by Tim:
Game engine on C++ with Python or JavaScript. Why all such kind of software using their own scripting lang? What's the point? More optimized and fast?
See http://docs.godotengine.org/en/latest/reference/faq.html
Tim Aug 11, 2016 @ 11:33am 
Originally posted by Akien:
Originally posted by Tim:
Game engine on C++ with Python or JavaScript. Why all such kind of software using their own scripting lang? What's the point? More optimized and fast?
See http://docs.godotengine.org/en/latest/reference/faq.html
But 2.2 version will include a new visual scripting language, support for Mono (C#).

I have another question: are Mono good choice for Linux overall? And why C#? Why not Java?

And another question: can Go replace both C# and Java for logic scripting in games?

// Thank you for answer. Really appreciate. And sorry for newbie questions.
Akien  [developer] Aug 11, 2016 @ 11:44am 
You might want to read https://godotengine.org/article/godot-getting-more-languages

Why C#, it's mostly because 80% of users ask for it, so after two years of saying no, now that we have a developer who wants to work on it, we're giving it a try :) (also, the license of Mono recently changed from LGPL to MIT, making it suitable for Godot).

Whether it's a good choice on Linux, I don't know. I'm not fond of it personally, but I won't be forced to use it either; Godot will come in two versions: one with Mono, and one without (since Mono will make the binaries quite fat). See also my answers on https://godotengine.org/qa/6832/what-will-migration-be-like-from-gdscript-to-c%23

Regarding Java, our main developer has stated many times that the JVM would be very bad for Godot. I don't know the technical details. But if community members want to work on it, it could happen as unofficial binding.
Regarding Go, I guess anything can happen if the community is up for it. To integrate Mono, we created a C API that facilitates binding languages to Godot; it will be improved based on the experience with C#, and everybody should be able to use it to bind whatever language you want.

It likely won't be done by the core developers though, Godot has no intent to supports dozens of languages natively; better focus on a couple and make sure they are very well integrated.
Tim Aug 11, 2016 @ 5:44pm 
Awesome info, awesome devs and i hope awesome community in future.

Go lang look very promising and i am curious about using it in game dev. It also has free BSD licence.

I still do not understand how much can impact on performance huge usage in game of interpreted programming language compared to compiled or at least with virtual machine like Java or C#. Thats why i ask. Or this absolutely no matter? All main functionality must implement on C++ if i cant do something in GDscript for example?

Originally posted by Akien:
Godot has no intent to supports dozens of languages natively; better focus on a couple and make sure they are very well integrated.
+

// Of-topic: where better ask questions? There, on main forum or facebook?
Akien  [developer] Aug 11, 2016 @ 11:05pm 
Well you can do anything in GDScript, it's a full featured programming language. Of course when benchmarked, it's performance is close to that of python and thus much worse than statically typed languages. But for scripting games, it hardly matters. It's only if you want to do very advanced operations like scientific simulations or procedural 3D level generation (e.g. à la Minecraft) that GDScript's performance might start being a bottleneck, and then yes typically you could gain performance by moving such functions to a C++ module.

As to the performance gain from C#, that's a "promise", but I'll believe it when I see it :)
In a game engine, there are a lot more things affecting performance than the scripting language.

For questions, the best place is the Q&A: http://godotengine.org/qa
The Facebook group and Godot Developers forum are both more active than this Steam forum, but feel free to use the medium you prefer :)
< >
Showing 1-15 of 19 comments
Per page: 1530 50

Date Posted: Mar 24, 2016 @ 3:28am
Posts: 35