marzo, 2011


11
mar 11

Backbeat 3.2 [Script para mIRC]

A finales de la década de 1990 Internet se hizo un hueco en nuestras vidas. El juego en red estaba de moda, los salones recreativos de capa caída y los cibercafés proliferaban como hongos por nuestras ciudades. Fue una época maravillosa en la que todo el mundo quería jugar al Quake, navegar por Internet o conocer gente hablando por el chat. Para charlar online el lugar preferido por la mayoría era el IRC-Hispano y, por lo general, nos conectábamos a los servidores utilizando el mIRC.

El mIRC cambió mi vida, se trataba de un programa capaz de interpretar scripts y gracias a esa característica aprendí a hacer una de las cosas que más me gustan: programar. Recuerdo que empecé sin manual y sin tener mucha idea leyendo códigos que me sonaban a chino y que poco a poco, a medida que pasaban los días, iba entendiendo cada vez mejor. Y así fui aprendiendo.

Por aquél entonces existían una serie de scripts que ya gozaban de cierta fama: 7th Sphere, Orbital, IRcap, El Brujo, Phanatic, Killer Zombie… Muchos de ellos estaban orientados a atacar a la gente con nukes, floods y demás. El IRC no era un sitio tranquilo y los enfrentamientos eran frecuentes por lo que convenía “estar armado”. Al menos hasta que la gente del IRC Hispano decidió ocultar las IPs de los usuarios acabando de un plumazo con la juerga.

En aquél entonces no había tarifas planas de conexión, así que mi ordenador (un flamante Pentium II @ 450 Mghz) se pasaba un montón de tiempo desconectado de la red, por lo que me monté en local un servidor de IRC y comencé a programar mi propio script. El Backbeat 3.2 (para mIRC 5.91) es el resultado de miles de líneas de código, de noches enteras sin dormir y de la evolución de las versiones anteriores (Jim Script, BeatleScript, BravoScript, Backbeat 2 y BaT). Hay que tener en cuenta que en aquél entonces tendría entre 15 y 18 años, y por lo tanto no disponía de ciertos conocimientos teóricos (orientación a objetos, algoritmos, recursividad…) que aprendí más tarde en la carrera y que de haberlos sabido en aquél entonces me hubieran facilitado enormemente la vida.

Descargar

El script incluye el mIRC 5.91 y pesa poco más de un mega.

A continuación describiré las características más destacables del script y los paneles de configuración de los que disponía para adaptar al gusto de cada usuario cada una de sus características.

Continue reading →


5
mar 11

Snake en Java

El Snake es un videojuego clásico que salió a mediados de lá década de 1970 en los salones recreativos, y que más tarde en 1998 sería incluído de serie en los terminales móviles de Nokia. Una versión del título llamada Nibbles, gozó también de gran popularidad en MS-DOS ya que QBasic lo traía como programa de ejemplo.

Dejando a un lado al simplísimo Pong, podemos pensar en el Snake como en uno de los juegos más fáciles de programar. A continuación expongo el código fuente de una simplísima versión del juego que programé en lenguaje Java, aunque admito que quizá no está muy ordenado ya que lo escribí de madrugada.

Continue reading →


5
mar 11

Bicola circular en C++

Una bicola o doble cola es una estructura de datos que permite la inserción y el borrado por ambos extremos, el izquierdo y el derecho.

En una de las prácticas que me propusieron hace tiempo, cuando cursé la asignatura de Estructura de Datos, fue precisamente la implementación de una bicola con la particularidad de que ésta tenía que ser circular y estar implementada sobre un array que, a medida que se introdujesen los valores, se fuese redimensionando solicitando más memoria al sistema para poder almacenarlos.

Así que a continuación dejo el código fuente, por si a algún estudiante le sirve de ayuda y para probar de paso la inserción de código fuente en el blog con el plugin SyntaxHighlighter Plus.

Continue reading →


5
mar 11

Sokoban [versión preliminar]

(Link directo al archivo sokoban.swf, para jugar a pantalla completa o descargar el título.)

El Sokoban (encargado de almacén en japonés) siempre ha sido uno de mis puzzles favoritos. Lo cierto es que tenía ganas de hacer mi propia versión, y cuando el verano pasado aprendí a utilizar Flash, fue en el primer juego en el que pensé para afianzar los conocimientos de programación en ActionScript adquiridos con los (totalmente recomendables) libros:

  • VAN DER SPUY, Rex. Game Design with flash.1a ed. New York: Friendsof, 2009. 586 p. ISBN: 978-1-4302-1821-0
  • SHUPE, Rich; ROSSER, Zevan. Learning ActionScript 3.0 a beginner’s guide.1 ed. Canadá: O’Reilly Media, Inc., 2008. 363 p. ISBN: 978-0-596-52787-7

Si algo me sorprendió de la plataforma de Adobe es la posibilidad de desarrollar de una forma tan rápida y cómoda juegos y aplicaciones. Ya la había tocado hace años, aunque desde un perfil más cercano al de animador que al de programador.

Y con esta versión preliminar del Sokoban me quito en parte una espinita que tengo clavada desde hace tiempo. De todas formas debo admitir que el juego no está finalizado, todavía me queda por implementar las siguientes características principales:

  • Sonido: Actualmente el juego es muy silencioso, diría yo.
  • Paso atrás: No hay nada más frustrante que equivocarte al desplazarte a una casilla y que por culpa de ella, no se pueda solucionar el puzzle. Por ahora el que se equivoque lo pagará caro.
  • Escena final: Si alguien supera todos los niveles se encontrará con un error en lugar de unas felicitaciones.

En cuanto solvente estas dos características y ponga un poco de orden en el código fuente, también lo publicaré en la página para el que quiera utilizarlo de ejemplo. De todas formas el juego es perfectamente “jugable”. Así que estás invitado a echar una partidita. El objetivo es sencillo, hay que cubrir los pentágonos amarillo anaranjados con las cajas y así ordenar el almacén.