Зараз я працюю над багатокористувацькою грою в режимі реального часу онлайн. Метою є встановлення підключення на основі клієнта / сервера за допомогою протоколу UDP. Поки я використовував UDP для руху гравців і TCP для подій (стрілянина гравця, гравець, який втрачає життя), тому що мені потрібно бути впевненим, що такі дані надійдуть до всіх гравців, підключених до сервера. Я знаю, що UDP вважають "ненадійним", і деякі пакети можуть бути втрачені. Але я читав всюди, щоб ніколи не змішувати TCP і UDP, оскільки це може вплинути на з'єднання.
Головне питання - як я повинен організувати свою мережу?
UDP не пов'язаний, як я можу врятувати, хто є хто? Чи потрібно зберігати ip адреси клієнтів у списку?
Чи варто використовувати TCP для важливих подій або використовувати UDP? Якщо мені потрібно використовувати UDP, як я можу переконатися, що дані не будуть втрачені?
Використовуючи і TCP, і UDP, мені потрібно зберегти для кожного гравця свою IP-адресу в списку (для UDP) та TcpClient, який з'єднаний в іншому списку (для UDP). Як я можу змінити це на більш ефективне?