Fix GUI weather: valid IDs, defer & reset

Replace invalid Fallout 4 weather form IDs with valid ones (including fixing Clear from 0002852a -> 0002b52a) and update protocol examples and server presets accordingly. Change the plugin to re-queue/defer server weather payloads when the local assigned player ID is not yet available (so early GUI clicks are not dropped) and add a log entry when deferring. Reset player/host assignment on server startup (_next_player_id = 1 and clear _world_state_host_player_id) to avoid stale host IDs after restarts. Also update changelog and developer log entries describing the fixes and recommended manual testing steps.
This commit is contained in:
2026-06-24 12:26:55 +12:00
parent 4c17e70620
commit 1493e68349
6 changed files with 126 additions and 20 deletions
+9 -9
View File
@@ -24,8 +24,8 @@ Weather (all clients receive; only player 1 acts):
```json
{
"type": "serverWorldState",
"weatherConsoleArg": "00148c45",
"weatherFormId": "00148C45",
"weatherConsoleArg": "001ca7e4",
"weatherFormId": "001CA7E4",
"serverTime": 1780212128.301
}
```
@@ -53,13 +53,13 @@ Edit `server/world_state_presets.py` so each preset uses the exact `fw` ID that
| Label | Default `fw` arg |
|-------|------------------|
| Clear | `00148c3c` |
| Cloudy | `00148c42` |
| Overcast | `00148c43` |
| Fog | `00148c44` |
| Rain | `00148c45` |
| Radstorm | `00148c47` |
| Glowing Sea | `001b9779` |
| Clear | `0002b52a` |
| Cloudy | `001cc186` |
| Overcast | `001c8556` |
| Fog | `001c3473` |
| Rain | `001ca7e4` |
| Radstorm | `001c3d5e` |
| Glowing Sea | `000f1033` |
## Backward Compatibility