Heya
Any ideas on how to have either a loading screen or slightly delayed transition within Adventure Creator when loading a save game?
Currently when loading a save game, it instantly loads, which is kinda jarring because in my game it will most of the time load to a similar looking scene and would make it hard for the player to know it has loaded a save.
So I just want to add a little delay inbetween loading a save game from the pause menu, like a fade out to black, then maybe a few seconds delay then fade in the load game. Or transition to a loading screen for a few seconds then load the game. Preferably through AC's actionlists or other systems, not custom scripting.
I know there's a "use loading screen" option under settings > scene loading, but that seems to be a transition between loading scenes, not between loading save games.
I have tried playing around with Load > Savelist > Load when click on / Actionlist after loading. If I have "Load when click on" then have an actionlist that fades in and out, it of course loads the save game first then fades out and in. If I turn off "Load when click on" the fade out/in transition actionlist will work, but it doesn't know what save to load so it doesn't load the game.
It looks like you're new here. If you want to get involved, click one of these buttons!
Comments
If Use loading screen? is checked in the Settings Manager, Scene: Switch Actions will have an additional Bypass loading screen? option that can be used to limit its usage to just loading save files.
With your approach of instead running an ActionList when clicking a file to load: this is possible as well. In your ActionList asset, define an Integer parameter in the Properties panel.
This parameter will be listed in the SavesList menu element, and will then automatically be set to either the clicked save's Index, or ID value, depending on settings.
At the end of your ActionList, you can then use this parameter in the Save: Save or load Action to load the intended slot.
Thanks for that. I tried the "use loading screen" approach.
Scene Switch doesn't have a bypass loading screen option when use loading screen is checked. I even tried reloading Unity.
Could it be because I'm on an older version of AC v1.81.7 (Unity 6.0)?
Also ignoring the bypassing issue, the loading screen was showing between scenes, but not when I loaded a save file.
Yes - the bypass option was introduced in v1.82.0.
Does the save you're loading take place in the scene you're already in? If so, you'll need to check Always reload scene when loading a save file? to force the scene to reload.
OK I'll have to wait til I upgrade AC to try out the loading screen method then. I'm planning to upgrade to the latest AC once Unity 6.3 is released (and when AC supports it). Which I'm guessing won't be til like the end of the year.
For the other method using an actionlist with a save integer parameter when clicking, this does load the save file, but with my actionlist I have...
( camera / fade / fade out ) --- ( save /save or load / load game )
It fades out, but then once the fade finishes it briefly shows the current scene and then loads the save file.
Someone on the discord suggested using onload but to my knowledge that would run after the save game loads so it wouldn't fade out before the save load.
Recreated. At least on my end, it's due to the Camera: Fade Action's pause behaviour.
Setting its Behaviour when paused field to Continue prevents this for me.
Thanks for that. I think changing the behaviour when paused to continue has solved the glitch of the current scene reappearing briefly.
I've managed to get fading in to work with an onload actionlist having a fade in.
I'll keep testing, but this might work at least for now until I upgrade to the latest AC and see if the loading screen option is better or not.
The issue I have with the current method is that when I click to load, as the save file isn't loading instantly due to waiting for the fade out on the actionlist, the game is still accepting inputs which progresses the current scene's dialogue before the save file is loaded.
So I guess I'm looking for a way to continue to ignore inputs outside of the menu like when you're in the pause/load menus.
I tried turning on and off the freeze menu. That works while fading in from the loaded save (onload: fade in wait til finish --- turn off freeze menu).
But it doesn't work for when loading the save (actionlist when click: turn on freeze menu --- fade out --- load save).
I also tried having a modified version of the "actionlist when turn off" for the load menu where I don't turn off the freeze menu, but that didn't work either.
Is this the right method to pursue, or would there be a better option?
If needed, you can also disable AC's Input system completely using the Engine: Manage systems Action at the start of your ActionList.
However, if the ActionList blocks gameplay, then gameplay inputs should be ignored.
Is this the case? You can view the game's current state (Cutscene/Normal/Paused) by enabling the AC Status box at the bottom of the Settings Manager.
Yeah I tried out that Engine Manage systems today but it didn't work. I think it's because the save file isn't loading instantly due to turning off load when click on, so there's the brief opportunity for input once the load menu closes and the actionlist when click loads after. So even if I put something like disable input or disable hotspot at the start of that actionlist when click, that's running after the load menu closes.
The AC Status box says "paused" when the load menu is open, but "cutscene" after the save file has been clicked (running the actionlist when click), so yeah doesn't seem like the game remains paused when running the actionlist when click.
The "ActionList when click" should kick in immediately once it gets clicked - are you closing the Menu as part of this asset?
If you can share screenshots of the ActionList(s) involved, as well as their properties, I'll see if I can spot the issue.
I'm not closing the menu via the actionlist when click. That is handled by the usual exit sub menu actionlist I think.
Here's hopefully the actionlists and such you need...
https://imgur.com/a/QyYQZoS
Try beginning your ActionList when click with a Menu: Change state Action to turn off the Menu beforehand.
From what I can tell menu change state isn't fixing the issue.
One thing I've noticed is when you click on the save file to load, in the AC Status, the current game state changes from Paused to Cutscene. Would there be a way to keep it paused while running the actionlist when click?
Otherwise, it's looking like 6.3 is close to dropping, so once AC supports that I'll upgrade to it and try the loading screen option instead.
Unchecking Unfreeze 'pause' menus? ought to keep it Paused, but some Actions won't work correctly while the game is paused.
Being in Cutscene mode shouldn't allow regular gameplay input, however.
Thanks for that. Unchecking Unfreeze pause menus in the actionlist when click actionlist, does keep it paused, I just had to change behaviour when paused on camera fade to continue (instead of cancel). So now the game stays paused when you click a save to load and fades out.
In the process of testing though I've noticed a similar issue whereby when you open the pause menu and then resume the game, the dialogue progresses rather than staying on the last dialogue line.
This issue doesn't happen when you use the escape key to open the pause menu, but it does when you open the pause menu with the right mouse button. I have mapped opening the pause menu to the right mouse button so that all of the game's interactions can be done with a mouse. I'm thinking that the right mouse might be mapped to something else as well that must progress the dialogue just before the menu opens.
Also with Unity 6.3 out now, would I be right to assume that the next version of Adventure Creator (1.86?) will be the first version when it releases to officially support Unity 6.3?
If you uncheck the Speech Manager's Can skip with mouse clicks? option, then dialogue progression will only occur when the "SkipSpeech" input is invoked.
Support for Unity 6.3 was included in AC v1.85.4, released yesterday.