Programación en Lenguaje Ensamblador

-El Verdadero Lenguaje de las Máquinas-

Minijuego: No todo es programación

–Comenzando a crear historia y personajes–

El mejor consejo que me ha dado alguien de la industria (sin comillas) sobre que hacer para entrar en el negocio de los videojuegos es el siguiente: ¡Haz juegos!. Y para poner en práctica ese consejo voy a informar lo que llevo de mi humilde minijuego.

Aunque ya acabé la segunda parte no he documentado nada ni mucho menos he escrito entradas describiendo todos los puntos del mapa anterior. De momento no hay mucho que mostrar a nivel visual mas que una pantalla negra que desliza cuadros de colores de un lado a otro de la pantalla conforme se oprimen los mandos. Ya está implementado el código que manipula los sprites (que no he dibujado) y sus animaciones, el scroll y el control, así como la capacidad de hacer sonar música (que no he compuesto) y sonidos (que no he grabado). El tema de los menús es otro asunto porque es una misma rutina para todo y dependiendo de lo que se cargue en la estructura de datos puede usarse para muchos tipos de interacción dentro del programa. En fin, el punto es que aunque ya he avanzado bastante por el lado de la programación todavía no tengo nada que se pueda “ver” y es aquí, antes de comenzar formalmente con la tercera fase del desarrollo que quiero ver realmente que es lo que voy a hacer.

Al parecer llevo poco mas de 4 meses contando los dias sin actividad programando este juego. Ahora voy a entrar a la etapa por la que la mayoría de la gente que quiere hacer juegos empieza (y que normalmente ahí se queda) que es el diseño del universo del juego. De momento solo tengo unas cuantas miles de lineas de ensamblador capaces de hacer un personaje capaz de correr, saltar, disparar diferentes tipos de armas de fuego y moverse tanto sobre tierra firme como por fluidos (aire y agua). Los mundos son formados por bloques con diferentes propiedades, algunos pueden detener la marcha del personaje mientras otros le permiten pasar, unos lo sostienen y otros no y existe un sistema de menús muy general que puede ser usado para cualquier situación en la que al jugador se le presenten una determinada cantidad de opciones. El problema es que no he definido nada que sea usado por todas esas lineas de código, ahora lo que sigue es comenzar a hacer la parte creativa del videojuego.

A decir verdad, lo que viene es aquello que los gamers que nunca han programado creen que es hacer un juego. La parte de la creación de una historia con personajes, villanos, armas y mundos. La idea que tenía originalmente era sobre un grupo de astronautas que quedaban atrapados en un planeta al que habían ido a hacer investigaciones. Un planeta capaz de sustentar la vida humana y que cuenta con sus propias formas de vida. El personaje principal sería el héroe galáctico genérico que carga un arma de rayos y equipo que sus compañeros menos intrépidos puedan fabricar. Al principio el objetivo iba a ser sobrevivir y conseguir los recursos para reconstruir su nave para poder escapar pero conforme se adentran en ese planeta desconocido se dan cuenta que ellos no son ni la única ni la mas inteligente de las formas de vida que pretende tomar control del mismo.

Decidí ambientar el juego en el espacio porque como no se dibujar con el suficiente realismo (de hecho no se dibujar) nadie me va a cuestionar si un alienígena deforme está bien hecho, es mas sencillo dibujar máquinas y trajes espaciales que rostros humanos y ropa de aspecto realista. Dibujar un buen rayo no requiere de física complicada o animaciones muy elaboradas como las armas clásicas de los juegos de tiros.

Por cierto, para hacer todo el grafismo no voy a usar el software que usan los verdaderos grafistas primero porque no tengo para pagar las licencias y segundo porque la mayoría de las herramientas libres no las se usar ni tengo la paciencia para aprender a usarlas a un nivel aceptable. En lugar de eso estoy usando un editor de contenidos, que en realidad no son mas que un montón de rutinas de dibujo que resultan casi imposibles de manejar hasta para mi que fui quien las escribió. No tengo el propósito ni la necesidad de crear una herramienta avanzada de dibujo al menos por ahora. Y hablando de dibujos, es increible lo que un programador de videojuegos de la actualidad puede aprender de las técnicas de animación usadas en la década de los 80. De hecho quiero probar una para hacer animaciones rápidas y de muy buena calidad y que necesita solo una cámara de teléfono celular, un software del nivel del MSPaint y algunos artículos baratos de la papelería de la esquina. Pero bueno, ya me estoy adelantando demasiado, luego ya ven lo que pasa si uno intenta ir mas allá de sus propias capacidades.

Ya para despedirme porque voy a estar bastante ocupado en lo que queda del mes de mayo quiero disculparme con mis seguidores tanto en twitter como en el blog porque ahora si me pasé de mi límite de insultos a “la industria”, ojo que no me disculpo con nadie de los insultados, esos por mi pueden irse todos a reclamarle a la mamá del CEO donde trabajan los siete meses de salario que no les han pagado. La disculpa va para los que buscando información sobre ensamblador se llevan una decepción al no encontrar otra cosa que mis nefastos desfiguros. Otro día con mas calma les hablaré de como los papanatas de “la industria” recurren al ad hominem cuando no pueden ocultar las malas ventas que han tenido sus juegos y sobre como el simpático personaje animado conocido como Shit Pickle creado por el mas famoso Angry Video Game Nerd le acaba de surgir un pariente mexicano (hint: es otra fruta de aspecto fálico pero con el mismo peinado). Y aunque este engendro no tiene que ver directamente con el AVGN, tengan por seguro que se relaciona directamente con los juegos malos. Demonios, ya estoy insultando de nuevo. Ahora mejor me pongo a programar o si no yo también voy a acabar trabajando detras de un mostrador en una tienda de videojuegos.

Anuncios

mayo 12, 2011 - Posted by | Uncategorized | , ,

2 comentarios »

  1. Buenas, hace unos dias encontre tu blog y no me pude despegar de el xD, es realmente interezante, ya desde hace mucho timepo habia intentado llenar los huecos que dejaron mis profesores enseñando al zombi x86 jaja espero que siga a flote el proyecto que es muy interezante( a pesar de que no soy muy bueno con idea, tengo ecaza iaginacion para inventar cosas :P)

    Comentario por JavierJV | mayo 15, 2011 | Responder

  2. Muy interesante tu blog, recien ayer lo comenze ha leer, pero desde el principio.. espero poder avanzar 2 años de blog en poco tiempo.. jeje, quiero aprender assembly y hay muy poca informacion sobre este lenguaje, he encontrado muchas paginas pero ninguna me ha servido tanto como esta y eso q recien ley las primeras entradas, excelente y sigue adelante

    Comentario por Carlos | mayo 16, 2011 | Responder


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: