The 1995 front-desk conversation, over the internet. join.bat/
join_lan.bat now open a JOIN-GAME menu (the FE in BT_FE_JOIN trim:
CALLSIGN edit + the 18-mech list + JOIN); the choice relaunches into the
normal join with BT_CALLSIGN/BT_MECH env, rides the relay SEAT_REQUEST
as {callsign NUL mech NUL} (empty payload = roster defaults, wire-
compatible), and the relay validates the mech tag, HOLDS egg delivery
until every pod's console pad is connected, rewrites the egg via
eggmodel (vehicle= + rasterized callsign bitmaps, graceful no-PySide6
fallback) and streams it to all pads -- so every player's egg copy
carries every player's callsign.
The hold is gated on CONSOLE-PAD count, not game-side registration: a
pod HELLOs only after parsing the egg's roster, so a registration gate
deadlocks (hit live in the first run; pods animate in WAITING FOR
MISSION ASSIGNMENT during the hold).
Verified 2-node e2e (env-injected requests): thor/vulture requested over
roster defaults bhk1/ava1 -> relay held 1/2, released at 2/2, rewrote
both seats (relay log), the delivered egg carries vehicle=thor/vulture +
name=VIPER/MONGOOSE, both pods launched and built [cyl] tables for both
requested mechs. Join-menu layout screenshot-verified; the menu's
click-through relaunch awaits live human verification.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
51 lines
2.6 KiB
Plaintext
51 lines
2.6 KiB
Plaintext
BattleTech {VERSION} -- multiplayer client
|
|
==========================================
|
|
|
|
IMPORTANT: FULLY EXTRACT this zip first (right-click - Extract All).
|
|
Do NOT run anything from inside the zip. The .bat files must sit next
|
|
to the 'content' and 'build' folders.
|
|
|
|
TO JOIN AN INTERNET GAME: double-click join.bat
|
|
-- pick your CALLSIGN and MECH, click JOIN (your choice is sent to
|
|
the operator; waits for the session if it's not up yet)
|
|
TO JOIN A LAN GAME: double-click join_lan.bat (operator's LAN;
|
|
same callsign/mech menu)
|
|
SINGLE-PLAYER: double-click play_solo.bat -- opens the
|
|
mission menu: pick your mech (all 18), map, experience level,
|
|
colours, weather and mission length, then launch
|
|
{STEAM}STEAM INTERNET PLAY: double-click play_steam.bat (EXPERIMENTAL --
|
|
{STEAM} needs the Steam client running; host or join from the menu)
|
|
|
|
Your seat is assigned automatically; you'll pilot the mech you picked
|
|
in the join menu (the operator can override it).
|
|
If the game closes unexpectedly, send the operator content\join.log.
|
|
|
|
AFTER A MULTIPLAYER SESSION: the game writes a small match report,
|
|
content\matchlog_<date>_<time>_<number>.txt. Please send the operator
|
|
the newest one -- we combine everyone's files to verify damage, kills
|
|
and scores worked correctly across all players.
|
|
|
|
You start INSIDE the cockpit with the pod's MFD panels composited
|
|
around the view (one window). The red MFD buttons, radar rails and
|
|
joystick buttons are all MOUSE-CLICKABLE -- right-click a button to
|
|
latch it held. Press V any time to toggle the external camera.
|
|
|
|
CONTROLS (keyboard):
|
|
W/S or Up/Down ....... throttle lever X / NumPad5 ... all stop
|
|
A/D or Left/Right .... turn pedals Alt ........... reverse thrust
|
|
Q/E .................. torso twist R/F ........... torso aim
|
|
NumPad 8/2/4/6 ....... torso aim/twist (alt) Shift ......... throttle up
|
|
1 or Space ........... main trigger 2 ............. middle thumb
|
|
3 or Ctrl ............ upper thumb (missiles) 4 ............ pinky
|
|
V view | B look-behind | M control mode | N schematic | J/K/L MFD pages
|
|
G (hold) + fire key .. regroup a weapon onto that trigger -- or hold a
|
|
weapon panel's red PROGRAM button with the mouse and tap a fire key;
|
|
the joystick diagram on the panel shows the binding live.
|
|
|
|
An Xbox controller works out of the box. Rebind keys in
|
|
content\bindings.txt (regenerates with defaults if deleted).
|
|
|
|
This build: {VERSION}. Private -- do not redistribute.
|
|
{EXPIRE}Test builds STOP WORKING 14 days after they are made -- if the game
|
|
{EXPIRE}says it has expired, just grab the operator's newest zip.
|