andrew b24ce17751 Add local networking and test server
Introduce a localhost-only networking milestone and a tiny Python test server to verify packet flow from the plugin to an external process. Added F4T::Networking API (include and src) which uses non-blocking Winsock to connect to 127.0.0.1:7777, send JSON newline-separated transform packets, and handle reconnect/backoff and disconnects safely. Plugin changes: call ConnectToLocalServer() at load, register DisconnectFromLocalServer on exit, and send transform packets from main.cpp when logging player movement. Build: xmake updated to include new headers and link ws2_32. Server: server/server.py implements a simple multi-client TCP server that prints parsed transform packets; server/README.md and docs/dev-log.md updated to document the test setup and results. All networking failures are non-fatal so the game continues if the server isn't running.
2026-05-31 18:50:38 +12:00
2026-05-31 18:50:38 +12:00
2026-05-30 18:13:54 +12:00
2026-05-30 18:13:54 +12:00
2026-05-30 18:13:54 +12:00
2026-05-30 18:13:54 +12:00
2026-05-30 18:13:54 +12:00
2026-05-30 18:13:54 +12:00
2026-05-30 18:13:54 +12:00
2026-05-30 18:13:54 +12:00
2026-05-30 18:13:54 +12:00

Fallout 4 Together

Fallout 4 Together is an experimental research project exploring the possibility of adding basic multiplayer-style networking to Fallout 4.

The goal is not to create a full co-op campaign mod immediately. The first goal is much smaller:

Two Fallout 4 clients in a controlled test environment, with each player visible as a synced remote actor.

This project is currently in the research and prototype stage.

Project Goals

First Prototype

  • Load a native Fallout 4 plugin through F4SE
  • Connect to a local test server
  • Send local player position data
  • Receive remote player transform data
  • Represent another connected player using a placeholder actor
  • Restrict all testing to a custom test cell

Long-Term Ideas

  • Basic LAN multiplayer test mode
  • Remote player movement sync
  • Basic animation state sync
  • Basic chat or debug messages
  • Host-controlled test cell
  • Simple co-op combat arena

Non-Goals

This project is not currently trying to support:

  • Full Fallout 4 campaign co-op
  • Quest synchronization
  • Settlement synchronization
  • Full NPC/world state synchronization
  • VATS synchronization
  • Public server/MMO gameplay
  • Compatibility with large modlists

Those systems are extremely complex and are outside the scope of the first prototype.

Repository Layout

docs/             Project documentation and research notes
plugin/           Native F4SE/CommonLibF4 plugin work
creation-kit/     Creation Kit plugin files, Papyrus scripts, and test cell notes
server/           External multiplayer test server
protocol/         Network packet design and sync documentation
tools/            Helper scripts and utilities
test-data/        Example packets and test data
screenshots/      Development screenshots

Requirements

This project is expected to require:

  • Fallout 4 on PC
  • Fallout 4 Script Extender, F4SE
  • Fallout 4 Creation Kit
  • Visual Studio 2022 or newer
  • CMake or another supported C++ build system
  • A CommonLibF4-based plugin template
  • Git
  • A clean Fallout 4 test profile

Use a separate Fallout 4 installation or a dedicated modding profile for testing.

Recommended setup:

Fallout 4
F4SE
Creation Kit
Mod Organizer 2 or Vortex
Visual Studio
Git

Use a clean test save and avoid testing with a full personal modlist.

This repository does not include Fallout 4 game files, Bethesda assets, F4SE binaries, or any proprietary game code.

Users are responsible for owning Fallout 4 and installing required external tools themselves.

Status

Current status:

Research phase
Repository structure setup
Protocol planning
No playable multiplayer build yet

License

To be decided.

S
Description
No description provided
Readme
1.2 GiB
Languages
C++ 94.8%
ActionScript 1.6%
Python 1.4%
JavaScript 0.8%
Papyrus 0.6%
Other 0.8%