godot: Scene is invalid/corrupt according to the Godot editor, but works normally ingame
Godot version
4.1
System information
Ubuntu 22.04.2 LTS 22.04 - Vulkan (Forward+) - integrated Intel® HD Graphics 4400 (HSW GT2) () - Intel® Core™ i7-4600U CPU @ 2.10GHz (4 Threads)
Issue description
This is the tscn file:
[gd_scene load_steps=2 format=3 uid="uid://bgrpmpmsi1ae2"]
[ext_resource type="Script" path="res://src/UI/LevelEditor/UserLevelsMenu.gd" id="1_0uvtn"]
[node name="UserLevels" type="Control" node_paths=PackedStringArray("initial_focus")]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_0uvtn")
initial_focus = NodePath("MainContainer/Create")
[node name="MainContainer" type="VBoxContainer" parent="."]
layout_mode = 0
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -40.0
offset_top = -20.0
offset_right = 40.0
offset_bottom = 20.0
grow_horizontal = 2
grow_vertical = 2
[node name="Create" type="Button" parent="MainContainer"]
unique_name_in_owner = true
layout_mode = 2
button_mask = 0
text = "#create_new"
[node name="LevelContainer" type="VBoxContainer" parent="MainContainer"]
unique_name_in_owner = true
layout_mode = 2
theme_override_constants/separation = 9
[connection signal="pressed" from="MainContainer/Create" to="." method="_on_Create_pressed"]
It results in this:
And the following error: “scene/resources/packed_scene.cpp:92 - Condition “nc == 0” is true. Returning: nullptr”
It also creates adds an empty scene in the scenes tabbar, and when I click on it, it automatically closes, throwing the following two errors:
- editor/editor_data.cpp:683 - Index p_idx = 2 is out of bounds (edited_scene.size() = 2).
- editor/editor_data.cpp:745 - Index p_idx = 2 is out of bounds (edited_scene.size() = 2).
Steps to reproduce
Unknown, only happened to one of my scenes 😦
However, I can give some details surrounding the scene. I made it at some point during 4.0’s alphas. I probably never touched it since. In my git, it says it’s been unchanged for 5 months. However, I opened it yesterday. Not doing any changes to it, just opening it. It has a simple script, which opens normally.
Minimal reproduction project
Couldn’t, this happened on my major project (far too big to post)
About this issue
- Original URL
- State: closed
- Created a year ago
- Reactions: 1
- Comments: 31 (9 by maintainers)
Reproduction project: godot-bug-mwe-1-master.zip Bee.tscn can’t be opened in editor. Seems to be caused by preload.
This issues keeps reoccurring for me (4.2 rc2)…
Updated instruction on how to (temporarily) fix, since the above instructions not always worked for me (do each step for each corrupted scene file, as I found there can be more than one):
Here’s what working for me to fix this error: close editor, search in the .editor folder for all files containing the corrupted scene’s name (they are going to be name something like your_scene_name.tscn-editstate-2e5312b3e75d2338868814f479b1feeb.cfg), delete them, restart editor.
Got the error again, and the above steps did not help this time. What helped was: duplicate scene in a file explorer (not in Godot editor, since the error stays that way), open the duplicated scene (it opens without the error), ‘Save As’ the scene overwriting the original scene.
Had the exact same issue on 4.1.3 stable, and this fixed it!