I am using RakNet for my game and now that I have networked gameplay, I discovered some additional RakNet plugins that I can use to do autopatching (replacing missing files) and server lobbies/rooms. I discovered these plugins because I was going to implement player state that way the players can press tab and it would show info about who is on the server. In addition I knew that RakNet has functionality for a chat, and it is inside of these plugins. If I can rely on the infrastructure RakNet has then my game can have a pretty awesome network stack relatively fast. Now I have the Plugins inside of my project and I will soon be playing around with them. If these plugins work the way they claim to then it will save me months of development time, and a majority of the work will be hooking all this functionality up to ImGui, which will be very easy since the GUI state will not really be based upon player input, so there will be no juggling with event handling.
Learning about RakNet