martes, 09 de febrero de 2010
Ayúdanos a crecer, haz NeoTeo tu página de inicio RegistrarseIniciar sesión

CoreWar: Un juego de programación de batalla

Por: Tomás García  @  jueves, 14 de mayo de 2009  Nota vista 3785 veces

Cuando la computación estaba en pañales, Silas Warner creó un juego llamado RobotWar, este luego inspiró CoreWar, un juego donde programadores desarrollan aplicaciones llamadas “guerreros”, cuyo objetivo es eliminar al resto de los programas. Luego de 25 años de existencia y muchos torneos, la base de seguidores sigue creciendo y aquí te contamos un poco de qué va este juego (y sus versiones alternativas).

¿te interesa?
18 -1
19 votos

Durante los años 70, Silas Warner (programador, por aquel entonces, de MUSE Softwaree y uno de los mayores colaboradores del sistema PLATO) creó un juego llamado RobotWar. El concepto era programar un robot que pueda ganarle al resto sin ninguna intervención del usuario. Este juego se volvió tan popular que, para 1982 ya existían torneos anuales donde varios programadores podían competir entre ellos. Tal como RobotWar, CoreWar es una variante en donde los jugadores deben programar una aplicación (llamada Guerrero) para que pelee contra el resto de los programas por el control de la máquina virtual MARS (Memory Array Redcode Simulator). Estos programas están escritos utilizando el lenguaje Redcode, muy similar al lenguaje ensamblador.

Partida de CoreWar corriendo bajo el simulador pMARS.

A lo largo de los años (están cerca de cumplir su aniversario número 25) se han experimentado con muchas técnicas y estrategias para ganar. Las más conocidas son: sobrescribir memoria ciegamente, buscar al oponente y generar nuevos procesos. Estas técnicas son conocidas como piedra, papel y tijera, ya que, no importa qué, una siempre le gana a la otra.

Lo más interesante de CoreWar es que cada programador hace su “guerrero” lo mejor que puede y una vez que comienza la batalla no pueden hacer otra cosa más que mirar la pantalla y rezar por que no lo destruyan por completo. El hecho de que las peleas generalmente tienen más de dos programas batallando lo hace aún más emocionante.

Una partida de CoreLife.

Como dijimos, el éxito de CoreWar fue tan grande que también tuvo sus propias variaciones. Una de las más populares es CoreLife que, a diferencia de CoreWar, tiene un elemento aleatorio en la batalla, por ende, el resultado nunca puede ser determinado por las condiciones originales. Más allá de esa diferencia, CoreLife es muy similar al juego original.

Sin dudas este no es un juego para cualquiera, es más, para muchos seguramente no es un juego sino una pantallita con lucecitas. Pero quienes se dan maña con este tipo de lenguaje de programación parecen disfrutarlo mucho y es por eso que año a año crece aún más. No creemos que se vuelva un entretenimiento masivo, debido a la naturaleza compleja de la programación, pero sin duda nos gustaría ver más de CoreWar en el futuro.



Artículo Siguiente
3Dconnexion SpacePilot PRO 3D Mouse
Artículo Anterior
Photoshop SpeedUp: Photoshop más rápido
CopyRight
Prohibida su copia total con o sin fines comerciales. Copias parciales deben citar la fuente.

 

URL Trackback para esta noticia:
Votos: 0 de 0
Reyvolsam
Reyvolsam
Reyvolsam
14/05/2009
4:42:39
#1   Orale muy interesante para los que llevamos programacion, el lado divertido y entretenido de la programacion.

Saludos!!
     Responder 
Votos: 3 de 3
RedDragon
RedDragon
RedDragon
14/05/2009
6:16:20
#2   Excelente, seria interesante que hiciera un tutorial con cosas basicas a la hora de programar, asi algunos cuantos podemos aprender, y que mas insentivo para practiar que un juego...creo que seria muy prometedor y educativo para los que queremos comenzar en el mundo de la programacion y no sabemos como...
     Responder 
Votos: 0 de 0
Leopard
Leopard
Leopard
14/05/2009
10:52:07
#3   Solo apto para informaticos experimentados, si no lo eres, echa tu tiempo en aprender primero informatica que te sera mas util y despues juega.
     Responder 
Votos: 0 de 0
masterjedi
masterjedi
masterjedi
14/05/2009
14:55:17
#4   esto es viejisimo.
     Responder 
Votos: 2 de 4
Max Ferzzola
Max Ferzzola
Max Ferzzola
14/05/2009
15:23:54
#1   Sí, como dice en el artículo, es viejísimo. De los años 70. Muy bien 10 por ser un virtuoso en lectura comprensiva y por comentarios tan útiles. XD
     Responder 
Votos: 0 de 0
andres
andres
andres
14/05/2009
16:09:49
#5   Buenisimo, ahora se con que me voy a poder entretenerme cuando termine de enfermar del todo mi cabeza programando.
     Responder 
Votos: 0 de 0
Pepe Veraz
Pepe Veraz
Pepe Veraz
14/05/2009
23:14:59
#6   pues el ensamblador no es cualquier cosa eh, es un lenguaje de bajo nivel por lo cual es mucho mas complejo que los programitas que todos hacemos en C.

saludos.
     Responder 
Votos: 0 de 0
andres
andres
andres
15/05/2009
14:00:13
#1   que vos hagas "programitas" con c, no es culpa de la herramienta sino de quien la usa, que no sepas explotar el potencial que tiene c como lenguaje, no permite que lo menosprecies, o por lo menos investiga un poquito que se ha desarrollado con él.
     Responder 
Votos: 0 de 0
-x-
-x-
-x-
23/05/2009
7:27:22
#7   jajajaja me causo gracia tu comentario "programitas"???? y mas eso de "que todos hacemos" todos es mucho recurso humano no crees?, como dijo el camarada andres no se que tipo de programas hagas tu pero hay cosas que ni siquiera te imaginas que se pueden hacer con C, y en una cosa si tienes razon el lenguaje ensamblador no es cualquier cosa debes tener una mente muy abstraida para comprender y ser un programador nato, ocea que minimo debiste ser aceptado en alguna ingenieria, o estar tocado por dios en el mundo de la programacion, hay gente muuuy buena chicos de 15 años(si no es que menos) que programan para los ejercitos en varios paises del globo, y bueno animo y suerte a los que pretenden iniciar en la programacion el lenguaje ensamblador lo tendrian que abordar como en tercer lugar o quiza segundo despues de aver aprendido otros de mas alto nivel, bueno sadulos, tengo que seguir con algunas redes neuronales en C ¬¬
     Responder 
Votos: 2 de 2
angel
angel
angel
23/06/2009
23:13:04
#8   ola no se como jugar me enseñan
     Responder 
 
 
Datos  Login Registrarse
Usuario
   
Email
Website
 
Nuevo comentario:


Tags HTML permitidos: br
 

Síguenos en TwitterAgréganos a tu RSS

 

Autores