robocode

Presentado a Robocode

Enviado por clbustos el Dom, 07/08/2005 - 00:38.
Clasificado en:

¿Les ha pasado que escriben más de 2 páginas de artículo, para tirarlo todo a la basura con un click? Me acaba de pasar, así que tendré, para no frustrarme, que hacerla corta.
Robocode es una aplicación hecha en Java, cuyo objetivo es hacer pelear entre sí a robot programadas en el mismo lenguaje (Java, se entiende). Desde su versión 0.1.7 el juego es Open Source y se puede instalar fácilmente descargándolo desde http://robocode.sourceforge.net/download. Para correr el instalador, basta usar el viejo java -jar robocode_setup-0.1.7.jar.
A través del menú Battle->New se pueden generar nuevas batallas. Al instalarse, el juego viene con varios Robots de prueba.

Cada robot es un objeto Java, que poseen la cualidad de avanzar y retroceder, girar en sentido horario y contra-reloj. Sobre ellos poseen un scanner, el cual gatilla un evento, que permite dirigir el tanque y el cañon para disparar sobre los enemigos.
Para crear un robot, es necesario ir al menú Robot->Editor. Si se ocupa el programa por primera vez, el programa busca un compilador de Java ya existente y, en caso contrario, se le ofrece al usuario instalar Jikes (sepa Moya que es eso).
Una vez definido el compilador, se puede crear un nuevo robot con File->New->Robot. Se solicita el nombre del robot y una identificación del creador, que corresponderá al paquete del archivo .java. En este se ofrece el código de un robot muy sencillo que avanza y retrocede 100 "pasos", que dispara apenas encuentra a un enemigo.

El editor es bastante sencillo y fácil de usar. La API de los robots se encuentra en el directorio javadoc dentro del directorio instalado y es bastante sencilla de entender. Para compilar, basta con ir a Compile->Compiler. En este momento, el nuevo robot aparecerá en la lista de robots disponibles para pelear.

Aquí tenemos una foto de mi primer engendro, que pierde siempre :(

Si se quieren reir, lo pueden descargar aquí: clbustos.MiPrimerRobot_1.0.jar

Distribuir contenido