Fishing in Portugal
Pesca · Unity · C#
- Meu papel Programação e design de mecânicas
- Equipe 3 pessoas
- Contexto Game jam de 1 semana
- Engine Unity
- Código GitHub
Jogar agora
Só o mouse: mova para subir e descer o anzol. Pesque o que vale moedas, desvie do que não vale, e não deixe a água-viva encostar na linha.
Não carregou? Abra direto no itch.io.
O jogo
Você está num barco na costa portuguesa. Desce o anzol até a profundidade onde o peixe que você quer costuma nadar, espera ele passar, e puxa.
A isca é a sua vida: são três, e cada erro custa uma. Bota e saco plástico não valem nada e ainda tiram uma. O choco desvia do anzol uma vez quando você chega perto. E a água-viva não pode encostar — nem no anzol, nem na linha.
Quando a isca acaba, dá para comprar mais na loja com as moedas pescadas, e melhorar o barco enquanto está lá. Ficar sem isca não é o fim: o fim é ficar sem isca e sem dinheiro ao mesmo tempo.
O que foi meu
A programação inteira e o desenho das mecânicas. Movimento dos peixes, sistema de sorteio, colisões, economia de moedas, loja, melhorias de barco e a estrutura de dados que descreve cada peixe.
Os outros dois integrantes fizeram a arte e a documentação.
Peixes que existem mesmo
O tema da jam era Portugal. A saída fácil seria pôr uma bandeira em algum canto. Preferi ir pelo conteúdo: todos os peixes do jogo são peixes da costa portuguesa — sardinha, carapau, cavala, corvina, robalo, sargo, dourado, choco.
E não é só o nome. A profundidade em que cada um aparece e o quanto ele vale em moedas foram ancorados no peixe real. A sardinha nada em cardume perto da superfície e vale pouco; o que vale mais está mais fundo. O jogador nunca lê isso em lugar nenhum — ele aprende descendo o anzol e vendo o que passa por ali.
Cada peixe é um arquivo de dados separado, com sprite, velocidade, faixa de profundidade, valor, peso no sorteio e comportamento. Na jam, acrescentar um peixe significava mexer em código. Hoje é criar um arquivo e arrastar para uma lista — e essa mudança é o resultado mais útil da revisão de 2026.
O bug que cobrava e não entregava
Uma semana de jam deixa coisas para trás. A pior delas eu só encontrei ao voltar ao projeto, um ano depois.
O número de iscas do jogador não existia como número: ele estava guardado na cor das três imagens de minhoca na tela. Verde era isca, preto era isca gasta, e contar iscas significava olhar para a interface.
Funcionava na pescaria. Mas ao entrar na loja, aquela cena era destruída e as imagens junto com ela — enquanto o objeto que guardava as iscas sobrevivia, apontando para imagens que já não existiam. Comprar uma isca descontava as moedas, tentava pintar uma imagem morta, e falhava no meio do caminho. O jogador pagava, não recebia nada, e nem mensagem de erro via, porque a linha que mostrava o aviso vinha depois da que quebrava.
A correção não foi um remendo: foi separar as duas coisas. Hoje o número de iscas é um número, e quem mostra iscas na tela se inscreve para ser avisado quando ele muda. A pescaria e a loja usam o mesmo componente, e uma cena que não tenha barra de iscas simplesmente não escuta — em vez de quebrar.
A lição que ficou: se o seu estado mora dentro da interface, ele morre junto com ela.
A água-viva, e a diferença entre mirar e navegar
A arte da água-viva ficou pronta durante a jam e nunca entrou — não deu tempo. Ao voltar ao projeto, ela virou a mecânica que faltava, e por um motivo que só ficou claro depois de implementada.
Todo o resto do jogo acontece no anzol: uma colisão num ponto. A água-viva reage à linha inteira, que é uma área comprida e que muda de tamanho a cada quadro conforme o jogador sobe e desce.
Isso muda o que o jogador faz. Antes, só a profundidade final importava: escolher a altura e esperar. Com a água-viva, o caminho até aquela altura também importa. É a diferença entre mirar e navegar — e não exigiu sistema novo nenhum, só um colisor que já estava na cena sem uso.
Junto veio a resposta visual: ao encostar, a linha pisca em azul e engrossa. Punir sem mostrar por quê ensina o jogador a desconfiar dos próprios olhos. E o pisca é exclusivo da água-viva de propósito — se tudo piscasse, o azul deixaria de significar alguma coisa.