Henauxg / bevy_quinnet

A Client/Server game networking plugin using QUIC, for the Bevy game engine.
Apache License 2.0
251 stars 16 forks source link

Feature suggestion: add the ability for a "client application" to handle multiple connections #1

Closed Lemonzyy closed 1 year ago

Lemonzyy commented 2 years ago

First of all I must say that this crate is very good and I hope it will continue to improve.

Suggested feature

I think it would be nice that a "client application" could manage several connections at the same time.

Use cases

One of the use cases would be to make a server list menu where the client would send requests to each server to know their status, ping, number of connected players, etc. (a la Minecraft)

Implementation ideas

Henauxg commented 2 years ago

Thank you for the kind words, and your ideas.

I do think it would be nice too. As for the uses cases, I'm sure it could additionally be useful for tools and bots. I will look into it.

Lemonzyy commented 2 years ago

I just thought of a problem that will not only occur for this feature. Currently, a client (or server) is directly initialized at application startup, but this is not always desired. Often the client needs to be able to connect to a server later in the application (e.g. choose server to connect to in server list menu).

Henauxg commented 2 years ago

This last issue is already solved in main, and will be released with 0.2.0. Both client and server respectively have a connect and start method, You can see it in the examples on main : chat client, chat server

This might still evolve if the multiple-clients-connections makes it for 0.2.0

Lemonzyy commented 2 years ago

Oh yes sorry I haven't looked in main. This is indeed what I was describing above.

Henauxg commented 1 year ago

Implemented by #3