Agent skill · software engineering · aiskillstore

godot-4-migration

Specialized guide for migrating Godot 3.x projects to Godot 4 (GDScript 2.0), covering syntax changes, Tweens, and exports.

Why this skill is useful

Provides specific migration patterns and syntax changes for transitioning Godot 3.x projects to Godot 4 that the AI wouldn't reliably generate on its own.

What it needs

About 2k tokens when loaded. Last updated 2026-08-07. 405 stars on the source repository.

What this skill does

Godot 4 Migration Guide Overview A critical guide for developers transitioning from Godot 3.x to Godot 4. This skill focuses on the major syntax changes in GDScript 2.0, the new Tween system, and export annotation updates. When to Use This Skill Use when porting a Godot 3 project to Godot 4. Use when encountering syntax errors after upgrading. Use when replacing deprecated nodes (like Tween node vs createtween). Use when updating export variables to @export annotations. Key Changes 1. Annotations (@) Godot 4 uses @ for keywords that modify behavior. export var x -> @export var x onready var y -> @onready var y tool -> @tool (at top of file) 2. Setters and Getters Properties now define setters/getters inline. Godot 3: Godot 4: 3. Tween System The Tween node is deprecated. Use createtween() in code. Godot 3: Godot 4: 4. Signal Connections String-based connections are discouraged. Use callables. Godot 3: Godot 4: Examples Example 1: Typed Arrays GDScript 2.0 supports typed arrays for better performance and type safety. Example 2: Awaiting Signals (Coroutines) yield is replaced by await. Godot 3: Godot 4: Best Practices ✅ Do: Use @exportrange, @exportfile, etc., for better inspector UI. ✅ Do: Type all variables (var x: int) for performance gains in GDScript 2.0. ✅ Do: Use super() to call parent methods instead of .functionname(). ❌ Don't: Use string names for signals (emitsignal("name")) if you can use the signal object (name.emit()). Troubleshooting Problem: "Identifier 'Tween' is not a valid type." Solution: Tween is now SceneTreeTween or just an object returned by createtween(). You rarely type it explicitly, just use var tween = createtween(). Limitations Use this skill only when the task clearly matches the scope described above. Do not treat the output as a substitute for environment-specific validation, testing, or expert review. Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills aiskillstore/godot-4-migration

View the source on GitHub

Browse the @skills marketplace