O que é e como usar o tema patati e patata
O tema patati e patata é um boilerplate (template inicial) para desenvolvimento de jogos em Pico-8, criado originalmente para game jems como a Ludum Dare. Ele organiza a estrutura básica do código com uma máquina de estados simples, um loop de jogo funcional e alguns utilitários já prontos, poupando o tempo que seria gasto criando tudo do zero no início de uma competição. O template divide o jogo em três fases principais: um menu inicial, a lógica do jogo em si e uma tela de game over. Dentro do código, você encontra funções separadas para load, update e draw, que seguem o padrão nativo do Pico-8. A ideia é simples: você troca os placeholders por suas próprias máquinas de estados, sprites e lógica, sem precisar reescrever a arquitetura toda vez.
Uma coisa que muita gente não percebe de imediato é que o template não é apenas um esqueleto visual — ele já traz gerenciamento básico de input, um timer para os frames e uma separação limpa entre a camada de apresentação e a de lógica. Isso faz diferença real quando você está correndo contra o tempo numa jam.
Como baixar e começar a usar o tema patati e patata
O repositório original fica no GitHub do criador, mas como o template foi amplamente copiado, você também o encontra em vários forks. A maneira mais direta é buscar por "patati e patata pico-8 template" no GitHub e fazer o download do .zip. Dentro do arquivo, o código principal mora no cartucho .p8 que vem junto. Basta abrir no Pico-8, pressionar CTRL+O para carregar o arquivo, e você já estará rodando o template no emulador. Se quiser usar um fluxo mais organizado, copie o conteúdo do .p8 para seu próprio projeto dentro da pasta do Pico-8, renomeie e comece a editar a partir dali. Eu costumo manter uma cópia limpa do template em uma pasta separada chamada "templates" e duplico ela cada vez que vou entrar numa nova competição.
👉 Clique no botão abaixo para saber mais sobre o assunto!
O processo de setup leva cerca de dois minutos. Você abre o cartucho, vê as três funções principais (load, update, draw), e já sabe onde cada parte do jogo deve entrar. Não tem configuração complicada, dependências externas ou scripts de build. É puro Pico-8 nativo. Um detalhe prático que muitos ignoram: o template usa colisão baseada em AABB (axis-aligned bounding box) de forma genérica, o que significa que você pode reaproveitar a função pronta para praticamente qualquer tipo de entidade — inimigos, projéteis, coletáveis. Só precisa ajustar as dimensões conforme o tamanho dos seus sprites.
Pegadinhas e limitações reais
O maior problema que eu encontrei ao longo dos anos usando esse template é que a máquina de estados dele é extremamente básica. Ela funciona bem para jogos com dois ou três estados no máximo, mas se o seu jogo precisa de mais transições — por exemplo, menu, pause, game over, transição entre fases, cutscene — você acaba refactorando quase tudo de qualquer forma. No meu caso, durante uma Ludum Dare, precisei implementar uma tela de pause com overlay e diferentes comportamentos de input dependendo do estado. A estrutura do template não previa isso de forma limpa, então acabei sobrescrevendo parte do update e criando meu próprio gerenciador de estados por cima. O workaround que funcionou foi isolair a lógica de input num módulo separado e chamar a partir do update principal, mantendo a estrutura original intacta o máximo possível.
Outro ponto: o template não vem com nenhuma otimização de performance. Em Pico-8, isso pode significar problemas sérios se você terminar com muitos sprites na tela. Eu já vi cartuões derivados desse template engasgarem a 30fps em cenas mais movimentadas simplesmente porque ninguém ajustou o loop de renderização. A solução é revisar manualmente quais entidades precisam ser desenhadas a cada frame e aplicar culling quando necessário. A também não suporta som avançado além do básico do Pico-8, então se seu jogo depende de efeitos sonoros mais complexos ou trilha procedural, você vai precisar estender o código por conta própria. Isso não é necessariamente ruim, só é importante saber desde o início para não ter surpresas.
Se o seu objetivo é algo mais ambicioso do que um jogo simples de jam, talvez fazer do zero seja mais eficiente a longo prazo, porque o tempo gasto adaptando o template pode acabar sendo maior do que construir uma estrutura personalizada desde o início. O tema patati e patata brilha mesmo é em competições de 48 a 72 horas onde o foco é velocidade de prototipagem e não escala. O download direto do repositório oficial pode variar com o tempo, então a forma mais confiável é buscar pelo nome exato no GitHub ou verificar o wiki da Ludum Dare, que mantém um link atualizado. Existem várias versões modificadas pela comunidade, mas a original é a mais estável e a que tem menos surpresas desagradáveis.