Modular character slot save/load functionality is in, currently working on a server browser and Steam matches. Also hooked up my custom master server for testing (loosely based on the battle.net 1.0 protocol
https://bnetdocs.org), that's a project i did before Project Glaurung.
My server supports:
- Social features (profiles, channels, whisper, friendlist, clans), pretty much like b-net 1.0.
- SRP6 authentication (but i'll probably use Steam for authentication)
- Server listing/finding (Steam does that better, as it has NAT punch-through support)
- Database (the most important thing, i'm pretty sure i'll need to save a bunch of data later on)
That said currently i'm inclined to go mostly with Steam.
Steam pros:
- Everyone has it already, no need to register somewhere (well, i could autoregister the users on my server)
- Sophisticated NAT solutions for server hosting
- Saves development time
Steam cons:
- The game only works with Steam and is very intertwined with Steam services, that's something i don't particularly like.
That are just some initial thoughts, i don't even know yet how many social features i want to support (profiles? global chat? friendlist?). Nox was very bare bones in that regard. But that's something for later development stages anyway.
Also apparently Epic is working on a prediction plugin for UE4. I'm still lowkey waiting for better solutions before implementing the core of my netcode. I mean if everything fails i still can go the Nox way without prediction (that's also really easy to implement) but prediction done right would be very nice i think. I just don't want to half ass it, everyone hates broken netcodes.