Projeto próprio · Em desenvolvimento

Rosmino

Uma plataforma de dominó online, competitiva e multiplataforma, construída do zero. Não é uma encomenda — é nossa, e é assim que está indo.

5
plataformas: Android, iOS, Windows, macOS e Web
12/21
fases concluídas
C#/.NET
motor próprio, mesmo binário no cliente e no servidor
Não anunciada
data de lançamento

O que é o Rosmino

Rosmino é uma plataforma de dominó pensada para parecer um esporte eletrônico, não um jogo casual: partidas 1 contra 1 e em duplas, ranking competitivo, ligas com acesso e rebaixamento, torneios de eliminação direta e campeonatos oficiais com Hall of Fame, além de partidas contra uma IA com dificuldades de iniciante a grande mestre. Um único projeto compila para Android, iPhone/iPad, Windows, macOS e navegador web.

O que envolve construir um motor assim do zero?

Aqui "o motor" não é a parte confidencial do trabalho no jogo de outro estúdio — é literalmente o que estamos construindo, peça por peça, e podemos contar em detalhes porque é nosso. O núcleo é uma biblioteca de regras em C# puro, sem nenhuma dependência de motor gráfico nem de rede, compilada da mesma forma para três lugares diferentes: o cliente (para predição e animação local), o servidor de partidas (a única fonte de verdade) e, mais adiante, um simulador que vai jogar milhões de partidas automáticas para encontrar falhas de equilíbrio antes que um jogador de verdade o faça. O estado de uma partida nunca é modificado diretamente: ele é reconstruído aplicando, em ordem, uma sequência de eventos imutáveis — assim, uma partida completa é literalmente reproduzível a partir do seu histórico, exatamente o que é preciso para replays, auditorias e resolução de reclamações. O cliente pode prever o movimento localmente para parecer instantâneo, mas nunca decide o resultado: isso é sempre validado pelo servidor, contra o mesmo conjunto de regras — assim nenhuma versão modificada do cliente consegue trapacear em nada que realmente importe para a partida.

As regras do dominó em si — número de peças, condições de fechamento, pontuação, modalidade 1 contra 1 ou em duplas — ficam atrás de uma interface de "conjunto de regras" configurável, então adicionar uma variante nova é adicionar uma classe, não reescrever o motor. Além disso, o servidor conversa com cada cliente por WebSocket com mensagens versionadas desde o primeiro dia, justamente para poder evoluir o protocolo depois sem quebrar uma versão antiga do app que alguém ainda tenha instalada.

Como está indo, fase a fase

O projeto avança em 21 fases planejadas, e hoje 12 já estão fechadas — não no sentido de "funciona numa demo", mas verificado jogando partidas reais do início ao fim em cada uma delas. O motor de regras tem uma suíte de mais de 90 testes automatizados com cobertura próxima de 100%. O cliente compila e roda nas cinco plataformas. Existe um servidor de partidas autoritativo real conversando por WebSocket, com reconexão real. O emparelhamento automático funciona sobre uma fila real, ampliando a faixa de nível aceitável quanto mais tempo alguém espera. As contas são reais, com login real. O ranking é calculado com um sistema tipo Elo real após cada partida. As ligas têm acesso, rebaixamento e proteção reais. Os torneios geram seu chaveamento de eliminação direta de verdade, rodada a rodada, sem intervenção manual. E os campeonatos — fases fixas de quartas, semifinal e final, com classificação por ranking e um Hall of Fame real — fecham o sistema competitivo.

A fase mais recente adicionou uma IA de verdade competitiva: sete níveis de dificuldade, de iniciante a grande mestre, com inferência real de quais peças cada adversário pode ter e busca real pela melhor jogada — nunca jogadas aleatórias. Em partidas simuladas, um grande mestre venceu um iniciante 17 de 20 vezes, e um nível intermediário venceu um iniciante 48 de 60 — um gradiente real de força, não apenas "erra mais de propósito". Essa mesma IA assume automaticamente o controle de qualquer jogador humano que se desconecte no meio da partida, até que ele volte.

Ainda falta: sistema social, espectadores e replays, reforçar o sistema anti-trapaça, o painel de administração, a arte final do jogo — por enquanto não existe uma única imagem definitiva, então você ainda não vai ver capturas de tela nesta página — e, por fim, otimização, testes de carga reais e lançamento multiplataforma. Nada disso tem data anunciada.

O que já é real

Motor de regras próprio, com mais de 90 testes automatizados e cobertura próxima de 100%
Cliente real em 5 plataformas: Android, iOS, Windows, macOS e Web
Servidor de partidas autoritativo real em tempo real, com reconexão real
Emparelhamento automático e contas reais
Ranking tipo Elo, ligas com acesso/rebaixamento, torneios e campeonatos — tudo real, verificado jogando partidas completas do início ao fim
IA real com sete níveis de dificuldade —de iniciante a grande mestre— que também assume automaticamente o controle de qualquer jogador que se desconecte no meio da partida
É um dos poucos projetos próprios sobre os quais contamos esse nível de detalhe — os demais seguem, por enquanto, estritamente secretos.
← Voltar para Gabriel Díaz Bernal