Sobre o projeto

Shatterfish é um projeto de código aberto projetado para estender o Shattered Pixel Dungeon (SPD) com capacidades avançadas de automação e análise, modelado após o motor de xadrez Stockfish. Ele opera como um fork downstream do SPD, mantendo a compatibilidade enquanto adiciona quatro componentes principais: um harness de jogo headless para execuções rápidas e reproduzíveis; um 'cérebro' de IA simbólica que joga usando apenas o estado observável do jogo; um rig de testes estatísticos para avaliar mudanças via comparações SPRT; e um overlay no jogo que permite aos usuários assistir, pausar ou assumir o controle do bot durante a jogabilidade real. O projeto impõe rigorosamente a 'paridade de informações' — o bot só pode usar o que um jogador humano conseguiria ver na tela, como visuais renderizados, logs e entradas de diário. Ele não pode acessar estados ocultos do jogo, como sementes de RNG ou identidades de itens não identificados. Essa restrição de justiça é aplicada através de uma única interface Observer, com testes de vazamento acompanhando cada alteração. Construído com JDK 21, não requer Android SDK ou Xcode. A base de código é organizada sob módulos shatterfish/ (api, harness, codex, brain, rig, overlay), com documentação detalhada incluindo pinning upstream (v3.3.8), instruções de build e metodologia de desenvolvimento (BMAD Method). Todas as contribuições são licenciadas sob GPL-3.0-or-later, correspondendo à licença do SPD. O projeto isenta explicitamente qualquer afiliação com os autores originais do SPD.