Hi,
All my other scenes have an Autosave after? Ticked on their OnStart cutscene, and it works perfectly, except one scene. I cannot work our what would be causing this? Is there anything obvious you can think of that would cause this?
Recently updated to latest AC
Unity version 2018.2.18f1
Comments
This is the message in the console:
Cannot save at this time - either blocking ActionLists, a Conversation is active, or saving has been manually locked.
-> AC debug logger
UnityEngine.Debug:LogWarning(Object, Object)
AC.ACDebug:LogWarning(Object, Object) (at Assets/AdventureCreator/Scripts/Static/ACDebug.cs:25)
AC.ActionSaveHandle:PerformSaveOrLoad() (at Assets/AdventureCreator/Scripts/Actions/ActionSaveHandle.cs:140)
AC.ActionSaveHandle:Run() (at Assets/AdventureCreator/Scripts/Actions/ActionSaveHandle.cs:68)
AC.c__Iterator2:MoveNext() (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:365)
UnityEngine.MonoBehaviour:StartCoroutine(String, Object)
AC.ActionList:ProcessAction(Int32) (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:315)
AC.ActionList:ProcessActionEnd(ActionEnd, Int32, Boolean) (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:547)
AC.ActionList:EndActionParallel(ActionParallel) (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:566)
AC.c__Iterator2:MoveNext() (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:430)
UnityEngine.MonoBehaviour:StartCoroutine(String, Object)
AC.ActionList:ProcessAction(Int32) (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:315)
AC.ActionList:ProcessActionEnd(ActionEnd, Int32, Boolean) (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:547)
AC.ActionList:EndActionParallel(ActionParallel) (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:566)
AC.c__Iterator2:MoveNext() (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:430)
UnityEngine.MonoBehaviour:StartCoroutine(String, Object)
AC.ActionList:ProcessAction(Int32) (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:315)
AC.RuntimeActionList:BeginActionList(Int32, Boolean) (at Assets/AdventureCreator/Scripts/ActionList/RuntimeActionList.cs:135)
AC.ActionList:Interact(Int32, Boolean) (at Assets/AdventureCreator/Scripts/ActionList/ActionList.cs:186)
AC.RuntimeActionList:DownloadActions(ActionListAsset, Conversation, Int32, Boolean, Boolean, Boolean) (at Assets/AdventureCreator/Scripts/ActionList/RuntimeActionList.cs:117)
AC.AdvGame:RunActionListAsset(ActionListAsset, Conversation, Int32, Boolean, Boolean) (at Assets/AdventureCreator/Scripts/Static/AdvGame.cs:256)
AC.AdvGame:RunActionListAsset(ActionListAsset, Int32, Int32) (at Assets/AdventureCreator/Scripts/Static/AdvGame.cs:176)
AC.MenuButton:ProcessClick(Menu, Int32, MouseState) (at Assets/AdventureCreator/Scripts/Menu/Menu classes/MenuButton.cs:618)
AC.PlayerMenus:CheckClick(Menu, MenuElement, Int32, MouseState) (at Assets/AdventureCreator/Scripts/Controls/PlayerMenus.cs:2291)
AC.PlayerMenus:UpdateElements(Menu, Int32, Boolean) (at Assets/AdventureCreator/Scripts/Controls/PlayerMenus.cs:1537)
AC.PlayerMenus:UpdateMenu(Menu, Int32, Boolean, Boolean) (at Assets/AdventureCreator/Scripts/Controls/PlayerMenus.cs:1483)
AC.PlayerMenus:UpdateAllMenus() (at Assets/AdventureCreator/Scripts/Controls/PlayerMenus.cs:2106)
AC.StateHandler:Update() (at Assets/AdventureCreator/Scripts/Game engine/StateHandler.cs:329)
The error message points to three possible reasons this could be the case. Are any of them likely, e.g. another blocking ActionList is running at the same time?
The exact reason can be found by inserting Debug.Log statements into the PlayerMenus script's IsSavingLocked function, to work out which "return" statement is being called.
i have changed the code to the below but am getting no extra info in the console?:
public static bool IsSavingLocked (Action _actionToIgnore = null)
{
if (KickStarter.stateHandler.gameState == GameState.DialogOptions)
{
if (KickStarter.settingsManager.allowGameplayDuringConversations)
{
if (KickStarter.actionListManager.IsOverrideConversationRunning ())
{
Debug.Log("Return1");
return true;
}
}
else
{
Debug.Log("Return2");
return true;
}
}
You didn't put one before the last return statement, so I'm guessing it's the PlayerMenus script's lockSave property. Using the following would confirm this:
This property is only set to true when the Engine: Manage systems Action is used to prevent saving.
Added this and nothing comes up in the console except the cant save notification
Also, i now have it where there is no cant save notification, but it still wont autosave from the OnStart cutscene
all other scenes seem to
Also, everytime i load a game, i now get this message for all NPCs in scene..
NPC FrithelMEC cannot follow because no target was set.
I need full details - what did you do to remove the notification? I can't see how it would be possible for nothing to show upon adding that last debug statement.
If the save process is running, you'll get another Console message to say if it was succesful or not. What exactly is showing?
This is a separate question, and should be in a separate thread. As with all messages, you also need to post the message in full - including the stacktrace. Also provide details of what the NPC should be doing at that time.
ok i will pop that in a seperate thread