Unirse a partida online sin necesidad de invitación

Publicado por Marth, Julio 27, 2022, 06:50:37 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Marth

Verán, estoy revisando esa novedad del modo online de la nueva beta de GMS2.

Para iniciar la conexión se usa este código:

rollback_define_player(obj_player)
if (!rollback_join_game())
   rollback_create_game(2, true)


Esto lo que hace es que uno de los jugadores hace de servidor, y tiene que pasar invitaciones a otros jugadores para que se unan a su partida.
Claramente, esto es algo incómodo. Me pregunto si es posible hacer que el jugador inicie el modo online, busque automáticamente si existe alguien que ha iniciado también el modo online, y si es así unirse a su partida, pero si no, debe convertirse en el servidor de la partida.

shaoran

Hola Marth!

No lo veo practico, por que el jugador que abre el juego primero podría no querer ser host o no tener la potencia para ser host.

Además que se puede dar la situación de muchos jugadores abriendo el juego y creándose automáticamente partidas, lo que te obligaría a re-validaciones constante para ver quien fue el que inicio realmente primero.



Marth

Cita de: shaoran en Julio 27, 2022, 08:06:38 PMHola Marth!

No lo veo practico, por que el jugador que abre el juego primero podría no querer ser host o no tener la potencia para ser host.

Además que se puede dar la situación de muchos jugadores abriendo el juego y creándose automáticamente partidas, lo que te obligaría a re-validaciones constante para ver quien fue el que inicio realmente primero.

El problema está en que una vez la partida termina, debo reiniciar el juego con room_restart, lo que reinicia lo de tener que crear la conexión online. He comprobado que eso invalida la invitación, causando cuelgue a jugadores invitados.
Puedo intentar adaptar el juego a esta limitación, pero decididamente lo que sugiero es más cómodo, y más acorde a como lo hace un juego online serio.

Marth

Vale, por ahora, tras cada partida, aparecerá un mensaje indicando al hospedador que envíe al invitado una nueva invitación si quieren echar otro online.
Eso soluciona el problema de que al reiniciar el juego el invitado ve su invitación invalidada.

85 Visitantes, 0 Usuarios