Closed PauloHartwig closed 6 years ago
Conforme combinado com o @LordFabricio na discussão de quarta (13/06), fizemos a seguinte estratégia:
PDF: Ações - 1° Robô.pdf
Imagem:
Inicia parado - Primeiro tiro - Fraco
Acertou tiro Fraco - Segundo tiro - Forte - Continua Parado
Errou Tiro Fraco - Mover - Direita Acertou tiro Fraco - Segundo tiro - Forte - Continua Parado
Inicia Tiro Fraco novamente.
Acertando Tiro Fraco - Use o Tiro Forte Enquanto Acertar
Errou Tiro Forte - Move - Esquerda
Volta tiro Fraco
Bem pelo menos ninguém pode dizer que nos não desenhamos.
É essa a ideia, o robô fica parado sempre a não ser que ele erre o tiro ou receba dano.
Primeira versão do robô 1! (Atualização rápida) Obteve bons resultados com os robôs mais simples como o fire, mas contra Walls, Tracker e SpinBot não teve bons números. Positivos: Bom contra robôs que não se movem muito. Bom contra robôs que ficam em movimento em loop. Negativos: Péssimo contra robôs que se movimentam constantemente. Solução: Melhorar a precisão/ângulo do disparo. (Se alguém souber alguma maneira para isso, prever movimento do inimigo, calcular velocidade etc)
package Robos; import robocode.*;
public class Robo1 extends Robot { boolean tiro_ac = false; boolean tiro_missed = false; public void run() {
while(true) {
if (tiro_missed == true) {
turnLeft(80);
ahead(40);
tiro_missed = false;
}
turnGunRight(360);
}
}
public void onScannedRobot(ScannedRobotEvent e) {
if (tiro_ac == true) {
fire(3);
tiro_ac = false;
} else
fire(1);
}
public void onHitByBullet(HitByBulletEvent e) {
back(40);
turnLeft(80);
ahead(40);
}
public void onHitWall(HitWallEvent e) {
back(40);
turnLeft(80);
ahead(40);
}
public void onBulletHit(BulletHitEvent event) {
tiro_ac = true;
}
public void onBulletMissed(BulletMissedEvent event) {
tiro_missed = true;
}
}
Adicionei esse robô ao projeto e já atualizei. Quando tu for baixar do git e abrir no NetBeans, tem que adicionar a biblioteca do Robocode ao projeto. Tem um tutorial ensinando a fazer isso na aba Wiki que o @LordFabricio fez.
Ótimo, vou fazer isso hoje
Em sex, 15 de jun de 2018 09:52, Paulo H. Hartwig Jr. < notifications@github.com> escreveu:
Adicionei esse robô ao projeto e já atualizei. Quando tu for baixar do git e abrir no NetBeans, tem que adicionar a biblioteca do Robocode ao projeto. Tem um tutorial ensinando a fazer isso na aba Wiki que o @LordFabricio https://github.com/LordFabricio fez.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/LordFabricio/RoboCode/issues/9#issuecomment-397610932, or mute the thread https://github.com/notifications/unsubscribe-auth/AmaVmZ9mGI_e0ui_Jm0bgN_tBKFxM_UPks5t864QgaJpZM4Umjhc .
Blz!!! Eduardo.
https://github.com/LordFabricio/RoboCode/invitations
Aceita o convite pro projeto do github Vou ficar meio de molho esse fim de semana to com um projeto do Ângelo muito tenso pra fazer. Mesmo assim quero analisa o código que tu fez neste domingo, e se possível junto com o paulo gerar a estrategia do robo 2, ou implementa algo neste que tu já inicio.
Em 15 de junho de 2018 10:37, eduardoxRib notifications@github.com escreveu:
Ótimo, vou fazer isso hoje
Em sex, 15 de jun de 2018 09:52, Paulo H. Hartwig Jr. < notifications@github.com> escreveu:
Adicionei esse robô ao projeto e já atualizei. Quando tu for baixar do git e abrir no NetBeans, tem que adicionar a biblioteca do Robocode ao projeto. Tem um tutorial ensinando a fazer isso na aba Wiki que o @LordFabricio https://github.com/LordFabricio fez.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/LordFabricio/RoboCode/issues/ 9#issuecomment-397610932, or mute the thread https://github.com/notifications/unsubscribe- auth/AmaVmZ9mGI_e0ui_Jm0bgN_tBKFxM_UPks5t864QgaJpZM4Umjhc
.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/LordFabricio/RoboCode/issues/9#issuecomment-397622546, or mute the thread https://github.com/notifications/unsubscribe-auth/AbTgojZcYnwkCGPfXhHSoyXZrnWGPrglks5t87iTgaJpZM4Umjhc .
Tudo bem, amanhã quero melhorar a precisão do robo1 então provavelmente ainda haverá modificações. O que quero fazer é girar o radar e só depois colocar o canhão em direção ao inimigo, atualmente está dando voltas em loop extremamente desnecessárias e perdendo tempo nisso. Ok, qualquer coisa só chamar
Modifiquei o Robo1! Fiz algumas alterações nas táticas e deu uma melhora significativa, em uma simulação 1x1 contra o SpinBot ganho 7 de 10 (enquanto antes ganhava 1 no máximo). Algumas táticas foram modificadas, ele não fica se movendo se leva um tiro. Só se move se bater na parede. Se errar mais que 2 tiros ele se direciona ao inimigo e chega mais perto em 30 pixels de distância, se a distância for menor ou igual a 30, ele atira em potência máxima! Só precisamos modificar a estratégia no PDF para depois não dar problemas, deixei o código quase todo comentado mas ainda vou melhorar nesse quesito. Qualquer coisa só chamar, abraço!
Vou ajustar a estratégia e anexá-la aqui quando terminar. Vou criar uma pasta no projeto chamada Documentacao e adicionar os documentos pra eles não ficarem só nas issues e a gente tem que estar catando eles se formos apresentar. Ai se quiser enviar alguma coisa com o push vai ter que dar um pull primeiro pra atualizar.
Estou reajustando umas coisas pra buscar a máxima taxa de vitórias mas tentando manter a estratégia proposta, já vou mandar os ajustes gerais
2018-06-19 13:50 GMT-03:00 Paulo H. Hartwig Jr. notifications@github.com:
Vou ajustar a estratégia e anexá-la quando terminar.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/LordFabricio/RoboCode/issues/9#issuecomment-398468493, or mute the thread https://github.com/notifications/unsubscribe-auth/AmaVmYK6h8zeDEo2G0H6vlT4ZaLyrWBCks5t-SvOgaJpZM4Umjhc .
Mandando o código inteiro explicado: (Não consigo colocar no git agora, assim que chegar em casa, atualizo)
Em 19 de junho de 2018 15:30, Eduardo Rib eduardoxrib@gmail.com escreveu:
Estou reajustando umas coisas pra buscar a máxima taxa de vitórias mas tentando manter a estratégia proposta, já vou mandar os ajustes gerais
2018-06-19 13:50 GMT-03:00 Paulo H. Hartwig Jr. notifications@github.com :
Vou ajustar a estratégia e anexá-la quando terminar.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/LordFabricio/RoboCode/issues/9#issuecomment-398468493, or mute the thread https://github.com/notifications/unsubscribe-auth/AmaVmYK6h8zeDEo2G0H6vlT4ZaLyrWBCks5t-SvOgaJpZM4Umjhc .
A estratégia do 1° robô pode ser encontrada na Wiki do projeto.
A ideia desta issue, é que os engenheiros (3° semestre) elaborassem uma estratégia para o nosso primeiro robô a ser desenvolvido.
Este 1° robô iria ser desenvolvido em conjunto pelos dois programadores (1° semestre) da equipe começando na aula do Angelo dia 14/06.
E futuramente criaremos outras duas issues neste modelo para definir as estratégias dos outros dois robôs que faltam. Mas estes outros dois, cada programador irá fazer separado, para fechar três robôs por equipe.
Atividades:
Se alguém do 1° tiver qualquer dúvida sobre a estratégia coloquem um comentário ai que a gente tenta ajudar.