Godot and GDevelop are both commendable open-source game engines, but GDevelop‘s intuitive, event-based visual programming and focused tools makes it more suitable for learners and programmers with variable experience. However, Godot shines with its scene-driven design and flexible scripting language for more experienced developers targeting complex applications.

Comparison of GDevelop and Godot

Key Differences Between GDevelop and Godot

  • Focused Audience: GDevelop targets learners and programmers of all experience levels while Godot, although beginner-friendly, focusing more on experienced developers.
  • Design: Godot uses a scene-based system for game creation, while GDevelop uses an event-based system.
  • Scripting Language: Godot uses its GDScript, with optional C# support, but GDevelop enables game creation without coding.
  • 3D Capability: Both offer 3D, but Godot scales better across high and low-end devices.
  • Platform Support: Both run on multiple platforms, but GDevelop5 supports Android, iOS, Facebook Gaming, and Steam. Godot 3.5 supports Android phones, tablets, and various web platforms.
Comparison GDevelop Godot
Engine Type Open source, cross-platform Open source, unified
Game Creation Event-based visual programming Intuitive scene-driven design
Platform Compatibility Windows, macOS, Linux; Web based Windows, macOS, Linux
Game Publish Platforms PC, Web, Mobile Desktop, Mobile, Web
Educational Use From school to university courses Beginners to experienced developers
Advanced Features 3D graphics, animations 3D engine supporting high and low-end devices
Design Structure Uses objects, code pieces Scene, nodes
Program Results UI, UX Understanding, Game Reviewing Fully featured component development
License Fee Free Free under MIT License

What Is GDevelop and Who’s It For?

GDevelop is an open-source, cross-platform game engine developed by Google’s Florian Rival. Seamllessly creating games suitable for PC, mobile, and HTML5 platforms, GDevelop aims to simplify game development. Its IDE, core library, and game engines are all readily accessible. With a visual programming system based on events, GDevelop is designed for all, from the inexperienced to adept coders.

GDevelop is notably used in games education, with its capabilities extending from school-level to university courses. Additionally, it’s a preferred choice for developing learning and serious games. Its versatile suite of features include animation, scripting, sound design, and visual effects, affording developers rich creative freedom. The focus remains firmly on creating games with no code.

Colorful developer engaged in game creation at an interactive digital workstation

Pros of GDevelop

  • Open-source and cross-platform
  • Designed for non-programmers to experienced coders
  • Features include scripting, animation, visual effects, sound design
  • Advanced features for creating 3D graphics and animations
  • Utilized in games education from schools to university courses

Cons of GDevelop

  • Slower development for advanced users
  • Potential issues with stability
  • May require source modification for advanced projects

What Is Godot and Who’s It For?

Godot stands as an open-source, license-free game engine acclaimed worldwide. Designed around a unique, intuitive scene-driven system, Godot lets developers construct games from simple blocks and reusable scenes. The engine supports a built-in scripting language, GDScript, and a range of other popular languages.

From Juniors to seasoned game developers, Godot provides an array of tools to accommodate all skill levels. Offering dedicated 2D and 3D workflows, multi-platform compatibility, and a built-in visual editor, it presents developers with immense flexibility and customization. However, for more complex 3D game development, Godot may not be the best fit.

Colorful game developer using the Godot engine to create visually striking game landscapes

Pros of Godot

  • License-free and open-source
  • Flexible scene system for reusable components
  • Built-in scripting language GDscript
  • Supports C# and C++
  • Compatible with multiple platforms

Cons of Godot

  • Not suitable for complex 3D game development
  • GDExtension API only available in Godot 4
  • Limited languages supported natively

Code Examples for GDevelop & Godot

GDevelop: Platformer Character with Double Jump

This example code enables a platformer character in GDevelop to perform a double jump. The prerequisites are a working understanding of GDevelop, and basic concepts of games development.

//Variable setup
var jumpCounter = new gdjs.Variable(0);
runtimeScene.getVariables().add("jumpCounter", jumpCounter);

//Listening for the jump command
runtimeScene.getOnceTriggers().push(function(){
    if(gdjs.evtTools.input.isKeyPressed(runtimeScene, "jump")){
        //Check if the player has available jumps
        if(jumpCounter.intValue() < 2){
            jumpCounter.add(1)
            platformerObject.getBehavior("PlatformerObject").jump();
        }
    }
});

//Resetting jumpCounter on ground contact
runtimeScene.getOnceTriggers().push(function(){
    if(platformerObject.getBehavior("PlatformerObject").isOnFloor()){
        jumpCounter.setNumber(0);
    }
});

Godot: Random NPC Dialogue

This Godot engine code selects a random NPC dialogue from a predefined array. For this code to work, you should have an existing project with NPC characters, and be familiar with using signals and arrays in Godot.

extends Node

//List of dialogues
var dialogues = ["Hello!", "Good day.", "Nice to meet you!"]

//Signal emitted when a dialogue is selected
signal dialogue_chosen(dialogue)

func _ready():
  //Connect the signal to a method
  connect("dialogue_chosen", self, "_on_dialogue_chosen")

func choose_dialogue():
  //Choose a random dialogue
  var chosen_dialogue = dialogues[randi() % dialogues.size()]
  emit_signal("dialogue_chosen", chosen_dialogue)

func _on_dialogue_chosen(chosen_dialogue):
  print(chosen_dialogue)

When it comes to GDevelop vs Godot, what’s the conclusion?

In the faceoff between GDevelop and Godot, the choice you make will hinge heavily on your particular demands and experience level. Both technologies excel in their own zones.

Non-coder Game Enthusiasts

For those who are interested in game creation but lack extensive coding expertise, GDevelop is the preferable choice. Its event-based visual programming, easy-to-use engine and focus on making games without code allow novices to engage effectively in the game development process. If you’re seeking to learn game design tools techniques and terminology, GDevelop is a solid option.

A beginner game developer exploring GDevelop's user-friendly interface

Experienced Developers and Coders

Godot’s feature-rich platform, built-in scripting language GDscript and flexibility is more in line with the needs of experienced developers. The intuitive scene-driven design, reusable scene creation and direct import of Blender files allow for complex game development. If you’re a seasoned developer looking for advanced features and customization, Godot is your go-to engine.

Experienced developer optimizing Godot's intricate features for complex game development

Platform Considerations

For developers prioritizing cross-platform functionality, GDevelop shines due to its compatibility with Windows, macOS, Linux, web browser and mobile platforms. Its games can be published to PC, Web, Mobile platforms, and even to Facebook Gaming and Steam. For those requiring extensive platform compatibility, GDevelop has the edge.

Cross-platform game development on a broad range of devices and operating systems

For those seeking to unfold their creativity without the worry of programming, GDevelop hits the spot. It’s user-friendly and lightweight, making it perfect for novices. On the other hand, Godot provides experienced coders with flexible and advanced features, making it the better choice for complex game development.

Logan Bellbrook

Content writer @ Aircada with a knack for nature & AR/VR/XR. Blogging the intersection of tech & terrain.