Bit of a strange one for you...
I have two scenes in my project: main menu and game. In my game scene, I have a number of moveable objects - drawers, cupboards, doors, etc. - that the player can manipulate. All of the moveables have the Remember Moveable script attached to them.
Here's what happens:
- At runtime, when the players load a savegame from the Main Menu scene, which involves changing the scene (although that's all done automatically; I use a near-vanilla implementation of AC's system), any moveable is reset to its initial position upon loading (i.e.: it doesn't remember its position).
- However, if I load the savegame while I'm already in the Game scene, then the moveables return to their correct, saved, position.
- But if a moveable has "set starting position" disabled, then it does return to its saved position upon loading from another scene. But...
- The drag track type changes this behaviour. If loading from another scene, hinge-based moveables (like doors), even if "set starting position" disabled", do not return to their saved position. Again, if the player loads a savegame while in the same scene, hinge-type moveables return to their saved states correctly. Straight track-based moveables seem to be unaffected by this particular oddity; I'm unsure of the curved track as I don't currently use it.
So, to summarise:
Loading from same scene: all moveables with all track types work as expected, regardless of their "set starting position enabled setting". This is the desired behaviour.
Loading from another scene: Anything with "set starting position enabled" doesn't load properly; and moveables with hinge tracks don't load properly regardless of their "set starting position" setting.
As you can imagine, I thought I was going insane while testing my game, but I tested this behaviour in the AC physics demo scene (I created an empty AC-enabled scene to load from) and it's consistent with what happens in my game.
Any ideas? Thankfully none of this stuff is game-breaking in my case, but I'd certainly like to have a consistent experience for players.
Comments