Linking objects to another scene

I’m developing a game in the game engine along with someone else, they’ve been making assets, and I’ve been doing the primary game engine work. In the game, you start in one scene that has a circus tent. When you make contact with the entrance, it pops you into the other scene (a shooting gallery). To do that, I selected the player group (collision box, camera, crosshairs, and the arm rig) and linked it to the shooting gallery scene. I moved the group further away from the tent so you don’t spawn right next to it. Once I viewed the shooting gallery scene, the player group was in the same position that it was in the tent scene. I want the player to have a separate location for each scene, but I don’t know how I could do that. Any suggestions? If you need any more info, here are some images:



This is the tent scene, and I want the player to be further away from the tent. However, I do that and this happens:

Sorry, your attatchment is not showing the picture, probably because you deleted them

From reading your post, I assume you want me to use Python to store the location, correct? I am not extremely familiar with the Python BGE API, so you may have to elaborate a bit. Also, I don’t understand where you want me to search for save/load. Within Blender using the spacebar, or in Google?

You can search this forum, or better the resource forum. You can use a common search engine too (BA is not the only source of good resources ;)).

With some tricks you can avoid to use Python. But due to it’s dynamic nature a save/load system needs it.

Some options without Python:
Two scenes are still two scenes, each one has it’s own initial locations for all existing objects. There is no real relationship between the two scenes except one thing: the cameras.

When you switch from one scene to the other the viewer suddenly looks through the other camera (regardless what he was seeing before). If the visible output is the same as before the viewer will not even notice the scene changed. With this method you need to ensure the end and start view do match. You need to be careful, but you do not need Python. The simplest method is to ensure the end and start points are always the same.

When the output changes (quite a lot) a good trick is to blend-out the the old scene and blend-in the new one. This is a cinematic method to show a “time jump” or “it is later”. With this method it does not matter where the cameras are. This is very simple (just a black fading plane in front of the cameras). No Python needed.

If you want dynamic “entry points” you will need Python.
If you want to move to a scene from several “entry points” you will most-likely need Python. If the entry points are limited, you can use messages.

I don’t use scenes for this. What I do to achieve this, is place both the inside of the building and outside of the building, on an inactive layer. Then add an empty where I want the building to spawn. and an empty where I want the inside of the building to spawn. In this case circus tent, and shooting gallery.

Then I use a Property to spawn either the inside or outside of the building as needed.

For example; Property > int > Tent > equals 0 (or you can use a string)- and -
add object circus tent. end object shooting gallery

Property > int > Tent > equals 1 (or use a string)- and -
end object circus tent, add object shooting gallery.

you can then use a collision, keyboard, mouse, or whatever, to send a message to change the property.

Using properties makes it easy to store the players position with a saveload, so if the player quits the game, he’ll be able to start it at the same place.
Plus this method keeps everything on the active layer so you don’t need yet a third scene to keep scores, pickups, etc.

Would this work for you?

@Monster Okay, that clears things up for me. @theoldguy I don’t think that would work for what I’m doing, there will be several levels, and I want them to reset each time the scene is exited.