Add new Papyrus scripts (CoSync.psc, CoSyncPlayer.psc, CoSyncQuest.psc) providing native bindings and quest/player proxy logic for networking: connection/session APIs, entity management, world/weather/workshop/companion sync, consumable/pipboy/door/power-armor events, and proxy animation/initialization handlers. Refactor the proxy actor controller (F4TProxyActorController.cpp) to support dynamic/runtime proxy spawning and improved lifecycle/visibility handling: change proxy base/form IDs to COPlayerProxy/CommonwealthOnline, add process-list actor lookup, spawn helpers, play-space/cell checks, 3D visibility refresh, ActorHandle usage, and spawn mutexes and globals for safer spawning. Update docs and setup (architecture.md, limitations.md, plugin/setup.md) to describe global dynamic spawn behavior, max runtime proxies (kMaxRuntimeProxyActors = 4), and validation checklist; update launch-two-fallout4.bat to show instance log locations. Misc: small tweaks to logging and debug flags to gate diagnostics.
42 lines
1.5 KiB
Markdown
42 lines
1.5 KiB
Markdown
# Limitations
|
|
|
|
Fallout 4 was designed as a single-player game. Commonwealth Online is therefore expected to have serious technical limitations, especially during early development.
|
|
|
|
## Early Prototype Limitations
|
|
|
|
The first prototype will likely require:
|
|
|
|
- Remote players to be in the same cell/worldspace as the local player to be visible (proxies are not shown across unloaded cells)
|
|
- `Fallout4Together_Test.esp` loaded for the `F4T_RemotePlayerProxy` actor base
|
|
- A clean Fallout 4 test profile
|
|
- A dedicated test save
|
|
- No large gameplay mods
|
|
- No quest synchronization
|
|
- No settlement synchronization
|
|
- No VATS synchronization
|
|
- No dialogue synchronization
|
|
|
|
Up to four concurrent remote proxies are supported per client (`kMaxRuntimeProxyActors`).
|
|
|
|
## Systems Not Supported Early
|
|
|
|
### Quests
|
|
|
|
Quest state is complex and deeply tied to the single-player game world. Quest synchronization is not part of the first prototype.
|
|
|
|
### Settlements
|
|
|
|
Settlements involve workshop data, placed objects, NPC ownership, resources, attacks, and persistent state. Settlement sync is not part of the first prototype.
|
|
|
|
### VATS
|
|
|
|
VATS depends on single-player time behavior and targeting logic. VATS should be disabled or ignored during early tests.
|
|
|
|
### Saves
|
|
|
|
Multiplayer state may desync or damage saves if handled incorrectly. Use a dedicated test save only.
|
|
|
|
### Mod Compatibility
|
|
|
|
The first prototype should be tested with a clean setup. Compatibility with large modlists is not an early goal.
|