Repository navigation
Map scripting
The map scripting feature of OpenRA allows you to create custom shellmaps, minigames, single player/co-op missions and more.
The Lua scripting language is used in OpenRA for scripting maps. There is no need to download Lua from the website; a custom build of Lua is included with recent versions of the game.
A basic guide to Lua can be found on the Programming in Lua (first edition) page.
You can use any programmers text editor or Lua supporting IDE (integrated development environment).
ZeroBrane Studio is cross-platform Open Source Lua IDE. Download the
openra.lua file and place it in in ZBS/packages/ or HOME/.zbstudio/packages. Then restart and select Project - Lua Interpreter - OpenRA. The file then gets code completion and tooltips based on the Lua-API definition.
A convenient way is to also use MonoDevelop for both the C# editing and Lua scripting. Go to Tools - Add-In-Manager and install the MonoDevelop Lua bindings.
You will then get syntax highlighting and templates for the .lua files referenced in the OpenRA.sln main project file.
This guide assumes you have knowledge of creating and editing OpenRA maps (See Mapping).
Lua script code is to be contained in one or more .lua files within the map archive, next to map.yaml and map.bin. All script files for a particular map must be within the map's archive.
See Lua-API for more details.
Players ๐ฒ
- FAQ โ
- Installation ๐ฆ
- Hotkeys and Stances ๐ฎ
- Strategies ๐
- RaspberryPi ๐
- Changelog ๐
Modders โ๏ธ
- Audio guide ๐
- Traits ๐
- Palettes and Remaps ๐จ
- World Coordinate System ๐
- Map scripting
- Lua-API ๐
- Actor-Upgrades ๐
- Mapping ๐ง
- Modding Guide
- Pixelart ๐
Developers ๐ง
- Contributing โค๏ธ
- Compiling
- Hacking
- Coding Standard ๐
- Branches and Releases ๐
- Release Checklist โ
- Sequences
- Glossary
- Reverse engineering ๐
- License ยฉ๏ธ


