Proyecto propio · En desarrollo

Rosmino

Una plataforma de dominó online, competitiva y multiplataforma, construida desde cero. No es un encargo — es nuestra, y así es como va.

5
plataformas: Android, iOS, Windows, macOS y Web
12/21
fases completadas
C#/.NET
motor propio, mismo binario en cliente y servidor
Sin anunciar
fecha de lanzamiento

Qué es Rosmino

Rosmino es una plataforma de dominó pensada para sentirse como un deporte electrónico, no como un juego casual: partidas 1 contra 1 y por parejas, ranking competitivo, ligas con ascensos y descensos, torneos de eliminación directa y campeonatos oficiales con Hall of Fame, además de partidas contra una IA con dificultades desde principiante hasta gran maestro. Un único proyecto compila para Android, iPhone/iPad, Windows, macOS y navegador web.

¿Qué conlleva construir un motor así desde cero?

Aquí «el motor» no es la parte confidencial del trabajo en el juego de otro estudio — es literalmente lo que estamos construyendo, pieza a pieza, y podemos contarlo con detalle porque es nuestro. El núcleo es una librería de reglas en C# puro, sin ninguna dependencia de motor gráfico ni de red, que se compila igual para tres sitios distintos: el cliente (para predicción y animación local), el servidor de partidas (la única fuente de verdad) y, más adelante, un simulador que jugará millones de partidas automáticas para encontrar fallos de equilibrio antes que un jugador real. El estado de una partida nunca se modifica directamente: se reconstruye aplicando, en orden, una secuencia de eventos inmutables — así una partida completa es, literalmente, reproducible desde su historial, lo mismo que hace falta para repeticiones, auditorías y resolver reclamaciones. El cliente puede predecir el movimiento localmente para que se sienta instantáneo, pero nunca decide el resultado: eso lo valida siempre el servidor, contra el mismo conjunto de reglas — así ninguna versión modificada del cliente puede hacer trampa en nada que le importe a la partida.

Las reglas del dominó en sí — número de fichas, condiciones de cierre, puntuación, modalidad 1 contra 1 o por parejas — están detrás de una interfaz de «conjunto de reglas» configurable, así que añadir una variante nueva es añadir una clase, no reescribir el motor. Por encima de eso, el servidor habla con cada cliente por WebSocket con mensajes versionados desde el primer día, precisamente para poder evolucionar el protocolo más adelante sin romper una versión antigua de la app que alguien todavía tenga instalada.

Cómo va, fase a fase

El proyecto avanza en 21 fases planificadas, y a día de hoy 12 están cerradas — no en el sentido de «funciona en una demo», sino verificado jugando partidas reales de principio a fin en cada una. El motor de reglas tiene una suite de más de 90 tests automáticos con cerca del 100% de cobertura. El cliente compila y corre en las cinco plataformas. Existe un servidor de partidas autoritativo real hablando por WebSocket, con reconexión real. El emparejamiento automático funciona sobre una cola real, ampliando el rango de nivel aceptable cuanto más tiempo lleva alguien esperando. Las cuentas son reales, con inicio de sesión real. El ranking se calcula con un sistema tipo Elo real tras cada partida. Las ligas tienen ascenso, descenso y protección real. Los torneos generan su cuadro de eliminación directa real, ronda a ronda, sin intervención manual. Y los campeonatos —fases fijas de cuartos, semifinal y final, con clasificación por ranking y un Hall of Fame real— cierran el sistema competitivo.

La fase más reciente añadió una IA de verdad competitiva: siete niveles de dificultad, de principiante a gran maestro, con inferencia real de qué fichas puede tener cada rival y búsqueda de la mejor jugada — nunca jugadas al azar. En partidas simuladas, un gran maestro le ganó 17 de 20 a un principiante, y un nivel intermedio le ganó 48 de 60 — un gradiente de fuerza real, no un simple «falla más a propósito». Esa misma IA sustituye automáticamente a cualquier jugador humano que se desconecte a mitad de partida, hasta que vuelve.

Queda por delante: sistema social, espectadores y repeticiones, endurecer el sistema anti-trampas, el panel de administración, el arte final del juego —de momento no hay ni una sola imagen definitiva, así que no vas a ver capturas de pantalla en esta página todavía— y, por último, optimización, pruebas de carga reales y lanzamiento multiplataforma. Nada de esto lleva fecha anunciada.

Lo que ya es real

Motor de reglas propio, con más de 90 tests automáticos y cerca del 100% de cobertura
Cliente real en 5 plataformas: Android, iOS, Windows, macOS y Web
Servidor de partidas autoritativo en tiempo real, con reconexión real
Emparejamiento automático y cuentas reales
Ranking tipo Elo, ligas con ascenso/descenso, torneos y campeonatos — todo real, verificado jugando partidas completas de principio a fin
Inteligencia artificial real con siete niveles de dificultad —de principiante a gran maestro— que además sustituye automáticamente a cualquier jugador que se desconecte a mitad de partida
Es uno de los pocos proyectos propios de los que contamos este nivel de detalle — el resto siguen, por ahora, estrictamente secretos.
← Volver a Gabriel Díaz Bernal