mirror of
https://github.com/JGRennison/OpenTTD-patches.git
synced 2024-11-08 01:10:28 +00:00
c2406cd42d
NoAI is an API (a framework) to build your own AIs in. See: http://wiki.openttd.org/wiki/index.php/AI:Main_Page With many thanks to: - glx and Rubidium for their syncing, feedback and hard work - Yexo for his feedback, patches, and AIs which tested the system very deep - Morloth for his feedback and patches - TJIP for hosting a challenge which kept NoAI on track - All AI authors for testing our AI API, and all other people who helped in one way or another -Remove: all old AIs and their cheats/hacks
50 lines
1.4 KiB
Bash
50 lines
1.4 KiB
Bash
#!/bin/sh
|
|
|
|
if ! [ -f ai/regression/regression.nut ]; then
|
|
echo "Make sure you are in the root of OpenTTD before starting this script."
|
|
exit 1
|
|
fi
|
|
|
|
cp ai/regression/regression.nut ai/regression/main.nut
|
|
cp ai/regression/regression_info.nut ai/regression/info.nut
|
|
|
|
if [ -f scripts/game_start.scr ]; then
|
|
mv scripts/game_start.scr scripts/game_start.src.regression
|
|
fi
|
|
|
|
params=""
|
|
gdb=""
|
|
if [ "$1" != "-r" ]; then
|
|
params="-snull -mnull -vnull:ticks=30000"
|
|
fi
|
|
if [ "$1" = "-g" ]; then
|
|
gdb="gdb --ex run --args "
|
|
fi
|
|
if [ -n "$gdb" ]; then
|
|
$gdb ./openttd -x -c ai/regression/regression.cfg $params -g ai/regression/regression.sav
|
|
else
|
|
./openttd -x -c ai/regression/regression.cfg $params -g ai/regression/regression.sav -d ai=2 2>&1 | awk '{ gsub("0x\\(nil\\)", "0x00000000", $0); gsub("^dbg: \\[ai\\]", "", $0); gsub("^ ", "ERROR: ", $0); gsub("ERROR: \\[1\\] ", "", $0); gsub("\\[P\\] ", "", $0); print $0; }' > tmp.regression
|
|
fi
|
|
|
|
if [ -z "$gdb" ]; then
|
|
res="`diff -ub ai/regression/regression.txt tmp.regression`"
|
|
if [ -z "$res" ]; then
|
|
echo "Regression test passed!"
|
|
else
|
|
echo "Regression test failed! Difference:"
|
|
echo "$res"
|
|
fi
|
|
echo ""
|
|
echo "Regression test done"
|
|
fi
|
|
|
|
rm -f ai/regression/main.nut ai/regression/info.nut
|
|
|
|
if [ -f scripts/game_start.scr.regression ]; then
|
|
mv scripts/game_start.scr.regression scripts/game_start.src
|
|
fi
|
|
|
|
if [ "$1" != "-k" ]; then
|
|
rm -f tmp.regression
|
|
fi
|