Networking specification#
Multiplayer sessions, DirectPlay 3 transport, and application messages.
Wire-format detail lives in ../../protocols/ — this domain
indexes behavioral context (when messages are sent, what game state they affect).
Scope#
- DirectPlay 3 session lifecycle (create, join, enumerate SP) — retail build only
- Host vs client roles and lobby wizard
- Application message framing (
lotr2_net_msg) - Turn-phase and UI sync opcodes
- System message handling (player join/destroy, host migration)
GoG multiplayer uses ASIGS, not DirectPlay; it is out of scope for this
domain until documented. See ../../builds.md and
../../skirmish/multiplayer-pvp.md.
Evidence#
../../architecture/net/MODULE.md— DirectPlay entry points, send/receive../../protocols/README.md— message family index../../protocols/dplay.md— session overview../../protocols/dplay-app-messages.md— app opcode catalog../../protocols/dplay-system-messages.md— system messages../../structs/lotr2_net_msg.md— app message frame
First spec targets#
- Session lifecycle — host open, client join, roster sync, transition to gameplay (cross-link gameplay MP lobby spec).
- App message catalog — maintain and extend
../../protocols/dplay-app-messages.md; add behavioral "when sent / handler effect" columns as gameplay spec matures (Phase 7).
Spec pages#
(Behavioral networking pages go here. Wire formats remain under docs/protocols/.)