I have a character go from a room into an elevator (from scene 1,) to scene 2, and when i go back to scene 1 ( with the player start now in the elevator) he just falls thru the floor. the elevator has navmesh and in scene 1 the character had no issue walking around the scene.
Also when we go back to scene 1 i would like the elevator doors to be open, but they are closed in the original instance of scene 1.do i need a remember component or something like that on the doors to remain open? ( at the end of scene 1 a timeline event played where they opened and remained open)
It looks like you're new here. If you want to get involved, click one of these buttons!
Comments
So you have an Elevator that's the Transition point between Scene 1 and 2.
I'm not quite sure about the first Part, could you show how you have set it up, because i don't understand how you have a different Player Start in Scene 1 when going back, do you change the Player Start after the first Level Change?
Are all Colliders correctly setup, or is the start point a bit too low maybe?
For the second Part of the Question:
Yes you should have a Remember Component on it to save changes. Take a look at Chapter 9.1.1 in the Manual "Saving Scene Objects".
The Timeline probably plays once but hasn't done so in Scene 2.
The easier way for you could be, to control the Elevator Animator with Variables e.g. an "IsElevatorOpen" Bool, and have it be open if it's true.
You'd have to use Global Variables, so it's accessible across Scenes.
You could also just have a different Elevator in Scene 2 where the Doors are open. It doesn't have to be the same elevator, if you are transitioning to another Scene anyway.
Check that the elevator has a collider on its floor. This may not be apparent during the Timeline, as if your character is moved with an Animation Track, they'll ignore the physics system and be positioned entirely based on the Timeline.
To have the elevator appear different when you enter Scene 1 from Scene 2, create an OnStart cutscene in Scene 1 that uses the Scene: Check Action to check the previous scene. If it's Scene 2, you can use the Object: Animate Action to play an animation that opens the door - provided you've created one that's present (but not the default) in its Animator Controller.
And if i want hotspots that were active in scene 1 to not be active when we return, what is the most efficient way to do that? a variable check ?
You can attach the "remember Hotspot component" and use "Action: Hotspot Enable or disable".
It depends. If the Hotspot was disabled while in Scene 1 for the first time, attaching the Remember Hotspot component to the Hotspot will be enough to save its state and apply it upon re-entering.
For details on AC's scene-saving system, see the Manual's "Saving scene objects" chapter.
If you instead want to disable the Hotspot when you re-enter, create a new Cutscene that uses the Scene: Check Action to check if the previous scene was Scene 2. If so, run a Hotspot: Enable or disable Action to disable the Hotspot.
To have this Cutscene run when the scene begins, either assign it in the Scene Manager's "On Start Cutscene" field, or attach the ActionList Starter component and check Run on scene start?.