Devlog 5 - Why I chose GDevelop


There are many different game engines. Unity, Gamemaker Studio, Unreal Engine, RPG Maker, Godot, etc. There are many different engines out there for making games and some people dont used them because they aren’t needed. However for this game jam, I chose GDevelop 5. For some, this may seem like a crazy choice, after all it uses a visual programming language which is the event sheet however I believe that event sheet is one of the reasons why it is so useful for me in this jam. In this devlog, I will discuss various features from GDevelop, explaining why I believe they are useful for me for this project and maybe some of these features will be useful to one of you reading this devlog for another game.

Firstly, the event sheet. The event sheet is how you code in GDevelop. There are many different types of events such as

  • Events
  • Sub events
  • While
  • Repeat X times
  • For each object
  • For each child variable
  • JavaScript code
  • Comment
  • Group

If anyone noticed and is wondering why I said JavaScript code when I said earlier it uses a visual programming language, GDevelop allows you to use JavaScript alongside the visual programming language, making it able to perform many things outside of the events provided inside of the conditions and actions available. This is one of the reasons I like GDevelop because so much is possible with it, even if it seems like not much can be done with itjust like other game engines where non visual programming languages can be used, like Unity.

Another reason I am using GDevelop is the extensions inside of it. Extensions in GDevelop are essentially custom code where you can create conditions, actions, expressions and events that occur at specific times which means that if you know enough about GDevelop, you can easily save time on certain tasks by just creating a small extension, which I have done a few times and have mentioned in some of the other devlogs. Not many other game engines allow features like this from what I know and in my opinion, it probably won’t be as easy or simple as the extensions in GDevelop.

GDevelop 5 is 2D only. To me this is an advantage because it means that I will not have to mess with 3D modals and stuff but since Piskel, a 2D sprite editor, comes inside of GDevelop, so art assets are really easy to create inside of the engine which is another big benefit of GDevelop because some other game engines won’t provide editors for assets that can be used inside of them and those that do may not be as easy to understand or simple as Piskel although it does suffer quite easily from performance issues, this isn’t an issue since I mainly use it for pixel art in games, which is the planned art style for Space Simulator. Additionally, pseudo 3D can still be created inside of the engine, even if no 3D objects can be used, some older games like Doom used sprites and used different transformations to have the sprites go to where a 3D object would’ve been and I believe this is, although hard to do, a possibility with GDevelop.

Errors. Many game engines provide them so much because one mistake or more was made. A semicolon was missing? Error. Forgot to uncapitalise or capitalise a letter? Error. However GDevelop is different. From my personal experience, if there’s some sort of issue in the code, that small event won’t be run or that action/ condition, not the whole game like many other game engines will do. Although this means there are less errors except for certain things like creating / deleting/ reading files which can provide errors, it allows me as a developer to not have to worry about my code being perfect for every single bit to run. I can even purposely make mistakes to prevent parts from running if I wanted to.

In conclusion, GDevelop for me is a really useful powerful engine, even if it utilises a visual programming language, it can still provide really powerful results, which is why I chose it for this game jam. Thanks for reading.

Get Space Simulator

Leave a comment

Log in with itch.io to leave a comment.