Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update engine to playtest 20201213 #764

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
b2edaec
Remove MaxMind.dll - fixes windows build
kienanstewart Jan 22, 2021
78c7427
Fix macosx build
kienanstewart Jan 22, 2021
7e5344d
Copy dylibs from engine to package for MacOS
kienanstewart Jan 22, 2021
1309141
Start of engine update to playtest-20201213
kienanstewart Jan 26, 2021
8faa0de
Fix content loading
kienanstewart Jan 27, 2021
94b173a
Replace SelfHealing with ChangesHealth
kienanstewart Jan 27, 2021
a760065
Add dimensions and footprint for chronosphere and iron curtain
kienanstewart Jan 27, 2021
4e74dcc
Add placeholder entries in chrome.yaml to load menu
kienanstewart Jan 27, 2021
cf99405
Fix crash loading streams from audio bag
kienanstewart Jan 27, 2021
92f1d0a
Add capacity pips to harvesters
kienanstewart Jan 27, 2021
74c9576
Add default cargo pips back for vehicles that require them
kienanstewart Jan 28, 2021
ccbad9f
Update FacingTolerance to match WAngle extents
kienanstewart Jan 28, 2021
708da9a
Rename ValidStaqnces to ValidRelationships
kienanstewart Jan 28, 2021
e04612c
Update InitialFacing and PreviewFacing
kienanstewart Jan 28, 2021
a646203
Update TurnSpeed
kienanstewart Jan 28, 2021
d232678
Fix crash when Nighthawk attacks
kienanstewart Jan 28, 2021
9780675
Fix dock angle's for refineries
kienanstewart Jan 29, 2021
527b1d4
Update Facing values
kienanstewart Jan 29, 2021
c667662
Replace Left/Right Color with Min/Max Color
kienanstewart Jan 29, 2021
d041776
Remove MuzzleSplitFacings
kienanstewart Jan 29, 2021
31ccac8
Replace AmmoPool/PipCount with WithAmmomPipsDecoration
kienanstewart Jan 29, 2021
f11f65d
Use yellow pips for ore in harvesters
kienanstewart Jan 29, 2021
2558a87
Use inherited cargopips definition for transports
kienanstewart Jan 29, 2021
0b6fdb2
Fix destroyers attacking with osprey
kienanstewart Jan 30, 2021
cdcd9ff
Replace all ReferencePoint with Position
kienanstewart Jan 30, 2021
f76e88c
Add selection decorations back to vehicles
kienanstewart Jan 30, 2021
63426ca
Update launch-game.cmd for new engine location
kienanstewart Jan 31, 2021
abdfae4
Update utility and stylecheck exe paths in make.ps1
kienanstewart Jan 31, 2021
144fbc1
Update OpenRA.Utility.exe path
kienanstewart Jan 31, 2021
6856600
Add dependencies to the test target
kienanstewart Jan 31, 2021
d4490a8
Fix unknown trait field 'ForceRelationships'
kienanstewart Jan 31, 2021
c53a478
Fix combined muzzle sequences
kienanstewart Jan 31, 2021
da806e2
Remove PipColor from resources
kienanstewart Jan 31, 2021
f18a779
Rename SmokeType and SmokePercentage
kienanstewart Jan 31, 2021
d450377
Rename DisplayTimerStances to DisplayTimeRelationships
kienanstewart Jan 31, 2021
cb7aeaa
Replace FlashType with FlashPaletteEffect for nukes
kienanstewart Jan 31, 2021
5650540
Replace Notification with InfiltratedNotification
kienanstewart Jan 31, 2021
fcce71e
Allow null images for a number of projectile sequences
kienanstewart Jan 31, 2021
3d7b373
Fix missing muzzle on allied fv
kienanstewart Jan 31, 2021
7a466bc
Fix warning about missing animation for dog DefaultAttackSequence
kienanstewart Jan 31, 2021
02be2f4
Fix last warnings from test command
kienanstewart Feb 2, 2021
09a3413
Fix frame-end behaviour for carrier parents (eg. destroyers)
kienanstewart Feb 2, 2021
c722267
Import OpenRAModSDK changes since 20200503
kienanstewart Feb 2, 2021
20f09d5
Copy glyphs.png from RA temporarily
kienanstewart Feb 2, 2021
ad2ff61
Ignore .so files everywhere
kienanstewart Feb 2, 2021
c1a46d3
Add scaled glyphs from RA
kienanstewart Feb 2, 2021
51f50b0
Fix harvester pip colouration
kienanstewart Feb 2, 2021
d0555ef
Fix pip colours for transports
kienanstewart Feb 2, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
# Enforce LF normalization on Windows
*.yaml eol=lf
*.lua eol=lf
*.cs eol=lf
*.csproj eol=lf
*.sln eol=lf
* text=lf

# Custom for Visual Studio
Expand Down
51 changes: 51 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Continuous Integration

on:
push:
pull_request:

jobs:
linux-mono:
name: Linux (mono)
runs-on: ubuntu-20.04

steps:
- name: Clone Repository
uses: actions/checkout@v2

- name: Prepare Environment
run: |
. mod.config;
awk '/\r$$/ { exit(1); }' mod.config || (printf "Invalid mod.config format. File must be saved using unix-style (LF, not CRLF or CR) line endings.\n"; exit 1);

- name: Check Code
run: |
make check
make check-packaging-scripts

- name: Check Mod
run: |
sudo apt-get install lua5.1
make check-scripts
make test

windows:
name: Windows (Framework 4.7)
runs-on: windows-2019

steps:
- name: Clone Repository
uses: actions/checkout@v2

- name: Check Code
shell: powershell
run: |
dotnet nuget locals all --clear
.\make.ps1 check

- name: Check Mods
run: |
chocolatey install lua --version 5.1.5.52
$ENV:Path = $ENV:Path + ";C:\Program Files (x86)\Lua\5.1\"
.\make.ps1 check-scripts
.\make.ps1 test
94 changes: 94 additions & 0 deletions .github/workflows/packaging.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
name: Release Packaging

on:
push:
tags:
- '*'

jobs:
linux:
name: Linux AppImages
runs-on: ubuntu-20.04

steps:
- name: Clone Repository
uses: actions/checkout@v2

- name: Prepare Environment
run: echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV}

- name: Package AppImage
run: |
make engine
mkdir -p build/linux
./packaging/linux/buildpackage.sh "${GIT_TAG}" "${PWD}/build/linux"

- name: Upload Packages
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
tag: ${{ github.ref }}
overwrite: true
file_glob: true
file: build/linux/*

macos:
name: macOS Disk Images
runs-on: macos-10.15

steps:
- name: Clone Repository
uses: actions/checkout@v2

- name: Prepare Environment
run: echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV}

- name: Package Disk Images
env:
MACOS_DEVELOPER_IDENTITY: ${{ secrets.MACOS_DEVELOPER_IDENTITY }}
MACOS_DEVELOPER_CERTIFICATE_BASE64: ${{ secrets.MACOS_DEVELOPER_CERTIFICATE_BASE64 }}
MACOS_DEVELOPER_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_DEVELOPER_CERTIFICATE_PASSWORD }}
MACOS_DEVELOPER_USERNAME: ${{ secrets.MACOS_DEVELOPER_USERNAME }}
MACOS_DEVELOPER_PASSWORD: ${{ secrets.MACOS_DEVELOPER_PASSWORD }}
run: |
make engine
mkdir -p build/macos
./packaging/macos/buildpackage.sh "${GIT_TAG}" "${PWD}/build/macos"

- name: Upload Packages
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
tag: ${{ github.ref }}
overwrite: true
file_glob: true
file: build/macos/*

windows:
name: Windows Installers
runs-on: ubuntu-20.04

steps:
- name: Clone Repository
uses: actions/checkout@v2

- name: Prepare Environment
run: |
echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV}
sudo apt-get update
sudo apt-get install nsis

- name: Package Installers
run: |
make engine
mkdir -p build/windows
./packaging/windows/buildpackage.sh "${GIT_TAG}" "${PWD}/build/windows"

- name: Upload Packages
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
tag: ${{ github.ref }}
overwrite: true
file_glob: true
file: build/windows/*
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ _ReSharper.*/
/*.exe
/*.dll
/*.dll.config
/*.so
*.so
/*.dylib
/*.pdb
/*.mdb
Expand Down Expand Up @@ -52,6 +52,7 @@ StyleCopViolations.xml

# Mac OS X
.DS_Store
.idea

# XCode
temp.c
Expand Down
66 changes: 0 additions & 66 deletions .travis.yml

This file was deleted.

71 changes: 36 additions & 35 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,21 @@
# make check-sdk-scripts
# make check-packaging-scripts

.PHONY: utility stylecheck build clean engine version check check-scripts check-sdk-scripts check-packaging-scripts check-variables
.PHONY: check-sdk-scripts check-packaging-scripts check-variables engine all clean version check-scripts check test
.DEFAULT_GOAL := all

PYTHON = $(shell command -v python3 2> /dev/null)
ifeq ($(PYTHON),)
PYTHON = $(shell command -v python 2> /dev/null)
endif
ifeq ($(PYTHON),)
$(error "The OpenRA mod SDK requires python.")
endif

VERSION = $(shell git name-rev --name-only --tags --no-undefined HEAD 2>/dev/null || echo git-`git rev-parse --short HEAD`)
MOD_ID = $(shell cat user.config mod.config 2> /dev/null | awk -F= '/MOD_ID/ { print $$2; exit }')
ENGINE_DIRECTORY = $(shell cat user.config mod.config 2> /dev/null | awk -F= '/ENGINE_DIRECTORY/ { print $$2; exit }')
MOD_SEARCH_PATHS = "$(shell python -c "import os; print(os.path.realpath('.'))")/mods,./mods"
MOD_SEARCH_PATHS = "$(shell $(PYTHON) -c "import os; print(os.path.realpath('.'))")/mods,./mods"

WHITELISTED_OPENRA_ASSEMBLIES = "$(shell cat user.config mod.config 2> /dev/null | awk -F= '/WHITELISTED_OPENRA_ASSEMBLIES/ { print $$2; exit }')"
WHITELISTED_THIRDPARTY_ASSEMBLIES = "$(shell cat user.config mod.config 2> /dev/null | awk -F= '/WHITELISTED_THIRDPARTY_ASSEMBLIES/ { print $$2; exit }')"
Expand All @@ -40,8 +48,19 @@ MOD_SOLUTION_FILES = $(shell find . -maxdepth 1 -iname '*.sln' 2> /dev/null)

MSBUILD = msbuild -verbosity:m -nologo

# Enable 32 bit builds while generating the windows installer
WIN32 = false
ifndef TARGETPLATFORM
UNAME_S := $(shell uname -s)
UNAME_M := $(shell uname -m)
ifeq ($(UNAME_S),Darwin)
TARGETPLATFORM = osx-x64
else
ifeq ($(UNAME_M),x86_64)
TARGETPLATFORM = linux-x64
else
TARGETPLATFORM = unix-generic
endif
endif
endif

check-sdk-scripts:
@awk '/\r$$/ { exit(1); }' mod.config || (printf "Invalid mod.config format: file must be saved using unix-style (CR, not CRLF) line endings.\n"; exit 1)
Expand Down Expand Up @@ -102,43 +121,25 @@ check-variables:
exit 1; \
fi

engine-dependencies: check-variables check-sdk-scripts
@./fetch-engine.sh || (printf "Unable to continue without engine files\n"; exit 1)
@cd $(ENGINE_DIRECTORY) && make dependencies WIN32=$(WIN32)

engine: check-variables check-sdk-scripts
@./fetch-engine.sh || (printf "Unable to continue without engine files\n"; exit 1)
@cd $(ENGINE_DIRECTORY) && make core WIN32=$(WIN32)

utility: engine-dependencies engine
@test -f "$(ENGINE_DIRECTORY)/OpenRA.Utility.exe" || (printf "OpenRA.Utility.exe not found!\n"; exit 1)
@cd $(ENGINE_DIRECTORY) && make TARGETPLATFORM=$(TARGETPLATFORM) all

core:
@command -v $(MSBUILD) >/dev/null || (echo "OpenRA requires the '$(MSBUILD)' tool provided by Mono >= 5.4."; exit 1)
all: engine
@command -v $(MSBUILD) >/dev/null || (echo "OpenRA requires the '$(MSBUILD)' tool provided by Mono >= 5.18."; exit 1)
ifneq ("$(MOD_SOLUTION_FILES)","")
@find . -maxdepth 1 -name '*.sln' -exec $(MSBUILD) -t:restore \;
ifeq ($(WIN32), $(filter $(WIN32),true yes y on 1))
@find . -maxdepth 1 -name '*.sln' -exec $(MSBUILD) -t:build -p:Configuration="Release-x86" \;
else
@$(MSBUILD) -t:build -p:Configuration=Release
@find . -maxdepth 1 -name '*.sln' -exec $(MSBUILD) -t:build -p:Configuration=Release \;
endif
@find . -maxdepth 1 -name '*.sln' -exec $(MSBUILD) -t:Build -restore -p:Configuration=Release -p:TargetPlatform=$(TARGETPLATFORM) \;
endif

all: engine-dependencies engine core

clean: engine
@command -v $(MSBUILD) >/dev/null || (echo "OpenRA requires the '$(MSBUILD)' tool provided by Mono >= 5.4."; exit 1)
@command -v $(MSBUILD) >/dev/null || (echo "OpenRA requires the '$(MSBUILD)' tool provided by Mono >= 5.18."; exit 1)
ifneq ("$(MOD_SOLUTION_FILES)","")
@find . -maxdepth 1 -name '*.sln' -exec $(MSBUILD) -t:clean \;
endif
@cd $(ENGINE_DIRECTORY) && make clean
@printf "The engine has been cleaned.\n"

version: check-variables
@awk '{sub("Version:.*$$","Version: $(VERSION)"); print $0}' $(MANIFEST_PATH) > $(MANIFEST_PATH).tmp && \
awk '{sub("/[^/]*: User$$", "/$(VERSION): User"); print $0}' $(MANIFEST_PATH).tmp > $(MANIFEST_PATH) && \
rm $(MANIFEST_PATH).tmp
@sh -c '. $(ENGINE_DIRECTORY)/packaging/functions.sh; set_mod_version $(VERSION) $(MANIFEST_PATH)'
@printf "Version changed to $(VERSION).\n"

check-scripts: check-variables
Expand All @@ -151,18 +152,18 @@ ifneq ("$(LUA_FILES)","")
@luac -p $(LUA_FILES)
endif

check: utility
check: engine
ifneq ("$(MOD_SOLUTION_FILES)","")
@echo "Compiling in debug mode..."
@$(MSBUILD) -t:build -p:Configuration=Debug
@find . -maxdepth 1 -name '*.sln' -exec $(MSBUILD) -t:Build -restore -p:Configuration=Debug -p:TargetPlatform=$(TARGETPLATFORM) \;
endif
@echo "Checking runtime assemblies..."
@MOD_SEARCH_PATHS="$(MOD_SEARCH_PATHS)" mono --debug "$(ENGINE_DIRECTORY)/OpenRA.Utility.exe" $(MOD_ID) --check-runtime-assemblies $(WHITELISTED_OPENRA_ASSEMBLIES) $(WHITELISTED_THIRDPARTY_ASSEMBLIES) $(WHITELISTED_CORE_ASSEMBLIES) $(WHITELISTED_MOD_ASSEMBLIES)
@./utility.sh --check-runtime-assemblies $(WHITELISTED_OPENRA_ASSEMBLIES) $(WHITELISTED_THIRDPARTY_ASSEMBLIES) $(WHITELISTED_CORE_ASSEMBLIES) $(WHITELISTED_MOD_ASSEMBLIES)
@echo "Checking for explicit interface violations..."
@MOD_SEARCH_PATHS="$(MOD_SEARCH_PATHS)" mono --debug "$(ENGINE_DIRECTORY)/OpenRA.Utility.exe" $(MOD_ID) --check-explicit-interfaces
@./utility.sh --check-explicit-interfaces
@echo "Checking for incorrect conditional trait interface overrides..."
@MOD_SEARCH_PATHS="$(MOD_SEARCH_PATHS)" mono --debug "$(ENGINE_DIRECTORY)/OpenRA.Utility.exe" $(MOD_ID) --check-conditional-trait-interface-overrides
@./utility.sh --check-conditional-trait-interface-overrides

test: utility
test: all
@echo "Testing $(MOD_ID) mod MiniYAML..."
@MOD_SEARCH_PATHS="$(MOD_SEARCH_PATHS)" mono --debug "$(ENGINE_DIRECTORY)/OpenRA.Utility.exe" $(MOD_ID) --check-yaml
@./utility.sh --check-yaml
1 change: 0 additions & 1 deletion OpenRA.Mods.RA2/FileSystem/BagFile.cs
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,6 @@ public Stream GetStream(string filename)
// Construct a merged stream
var waveStream = SegmentStream.CreateWithoutOwningStream(s, entry.Offset, (int)entry.Length);
var mergedStream = new MergedStream(waveHeaderMemoryStream, waveStream);
mergedStream.SetLength(waveHeaderMemoryStream.Length + entry.Length);

return mergedStream;
}
Expand Down
Loading