How to combine terrain from two Places with the Terrain Load/Save plugin
After having some trouble figuring out how to save and load terrain from one place into another without wiping out the destination place’s terrain, I got it to work and I want to share it in case it helps others who would like to do this. I’ve added a bonus method of relocating the models from the old place as well.
Before we start, get the plugin:
https://www.roblox.com/library/155126448/Terrain-save-load
(this was originally by Crazyman32, Egomoose modified it to easily facilitate relocation of the terrain on load, so we will use his)
I generated some generic terrain to represent the destination Place:
And I am using a template game as the terrain(and models) that I’d like to move:
Step 1: Save the terrain to be moved
Open the game with terrain to be moved and run the plugin:
Click the Save button:
This will generate a new terrain instance in the workspace called SavedTerrain:
Step1.1(bonus) If you have any models that you wish to move with the terrain and have it positioned exactly in the new location, do the following:
Make a new part, name it PlacementPart, set its size to 10,10,10, orientation and position to 0,0,0. I made mine red, you don’t have to:
Step1.2(bonus) Now, group all models that you wish to move to the new game into a new group, I named mine otherWorkspace, move the PlacementPart into this model and set the PrimaryPart of the new group to the PlacementPart(by clicking on PrimaryPart property then selecting the part PlacementPart):
Step 2: Copy
In the game Explorer, copy both the saved terrain that you generated and the model master group that you just created, if you did the Bonus steps:
Step 3: Paste
Go into the new game and paste these into the Workspace:
Don’t be alarmed that your pasted models are floating or overlapping other stuff, we will relocate these later.
Step 4: Load Terrain
Next, use the Terrain Load/Save plugin to load the terrain that we copied into the new game:
click Load, but do not click Okay yet! (that would overwrite your existing terrain)
Step 5: Position
A new part is created called ‘MovementPart(do not delete)’, you must place this part at the center of where you want the imported train to be located. I renamed mine to ‘MovementPart’ for simplicity but you don’t have to. For this example, lets set the position of this part and the new terrain to (0,0,1000) to locate it next to our existing terrain:
Step 6: Generate
Then click the Okay button on the plugin to generate the SavedTerrain:
But don’t close the plug-in just yet! Or you can’t move the models to this new location.
Now we have the imported terrain at 0,0,1000 position:
If you are not moving any models, you are DONE, skip to Step 7, enjoy your new terrain.
Step 6.1(Bonus) Move imported models
To move the models, just move the ‘otherWorkspace’ model to the MovementPart’s location. We will do this with one line script.
This assumes that you have set the PrimaryPart of the master model in previous step(1.2) and that it only contains parts and models(no folders):
workspace.otherWorkspace:SetPrimaryPartCFrame(workspace.MovementPart.CFrame)
Put this into the studio command bar:
Now we have the imported terrain with the imported models in their original positions relative to the terrain:
Step 7: Cleanup
You can now exit the plugin and delete the SavedTerrain, MovementPart and PlacementPart. Ungroup ‘otherWorkspace’ if you like, and reorganize your workspace.
YOU ARE DONE.
The part placement is perfect:
And my epic baseplate terrain is still intact and unchanged:
That’s it! I hope this helps someone merge two places without wiping the existing terrain.