diff --git a/data/hotfixes/linux/hotfix-makefile-enable-ra-and-ts.patch b/data/hotfixes/linux/hotfix-makefile-enable-ra-and-ts.patch new file mode 100644 index 0000000..a83e152 --- /dev/null +++ b/data/hotfixes/linux/hotfix-makefile-enable-ra-and-ts.patch @@ -0,0 +1,11 @@ +--- a/Makefile ++++ b/Makefile +@@ -388,6 +388,8 @@ + @$(INSTALL_PROGRAM) MaxMind.Db.dll "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) SmarIrc4net.dll "$(DATA_INSTALL_DIR)" + ++ @$(CP_R) mods/ra "$(DATA_INSTALL_DIR)/mods/" ++ @$(CP_R) mods/ts "$(DATA_INSTALL_DIR)/mods/" + ifneq ($(UNAME_S),Darwin) + @$(CP) *.sh "$(DATA_INSTALL_DIR)" + endif diff --git a/data/hotfixes/linux/hotfix-makefile-readlink.patch b/data/hotfixes/linux/hotfix-makefile-readlink.patch new file mode 100644 index 0000000..3e6f057 --- /dev/null +++ b/data/hotfixes/linux/hotfix-makefile-readlink.patch @@ -0,0 +1,14 @@ +--- a/Makefile ++++ b/Makefile +@@ -427,9 +427,9 @@ + @echo 'cd "$(gameinstalldir)"' >> openra + # Note: this relies on the non-standard -f flag implemented by gnu readlink + ifeq ($(DEBUG), $(filter $(DEBUG),false no n off 0)) +- @echo 'mono OpenRA.Game.exe Engine.LaunchPath="$(readlink -f $0)" "$$@"' >> openra ++ @echo 'mono OpenRA.Game.exe Engine.LaunchPath="$$(readlink -f $$0)" "$$@"' >> openra + else +- @echo 'mono --debug OpenRA.Game.exe Engine.LaunchPath="$(readlink -f $0)" "$$@"' >> openra ++ @echo 'mono --debug OpenRA.Game.exe Engine.LaunchPath="$$(readlink -f $$0)" "$$@"' >> openra + endif + @echo 'if [ $$? != 0 -a $$? != 1 ]' >> openra + @echo 'then' >> openra diff --git a/data/hotfixes/linux/hotfix-ra2-withexitoverlay-revert.patch b/data/hotfixes/linux/hotfix-ra2-withexitoverlay-revert.patch new file mode 100644 index 0000000..06a10f2 --- /dev/null +++ b/data/hotfixes/linux/hotfix-ra2-withexitoverlay-revert.patch @@ -0,0 +1,47 @@ +--- a/OpenRA.Mods.RA2/Traits/Render/WithExitOverlay.cs ++++ b/OpenRA.Mods.RA2/Traits/Render/WithExitOverlay.cs +@@ -36,13 +36,18 @@ + public object Create(ActorInitializer init) { return new WithExitOverlay(init.Self, this); } + } + +- public class WithExitOverlay : INotifyDamageStateChanged, INotifyBuildComplete, INotifySold, INotifyProduction, ITick ++ public class WithExitOverlay : INotifyDamageStateChanged, INotifyBuildComplete, INotifySold, INotifyProduction + { + readonly Actor self; + readonly Animation overlay; +- bool buildComplete, enable; ++ bool buildComplete; + CPos exit; + ++ bool IsExitBlocked ++ { ++ get { return self.World.ActorMap.GetActorsAt(exit).Any(a => a != self); } ++ } ++ + public WithExitOverlay(Actor self, WithExitOverlayInfo info) + { + this.self = self; +@@ -56,7 +61,7 @@ + + var anim = new AnimationWithOffset(overlay, + () => body.LocalToWorld(info.Offset.Rotate(body.QuantizeOrientation(self, self.Orientation))), +- () => !buildComplete || !enable); ++ () => !buildComplete || !IsExitBlocked); + + rs.Add(anim, info.Palette, info.IsPlayerPalette); + } +@@ -80,13 +85,6 @@ + public void UnitProduced(Actor self, Actor other, CPos exit) + { + this.exit = exit; +- enable = true; +- } +- +- public void Tick(Actor self) +- { +- if (enable) +- enable = self.World.ActorMap.GetActorsAt(exit).Any(a => a != self); + } + } + } +\ No newline at end of file diff --git a/data/hotfixes/windows/hotfix-ra2-withexitoverlay-revert.patch b/data/hotfixes/windows/hotfix-ra2-withexitoverlay-revert.patch new file mode 100644 index 0000000..8390b6b --- /dev/null +++ b/data/hotfixes/windows/hotfix-ra2-withexitoverlay-revert.patch @@ -0,0 +1,47 @@ +--- a/OpenRA.Mods.RA2/Traits/Render/WithExitOverlay.cs ++++ b/OpenRA.Mods.RA2/Traits/Render/WithExitOverlay.cs +@@ -36,13 +36,18 @@ + public object Create(ActorInitializer init) { return new WithExitOverlay(init.Self, this); } + } + +- public class WithExitOverlay : INotifyDamageStateChanged, INotifyBuildComplete, INotifySold, INotifyProduction, ITick ++ public class WithExitOverlay : INotifyDamageStateChanged, INotifyBuildComplete, INotifySold, INotifyProduction + { + readonly Actor self; + readonly Animation overlay; +- bool buildComplete, enable; ++ bool buildComplete; + CPos exit; + ++ bool IsExitBlocked ++ { ++ get { return self.World.ActorMap.GetActorsAt(exit).Any(a => a != self); } ++ } ++ + public WithExitOverlay(Actor self, WithExitOverlayInfo info) + { + this.self = self; +@@ -56,7 +61,7 @@ + + var anim = new AnimationWithOffset(overlay, + () => body.LocalToWorld(info.Offset.Rotate(body.QuantizeOrientation(self, self.Orientation))), +- () => !buildComplete || !enable); ++ () => !buildComplete || !IsExitBlocked); + + rs.Add(anim, info.Palette, info.IsPlayerPalette); + } +@@ -80,13 +85,6 @@ + public void UnitProduced(Actor self, Actor other, CPos exit) + { + this.exit = exit; +- enable = true; +- } +- +- public void Tick(Actor self) +- { +- if (enable) +- enable = self.World.ActorMap.GetActorsAt(exit).Any(a => a != self); + } + } + } +\ No newline at end of file diff --git a/data/patches/linux/linux-d2-common.patch b/data/patches/linux/linux-d2-common.patch new file mode 100644 index 0000000..8e76fcd --- /dev/null +++ b/data/patches/linux/linux-d2-common.patch @@ -0,0 +1,32 @@ +--- a/mods/all/mod.yaml ++++ b/mods/all/mod.yaml +@@ -18,6 +18,7 @@ + ./mods/common/OpenRA.Mods.Common.dll + ./mods/common/OpenRA.Mods.Cnc.dll + ./mods/d2k/OpenRA.Mods.D2k.dll ++ ./mods/d2/OpenRA.Mods.D2.dll + + ChromeLayout: + +--- a/mods/d2/mod.yaml ++++ b/mods/d2/mod.yaml +@@ -5,7 +5,7 @@ + Author: the OpenRA Developers + + RequiresMods: +- modchooser: {DEV_VERSION} ++ + + Packages: + ~^Content/d2 + +--- a/utility.cmd ++++ b/utility.cmd +@@ -17,6 +17,7 @@ + if /I "%mod%" EQU "cnc" (goto help) + if /I "%mod%" EQU "ts" (goto help) + if /I "%mod%" EQU "d2k" (goto help) ++if /I "%mod%" EQU "d2" (goto help) + echo. + echo Unknown mod: %mod% + echo. diff --git a/data/patches/linux/linux-d2-ra2-make.patch b/data/patches/linux/linux-d2-ra2-make.patch new file mode 100644 index 0000000..2e64059 --- /dev/null +++ b/data/patches/linux/linux-d2-ra2-make.patch @@ -0,0 +1,87 @@ +--- a/Makefile ++++ b/Makefile +@@ -155,6 +155,15 @@ + PROGRAMS += mod_cnc + mod_cnc: $(mod_cnc_TARGET) + ++# Red Alert 2 ++mod_ra2_SRCS := $(shell find OpenRA.Mods.RA2/ -iname '*.cs') ++mod_ra2_TARGET = mods/ra2/OpenRA.Mods.RA2.dll ++mod_ra2_KIND = library ++mod_ra2_DEPS = $(STD_MOD_DEPS) $(mod_common_TARGET) ++mod_ra2_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) $(mod_common_TARGET) ++PROGRAMS += mod_ra2 ++mod_ra2: $(mod_ra2_TARGET) ++ + # Dune 2000 + mod_d2k_SRCS := $(shell find OpenRA.Mods.D2k/ -iname '*.cs') + mod_d2k_TARGET = mods/d2k/OpenRA.Mods.D2k.dll +@@ -164,6 +173,15 @@ + PROGRAMS += mod_d2k + mod_d2k: $(mod_d2k_TARGET) + ++# Dune 2 ++mod_d2_SRCS := $(shell find OpenRA.Mods.D2/ -iname '*.cs') ++mod_d2_TARGET = mods/d2/OpenRA.Mods.D2.dll ++mod_d2_KIND = library ++mod_d2_DEPS = $(STD_MOD_DEPS) $(mod_common_TARGET) ++mod_d2_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) $(mod_common_TARGET) ++PROGRAMS += mod_d2 ++mod_d2: $(mod_d2_TARGET) ++ + check-scripts: + @echo + @echo "Checking for Lua syntax errors..." +@@ -193,6 +211,12 @@ + @echo "Checking for code style violations in OpenRA.Mods.D2k..." + @mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Mods.D2k + @echo ++ @echo "Checking for code style violations in OpenRA.Mods.D2..." ++ @mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Mods.D2 ++ @echo ++ @echo "Checking for code style violations in OpenRA.Mods.RA2..." ++ @mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Mods.RA2 ++ @echo + @echo "Checking for code style violations in OpenRA.Utility..." + @mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Utility + @echo +@@ -226,9 +250,15 @@ + @echo "Testing Tiberian Sun mod MiniYAML..." + @mono --debug OpenRA.Utility.exe ts --check-yaml + @echo ++ @echo "Testing Red Alert 2 mod MiniYAML..." ++ @mono --debug OpenRA.Utility.exe ra2 --check-yaml ++ @echo + @echo "Testing Dune 2000 mod MiniYAML..." + @mono --debug OpenRA.Utility.exe d2k --check-yaml + @echo ++ @echo "Testing Dune 2 mod MiniYAML..." ++ @mono --debug OpenRA.Utility.exe d2 --check-yaml ++ @echo + @echo "Testing Tiberian Dawn mod MiniYAML..." + @mono --debug OpenRA.Utility.exe cnc --check-yaml + @echo +@@ -301,7 +331,7 @@ + + package: all-dependencies core tools docs version + +-mods: mod_common mod_cnc mod_d2k ++mods: mod_common mod_cnc mod_d2k mod_ra2 mod_d2 + + all: dependencies core tools + +@@ -364,10 +394,14 @@ + @$(INSTALL_DIR) "$(DATA_INSTALL_DIR)/mods" + @$(CP_R) mods/common "$(DATA_INSTALL_DIR)/mods/" + @$(INSTALL_PROGRAM) $(mod_common_TARGET) "$(DATA_INSTALL_DIR)/mods/common" ++ @$(CP_R) mods/ra2 "$(DATA_INSTALL_DIR)/mods/" ++ @$(INSTALL_PROGRAM) $(mod_ra2_TARGET) "$(DATA_INSTALL_DIR)/mods/ra2" + @$(CP_R) mods/cnc "$(DATA_INSTALL_DIR)/mods/" + @$(INSTALL_PROGRAM) $(mod_cnc_TARGET) "$(DATA_INSTALL_DIR)/mods/cnc" + @$(CP_R) mods/d2k "$(DATA_INSTALL_DIR)/mods/" + @$(INSTALL_PROGRAM) $(mod_d2k_TARGET) "$(DATA_INSTALL_DIR)/mods/d2k" ++ @$(CP_R) mods/d2 "$(DATA_INSTALL_DIR)/mods/" ++ @$(INSTALL_PROGRAM) $(mod_d2_TARGET) "$(DATA_INSTALL_DIR)/mods/d2" + @$(CP_R) mods/modchooser "$(DATA_INSTALL_DIR)/mods/" + + @$(INSTALL_DATA) "global mix database.dat" "$(DATA_INSTALL_DIR)/global mix database.dat" diff --git a/data/patches/linux/linux-ra2-common.patch b/data/patches/linux/linux-ra2-common.patch new file mode 100644 index 0000000..ebb22e4 --- /dev/null +++ b/data/patches/linux/linux-ra2-common.patch @@ -0,0 +1,33 @@ +--- a/mods/all/mod.yaml ++++ b/mods/all/mod.yaml +@@ -17,6 +17,7 @@ + Assemblies: + ./mods/common/OpenRA.Mods.Common.dll + ./mods/common/OpenRA.Mods.Cnc.dll ++ ./mods/ra2/OpenRA.Mods.RA2.dll + ./mods/d2k/OpenRA.Mods.D2k.dll + + ChromeLayout: + +--- a/mods/ra2/mod.yaml ++++ b/mods/ra2/mod.yaml +@@ -5,7 +5,7 @@ + Author: the RA2 mod team + + RequiresMods: +- modchooser: {DEV_VERSION} ++ + + Packages: + ~^Content/ra2 + +--- a/utility.cmd ++++ b/utility.cmd +@@ -16,6 +16,7 @@ + if /I "%mod%" EQU "ra" (goto help) + if /I "%mod%" EQU "cnc" (goto help) + if /I "%mod%" EQU "ts" (goto help) ++if /I "%mod%" EQU "ra2" (goto help) + if /I "%mod%" EQU "d2k" (goto help) + echo. + echo Unknown mod: %mod% diff --git a/data/patches/linux/linux-ra2-make.patch b/data/patches/linux/linux-ra2-make.patch index 0d31ada..f19bcf4 100644 --- a/data/patches/linux/linux-ra2-make.patch +++ b/data/patches/linux/linux-ra2-make.patch @@ -1,8 +1,8 @@ --- a/Makefile +++ b/Makefile -@@ -182,6 +182,15 @@ - PROGRAMS += mod_ts - mod_ts: $(mod_ts_TARGET) +@@ -155,6 +155,15 @@ + PROGRAMS += mod_cnc + mod_cnc: $(mod_cnc_TARGET) +# Red Alert 2 +mod_ra2_SRCS := $(shell find OpenRA.Mods.RA2/ -iname '*.cs') @@ -13,12 +13,12 @@ +PROGRAMS += mod_ra2 +mod_ra2: $(mod_ra2_TARGET) + - check-scripts: - @echo - @echo "Checking for Lua syntax errors..." -@@ -217,6 +226,9 @@ - @echo "Checking for code style violations in OpenRA.Mods.TS..." - @mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Mods.TS + # Dune 2000 + mod_d2k_SRCS := $(shell find OpenRA.Mods.D2k/ -iname '*.cs') + mod_d2k_TARGET = mods/d2k/OpenRA.Mods.D2k.dll +@@ -193,6 +202,9 @@ + @echo "Checking for code style violations in OpenRA.Mods.D2k..." + @mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Mods.D2k @echo + @echo "Checking for code style violations in OpenRA.Mods.RA2..." + @mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Mods.RA2 @@ -26,24 +26,31 @@ @echo "Checking for code style violations in OpenRA.Utility..." @mono --debug OpenRA.Utility.exe ra --check-code-style OpenRA.Utility @echo -@@ -258,6 +270,9 @@ +@@ -226,6 +238,9 @@ + @echo "Testing Tiberian Sun mod MiniYAML..." + @mono --debug OpenRA.Utility.exe ts --check-yaml @echo - @echo "Testing Red Alert mod MiniYAML..." - @mono --debug OpenRA.Utility.exe ra --check-yaml -+ @echo + @echo "Testing Red Alert 2 mod MiniYAML..." + @mono --debug OpenRA.Utility.exe ra2 --check-yaml ++ @echo + @echo "Testing Dune 2000 mod MiniYAML..." + @mono --debug OpenRA.Utility.exe d2k --check-yaml + @echo +@@ -301,7 +316,7 @@ + package: all-dependencies core tools docs version - ##### Launchers / Utilities ##### -@@ -394,6 +409,10 @@ - @$(CP_R) mods/d2k "$(DATA_INSTALL_DIR)/mods/" - @$(INSTALL_PROGRAM) $(mod_d2k_TARGET) "$(DATA_INSTALL_DIR)/mods/d2k" - @$(CP_R) mods/modchooser "$(DATA_INSTALL_DIR)/mods/" -+ @$(CP_R) mods/ts "$(DATA_INSTALL_DIR)/mods/" -+ @$(INSTALL_PROGRAM) $(mod_ts_TARGET) "$(DATA_INSTALL_DIR)/mods/ts" +-mods: mod_common mod_cnc mod_d2k ++mods: mod_common mod_cnc mod_d2k mod_ra2 + + all: dependencies core tools + +@@ -364,6 +379,8 @@ + @$(INSTALL_DIR) "$(DATA_INSTALL_DIR)/mods" + @$(CP_R) mods/common "$(DATA_INSTALL_DIR)/mods/" + @$(INSTALL_PROGRAM) $(mod_common_TARGET) "$(DATA_INSTALL_DIR)/mods/common" + @$(CP_R) mods/ra2 "$(DATA_INSTALL_DIR)/mods/" + @$(INSTALL_PROGRAM) $(mod_ra2_TARGET) "$(DATA_INSTALL_DIR)/mods/ra2" - - @$(INSTALL_DATA) "global mix database.dat" "$(DATA_INSTALL_DIR)/global mix database.dat" - @$(INSTALL_DATA) "GeoLite2-Country.mmdb.gz" "$(DATA_INSTALL_DIR)/GeoLite2-Country.mmdb.gz" + @$(CP_R) mods/cnc "$(DATA_INSTALL_DIR)/mods/" + @$(INSTALL_PROGRAM) $(mod_cnc_TARGET) "$(DATA_INSTALL_DIR)/mods/cnc" + @$(CP_R) mods/d2k "$(DATA_INSTALL_DIR)/mods/" diff --git a/data/patches/windows/windows-d2-common.patch b/data/patches/windows/windows-d2-common.patch new file mode 100644 index 0000000..4af3025 --- /dev/null +++ b/data/patches/windows/windows-d2-common.patch @@ -0,0 +1,32 @@ +--- a/mods/all/mod.yaml ++++ b/mods/all/mod.yaml +@@ -18,6 +18,7 @@ + ./mods/common/OpenRA.Mods.Common.dll + ./mods/common/OpenRA.Mods.Cnc.dll + ./mods/d2k/OpenRA.Mods.D2k.dll ++ ./mods/d2/OpenRA.Mods.D2.dll + + ChromeLayout: + +--- a/mods/d2/mod.yaml ++++ b/mods/d2/mod.yaml +@@ -5,7 +5,7 @@ + Author: the OpenRA Developers + + RequiresMods: +- modchooser: {DEV_VERSION} ++ + + Packages: + ~^Content/d2 + +--- a/utility.cmd ++++ b/utility.cmd +@@ -17,6 +17,7 @@ + if /I "%mod%" EQU "cnc" (goto help) + if /I "%mod%" EQU "ts" (goto help) + if /I "%mod%" EQU "d2k" (goto help) ++if /I "%mod%" EQU "d2" (goto help) + echo. + echo Unknown mod: %mod% + echo. diff --git a/data/patches/windows/windows-d2-csproj.patch b/data/patches/windows/windows-d2-csproj.patch new file mode 100644 index 0000000..82843a9 --- /dev/null +++ b/data/patches/windows/windows-d2-csproj.patch @@ -0,0 +1,70 @@ +--- a/OpenRA.Mods.D2/OpenRA.Mods.D2.csproj ++++ b/OpenRA.Mods.D2/OpenRA.Mods.D2.csproj +@@ -17,8 +17,8 @@ + prompt + bin\Debug\ + +- +- ++ ++ + + TRACE;DEBUG; + AllRules.ruleset +@@ -36,20 +36,20 @@ + AllRules.ruleset + true + +- +- ++ ++ + + false + + + +- dependencies\OpenRA.Game.exe ++ ..\OpenRA.Game.exe + + +- dependencies\OpenRA.Mods.Common.dll ++ ..\OpenRA.Mods.Common\OpenRA.Mods.Common.dll + + +- dependencies\Eluant.dll ++ ..\thirdparty\download\Eluant.dll + False + + +@@ -59,6 +59,18 @@ + + + ++ ++ ++ {0DFB103F-2962-400F-8C6D-E2C28CCBA633} ++ OpenRA.Game ++ False ++ ++ ++ {fe6c8cc0-2f07-442a-b29f-17617b3b7fc6} ++ OpenRA.Mods.Common ++ False ++ ++ + + + +@@ -72,7 +84,8 @@ + + + +- copy $(TargetPath) $(ProjectDir).. +- ++ mkdir "$(SolutionDir)mods/d2/" ++copy "$(TargetPath)" "$(SolutionDir)mods/d2/" ++cd "$(SolutionDir)" + + +\ No newline at end of file diff --git a/data/patches/windows/windows-d2-ra2-make.patch b/data/patches/windows/windows-d2-ra2-make.patch new file mode 100644 index 0000000..d163cce --- /dev/null +++ b/data/patches/windows/windows-d2-ra2-make.patch @@ -0,0 +1,35 @@ +--- a/make.ps1 ++++ b/make.ps1 +@@ -71,7 +71,7 @@ + + if ($version -ne $null) + { +- $mods = @("mods/ra/mod.yaml", "mods/cnc/mod.yaml", "mods/d2k/mod.yaml", "mods/ts/mod.yaml", "mods/modchooser/mod.yaml", "mods/all/mod.yaml") ++ $mods = @("mods/ra/mod.yaml", "mods/cnc/mod.yaml", "mods/d2k/mod.yaml", "mods/ts/mod.yaml", "mods/ra2/mod.yaml", "mods/d2/mod.yaml", "mods/modchooser/mod.yaml", "mods/all/mod.yaml") + foreach ($mod in $mods) + { + $replacement = (gc $mod) -Replace "Version:.*", ("Version: {0}" -f $version) +@@ -111,8 +111,12 @@ + echo "Testing mods..." + echo "Testing Tiberian Sun mod MiniYAML..." + ./OpenRA.Utility.exe ts --check-yaml ++ echo "Testing Red Alert 2 mod MiniYAML..." ++ ./OpenRA.Utility.exe ra2 --check-yaml + echo "Testing Dune 2000 mod MiniYAML..." + ./OpenRA.Utility.exe d2k --check-yaml ++ echo "Testing Dune 2 mod MiniYAML..." ++ ./OpenRA.Utility.exe d2 --check-yaml + echo "Testing Tiberian Dawn mod MiniYAML..." + ./OpenRA.Utility.exe cnc --check-yaml + echo "Testing Red Alert mod MiniYAML..." +@@ -141,6 +145,10 @@ + ./OpenRA.Utility.exe cnc --check-code-style OpenRA.Mods.Cnc + echo "Checking for code style violations in OpenRA.Mods.D2k..." + ./OpenRA.Utility.exe cnc --check-code-style OpenRA.Mods.D2k ++ echo "Checking for code style violations in OpenRA.Mods.D2..." ++ ./OpenRA.Utility.exe d2 --check-code-style OpenRA.Mods.D2 ++ echo "Checking for code style violations in OpenRA.Mods.RA2..." ++ ./OpenRA.Utility.exe ra2 --check-code-style OpenRA.Mods.RA2 + echo "Checking for code style violations in OpenRA.Utility..." + ./OpenRA.Utility.exe cnc --check-code-style OpenRA.Utility + echo "Checking for code style violations in OpenRA.Test..." diff --git a/data/patches/windows/windows-d2-ra2-openra-solution.patch b/data/patches/windows/windows-d2-ra2-openra-solution.patch new file mode 100644 index 0000000..bfba689 --- /dev/null +++ b/data/patches/windows/windows-d2-ra2-openra-solution.patch @@ -0,0 +1,28 @@ +--- a/OpenRA.sln ++++ b/OpenRA.sln +@@ -13,6 +13,10 @@ + EndProject + Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.D2k", "OpenRA.Mods.D2k\OpenRA.Mods.D2k.csproj", "{C0B0465C-6BE2-409C-8770-3A9BF64C4344}" + EndProject ++Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.D2", "OpenRA.Mods.D2\OpenRA.Mods.D2.csproj", "{C0B0465C-6BE2-409C-8770-3A9BF64C4341}" ++EndProject ++Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.RA2", "OpenRA.Mods.RA2\OpenRA.Mods.RA2.csproj", "{7E1263D2-BA04-48D0-85DB-26C68B782608}" ++EndProject + Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Platforms.Default", "OpenRA.Platforms.Default\OpenRA.Platforms.Default.csproj", "{33D03738-C154-4028-8EA8-63A3C488A651}" + EndProject + Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.Common", "OpenRA.Mods.Common\OpenRA.Mods.Common.csproj", "{FE6C8CC0-2F07-442A-B29F-17617B3B7FC6}" +@@ -152,6 +156,14 @@ + {C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Debug|x86.Build.0 = Debug|x86 + {C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Release|x86.ActiveCfg = Release|x86 + {C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Release|x86.Build.0 = Release|x86 ++ {C0B0465C-6BE2-409C-8770-3A9BF64C4341}.Debug|x86.ActiveCfg = Debug|x86 ++ {C0B0465C-6BE2-409C-8770-3A9BF64C4341}.Debug|x86.Build.0 = Debug|x86 ++ {C0B0465C-6BE2-409C-8770-3A9BF64C4341}.Release|x86.ActiveCfg = Release|x86 ++ {C0B0465C-6BE2-409C-8770-3A9BF64C4341}.Release|x86.Build.0 = Release|x86 ++ {7E1263D2-BA04-48D0-85DB-26C68B782608}.Debug|x86.ActiveCfg = Debug|x86 ++ {7E1263D2-BA04-48D0-85DB-26C68B782608}.Debug|x86.Build.0 = Debug|x86 ++ {7E1263D2-BA04-48D0-85DB-26C68B782608}.Release|x86.ActiveCfg = Release|x86 ++ {7E1263D2-BA04-48D0-85DB-26C68B782608}.Release|x86.Build.0 = Release|x86 + {33D03738-C154-4028-8EA8-63A3C488A651}.Debug|x86.ActiveCfg = Debug|x86 + {33D03738-C154-4028-8EA8-63A3C488A651}.Debug|x86.Build.0 = Debug|x86 + {33D03738-C154-4028-8EA8-63A3C488A651}.Release|x86.ActiveCfg = Release|x86 diff --git a/data/patches/windows/windows-ra2-common.patch b/data/patches/windows/windows-ra2-common.patch new file mode 100644 index 0000000..2c1d1f8 --- /dev/null +++ b/data/patches/windows/windows-ra2-common.patch @@ -0,0 +1,33 @@ +--- a/mods/all/mod.yaml ++++ b/mods/all/mod.yaml +@@ -17,6 +17,7 @@ + Assemblies: + ./mods/common/OpenRA.Mods.Common.dll + ./mods/common/OpenRA.Mods.Cnc.dll ++ ./mods/ra2/OpenRA.Mods.RA2.dll + ./mods/d2k/OpenRA.Mods.D2k.dll + + ChromeLayout: + +--- a/mods/ra2/mod.yaml ++++ b/mods/ra2/mod.yaml +@@ -5,7 +5,7 @@ + Author: the RA2 mod team + + RequiresMods: +- modchooser: {DEV_VERSION} ++ + + Packages: + ~^Content/ra2 + +--- a/utility.cmd ++++ b/utility.cmd +@@ -16,6 +16,7 @@ + if /I "%mod%" EQU "ra" (goto help) + if /I "%mod%" EQU "cnc" (goto help) + if /I "%mod%" EQU "ts" (goto help) ++if /I "%mod%" EQU "ra2" (goto help) + if /I "%mod%" EQU "d2k" (goto help) + echo. + echo Unknown mod: %mod% diff --git a/data/patches/windows/windows-ra2-csproj.patch b/data/patches/windows/windows-ra2-csproj.patch new file mode 100644 index 0000000..1c3a2af --- /dev/null +++ b/data/patches/windows/windows-ra2-csproj.patch @@ -0,0 +1,97 @@ +--- a/OpenRA.Mods.RA2/OpenRA.Mods.RA2.csproj ++++ b/OpenRA.Mods.RA2/OpenRA.Mods.RA2.csproj +@@ -12,7 +12,7 @@ + + x86 + +- ++ + True + Full + False +@@ -21,38 +21,47 @@ + bin\Debug\ + + +- +- ++ ++ + + ++ AllRules.ruleset ++ true + +- +- False +- None ++ ++ True ++ pdbonly + True + False + TRACE + bin\Release\ ++ x86 ++ prompt + + +- +- ++ ++ + + ++ AllRules.ruleset ++ true + + ++ ++ ++ + + +- dependencies\OpenRA.Game.exe ++ ..\OpenRA.Game.exe + + +- dependencies\OpenRA.Mods.Cnc.dll ++ ..\OpenRA.Mods.Cnc\OpenRA.Mods.Cnc.dll + + +- dependencies\OpenRA.Mods.Common.dll ++ ..\OpenRA.Mods.Common\OpenRA.Mods.Common.dll + + +- dependencies\Eluant.dll ++ ..\thirdparty\download\Eluant.dll + + + +@@ -61,9 +70,26 @@ + + + ++ ++ {0DFB103F-2962-400F-8C6D-E2C28CCBA633} ++ OpenRA.Game ++ False ++ ++ ++ {fe6c8cc0-2f07-442a-b29f-17617b3b7fc6} ++ OpenRA.Mods.Common ++ False ++ ++ ++ + + + + + ++ ++ mkdir "$(SolutionDir)mods/ra2/" ++copy "$(TargetPath)" "$(SolutionDir)mods/ra2/" ++cd "$(SolutionDir)" ++ + diff --git a/data/patches/windows/windows-ra2-make.patch b/data/patches/windows/windows-ra2-make.patch new file mode 100644 index 0000000..ba06d65 --- /dev/null +++ b/data/patches/windows/windows-ra2-make.patch @@ -0,0 +1,29 @@ +--- a/make.ps1 ++++ b/make.ps1 +@@ -71,7 +71,7 @@ + + if ($version -ne $null) + { +- $mods = @("mods/ra/mod.yaml", "mods/cnc/mod.yaml", "mods/d2k/mod.yaml", "mods/ts/mod.yaml", "mods/modchooser/mod.yaml", "mods/all/mod.yaml") ++ $mods = @("mods/ra/mod.yaml", "mods/cnc/mod.yaml", "mods/d2k/mod.yaml", "mods/ts/mod.yaml", "mods/ra2/mod.yaml", "mods/modchooser/mod.yaml", "mods/all/mod.yaml") + foreach ($mod in $mods) + { + $replacement = (gc $mod) -Replace "Version:.*", ("Version: {0}" -f $version) +@@ -111,6 +111,8 @@ + echo "Testing mods..." + echo "Testing Tiberian Sun mod MiniYAML..." + ./OpenRA.Utility.exe ts --check-yaml ++ echo "Testing Red Alert 2 mod MiniYAML..." ++ ./OpenRA.Utility.exe ra2 --check-yaml + echo "Testing Dune 2000 mod MiniYAML..." + ./OpenRA.Utility.exe d2k --check-yaml + echo "Testing Tiberian Dawn mod MiniYAML..." +@@ -141,6 +143,8 @@ + ./OpenRA.Utility.exe cnc --check-code-style OpenRA.Mods.Cnc + echo "Checking for code style violations in OpenRA.Mods.D2k..." + ./OpenRA.Utility.exe cnc --check-code-style OpenRA.Mods.D2k ++ echo "Checking for code style violations in OpenRA.Mods.RA2..." ++ ./OpenRA.Utility.exe ra2 --check-code-style OpenRA.Mods.RA2 + echo "Checking for code style violations in OpenRA.Utility..." + ./OpenRA.Utility.exe cnc --check-code-style OpenRA.Utility + echo "Checking for code style violations in OpenRA.Test..." diff --git a/data/patches/windows/windows-ra2-openra-solution.patch b/data/patches/windows/windows-ra2-openra-solution.patch new file mode 100644 index 0000000..e6558ee --- /dev/null +++ b/data/patches/windows/windows-ra2-openra-solution.patch @@ -0,0 +1,23 @@ +--- a/OpenRA.sln ++++ b/OpenRA.sln +@@ -13,6 +13,8 @@ + EndProject + Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.D2k", "OpenRA.Mods.D2k\OpenRA.Mods.D2k.csproj", "{C0B0465C-6BE2-409C-8770-3A9BF64C4344}" + EndProject ++Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.RA2", "OpenRA.Mods.RA2\OpenRA.Mods.RA2.csproj", "{7E1263D2-BA04-48D0-85DB-26C68B782608}" ++EndProject + Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Platforms.Default", "OpenRA.Platforms.Default\OpenRA.Platforms.Default.csproj", "{33D03738-C154-4028-8EA8-63A3C488A651}" + EndProject + Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.Common", "OpenRA.Mods.Common\OpenRA.Mods.Common.csproj", "{FE6C8CC0-2F07-442A-B29F-17617B3B7FC6}" +@@ -152,6 +154,10 @@ + {C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Debug|x86.Build.0 = Debug|x86 + {C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Release|x86.ActiveCfg = Release|x86 + {C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Release|x86.Build.0 = Release|x86 ++ {7E1263D2-BA04-48D0-85DB-26C68B782608}.Debug|x86.ActiveCfg = Debug|x86 ++ {7E1263D2-BA04-48D0-85DB-26C68B782608}.Debug|x86.Build.0 = Debug|x86 ++ {7E1263D2-BA04-48D0-85DB-26C68B782608}.Release|x86.ActiveCfg = Release|x86 ++ {7E1263D2-BA04-48D0-85DB-26C68B782608}.Release|x86.Build.0 = Release|x86 + {33D03738-C154-4028-8EA8-63A3C488A651}.Debug|x86.ActiveCfg = Debug|x86 + {33D03738-C154-4028-8EA8-63A3C488A651}.Debug|x86.Build.0 = Debug|x86 + {33D03738-C154-4028-8EA8-63A3C488A651}.Release|x86.ActiveCfg = Release|x86 +