join_lan.bat: pin the operator's LAN IP (auto-discovery was unreliable)

Field report: LAN auto-discovery (BT_RELAY=auto) didn't work -- a joiner had to
hand-set BT_RELAY=10.0.0.46:1500 to reach the console every time.

- players/join_lan.bat: BT_RELAY=auto -> BT_RELAY=10.0.0.46:1500 (the operator PC's
  LAN IP), with a comment on updating it if the IP changes.
- tools/btoperator.py: the export now DETECTS the operator PC's LAN IP (UDP
  default-route probe, no packet sent) and stamps BT_RELAY=<lan-ip>:port into the
  generated join_lan.bat instead of "auto" -- so regeneration keeps it correct and
  doesn't revert to the broken auto-discovery.  Verified: detects 10.0.0.46 here.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
arcattack
2026-07-20 22:27:12 -05:00
co-authored by Claude Opus 4.8
parent 9f0a7c52df
commit cae616dc7c
2 changed files with 34 additions and 5 deletions
+5 -2
View File
@@ -1,10 +1,13 @@
@echo off
rem BT411 -- join the operator's LAN game (auto-discovers).
rem BT411 -- join the operator's LAN game.
rem BT_RELAY = the operator PC's LAN IP + console port (auto-discovery was
rem unreliable on this network, so it is pinned). If the operator's IP changes,
rem update the address below (find it on the operator PC with `ipconfig`).
rem Joining over the INTERNET? Use join.bat instead.
cd /d %~dp0
if not exist "build\Release\btl4.exe" goto badpath
if not exist "content\OPERATOR.EGG" goto badpath
set BT_RELAY=auto
set BT_RELAY=10.0.0.46:1500
set BT_LOG=join.log
set BT_START_INSIDE=1
set BT_DEV_GAUGES=1