Page 1 of 1

An FSM get call at start and cause a load error

Posted: Tue Dec 20, 2022 5:22 pm
by blackant
I don't get the point where it is possible to have this kind of situation, but I am in.
Screen2022-12-20 18 18 32.png
Screen2022-12-20 18 18 32.png (78.25 KiB) Viewed 1030 times
The error message attached:

Code: Select all

Environ Montagne(Clone) : FSM : Loading : Load : System.InvalidCastException: Specified cast is not valid.
  at HutongGames.PlayMaker.FsmVar.SetValue (System.Object value) [0x0006f] in C:\Projects\Playmaker_1.9.1\Projects\Playmaker.source.unity\Assets\PlayMaker\Classes\FsmVariables\FsmVar.cs:764 
  at ES3PlayMaker.Load.Enter () [0x000cf] in F:\Travail\Projets\Unity\Fitness VR\Fitness VR\Assets\Plugins\Easy Save 3\PlayMaker\ES3PlayMaker.cs:421 
  at ES3PlayMaker.ActionBase.OnEnter () [0x00000] in F:\Travail\Projets\Unity\Fitness VR\Fitness VR\Assets\Plugins\Easy Save 3\PlayMaker\ES3PlayMaker.cs:43 
UnityEngine.Debug:LogError (object,UnityEngine.Object)
HutongGames.PlayMaker.FsmLog:AddEntry (HutongGames.PlayMaker.FsmLogEntry,bool) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/FsmLog.cs:174)
HutongGames.PlayMaker.FsmLog:LogAction (HutongGames.PlayMaker.FsmLogType,string,bool) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/FsmLog.cs:363)
HutongGames.PlayMaker.FsmStateAction:LogError (string) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/FsmStateAction.cs:299)
ES3PlayMaker.ActionBase:HandleError (string) (at Assets/Plugins/Easy Save 3/PlayMaker/ES3PlayMaker.cs:65)
ES3PlayMaker.ActionBase:OnEnter () (at Assets/Plugins/Easy Save 3/PlayMaker/ES3PlayMaker.cs:47)
HutongGames.PlayMaker.FsmState:ActivateActions (int) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/FsmState.cs:222)
HutongGames.PlayMaker.FsmState:OnEnter () (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/FsmState.cs:192)
HutongGames.PlayMaker.Fsm:EnterState (HutongGames.PlayMaker.FsmState) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/Fsm.cs:3073)
HutongGames.PlayMaker.Fsm:SwitchState (HutongGames.PlayMaker.FsmState) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/Fsm.cs:3012)
HutongGames.PlayMaker.Fsm:SetState (string) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/Fsm.cs:2938)
ES3Types.ES3Type_Fsm:ReadObject<HutongGames.PlayMaker.Fsm> (ES3Reader,object) (at Assets/Plugins/Easy Save 3/PlayMaker/ES3PlayMaker.cs:1846)
ES3Types.ES3ObjectType:ReadInto<HutongGames.PlayMaker.Fsm> (ES3Reader,object) (at Assets/Plugins/Easy Save 3/Scripts/Types/ES3ObjectType.cs:77)
ES3Reader:ReadObject<HutongGames.PlayMaker.Fsm> (object,ES3Types.ES3Type) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:243)
ES3Reader:ReadInto<HutongGames.PlayMaker.Fsm> (object,ES3Types.ES3Type) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:296)
ES3Reader:ReadInto<HutongGames.PlayMaker.Fsm> (object) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:133)
ES3Types.ES3Type_PlayMakerFSM:ReadComponent<UnityEngine.Component> (ES3Reader,object) (at Assets/Plugins/Easy Save 3/PlayMaker/ES3PlayMaker.cs:1891)
ES3Types.ES3ComponentType:ReadUnityObject<UnityEngine.Component> (ES3Reader,object) (at Assets/Plugins/Easy Save 3/Scripts/Types/ES3ComponentType.cs:36)
ES3Types.ES3UnityObjectType:ReadObject<UnityEngine.Component> (ES3Reader,object) (at Assets/Plugins/Easy Save 3/Scripts/Types/ES3UnityObjectType.cs:64)
ES3Types.ES3ObjectType:ReadInto<UnityEngine.Component> (ES3Reader,object) (at Assets/Plugins/Easy Save 3/Scripts/Types/ES3ObjectType.cs:77)
ES3Types.ES3Type_GameObject:ReadComponents (ES3Reader,UnityEngine.GameObject) (at Assets/Plugins/Easy Save 3/Scripts/Types/Unity Types/ES3Type_GameObject.cs:222)
ES3Types.ES3Type_GameObject:ReadObject<object> (ES3Reader,object) (at Assets/Plugins/Easy Save 3/Scripts/Types/Unity Types/ES3Type_GameObject.cs:172)
ES3Types.ES3ObjectType:ReadInto<object> (ES3Reader,object) (at Assets/Plugins/Easy Save 3/Scripts/Types/ES3ObjectType.cs:77)
ES3Types.ES3Type_GameObject:ReadObject<object> (ES3Reader) (at Assets/Plugins/Easy Save 3/Scripts/Types/Unity Types/ES3Type_GameObject.cs:132)
ES3Types.ES3ObjectType:Read<object> (ES3Reader) (at Assets/Plugins/Easy Save 3/Scripts/Types/ES3ObjectType.cs:54)
ES3Types.ES3ObjectType:Read<object> (ES3Reader) (at Assets/Plugins/Easy Save 3/Scripts/Types/ES3ObjectType.cs:47)
ES3Reader:ReadObject<object> (ES3Types.ES3Type) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:253)
ES3Reader:Read<object> (ES3Types.ES3Type) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:282)
ES3Types.ES3CollectionType:ReadICollection<object> (ES3Reader,System.Collections.Generic.ICollection`1<object>,ES3Types.ES3Type) (at Assets/Plugins/Easy Save 3/Scripts/Types/Collection Types/ES3CollectionType.cs:52)
ES3Types.ES3ArrayType:Read (ES3Reader) (at Assets/Plugins/Easy Save 3/Scripts/Types/Collection Types/ES3ArrayType.cs:36)
ES3Reader:Read<object[]> (ES3Types.ES3Type) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:278)
ES3Reader:Read<object[]> () (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:126)
ES3Types.ES3Type_PMDataWrapper:ReadObject<ES3PlayMaker.PMDataWrapper> (ES3Reader,object) (at Assets/Plugins/Easy Save 3/PlayMaker/ES3PlayMaker.cs:1798)
ES3Types.ES3Type_PMDataWrapper:ReadObject<ES3PlayMaker.PMDataWrapper> (ES3Reader) (at Assets/Plugins/Easy Save 3/PlayMaker/ES3PlayMaker.cs:1810)
ES3Types.ES3ObjectType:Read<ES3PlayMaker.PMDataWrapper> (ES3Reader) (at Assets/Plugins/Easy Save 3/Scripts/Types/ES3ObjectType.cs:54)
ES3Reader:ReadObject<ES3PlayMaker.PMDataWrapper> (ES3Types.ES3Type) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:253)
ES3Reader:Read<ES3PlayMaker.PMDataWrapper> (ES3Types.ES3Type) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:282)
ES3Reader:Read<ES3PlayMaker.PMDataWrapper> (string,ES3PlayMaker.PMDataWrapper) (at Assets/Plugins/Easy Save 3/Scripts/Readers/ES3Reader.cs:216)
ES3:Load<ES3PlayMaker.PMDataWrapper> (string,ES3PlayMaker.PMDataWrapper,ES3Settings) (at Assets/Plugins/Easy Save 3/Scripts/ES3.cs:491)
ES3PlayMaker.Load:Enter () (at Assets/Plugins/Easy Save 3/PlayMaker/ES3PlayMaker.cs:412)
ES3PlayMaker.ActionBase:OnEnter () (at Assets/Plugins/Easy Save 3/PlayMaker/ES3PlayMaker.cs:43)
HutongGames.PlayMaker.FsmState:ActivateActions (int) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/FsmState.cs:222)
HutongGames.PlayMaker.FsmState:OnEnter () (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/FsmState.cs:192)
HutongGames.PlayMaker.Fsm:EnterState (HutongGames.PlayMaker.FsmState) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/Fsm.cs:3073)
HutongGames.PlayMaker.Fsm:SwitchState (HutongGames.PlayMaker.FsmState) (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/Fsm.cs:3012)
HutongGames.PlayMaker.Fsm:UpdateStateChanges () (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/Fsm.cs:2945)
HutongGames.PlayMaker.Fsm:Start () (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/Classes/Fsm.cs:2169)
PlayMakerFSM:Start () (at C:/Projects/Playmaker_1.9.1/Projects/Playmaker.source.unity/Assets/PlayMaker/PlayMakerFSM.cs:595)

Re: An FSM get call at start and cause a load error

Posted: Tue Dec 20, 2022 5:32 pm
by blackant
May it be related to this error i fund on another FSM ?

It seems to be able to find a KEY with name = "" and try to load it, causing an error.
Screen2022-12-20 18 30 21.png
Screen2022-12-20 18 30 21.png (80.44 KiB) Viewed 1029 times

Re: An FSM get call at start and cause a load error

Posted: Tue Dec 20, 2022 5:57 pm
by Joel
Hi there,

This error would indicate that the type of data in the file doesn't match the type of variable you're loading the data into.

First I recommend deleting your existing save data by going to Tools > Easy Save 3 > Clear Persistent Data Path, to ensure that you've not previously saved data of a different type to the file.

If this doesn't resolve the issue, and your Save action is saving the same type as your Load action is loading, please could you replicate this in a new project with a simple scene so that I can see what is happening.

All the best,
Joel

Re: An FSM get call at start and cause a load error

Posted: Tue Dec 20, 2022 6:25 pm
by blackant
The thing I really don't understand in this situation, is how can a state (in the first screenshot) be called and checked before the START Event has been called himself ?!

Re: An FSM get call at start and cause a load error

Posted: Tue Dec 20, 2022 6:26 pm
by blackant
Hooo... I just got it in mind....

I think because the name is "" it will load anything with this key.

Re: An FSM get call at start and cause a load error

Posted: Tue Dec 20, 2022 6:31 pm
by blackant
Also, Can a Key have a name with space ?
I just realized that mine is "GOSalle 4"

Re: An FSM get call at start and cause a load error

Posted: Wed Dec 21, 2022 7:38 am
by Joel
Hi there,

You cannot have an empty string as a key, but spaces in your key are fine.

Regarding Start not being called, to me it looks like it has been called and it’s just propagated down the chain of states. However, if this isn’t the case you would need to contact PlayMaker for support as this is part of their functionality.

All the best,
Joel