Domínio
Uma equipa mantém premido o botão do dispositivo durante uns segundos para o capturar e pontua a cada intervalo enquanto o tiver. A outra equipa pode roubá-lo a qualquer momento.
Pré-alfa · software da fase 2 pronto, fase 3 começou · ainda não pronta para o campo
A Atalaia é uma plataforma aberta para os dispositivos eletrónicos de jogo (os props) de airsoft, paintball e milsim: as caixas que as equipas capturam, as bombas que armam e desarmam. Monta uma caixa de domínio com um microcontrolador de 20 € (uma pequena placa de computador, barata), transforma um telemóvel Android antigo num terminal de hacking, organiza um milsim de fim de semana com 20 caixas numa rede mesh LoRa (rádio de longo alcance e baixo consumo, em que as caixas passam as mensagens umas às outras de um lado ao outro do campo) e escreve os teus próprios modos de jogo em pequenos scripts. Tudo corre no próprio campo: não precisa de nuvem nem de internet, e não te prende a nenhum fabricante.
Atalaia: torre de vigia no alto de um monte, de onde se via o perigo a chegar e se passava o aviso. Porquê este nome?
Para jogar não é preciso perceber nada de eletrónica. É assim que um jogo vai correr quando as caixas estiverem construídas (fases 1 e 2); o simulador já hoje joga os mesmos modos num computador.
A organização espalha as caixas pelo campo e escolhe um modo de jogo, como o Domínio, no teclado de uma caixa ou num telemóvel, em menos de um minuto.
Para tomar uma caixa, a equipa mantém premido o botão da sua cor durante uns segundos. A caixa acende-se com essa cor e pontua para a equipa até a outra a roubar.
Cada caixa avisa por rádio o controlador de campo, um pequeno computador na base; as caixas mais afastadas passam a mensagem pelas que estão no meio. Uma caixa que perca a ligação continua a jogar e põe-se em dia mais tarde.
O controlador faz as contas. A organização acompanha o jogo ao vivo no telemóvel, e o campo pode mostrar o marcador num ecrã grande ou numa transmissão em direto.
Os dispositivos eletrónicos dão outra vida a um jogo, mas os sistemas comerciais guardam as regras num firmware fechado. Os modos novos ficam à espera do fabricante, não há API pública e não dá para juntar hardware próprio. A Atalaia faz diferente.
Todos os jogos correm no próprio campo, totalmente offline, numa casa ou numa mata com vários quilómetros. A internet é opcional.
Placas ESP32 baratas, computadores Raspberry Pi do tamanho de um cartão de crédito, placas simples tipo Arduino e telemóveis Android, novos ou reaproveitados, entram todos no mesmo jogo.
Os modos de jogo são pequenos scripts Lua, ficheiros de texto com as regras, mais um ficheiro de definições. Muda-os ou partilha-os sem voltar a gravar o software que vem dentro das caixas.
Os dispositivos falam entre si pelo Skirmesh-RF, um protocolo de rádio documentado, por isso qualquer pessoa pode construir um aparelho que entre no jogo. O controlador de campo disponibiliza APIs MQTT, REST e WebSocket para marcadores, transmissões em direto e outras ferramentas.
Funções de jogador, squads, cenários personalizados e um registo de cronografagem que guarda as medições de cada réplica para verificações aleatórias estão previstos de raiz.
Campos que cobram entrada e makers que vendem caixas são bem-vindos. Quem distribuir ou alojar uma versão alterada tem de partilhar as alterações.
Em poucas palavras: os dispositivos no campo falam por rádio com o controlador de campo, um pequeno computador na base que corre o jogo e guarda a pontuação. Os telemóveis ligam-se a ele por Wi-Fi, e os marcadores, as transmissões em direto e as apps de mapas, como o ATAK, pela sua API. Um servidor do clube, opcional e na internet, guarda as contas e o histórico. O controlador, a sua API e a consola da organização já estão feitos e testados num computador, ainda não no campo; o servidor do clube chega numa fase posterior.
Por dentro, todos os aparelhos que correm modos de jogo usam o mesmo núcleo partilhado, escrito em C11, e os mesmos modos em Lua; só muda uma camada fina para cada tipo de hardware. Um modo escrito uma vez joga-se da mesma maneira numa caixa, num telemóvel ou num Raspberry Pi.
Os dispositivos falam por LoRa, um rádio de longo alcance e baixo consumo, no protocolo próprio da Atalaia, o Skirmesh-RF. Dois diagramas mostram o que o LoRa consegue e não consegue fazer num campo, e como um só protocolo corre em aparelhos muito diferentes. Nada disto passou ainda por um campo a sério.
Os modos reagem à intenção («uma equipa está a capturar este dispositivo») e não ao hardware, por isso o mesmo script corre numa Field Box, numa caixa com teclado ou num telemóvel Android. Há sete modos, um modificador e as Ligaduras já escritos e testados em software; ainda nenhum correu num campo a sério.
Uma equipa mantém premido o botão do dispositivo durante uns segundos para o capturar e pontua a cada intervalo enquanto o tiver. A outra equipa pode roubá-lo a qualquer momento.
Os atacantes armam a bomba e depois defendem-na; os defensores têm de a desarmar antes do fim da contagem. Arma-se e desarma-se a manter um botão premido, ou com um código de teclado para cada equipa.
Cada participante leva uma etiqueta NFC assinada. Uma equipa lê numa estação as etiquetas que recolheu: a de alguém da equipa adversária confirma a baixa, a de alguém da própria equipa nega-a. Etiquetas falsificadas são recusadas.
Oito capturas do firmware real da Field Box (ESP32, LVGL 9.2, ecrã de 320 × 240) a correr no emulador Wokwi. A interface da caixa está em inglês. Ainda não foi testado em hardware físico.
O manual de montagem tem o esquema de ligações completo e o guia da primeira gravação do firmware, para a Heltec WiFi LoRa 32 V4.
A app desenha os mesmos ecrãs dos modos, a partir dos mesmos ficheiros YAML. Estas são as imagens dos testes da app, não fotografias de um telemóvel: ainda nada correu num telemóvel a sério.
Ainda não há firmware para gravar, mas o núcleo partilhado já corre num computador. O simulador joga um modo no browser: mantém premidos os botões das equipas, vê o ecrã de cada dispositivo e acompanha o registo de eventos. Os comandos abaixo escrevem-se num terminal.
cmake -S core -B build -DATALAIA_SHARED=ON
cmake --build build
cd simulator
python -m atalaia_sim serve ../modes/bomb
cd simulator
python ../tools/docker_sim.py serve ../modes/bomb
Depois abre http://localhost:8000. Precisas de Python 3.10 ou mais recente, com PyYAML. O guia do simulador (em inglês) explica todas as opções.
Seis fases. Cada uma acaba com um teste a sério no campo antes de a seguinte começar.
Núcleo partilhado, sandbox Lua, codec Skirmesh-RF e simulador no browser. Prova superada.
Firmware da Field Box a correr num emulador e manual de montagem; à espera das primeiras caixas.
Skirmesh-RF sobre LoRa, controlador de campo, API, consola da organização e um pacote de modos, testados em software; à espera das placas de rádio.
Dispositivos Android, módulo de E/S, app para quem joga e os modos que precisam dos telemóveis; muito já feito em software.
Servidor do clube, cenários personalizados, modos avançados, ATAK.
Editor visual de modos, registo de modos, placa de suporte (PCB), traduções, guias de montagem.
O roadmap completo, com o que cada fase inclui e a sua prova →
É aqui que se vão encontrar campos, equipas e quem constrói o seu próprio material. Tudo é opcional: o espaço guarda só o que cada um decide publicar, e os dados de jogo ficam nos servidores de cada campo.
Perguntas, ideias, comentários à especificação e relatos de eventos. Ir para as Discussions
Fotografias, listas de material, ficheiros dos invólucros e esquemas de ligações de cada montagem, a começar pelos primeiros protótipos da Field Box.
Uma lista, só para quem se quiser inscrever, dos campos e equipas que usam a Atalaia, com a região, o tipo de espaço e um contacto.
O registo de modos, com descrições, modos para descarregar e avaliações da comunidade.
Totais anónimos de versões, plataformas e modos jogados, só para quem aderir. Desligadas por omissão.
Para clubes sem apoio informático, a preço de custo, com os dados de cada clube separados e exportáveis.
A Atalaia é feita por jogadores, donos de campos e makers. Já hoje podes ajudar:
Cada commit leva uma linha Signed-off-by, e o projeto é rigorosamente clean room, feito de raiz: nenhum código, firmware, manual, som ou imagem de qualquer produto comercial.
Uma atalaia é uma torre de vigia: um posto de observação no alto de um monte ou à beira-mar, de onde se vigiava o horizonte e se passava o aviso. A palavra chegou ao português vinda do árabe aṭ-ṭalāʾiʿ, «os batedores», e ainda hoje se diz que alguém está de atalaia quando está atento ao que aí vem. Há atalaias espalhadas pela costa e pelo interior do país, e várias terras com o nome.
Um controlador de campo vê todos os dispositivos em jogo e avisa a organização mal alguma coisa muda. As atalaias também não dependiam de ninguém: trabalhavam com o que tinham à vista. E foram a primeira rede mesh de pouca largura de banda: fumo de dia, fogo à noite, passados de torre em torre. O Skirmesh-RF segue as mesmas regras, com LoRa.
Os dispositivos da Atalaia são equipamento de jogo, e devem parecê-lo: cores vivas, etiquetas bem visíveis a dizer «EQUIPAMENTO DE JOGO» ou «GAME PROP», e nada que se pareça com um engenho explosivo verdadeiro. Transporta-os em malas identificadas, nunca os deixes sem vigilância fora do campo e trata as baterias de lítio com cuidado.