El título de este post es espectacular, ¿eh? lo he cogido tal cual de Blogamers (gracias Miguel Angel!). El post me llamó la atención enseguida: En un estudio llevado a cabo entre Microsoft Research, la Universidad de San Diego y la Universidad Carnegie Mellon están investigando una tecnología (Donnybrook) que permitiría jugar online unas 1.000 personas a la vez.
Me bajé el documento que han publicado sobre la investigación y me pareció muy interesante, ya que explica los problemas actuales de los juegos en red y qué están haciendo para solucionarlos. Y además llevo una semana dándole si parar a la demo beta del Call Of Duty 4, así que tengo muy fresco esto del juego online. Por esta vez, y sin que sirva de precedente, me he empollado el documento y os lo voy a resumir, eliminando tecnicismos.
Y digo sin que sirva de precedente porque el documentillo contiene joyas como esta fórmula, que os prometo que he intentado entender:

Bueno, cachondeos aparte, lo que me resultó interesante de la noticia es que dicen que lo han probado con Quake 3, y que las pruebas son buenas porque así lo dicen los jugadores. Para los que jugamos en red habitualmente, incluso si no estáis en el mundillo de la informática y las redes, está muy bien como cultura general. Vamos por partes.
¿Cómo funciona un juego en red? Los juegos en red pueden ser basados en servidor o peer-to-peer. La tendencia es que sean peer-to-peer, ya que tiene menos costes de mantenimiento. En un juego peer-to-peer tipo FPS, y desde el punto de vista de la red y el ancho de banda, el programa envía periódicamente información sobre la posición de su jugador a todos los demás participantes del juego. Normalmente cada 50 milisegundos. Así cada participante tiene en su máquina una réplica de los demás jugadores. Por ejemplo en una partida de esas de Call Of Duty 4 en las que entramos 12 personas a lo loco, mi consola está enviando datos sobre dónde estoy y qué hago a los otros 11 individuos unas 20 veces por segundo, para que puedan matarme (virtualmente) a gusto.
¿Y cual es el problema? Las redes domésticas actuales, las ADSLs y demás, tiene un ancho de banda limitado, y mucho más limitado de subida de datos (la información que yo envío). Si no se pueden enviar todos los paquetitos de información por la red vemos el famoso efecto lag. Siguiendo el ejemplo del CoD4, si mi ADSL no da a basto para enviar información a todos, los enemigos me ven ir a saltos por el escenario. Como si yo tuviera un teletransportador portátil al que se le están acabando las pilas. La verdad es que los juegos modernos están muy trabajados, y aunque muchos eliminan el efecto visual feo del lag, se nota que a veces disparo mucho a un tío pero no se cae. Eso es porque a su consola/ordenador no le están llegando mis disparos, o porque su posición real no es la que veo yo en pantalla, ya que la que hay en pantalla está desactualizada. Bueno, también puede ser porque yo soy muy malo...
La posible solución La gente detrás de Donnybrook ha cogido tres buenas ideas y la han llevado a la práctica con Quake 3. Consiste en: * Atención establecida (focus set), basado en la idea de que los jugadores tienen límites en aquello en lo que pueden prestar atención. * Acuerdo rápido por parejas (pairwise rapid agreement), insistiendo en que la interacción entre jugadores debe ser constante e inmediata. * IA guiable (guidable AI), para evitar inconsistencias que eliminen realismo al juego. Nada de teletransportadores, vaya.
La atención establecida se basa en que el ser humano que juega tiene una atención limitada. O sea, que normalmente sólo estás prestando atención al tío al que estás apuntando. El sistema consiste en calcular, de forma estimada, la cantidad de atención que estás prestando a los demás jugadores. Luego esta información se envía a los demás jugadores, mientras que tú recibes los valores de la cantidad de atención que los demás tienen puesta en tí. Entonces, tu consola/ordenador reserva más ancho de banda para aquellos jugadores que te están prestando más atención, y deja un ancho de banda limitado a aquellos jugadores que no te están mirando.
Lo interesante de este efecto es que funciona: por mucha gente que haya en la partida, para cada jugador sólo son importantes aquellos otros jugadores en los que se tiene centrada su atención. Para el resto de jugadores sólo es necesario un ancho de banda mínimo para garantizar la integridad de la partida, pero no demasiado detallado.
La idea del acuerdo rápido por parejas se refiere a la interacción entre jugadores. Interacción es cuando un jugador (writer, en el documento) afecta a otro (target). Por ejemplo cuando alguien me dispara y me baja la salud en el juego. La idea que explica el documento es que se establezca una comunicación directa y dedicada entre ambos jugadores de forma que el writer sea el que inmediatamente actualiza el estado del target. Luego el target actualiza su propio estado y lo notifica a los demás.
La mejora en este punto está en que el jugador que inicia la acción tiene más control sobre ella, y no depende del ancho de banda general de la partida, ni de su consumo para/con los demás jugadores que no sean el target. En caso de producirse una inconsistencia (que la acción no pueda realizarse), el target notifica al writer y ya está; la cosa queda entre ellos dos.
Dado que se está hablando siempre de reservar más ancho de banda para aquello en lo que se está prestando atención o aquello con lo que se está interactuando, ¿qué pasa con el resto de la partida?. Si se hiciera igual que ahora, es decir, enviando información sobre la posición y movimiento/acción del jugador, el resultado sería insuficiente, ya que los envíos de datos son infrecuentes.
La IA guiable soluciona este problema, y consiste en no enviar información absoluta de la posición, sino una guía o predicción de actuación, que defina cómo debe actuar la réplica hasta la siguiente actualización. La predicción contiene básicamente dos parámetros: posición y dirección hacia donde se mira. Así, entre actualización y actualización, en el caso del Call Of Duty, los jugadores lejanos a mí no tendrían datos exactos constantemente sobre qué hago y quién me mata. Sólo tendrían una predicción de dónde estaría antes de la siguiente actualización. Impresionante.
Conclusión Muchos pensarán (yo lo hice), que estos sistemas falsean las partidas, ya que consisten en dedicar más ancho de banda a unos aspectos y menos a otros. Simplemente eliminan parte del realismo. Pero el objetivo de la investigación se basa en medir cómo de divertido resulta esto para los jugadores. Las mediciones sobre las pruebas en Quake III son sobre cómo de divertido resulta comparándolo con cómo sería jugar en un entorno con mucho ancho de banda, sin Donnybrook, etc. Parece ser que el éxito fue total, ya que los jugadores, después de probar Quake III en distintas condiciones, preferían jugar con Quake III y Donnybrook activado porque les resultaba más divertido.
Bueno, salvo uno que prefería jugar con Quake III, con muy poco ancho de banda y sin Donnybrook. En sus palabras, "es que le recordaba a cuando jugaba a Quake I con un model de 28,8k"
La conclusión que saco yo es que algún día sí será posible eso que tanto ansiamos algunos: que las partidas online a los FPS empiecen a ser batallas campales de verdad. Guerras entre ejércitos enormes en escenarios enormes. Aunque claro, cuando llegue ese momento, seguro que echamos de menos los 6 vs 6 que tanto nos gustan ahora.
Vía | Blogamers y Microsoft Research (pdf)
Ver 25 comentarios
25 comentarios
DarkDemonXR69
Joder ahora me entra mono de jugar xD, un counter 100 vs 100 puede que no, pero por que no un battlefield 2142 si xD que ahi los mapas son enormes y eso si que seria una buena batalla xD o un quakewars que practicamente se parece a battlefield.
DarkDemonXR69
#3 | Escrito por NazguL2 | 19 sep 2007 09:52:02
yo no dije 1000 xD dije 100 y aun asi tu has visto el TDU (test drive unlimited) en ese juego vas con un coche por una isla de hawaii real y ir de punta a punta con un coche tardas como un cuarto de hora casi… si pueden hacer un mapa asi por que no hacerlo para un FPS no dudes que con los dvd nuevos, los que creen o los blueray puedan hacer mapas asi o mas ya que no me conformaria solo con una isla… yo creo que es bastante viable
DarkDemonXR69
me imagino una batalla estilo oblivion pero… a lo brave heart xD asako paco xD y con choque final despues de la carrera
David
Sólo le veo un inconveniente, y sería… qué ocurre con las armas de largo alcance?? Si cojo un sniper y me apuesto en lo alto de un campanario o una montaña a las afueras, alcanzando la mayor parte del escenario con mi vista… dispararé sobre predicciones, predecirán a donde disparo? o, si además de personas a pie, se puede coger un avión… veré a los objetivos a pie o en tanque o sus predicciones?? o si cojo un bazooka o una pieza de artillería, podré disparar sobre un objetivo lejano con la ayuda de unos prismáticos??
Esta prueba me parece una buena solución para FPS cuerpo a cuerpo, pero si queremos dotar a los jugadores de armas de largo alcance, o transportes de alta velocidad (no me refiero a teletransportes) creo que la cosa se complica. Llevo una semana y pico enganchado a WarhawK, y estas posibilidades (avión, sniper, bazooka, prismáticos) están contempladas y funcionan a la perfección. En combates de 32 jugadores (16 vs. 16) en escenarios enormes se puede disparar sobre la otra punta de éste con el arma adecuada y hacer blanco si tienes suficiente pericia.
Y una cosa más… podré disponer de una imagen en tiempo real de la situación de todos los combatientes en elmapa, por ejemplo, tomada de satélite (es un suponer). Esto ya se utiliza diariamente para el cotrol de situaciones de combate reales, y se puede adaptar perfectamente a un FPS online (de hecho, sin justificarlo así, ya se utiliza)…
Me parece una buena solución para enfrentamientos cuerpo a cuerpo, como decía, pero no tan buena para batallas reales a gran escala.
Es bueno saber, sin embargo, que se investiga para dotar cada vez más de nuevas carácterísticas a los juegos online.
Saludos!!
puche
Pues jugamos 100 vs 100 en el mapa de oblivion, lo malo es el 1er tio que caiga, que se va a cagar en la madre de quien yo se, y los 2 ultimos que queden que para encontrarse…
yo 16 contra 16 lo veo excesivo, por lo que esta bastante bien, y eso lo aguantan muchos juegos, el problema no es el numero de personas simultaneas, si no la calidad con pocas personas…
Prefiero jugar 8 vs 8, que 24 contra 24…
Al final se acabaria dividiendo un bando en 6 bandos y seria un caos comunicarse…
David
Estoy con Niver, precisamente para mi la esencia se pierde al perderse el realismo de las bajas accidentales. Como cargarse a un amigo con un bazooka porque tu objetivo se mueve como alma a la que persigue el diablo (que para el caso eres tú XD), además, eso no pasaría si el fuego amigo se da en proximidad, pero sí si es en lejanía, con lo cual no es que elimines esas bajas, sino solo las posibles bajas accidentales a distancia. Y lo peor no es eso, sino la imposibilidad de dar a blancos a larga distancia intencionadamente, porque ves una prediccion, no un objetivo real. Es decir, se elimina snipers, bazookas, artillería, porque el blanco está demasiado lejos de tu zona de influencia.
Por ejemplo en WarhawK puedes subir con un rifle sniper de copiloto en un avión, el piloto te deja en lo alto de un edificio/montaña inaccesible a pie, y desde allí, jauja :P
pupegbl
Un gran avance, sí señor. Mmmmmm batallas campales entre ejércitos de verdad, aaarrrrrghhggh. A ver si implementan esto pronto (supongo que para esta generación de juegos). Te imaginas una partida al conunter strike de 100 vs 100?? no, la verdad es que no, sería todo el rato un "Disparad en la brecha!!!!" continuo XD. Un post muy interesante.
NazguL2
no hay ningun juego online q tenga mapas suficientemente grande para jugar 1000 y que no se apelotonen, ni el battlefield
Grafenberg
disparad en la brecha x1000?
interesante…
Xbox se lo curra
Joroba que rapidos, hace escasos dias salio la noticia que microsoft investigaria esto, y ya hay avances. Me parece muy bien, pero la primera palabra la tiene telefonica.
Markussen
Batallas de ejércitos… Dios…
Vivir un auténtico (virtual) asalto en Normandía…
tamat
Estos sistemas funcionan cuando hay 1000 personas en un mapa pero que nunca interactuan todos a la vez, es decir, cientos de salas con gente desperdigadas por ellas, pero eso no tiene mucho sentido en un FPS. Si pensamos en 1000 personas simultaneas pensamos en campo abierto y tenerlos a todos visibles (aunque solo esté realmente sincronziado el que está en mi mirilla), y aquí no hablan de si contemplan algo así.
Lo digo porque sino lo que tienes es lo que ya hay en los MMORPGs, es decir, miles de personas conectadas simultaneamente pero en realidad solo ves a un subconjunto muy pequeño de estos (de hecho en juegos como Second Life existen limites bastante bajos de personas que pueden coexistir en una misma zona).
herebus
#4 | Escrito por David | 19 sep 2007 09:58:36
Hacia tiempo de verdad que no leia un comentario interesante y bien escrito como este y que ponga al descubierto algo tan obvio y a la vez tan interesante.
Jejej ;), en serio.
Desde luego esta muy bien estos avances, pero este tipo de tecnicas ya se aplican en mayor o en menos medida.
En juegos como Warhawk gran parte de los recursos del sistema se van a calcular ese promedio de distancia y atencion, eliminando posbilidades de interactuacion con objetos que no estan a la vista, lo que reduce el ancho de banda necesario para jugar.
Este estudio lleva ese tipo de "tecnicas" un paso mas alla, lo que esta muy bien.
Aunque lo dicho ya existen desde hace bastantes años, juegos que aplican cosas parecidos para permitir un on-line fluido.
Y esas "tecnicas" ya conllevan por lo que parece limitaciones asociadas a vista/interactuacion lejana o vista/interactuacion cenital de la accion.
En combate cercano o de corto recorrido, sin capacidades de transporte rapido, (aviones, teletransportes, tanques, coches, prismaticos, miras telescopicas, etc etc), esas aportaciones pueden tener un buen objetivo, pero en juegos actuales como HALO, Warhawk, Unreal Tournament III, en los que juega un papel tan importante la vista/interactuacion de largo recorrido, el grueso de esas ventajas no pueden aplicarse del todo.
En el fondo estamos en las mismas.
-- off-topic eliminado --
Señores no hay magia, solo trucos.
Salu2
Foxtreme
Para poder hacer mapas gigantescos, suponiendo que el sistema permita 1000 jugadores online, o los que sean, consiste en adaptar el sistema de mapas de los MMORPGs al resto de juegos.
Se trata básicamente de la carga de mapas en tiempo real, que permite mapas gigantescos… el primer juego que no es MMORPG que se me ocurre que ya aplique esto es el GTA San Andreas… ¡y no es multijugador! (Bueno, hay un mod por ahí :P)
namregzepol
Genial el articulo, muy bueno.
Y ahora un incoveniente a esta tecnología. Cede parte del control del tráfico a cada uno de los participantes. Esto quiere decir que si alguien altera su versión del juego para que, digamos, dispare sola, no hay ningún servidor intermedio que controle esto.
Creo que, en la actualidad, es el mayor problema que se encuentran al realizar juegos de este estilo. Por ejemplo: cuando el 'writer' dispare, el 'target' puede leer hacia donde estaba disparando y responder diciendo que él no estaba allí, aunque realmente estuviese. El 'writer' se volvería loco a disparar, pero no atinaría al 'target'.
Quizá funcione bien en consolas, en las cuales es múcho más dificil alterar los programas.
OsitoComeBayas
¿Y si disparo con un tanque y fallo, se me va lejos y le doy a otro? como no le prestaba atencion tendre menos ancho para ese y puede q no reciba q le he dado…
Pero me preocupa mas los tramposos q en lo de target-writer puedan modificar esa informacion.
off topic: el juego de la imagen es una cebada, es algo simple pero mola xD (Defcon)
DavidVX
Esa es la clave, OsitoComeBayas: si al otro tanque no le llega el tiro y tú no sabíás que estaba allí, nadie se entera. Por tanto, da igual :-)
Justo la clave es esa.
pupegbl
Tienes razón DavidVX, porque anda que no nos hemos enfadado cuando en el counter Strike te mata alguien que no iba a por ti simplemente porque ibas en la misma línea de su target. Ejemplo: uno con la Artic intenta dar al target desde lejos, y detras del target pero más lejos hay un colega del target. En lugar de dar al target, da al colega del target porque el target se ha movido lo justo para que no le den (esto último leerlo despacio que no me he liado) y te joden a ti. Este sistema lo veo más justo y divertido. Buff que de targets XD
«E89» Banana
Estoy en desacuerdo contigo DavidVX (#15), ya que aveces es mas divertido y nos provoca más gracia matar (virtualmente) a otra persona por accidente xDDD
pupegbl
#17 | Escrito por «Nive®» |
Qué caaabrón!!! XD
«E89» Banana
Además pupegbl (#16) esa es la esencia del juego jajaja, ya si no mate por el que iva me llevé a su colega xDDD, no creo que sea injusto, sino es que estuviste en el lugar equivocado en el momento equivocado xDDD
Salu2!!!
pupegbl
Que guapo no? ya queda menos para tener el Warhawk. Me gustaría hacer eso de estar en jauja desde lo alto.
EL MACHETAS
LLENAR UNA PARTIDA VA A SER UN GALLO
tamat
una cosa es cuantos personajes puedan jugar en red y otra distinta cuantos pueda renderizar tu tarjeta, porque en oblivion los limites eran tirando a bajos (entre 15 y 20 NPCs que yo recuerde)
whitelab
Existe un juego online másivo que os aseguro que reune en un mismo servidor Online 24/7 a más de 500 jugadores, en un mismo mapa.
Este es el Battelground Europe (antiguo WWII Online).
El mapa de este juego es una representacion a una escala 1:2 de la Europa continental hasta Alemania y Inglaterra.Esto quiere decir que por ejemplo, ir desde Inglaterra hasta la retaguardia alemana para bombardear sus fábricas supone según que avión escojas, al menos 1:30 horas para ir y si sobrevives otro tanto para volver…
Además, hay que añadir que la balistica es totalmente real (se dedica un servidor exclusivamente a esto)donde las velocidades de los proyectiles, los grosores de los blindajes, el angulo de impacto y otros factores se tienen en cuenta.
Bueno para no aburriros, echad un vistazo a la página web www.wwiionline.com o aquí http://hq.guerra-mundial.org/
Lógicamente, los gráficos no son tan avanzados como en otros juegos que comentais, pero si quereis inmersión de verdad, no hay juego que te suba más la adrenalina que este, os lo aseguro…
Saludos