Skip to content

Commit

Permalink
Merge pull request #838 from The-Frozen-North/store-databases-as-txt-…
Browse files Browse the repository at this point in the history
…and-migrate-linux-to-build-scripts

Store databases as txt and migrate linux to build scripts
  • Loading branch information
b5635 authored Nov 2, 2024
2 parents 6b18a5b + 8fd126b commit b9e325d
Show file tree
Hide file tree
Showing 25 changed files with 76,993 additions and 102 deletions.
Empty file removed database/.keep
Empty file.
35 changes: 33 additions & 2 deletions linux_nasher_install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,40 @@ echo "It will automatically continue if you do not have module built (clean slat
echo
echo "WARNING: Continuing will rebuild the module from source, deleting all unsaved changes! Commit or stash your changes, or exit out."

rm -d -RI modules
rm -rf .build/modules/TFN
rm -rf .build/modules

mkdir -p .build

rm -rf .build/override
cp -r override .build/override

mkdir -p .build/database
mkdir -p .build/movies
mkdir -p .build/modules

# Delete existing databases
rm .build/database/spawns.sqlite3
rm .build/database/treasures.sqlite3
rm .build/database/randspellbooks.sqlite3
rm .build/database/prettify.sqlite3
rm .build/database/tmapsolutions.sqlite3
rm .build/database/areadistances.sqlite3

$PWD/tools/linux/sqlite/sqlite3 .build/database/treasures.sqlite3 < seeded_database/treasures.txt
$PWD/tools/linux/sqlite/sqlite3 .build/database/tmapsolutions.sqlite3 < seeded_database/tmapsolutions.txt
$PWD/tools/linux/sqlite/sqlite3 .build/database/randspellbooks.sqlite3 < seeded_database/randspellbooks.txt
$PWD/tools/linux/sqlite/sqlite3 .build/database/prettify.sqlite3 < seeded_database/prettify.txt
$PWD/tools/linux/sqlite/sqlite3 .build/database/spawns.sqlite3 < seeded_database/spawns.txt
$PWD/tools/linux/sqlite/sqlite3 .build/database/areadistances.sqlite3 < seeded_database/areadistances.txt

cp movies/prelude.wbm .build/movies/prelude.wbm
cp nasher.cfg .build/nasher.cfg

rm TFN.mod

$PWD/tools/linux/nasher/nasher install --verbose --erfUtil:"$PWD/tools/linux/neverwinter/nwn_erf" --gffUtil:"$PWD/tools/linux/neverwinter/nwn_gff" --tlkUtil:"$PWD/tools/linux/neverwinter/nwn_tlk" --nssCompiler:"$PWD/tools/linux/nwnsc/nwnsc" --installDir:"$PWD" --nssFlags:"-oe -i $PWD/nwn-base-scripts" --yes
cd .build

$PWD/../tools/linux/nasher/nasher install --verbose --erfUtil:"$PWD/../tools/linux/neverwinter/nwn_erf" --gffUtil:"$PWD/../tools/linux/neverwinter/nwn_gff" --tlkUtil:"$PWD/../tools/linux/neverwinter/nwn_tlk" --nssCompiler:"$PWD/../tools/linux/nwnsc/nwnsc" --installDir:"$PWD" --nssFlags:"-oe -i $PWD/../nwn-base-scripts" --yes

rm TFN.mod
2 changes: 1 addition & 1 deletion linux_nasher_unpack_folder.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash

$PWD/tools/linux/nasher/nasher unpack --file:modules/TFN --removeDeleted --erfUtil:"$PWD/tools/linux/neverwinter/nwn_erf" --gffUtil:"$PWD/tools/linux/neverwinter/nwn_gff" --tlkUtil:"$PWD/tools/linux/neverwinter/nwn_tlk" --nssFlags:"-l"
$PWD/tools/linux/nasher/nasher unpack --file:.build/modules/TFN --removeDeleted --erfUtil:"$PWD/tools/linux/neverwinter/nwn_erf" --gffUtil:"$PWD/tools/linux/neverwinter/nwn_gff" --tlkUtil:"$PWD/tools/linux/neverwinter/nwn_tlk" --nssFlags:"-l"
git rm --cached src -r
git add .
43 changes: 27 additions & 16 deletions linux_run_server.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,13 @@ echo "It will automatically continue if you do not have module built (clean slat
echo
echo "WARNING: Continuing will rebuild the module from source, deleting all unsaved changes! Commit or stash your changes, or exit out."

rm -d -RI modules
rm TFN.mod
rm -d -RI .build\modules

mkdir -p .build
mkdir -p .build/override

rm -rf .build/override
cp -r override/. .build/override/

desc=`cat mod_desc.txt`
timestamp=`git log -1 --format=%cd --date=format:"%d %b %y"`
Expand All @@ -19,37 +24,43 @@ hash=${hash:0:6}
desc="$desc
Last Updated: $timestamp ($hash)"

$PWD/tools/linux/nasher/nasher install --clean --erfUtil:"$PWD/tools/linux/neverwinter/nwn_erf" --gffUtil:"$PWD/tools/linux/neverwinter/nwn_gff" --tlkUtil:"$PWD/tools/linux/neverwinter/nwn_tlk" --nssCompiler:"$PWD/tools/linux/nwnsc/nwnsc" --installDir:"$PWD" --nssFlags:"-oe -i $PWD/nwn-base-scripts" --no --modDescription="$desc"
cd .build
$PWD/../tools/linux/nasher/nasher install --clean --erfUtil:"$PWD/../tools/linux/neverwinter/nwn_erf" --gffUtil:"$PWD/../tools/linux/neverwinter/nwn_gff" --tlkUtil:"$PWD/../tools/linux/neverwinter/nwn_tlk" --nssCompiler:"$PWD/../tools/linux/nwnsc/nwnsc" --installDir:"$PWD" --nssFlags:"-oe -i $PWD/../nwn-base-scripts" --no --modDescription="$desc"

if [[ ! -f TFN.mod ]] ; then
echo 'Module does not exist, aborting.'
exit
fi

cd ..

# rm server/config/common.env
rm server/modules/TFN.mod
rm -d -R server/override
rm server/database/randspellbooks.sqlite3
rm server/database/treasures.sqlite3
rm server/database/spawns.sqlite3
rm server/database/prettify.sqlite3
rm server/database/tmapsolutions.sqlite3
rm server/database/areadistances.sqlite3

mkdir server/override
mkdir server/config
mkdir server/modules
mkdir server/database

cp modules/TFN.mod server/modules/TFN.mod
cp .build/modules/TFN.mod server/modules/TFN.mod
cp config/common.env server/config/common.env
cp -r override/. server/override

cp seeded_database/spawns.sqlite3 server/database/spawns.sqlite3
cp seeded_database/treasures.sqlite3 server/database/treasures.sqlite3
cp seeded_database/randspellbooks.sqlite3 server/database/randspellbooks.sqlite3
cp seeded_database/prettify.sqlite3 server/database/prettify.sqlite3
cp seeded_database/tmapsolutions.sqlite3 server/database/tmapsolutions.sqlite3
cp seeded_database/areadistances.sqlite3 server/database/areadistances.sqlite3
# Delete existing databases
rm server/database/spawns.sqlite3
rm server/database/treasures.sqlite3
rm server/database/randspellbooks.sqlite3
rm server/database/prettify.sqlite3
rm server/database/tmapsolutions.sqlite3
rm server/database/areadistances.sqlite3

$PWD/tools/linux/sqlite/sqlite3 server/database/treasures.sqlite3 < seeded_database/treasures.txt
$PWD/tools/linux/sqlite/sqlite3 server/database/tmapsolutions.sqlite3 < seeded_database/tmapsolutions.txt
$PWD/tools/linux/sqlite/sqlite3 server/database/randspellbooks.sqlite3 < seeded_database/randspellbooks.txt
$PWD/tools/linux/sqlite/sqlite3 server/database/prettify.sqlite3 < seeded_database/prettify.txt
$PWD/tools/linux/sqlite/sqlite3 server/database/spawns.sqlite3 < seeded_database/spawns.txt
$PWD/tools/linux/sqlite/sqlite3 server/database/areadistances.sqlite3 < seeded_database/areadistances.txt

cp server/env/env.2da server/override/env.2da
cp server/env/env_dm.2da server/override/env_dm.2da
Expand Down
20 changes: 8 additions & 12 deletions linux_run_server_dev.sh
Original file line number Diff line number Diff line change
@@ -1,18 +1,14 @@
#!/bin/bash

rm database/randspellbooks.sqlite3
rm database/treasures.sqlite3
rm database/spawns.sqlite3
rm database/prettify.sqlite3
rm database/tmapsolutions.sqlite3
rm database/areadistances.sqlite3
mkdir -p .build/config

cp seeded_database/spawns.sqlite3 database/spawns.sqlite3
cp seeded_database/treasures.sqlite3 database/treasures.sqlite3
cp seeded_database/randspellbooks.sqlite3 database/randspellbooks.sqlite3
cp seeded_database/prettify.sqlite3 database/prettify.sqlite3
cp seeded_database/tmapsolutions.sqlite3 database/tmapsolutions.sqlite3
cp seeded_database/areadistances.sqlite3 database/areadistances.sqlite3
rm .build/docker-compose-dev.yml
cp docker-compose-dev.yml .build/docker-compose-dev.yml

rm .build/config/common.env
cp config/common.env .build/config/common.env

cd .build

docker-compose -f docker-compose-dev.yml down
docker-compose -f docker-compose-dev.yml up --no-recreate -d
63 changes: 44 additions & 19 deletions linux_run_server_dev_seed.sh
Original file line number Diff line number Diff line change
@@ -1,26 +1,51 @@
#!/bin/bash

rm database/prettify.sqlite3
rm database/areadistances.sqlite3
rm database/tmapsolutions.sqlite3
rm .build/database/prettify.sqlite3
rm .build/database/areadistances.sqlite3
rm .build/database/tmapsolutions.sqlite3

cp seeded_database/prettify.sqlite3 database/prettify.sqlite3
cp seeded_database/areadistances.sqlite3 database/areadistances.sqlite3
cp seeded_database/tmapsolutions.sqlite3 database/tmapsolutions.sqlite3
mkdir -p .build/database
mkdir -p .build/config

# Delete existing databases, because sqlite will attempt to load it into an existing database instead of overwriting
rm .build/database/spawns.sqlite3
rm .build/database/treasures.sqlite3
rm .build/database/randspellbooks.sqlite3
rm .build/database/prettify.sqlite3
rm .build/database/tmapsolutions.sqlite3
rm .build/database/areadistances.sqlite3

# These databases rely on previous information (checks existing and may skip recalculating some things so it's faster)
$PWD/tools/linux/sqlite/sqlite3 .build/database/treasures.sqlite3 < seeded_database/treasures.txt
$PWD/tools/linux/sqlite/sqlite3 .build/database/tmapsolutions.sqlite3 < seeded_database/tmapsolutions.txt
$PWD/tools/linux/sqlite/sqlite3 .build/database/randspellbooks.sqlite3 < seeded_database/randspellbooks.txt
$PWD/tools/linux/sqlite/sqlite3 .build/database/prettify.sqlite3 < seeded_database/prettify.txt
$PWD/tools/linux/sqlite/sqlite3 .build/database/areadistances.sqlite3 < seeded_database/areadistances.txt

rm .build/docker-compose-dev-seed.yml
cp docker-compose-dev-seed.yml .build/docker-compose-dev-seed.yml

rm .build\config\common.env
cp config/common.env .build/config/common.env

cd .build

docker-compose -f docker-compose-dev-seed.yml down
docker-compose -f docker-compose-dev-seed.yml up --no-recreate

rm seeded_database/randspellbooks.sqlite3
rm seeded_database/treasures.sqlite3
rm seeded_database/spawns.sqlite3
rm seeded_database/prettify.sqlite3
rm seeded_database/areadistances.sqlite3
rm seeded_database/tmapsolutions.sqlite3

cp database/spawns.sqlite3 seeded_database/spawns.sqlite3
cp database/treasures.sqlite3 seeded_database/treasures.sqlite3
cp database/randspellbooks.sqlite3 seeded_database/randspellbooks.sqlite3
cp database/prettify.sqlite3 seeded_database/prettify.sqlite3
cp database/areadistances.sqlite3 seeded_database/areadistances.sqlite3
cp database/tmapsolutions.sqlite3 seeded_database/tmapsolutions.sqlite3
# Delete existing database dumps, because we should always get the newly generated ones
rm ../seeded_database/spawns.txt
rm ../seeded_database/treasures.txt
rm ../seeded_database/randspellbooks.txt
rm ../seeded_database/prettify.txt
rm ../seeded_database/tmapsolutions.txt
rm ../seeded_database/areadistances.txt

$PWD/../tools/linux/sqlite/sqlite3 database/treasures.sqlite3 .dump > ../seeded_database/treasures.txt
$PWD/../tools/linux/sqlite/sqlite3 database/tmapsolutions.sqlite3 .dump > ../seeded_database/tmapsolutions.txt
$PWD/../tools/linux/sqlite/sqlite3 database/spawns.sqlite3 .dump > ../seeded_database/spawns.txt
$PWD/../tools/linux/sqlite/sqlite3 database/randspellbooks.sqlite3 .dump > ../seeded_database/randspellbooks.txt
$PWD/../tools/linux/sqlite/sqlite3 database/prettify.sqlite3 .dump > ../seeded_database/prettify.txt
$PWD/../tools/linux/sqlite/sqlite3 database/areadistances.sqlite3 .dump > ../seeded_database/areadistances.txt

python3 ../tools/replace_database_migration_numbers.py
Binary file removed seeded_database/areadistances.sqlite3
Binary file not shown.
Loading

0 comments on commit b9e325d

Please sign in to comment.