O evento
Programação e regras
Como a tarde está organizada, o que acontece em cada bloco e, o mais importante para a sua estratégia, exatamente como os pontos são contados.
Quando e onde
| Evento | Experience ESEG - Engenharias 2026 |
| Desafio | Batalha de Robôs |
| Data | [DATA DO EVENTO] |
| Local | [LOCAL / SALA] |
| Equipes | [Nº DE EQUIPES] equipes, [ALUNOS POR EQUIPE] por equipe |
| Partidas valendo | 5 |
A tarde, bloco a bloco
-
14h15
Abertura, ferramentas e mão na massa
Apresentação do desafio e do PyRobocode, uma volta pelo PyCharm e por este site, e a explicação da lógica de um robô. Logo em seguida cada equipe cria o seu arquivo e começa a programar e testar por conta própria.
-
15h45
Coffee break
Pausa. Aproveite para ver o que os outros times fizeram. Copiar uma ideia boa faz parte da engenharia.
-
16h00
Rodada de testes (não vale pontuação)
Todos os robôs entram na arena ao mesmo tempo, só para ver o que acontece. É a hora de descobrir que o seu robô anda em círculo, que ele nunca atira ou que ele é melhor do que você imaginava. Nada aqui conta para o resultado final. Depois da rodada, a arena continua aberta para quem quiser testar enquanto ajusta o código.
-
17h00
O duelo
A competição valendo: 5 partidas seguidas com o código que você entregou. Vence quem somar mais pontos no total das partidas.
O robô que entra no duelo é o que estiver salvo no arquivo quando o duelo começar. Salve o arquivo, e teste uma última vez antes das 17h00. Um robô que dá erro derruba a arena e atrapalha todo mundo, inclusive você.
Como a pontuação funciona
Depois de cada partida, o jogo coloca os robôs em ordem de eliminação: quem morreu primeiro fica em último, quem sobrou fica em primeiro. Os pontos são distribuídos pela ordem de sobrevivência.
Se há N robôs na arena, o sobrevivente leva N - 1 pontos, o penúltimo a morrer leva N - 2, e assim por diante, até o primeiro a morrer, que leva zero.
Exemplo com 6 robôs numa partida
| Colocação na partida | Situação | Pontos |
|---|---|---|
| 1º | sobreviveu até o fim | 5 |
| 2º | último a ser eliminado | 4 |
| 3º | penúltimo a ser eliminado | 3 |
| 4º | eliminado na metade da partida | 2 |
| 5º | segundo a ser eliminado | 1 |
| 6º | primeiro a ser eliminado | 0 |
Isso se repete nas 5 partidas e os pontos são somados. O ranking final aparece numa tabela na tela ao fim do duelo.
Eliminar adversários não dá ponto. O número de eliminações é contado e aparece na tabela, mas só serve para desempatar. O que dá ponto é ficar vivo. Um robô que foge bem, desvia e atira só quando tem chance real de acertar costuma pontuar mais do que um robô agressivo que se expõe.
Critérios de desempate
Se dois robôs terminarem com o mesmo número de pontos, o jogo compara, nesta ordem:
- total de pontos (maior ganha);
- quantidade de 1º lugares;
- quantidade de 2º lugares;
- quantidade de 3º lugares;
- total de eliminações (maior ganha);
- total de penalidades por inatividade (aqui é ao contrário: quem tem menos ganha);
- ordem alfabética do nome do robô.
A arena não deixa robô parado. Um robô que fica tempo demais sem fazer nada (sem andar, sem girar, sem atirar) começa a perder vida sozinho, e essas penalidades entram no desempate contra ele. Não existe a estratégia de "ficar quietinho no canto esperando os outros se matarem". Mantenha o seu robô sempre fazendo alguma coisa, nem que seja girar o radar.
O que aparece na tabela final
| Coluna | O que significa |
|---|---|
| Rank | Colocação final no torneio |
| Name | O nome do seu robô (o nome da classe no código) |
| 1st / 2nd / 3rd | Em quantas partidas ficou em 1º, 2º e 3º lugar |
| Points | Soma dos pontos de todas as partidas |
| Kills | Quantos adversários eliminou (só desempata) |
| Idle penalties | Quantas vezes foi punido por ficar parado |
Regras de convivência
- Um robô por equipe, num único arquivo.
- O robô tem que jogar sozinho: nada de alguém digitando comando durante a partida.
- Vale copiar código deste site, adaptar os exemplos e se inspirar em outras equipes.
- Não vale mexer no arquivo de outra equipe nem no código do jogo.
- Se o seu robô der erro e fechar a arena, a partida é reiniciada, então teste antes.