a2096b6768de2d44f7b713966e48f632770750c5
This generalizes TilingPath to accept MultiBrushes instead of templates and makes the output also a MultiBrush. As a result: - Composite or faked templates can be used in tiling. This will (in a later change) be used to support CnC beaches outside of the desert tileset. - The tiling result can be previewed without committing it onto the map, making it more viable for adoption as an editor tool. - The full shape of the tiling result can be inspected without messily reading it back off of the map, simplifying some map generator logic. - Separates map generation-specific segment definitions from the core template definitions. - As MultiBrushes can be many-to-one with templates, there is no need to have a one-to-many template-segment relationship. Multi-segment templates, such as roads, now use multiple brushes instead. This simplifies the logic of segment consumers. Previously, MultiBrushes which contained no offset information in their definitions were automatically aligned such that the first tile was under 0,0. This is no longer the case. This was previously done for use in MultiBrush.PaintArea to improve tile packing success, but the alignment is now handled automatically by PaintArea instead. Due to some impure refactoring which changes the randomization of tiling choices, map generation results may change.
…
OpenRA
A Libre/Free Real Time Strategy game engine supporting early Westwood classics.
- Website: https://www.openra.net
- Chat: #openra on Libera (web) or Discord

- Repository: https://github.com/OpenRA/OpenRA
Please read the FAQ in our Wiki and report problems at https://github.com/OpenRA/OpenRA/issues.
Join the Forum for discussion.
Play
Distributed mods include a reimagining of
- Command & Conquer: Red Alert
- Command & Conquer: Tiberian Dawn
- Dune 2000
EA has not endorsed and does not support this product.
Check our Playing the Game Guide to win multiplayer matches.
Contribute
- Please read INSTALL.md and Compiling on how to set up an OpenRA development environment.
- See Hacking for a (now very outdated) overview of the engine.
- Read and follow our Code of Conduct.
- To get your patches merged, please adhere to the Contributing guidelines.
Mapping
- We offer a Mapping Tutorial as you can change gameplay drastically with custom rules.
- For scripted mission have a look at the Lua API.
- If you want to share your maps with the community, upload them at the OpenRA Resource Center.
Modding
- Download a copy of the OpenRA Mod SDK to start your own mod.
- Check the Modding Guide to create your own classic RTS.
- There exists an auto-generated Trait documentation to get started with yaml files.
- Some hints on how to create new OpenRA compatible Pixelart.
- Upload total conversions at our Mod DB profile.
Support
- Sponsor a mirror server if you have some bandwidth to spare.
- You can immediately set up a Dedicated Game Server.
License
Copyright (c) OpenRA Developers and Contributors This file is part of OpenRA, which is free software. It is made available to you under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. For more information, see COPYING.
Description
Languages
C#
79.3%
Lua
16%
Fluent
3.1%
Shell
0.6%
Objective-C
0.2%
Other
0.5%