mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-15 19:13:07 +01:00
- Feature: [#3154] Use a random title sequence each time it is shown. - Feature: [#6553] Android version now runs in full screen. - Feature: [#7865] Transport rides can now be synchronised. - Feature: [#9073] Shortcut keys for the Tile Inspector. - Feature: [#10305] Add two shortcuts for increasing and decreasing the scaling factor. - Feature: [#10189] Make Track Designs work in multiplayer. - Feature: [#10357] Added window for scenery scatter tool, allowing for area and density selection. - Feature: [#10637] Console command to remove all floating objects. - Change: [#1164] Use available translations for shortcut key bindings. - Change: [#10997] Speed is automatically reset to normal upon scenario completion. - Fix: [#2485] Hide Vertical Faces not applied to the edges of water. - Fix: [#5249] No collision detection when building ride entrance at heights > 85.5m. - Fix: [#6766] Changelog window doesn't open on some platforms. - Fix: [#7784] Vehicle tab takes 1st car colour instead of tab_vehicle's colour. - Fix: [#7854] Cannot build a custom spiral roller coaster design. - Fix: [#7854] Empty entries in spiral roller coaster designs list. - Fix: [#8151] Game freezes upon demolishing mazes at odd heights. - Fix: [#8875] RCT1 competition scenarios are classified incorrectly. - Fix: [#10176] Mistake in the sprite for the land tool's 6x6 grid. - Fix: [#10196] Doors unable to be placed at end of track corners. - Fix: [#10228] Can't import RCT1 Deluxe from Steam. - Fix: [#10313] Path furniture can be placed on level crossings. - Fix: [#10325] Crash when banners have no text. - Fix: [#10376] No ratings generated when a shop and track intersect. - Fix: [#10420] Money effect causing false positive desync. - Fix: [#10477] Large Scenery cannot be placed higher using SHIFT. - Fix: [#10489] Hosts last player action not being synchronized. - Fix: [#10543] Secondary shop item prices are not imported correctly from RCT1 saves. - Fix: [#10547] RCT1 parks have too many rides available. - Fix: [#10587] Update last action coordinates on correct player. - Fix: [#10631] Game bugs out and crashes if you get too many stations via copying stations with the tile inspector. - Fix: [#10662] Duck cheat tooltips look odd and do not explain anything. - Fix: [#10694] The lift hill speed of the flying roller coaster cannot be changed (original bug). - Fix: [#10705] Apply multithreaded rendering to all viewports. - Fix: [#10739] Mountain tool overlay for even-numbered selections. - Fix: [#10752] Mute button state not correctly set at startup. - Fix: [#10822] Can place too many peep spawns. - Fix: [#10898] Banner text has an offset in tile inspector window. - Fix: [#10904] RCT1/LL-scenarios with red water won't open. - Fix: [#10941] The Clear Scenery tool gives refunds for ghost elements. - Fix: [#10963] Light effects are drawn off-centre in some rotations. - Fix: [#10993] Bottom toolbar not refreshing when a guest leaves the park. - Fix: [#11001] Rides list does not use natural sorting. - Fix: [objects#54] Stage Coach cars are not considered covered by the game. - Fix: [objects#56] Handymen cut grass incorrectly. - Improved: [#682] The staff patrol area is now drawn on the water, instead of on the surface under water. - Improved: [#10858] Added horizontal grid lines to finance charts. - Improved: [#10884] Added y-axes and labels to park window charts. - Improved: [#10970] Introduced optional light effects for vehicles at night. - Removed: [#6898] LOADMM and LOADRCT1 title sequence commands (use LOADSC instead).
261 lines
8.9 KiB
YAML
261 lines
8.9 KiB
YAML
name: CI
|
|
on: [push, pull_request]
|
|
env:
|
|
OPENRCT2_BUILD_SERVER: GitHub
|
|
OPENRCT2_ORG_TOKEN: ${{ secrets.OPENRCT2_ORG_TOKEN }}
|
|
OPENRCT2_VERSION: 0.2.5
|
|
jobs:
|
|
check-code-formatting:
|
|
name: Check code formatting
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: openrct2/openrct2-build:0.2.4-format
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v1
|
|
- name: Run clang-format
|
|
run: scripts/check-code-formatting
|
|
windows:
|
|
name: Windows
|
|
runs-on: windows-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
platform: [win32, x64]
|
|
env:
|
|
CONFIGURATION: Release
|
|
PLATFORM: ${{ matrix.platform }}
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v1
|
|
- name: Build OpenRCT2
|
|
shell: bash
|
|
run: . scripts/setenv && build
|
|
- name: Build artifacts
|
|
shell: bash
|
|
run: |
|
|
. scripts/setenv -q
|
|
build-portable
|
|
build-symbols
|
|
build-installer -i
|
|
- name: Upload artifacts (CI)
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: "OpenRCT2-Windows-${{ matrix.platform }}"
|
|
path: artifacts
|
|
- name: Run Tests
|
|
shell: bash
|
|
run: . scripts/setenv -q && run-tests
|
|
- name: Upload artifacts (openrct2.org)
|
|
shell: bash
|
|
run: |
|
|
. scripts/setenv -q
|
|
if [[ "$OPENRCT2_PUSH" == "true" ]]; then
|
|
upload-build artifacts/openrct2-portable-*.zip "windows-portable-$PLATFORM" $OPENRCT2_VERSION $OPENRCT2_SHA1 $OPENRCT2_BRANCH
|
|
upload-build artifacts/openrct2-installer-*.exe "windows-installer-$PLATFORM" $OPENRCT2_VERSION $OPENRCT2_SHA1 $OPENRCT2_BRANCH
|
|
upload-build artifacts/openrct2-symbols-*.zip "windows-symbols-$PLATFORM" $OPENRCT2_VERSION $OPENRCT2_SHA1 $OPENRCT2_BRANCH
|
|
else
|
|
echo 'Not going to push build'
|
|
fi
|
|
windows-mingw:
|
|
name: Windows (win32) using mingw
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: openrct2/openrct2-build:0.2.4-mingw
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
- name: Build OpenRCT2
|
|
run: |
|
|
sudo su
|
|
mkdir bin && cd bin
|
|
cmake .. -G Ninja -DCMAKE_TOOLCHAIN_FILE=../CMakeLists_mingw.txt -DCMAKE_BUILD_TYPE=MinSizeRel -DDISABLE_IPO=on -DFORCE32=on -DBUILD_SHARED_LIBS=ON
|
|
ninja -k0
|
|
macos:
|
|
name: macOS
|
|
runs-on: macos-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v1
|
|
- name: Build OpenRCT2
|
|
run: |
|
|
. scripts/setenv
|
|
xcodebuild
|
|
mkdir -p artifacts
|
|
mv build/Release/OpenRCT2.app artifacts
|
|
- name: Upload artifacts (CI)
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: "OpenRCT2-macOS"
|
|
path: artifacts
|
|
- name: Upload artifacts (openrct2.org)
|
|
run: |
|
|
. scripts/setenv
|
|
if [[ "$OPENRCT2_PUSH" == "true" ]]; then
|
|
echo -e "\033[0;36mCompressing OpenRCT2.app...\033[0m"
|
|
cd artifacts
|
|
zip -rq openrct2-macos.zip OpenRCT2.app
|
|
upload-build openrct2-macos.zip macos $OPENRCT2_VERSION $OPENRCT2_SHA1 $OPENRCT2_BRANCH
|
|
else
|
|
echo 'Not going to push build'
|
|
fi
|
|
linux-portable:
|
|
name: Linux (x64, portable)
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: openrct2/openrct2-build:0.2.4-bionic
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v1
|
|
- name: Get pre-reqs
|
|
shell: bash
|
|
run: . scripts/setenv && get-discord-rpc
|
|
- name: Build OpenRCT2
|
|
shell: bash
|
|
run: . scripts/setenv -q && build -DWITH_TESTS=on -DCMAKE_BUILD_TYPE=MinSizeRel -DBUILD_SHARED_LIBS=ON -DPORTABLE=ON -DCMAKE_CXX_FLAGS="-g -gz"
|
|
- name: Build artifacts
|
|
shell: bash
|
|
run: . scripts/setenv -q && build-portable artifacts/OpenRCT2-Linux-x86_64.tar.gz bin/install/usr
|
|
- name: Upload artifacts (CI)
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: "OpenRCT2-Linux-x86_64"
|
|
path: artifacts
|
|
- name: Run Tests
|
|
shell: bash
|
|
run: . scripts/setenv -q && run-tests
|
|
- name: Upload artifacts (openrct2.org)
|
|
shell: bash
|
|
run: |
|
|
. scripts/setenv -q
|
|
if [[ "$OPENRCT2_PUSH" == "true" ]]; then
|
|
upload-build artifacts/OpenRCT2-Linux-x86_64.tar.gz linux-x86_64 $OPENRCT2_VERSION $OPENRCT2_SHA1 $OPENRCT2_BRANCH
|
|
else
|
|
echo 'Not going to push build'
|
|
fi
|
|
linux-portable-32:
|
|
name: Linux (i686, portable)
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: openrct2/openrct2-build:0.2.4-bionic32
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v1
|
|
- name: Get pre-reqs
|
|
shell: bash
|
|
run: . scripts/setenv && get-discord-rpc
|
|
- name: Build OpenRCT2
|
|
shell: bash
|
|
env:
|
|
TESTPAINT: true
|
|
run: . scripts/setenv -q && build -DWITH_TESTS=on -DCMAKE_BUILD_TYPE=MinSizeRel -DBUILD_SHARED_LIBS=ON -DPORTABLE=ON -DFORCE32=ON -DCMAKE_CXX_FLAGS="-m32 -gz"
|
|
- name: Build artifacts
|
|
shell: bash
|
|
run: . scripts/setenv -q && build-portable artifacts/OpenRCT2-Linux-i686.tar.gz bin/install/usr
|
|
- name: Upload artifacts (CI)
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: "OpenRCT2-Linux-i686"
|
|
path: artifacts
|
|
- name: Run Tests
|
|
shell: bash
|
|
run: . scripts/setenv -q && run-tests
|
|
- name: Run testpaint
|
|
shell: bash
|
|
run: . scripts/setenv -q && run-testpaint
|
|
- name: Upload artifacts (openrct2.org)
|
|
shell: bash
|
|
run: |
|
|
. scripts/setenv -q
|
|
if [[ "$OPENRCT2_PUSH" == "true" ]]; then
|
|
upload-build artifacts/OpenRCT2-Linux-i686.tar.gz linux-i686 $OPENRCT2_VERSION $OPENRCT2_SHA1 $OPENRCT2_BRANCH
|
|
else
|
|
echo 'Not going to push build'
|
|
fi
|
|
linux-appimage:
|
|
name: Linux (x64, AppImage)
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: openrct2/openrct2-build:0.2.4-bionic
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v1
|
|
- name: Get pre-reqs
|
|
shell: bash
|
|
run: . scripts/setenv -q && get-discord-rpc
|
|
- name: Build OpenRCT2
|
|
shell: bash
|
|
run: . scripts/setenv -q && build -DCMAKE_BUILD_TYPE=Release -DAPPIMAGE=ON
|
|
- name: Build AppImage
|
|
shell: bash
|
|
run: . scripts/setenv -q && build-appimage
|
|
- name: Upload artifacts (CI)
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: OpenRCT2-AppImage
|
|
path: artifacts
|
|
linux-docker:
|
|
name: Linux (docker)
|
|
if: github.repository == 'OpenRCT2/OpenRCT2'
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Build image
|
|
run: |
|
|
git clone --depth 1 https://github.com/OpenRCT2/openrct2-docker .
|
|
docker build -t openrct2/openrct2-cli:develop develop/cli
|
|
- name: Push image
|
|
env:
|
|
OPENRCT2_DOCKER_USER: ${{ secrets.OPENRCT2_DOCKER_USER }}
|
|
OPENRCT2_DOCKER_PASS: ${{ secrets.OPENRCT2_DOCKER_PASS }}
|
|
run: |
|
|
OPENRCT2_BRANCH=$(echo "$GITHUB_REF" | sed 's/refs\/heads\///')
|
|
echo "Current branch is $OPENRCT2_BRANCH"
|
|
if [ "$OPENRCT2_BRANCH" = 'develop' ]; then
|
|
docker login -u "$OPENRCT2_DOCKER_USER" -p "$OPENRCT2_DOCKER_PASS"
|
|
docker push openrct2/openrct2-cli:develop
|
|
else
|
|
echo 'Image not pushed'
|
|
fi
|
|
linux-clang:
|
|
name: Linux (Debug, [http, network, OpenGL] disabled) using clang
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: openrct2/openrct2-build:0.2.4-bionic
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v1
|
|
- name: Build OpenRCT2
|
|
shell: bash
|
|
run: . scripts/setenv && build -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_BUILD_TYPE=Debug -DDISABLE_NETWORK=ON -DDISABLE_HTTP_TWITCH=ON -DDISABLE_OPENGL=ON
|
|
android:
|
|
name: Android
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: openrct2/openrct2-build:0.2.4-android
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v1
|
|
- name: Build OpenRCT2
|
|
shell: bash
|
|
run: |
|
|
. scripts/setenv
|
|
pushd src/openrct2-android
|
|
./gradlew app:assemblePR
|
|
popd
|
|
mkdir -p artifacts
|
|
mv src/openrct2-android/app/build/outputs/apk/arm/pr/app-arm-pr.apk artifacts/openrct2-arm.apk
|
|
- name: Upload artifacts (CI)
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: "OpenRCT2-Android"
|
|
path: artifacts
|
|
- name: Upload artifacts (openrct2.org)
|
|
shell: bash
|
|
run: |
|
|
. scripts/setenv -q
|
|
if [[ "$OPENRCT2_PUSH" == "true" ]]; then
|
|
upload-build artifacts/openrct2-arm.apk android-arm $OPENRCT2_VERSION $OPENRCT2_SHA1 $OPENRCT2_BRANCH
|
|
else
|
|
echo 'Not going to push build'
|
|
fi
|