How to save entire experiences?

I have a game I’m making where you have your own game with your progression in it. It’s an agricultural game, and I want the main game you join to be the market, then from there you can hop on a train that’ll teleport you to a different game which is your own valley. How would I store all the data of an experience like that to then be brought back and used again?

Create a new place.

Thank you for sharing this with me. I’ll look into it and see if I can do what I need. Thank you!

1 Like

Would a player be able to create a new experience with its a unique placeid and all using this? To elaborate, if a new player joins, and they hop on that train, can the server create a new place for that player so it can be used as their area?

Unfortunately no, but you can completely customize the place to the user’s likings!

Is this what you’re looking for?

This would work, I just need new players of the game to be able to get their own reserved server created to start the game

I don’t quite understand what you mean.

So, the game takes place in a valley where you do farming. Every player has their own farm, in the their own valley, within their own server/game. In the main game (the market) somebody who has never played before can get their own valley in their own server that is not connected to anybody else’s server

I still don’t understand the last part. Are you making a game similar to Islands?

You add the Instance Data to a Table, use JSONEncode to compact the Data. And the Save it, I believe there is a tutorial about saving Instances, however for your own valley. You need to Reserve A Server, then teleport the Player.

What if, each server has 18 places (not including the market) for 18 player slots. If there is a way to fill up the space of players in the market while they’re in their own valleys, then I could just recycle those worlds

Here’s a picture if this helps:

Also, yes, I just checked out Islands and what I’m trying to do is essentially that

Use TeleportService and TeleportOptions to reserve the server, then teleport the player with join data related to their save. When they load in, check if they have teleport data (I think it’s player:GetTeleportData()) and then use that!

I’ll do some experimenting with that. I just need to figure out how or if I can put an entire map into a data store

You can save general values. Some things like object positions will probably need to just start at a set location, but you can definitely save info for the majority of the map info, then interpret that when they load.

I think that since the terrain isn’t modifiable, I could just save the extra parts that can be interacted with like trees, farmland, buildings, etc.

1 Like

@MrMatthewGamingX Converter Module: Instance ↔ Table | Save Instances to DataStores and More! Will this help you?

This looks like it’ll help me out. When I get some time I’ll download it and figure it out if it does what I need correctly.

1 Like