play_solo.bat: single-player practice launcher in the player export

A zip recipient can dork around offline -- no -net argument means the
game self-launches a solo mission (all maps ship in content/).  Solo
gets its own exit message (btl4.log pointer, no server language).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
arcattack
2026-07-18 14:57:26 -05:00
co-authored by Claude Fable 5
parent dfd1894fb9
commit 52ce7c58c8
2 changed files with 29 additions and 3 deletions
+11
View File
@@ -0,0 +1,11 @@
@echo off
rem BT411 -- single-player practice mission (no network,
rem no operator needed). Edit the -egg name below to try
rem other maps (ARENA1/ARENA2/DBASE/FOGDAY/...).
set BT_START_INSIDE=1
cd /d %~dp0content
..\build\Release\btl4.exe -egg ARENA1.EGG
echo.
echo The game has exited. If it closed unexpectedly,
echo send the operator the file content\btl4.log.
pause
+18 -3
View File
@@ -729,10 +729,25 @@ class Operator(QMainWindow):
"cd /d %%~dp0content\n"
"..\\build\\Release\\btl4.exe -egg %s -net 1501\n"
% egg_name + tail)
# solo practice: no server involved -- the game self-launches a
# single-player mission (no -net argument = no console wait)
with open(os.path.join(out_dir, "play_solo.bat"), "w",
newline="\r\n") as f:
f.write("@echo off\n"
"rem BT411 -- single-player practice mission (no network,\n"
"rem no operator needed). Edit the -egg name below to try\n"
"rem other maps (ARENA1/ARENA2/DBASE/FOGDAY/...).\n"
"set BT_START_INSIDE=1\n"
"cd /d %~dp0content\n"
"..\\build\\Release\\btl4.exe -egg ARENA1.EGG\n"
"echo.\n"
"echo The game has exited. If it closed unexpectedly,\n"
"echo send the operator the file content\\btl4.log.\n"
"pause\n")
self.log.appendPlainText(
"exported join.bat + join_lan.bat to %s (public host: %s) -- "
"one file for everyone; the relay assigns seats"
% (out_dir, host))
"exported join.bat + join_lan.bat + play_solo.bat to %s "
"(public host: %s) -- join bats are universal; the relay "
"assigns seats" % (out_dir, host))
# ------------------------------------------------------------- closing --