After reading steeven's ideas, I think it's very specific. I will not comment on it. I will first talk about my thoughts:
1. To make the plan successful, you must:
A) The requirements for servers must be very low; otherwise, we must find a high-quality server (Group) to run this server! Obviously, the initial version optimization is insufficient, and the performance will definitely be low. Therefore, the server may have higher requirements!
B) NAT traversal! Otherwise, a cannot be met and a test is performed.
2. If 1 is met, the C/S structure may not be competent, and distribution calculation is required. I think the equivalent server is only used to log on and help the firewall. In fact, you should refer to the server category of MSN Messager and find and paste it. I remember there are three types: Dispatcher, noticement, and login. I don't know if I remember correctly.
3. If you want to design a part that allows players to participate in, you must be able to dynamically load game parts, that is, you must use reflection, it also requires repeated loading without leaking too much memory or other resources. This is actually a high requirement.
Based on the above points, I want:
1. Considering the entire login and connection structure, the system can traverse the firewall and perform normal transmission.
2. We must consider how to ensure data security and so on in distributed computing.
3. We must consider the dynamic loading structure. The memory consumption can be minimized without any leakage issues.
I will wait for a moment to share my thoughts on this.