thomaswp / BeaverBuddies

GNU General Public License v3.0
16 stars 2 forks source link

Client should be able to join mid-game, not just at load time #3

Closed thomaswp closed 1 month ago

thomaswp commented 8 months ago

Describe what you want the mod to be able to do

Currently, if the Client joins a game after the Host has played any amount of time (i.e. not at the initial load), there will be a desync within ~5s due to Beavers diverging positions. The exact cause is unknown, but likely happens because there are subtle differences between the state of the game at load time and the state of the game when the game was saved (e.g., state that is not fully captured by the save file, or initialization logic that only happens when the game is loaded).

This is not considered a "bug" because the mod explicitly does not support joining after load right now. However, adding this would be a helpful feature.

It is not clear how feasible it is to address these differences, but it should in theory at least be possible. If addressed, the instructions should be updated accordingly.

thomaswp commented 7 months ago

Retested 2/10 and this issue still persists, and still seems to come from movement desyncing first.

However, now that #2 is resolved, this presents much less of an issue. If the client desyncs, host and client can reload at the same time, in a similar amount of time. Main downside is I can't as easily automate rejoining.

thomaswp commented 1 month ago

Closing as unfixable - because of the way timberborn loads, this would be pretty much impossible, and it's only 15s of loading to rehost.