-
Notifications
You must be signed in to change notification settings - Fork 13
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
Send Error k_EResultLimitExceeded #15
Comments
I wasn't able to replicate this using the demo-bomber project, so I'll be investigating further. But if you do have any insight as to why this message shows up, that could help me narrow it down. |
I dug into this for two days now with no luck - I'm not able to reproduce with the demo bomber project. I'm attaching my project in case anyone wants to take a look. Relevant files
This seems to be related to the MultiplayerSynchronizer. I was able to reduce this error in one scenario where I restructured how some properties are synched, like didn't really need them, but ultimately it persisted. Another case that it doesn't show is when I Host on a much older laptop, and then join as client on my newer PC. However, if I host on my new gaming PC it always shows this error on the host side. Client side never gets this error. Technically I'm not even sure this is a problem, as it just shows as a Warning, so please let me know if this is just an oversight with logging... Any feedback would be appreciated! Thanks Setup
You should see the warnings spammed on the host within about 30 seconds. Project Source
|
Found some docs on when this is thrown:
|
While I don't see this as a legitimate fix (as it didn't change anything), I still wanted to try setting the I tried both methods: Method 1
Method 2Passing options array to
No luck.
|
I also get this warning spammed sometimes, consistently when I have more than 2 players connected. I do not use multiplayer synchronizer as I have custom netcode, but I do send a lot of unreliable packets for my net sync. I would love to know if it is an issue with the plugin or with how I am using it, (or a steam limitation I am not considering) My game works perfect using Enet peer |
As per a suggestion from @miatribe in my Discord, I tried using different buffer sizes:
As it's likely the values are in bytes, not kilobytes, but still same warning message spam. Again, I don't think increasing buffer size is the solution, but curious to see if it impacted result. |
In version 0.1.1 I left easy-to-change options for the peer, one of which solves this problem. peer = SteamMultiplayerPeer.new()
peer.set_config(SteamPeerConfig.NETWORKING_CONFIG_SEND_BUFFER_SIZE, 524288)
peer.create_host(0) |
This value I set is Steam's own default, increase its size. |
Updated project.
NOTE: I commented out the jump functionality a while back for testing, the warning shows up without moving or doing anything. Takes about 10 seconds before it starts. |
has this issue been solved? I am getting the same issue and it usually happens when the amount of data to sync gets bigger. |
Apparently no, have you tried changing this option?
|
I tried up to 2097152 but I still see those warnings showing up. Looks like I am sending too many rpc and steam doesn't like that probably? I see that those warnings actually have an impact at runtime. It's weird because it is not clear what is causing the issue. |
Is it the sender or the receiver who has these log warnings? |
it was on both. apparently as I changed the replication setting of pretty much all MultiuplayerSynchronizer nodes I put in the main scene from Always to OnChange... things started to work much better and I am not seeing the warnings anymore. I still think the library should be aware of the issue and be able to give a better message to know what is causing the issue itself. I will keep testing this on my side, but so far I am not seeing the error anymore. |
Yes, I understand, I was in doubt about removing the error, but the logic makes sense to have the error, since it will be a lost packet when this "warn" occurs, in my game I admit to sending updates only with event changes and I end up having little data sent. |
Receiving this error:
USER WARNING: Send Error (Unreliable, won't retry): k_EResultLimitExceeded at: SteamConnection::_send_pending (steam-multiplayer-peer\steam_connection.cpp:25)
This seems to happen with frequently replicated properties, like
position
of a Node2D.Game still plays, but not sure why this is happening, any insight would be much appreciated!
Source of message in code: https://github.com/expressobits/steam-multiplayer-peer/blob/main/steam-multiplayer-peer/steam_connection.cpp#L25C1-L26C1
The text was updated successfully, but these errors were encountered: