Introduce complexionFormId (TXST) into RemoteAppearance and the appearance protocol so complexion textures are captured and serialized. Updates: header/state, Networking JSON parse/serialize, proxy actor comparisons, main capture logic, protocol docs, fake client/player samples, changelog and dev-log. Capture reads PlayerCharacter::complexion and serializes it, but applying to proxies is intentionally a no-op because TESNPC proxies lack a complexion field (documented in comments/dev-log). Files: plugin/include/F4TRemotePlayerState.h, plugin/src/*, protocol/packets.md, server/fake_client.py, server/fake_player.py, changelog.md, docs/dev-log.md.
Protocol
This folder documents the planned network protocol for Commonwealth Online.
The first protocol should be simple and focused on player transform sync.
First Packet Types
- Welcome packet
- Transform packet
- World state packet (host time and weather) — see
world-state.md - Server world state packet (dev GUI weather/time) — see
server-world-state.md - Disconnect packet
Future Packet Types
- Animation state packet
- Fire weapon packet
- Health packet
- Chat packet
- Cell change packet
Design Goals
The protocol should be:
- Simple
- Easy to debug
- Versioned
- Safe to extend
- Clear enough to test outside Fallout 4
Early Testing
The protocol should be testable using fake clients before being connected to Fallout 4.