Migration notes: godot-genre-rts
Incremental upgrade for topics this skill covers. Apply one hop, stabilize/test, then next. Never skip hops.
If the project is < 4.0, follow godot-version-migration era bridges (legacy → 3→4) until 4.0, then these hops. Official 3→4: Upgrading from Godot 3 to Godot 4.
4.0 → 4.1
Official: Upgrading to Godot 4.1
NavigationAgent2D/3D.set_velocity→velocityproperty — retune unit crowd flow.time_horizonsplit intotime_horizon_agentsandtime_horizon_obstacles.NavigationAgent3D.agent_height_offset→path_height_offset;ignore_yremoved.NavigationObstacle*.estimate_radiusremoved;get_rid→get_agent_rid.NavigationServer*.agent_set_callback→agent_set_avoidance_callback.SubViewportContainer.mouse_filtermust be STOP/PASS for minimap/world SubViewports.
4.1 → 4.2
Official: Upgrading to Godot 4.2
PopupMenushortcut helpers gainallow_echo;cleargainsfree_submenus(build/rally context menus).
4.2 → 4.3
Official: Upgrading to Godot 4.3
- If the genre uses TileMap, migrate to
TileMapLayernodes before relying on layer APIs. - If the genre ships multiplayer, upgrade all peers to 4.3 together (
SceneMultiplayerprotocol). AStar2D/3D/Grid2D.get_*_pathgainallow_partial_path— useful when rally points are blocked.NavigationRegion2Dexperimental avoidance props removed with no replacement.- Default font outline color is black (was white) — retune selection HUD labels.
4.3 → 4.4
Official: Upgrading to Godot 4.4
NavigationServer2D/3D.query_pathgains optionalcallback— async path queries for large unit counts.
4.4 → 4.5
Official: Upgrading to Godot 4.5
- Nav regions update asynchronously by default (
navigation/world/region_use_async_iterations) — expect brief desync after terrain edits. - Navmesh merge order changed; edge merge errors may surface — tune
merge_rasterizer_cell_scale/ fix overlapping navmeshes.
4.5 → 4.6
Official: Upgrading to Godot 4.6
- Retune Environment glow/fog if the genre leans on bloom-heavy looks (strategic zoom/post).
AStar*.get_point_path/get_id_pathreturn empty path whenfrom_idis disabled/solid — guard blocked rally nodes.
4.6 → 4.7
Official: Upgrading to Godot 4.7
- Confirm project stretch mode and
AudioStreamPlayer.area_maskafter opening in 4.7. Control.accessibility_liveusesAccessibilityServer.AccessibilityLiveMode— selection/resource readouts.CanvasItemno longer adds antialiasing feather that thickened lines — widen box-select overlay strokes if needed.