OpenRA
OpenRA | |
---|---|
| |
Latest release | 20231010 (Announcement) |
Release date | October 10th, 2023 |
Platforms | Windows, Linux, Mac |
Code license | GPL Version 3 |
P. language | C#, Lua |
Contribute | |
OpenRA is a free engine. This means that the source code is available to be studied, modified, and distributed. Most projects look for help with testing, documentation, graphics, etc., as well. |
Arch: | openra |
---|---|
OpenSUSE: | openra |
Flatpak: | net.openra.OpenRA |
Snap: | openra |
FreeBSD: | openra |
OpenRA is a Real-time Strategy engine licensed as GPL Version 3 written in C# allowing a subset of sandboxed Lua for mission scripting.
Development[edit]
Initially, the development goal was to increase the modding capabilities of the originals which were closed source in nature, but had a text file called RULES.INI which allowed players to experiment with gameplay within the constraints of the original Westwood 2D engine. Games made with OpenRA are internally still called mods. The engine comes with three included mods: ra (Command & Conquer: Red Alert), cnc (Command & Conquer: Tiberian Dawn) and d2k (Dune 2000) with ts (Command & Conquer: Tiberian Sun) in development which includes an isometric perspective with terrain heights.
The game engine is sometimes criticized for not being accurate to the originals. That is due to the nature of it being a clean-room reimplementation relying solely on observing the original games instead of disassembling the original binaries.[1] The OpenRA project also predates Electronic Arts source code release when publishing the Command & Conquer Remastered Collection.
Rendering is done using OpenGL.[2] Platform independence is achieved through the .NET runtime and SDL.[3]
OpenRA uses a concept of configurable traits which can be attached to actors. This even more data-driven approach was inspired by later titles such as Command & Conquer: Generals. Instead of XML of the SAGE engine or INI of the Westwood 2D era, it relies on MiniYAML, a dialect inspired by YAML with major differences in semantics. Traits can interact with each other using interfaces in the API, but also using conditions using only configuration of the game rules.
Tools to aid the modders in developing MiniYAML rules and Lua scripts are available for Visual Studio Code[4] and compatible editors.[5]
Content[edit]
Various third-party mods exists, but due to the sheer number of sprites required to make a real-time strategy game, most projects rely on the original artwork and add on top of that. Few artists use open content licenses.[6] The default games also rely on the original game content. As many older Command & Conquer titles were released as Freeware downloads to promote the later titles in marketing events, community mirrors are set in place, allowing for a convenient download of a minimal subset required to play on first game start. The legality was later clarified by Electronic Arts releasing guidelines for modding their line of Command & Conquer games.[7] Alternative sources for the complete assets (including music and FMV) are digital downloads and the original game discs, which can be automatically extracted from within the game UI.[8]
See also[edit]
- OpenHV, a total conversion where all the assets are Open Source
External links[edit]
References[edit]
- ↑ https://github.com/OpenRA/OpenRA/wiki/FAQ#is-that-legal
- ↑ https://blog.codeinside.eu/2014/10/15/Command-n-Conquer-as-Open-Source-Game-In-C-Sharp/
- ↑ https://delftswa.github.io/chapters/openra/
- ↑ https://marketplace.visualstudio.com/publishers/openra
- ↑ https://open-vsx.org/extension/openra/vscode-openra-lua
- ↑ https://www.moddb.com/games/openra/mods
- ↑ https://www.openra.net/legal/
- ↑ https://github.com/OpenRA/OpenRA/wiki/Game-Content