Forum rules - please read before posting.

Movement method isn't always the same when starting the game in the editor.

For the starting scene, I set a cutscene to play "On start", which only consists of Switching the movement method to First Person, and fading in the camera. I put an NPC that teleports me to another scene, with an "On start" cutscene that changes the movement method to None, in order to directly start the scene with another camera and to immediately start dialogue.
I have two outcomes to the dialogue. One teleports me back to the first scene after changing the movement method back to First Person. The other simply stops, ending the dialogue while keeping the movement method to None.
If I stop the game after that last option, then after I restart the game, it will first start with the movement method as None, then fade in the camera, then set the movement method to First Person.

That kinda goes against the assumption I had that not only the game should already start as First Person (since that's the default I made), but it also should switch it back to First Person on scene load as the first thing it does (because of the On Start cutscene).
I wonder if that's a bug or a misunderstanding on my part.
I don't know if I was clear enough, I can send a video if needed.

Unity version 2019.3.0f6
AC version 1.71.2

Comments

  • While changes made to scenes will revert upon exiting play mode, the same is not true for Manager fields. Managers are asset files, and exist as part of your project.

    The game's movement method is a property of the Settings Manager, so changes made to this will be felt even after stopping the game.

    You're switching this method with the Engine: Manage systems Action? See the Manual's entry on this in the "Standard Actions" chapter. To ensure that the game begins with the correct value, just create an ActionList to set it up to your default, and then assign it as the ActionList on start game property - which is also in the Settings Manager.

  • I see what you mean. Another assumption I had is that cutscenes and actionlists are similar. And like I said, I already had a cutscene set to play at the start of the scene that would set the movement method to First Person. However that Engine action seems to be delayed. Plus I just tried to create an actionlist on start game like you said, but the results don't seem to change. Plus, I wanted to make the player get back to that first scene regularly, so making that action at the start of the game wouldn't suffice I think.
    My theory was, even if something in game changes the movement method, the cutscene/actionlist on scene start would just change it back to first person. And the cutscene on start does actually play, since the Fade In camera action works, but the Movement method change, which is supposed to happen before the Fade In, happens after (but only if the movement method was previously changed).

  • edited May 2020

    My theory was, even if something in game changes the movement method, the cutscene/actionlist on scene start would just change it back to first person.

    Sounds right. The movement method should indeed change the moment an Action that is set to update it is run.

    Are you detecting changes to the method by viewing the Settings Manager at runtime? It may not update at the exact moment the value is changed externally if it's not the active window, though the gameplay effects of it should be.

    You can confirm the moment an Action is run by assigning a comment to it (click its cog menu in the ActionList Editor) and then opting to print Action comments in the Console from the option at the bottom of the Settings Manager. Do such comments show up at the correct time in the Console, or are they too delayed?

    Could it be possible that another such Action is being run inadvertently? You can search for all instances of a given Action type after selecting it in the Actions Manager.

    Otherwise, let's see some screenshots of the ActionLists themselves - it doesn't sound like things are behaving the way they should.

  • Sorry for replying late. Got busy for a while.
    I have tried adding comments to the actions. The comments appear in the correct order (Movement switch, then Fade in), no matter how I left the game. However if I left the game with movement as "none" then the console says in addition that Playerstart has no camera on start, don't know if it relates at all.
    Here's the on start cutscene. https://imgur.com/9eWBxKc
    I've checked if any other actionlist has the "Engine: Manage systems" action but found none.
    Here is the video demonstrating the issue.
    I launch the game twice, both times the game starts as First Person. Then I switch scenes through dialogue, which sets movement to None, and exit. After relaunching, the game starts with movement as None, and only switches after the Fade In.
    Also I have not updated AC from 1.71.2

  • When in first-person mode, the game will only switch to the first-person camera automatically when in normal gameplay.

    Assuming your OnStart cutscene's When running property is set to Pause Gameplay, the movement setting is being changed but the effects of it won't be felt (i.e. the camera won't switch) until the ActionList has completed - which will be after the fade because Wait until finish? is checked.

    If you place your Player prefab in the scene, however, you can manually force the camera to become the first-person camera with a Camera: Switch Action just before the **Engine: Manage systems" Action.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.