1
mirror of https://github.com/R2Northstar/Northstar synced 2025-09-16 14:10:48 +02:00

Compare commits

...

47 Commits

Author SHA1 Message Date
NachosChipeados
44c68e8e2c Update links to point to new wiki (#734)
Updates the wiki links to point to the new wiki. Also removes mention of the deprecated NorthstarWiki repo
2025-04-18 02:10:32 +02:00
GeckoEidechse
df9ff77e26 Use env var to define DiscordRPC version (#727)
to make editing the version number easier
2024-12-04 17:21:18 +01:00
GeckoEidechse
7ae04b0f32 Bump DiscordRPC plugin to v13 (#715)
Co-authored-by: cat_or_not <41955154+catornot@users.noreply.github.com>
2024-11-11 13:15:08 +01:00
GeckoEidechse
4ac160313e Use long arg for tr command (#712)
as it's more readable and indicative what it does
2024-10-14 12:37:09 +02:00
GeckoEidechse
8f8dc0540a Bump DiscordRPC plugin to v12 (#704)
Co-authored-by: Zanieon <william-millennium@hotmail.com>
2024-09-07 22:42:07 +02:00
GeckoEidechse
b8aaa68473 Bump DiscordRPC plugin to v11 (#702)
Co-authored-by: cat_or_not <41955154+catornot@users.noreply.github.com>
2024-09-07 03:13:56 +02:00
GeckoEidechse
8306655433 Exclude markdown files from Mods in releases (#700) 2024-09-03 17:29:46 +02:00
GeckoEidechse
ec3a748de8 Bump NorthstarNavs to v4 (#695)
Bump NorthstarNavs to v4

Co-authored-by: Zanieon <william-millennium@hotmail.com>
2024-08-31 01:09:52 +02:00
GeckoEidechse
23dfbf1f3e Trim trailing whitespaces 2024-08-29 18:52:01 +02:00
GeckoEidechse
8fdfdbd61a Add Action to auto-label PRs with merge conflicts (#682) 2024-08-09 13:22:51 +02:00
GeckoEidechse
767927fb92 Bump DiscordRPC plugin to v10 (#666) 2024-07-06 02:30:35 +02:00
GeckoEidechse
7a72ecffcf Bump softprops/action-gh-release action to v2 (#652)
as v1 uses Node 16 which is being deprecated in a few months
2024-06-22 12:09:23 +02:00
GeckoEidechse
e7e2d55c9b Bump upload/download artifact actions to v4 (#650)
as v3 is being deprecated in a few months
2024-06-18 15:04:50 +02:00
GeckoEidechse
ada52bb828 Bump cbrgm/mastodon-github-action to v2 (#635)
And update parameters accordingly
2024-03-03 12:22:12 +01:00
GeckoEidechse
86085f5c91 Bump CI runner to Ubuntu 22.04 (#627) 2024-02-18 22:16:46 +01:00
GeckoEidechse
ad3601c607 Bump actions/checkout to v4 (#625)
v3 uses Node 16 which is slated for deprecation by GitHub Actions
2024-02-06 16:39:25 +01:00
GeckoEidechse
904e6b00ef Bump DiscordRPC to v9 (#622)
Bumps DiscordRPC to match Plugin Interfaces / Plugins v4.
2024-02-04 03:37:37 +01:00
GeckoEidechse
4c0f02ba4f Escape backticks in run command (#617)
otherwise bash thinks we're trying to run the command "`"
2024-01-13 17:56:36 +01:00
GeckoEidechse
06f551ef71 Bump NorthstarNavs to v3 (#605)
Co-authored-by: Zanieon <william-millennium@hotmail.com>
2023-12-20 13:13:25 +01:00
GeckoEidechse
ee9239f4ae Rename Action from Build to Release (#585)
to better reflect what it does
2023-12-14 15:00:26 +01:00
GeckoEidechse
cfc1498753 Calculate checksum twice (#591)
build: Calculate checksum twice
Instead of storing result in env var.
2023-11-19 22:32:32 +01:00
GeckoEidechse
abf59ba5fe Print checksum to job summary (#589)
Makes it easier to copy out for making PR to Docker image repo
2023-11-17 19:57:12 +01:00
GeckoEidechse
05a32ee30e Bump DiscordRPC plugin to v6 (#587) 2023-11-15 17:06:32 +01:00
GeckoEidechse
e595fa0a83 Use long form for cli args (#565)
* Replace `mkdir`'s `-p` with `--parents`

* Replace `rm`'s `-d` with `--dir`

* Replace `mv`'s `-v` with `--verbose`

* Replace `sed`'s `-i` with `--in-place`

* Replace `wget`'s `-O` with `--output-document`
2023-11-07 16:42:36 +01:00
GeckoEidechse
937a1cdbba Bump DiscordRPC plugin to v5 (#583)
Bump DiscordRPC plugin to v5 which corresponds to the first version that supports plugins v3
2023-11-06 02:32:12 +01:00
GeckoEidechse
de87f41b45 Delete bash scripts in project root as well (#578)
Delete bash scripts in project root as well to prevent wait script from being included in release files
2023-11-02 13:32:13 +01:00
GeckoEidechse
d6d2dfe47d Use dl link instead of release page in wait script
Use the download link instead of the release link in wait script as
release link becomes valid on tag creation before download is ready.
2023-11-02 13:09:38 +01:00
GeckoEidechse
c829a40caa Pass missing version number to wait script 2023-11-02 12:49:34 +01:00
GeckoEidechse
a11a37e710 Checkout repo files as first step (#577)
Checkout the files from this repo first in order to have the bash
script ready that is needed to block launcher files download.
2023-11-02 12:14:51 +01:00
GeckoEidechse
72e8e50d77 Fix bash script file name
I changed the filename but forgot to update it in the CI config
2023-11-02 12:02:09 +01:00
GeckoEidechse
8fb1f315bb Add step to wait for launcher files to be ready (#576)
Adds a small bash script and calls it in CI to block the CI from progressing until the launcher release files are uploaded.
2023-11-02 11:51:52 +01:00
GeckoEidechse
4dccb376ec Trim trailing whitespaces 2023-10-30 21:05:31 +01:00
Jack
ec0491e1e3 Make add-to-project work on PRs (#574) 2023-10-29 00:01:55 +02:00
GeckoEidechse
cd971e5c0d Publish Mastodon post on new release (#571)
Adds an action to publish a post to Mastodon on each new release
2023-10-19 17:25:13 +02:00
GeckoEidechse
587363f257 Only run add-to-project action on issues
PRs from forks are triggered from that fork which means that they don't
have access to the necessary token
2023-10-15 02:19:18 +02:00
Jack
711676ec8a Add workflow for adding PRs and Issues to the project board (#566)
Automatically adds all opened issues and pull requests to the project board.
2023-10-14 23:11:48 +02:00
GeckoEidechse
c447dcd04e Bump NorthstarNavs to v2 (#512)
Co-authored-by: Zanieon <william-millennium@hotmail.com>
2023-07-13 18:30:40 +02:00
F1F7Y
1171a5fd2d Download launcher from release instead of rebuilding (#498) 2023-06-22 23:10:57 +02:00
pg9182
39ac00c374 Remove placeholder_playerdata.pdata (#459)
Not needed since v1.10 (R2Northstar/NorthstarLauncher@841881af9e).
2023-04-29 18:34:56 +02:00
pg9182
0e68be66f7 Update README project list (#464)
Update README project list to mention Atlas, DiscordRPC, and web page as well.
2023-04-23 13:40:22 +02:00
pg9182
6132fc2c7d Fix typo in 7a7ca84bd2 (#461) (#465) 2023-04-22 23:18:09 +02:00
pg9182
7a7ca84bd2 Remove stray release dir from release zip (#461)
For some reason there's a stray empty `release` folder inside the release zip that shouldn't be there.
2023-04-22 22:58:14 +02:00
pg9182
7db68d5169 Show SHA-512 checksum of release zip (#462)
This will print SHA-512 checksum of release zip
2023-04-22 22:55:59 +02:00
pg9182
aa4d230051 Update DiscordRPC to v4 (#460)
Requires plugins v2.
2023-04-22 03:11:46 +02:00
GeckoEidechse
aeb3e5ee17 Bump download-artifact action to v3 (#447)
v2 is being deprecated
2023-04-07 17:34:36 +02:00
GeckoEidechse
20ae5c9786 Grab pre-compiled DiscordRPC plugin (#437)
Instead of recompiling on each release
2023-03-13 20:31:01 +01:00
GeckoEidechse
8d7b5e4515 Add step to create release draft and upload zip (#432)
* Add step to create release draft and upload zip

* Skip draft creation for release candidates

* Zip folder before upload and give permission

The action we use can only deal with single files, not folders

* Use `env.NORTHSTAR_VERSION`

* Check if tags start with `v`
2023-03-07 21:34:17 +01:00
7 changed files with 159 additions and 101 deletions

20
.github/workflows/add-to-project.yml vendored Normal file
View File

@@ -0,0 +1,20 @@
name: add-to-project
on:
issues:
types:
- opened
pull_request_target:
types:
- opened
jobs:
add-to-project:
name: Add to project
runs-on: ubuntu-latest
steps:
- uses: actions/add-to-project@v0.5.0
with:
project-url: "https://github.com/orgs/R2Northstar/projects/3"
github-token: "${{ secrets.PROJECT_BOARD_TOKEN }}"

View File

@@ -0,0 +1,19 @@
name: Merge Conflict Auto Label
on:
workflow_dispatch: # Manual run
push:
branches:
- main
schedule:
- cron: "10 21 * * *" # Runs at 21:10; time was chosen based on contributor activity and low GitHub Actions cron load.
jobs:
triage:
runs-on: ubuntu-latest
steps:
- uses: mschilde/auto-label-merge-conflicts@master
with:
CONFLICT_LABEL_NAME: "merge conflicts"
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
MAX_RETRIES: 5
WAIT_MS: 5000

16
.github/workflows/post-to-mastodon.yml vendored Normal file
View File

@@ -0,0 +1,16 @@
name: Post-to-Mastodon
on:
release:
types: [published]
jobs:
toot:
runs-on: ubuntu-22.04
steps:
- name: Send toot to Mastodon
id: mastodon
uses: cbrgm/mastodon-github-action@v2
with:
message: "We just released Northstar ${{ github.event.release.tag_name }}\n\n${{ github.event.release.html_url }}"
url: ${{ secrets.MASTODON_URL }}
access-token: ${{ secrets.MASTODON_ACCESS_TOKEN }}

View File

@@ -1,4 +1,4 @@
name: Build
name: Release
on:
push:
tags:
@@ -10,84 +10,44 @@ on:
required: true
default: 'build-thunderstore-package'
permissions:
contents: write # Needed to write to GitHub draft release
env:
NORTHSTAR_VERSION: ${{ github.ref_name }}
DISCORD_RPC_VERSION: v13
jobs:
build-launcher:
runs-on: windows-2022
steps:
- name: Setup bundled plugins
uses: actions/checkout@v3
with:
repository: R2Northstar/NorthstarDiscordRPC
ref: 'v1'
path: discord-plugin
- name: Checkout launcher repository
uses: actions/checkout@v3
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' NorthstarLauncher/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" NorthstarDLL/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@v3
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@v3
with:
name: launcher-debug-files
path: |
northstar-launcher/x64/Release/*.pdb
build-northstar:
needs: build-launcher
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
steps:
- name: Download compiled launcher
uses: actions/download-artifact@v2
with:
name: northstar-launcher
path: northstar-launcher
- name: Download compiled stubs
run:
wget "https://github.com/R2Northstar/NorthstarStubs/releases/download/v1/NorthstarStubs.zip"
- name: Checkout release files
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
ref: ${{ env.NORTHSTAR_VERSION }}
path: northstar
- name: Wait for launcher release build to be ready
timeout-minutes: 30 # Only wait for 30 minutes. If we take longer, something probably broke
run:
bash northstar/wait_for_launcher_dl.sh $NORTHSTAR_VERSION
- name: Download compiled 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/${{ env.DISCORD_RPC_VERSION }}/northstar-discord-rpc.zip"
- name: Download compiled stubs
run:
wget "https://github.com/R2Northstar/NorthstarStubs/releases/download/v1/NorthstarStubs.zip"
- name: Checkout core mods
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: R2Northstar/NorthstarMods
ref: ${{ env.NORTHSTAR_VERSION }}
path: northstar-mods
- name: Update mod version info
run: |
export MOD_VERSION=$(echo $NORTHSTAR_VERSION | tr -d 'v')
export MOD_VERSION=$(echo $NORTHSTAR_VERSION | tr --delete 'v')
cat <<< $(jq ".Version = \"${MOD_VERSION}\"" northstar-mods/Northstar.Client/mod.json) > northstar-mods/Northstar.Client/mod.json
cat <<< $(jq ".Version = \"${MOD_VERSION}\"" northstar-mods/Northstar.Custom/mod.json) > northstar-mods/Northstar.Custom/mod.json
cat <<< $(jq ".Version = \"${MOD_VERSION}\"" northstar-mods/Northstar.CustomServers/mod.json) > northstar-mods/Northstar.CustomServers/mod.json
@@ -98,38 +58,54 @@ jobs:
git ls-tree -r $NORTHSTAR_VERSION --name-only | xargs -L1 md5sum >> md5sum.txt
- name: Make folder structure
run: |
mv -v northstar/release/* northstar/.
mkdir -p northstar/R2Northstar/mods
mkdir -p northstar/R2Northstar/plugins
mkdir -p northstar/bin/x64_retail
mv --verbose northstar/release/* northstar/.
rm --dir northstar/release
mkdir --parents northstar/R2Northstar/mods
mkdir --parents northstar/R2Northstar/plugins
mkdir --parents northstar/bin/x64_dedi
unzip northstar-discord-rpc.zip -d northstar/R2Northstar/plugins
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 NorthstarStubs.zip -d northstar/bin/x64_dedi
mv -v northstar-launcher/* northstar
rsync -avr --exclude="Northstar.Coop" --exclude=".git*" northstar-mods/. northstar/R2Northstar/mods
unzip northstar-launcher.zip -d northstar
rsync -avr --exclude="Northstar.Coop" --exclude=".git*" --exclude="*.md" northstar-mods/. northstar/R2Northstar/mods
- name: Checkout Navmesh repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: R2Northstar/NorthstarNavs
ref: 'v1'
ref: 'v4'
path: northstar-navs
- name: Navmeshes setup
run: |
mkdir -p northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps
mv -v northstar-navs/graphs northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps
mv -v northstar-navs/navmesh northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps
mkdir --parents northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps
mv --verbose northstar-navs/graphs northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps
mv --verbose northstar-navs/navmesh northstar/R2Northstar/mods/Northstar.CustomServers/mod/maps
- name: Cleanup root Northstar repository files
working-directory: northstar
run: |
rm -rf .git .github .gitignore *.md LICENSE thunderstore .ci.env.example
rm -rf .git .github .gitignore *.md LICENSE thunderstore .ci.env.example *.sh
- name: Upload
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
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
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
sha512sum Northstar.release.${{ env.NORTHSTAR_VERSION }}.zip >> $GITHUB_STEP_SUMMARY
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
- name: Upload zip to release draft
uses: softprops/action-gh-release@v2
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
@@ -146,33 +122,33 @@ jobs:
TS_NAMESPACE: northstar
TS_MOD_NAME: Northstar
TS_MOD_DESCRIPTION: Titanfall 2 modding and custom server framework.
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
steps:
- name: Setup tcli
run: |
wget -O tcli.tar.gz https://github.com/thunderstore-io/thunderstore-cli/releases/download/0.1.4/tcli-0.1.4-linux-x64.tar.gz
wget --output-document tcli.tar.gz https://github.com/thunderstore-io/thunderstore-cli/releases/download/0.1.4/tcli-0.1.4-linux-x64.tar.gz
tar xvf tcli.tar.gz
sudo mv -v tcli-0.1.4-linux-x64/tcli /bin
sudo mv --verbose tcli-0.1.4-linux-x64/tcli /bin
- name: (DEBUG) Download Northstar package
if: ${{ env.ACT }} # Download Northstar package from releases when running locally instead of relying on previous jobs
run: |
wget -O northstar.zip https://github.com/R2Northstar/Northstar/releases/download/v1.6.3/Northstar.release.v1.6.3.zip
wget --output-document northstar.zip https://github.com/R2Northstar/Northstar/releases/download/v1.6.3/Northstar.release.v1.6.3.zip
unzip northstar.zip -d northstar
- 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@v4
with:
name: Northstar.release.${{ env.NORTHSTAR_VERSION }}
path: northstar
- name: Make package structure
run: |
mkdir -p thunderstore/dist/Northstar
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
mkdir --parents thunderstore/dist/Northstar
mv --verbose northstar/* thunderstore/dist/Northstar
wget --output-document thunderstore/icon.png https://raw.githubusercontent.com/R2Northstar/Northstar/main/thunderstore/icon.png
wget --output-document thunderstore/README.md https://raw.githubusercontent.com/R2Northstar/Northstar/main/thunderstore/README.md
- name: Setup environment variables
run: |
@@ -195,9 +171,9 @@ jobs:
run: |
tcli init --package-name=$TS_MOD_NAME --package-namespace=$TS_NAMESPACE --package-version $MOD_VERSION
sed -i "s/communities = \[\]/communities = [\"$TS_COMMUNITY\"]/g" thunderstore.toml
sed -i "s/Example-Dependency = \"1.0.0\"//g" thunderstore.toml
sed -i "s/description = \"Example mod description\"/description = \"$TS_MOD_DESCRIPTION\"/g" thunderstore.toml
sed --in-place "s/communities = \[\]/communities = [\"$TS_COMMUNITY\"]/g" thunderstore.toml
sed --in-place "s/Example-Dependency = \"1.0.0\"//g" thunderstore.toml
sed --in-place "s/description = \"Example mod description\"/description = \"$TS_MOD_DESCRIPTION\"/g" thunderstore.toml
cat thunderstore.toml
tcli build

View File

@@ -3,33 +3,34 @@
[![GitHub release (latest by date)](https://img.shields.io/github/v/release/R2Northstar/Northstar)](https://github.com/R2Northstar/Northstar/releases)
![GitHub release downloads (latest by date)](https://img.shields.io/github/downloads/R2Northstar/Northstar/latest/total)
[![Join the chat at Discord](https://img.shields.io/badge/chat-on%20discord-7289DA.svg)](https://northstar.tf/discord)
[![Read the wiki](https://img.shields.io/badge/wiki-GitBook-important)](https://r2northstar.gitbook.io)
[![Read the wiki](https://img.shields.io/badge/wiki-MKDocs-important)](https://northstar.tf/wiki)
Northstar is a modding framework client that allows users to host their own Titanfall 2 servers using custom scripts and assets to create custom content, as well as being able to host vanilla content.
<p align="center"><strong>
<a href="https://r2northstar.gitbook.io/r2northstar-wiki/installing-northstar/basic-setup">Installation</a> | <a href="https://r2northstar.gitbook.io/r2northstar-wiki/installing-northstar/troubleshooting">Troubleshooting</a> | <a href="https://r2northstar.gitbook.io/">Wiki</a>
<a href="https://docs.northstar.tf/Wiki/installing-northstar/basic-setup/">Installation</a> | <a href="https://docs.northstar.tf/Wiki/installing-northstar/troubleshooting/">Troubleshooting</a> | <a href="https://northstar.tf/wiki">Wiki</a>
</strong></p>
## Development
Northstar's development is split into 5 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:
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)
1. [NorthstarTF](https://github.com/R2Northstar/NorthstarTF) (Main website)
1. [ModdingDocs](https://github.com/R2Northstar/ModdingDocs) (Wiki covering installation, hosting and configuration of Northstar, as well as 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 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.
- Thanks to everyone on R5R team for giving me advice on some later parts of development.
- Thanks to everyone in the testing server for putting up with me and helping find bugs.
- Thanks to everyone on R5R team for giving me advice on some later parts of development.
- Thanks to everyone in the testing server for putting up with me and helping find bugs.
- Thanks to everyone else that's helped, gave advice, all that.

26
wait_for_launcher_dl.sh Executable file
View File

@@ -0,0 +1,26 @@
#!/bin/bash
# Check if contains command line arg
if [ -z "$1" ]; then
echo "Missing command-line argument."
exit 1
fi
url="https://github.com/R2Northstar/NorthstarLauncher/releases/download/$1/northstar-launcher.zip"
wait_time_seconds=60
# Loop until the response code changes
while true; do
response=$(curl --silent --output /dev/null --write-out "%{http_code}" $url)
if [ $response -eq 404 ]; then
echo "Response is 404. Retrying in $wait_time_seconds seconds."
sleep $wait_time_seconds
else
echo "Site is accessible with response code $response."
break
fi
done
# 10 second sleep just in case we hit some weird race condition
# where files are still being uploaded but release is done
sleep 10