26

El concepto más importante en un juego multijugador

22535Puntos

hace un mes

Curso de Creación de Videojuegos
Curso de Creación de Videojuegos

Curso de Creación de Videojuegos

Entiende la industria de los videojuegos, y crea tu primer título. Define el plan de negocios y game design. Dale forma a tu narrativa, gameplay y banda sonora. Aprende y usa gamificación para enganchar a tus jugadores.

Hacer un videojuego multijugador no es para nada fácil. Sin embargo, si tienes los conceptos básicos claros, puede volverse una tarea muchísimo más sencilla.

Hola, soy Hector Pulido. En este artículo te enseñaré el concepto más importante en un videojuego multijugador y, si me acompañas hasta el final, te mostraré una sorpresa increíble 😮.

Dime una cosa: ¿en qué se parecen el primer Counter Strike, Battlefield y World of Warcraft? Admito que puede parecer una pregunta muy obvia, los tres juegos son videojuegos multijugador. Pero ahora te tengo una mejor pregunta: ¿en qué se diferencian sus modos multijugador? La respuesta es el principal concepto de este artículo: la autoridad 🕵️‍♀️. Este es un concepto clave para entender los videojuegos multijugador y se basa en una simple premisa: ¿dónde se ejecuta la mayor parte de la lógica de tu juego?

En Counter Strike, el movimiento de los jugadores y todas sus acciones se ejecutan en el cliente. Estos movimientos se transmiten a través de la red al servidor y luego a los otros jugadores. Es por esto que es tan fácil hacer trampas en ese juego. Este juego tiene lo que llamaríamos mínima autoridad.

En juegos como Battlefield, los inputs del jugador se procesan en el cliente, no obstante luego se envían a un servidor y son validadas por este. En caso de haber alguna irregularidad, esta se repara y se envía a todos los demás jugadores. Si la irregularidad continúa, el juego expulsa al cliente irregular. Este enfoque se conoce como autoridad media o mixta.

Por último tenemos juegos como wow, que hacen lo mismo que battlefield, pero también tienen una economía, ataques mucho más complejos, persistencia, etc. Todas esas mecánicas son ejecutadas en el servidor, es lo que llamamos autoridad alta.

En el límite, un juego offline o de un solo jugador no tiene autoridad y plataformas como Google Stadia tienen autoridad absoluta (aunque no sean videojuego multijugador).

Untitled.png

Puede parecer que la autoridad evita los hacks y es la solución perfecta, y… lo primero si, lo segundo no tanto, te mostraré algunos problemas que tiene el tener un juego demasiado autoritativo.

  1. Mayor lag y latencia en el juego, después de todo, los datos tienen que pasar por el servidor para ser procesados.
  2. Se necesita más ancho de banda, esto debido a que la cantidad de datos enviados son mucho mayores entre más autoridad haya, el ejemplo de esto es la autoridad absoluta, en donde ya no enviamos simples datos sino imágenes enteras.
  3. Gastarás más dinero en servidores, si todo el código se ejecuta en tus servidores, tu proveedor te cobrará por el ancho de banda y sobre todo por la cantidad de procesamiento.
  4. Tu código tendrá mayor cantidad de puntos de falla, esto está relacionado con el punto anterior, más código en el servidor suele significar código más complejo y monolítico.

Entonces, ¿la solución a todo eso es tener autoridad mínima?.. De nuevo, no, aquí te van unos cuantos problemas que tiene la baja autoridad.

  1. Vulnerabilidad a los hacks, ya lo vimos antes, si es el cliente el que decide como se comporta el juego, ese juego puede ser hackeado fácilmente, incluso con programas como cheat engine
  2. Alta entropía en la sincronización, este es el punto más difícil de explicar, pero aquí va, durante tu partida se van a generar micro-errores, estos no pueden ser fácilmente solucionados por el cliente, ya que este no conoce el estado global, esos micro-errores se suman y si la partida dura mucho puedes acabar con que dos jugadores tienen partidas totalmente distintas, a eso le llamamos entropía.
  3. Mayor cantidad de situaciones frustrantes para tu cliente, como la típica situación en donde disparas 100 veces y el enemigo sigue vivo, eso está relacionado con el punto anterior, pero también con la red, la capacidad del ordenador cliente, etc.

Como vimos, no existen las balas de plata. Debes elegir cuidadosamente qué tanta autoridad va a tener tu videojuego multijugador antes de empezar a crearlo. Ahora sí, viene la sorpresa, y es que ha salido el curso de fundamentos para el desarrollo de videojuegos multijugador online en donde veremos este tema con mayor profundidad, ejemplos y mucho más.

No solo eso, también ha salido el curso práctico de videojuegos multijugador online con Unity y mirror, en donde recrearemos el mítico videojuego de pong con características multijugador usando Unity y Mirror.

🚨 NO SOLO ESO 🚨, si estos cursos gustan mucho vamos a suscitar muchos más cursos de este estilo hasta llegar a hacer un videojuego multijugador masivo online o MMO como WOW, ¿qué dices? ¿Nos acompañas a nunca parar de crear videojuegos multijugador?

Curso de Creación de Videojuegos
Curso de Creación de Videojuegos

Curso de Creación de Videojuegos

Entiende la industria de los videojuegos, y crea tu primer título. Define el plan de negocios y game design. Dale forma a tu narrativa, gameplay y banda sonora. Aprende y usa gamificación para enganchar a tus jugadores.
Hector
Hector
hector_pulido_

22535Puntos

hace un mes

Todas sus entradas
Escribe tu comentario
+ 2
Ordenar por:
6
2852Puntos

Wow! No sabía esta parte de los videojuegos multijugador. Me ha hecho interesarme en esos cursos.

3
22535Puntos
un mes

Muchas personas ignoran este concepto y luego tienen problemas de seguridad, eficiencia, etc. Es importante pensar en la autoridad antes de empezar a desarrollar.

4
30038Puntos

Hola, siempre soñé con desarrollar videojuegos, y aunque no es mi ruta principal en el momento por supuesto hare la ruta, lo mas seguro el próximo año comience con este ruta. Me gustan los cursos que están saliendo, me emociona por lo que se viene en el futuro

2
22535Puntos
un mes

Te lo recomiendo mucho, así sea como hobby

3
30038Puntos
un mes

Claro que si, es una de mis pasiones, descubrir como se hacen siempre me dio curiosidad. El próximo año será mi meta poder terminarla

3
8379Puntos

No puedo esperar a tomar los cursos

3
10789Puntos

Hermoso ❤️ sigo soñando con algún día ser un gran desarrollador de videojuegos 😃

2
22535Puntos
un mes

¡Si se puede! Estoy seguro que con algo de esfuerzo puedes lograrlo 💪

1
10789Puntos
un mes

Muchas gracias 😄 así será 😉 primero Dios.

3
35865Puntos
un mes

Si puedes, aquí te ayudamos y podemos ser tus beta testers

2
10789Puntos
un mes

Muchísimas gracias :3 lo tendré en cuenta cuando llegue el momento 😉 son fabulosos!

2
32084Puntos

Que amplia es la tecnología definitivamente.
Gracias por compartir esta información Héctor.
Saludos.

1
8754Puntos

Que buen articulo creaste, quiero hacer la carrera de videojuegos, pero prefiero del momento todo a su paso, primero termino la carrera de desarrollo web y carrera de la nube de azure, y ahi si vere si tomar la de videojuegos o la de programacion en general y ahi si llegar lo mas relajado a la carrera de videojuegos y hacer que todo me salga mas fluido.

Muy buen aporte Hector!

2
22535Puntos
un mes

Eso esta muy bien, en platzi queremos que la educación sea lo más flexible y efectiva posible ¡Un saludo!

1
12827Puntos

Tenía la noción sobre esto al jugar GTA Online. Que alguien me corrija pero creo que todo el procesamiento se hace en el cliente y solo el servidor almacena datos, por lo que es tan fácil ver actuar tantos modmenus y los servidores almacenan todos eso sin problemas. Ahora una pregunta. ¿Trasladar este procesamiento del cliente al servidores es un proceso muy complejo? Me gustaría que RockstarGames llevara a cabo ese proceso para librarse de tanto ModMenuers que molestanto tanto a nosotros los jugadores legales.

1
22535Puntos
un mes

Si es un poco difícil, en el curso explico que al crear un juego multijugador todo debe planearse desde el principio.