mirror of
https://gitlab.com/2009scape/singleplayer/linux.git
synced 2026-08-01 14:39:15 -06:00
Updated singleplayer build script
This commit is contained in:
parent
9ee3393206
commit
b1623587e4
1 changed files with 59 additions and 44 deletions
|
|
@ -1,50 +1,65 @@
|
|||
#!/bin/bash
|
||||
echo "Cloning latest build..."
|
||||
|
||||
if [ -f gradlew ]
|
||||
then
|
||||
chmod +x gradlew
|
||||
mkdir -p Single-Player
|
||||
remote="https://gitlab.com/2009scape/2009scape"
|
||||
|
||||
echo Building Client...
|
||||
cd Client
|
||||
../gradlew jar
|
||||
cd ..
|
||||
cp Client/build/libs/client-1.0.0.jar Single-Player/client.jar
|
||||
echo
|
||||
tag=$(git ls-remote --tags --exit-code --refs "$remote" | sed -E 's/^[[:xdigit:]]+[[:space:]]+refs\/tags\/(.+)/\1/g' | sort -t'-' -k3,3n -k1,1M -k2,2n | tail -1)
|
||||
|
||||
echo Building Management-Server...
|
||||
cd Management-Server
|
||||
../gradlew jar
|
||||
cd ..
|
||||
cp Management-Server/build/libs/managementserver-1.0.0.jar Single-Player/ms.jar
|
||||
echo
|
||||
echo "Selected tag: $tag"
|
||||
|
||||
echo Building Server...
|
||||
cd Server
|
||||
../gradlew jar
|
||||
cd ..
|
||||
cp Server/build/libs/server-1.0.0.jar Single-Player/server.jar
|
||||
echo
|
||||
# Clone as shallowly as possible. Remote is the last argument.
|
||||
git -c advice.detachedHead=false clone --branch "$tag" --depth 1 --quiet "$remote"
|
||||
|
||||
echo Copying server data...
|
||||
|
||||
rm -rf Single-Player/data
|
||||
cp -R Server/data Single-Player/data
|
||||
cp -R Management-Server/managementprops Single-Player/managementprops
|
||||
cp Server/db_exports/*.sql Single-Player/data
|
||||
|
||||
# Set Debug/Dev mode to false on single player server config
|
||||
|
||||
cat Server/worldprops/default.json | sed -e 's/\"debug\": true/\"debug\": false/' | sed -e 's/\"dev\": true/\"dev\": false/' > Single-Player/worldprops/default.json
|
||||
|
||||
|
||||
# Replace Live server addresses with localhost
|
||||
|
||||
cat Client/config.json | sed -e 's/play.2009scape.org/localhost/' > Single-Player/config.json
|
||||
|
||||
echo
|
||||
|
||||
echo Done!
|
||||
else
|
||||
echo ERR: Run in 2009scape source directory to build
|
||||
if [ -e "data" ]; then
|
||||
echo "Backing up existing user data..."
|
||||
mkdir data-backup
|
||||
mv data/eco data-backup/eco
|
||||
mv data/players data-backup/players
|
||||
mv data/serverstore data-bacup/serverstore
|
||||
rm -fr data
|
||||
fi
|
||||
|
||||
rm -fr worldprops
|
||||
rm -fr managementprops
|
||||
rm ms.jar
|
||||
rm server.jar
|
||||
rm client.jar
|
||||
|
||||
cd 2009scape
|
||||
|
||||
echo "Building Management-Server"
|
||||
cd Management-Server
|
||||
sh mvnw -DskipTests package > /dev/null
|
||||
mv target/*-with-dependencies.jar ../../ms.jar
|
||||
mv managementprops ../..
|
||||
cd ..
|
||||
|
||||
echo "Building Server (This will probably take a while.)"
|
||||
cd Server
|
||||
sh mvnw clean > /dev/null
|
||||
sh mvnw -DskipTests package > /dev/null
|
||||
mv target/*-with-dependencies.jar ../../server.jar
|
||||
mv data ../..
|
||||
mv worldprops ../..
|
||||
cd ../..
|
||||
|
||||
rm -fr 2009scape
|
||||
|
||||
echo "Downloading Client"
|
||||
wget --quiet "cdn.2009scape.org/2009scape.jar"
|
||||
|
||||
mkdir jars
|
||||
mv 2009scape.jar jars/client.jar
|
||||
mv server.jar jars
|
||||
mv ms.jar jars
|
||||
|
||||
if [ -e "data-backup" ]; then
|
||||
echo "Restoring existing user data..."
|
||||
mv data-backup/eco data/eco
|
||||
mv data-backup/players data/players
|
||||
mv data-backup/serverstore data/serverstore
|
||||
rm -fr data-backup
|
||||
fi
|
||||
|
||||
echo "Modifying server config for singleplayer..."
|
||||
cat worldprops/default.conf | sed -e 's/dev = true/dev = false/' | sed -e 's/debug = true/debug = false/' | sed -e 's/daily_restart = true/daily_restart = false/' | sed -e 's/activity = "2009scape classic."/activity = "Singleplayer"/' | sed -e 's/bots_influence_ge_price = true/bots_influence_ge_price = false/' > worldprops/sp.conf
|
||||
mv worldprops/sp.conf worldprops/default.conf
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue