Net: NetTransport seam + Steam transport (Workstream C.1)
The wire moves behind NetTransport (L4NETTRANSPORT): L4NET.CPP taken from RP412 post-seam -- all ~24 Winsock call sites route through NetTransport_Get() -- with BT's 3 BT_NET_TRACE blocks re-sited onto their code anchors (they read message/packet metadata, not sockets, so no collision). Default WinsockNetTransport = the arcade/LAN TCP wire. SteamNetTransport (L4STEAMTRANSPORT, ISteamNetworkingSockets + FakeIP/ SDR) compiles under option(BT412_STEAM) (default OFF); Steamworks SDK 1.64 vendored at extern/steamworks_sdk_164. steam_appid.txt gitignored (Spacewar 480 by hand until a real AppID). Ported gConsoleLossEndsMission from RP412's APPMGR (default False = arcade re-listen). Verified: default TCP build passes full loopback MP through the seam (console -> egg msgID-3 chunks -> mesh complete -> both instances tick, net-tx/net-rx traces fire through NetTransport_Get()); BT412_STEAM=ON compiles + links against the SDK + boots solo. Live Steam session deferred to Phase 6. (Phase 4 of docs/BT412-ROADMAP.md) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -118,6 +118,14 @@ identical-to-baseline → take RP412's file verbatim, diverged → hand-apply th
|
||||
(2) Steam smoke — transport installs, FakeIP allocated, graceful TCP degrade when
|
||||
Steam is absent; (3) real Steam-sockets session (may defer to Phase 6).
|
||||
|
||||
> **Status (2026-07-14): DONE.** Seam landed; `L4NET.CPP` from RP412 post-seam with
|
||||
> BT's 3 `BT_NET_TRACE` blocks re-sited; `gConsoleLossEndsMission` engine global
|
||||
> ported. `option(BT412_STEAM)` gates the Steam TU + SDK. Verified: default TCP build
|
||||
> passes full loopback MP through the seam (console → egg → mesh → both tick, traces
|
||||
> fire through `NetTransport_Get()`); `BT412_STEAM=ON` compiles + links against the
|
||||
> vendored SDK + boots solo. Live Steam session deferred to Phase 6 (needs the lobby +
|
||||
> 3 machines). Details in `context/steamification.md`.
|
||||
|
||||
## Phase 5 — Front end + LocalConsole marshal (Workstream B — bulk of new code)
|
||||
|
||||
- **5a `game/reconstructed/btl4fe.cpp`** (skeleton: RP412 `RP_L4/RPL4FE.cpp`): no
|
||||
|
||||
Reference in New Issue
Block a user