← ClaudeAtlas

godot-4-migrationlisted

Specialized guide for migrating Godot 3.x projects to Godot 4 (GDScript 2.0), covering syntax changes, Tweens, and exports.
aiskillstore/marketplace · ★ 329 · API & Backend · score 82
Install: claude install-skill aiskillstore/marketplace
# 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 `create_tween`). - 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:** ```gdscript var health setget set_health, get_health func set_health(value): health = value ``` **Godot 4:** ```gdscript var health: int: set(value): health = value emit_signal("health_changed", health) get: return health ``` ### 3. Tween System The `Tween` node is deprecated. Use `create_tween()` in code. **Godot 3:** ```gdscript $Tween.interpolate_property(...) $Tween.start() ``` **Godot 4:** ```gdscript var tween = create_tween() tween.tween_property($Sprite, "position", Vector2(100, 100), 1.0) tween.parallel().tween_property($Sprite, "modulate:a", 0.0, 1.0) ``` ### 4. Signal Connections String-based connections are discouraged. Use callables