Duda Novato

S

Hola, estoy emepzando en el mundillo y me gustaria hacer algo multiplayer, la cuestión es que sigo sin entender una cuestión muy básica de este mundo.

  1. Entiendo que un juego multiplayer tiene que tener una parte servidor y otra cliente. Y que ciertas cosas se ponen en una y en otra. Bien, aqui la duda, me podeis poner un ejemplo de implementación de, por ejemplo, la vida estando en cliente y la vidfa estando en servidor?

  2. Otra duda, que tipo de hosting conoceis o deban tener como requisito para poder alojar el game server ahi? (también he oido que se le llama master server)

Un saludo gracias.

1
PaCoX

La implementación de cliente-servidor dependerá de tu juego. Puede ser que te convenga calcular la vida en cliente, en servidor o en los dos.
El problema de que la vida se calcule en cliente es que este puede falsear la información, por eso se simula la partida en servidor y es el servidor quien simula las colisiones y calcula los cambios de HP.

El master server es el servidor que se encarga de alojar a los jugadores en espera (lobby), emparejarlos y enviarlos los game servers. Tmb puede encargarse de guardar los perfiles de jugador, crear mas game servers, gestionar salas de chat, etc

2 1 respuesta
S

#2 conoces algun libro tutorial que explique el tema del networking en juegos desde 0? He estado viendo alternativas y veo desde unity networking hasta Photon..

1 respuesta
PaCoX

#3 pues yo no he leido ninguno la verdad, pero si buscas hay varios, por ejemplo este:
Fundamentals of Network Game Development
Lo que tienes que saber es la base (sockets) y pensar por ti mismo que datos necesitas enviar y cada cuanto para hacer un juego multiplayer. No es lo mismo hacer un juego por turnos que un juego en tiempo real y no es lo mismo hacer un juego en tiempo real de carreras que un fps.
Luego esta la experiencia de usuario, hay que mitigar la diferencia de latencia entre diversos clientes usando predicciones (interpolacion,extrapolacion)
por ejemplo, aqui puedes ver como lo resuelve valve
https://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking

B

.

1

Usuarios habituales