Arquitectura y diseño de juegos multiplayer
Soluciones ? ● Buscar en nuestra propia experiencia soluciones que hayan funcionado bien. ● Aprender de la experiencia ajena.
MVC CONTROLADOR VISTA MODELO Gang Of Four
Desktop MVC CONTROLADOR VISTA MODELO REGLA S
SERVIDOR CLIENTE MVC CONTROLADOR VISTA MODELO RED PARTE DEL MODELO REGLAS OKOK
SERVIDOR CLIENTE Capas REGLASREGLAS REGLASREGLAS PROTOCOLO PETICIONES RESPUESTAS EVENTOS DE/SERIALIZADORDE/SERIALIZADOR DE/SERIALIZADORDE/SERIALIZADOR DATOS VISIBLES DATOS REDRED REDRED
Protocolo ● Seguro – El server no debe ser hackeable. ● Pequeño – El uso de red debe ser mínimo Tipo: Disparo origen: jugador arma: id destino: x, y, z velocidad: número Tipo: Disparo dirección: vector
Serialización ● Convertir para transmitir por la red. ● Convertir para leer por la red. – Ejemplos: ● JSON: JavaScript Object Notation ● XML ● Binario
SERVIDOR Modelo de datos DATOS CLIENTE 1 ● Notificaciones – Solo lo necesario – En el momento necesario CLIENTE N CLIENTE 2
SERVIDOR Viendo el pasado DATOS CLIENTE 1 CLIENTE N CLIENTE 2 ● Desincronización – Tiempo que tarda un mensaje viajar desde un cliente hasta el resto de los clientes.
Mundos MUNDOS DE JUEGO Mundo 1Mundo 2Mundo n AUTENTICACIÓN ● 1 Servidor de Autenticación – Información de los jugadores ● Mundos – Información del juego
Ejemplos ● Project Darkstar – Open source ● Electro-Server ● Smart Fox – Club penguin
Preguntas