¿Cómo crear un juego simple para varios jugadores como QuizUp con 2 o más jugadores jugando al mismo tiempo? ¿Cómo hago para que los jugadores puedan jugar desde cualquier dispositivo?

Necesitas un servidor.

No necesitas una aplicación. Un juego simple como QuizUp funcionaría bien desde un sitio web.

Desea tiempo real, por lo que desea usar algo como Socket.IO para comunicarse desde el cliente al servidor.

Probablemente el enfoque más fácil sería usar una pila como Meteor para construir su aplicación. Puede apuntar tanto al cliente como al servidor con la misma base de código, lo que hará que el código sea mucho más fácil de escribir.

Un desarrollador avanzado probablemente usaría un servidor y un cliente especialmente diseñados. Pero un desarrollador avanzado no necesitaría hacer esta pregunta.

Un enfoque realmente simple sería usar Firebase, que ofrece sincronización de datos en tiempo real para clientes web, pero aún así deberías necesitar escribir la lógica del servidor para un juego como ese, lo que creo que un principiante * tendría más dificultades para hacerlo bien.

* He estado haciendo juegos y software por más de 30 años. Para mí, alguien con solo tres años de experiencia en codificación todavía parece un principiante.

Solo puedo hablar de esto en abstracto, como desarrollador de software que no ha creado algo como esto. Como está hablando de compartir información entre diferentes plataformas (PC y dispositivos móviles), creo que está viendo un juego basado en servidor, lo que significa que todos los clientes apuntan a un servidor web y usan llamadas de servicio web para enviar y recibir datos entre ellos. Eso elimina la necesidad de que hablen directamente entre sí y simplifica lo que el servidor debe hacer para pasar datos a varios clientes. Si un jugador hace algo, esa información se envía al servidor, y luego se procesa y se presenta para los otros jugadores. Los clientes vigilarían continuamente estos datos y los usarían a medida que estuvieran disponibles. Aunque puede ser largo para los datos que envía, XML puede satisfacer sus necesidades como un formato de transmisión de datos común.

Uno de los desafíos que podría enfrentar es la escalabilidad. Un servidor puede manejar X jugadores, pero si su juego despega, fácilmente podría abrumar a ese servidor, por lo que necesitaría algún tipo de solución de servidor que pudiera escalar a la demanda. Otra sería la localización: necesitaría que sus clientes manejen varios idiomas si desea una audiencia internacional.

Recordatorio rápido: la compañía que creó QuizUp gastó millones de dólares en su desarrollo, por lo que no espere igualar fácilmente su nivel de sofisticación.

Lo siento, no puedo señalar una arquitectura específica. Esta respuesta de Quora tiene buena información: ¿Qué juegos populares de iOS son en realidad html 5 en lugar de aplicaciones nativas?