Releases: OpenRA/OpenRAModSDK
20231010
20230225
Update target engine version to release-20230225
20210321
- Fix launch-dedicated.sh failing to detect the server files.
- Update engine reference for OpenRA release-20210321.
This is a minor update to target the latest engine version. The following files have changed:
launch-dedicated.sh
mod.config
Please see the notes for the 20210131 releases for instructions on how to update from earlier engine versions.
20210131
- Updated engine to
playtest-20210131
- Updated toolchain to work with the new OpenRA engine
- Removed legacy python2 requirement
- Fixed 64-bit Windows installer installing to the wrong Program Files directory
- Fixed HiDPI rendering in Windows installers
- Replaced Travis CI continuous integration support with GitHub Actions
This is a major update to the mod SDK. The following files have changed:
.github/workflows/ci.yaml
(new file).github/workflows/packaging.yml
(new file).gitignore
.travis.yml
(deleted)Makefile
make.ps1
mod.config
fetch-engine.sh
launch-dedicated.cmd
launch-dedicated.sh
launch-game.cmd
launch-dedicated.sh
utility.cmd
utility.sh
OpenRA.Mods.Example/OpenRA.Mods.Example.csproj
mods/example/audio/notifications.yaml
mods/example/cursor.yaml
mods/example/mod.yaml
packaging/linux/buildpackage.sh
packaging/linux/include/AppRun.in
(deleted)packaging/linux/include/gtk-dialog.py
(deleted)packaging/linux/include/mod-mimeinfo.xml.in
(deleted)packaging/linux/include/mod-server.in
(deleted)packaging/linux/include/mod-utility.in
(deleted)packaging/linux/include/mod.desktop.in
(deleted)packaging/linux/include/mod.in
(deleted)packaging/macos/buildpackage.sh
packaging/macos/entitlements.plist
(deleted)packaging/package-all.sh
packaging/windows/buildpackage.nsi
packaging/windows/buildpackage.sh
We recommend updating by making a backup of your packaging/artwork
directory, deleting the packaging
directory, and then replacing it with the updated directory structure in this release before restoring your custom artwork. Note that many files have been deleted, so extracting the new files over the top of the existing structure is not sufficient.
.travis.yml
should be deleted and replaced with the new .github
directory structure.
.gitignore
, Makefile
, make.ps1
, fetch-engine.sh
, launch-dedicated.cmd
, launch-dedicated.sh
, launch-game.cmd
, launch-dedicated.sh
, utility.cmd
, utility.sh
should then be replaced with the updated versions in this release.
The following changes are required in your mod.config
:
- In the
Core Configuration
section:- Change
ENGINE_VERSION
toplaytest-20210131
- Change
- Delete the entire
Continuous Integration
section - In the
Packaging
section:- Add new definitions:
and update the values if relevant for your mod.
# Space delimited list of dll files compiled by the mod, which # should be copied from the bin directory into your installers PACKAGING_COPY_MOD_BINARIES="OpenRA.Mods.Example.dll" # If your mod depends on OpenRA.Mods.Cnc.dll from the engine set # this to "True" to package the dll in your installers. # Accepts values "True" or "False". PACKAGING_COPY_CNC_DLL="False" # If your mod depends on OpenRA.Mods.D2k.dll from the engine set # this to "True" to package the dll in your installers. # Accepts values "True" or "False". PACKAGING_COPY_D2K_DLL="False" # If you wish to enable Discord integration, register an # application at https://discord.com/developers/applications # and define the client id here and in your mod.yaml PACKAGING_DISCORD_APPID=""
- Change
PACKAGING_OSX_LAUNCHER_TAG="osx-launcher-20200316"
toPACKAGING_OSX_MONO_TAG="osx-launcher-20200830"
(note that both the name and value have changed) - Change
PACKAGING_APPIMAGE_DEPENDENCIES_TAG
to20200328
- Add new definitions:
- In the
Advanced Configuration
section:- Delete all of the variable definitions and replace with
# Automatic engine managment will treat the OpenRA engine files like a read-only dependency. # Disable this if you would like to modify or manager your own engine files. AUTOMATIC_ENGINE_MANAGEMENT="True" # The URL to download the engine files from when AUTOMATIC_ENGINE_MANAGEMENT is enabled. AUTOMATIC_ENGINE_SOURCE="https://github.com/OpenRA/OpenRA/archive/${ENGINE_VERSION}.zip" # Temporary file/directory names used by automatic engine management. # Paths outside the SDK directory are not officially supported. AUTOMATIC_ENGINE_EXTRACT_DIRECTORY="./engine_temp" AUTOMATIC_ENGINE_TEMP_ARCHIVE_NAME="engine.zip" ENGINE_DIRECTORY="./engine" # The url to download the OpenRA macOS mono runtime. PACKAGING_OSX_MONO_SOURCE="https://github.com/OpenRA/OpenRALauncherOSX/releases/download/${PACKAGING_OSX_MONO_TAG}/mono.zip" # Temporary file name used when downloading the OpenRA macOS launcher files. PACKAGING_OSX_MONO_TEMP_ARCHIVE_NAME="mono.zip" # The url to download the OpenRA AppImage dependencies. PACKAGING_APPIMAGE_DEPENDENCIES_SOURCE="https://github.com/OpenRA/AppImageSupport/releases/download/${PACKAGING_APPIMAGE_DEPENDENCIES_TAG}/mono.tar.bz2" # Temporary file name used when downloading the OpenRA AppImage dependencies. PACKAGING_APPIMAGE_DEPENDENCIES_TEMP_ARCHIVE_NAME="mono.tar.bz2" # List of .NET assemblies that we can guarantee exist WHITELISTED_OPENRA_ASSEMBLIES="OpenRA.exe OpenRA.Utility.exe OpenRA.Server.exe OpenRA.Platforms.Default.dll OpenRA.Game.dll OpenRA.Mods.Common.dll OpenRA.Mods.Cnc.dll OpenRA.Mods.D2k.dll" # These are explicitly shipped alongside our core files by the packaging script WHITELISTED_THIRDPARTY_ASSEMBLIES="ICSharpCode.SharpZipLib.dll FuzzyLogicLibrary.dll Eluant.dll BeaconLib.dll Open.Nat.dll SDL2-CS.dll OpenAL-CS.Core.dll DiscordRPC.dll Newtonsoft.Json.dll" # These are shipped in our custom minimal mono runtime and also available in the full system-installed .NET/mono stack # This list *must* be kept in sync with the files packaged by the AppImageSupport and OpenRALauncherOSX repositories WHITELISTED_CORE_ASSEMBLIES="mscorlib.dll System.dll System.Configuration.dll System.Core.dll System.Numerics.dll System.Security.dll System.Xml.dll Mono.Security.dll netstandard.dll"
- Delete all of the variable definitions and replace with
If your mod includes any custom c# projects you must update their csproj
files to use the new OpenRA standard template. Open each csproj
file with a standard text editor and replace the file contents with the text in OpenRA.Mods.Example/OpenRA.Mods.Example.csproj
.
This SDK version is not backwards compatible with previous OpenRA's engine versions, and you must proceed with the Engine update guide before your mod will run on the new release.
20200503
20200418
- Update engine reference for OpenRA playtest-20200418.
- Updated launch-dedicated and windows packaging for compatibility with playtest-20200418.
- Fixed an error relating to the engine VERSION file when updating a mod under Windows.
This is a minor update. The following files have changed:
launch-dedicated.cmd
launch-dedicated.sh
make.cmd
packaging/windows/buildpackage.nsi
To update from the 20200329
SDK release simply copy the new versions of launch-dedicated.cmd
, launch-dedicated.sh
, make.cmd
, packaging/windows/buildpackage.nsi
into your mod project and change ENGINE_VERSION
to playtest-20200418
in your mod.config.
20200329
- Replaced macOS packaging with a new system that creates a disk image (dmg) and supports code signing and notarization
- Replaced platform-specific mod icon artwork with multi-resolution source pngs
- Fixed packaging failures caused by missing NSIS and GeoLite downloads
- Fixed "View Logs" button in the macOS crash dialog
- Updated engine version to playtest-20200329
- Updated
launch-dedicated
server scripts to add new options supported byplaytest-20200329
- Updated placeholder example mod yaml definitions for playtest-20200329
This mod SDK release contains minor updates to the development and testing capabilities, and major updates to the packaging/installer creation. The following files have changed:
.travis.yml
Makefile
launch-dedicated.cmd
launch-dedicated.sh
mod.config
mods/example/bits/dialog.png
mods/example/chrome.yaml
packaging/artwork/*
(new files)packaging/linux/mod_*x*.png
(removed files)packaging/linux/buildpackage.sh
packaging/macos/*
(new files)packaging/osx/*
(removed files)packaging/package-all.sh
packaging/windows/buildpackage.nsi
packaging/windows/buildpackage.sh
packaging/windows/mod.ico
(removed file)
To update from the 20200202
SDK release we recommend backing your platform-specific mod icons and then deleting and replacing the entire packaging
directory with the new directory structure included in this update. The packaging scripts no longer requires you to provide platform-specific icons (the mod.ico
, mod.icns
and mod_*x*.png
files), and now creates these as part of the packaging process. You will need to replace the png files in packaging/artwork/
with your own mod-specific artwork for the multi-resolution icons and macOS disk image background.
You should then copy the new versions of .travis.yml
, Makefile
, launch-dedicated.cmd
, and launch-dedicated.sh
into your mod project then make the following changes to your mod.config
:
- In the
Core Configuration
section:- Change
ENGINE_VERSION
toplaytest-20200329
- Change
- In the
Packaging
section:- Change
PACKAGING_OSX_LAUNCHER_TAG
toosx-launcher-20200316
- Add new definitions below
PACKAGING_OSX_LAUNCHER_TAG
:
# The macOS disk image icon positions, matched to the background artwork PACKAGING_OSX_DMG_MOD_ICON_POSITION="190, 210" PACKAGING_OSX_DMG_APPLICATION_ICON_POSITION="410, 210" PACKAGING_OSX_DMG_HIDDEN_ICON_POSITION="190, 350"
- Change
PACKAGING_APPIMAGE_DEPENDENCIES_TAG
to20200222
- Change
This SDK version is compatible with OpenRA engine versions release-20200202
plus playtest-20200303
and playtest-20200329
. If updating from earlier versions you should proceed to the Engine update guide.
20200202
20200118
- Fixed incorrect Travis CI error message when files are saved with incorrect line endings
- Added support for projects that do not use a .sln file
- Fixed macOS compatibility
- Updated placeholder example mod yaml definitions
- Updated engine version to playtest-20200118
This is a minor update to the mod SDK. The following files have changed:
.travis.yml
Makefile
make.ps1
mod.config
mods/example/mod.yaml
mods/example/tileset.yaml
mods/example/audio/*
(new files)packaging/linux/buildpackage.sh
To update from the 20191117
SDK release simply copy the new versions of .travis.yml
, Makefile
, make.ps1
, packaging/linux/buildpackage.sh
into your mod project then make the following changes to your mod.config
:
- In the
Core Configuration
section:- Change
ENGINE_VERSION
toplaytest-20200118
- Change
- In the
Packaging
section:- Change
PACKAGING_OSX_LAUNCHER_TAG
toosx-launcher-20191007
- Change
This SDK version is compatible with OpenRA engine versions playtest-20190825
through release-20191117
plus playtest-20200118
for development, but only playtest-20200118
for packaging release installers. If updating from earlier versions you should proceed to the Engine update guide.
20191117
- Fixed issues with travis packaging and tests
- Added .editorconfig file defining the OpenRA code style
- Fixed engine version reporting on Windows
- Updated engine version to release-20191117
This is a minor update to the mod SDK. The following files have changed:
.editorconfig
(new file).travis.yml
make.ps1
mod.config
If you are updating from release-20190314
or earlier you must first follow the steps from the previous SDK releases.
To update from the 20190825
SDK release simply copy the new versions of .travis.yml
, .editorconfig
, make.ps1
into your mod project then make the following changes to your mod.config
:
- In the
Core Configuration
section:- Change
ENGINE_VERSION
torelease-20191117
- Change
- In the
Packaging
section:- Change
PACKAGING_OSX_LAUNCHER_TAG
toosx-launcher-20191003
- Change
PACKAGING_APPIMAGE_DEPENDENCIES_TAG
to20191004
- Change
This SDK version is compatible with OpenRA engine versions playtest-20190825
, playtest-20191025
, playtest-20191117
, and the new release-20191117
only. The release engine is compatible with the previous playtests, so you can update to take advantage of the bug fixes without requiring any compatibility changes. If updating from earlier versions you should proceed to the Engine update guide.