The various rpc methods do not return anything. See this implementation of rpc_id. The return type is void
- meaning no return type. However some private methods (e.g. _rpc_id_bind) return an empty variant - which doesn't seem to serve an apparent purpose as an empty variant is returned from all code paths.
I suspect that an empty variant (void) return in GDScript is kind of like Python's implicit None
... where even if a method does not explicitly return anything it still returns that implied None
.
And no - I don't believe that any of the rpc methods block. To get data back from the target peer they would have to invoke an rpc in response.