Ocho personas, una batalla

En el recibo de ayer, la lista de trabajo pendiente tenía una línea que decía "en línea con más personas". Las partidas por equipos en línea eran tú y un amigo, cada uno con aliados de la IA. Ahora cada puesto puede estar ocupado por una persona: de 2v2 a 4v4, hasta ocho jugadores en una sala, más cuatro espectadores. Los puestos vacíos siguen yendo a la IA, así que puedes jugar un 3v3 con cuatro amigos y dos IA.
La sala
En la sala, cada equipo es una columna de puestos. Quien entra se sienta en un puesto libre del lado con menos personas y puede cambiar con Sentarse aquí hasta que marque Listo. Los puestos vacíos dicen "Puesto de la IA". Dentro de un equipo nadie repite facción (salvo que el modo de juego lo permita), y Listo ahora te avisa de inmediato si tu facción choca con la de un compañero, en lugar de dejar que el anfitrión lo descubra al intentar empezar. La lista pública de salas muestra el formato y cuántos jugadores hay ya dentro.
En los modos con draft, las elecciones siguen un orden 1-2-2-1 entre todos los jugadores: el primero de un bando, dos del otro, dos del primero, y así sucesivamente. Los puestos de IA eligen por su cuenta cuando llega su turno.
Una estrella, no una red
Con dos personas, los dos ordenadores intercambian órdenes directamente. Con ocho, conectar a todos con todos supondría 28 conexiones, cada una capaz de fallar a su manera. Así que el juego por equipos en línea es una estrella: cada invitado solo habla con el anfitrión, y el anfitrión retransmite las órdenes de cada jugador a los demás. Lo que viaja sigue siendo solo órdenes, unos pocos bytes por turno, y cada ordenador ejecuta toda la batalla, igual que en 1v1. Las comprobaciones de huella de la batalla también pasan por el anfitrión.
Cuando alguien se desconecta
En 1v1, si el otro jugador se desconecta, la partida se pausa y espera. En un 4v4 eso sería injusto para los otros seis, así que aquí funciona de otra manera: la IA toma el puesto del jugador desconectado de inmediato, desde el mismo turno en todos los ordenadores. El cambio se registra como una orden normal, así que la repetición y los espectadores muestran exactamente lo mismo.
El jugador desconectado abre el juego y elige Volver a la partida. El anfitrión envía una instantánea completa de la batalla, la IA sigue jugando por esa persona mientras su ordenador construye la escena y se pone al día. Una vez sincronizada, pide recuperar su puesto y toma el control en un turno acordado, lo bastante adelante para que todos lo sepan antes de llegar. Nadie se detiene a esperar.
¿Y si el que se desconecta es el anfitrión? Entonces no hay nadie que retransmita, así que todos los demás se pausan con la cuenta atrás de reconexión. Cuando el anfitrión vuelve, pregunta a cada invitado qué vio desde la desconexión y toma la instantánea del que va más adelantado, combinando las órdenes que solo los demás habían recibido. Si el anfitrión no regresa a tiempo, su equipo pierde por abandono.
Rendirse ahora es una votación: el equipo se rinde cuando más de la mitad de sus integrantes vota a favor. Si eres el único de tu equipo, te rindes de inmediato, como antes.
Lo que enseñaron ocho ventanas abiertas
Las pruebas sin gráficos simulan 2v2 a 4v4 con invitados y anfitrión que se desconectan y regresan, y comprueban que todos terminen en la misma batalla. Pero también ejecutamos el juego real: cuatro ventanas para un 2v2 y ocho para un 4v4, todas en la misma máquina, con la IA jugando por cada persona. A mitad de partida cerramos una ventana y la volvimos a abrir. Cada ventana terminó con la batalla idéntica. Por el camino aparecieron cuatro problemas que las pruebas sin gráficos no detectaron:
- La sala que nunca empezó. Todos se unieron con la facción por defecto, y un equipo no puede repetir facciones. De ahí salió el aviso al pulsar Listo.
- El invitado que se rindió al unirse. Con ocho ventanas cargando a la vez, el anfitrión tardaba en responder, y la petición de unión solo se enviaba una vez. Ahora reintenta durante hasta 20 segundos.
- Todos esperando a uno. En la primera versión, el puesto volvía al jugador que regresaba en cuanto se enviaba la instantánea, y los otros siete esperaban unos 30 segundos a que cargara su escena. Así fue como la IA acabó manteniendo el puesto hasta que el jugador se pusiera al día.
- El PC más lento al inicio. Quien tardaba más de 8 segundos en preparar la partida perdía su puesto a manos de la IA antes del primer turno. Ahora un jugador que aún carga tiene 45 segundos.
Hubo además uno sutil, encontrado leyendo el código: un invitado puede ir unos turnos por delante del anfitrión, y si su puesto volvía en un turno que él ya había pasado como IA, la partida se rompía. Ese caso ahora tiene una prueba propia.
Lo que todavía falta
Si el anfitrión se desconecta y nunca vuelve, nadie toma el control de la sala: su equipo pierde. Y las órdenes siempre pasan por el anfitrión, incluso entre dos aliados. Ambas cosas están en la lista.
— El equipo de Castle Arena





