Recs.
Updated
Godot is free(libre), open source, MIT license, no royalties, 2D, 3D game engine full-featured. You can make any kind of complex games.
SpecsUpdate
Pros
Pro Easy to learn scripting language
Godot has their own scripting language called GDscript. The scripting language is easy to learn with python-like format, but it is not python. More like a mix of Javascript, PHP, C++. It's very powerful, easy to learn, and it's free of unnecessary things because it's designed for this purpose.
It can be used to add custom behaviors to any object by extending it with scripting, using the built-in editor with syntax highlighting and code completion.
A built-in debugger with breakpoints and stepping can be used and graphs for possible bottlenecks can be checked.
Pro Easy to learn scripting language
Godot has their own scripting language called GDscript. The scripting language is easy to learn with python-like format, but it is not python. More like a mix of Javascript, PHP, C++. It's very powerful, easy to learn, and it's free of unnecessary things because it's designed for this purpose.
It can be used to add custom behaviors to any object by extending it with scripting, using the built-in editor with syntax highlighting and code completion.
A built-in debugger with breakpoints and stepping can be used and graphs for possible bottlenecks can be checked.
Pro Free and open source
Godot is licensed under MIT license. Anyone can grab the source from https://github.com/godotengine/godot, and compile the engine themselves.
Pro Internationalization of the editor
You can change the language shown in menus. Godot translations: https://hosted.weblate.org/projects/godot-engine/godot/
Pro Under constant development
This engine barely released one year ago has more than 1000 forks on github and about 100 developers. Not only that just a bit of browsing trough issues you will quickly find out the dev community loves new esp free technology and does not shy away from completely rewriting parts of the engine. The audio engine is being completely rewritten to use threads and so forth.
Pro Friendly towards Version Control Systems
The engine is build not only to support version control but to really use it. Scene files for example which usually get compiled into some sort of unreadable data stay in a text format - that way you can actually see your changes in a version control system like Git.
Pro Simple and readable codebase
The engine's source code is easy to read and understand with a self-documenting approach to code design. You don't have to wait months or years for other people to fix an engine bug that is important to your game. Often times, you can spend an hour or two of your own time to fix whatever problems you encounter yourself.
Pro Easily expanded scripting system
With 3.0's addition of NativeScript and PluginScript via GDNative, developers can easily define bindings for new scripting languages. In addition to the primarily supported C++, GDScript, VisualScript, and C# languages, the community has contributed D, Nim, and Python as well with more on the way.
Pro Built-in documentation linked to the internal ScriptEditor
The editor has a fully searchable index of class API documentation for everything the engine offers (NOT just a web interface). You can easily open the documentation for any class by Ctrl-clicking the class's name in the in-engine text editor for scripts.
Pro Assets and documentation are validated by the community
Unlike other mainstream engines, community contents (documentation, assets library, youtube videos, and tutorials, books) are selected and shared because they are "quality validated".
As the assets are free, the philosophy is rather to check and improve existing content or to create missing ones, rather than producing the same "bestseller" content again and again.
So there isn't tons and tons of content, but just enough of what is needed to do the job.
So, beginners won't be overwhelmed by too much content.
Cons
Con Documentation is not user-friendly for game development beginners
Godot has potential and will grow big just like Blender. By simply watching or reading tutorials, I can see how fast anyone can learn it. Unfortunately, for beginners like me, I find the provided documentation insufficient. Hopefully, in the future, there will be lots of documentation online. So far, searching for a book or a PDF doesn't provide me that much in terms of results.
Con Incomplete documentation
As is a new game engine, it documentation is incomplete.
Con Difficult to optimize
Godot has an OOP architecture. Everything is an object internally and data is spread among many classes, thus it's difficult to optimize (i.e. not cache friendly, difficuly to vectorize or paralellize, etc).
Read about "Data Oriented Design" for more info about the problems and solutions.
Con Stable version is not stable
Hundreds of bugs are waiting to be repaired. The crashes never ends.
Con Self-designed scripting language
Implementing new scripting language instead of using an existing scripting engine (such as Lua or V8 JS) looks expensive, but easy to learn.
Con Sluggish 3d engine
Although the game engine is supposed to receive a Vulcan revamp within the next year, as of right now, it is rather slow and unable to render large scenes.
Recommendations
Comments
Flagged Pros + Cons
Pro Really good community
The community is great and really cares about the engine. It is easy to get help and to be part of Godot's future.
Pro Editor and runtime are fully cross-platform
You can run Godot on all 3 major operating systems (Windows/Mac/Linux) and build your game to all available platforms from each without any platform-specific work needed. All platforms including Linux are supported first class.