Migration notes: godot-genre-visual-novel
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
SubViewportContainer.mouse_filtermust be STOP/PASS for input to reach SubViewports (character portrait layers).- Layered SubViewportContainers needing mouse input may need Area2D replacements.
RichTextLabel.push_listgainsbullet;push_paragraphgains justification/tab_stops optionals.
4.1 → 4.2
Official: Upgrading to Godot 4.2
RichTextLabel.add_imagegainskey,pad,tooltip,size_in_percentoptionals.PopupMenushortcut helpers gainallow_echo;cleargainsfree_submenus.
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). - Default font outline color is black (was white) — retune dialogue/nameplate themes.
auto_translatedeprecated for Nodeauto_translate_mode(inherit semantics) — verify localized choice menus.RichTextLabel.push_metagainsunderline_mode.AcceptDialogregister/remove helpers take LineEdit/Button specifically.
4.3 → 4.4
Official: Upgrading to Godot 4.4
RichTextLabel.push_metagainstooltip;set_table_column_expandgainsshrink.
4.4 → 4.5
Official: Upgrading to Godot 4.5
add_image/update_image:size_in_percentreplaced bywidth_in_percentandheight_in_percent— set both for inline CG/sprite sizing.- CanvasItem/Font/TextLine draw APIs gain optional
oversampling. TreeItem.add_buttongainsalt_text(choice/history lists).
4.5 → 4.6
Official: Upgrading to Godot 4.6
- Retune Environment glow/fog if the genre leans on bloom-heavy looks (title screens, dream sequences).
Control.grab_focus/has_focusgain hide-focus options — useful for auto-advance vs keyboard focus.PopupMenu.submenu_popup_delaydefault 0.2 (was 0.3).
4.6 → 4.7
Official: Upgrading to Godot 4.7
- Confirm project stretch mode and
AudioStreamPlayer.area_maskafter opening in 4.7. width_in_percent/height_in_percent→width_unit/height_unitwithRichTextLabel.ImageUnit— migrate inline CG/sprite tags.ImageUpdateMask.UPDATE_WIDTH_IN_PERCENT→UPDATE_WIDTH_UNIT.add_image/update_imagewidth/height arefloat— NEVER pass bool percent flags.CanvasItemno longer adds antialiasing feather that thickened lines — widen dialogue box strokes if borders looked bolder.