Copyright © 2025-2026 Candy ArtsUpgrades - Scenes
The upgrade doesn't move your 1.1.3 scenes into 1.2: the new Candy_DE folder starts with 1.2's own scenes, and yours remain in the 1.1.3 copy (Candy_DE/.Install/Candy_DE_1.1.3). The Upgrade Report lists them. Move back the scenes you need by hand.
Most 1.1.3 scenes work in 1.2 after a few changes, described below. Their 1.1.3 scripts no longer work, and the Chat scenes can't be reused.
Moving Scenes Back
• Move each file together with the [file].uid[/file] or [file].import[/file] file beside it. The file then retains its UID, and the scenes that reference it still load it.
• 1.2's Candy_UI.tscn, Testing_Scene.tscn and Default.tscn scenes work as they are. Apply your 1.1.3 changes to them, rather than replacing them with your 1.1.3 versions.
• A scene folder setting that pointed to a folder you created inside Candy_DE now points to 1.2's default folder. The Upgrade Report names these settings: set them again once your scenes are moved back (see Scene folders, on the Data page).
Scripts
Every scene requires its corresponding 1.2 script. A scene whose script retains its name and folder in 1.2 receives the 1.2 version of the script through the script's path: Candy_Engine.gd, Choice_Menu.gd, the media players, the bubbles... The others must be attached by hand:
| 1.1.3 | 1.2 |
| Dialogue_Box.gd | Box_UI.gd |
| Portrait.gd | Merged into Box_UI.gd (see Portraits, below). |
| Subtitles.gd | Subtitles_UI.gd |
| Chat_Box.gd | Replaced by Chat_Box.gd, Chat_Channel.gd and Chat_Line.gd (see Chat, below). |
| Backgrounds.gd | BG_UI.gd |
| Bust_Scene.gd | VN_UI.gd |
| History_Display.gd | History_UI.gd |
| Input.gd | Input_UI/Input_Text.gd |
| BG_Player.gd, Bust_Player.gd | Removed. |
BG_Layer for the Background Scene, drawn behind the game world, VN_Layer for the VN Scene, and UI_Layer for the other UI Elements and the media players (see Drawing Order, on the UI page). Their paths in the Engine's ui_elements_paths and media_players_paths include the CanvasLayer: UI_Layer/DialogueBox, UI_Layer/MediaPlayers/MusicPlayer...
• Game code that accesses a node of the scene by its path must include the CanvasLayer: /root/candy_ui/DialogueBox becomes /root/candy_ui/UI_Layer/DialogueBox.
• Game code that set the layer or visible property of the scene's root must set them on the CanvasLayers instead.
• The EffectPlayer resolves its animation tracks from UI_Layer. A track that targets a node in another CanvasLayer starts with ../, such as ../BG_Layer/Backgrounds:modulate.
• A Dialogue UI of your own retains its root node type: an Engine node can be a CanvasLayer, a Node or any other type.
Speech Display
Text nodes
The dialogue_node setting of the dialogue box and the subtitles, and the speaker_node setting of the dialogue box, only accept RichTextLabel nodes. A Label assigned in 1.1.3 is discarded: replace it with a RichTextLabel.
Colours
Text and speaker colours are BBCode strings in 1.2: enable_text_color and text_color become enable_text_bbcode and text_bbcode, and the same applies to the speaker's colour. In 1.1.3, enable_text_color was enabled by default, with white text (black in bubbles and barks). In 1.2, enable_text_bbcode is disabled by default, and the text is displayed in the RichTextLabel's own colour.
Voice players
In 1.1.3, a single voice player, listed in the Engine's media players, played the voice of every Line. In 1.2, every UI Element that displays Spoken Lines (dialogue box, subtitles, chat, speech bubbles and bark bubbles) plays its own voice, through the node assigned to its voice_node setting. Add an AudioStreamPlayer with the Voice_Player.gd script to each of them (an AudioStreamPlayer2D or 3D with Voice_Player_2D.gd or Voice_Player_3D.gd for bubbles). A UI Element without a voice player plays no voice. See Voice Players.
Portraits
The portrait is part of the dialogue box in 1.2. Place your portrait nodes under the dialogue box, or assign them to its portrait settings (portrait_node, portrait_bg, portrait_fg, portrait_effect_player). Then set portrait_area to the node that is shown and hidden with the portrait, if it isn't portrait_node itself. See Dialogue Box.
Chat
The Chat was rebuilt in 1.2, as three scenes: Chat_Box, Chat_Channel and Chat_Line. A 1.1.3 chat scene can't be converted: build yours from 1.2's templates (see Chat).
Changed Defaults
Godot only stores the settings that differ from their default value. A setting your 1.1.3 scene left at its default therefore receives 1.2's default, which may differ:
| Setting | 1.1.3 default | 1.2 default |
| default_z of the background scene | 100 | 25 |
| default_z of the bust scene | 100 | 50 |
| Background frame rates | 1 fps for frame folders, 10 fps for spritesheets | 30 fps |
| Portrait frame rates | 1 fps for frame folders, 8 fps for spritesheets | 30 fps |