Mapping - UberWaffe/OpenRA GitHub Wiki

OpenRA comes with a easy to understand standalone map editor: OpenRA.Editor.exe. With this tool you can create new or edit maps that already exist. It needs the graphical assets so be sure to start the game for the first time to install those properly. Note: The editor will look glitchy on Linux and crash on Mac OS X because it relies on WinForms. You will also notice various rendering problems on all platforms.

Screenshot

It has a drag and drop interface which should be intuitive and self-explaining except some functions:

  • Map - Fix Open Areas will randomize the 1x1 tiles to make them look less wallpaper like.
  • Map - Setup Default Players will create a multiplayer slot for every spawnpoint placed.

You can middle mouse drag to move and use the mouse wheel to zoom in and out.

File Format

Maps are created with the .oramap extension by default. These files basically work as a ZIP archive with a custom file ending. You can open these files with an archive program. At minimum each map contains a map.bin containing the terrain and resource information in binary format as well as map.yaml which describes actor placement, weapon definitions, even override default game rules using all Traits. For missions you can use Map scripting powered by Lua.

As creating extremely customized maps is error prone there are some additional checks in place. OpenRA.Lint.exe is a command line tool that runs automated tests on it. If these fail, the game will not allow to play the map to prevent crashes. While the engine progresses your map may become incompatible with the next release. Check the Map Upgrading Guide as OpenRA.Utility.exe provides a helper command to automate the porting as much as possible.

The map boundaries have to stay divisible by 8 and require an outer boundary that is inaccessible by the players (cordons). The size has no limits though extremely large maps degrade game performance and may make no sense gameplay wise.

Sharing

http://resource.openra.net/ is the central repository to upload and showcase custom maps. It is tied to the client and allows everyone who joins the game to download maps that have been shared there. Every time you make changes to a map, the numerical hash to uniquely identify it, will also be different to prevent desyncs.

Location

Custom maps are stored in the user directories with sub-directories per mod.

  • Windows: My Documents\OpenRA\maps
  • Mac OSX: ~/Library/Application Support/OpenRA/maps
  • Linux: ~/.openra/maps

An unzipped folder containing the necessary files will also work which is useful when the terrain editing is done and the text files are tweaked manually. When contributing maps to be distributed with the main game, only zip regular maps without custom rules. Otherwise the changes won't be visible in the revision control system. It is also suggested to avoid spaces in the map filename.