Easy Save 3, not saving (Playmaker) then crashing builds

Discussion and help for Easy Save 3
Helperrr
Posts: 9
Joined: Fri Mar 15, 2019 4:38 pm

Easy Save 3, not saving (Playmaker) then crashing builds

Post by Helperrr »

Hello, I have run into a problem where ES3 is not saving properly. Here is a quick recap of what happened.

Using Unity 2017 3.0 and when I make a build on Android, I would get error messages. Looked it up and its fixed in 2017 4.0 so I zipped my project and installed 2017 4.5 to be safe. After importing, everything was fine on Mac + WebGL but Android would always crash on building. Unity error logs said buffer overflow but never specified what or where... until a day later. It was saying an error about ES3, so I deleted everything Easy Save from the project. It worked fine in 4.5, downgraded to 3.0 and still works fine. Went back to 4.5 and added Easy Save3. Then I got the below error message
FormatException: File is not valid JSON. Expected '{' at beginning of file, but found ' '. ES3Internal.ES3JSONReader..ctor (System.IO.Stream stream, ES3Settings settings, System.Boolean readHeaderAndFooter) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3JSONReader.cs:39) ES3Reader.Create (ES3Settings settings) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:314)
Found the forum which advised to delete the file. I did, and the first run afterwards it created the file and it was working great. The second time I ran it, i got above error message again. After a bit of testing, it seems its always fine the first delete, but when it tries to use the same file, it errors out again. Playing around with all the settings, I believe the change to save to Player Prefs in Runtime did it. No more errors, changing it back to file, again no errors. Now it does create the ES3 file and worked for a little bit... but now I have a new error. The below shows up as a single line in Unity console, but it does repeat about 10x.

The android build takes about 10-15 minutes on Scene1 and then crashes with the error message below. Normally it builds the whole thing in 2 minutes or less.
StackOverflowException: The requested operation caused a stack overflow.
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:15)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
ES3ReferenceMgr.GenerateReferences () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr.OnBeforeSerialize () (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
User avatar
Joel
Moodkie Staff
Posts: 4849
Joined: Wed Nov 07, 2012 10:32 pm

Re: Easy Save 3, not saving (Playmaker) then crashing builds

Post by Joel »

Hi there,

The error message you're getting shows that the data in the file which is being loaded from is not valid JSON, as it does not start with a '{'.

The main causes of this are trying to load encrypted data without telling the PlayMaker action that you're using encryption.

Another cause is that the data has become corrupted (for example, there is test data left over from a previous build). In this case, deleting the save data from the device will fix the issue. Usually deleting the app will delete the save data, but you may want to check that this is the case for your specific version of Android.

All the best,
Joel
Joel @ Moodkie Interactive
Purchase Easy Save | Contact | Guides | Docs | Getting started
Helperrr
Posts: 9
Joined: Fri Mar 15, 2019 4:38 pm

Re: Easy Save 3, not saving (Playmaker) then crashing builds

Post by Helperrr »

Thanks for the quick reply, though I am unsure how existing data in the Unity Editor would impact its ability to build the android apk. I did clear the ES3 save file and player prefs and tried rebuilding. It did not crash, and produced an APK after 20 minutes and did provide the same errors of stack overflow. I also tried going into ES3 turning encryption from AES to OFF. Also turned off encryption for on application quit in settings just to be safe... and deleted es save file as well. It took 20 min and errored out.

Here is where the errors happened in the unity logs
----- Total AssetImport time: 0.774445s, AssetImport time: 0.000000s, Asset hashing: 0.000000s [0 B, 0.000000 mb/s]

Opening scene 'Temp/__Backupscenes/0.backup'
Load scene 'Temp/__Backupscenes/0.backup' time: 0.061087 ms
Unloading 272 Unused Serialized files (Serialized files now loaded: 0)
System memory in use before: 409.5 MB.
System memory in use after: 408.2 MB.

Unloading 2674 unused Assets to reduce memory usage. Loaded Objects now: 6038.
Total: 129.319754 ms (FindLiveObjects: 2.064766 ms CreateObjectMapping: 0.845274 ms MarkObjects: 104.933498 ms DeleteObjects: 21.474179 ms)

Stack overflow in unmanaged: IP: 0x134ba6ab1, fault addr: 0x7ffeef408ff8
StackOverflowException: The requested operation caused a stack overflow.
at (wrapper managed-to-native) UnityEditor.BuildPipeline:get_isBuildingPlayer ()
at ES3ReferenceMgr.OnBeforeSerialize () [0x00001] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:15
at (wrapper managed-to-native) UnityEditor.EditorUtility:CollectDependencies (UnityEngine.Object[])
at ES3ReferenceMgr.GenerateReferences () [0x0003a] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44
at ES3ReferenceMgr.OnBeforeSerialize () [0x0000d] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17
another part of the log


UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.EditorUtility:CollectDependencies(Object[])
ES3ReferenceMgr:GenerateReferences() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44)
ES3ReferenceMgr:OnBeforeSerialize() (at Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17)
UnityEditor.BuildPipeline:BuildPlayerInternalNoCheck(String[], String, String, BuildTargetGroup, BuildTarget, BuildOptions, Boolean)
UnityEditor.DefaultBuildMethods:BuildPlayer(BuildPlayerOptions) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:164)
UnityEditor.BuildPlayerWindow:CallBuildMethods(Boolean, BuildOptions) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:88)
UnityEditor.BuildPlayerWindow:BuildPlayerAndRun(Boolean) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindow.cs:173)
UnityEditor.BuildPlayerWindow:GUIBuildButtons(IBuildWindowExtension, Boolean, Boolean, Boolean, BuildPlatform) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindow.cs:888)
UnityEditor.BuildPlayerWindow:ShowBuildTargetSettings() (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindow.cs:812)
UnityEditor.BuildPlayerWindow:OnGUI() (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindow.cs:426)
System.Reflection.MonoMethod:InternalInvoke(MonoMethod, Object, Object[], Exception&)
System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:305)
System.Reflection.MethodBase:Invoke(Object, Object[]) (at /Users/builduser/buildslave/mono/build/mcs/class/referencesource/mscorlib/system/reflection/methodbase.cs:229)
UnityEditor.HostView:Invoke(String, Object) (at /Users/builduser/buildslave/unity/build/Editor/Mono/HostView.cs:295)
UnityEditor.HostView:Invoke(String) (at /Users/builduser/buildslave/unity/build/Editor/Mono/HostView.cs:288)
UnityEditor.HostView:OldOnGUI() (at /Users/builduser/buildslave/unity/build/Editor/Mono/HostView.cs:107)
UnityEngine.Experimental.UIElements.IMGUIContainer:DoOnGUI(Event) (at /Users/builduser/buildslave/unity/build/Runtime/UIElements/Managed/IMGUIContainer.cs:182)
UnityEngine.Experimental.UIElements.IMGUIContainer:HandleIMGUIEvent(Event) (at /Users/builduser/buildslave/unity/build/Runtime/UIElements/Managed/IMGUIContainer.cs:338)
UnityEngine.Experimental.UIElements.IMGUIContainer:HandleEvent(EventBase) (at /Users/builduser/buildslave/unity/build/Runtime/UIElements/Managed/IMGUIContainer.cs:322)
UnityEngine.Experimental.UIElements.EventDispatcher:DispatchEvent(EventBase, IPanel) (at /Users/builduser/buildslave/unity/build/Runtime/UIElements/Managed/EventDispatcher.cs:250)
UnityEngine.Experimental.UIElements.UIElementsUtility:DoDispatch(BaseVisualElementPanel) (at /Users/builduser/buildslave/unity/build/Runtime/UIElements/Managed/UIElementsUtility.cs:256)
UnityEngine.Experimental.UIElements.UIElementsUtility:ProcessEvent(Int32, IntPtr) (at /Users/builduser/buildslave/unity/build/Runtime/UIElements/Managed/UIElementsUtility.cs:78)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr) (at /Users/builduser/buildslave/unity/build/Runtime/IMGUI/Managed/GUIUtility.cs:175)

(Filename: Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs Line: 15)
User avatar
Joel
Moodkie Staff
Posts: 4849
Joined: Wed Nov 07, 2012 10:32 pm

Re: Easy Save 3, not saving (Playmaker) then crashing builds

Post by Joel »

Hi there,

The error I was responding to was your first error, which doesn't seem to be a build time error.

Looking at the build errors you're receiving, looks like this may be related to a bug we reported to Unity regarding their CollectDependencies method. Could you go to Window > Easy Save 3 > Settings and uncheck Auto Update Reference, and see if that fixes the issue?

All the best,
Joel
Joel @ Moodkie Interactive
Purchase Easy Save | Contact | Guides | Docs | Getting started
Helperrr
Posts: 9
Joined: Fri Mar 15, 2019 4:38 pm

Re: Easy Save 3, not saving (Playmaker) then crashing builds

Post by Helperrr »

I unchecked Auto Update References and it looks like it built an android APK, but it did build with the same errors again. By chance, I am using experimental .net 4.6 and changed back to the stable .net 3.5 stable with .net 2.0 subset. Attempted a build and got the following error message in the unity log, despite unity crashing during the build. I am guessing the stack overflow is related to ES3 as the previous ones were.
[00:00:00] Enlighten: Precompute started.
[PathTracer] Issuing atlassing job. Atlas hash: bc06a9703e5ae257241f86e6e5e9cb62, width: 1024, height: 1024
[00:00:00] Enlighten: Finished 1 Layout Systems job (0.00s execute, 0.00s integrate, 0.01s wallclock)
[00:00:00] Enlighten: Finished 1 Tetrahedralize Probes job (0.00s execute, 0.00s integrate, 0.01s wallclock)
[00:00:00] Enlighten: Precompute took 0.022826 seconds.
Enlighten scene contents: 0 geometries. 0 instances. 0 systems. 0 probe groups. 0 cube maps. Scene is up-to-date.
[00:00:00] Enlighten: Bake started.
[PathTracer][LP] Issuing deduplication and tetrahedralization job. Combined: 80257199cfa681a16be5e09b3c2208f4, tetrahedralized probes: 00000000000000000000000000000000, non-tetrahedralized probes: 00000000000000000000000000000000, dependencies: 00000000000000000000000000000000
Setting up 1 worker threads for Enlighten.
Thread -> id: 70001925d000 -> priority: 1
Failed to free the context in 1000 milli seconds
Compressing using quality level 127
Launching external process: /Applications/Unity 2017 4.5/Unity 2017 4.5.app/Contents/Tools/JobProcess
[PathTracer][LP] Integrating deduplicated and tetrahedralized probes for hash 80257199cfa681a16be5e09b3c2208f4.
[00:00:00] Enlighten: Finished 1 Bake Runtime job (0.02s execute, 0.00s integrate, 0.03s wallclock)
[00:00:00] Enlighten: Bake took 0.032653 seconds.
[PathTracer] Common reset.
[PathTracer] Lightmap reset.
[PathTracer][LP] Light probes reset.
[PathTracer] building lightmap data asset.
WARNING: Shader Unsupported: 'Hidden/Post FX/Depth Of Field' - Pass 'COC TEMPORAL FILTER' has no vertex shader
WARNING: Shader Unsupported: 'Hidden/Post FX/Eye Adaptation' - Pass '' has no vertex shader
WARNING: Shader Unsupported: 'Hidden/Post FX/Eye Adaptation' - Setting to default shader.
WARNING: Shader Unsupported: 'Hidden/Post FX/Temporal Anti-aliasing' - Pass '' has no vertex shader
WARNING: Shader Unsupported: 'Hidden/BlitToDepth' - Pass '' has no vertex shader
WARNING: Shader Unsupported: 'Hidden/BlitToDepth' - Setting to default shader.
WARNING: Shader Unsupported: 'Hidden/BlitToDepth_MSAA' - Pass '' has no vertex shader
WARNING: Shader Unsupported: 'Hidden/BlitToDepth_MSAA' - Setting to default shader.
WARNING: 320949344 format is not supported, decompressing texture
WARNING: 320948640 format is not supported, decompressing texture
WARNING: 320948192 format is not supported, decompressing texture
WARNING: 320947360 format is not supported, decompressing texture
WARNING: 320946656 format is not supported, decompressing texture
Opening scene 'Assets/Scenes/MainScene.unity'
Load scene 'Assets/Scenes/MainScene.unity' time: 0.038428 ms
Unloading 243 Unused Serialized files (Serialized files now loaded: 0)
WARNING: 320788320 format is not supported, decompressing texture
System memory in use before: 451.1 MB.
System memory in use after: 450.2 MB.

Unloading 2616 unused Assets to reduce memory usage. Loaded Objects now: 6297.
Total: 54.310864 ms (FindLiveObjects: 1.324739 ms CreateObjectMapping: 0.584421 ms MarkObjects: 42.535437 ms DeleteObjects: 9.864614 ms)

Couldn't extract exception string from exception (another exception of class 'StackOverflowException' was thrown while processing the stack trace)


(Error: -281004256 Filename: Line: 4)

Couldn't extract exception string from exception (another exception of class 'StackOverflowException' was thrown while processing the stack trace)
Couldn't extract exception string from exception (another exception of class 'StackOverflowException' was thrown while processing the stack trace)


(Error: -281003104 Filename: Line: 4)



(Error: 863818699 Filename: Line: 0)

Couldn't extract exception string from exception (another exception of class 'StackOverflowException' was thrown while processing the stack trace)


(Error: -281004256 Filename: Line: 4)
Helperrr
Posts: 9
Joined: Fri Mar 15, 2019 4:38 pm

Re: Easy Save 3, not saving (Playmaker) then crashing builds

Post by Helperrr »

Playing the game in the editor with no encryption and Unchecked Auto Update References and deleted the local ES3 file, i am getting the following error upon a scene reload
CryptographicException: Invalid input block size.
Mono.Security.Cryptography.SymmetricTransform.FinalDecrypt (System.Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount)
Mono.Security.Cryptography.SymmetricTransform.TransformFinalBlock (System.Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount)
System.Security.Cryptography.CryptoStream.Read (System.Byte[] buffer, Int32 offset, Int32 count) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Security.Cryptography/CryptoStream.cs:205)
ES3Internal.EncryptionAlgorithm.CopyStream (System.IO.Stream input, System.IO.Stream output, Int32 bufferSize) (at Assets/Plugins/Easy Save 3/Scripts/ES3Crypto.cs:38)
ES3Internal.AESEncryptionAlgorithm.Decrypt (System.IO.Stream input, System.IO.Stream output, System.String password, Int32 bufferSize) (at Assets/Plugins/Easy Save 3/Scripts/ES3Crypto.cs:139)
ES3Internal.UnbufferedCryptoStream..ctor (System.IO.Stream stream, Boolean isReadStream, System.String password, Int32 bufferSize, ES3Internal.EncryptionAlgorithm alg) (at Assets/Plugins/Easy Save 3/Scripts/ES3Crypto.cs:165)
(wrapper remoting-invoke-with-check) ES3Internal.UnbufferedCryptoStream:.ctor (System.IO.Stream,bool,string,int,ES3Internal.EncryptionAlgorithm)
ES3Internal.ES3Stream.CreateStream (.ES3Settings settings, ES3FileMode fileMode) (at Assets/Plugins/Easy Save 3/Scripts/Streams/ES3Stream.cs:62)
ES3Reader.Create (.ES3Settings settings) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:308)
ES3Writer.Merge () (at Assets/Plugins/Easy Save 3/Scripts/Writers/ES3Writer.cs:365)
ES3Writer.Save (Boolean overwriteKeys) (at Assets/Plugins/Easy Save 3/Scripts/Writers/ES3Writer.cs:395)
ES3Writer.Save () (at Assets/Plugins/Easy Save 3/Scripts/Writers/ES3Writer.cs:387)
ES3.Save[GameObject[]] (System.String key, System.Object value, .ES3Settings settings) (at Assets/Plugins/Easy Save 3/Scripts/ES3.cs:41)
ES3AutoSaveMgr.Save () (at Assets/Plugins/Easy Save 3/Scripts/Auto Save/ES3AutoSaveMgr.cs:37)
ES3AutoSaveMgr.OnApplicationQuit () (at Assets/Plugins/Easy Save 3/Scripts/Auto Save/ES3AutoSaveMgr.cs:62)
User avatar
Joel
Moodkie Staff
Posts: 4849
Joined: Wed Nov 07, 2012 10:32 pm

Re: Easy Save 3, not saving (Playmaker) then crashing builds

Post by Joel »

Hi there,

It looks like there's an Auto Save component in your scene. Is this intended?

This error message occurs when an Auto Save component tries to load encrypted data from an unencrypted file.

All the best,
Joel
Joel @ Moodkie Interactive
Purchase Easy Save | Contact | Guides | Docs | Getting started
Helperrr
Posts: 9
Joined: Fri Mar 15, 2019 4:38 pm

Re: Easy Save 3, not saving (Playmaker) then crashing builds

Post by Helperrr »

I did have some extra Easy Save components added. I removed them and the cryptography errors went away, but the stack overflow error came back when I create an android apk. Any other suggestions?

----- Total AssetImport time: 0.804965s, AssetImport time: 0.346406s, Asset hashing: 0.000669s [1.8 KB, 2.645801 mb/s]

Stack overflow in unmanaged: IP: 0x13512ef8b, fault addr: 0x7ffeef408ff8
StackOverflowException: The requested operation caused a stack overflow.
at (wrapper managed-to-native) UnityEditor.BuildPipeline:get_isBuildingPlayer ()
at ES3ReferenceMgr.OnBeforeSerialize () [0x00001] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:15
at (wrapper managed-to-native) UnityEditor.EditorUtility:CollectDependencies (UnityEngine.Object[])
at ES3ReferenceMgr.GenerateReferences () [0x0003a] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44
at ES3ReferenceMgr.OnBeforeSerialize () [0x0000d] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17
at (wrapper managed-to-native) UnityEditor.EditorUtility:CollectDependencies (UnityEngine.Object[])
at ES3ReferenceMgr.OnBeforeSerialize () [0x00001] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:15
at (wrapper managed-to-native) UnityEditor.EditorUtility:CollectDependencies (UnityEngine.Object[])
at ES3ReferenceMgr.GenerateReferences () [0x0003a] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44
at ES3ReferenceMgr.OnBeforeSerialize () [0x0000d] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17
at (wrapper managed-to-native) UnityEditor.EditorUtility:CollectDependencies (UnityEngine.Object[])
User avatar
Joel
Moodkie Staff
Posts: 4849
Joined: Wed Nov 07, 2012 10:32 pm

Re: Easy Save 3, not saving (Playmaker) then crashing builds

Post by Joel »

Hi there,

I've had reports from others that the settings in the Settings window might not be persisting.

Please could you go to Assets/Plugins/Easy Save 3/Resources/ES3/, click the ES3 Default Settings object, and uncheck the Auto Update References box on the Component attached to it? This will manually change the setting so it's not relying on Editor code.

All the best,
Joel
Joel @ Moodkie Interactive
Purchase Easy Save | Contact | Guides | Docs | Getting started
Helperrr
Posts: 9
Joined: Fri Mar 15, 2019 4:38 pm

Re: Easy Save 3, not saving (Playmaker) then crashing builds

Post by Helperrr »

When I checked the ES3 Default Settings, it shows:

Checked: Add Mgr To Scene Automatically
Unchecked: Auto Update References

---edit---
found some more info in the logs that might be helpful

----- Total AssetImport time: 0.821322s, AssetImport time: 0.358088s, Asset hashing: 0.000541s [0.8 KB, 1.412263 mb/s]

Stack overflow in unmanaged: IP: 0x1348ddf7d, fault addr: 0x7ffeef408ff8
Couldn't extract exception string from exception (another exception of class 'NullReferenceException' was thrown while processing the stack trace)


(Error: 17101243 Filename: Line: 0)

Stack overflow in unmanaged: IP: 0x1011ee19a, fault addr: 0x7ffeef408fec
Couldn't extract exception string from exception (another exception of class 'NullReferenceException' was thrown while processing the stack trace)


(Error: 17101243 Filename: Line: 0)

....
Total: 139.686040 ms (FindLiveObjects: 1.701251 ms CreateObjectMapping: 0.700649 ms MarkObjects: 112.281940 ms DeleteObjects: 25.001037 ms)

Stack overflow in unmanaged: IP: 0x1347bc9a4, fault addr: 0x7ffeef408e58
StackOverflowException: The requested operation caused a stack overflow.
at (wrapper managed-to-native) UnityEditor.BuildPipeline:get_isBuildingPlayer ()
at ES3ReferenceMgr.OnBeforeSerialize () [0x00001] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:15
at (wrapper managed-to-native) UnityEditor.EditorUtility:CollectDependencies (UnityEngine.Object[])
at ES3ReferenceMgr.GenerateReferences () [0x0003a] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:44
at ES3ReferenceMgr.OnBeforeSerialize () [0x0000d] in /Users/s1/Desktop/Block/Assets/Plugins/Easy Save 3/Scripts/ES3ReferenceMgr.cs:17
Last edited by Helperrr on Thu Mar 21, 2019 8:50 pm, edited 2 times in total.
Post Reply