You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Apr 19, 2026. It is now read-only.
Repository navigation
This repository was archived by the owner on Apr 19, 2026. It is now read-only.
No way of detecting when a RTM player disconnects. #53
Surely this isn't correct? I don't really want to have to add keep-alive ping packets to my game when it seems like there is facility already available using these callbacks.
Why don't they work?
BTW:I tried updating to v3.0 of the SDK, this causes masses of linker errors.
The state changes I believe are triggered during send/receive/close events, turning off the wifi would not cause that. I believe the B gets the event if B tries to send something, and I believe after some time A gets the event if A sends something to B (and it wouldn't go through). It is designed like this to avoid connection "jitter" if you lose connectivity intermittently for example switching from wi-fi to LTE or going through a tunnel/ elevator, etc.
The linker errors might be caused by not upgrading your NDK? 3.0 requires NDK r14 or greater, and since gcc and gnustl are deprecated, you should use clang toolchain with the c++ STL. If you can't move away from gnustl for some reason, you need to use gcc, mostly to be safe.
Ah, it's nice to have it confirmed, cheers. The reasons you state are perfectly valid. It'd be good to have the docs updated to reflect this as I'm not the first to come across this.
I largely ignore any "message sent" callback, as a rule they return -2 (INTERNAL_ERROR), which isn't
massively helpful. Despite this, the game works fine.
GoogleGameServices->RealTimeMultiplayer().SendReliableMessage(m_RealTimeRoom, (*it), Data, [](gpg::MultiplayerStatus const &ss)
{
DebugPrintf("Send status : %d", ss); // PRETTY MUCH ALWAYS -2.
});
Re:Linker errors - Yeah, I'm on r12b so it looks like I've got some upgrading to do.
Activity
claywilkinson commentedon Jan 27, 2018
The state changes I believe are triggered during send/receive/close events, turning off the wifi would not cause that. I believe the B gets the event if B tries to send something, and I believe after some time A gets the event if A sends something to B (and it wouldn't go through). It is designed like this to avoid connection "jitter" if you lose connectivity intermittently for example switching from wi-fi to LTE or going through a tunnel/ elevator, etc.
The linker errors might be caused by not upgrading your NDK? 3.0 requires NDK r14 or greater, and since gcc and gnustl are deprecated, you should use clang toolchain with the c++ STL. If you can't move away from gnustl for some reason, you need to use gcc, mostly to be safe.
RubiconDev commentedon Jan 27, 2018
Ah, it's nice to have it confirmed, cheers. The reasons you state are perfectly valid. It'd be good to have the docs updated to reflect this as I'm not the first to come across this.
I largely ignore any "message sent" callback, as a rule they return -2 (INTERNAL_ERROR), which isn't
massively helpful. Despite this, the game works fine.
GoogleGameServices->RealTimeMultiplayer().SendReliableMessage(m_RealTimeRoom, (*it), Data, [](gpg::MultiplayerStatus const &ss)
{
DebugPrintf("Send status : %d", ss); // PRETTY MUCH ALWAYS -2.
});
Re:Linker errors - Yeah, I'm on r12b so it looks like I've got some upgrading to do.
Thanks,
Steve.