Saving with instanced scenes is nondeterministic.
Godot version: Master, built from 0b69be91d56e8983877ec5a48c219cf28a741903
OS/device including version: Windows
Issue description: When saving, the order in which external scenes are loaded and thus their index can randomly change. Other external resources seem fine.
To be clear, I am talking about these lines in a .tscn-file:
[ext_resource path="res://path_to_scene.tscn" type="PackedScene" id=16]
The order of such lines can change and thus the index/id will differ.
While this bug does not cause the scene to break, it generates a lot of clutter for version control.
Steps to reproduce:
- Have a scene use instances of many other scenes. Such a scene is provided.
- Save the scene and observe the changes in your scene file.
Minimal reproduction project:
nondeterminism.zip
The main scene is Test.tscn
. It consists of 10 MeshInstances using mesh1.tres
through mesh10.tres
. These external resources seem fine. It additionally contains instances of sub1.tscn
through sub10.tscn
. These resources get shuffled.