mirror of
https://github.com/R2Northstar/Northstar
synced 2025-09-18 19:30:50 +02:00
Compare commits
22 Commits
v1.8.1-rc5
...
v1.18.1
Author | SHA1 | Date | |
---|---|---|---|
![]() |
c447dcd04e | ||
![]() |
1171a5fd2d | ||
![]() |
39ac00c374 | ||
![]() |
0e68be66f7 | ||
![]() |
6132fc2c7d | ||
![]() |
7a7ca84bd2 | ||
![]() |
7db68d5169 | ||
![]() |
aa4d230051 | ||
![]() |
aeb3e5ee17 | ||
![]() |
20ae5c9786 | ||
![]() |
8d7b5e4515 | ||
![]() |
c6c55ff014 | ||
![]() |
fd1c3d98ea | ||
![]() |
28b5f4f99f | ||
![]() |
0ac4a964f3 | ||
![]() |
f015f27561 | ||
![]() |
bfd587df40 | ||
![]() |
91da7d7d1b | ||
![]() |
dc05ebfa9c | ||
![]() |
a66132db28 | ||
![]() |
88673385a0 | ||
![]() |
f28b0b21a7 |
114
.github/workflows/build.yml
vendored
114
.github/workflows/build.yml
vendored
@@ -2,7 +2,7 @@ name: Build
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '*'
|
||||
- 'v*'
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
job:
|
||||
@@ -10,76 +10,32 @@ on:
|
||||
required: true
|
||||
default: 'build-thunderstore-package'
|
||||
|
||||
permissions:
|
||||
contents: write # Needed to write to GitHub draft release
|
||||
|
||||
env:
|
||||
NORTHSTAR_VERSION: ${{ github.ref_name }}
|
||||
|
||||
jobs:
|
||||
build-launcher:
|
||||
runs-on: windows-2022
|
||||
steps:
|
||||
- name: Setup bundled plugins
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
repository: R2Northstar/NorthstarDiscordRPC
|
||||
path: discord-plugin
|
||||
- name: Checkout launcher repository
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
repository: R2Northstar/NorthstarLauncher
|
||||
ref: ${{ env.NORTHSTAR_VERSION }}
|
||||
path: northstar-launcher
|
||||
- name: Setup MSBuild
|
||||
uses: microsoft/setup-msbuild@v1.1
|
||||
- name: Setup resource file version
|
||||
shell: bash
|
||||
working-directory: northstar-launcher
|
||||
run: |
|
||||
sed -i 's/DEV/${{ env.NORTHSTAR_VERSION }}/g' LauncherInjector/resources.rc
|
||||
FILEVERSION=$(echo ${{ env.NORTHSTAR_VERSION }} | tr '.' ',' | sed -E 's/-rc[0-9]+//' | tr -d '[:alpha:]')
|
||||
sed -i "s/0,0,0,1/${FILEVERSION}/g" NorthstarDedicatedTest/ns_version.h
|
||||
- name: Build
|
||||
working-directory: northstar-launcher
|
||||
run: |
|
||||
cp -r ../discord-plugin/*Discord* .
|
||||
msbuild /p:Configuration=Release R2Northstar.sln
|
||||
msbuild /p:Configuration=Release NorthstarDiscordRPC.sln
|
||||
- name: Upload launcher build as artifact
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: northstar-launcher
|
||||
path: |
|
||||
northstar-launcher/x64/Release/Northstar.dll
|
||||
northstar-launcher/x64/Release/wsock32.dll
|
||||
northstar-launcher/x64/Release/NorthstarLauncher.exe
|
||||
northstar-launcher/x64/Release/discord_game_sdk.dll
|
||||
northstar-launcher/x64/Release/DiscordRPC.dll
|
||||
northstar-launcher/x64/Release/*.txt
|
||||
- name: Upload debug build artifact
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: launcher-debug-files
|
||||
path: |
|
||||
northstar-launcher/x64/Release/*.pdb
|
||||
|
||||
build-northstar:
|
||||
needs: build-launcher
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- name: Download compiled launcher
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
name: northstar-launcher
|
||||
path: northstar-launcher
|
||||
run:
|
||||
wget "https://github.com/R2Northstar/NorthstarLauncher/releases/download/${{ env.NORTHSTAR_VERSION }}/northstar-launcher.zip"
|
||||
- name: Download DiscordRPC plugin
|
||||
run:
|
||||
wget "https://github.com/R2Northstar/NorthstarDiscordRPC/releases/download/v4/northstar-discord-rpc.zip"
|
||||
- name: Download compiled stubs
|
||||
run:
|
||||
wget "https://github.com/R2Northstar/NorthstarStubs/releases/download/v1/NorthstarStubs.zip"
|
||||
- name: Checkout release files
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
ref: ${{ env.NORTHSTAR_VERSION }}
|
||||
path: northstar
|
||||
- name: Checkout core mods
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: R2Northstar/NorthstarMods
|
||||
ref: ${{ env.NORTHSTAR_VERSION }}
|
||||
@@ -98,21 +54,21 @@ jobs:
|
||||
- name: Make folder structure
|
||||
run: |
|
||||
mv -v northstar/release/* northstar/.
|
||||
rm -d northstar/release
|
||||
mkdir -p northstar/R2Northstar/mods
|
||||
mkdir -p northstar/R2Northstar/plugins
|
||||
mkdir -p northstar/bin/x64_retail
|
||||
mkdir -p northstar/bin/x64_dedi
|
||||
|
||||
mv -v northstar-launcher/DiscordRPC.dll northstar/R2Northstar/plugins
|
||||
mv -v northstar-launcher/discord_game_sdk.dll northstar
|
||||
mv -v northstar-launcher/wsock32.dll northstar/bin/x64_retail
|
||||
unzip northstar-discord-rpc.zip -d northstar/R2Northstar/plugins
|
||||
|
||||
unzip NorthstarStubs.zip -d northstar/bin/x64_dedi
|
||||
|
||||
mv -v northstar-launcher/* northstar
|
||||
unzip northstar-launcher.zip -d northstar
|
||||
rsync -avr --exclude="Northstar.Coop" --exclude=".git*" northstar-mods/. northstar/R2Northstar/mods
|
||||
- name: Checkout Navmesh repository
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
repository: R2Northstar/NorthstarNavs
|
||||
ref: 'v2'
|
||||
path: northstar-navs
|
||||
- name: Navmeshes setup
|
||||
run: |
|
||||
@@ -124,14 +80,27 @@ jobs:
|
||||
run: |
|
||||
rm -rf .git .github .gitignore *.md LICENSE thunderstore .ci.env.example
|
||||
- name: Upload
|
||||
uses: actions/upload-artifact@v2
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: Northstar.release.${{ env.NORTHSTAR_VERSION }}
|
||||
path: northstar
|
||||
- name: Create zip to upload
|
||||
run: |
|
||||
cd northstar/
|
||||
zip --recurse-paths --quiet Northstar.release.${{ env.NORTHSTAR_VERSION }}.zip .
|
||||
mv Northstar.release.${{ env.NORTHSTAR_VERSION }}.zip ../
|
||||
- name: Compute SHA-512 checksum
|
||||
run: |
|
||||
sha512sum Northstar.release.${{ env.NORTHSTAR_VERSION }}.zip
|
||||
- name: Upload zip to release draft
|
||||
uses: softprops/action-gh-release@v1
|
||||
if: startsWith(github.ref, 'refs/tags/v') && !contains(env.NORTHSTAR_VERSION, '-rc')
|
||||
with:
|
||||
draft: true
|
||||
files: Northstar.release.${{ env.NORTHSTAR_VERSION }}.zip
|
||||
|
||||
build-thunderstore-package:
|
||||
needs: build-northstar # comment out when running locally
|
||||
if: "!contains(github.ref, 'rc')" # Skip uploading release candidates to Thunderstore
|
||||
env:
|
||||
# Release envs, comment this out when running locally
|
||||
TCLI_AUTH_TOKEN: ${{ secrets.THUNDERSTORE_TOKEN }}
|
||||
@@ -161,7 +130,7 @@ jobs:
|
||||
|
||||
- name: Download Northstar package
|
||||
if: ${{ !env.ACT }} # Download artifacts from previous jobs when running on GitHub's infrastructure
|
||||
uses: actions/download-artifact@v2
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: Northstar.release.${{ env.NORTHSTAR_VERSION }}
|
||||
path: northstar
|
||||
@@ -169,14 +138,25 @@ jobs:
|
||||
- name: Make package structure
|
||||
run: |
|
||||
mkdir -p thunderstore/dist/Northstar
|
||||
rm northstar/ns_startup*.txt
|
||||
mv -v northstar/* thunderstore/dist/Northstar
|
||||
wget -O thunderstore/icon.png https://raw.githubusercontent.com/R2Northstar/Northstar/main/thunderstore/icon.png
|
||||
wget -O thunderstore/README.md https://raw.githubusercontent.com/R2Northstar/Northstar/main/thunderstore/README.md
|
||||
|
||||
- name: Setup environment variables
|
||||
run: |
|
||||
echo "MOD_VERSION=$(echo $NORTHSTAR_VERSION | tr -d 'v')" >> $GITHUB_ENV
|
||||
# Strip leading `v` and if exists replace `-rc` with `0` and strip leading zeroes from last semver digit if necessary
|
||||
echo "MOD_VERSION=$(echo $NORTHSTAR_VERSION | tr -d 'v'| sed --expression 's/-rc/0/' | sed -E 's/([0-9]+)\.([0-9]+)\.(0*)([0-9])/\1.\2.\4/;')" >> $GITHUB_ENV
|
||||
|
||||
# If it's a release candidate we also want to change a few things
|
||||
if [[ $NORTHSTAR_VERSION == *"-rc"* ]]; then
|
||||
# We want to push to a different package
|
||||
# i.e. `NorthstarReleaseCandidate` vs `Northstar`
|
||||
echo "TS_MOD_NAME=NorthstarReleaseCandidate" >> $GITHUB_ENV
|
||||
# And update mod description
|
||||
echo "TS_MOD_DESCRIPTION=Release candidate for next Northstar release." >> $GITHUB_ENV
|
||||
# Add disclaimer add the top of README
|
||||
echo -e '> ⚠️ This is a release candidate. Please report bugs or other issues on GitHub ⚠️\n' | cat - thunderstore/README.md > temp && mv temp thunderstore/README.md
|
||||
fi
|
||||
|
||||
- name: Publish package to Thunderstore
|
||||
working-directory: thunderstore
|
||||
|
12
README.md
12
README.md
@@ -1,6 +1,7 @@
|
||||
# Northstar
|
||||
|
||||
[](https://github.com/R2Northstar/Northstar/releases)
|
||||

|
||||
[](https://northstar.tf/discord)
|
||||
[](https://r2northstar.gitbook.io)
|
||||
|
||||
@@ -12,19 +13,22 @@ Northstar is a modding framework client that allows users to host their own Tita
|
||||
|
||||
## Development
|
||||
|
||||
Northstar's development is split into 4 repositories:
|
||||
Northstar's development is split into 6 repositories:
|
||||
|
||||
1. [NorthstarLauncher](https://github.com/R2Northstar/NorthstarLauncher) (Code for the C++ hook DLL)
|
||||
1. [NorthstarMods](https://github.com/R2Northstar/NorthstarMods) (Code for the squirrel mods responsible for server gamelogic recreation and custom content)
|
||||
1. [NorthstarMasterServer](https://github.com/R2Northstar/NorthstarMasterServer) (Responsible for server browser, authentication and persistence)
|
||||
1. [NorthstarStubs](https://github.com/R2Northstar/NorthstarStubs) (D3D11 and GFSDK stubs for the Northstar dedicated server)
|
||||
1. [NorthstarNavs](https://github.com/R2Northstar/NorthstarNavs) (Custom navmesh files used for AI navigation)
|
||||
1. [NorthstarDiscordRPC](https://github.com/R2Northstar/NorthstarDiscordRPC) (Discord RPC plugin)
|
||||
1. [Atlas](https://github.com/R2Northstar/Atlas) (Backend API for server browser, player authentication, and persistence)
|
||||
|
||||
The documentation is split into two repositories:
|
||||
The documentation is split into three repositories:
|
||||
1. [NorthstarTF](https://github.com/R2Northstar/NorthstarTF) (Main website)
|
||||
1. [NorthstarWiki](https://github.com/R2Northstar/NorthstarWiki) (Wiki covering installation, hosting and configuration of Northstar)
|
||||
1. [ModdingDocs](https://github.com/R2Northstar/ModdingDocs) (Guides and tutorials on how to mod using Northstar)
|
||||
|
||||
## Special Thanks
|
||||
|
||||
|
||||
Thanks to everyone that's put up with me and helped out with this project, it's been a fun passion project I've had throughout 2021 so releasing it is pretty cathartic. Specifically:
|
||||
|
||||
- Thanks to the Icepick developers for making the Icepick, I initially forked it for earlier versions of Northstar and it was a great base to experiment with stuff on before moving to the custom launcher.
|
||||
|
File diff suppressed because one or more lines are too long
Binary file not shown.
@@ -1 +0,0 @@
|
||||
-multiple
|
@@ -1 +0,0 @@
|
||||
+setplaylist private_match
|
Reference in New Issue
Block a user