GDScript Code Upgrader

by christinec.dev

13

Code Upgrader Plugin

Code Upgrader is a tool designed to help upgrade your GDScript code from Godot 3 to Godot 4. This plugin automates the process of updating deprecated methods, properties, and syntax, ensuring your projects are compatible with the latest version of Godot.

Notice

This plugin is a work-in-progress tool.

Please know that I might not have picked up all the changes, as there are a lot, so if you find ones that I haven’t added, you can let me know and I will implement those fixes into the plugin! 

Join my Discord if you want to give feedback on this plugin or to help me update it: https://discord.gg/FnD8355w

Next Steps

  • Do more focused testing on all the individual Nodes, especially for the TileMapLayer node, to see where I can add more conversions.
  • Continuously test the updated functions with a variety of code snippets to ensure that all transformations are applied correctly and do not interfere with each other or modify unintended parts of the code.
  • Optimize the performance, especially if applied to large bodies of code, and optimize or refactor as necessary to ensure efficiency.

Links

Usage Instructions

  • Download the plugin and enable it.
  • If enabled correctly, there should be a new dock on the left side of the editor.
  • This dock has two parts: a code input and an output panel.
  • We will paste our Godot 3 code in the input panel, and copy our Godot 4 code from the output panel.
  • Press execute and your code should be converted!

Screenshots

Screenshot 2024-08-09 100646

Screenshot 2024-08-09 100719

Completion Log

  • Replacements for export and onready keywords.
  • Transformation of yield statements to await with various patterns.
  • Updated signal connection syntax to use direct method calls.
  • Modified signal connection syntax to include parameters with binding.
  • Simplified move_and_slide() usage and removed specific property assignments.
  • Transformed signal emission syntax to direct method calls.
  • Handled signal emissions with parameters.
  • Updated file opening syntax with a detailed commented guide.
  • Added the guide for the set_cell and set_cell_v syntax.
  • Changed access from .cell_size to .tile_set.tile_size.
  • Transformed Tween instantiation to direct instantiation with new instances.
  • Updated the keyword list to upgrade more terms.

Version

1.0.1

Engine

4.0

Category

Tools

Download

Version1.0.1
Download Now

Support

If you need help or have questions about this plugin, please contact the author.

Contact Author