Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MP] Fix disconnect_peer not doing the proper cleanup #91011

Merged
merged 1 commit into from
Jul 31, 2024

Conversation

Faless
Copy link
Collaborator

@Faless Faless commented Apr 22, 2024

Lower layers (cache, replication) were not being notified about the peer being disconnected.

Fixes #91007 (note, there's another issue, causing a different error spam in the client, which should be fixed in a separate PR as it involves different codes).

Note: In this PR I'm preserving compatibility by not emitting the signal, I wonder if we want to change that, I see that there's some inconsistency across Godot when it comes to emitting signals in response to functions being called via code.

Lower layers (cache, replication) were not being notified about the peer
being disconnected.
@Faless Faless added this to the 4.3 milestone Apr 22, 2024
@grossqx
Copy link

grossqx commented Apr 23, 2024

image
Hi! Just built from a test branch where I merged this PR and this one too. When I kill the client process, server still gets a streak of 5 of this error. The error does not occur if client joins without a syncable character and leaves. But the amount of errors does not change when I change the sync interval.
You said in the other PR that this one might fix this issue, so I'm writing here. Let me know if I should create a separate issue for this after all. If you need any extra information, I'll be happy to test and report.

@DanielSnd
Copy link
Contributor

When I kill the client process, server still gets a streak of 5 of this error.

This error you got after merging the PR looks like the error I got here: #92358
I made a change that fixed it for me, here's the pull request if you'd like to try it: #92359

@riazey
Copy link

riazey commented Jul 28, 2024

Still getting this error in the 4.3 RC1 when deleting a multiplayer node with a synchronizer on it after a client has left, so I'm pretty sure this PR (or another) is still necessary alongside Daniel's fix!

@akien-mga akien-mga changed the title [MP] Fix disconnect_peer not doing the proper cleanup [MP] Fix disconnect_peer not doing the proper cleanup Jul 31, 2024
@akien-mga akien-mga merged commit 9559330 into godotengine:master Jul 31, 2024
16 checks passed
@akien-mga
Copy link
Member

Thanks!

@Faless Faless deleted the mp/fix_disconnect_on_change branch August 1, 2024 03:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Using multiplayer.disconnect_peer causes errors with MultiplayerSynchronizer and MultiplayerSpawner
5 participants