RemoteFunction InvokeClient -> OnClientInvoke does not return when using coroutine.yield/resume

Been implementing this in my game;

Basically InvokeClient is called in the server, expecting a value returned, but the OnClientInvoke function uses coroutine.yield/resume, which totally breaks the return.

repro.rbxl (12.8 KB)
Scripts in StarterGui/Workspace

  • Should print “a” to the output, doesn’t
1 Like

This helps, thanks.

Another thread exists about this topic, there’s a simplified repro there.

Closing as duplicate