Actualmente estoy en el progreso inicial de escribir un juego que eventualmente querré mejorar en la mayoría de los aspectos.
¿Cómo puedo omitir la escritura de código de red y dejarlo implementado con bastante facilidad, es decir, no tener que reescribir todo el juego solo para agregarlo?
¿Qué debo tener en cuenta?
Tengo un patrón de componentes donde separo la física / detección de colisión, la lógica del juego, los tipos de datos y la animación / representación entre sí.
¿Cómo escribo un cliente y un servidor que no tienen ningún código de red implementado pero que pueden probarse localmente?
¿Qué debo hacer en el cliente y qué debo hacer en el servidor? ¿Debo fingir que tengo el código de red terminado y enviar mensajes entre el servidor y el cliente y dar cuenta de los retrasos, etc. aunque no haya ninguno?
Editar: está planeado ser un juego de rol de arriba hacia abajo. El modo multijugador simple donde alojas un servidor para tus amigos es lo que estoy pensando, por lo que hacer trampa no es un gran problema (¿a quién le gustaría jugar con amigos tramposos?). Aún así, me gustaría ir con un enfoque "El servidor siempre tiene la razón".
Edición 2: supongo que estoy buscando algunos indicadores sobre cómo debería ser mi mentalidad. ¿Cómo debo manejar la entrada del teclado, la animación, etc., en lugar de simplemente aplicar cada efecto / cambio al instante? Hmmm, es posible que necesite leer correctamente en la red antes de ir a cualquier parte, después de todo, que era lo que esperaba escapar haciendo un esqueleto de red de algún tipo que pudiera funcionar localmente.