# Saving failed

**URL:** https://community.revolutionarygamesstudio.com/t/saving-failed/6964
**Category:** Bug Reports
**Created:** [November 3, 2023, 11:26am UTC](https://community.revolutionarygamesstudio.com/t/saving-failed/6964 "2023-11-03T11:26:06Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Dracalia](https://thrivecommunity-cdn.b-cdn.net/user_avatar/community.revolutionarygamesstudio.com/dracalia/32/11692_2.png) [@Dracalia](https://community.revolutionarygamesstudio.com/u/Dracalia)
#### Post date: [November 3, 2023, 11:26am UTC](https://community.revolutionarygamesstudio.com/t/saving-failed/6964/1 "2023-11-03T11:26:06Z")

</div>

> Error copied to clipboard

Error Saving - Saving failed! An exception happened exception: System.ObjectDisposedException: Cannot access a disposed object.  
Object name: ‘PlacedOrganelle’.  
at Godot.Object.GetPtr (Godot.Object instance) [0x0001c] in \<1598dd9b7b214c39a3e18009cd4aff45\>:0  
at Godot.Object.ToString () [0x00000] in \<1598dd9b7b214c39a3e18009cd4aff45\>:0  
at System.Text.StringBuilder.AppendFormatHelper (System.IFormatProvider provider, System.String format, System.ParamsArray args) [0x0037e] in \<02071a39c8a34187bdd1f58e4be38764\>:0  
at System.String.FormatHelper (System.IFormatProvider provider, System.String format, System.ParamsArray args) [0x00023] in \<02071a39c8a34187bdd1f58e4be38764\>:0  
at System.String.Format (System.String format, System.Object arg0) [0x00008] in \<02071a39c8a34187bdd1f58e4be38764\>:0  
at NodeGroupSaveHelper.WriteGroups (Newtonsoft.Json.JsonWriter writer, Godot.Node value, Newtonsoft.Json.JsonSerializer serializer) [0x00059] in \<610b0ccf017b4e09901b773422159c74\>:0  
at BaseNodeConverter.WriteCustomExtraFields (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.JsonSerializer serializer) [0x00000] in \<610b0ccf017b4e09901b773422159c74\>:0  
at BaseThriveConverter.WriteJson (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.JsonSerializer serializer) [0x00264] in \<610b0ccf017b4e09901b773422159c74\>:0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeConvertable (Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonConverter converter, System.Object value, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x0008a] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContract valueContract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x00071] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList (Newtonsoft.Json.JsonWriter writer, System.Collections.IEnumerable values, Newtonsoft.Json.Serialization.JsonArrayContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x000d6] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContract valueContract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x000d6] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00079] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerProxy.SerializeInternal (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type rootType) [0x00008] in :0  
at Newtonsoft.Json.JsonSerializer.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00000] in :0  
at BaseThriveConverter.WriteMember (System.String name, System.Object memberValue, System.Type memberType, System.Type objectType, Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonSerializer serializer) [0x00012] in \<610b0ccf017b4e09901b773422159c74\>:0  
at BaseThriveConverter.WriteJson (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.JsonSerializer serializer) [0x00197] in \<610b0ccf017b4e09901b773422159c74\>:0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeConvertable (Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonConverter converter, System.Object value, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x0008a] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContract valueContract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x00071] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00079] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerProxy.SerializeInternal (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type rootType) [0x00008] in :0  
at Newtonsoft.Json.JsonSerializer.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00000] in :0  
at BaseThriveConverter.WriteMember (System.String name, System.Object memberValue, System.Type memberType, System.Type objectType, Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonSerializer serializer) [0x00012] in \<610b0ccf017b4e09901b773422159c74\>:0  
at BaseThriveConverter.WriteJson (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.JsonSerializer serializer) [0x00197] in \<610b0ccf017b4e09901b773422159c74\>:0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeConvertable (Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonConverter converter, System.Object value, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x0008a] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContract valueContract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x00071] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList (Newtonsoft.Json.JsonWriter writer, System.Collections.IEnumerable values, Newtonsoft.Json.Serialization.JsonArrayContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x000d6] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContract valueContract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x000d6] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00079] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerProxy.SerializeInternal (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type rootType) [0x00008] in :0  
at Newtonsoft.Json.JsonSerializer.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00000] in :0  
at BaseThriveConverter.WriteMember (System.String name, System.Object memberValue, System.Type memberType, System.Type objectType, Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonSerializer serializer) [0x00012] in \<610b0ccf017b4e09901b773422159c74\>:0  
at BaseThriveConverter.WriteJson (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.JsonSerializer serializer) [0x00197] in \<610b0ccf017b4e09901b773422159c74\>:0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeConvertable (Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonConverter converter, System.Object value, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x0008a] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContract valueContract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x00071] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00079] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerProxy.SerializeInternal (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type rootType) [0x00008] in :0  
at Newtonsoft.Json.JsonSerializer.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00000] in :0  
at BaseThriveConverter.WriteMember (System.String name, System.Object memberValue, System.Type memberType, System.Type objectType, Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonSerializer serializer) [0x00012] in \<610b0ccf017b4e09901b773422159c74\>:0  
at BaseThriveConverter.WriteJson (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.JsonSerializer serializer) [0x00197] in \<610b0ccf017b4e09901b773422159c74\>:0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeConvertable (Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonConverter converter, System.Object value, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x0008a] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContract valueContract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x00071] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00079] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerProxy.SerializeInternal (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type rootType) [0x00008] in :0  
at Newtonsoft.Json.JsonSerializer.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00000] in :0  
at BaseThriveConverter.WriteMember (System.String name, System.Object memberValue, System.Type memberType, System.Type objectType, Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonSerializer serializer) [0x00012] in \<610b0ccf017b4e09901b773422159c74\>:0  
at BaseThriveConverter.WriteJson (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.JsonSerializer serializer) [0x00242] in \<610b0ccf017b4e09901b773422159c74\>:0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeConvertable (Newtonsoft.Json.JsonWriter writer, Newtonsoft.Json.JsonConverter converter, System.Object value, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x0008a] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContract valueContract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x00071] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeObject (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract collectionContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x0008d] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeValue (Newtonsoft.Json.JsonWriter writer, System.Object value, Newtonsoft.Json.Serialization.JsonContract valueContract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty) [0x000b2] in :0  
at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00079] in :0  
at Newtonsoft.Json.JsonSerializer.SerializeInternal (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x0023a] in :0  
at Newtonsoft.Json.JsonSerializer.Serialize (Newtonsoft.Json.JsonWriter jsonWriter, System.Object value, System.Type objectType) [0x00000] in :0  
at Newtonsoft.Json.JsonConvert.SerializeObjectInternal (System.Object value, System.Type type, Newtonsoft.Json.JsonSerializer jsonSerializer) [0x00028] in :0  
at Newtonsoft.Json.JsonConvert.SerializeObject (System.Object value, System.Type type, Newtonsoft.Json.Formatting formatting, Newtonsoft.Json.JsonSerializerSettings settings) [0x0000e] in :0  
at ThriveJsonConverter+\<\>c\_\_DisplayClass10\_0.b\_\_0 (Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in \<610b0ccf017b4e09901b773422159c74\>:0  
at ThriveJsonConverter.PerformWithSettings[T] (System.Func`2[T,TResult] func) [0x00068] in <610b0ccf017b4e09901b773422159c74>:0 at ThriveJsonConverter.PerformWithSettings[T] (System.Func`2[T,TResult] func) [0x000a5] in \<610b0ccf017b4e09901b773422159c74\>:0  
at ThriveJsonConverter.SerializeObject (System.Object object, System.Type type) [0x00014] in \<610b0ccf017b4e09901b773422159c74\>:0  
at Save.SaveToFile () [0x0000b] in \<610b0ccf017b4e09901b773422159c74\>:0  
at SaveHelper.PerformSave (InProgressSave inProgress, Save save) [0x00025] in \<610b0ccf017b4e09901b773422159c74\>:0

> json\_debug.txt  
> [Saving crash thrive - Pastebin.com](https://pastebin.com/x80nfb2k)

---

<div class="post-metadata">

### Author: ![hhyyrylainen](https://thrivecommunity-cdn.b-cdn.net/user_avatar/community.revolutionarygamesstudio.com/hhyyrylainen/32/32_2.png) [@hhyyrylainen](https://community.revolutionarygamesstudio.com/u/hhyyrylainen)
#### Post date: [November 3, 2023, 11:45am UTC](https://community.revolutionarygamesstudio.com/t/saving-failed/6964/2 "2023-11-03T11:45:09Z")

</div>

I removed the crash tag as a saving failure is not a crash.

This is an issue that’s been known for a while:

> <https://github.com/Revolutionary-Games/Thrive/issues/3911>
>
> Again a save error with the attempting to engulf stuff (apparently fixing https:…//github.com/Revolutionary-Games/Thrive/issues/3474 didn't fully fix it).
> 
> Here's the relevant debug log:
> \`\`\`
> 2022-12-05T08:59:37.053 Info Finished serializing CompoundBag with converter DefaultThriveJSONConverter. Path 'MicrobeStage.Camera.ObjectToFollow.attemptingToEngulf\[0\].Compounds'.
> 2022-12-05T08:59:37.053 Info Started serializing EntityReference\`1\[Microbe\] with converter EntityReferenceConverter. Path 'MicrobeStage.Camera.ObjectToFollow.attemptingToEngulf\[0\].HostileEngulfer'.
> 2022-12-05T08:59:37.053 Info Writing object reference to Id '13390' for Microbe. Path 'MicrobeStage.Camera.ObjectToFollow.attemptingToEngulf\[0\].HostileEngulfer'.
> 2022-12-05T08:59:37.053 Info Finished serializing EntityReference\`1\[Microbe\] with converter EntityReferenceConverter. Path 'MicrobeStage.Camera.ObjectToFollow.attemptingToEngulf\[0\].HostileEngulfer'.
> 2022-12-05T08:59:37.061 Error Error serializing System.Collections.Generic.HashSet\`1\[IEngulfable\]. Cannot access a disposed object.
> Object name: 'FloatingChunk'. Path 'MicrobeStage.Camera.ObjectToFollow.attemptingToEngulf\[0\]'.
> 2022-12-05T08:59:37.061 Error Error serializing Microbe. Cannot access a disposed object.
> Object name: 'FloatingChunk'. Path 'MicrobeStage.Camera.ObjectToFollow.attemptingToEngulf\[0\].NodeGroups'.
> 2022-12-05T08:59:37.061 Error Error serializing MicrobeCamera. Cannot access a disposed object.
> Object name: 'FloatingChunk'. Path 'MicrobeStage.Camera.ObjectToFollow.attemptingToEngulf\[0\].NodeGroups'.
> 2022-12-05T08:59:37.061 Error Error serializing Save. Cannot access a disposed object.
> Object name: 'FloatingChunk'. Path 'MicrobeStage.Camera.ObjectToFollow.attemptingToEngulf\[0\]'.
> \`\`\`
> 
> Full log: https://pastebin.com/EYp7SCCZ
> 
> Edit: reported here.

The good news is that the next release with the ECS refactor completely redoes how the game handles game entities, so the same bug is no longer possible.
