 Looking for resource on multiplayer games design
Im looking for resources, books, videos anything I can grab on how to design a multiplayer (Online) game such as an RTS that uses pure native sockets, like how to handle packets, prediction, caching, etc.Any referral is appreciated
It sounds like you're actually looking for PROGRAMMING info, not DESIGN info. ;cebugdev2 said:uses pure native sockets, like how to handle packets, prediction, caching, etc.For trying to help, why are you asking about those things? That's an odd mix of topics.Using “pure native sockets, like how to handle packets” has been out for favor a long time. There are major security concerns, there are layers on top of it that provide authentication, encryption and data security, team/party/session connectivity, network hardware negotiation, and more. That's still a topic you can study, but it's not the level most game programmers work at. If you're looking at resources, perhaps look at the source of enet and similar libraries. The underlying technology for IPv4 (from 1982) and IPv6 (from 1998) have many decades of books about the protocols. Knowing what about them you're interested in could help know what you're trying to do.  If you are learning about them because you are trying to make modern games, you're looking at the wrong end of history; you wouldn't spend much time studying the Model T Ford if you wanted to learn about modern cars. Yes the underlying technology of raw sockets is part of the networking stack, but if you're touching it in a modern game things have gone terribly wrong. Either that, or you're on a library development team working on the core tech of the network library, and wanting to be a networking specialist that doesn't really work on game code. It can be useful to know about as a bit of underlying knowledge, but if your interest isn't for primarily academic knowledge it will have little use in modern game development.Asking about prediction and caching could mean quite a few things. Dead reckoning can help with some networking problems of latency, using the last known physics information like position, speed, and forces to guess where it is right now. Before you can get into that, you'll want to learn about topics like server authoritative versus client authoritative gameplay, object ownership, and latency mitigation techniques. Usually prediction and caching are at odds, since caching means data is stale and cached, but prediction needs fresh data to estimate how things are going to appear. Again, knowing what about the topic you're interested in would help figure out what you're trying to do and how to answer. 