Exporting
File → Import / Export → Export. Everything is written to rm_mapeditor/exports/<name>/.
To use an export, copy the folder into your resources folder and ensure it. Needs the export capability.
The four formats
| Format | Carries | Use it when |
|---|---|---|
resource | Everything | You want it to just work |
ymap | Props, as a real ymap the game loads itself | You want native map loading |
objectloader | Props only | You already run objectloader |
json | An exact copy | You are moving a map to another server |
resource — the one to use
A ready-to-run resource with its own streamer. Drop it in, ensure it, done.
It carries everything: props, people, animals, wagons, removed world props, hidden props, see-through and no-collision settings — all of it.
If you have no particular reason to pick another format, pick this one.
ymap — native loading
The props become a real .ymap, loaded by the game itself rather than by a script. That is the most efficient way for the game to handle a static build.
A ymap cannot describe everything
What a ymap has no way to express goes into a small script written into the same folder:
- People, animals and wagons
- Removed game props — a ymap can add, not delete
- See-through, hidden and no-collision props
- Props explicitly set to be handled by the script
So a ymap export is usually a ymap and a script. Ship both; the folder is designed to be copied whole.
Marked doors are written as real doors, with lists for door lock scripts in doors/. See Doors.
Two settings shape the output:
| Setting | Default | |
|---|---|---|
YmapStreamingPadding | 400.0 | Padding added to the streaming extents |
YmapDefaultFlags | 1572865 | Flags written on entities |
objectloader — props only
XML for the objectloader resource. Props and nothing else — no people, no removals, no door flags.
Only worth choosing if objectloader is already how your server loads maps.
There is a rotation-order switch for compatibility with some objectloader builds, off by default:
ServerConfig.Export.ConvertRotationOrderForObjectloader = trueIf an objectloader export comes out with props rotated wrongly and everything else correct, that switch is the first thing to try.
json — moving between servers
An exact copy of the map, including everything the other formats drop. It is the import format too, so this is the round trip:
Server A: export json -> rm_mapeditor/exports/<name>/
Server B: put the .json in rm_mapeditor/imports/ -> File > ImportUse it for backups and for moving a build between your own servers. It is not a format anything else reads.
Exporting several maps at once
Up to 50 maps per bundle by default (MaxBundleMaps).
By default you are asked before an existing export is overwritten. Turn that off if you script around it:
ServerConfig.Export.ConfirmOverwrite = falseTurning formats off
ServerConfig.Export = {
Enabled = true,
Formats = {
resource = true,
objectloader = false,
json = true,
ymap = true,
},
}A format set to false disappears from the export window. Enabled = false removes exporting entirely, whatever anyone's ACEs say.
Two settings on an object that only matter at export
| Setting | Does |
|---|---|
| Export even if unchanged | Include an adopted world prop you did not move |
| In the ymap | Keep this object in the ymap rather than handing it to the script |
The first matters when you have taken game props into a map purely to have them travel with it. Without it, a prop you adopted and did not touch is assumed to already exist in the world and is left out.
Exports are written on the server
rm_mapeditor/exports/ is a folder on the machine running the server, not on the client of whoever pressed the button. You need file access to collect them.
The directory is configurable:
ServerConfig.Export.Directory = 'exports'Every export is logged
With the webhook enabled, export is one of the reported events, and it is on by default. The audit table records it regardless. On a server with several builders that is how you find out which export is the current one.