31 lines
802 B
Bash
31 lines
802 B
Bash
|
#!/bin/bash
|
||
|
dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||
|
gameid=${gameid:-devtest}
|
||
|
minetest=$dir/../bin/minetest
|
||
|
testspath=$dir/../tests
|
||
|
conf_server=$testspath/server.conf
|
||
|
worldpath=$testspath/world
|
||
|
|
||
|
run () {
|
||
|
if [ -n "$PERF" ]; then
|
||
|
perf record -z --call-graph dwarf -- "$@"
|
||
|
else
|
||
|
"$@"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
[ -e "$minetest" ] || { echo "executable $minetest missing"; exit 1; }
|
||
|
|
||
|
rm -rf "$worldpath"
|
||
|
mkdir -p "$worldpath/worldmods"
|
||
|
|
||
|
settings=(sqlite_synchronous=0 helper_mode=mapgen)
|
||
|
[ -n "$PROFILER" ] && settings+=(profiler_print_interval=15)
|
||
|
printf '%s\n' "${settings[@]}" >"$testspath/server.conf" \
|
||
|
|
||
|
ln -s "$dir/helper_mod" "$worldpath/worldmods/"
|
||
|
|
||
|
args=(--config "$conf_server" --world "$worldpath" --gameid $gameid)
|
||
|
[ -n "$PROFILER" ] && args+=(--verbose)
|
||
|
run "$minetest" --server "${args[@]}"
|