Persistência de Dados Históricos (Atletas, Técnicos e Clubes) com Foco em Otimização e UX do Editor
Objetivo
Apresentar uma proposta de modelagem de domínio e experiência de usuário para a inclusão de dados históricos anteriores ao início do jogo.
1. Modelagem de Domínio e Regras de Negócio
No contexto de um simulador de gerenciamento, o "passado" de uma entidade ajuda a ditar o seu comportamento e valor no presente. Propõe-se a criação de um subdomínio de Registro Histórico desacoplado das regras de simulação ativa, operando sob as seguintes premissas:
-
Imutabilidade Contratual Passada: Os registros anteriores ao "Ano Zero" do save são tratados como objetos de valor estáticos. Eles não possuem vínculos ativos com contratos atuais ou salários passados; servem estritamente como o currículo da entidade.
-
Integridade Referencial de Títulos e Competições: Como a base de dados é 100% editável pela comunidade, as conquistas históricas de clubes, jogadores e técnicos não podem ser tratadas como texto livre (string pura). Um clube ou profissional só pode possuir o título de uma "Copa Nacional" ou "Liga X" se essa respectiva competição tiver sido previamente criada e instanciada no editor. Isso garante que, ao iniciar o jogo, os históricos estejam amarrados a entidades válidas do ecossistema do save, evitando quebras de consistência na interface e permitindo que o usuário clique na competição histórica para ver seus detalhes.
-
Regra de Fallback de Registro: Para evitar que o editor trave a criação de modificações simples, o preenchimento deve ser um comportamento opcional. Se a entidade não possuir registros passados, o domínio herda um estado inicial zerado, disparando o agregador de estatísticas apenas a partir do primeiro jogo oficial do save.
-
Impacto Indireto no Domínio (Opcional): Em termos de lógica de negócio futura, a presença de títulos históricos na carreira de um técnico ou atleta poderia influenciar levemente os atributos ocultos de Reputação e Personalidade, afetando a exigência salarial ou o respeito do elenco, exatamente como ocorre em managers consolidados.
2. Referências de Mercado e UX
Jogos como Football Manager e o clássico Championship Manager utilizam abordagens específicas para exibir essa massa de dados sem poluir a interface:
- Abas de Perfil Dedicadas: O histórico de carreira não concorre com os atributos visuais principais do atleta. Propõe-se uma aba exclusiva ("Histórico" ou "Carreira"), onde o usuário visualiza uma tabela cronológica descendente contendo: Ano | Clube | Jogos | Gols | Assistências | Média (se houver).
- O Padrão Palmarés para Clubes: Na tela de perfil do clube, o histórico se traduz na galeria de troféus. Exibir a contagem de títulos passados (ex: "3x Campeão da Premier League") confere peso ao peso da camisa, mudando a percepção de UX do jogador ao assumir um gigante adormecido ou um time de menor expressão.
3. Abordagem Modular para o Desenvolvimento
Para mitigar o receio de complexidade no desenvolvimento inicial, a funcionalidade pode ser fatiada em marcos de entrega no backlog:
-
Fase 1 (Histórico Numérico Agregado): O nível mais simples. O editor permite apenas preencher os totais gerais da carreira da entidade (ex: "Fulano: 250 jogos, 80 gols na carreira"). A UX exibe apenas o consolidado no topo do perfil do atleta.
-
Fase 2 (Histórico Cronológico por Temporada): Evolução para a tabela ano a ano detalhada por clube anterior.
-
Fase 3 (Histórico de Títulos / Palmarés): Implementação da galeria de conquistas passadas de clubes e treinadores.
Protótipo de exemplo: