Libros sobre desarrollo de videojuegos

Una recopilación de libros sobre Diseño y Desarrollo de videojuegos. Guión, Arte, Programación, Marketing... Tanto libros gratuitos en PDF como libros comerciales desde Amazon.

Sección de Documentales y Vídeos

Documentales, Making Offs, Reportajes, Conferencias y Entrevistas. Todo ello relacionado con los Videojuegos y o el desarrollo de los mismos. Enfocados principalmente al mundo Indie.

Cursos para crear Videojuegos

Aprende a crear Videojuegos con cursos de Diseño, de Dibujo, de Modelado y Animación, y de programación con diferentes motores y lenguajes. Ya no tienes excusa, ¡Crea!

ARTÍCULO - Historia y evolución de los lenguajes de programación

No os asustéis, la palabra Historia puede sonar fuerte y a veces provoca somnolencia en quienes la escuchan. Tomen esto más bien como un “cuento” que trata de hurgar un poco en el pasado del ser humano, cuando crearon las máquinas y debieron aprender a comunicarse con ellas.
Para nada este artículo trata de ser algo estrictamente científico, nada más lejos de la realidad. Trataremos de enfocarlo como un acercamiento del público general al mundo de la informática, sin necesidad de tener ningún tipo de conocimiento previo.

"El lenguaje nos sirve para comunicarnos. Por desgracia algunas personas tienen un lenguaje bastante físico"










Artículo por: Asensio López Fernández



    Un lenguaje es un método de comunicación que nos permite comunicarnos con los demás. Si hablamos con un Inglés deberemos hacerlo en lenguaje inglés, si hablamos con un Japonés le hablaremos en lenguaje Japonés… pero, ¿y si lo que queremos es hablar con una máquina? Pues en ese caso debemos de hacerlo en un lenguaje que ella pueda entender: un lenguaje de programación.
En realidad estoy mintiendo un poco. Las máquinas solo entienden un lenguaje, el llamado lenguaje máquina, que no es otra cosa que: electricidad o no electricidad, apagado o encendido, unos o ceros. Entonces ¿no entiende los lenguajes de programación?, directamente no, primero han de ser traducidos al lenguaje máquina bien directa o indirectamente, pero vayamos paso a paso.

Origen de los lenguajes de programación:

Si las máquinas nacieron como una idea del hombre para automatizar trabajos rutinarios y repetitivos, la programación nació como un método eficaz de comunicación con dichas máquinas a modo de instrucciones.

La  primera computadora como tal, fue la “máquina analítica” inventada por Charles Babbage allá por el año 1823 y que continuó depurando hasta su muerte en 1872, por lo que se le considera “el padre de la computación”, aunque el artilugio nunca fue totalmente terminado. Se trataba de una máquina capaz de calcular tablas matemáticas, eliminando así los posibles errores humanos debidos a la fatiga o el aburrimiento que producía dicha tarea.
"Hola, soy Charles Babbage"


"Máquina analítica de Babbage















Pero fue Ada Lovelace, hija del poeta inglés Lord Byron, la primera persona que ejecutó un algoritmo para la “máquina analítica” y describió por primera vez un lenguaje de programación de carácter general interpretando las ideas de Babbage, además de solventar ciertos errores de su proyecto. Es por ello por lo que se la conoce como la primer programadora de la historia. Incluso el Ejército de los Estados Unidos llamó a uno de sus lenguajes de programación ADA, en homenaje a esta extraordinaria mujer.
"Esta máquina puede hacer cualquier cosa que sepamos cómo ordenarle que ejecute..."

Tipos de lenguajes:

-El lenguaje Máquina

El lenguaje máquina fue el primer lenguaje de programación, y es el único lenguaje que entiende una computadora. Está compuesto únicamente por unos (1) y ceros (0), es por ello que también se le conoce como lenguaje binario. Con estos dos dígitos (conocidos como bits), forma lo que se conoce como cadenas binarias, con las instrucciones que damos al microprocesador. Ejemplo de cadenas binarias:

110011001000
001001010101
111000111000

Este lenguaje es fácil de entender por una computadora, pero como podréis ver es difícilmente entendible por un humano. Es por ello que con el fin de facilitar el trabajo a los programadores se creó un tipo de lenguaje que sustituía las secuencias de unos y ceros  por palabras o letras provenientes del inglés, facilitando de este modo la lectura, escritura y posterior ejecución de los programas. A los primeros lenguajes de este tipo se les denominó lenguajes de bajo nivel.
Eso sí, una vez que se termina de escribir un programa, es necesario compilarlo o intepretarlo, es decir, volver a traducirlo al lenguaje máquina para que el ordenador lo entienda, ya que como bien he dicho al principio es el único lenguaje que entiende una computadora.

 - Lenguajes de bajo nivel

Los lenguajes de bajo nivel de abstracción, son los que están más cercanos a la forma de trabajar de un microprocesador, por lo que son fácilmente trasladados a lenguaje máquina.

El lenguaje ensamblador (Assembly) fue el primer lenguaje de programación que trató de “sustituir” el lenguaje máquina por uno mucho más parecido al de las personas. Lo que hace es sustituir las secuencias de código máquina por letras o palabras, por lo que en realidad escribir en lenguaje ensamblador es básicamente lo mismo que hacerlo en lenguaje máquina, pero las letras y palabras son más fáciles de recordar y entender que la secuencias de números binarios. Por ejemplo, para sumar se usa la letra A, de la palabra inglesa add (sumar).

La palabra bajo, no implica que el lenguaje sea inferior a uno de alto nivel, se refiere a la reducida abstracción (abstracción = grado de cercanía) entre el lenguaje y el hardware.
Actualmente se suele usar, entre otras cosas, para programar drivers. Entre sus ventajas se encuentran: mayor adaptación al equipo y mejor velocidad con un mínimo uso de memoria. Y entre sus desventajas: Mayor dificultad de comprensión e imposibilidad de escribir código independiente de la máquina.

Con el tiempo se hizo necesario simplificar aún más la tarea de los programadores, ya que la complejidad de las tareas que realizaban las computadoras iba en aumento. Así que se crearon los lenguajes de alto nivel, que entre otras cosas necesitan menos instrucciones que un ensamblador para realizar una misma tarea.

Si como hemos dicho antes, los lenguajes de bajo nivel son los más próximos a la arquitectura de hardware, los lenguajes de alto nivel son todo lo contrario: los más cercanos a los programadores.

 - Lenguajes de alto nivel

Un lenguaje de alto nivel es aquel que se aproxima más al lenguaje humano que al lenguaje binario, o lenguaje máquina. Utiliza palabras y expresiones del lenguaje humano (en inglés), por lo que al ser más fácilmente compresible por los programadores aumenta la sencillez y rapidez a la hora de crear programas, a la par que reduce las posibilidades de equivocarse.

En C# se usan palabras como: if, convert, write, etc… Ejemplo:

If (numero1 > numero2)  
 {   
 Console.Write (“gana el primero”);  
 }
Esto significa que, si el número 1 es mayor que el número 2, se va a escribir “gana el primero” en una ventana de consola.

La principal característica de un lenguaje de alto nivel es su independencia de un hardware determinado, por lo que un programa escrito en este tipo de lenguaje puede ser utilizado en distintas computadoras. Cierto es también, que la computadora debe disponer de un intérprete o compilador, que es el encargado de traducir dicho programa al lenguaje específico de cada máquina, ya que, como dije al principio,  las computadoras solo entienden el lenguaje binario o lenguaje máquina.


Cada nueva evolución en los lenguajes de programación ha traído consigo una simplificación de los mismos, por lo que, en muchos casos, varias instrucciones en lenguaje máquina pueden ser simplificadas en una sola instrucción en lenguaje de bajo nivel, y varias instrucciones en lenguaje de bajo nivel pueden ser  simplificadas en una sola instrucción en lenguaje de alto nivel.
En la actualidad existen gran diversidad de lenguajes de alto nivel (C, C++, C#, BASIC, PASCAL, JAVA, entre muchos otros)

Tipos de programación:

El tiempo hizo que los lenguajes de programación tuviesen que irse adaptando a las circunstancias cambiantes. El usuario final requería cada vez programas más potentes a la par que intuitivos y fáciles de manejar, y paradójicamente los programas sencillos de utilizar son los más difíciles de programar. A esto se sumó el nacimiento de la red de redes y la creación de nuevos dispositivos a parte de las computadoras.

Podemos dividir los lenguajes de alto nivel en tres tipos de acuerdo a su evolución y tipo de programación:
De programación de procesamiento, de programación estructurada y de programación orientada a objetos.

- Programación de procesamiento

La programación de procesamiento o programación lineal es aquella en que las instrucciones se ejecutan en el mismo orden en que han sido escritas. Se basa en una serie de procedimientos que se ejecutan uno tras otro y que actúan sobre los datos. A estos procedimientos también se les llama, funciones o métodos.

El principal problema de este tipo de programación queda en evidencia a la hora de realizar programas complejos, ya que ofrece poca flexibilidad.  Es especialmente complicado mantener una gran cantidad de líneas de código con superposición de funciones y se hace en extremo confuso para el programador..

- Programación estructurada

Con el tiempo los programas comenzaron a ser más complejos y ambiciosos por lo que la evolución lógica era la llamada programación estructurada. Básicamente en este tipo de programación lo que se hace es dividir el trabajo en partes, llamadas módulos o componentes.Esta forma de programación entiende un programa como un conjunto de tareas. Cada tarea compleja es dividida en módulos, y cada módulo complejo es subdividido en componentes. De este modo cada tarea es fácilmente entendible y puede ser mejor documentada internamente. Los módulos o componentes son ejecutados a medida que son requeridos, de este modo tenemos un diseño compuesto por módulos independientes que pueden comunicarse entre sí.

Pero este tipo de lenguaje se centra en los procedimientos (también se le llama programación procedimental), y crecía la necesidad de pensar en los datos, en lo que se puede hacer con ellos. Además se vio que  había funciones iguales que se copiaban una y otra vez en los módulos y se pensó que se podrían reciclar dichas funciones para distintas situaciones. Fue así como nació la programación orientada a objetos.

- Programación orientada a objetos

La programación orientada a objetos (POO) combina las mejores ideas de la programación estructurada con conceptos nuevos y potentes que nos hacen ver las tareas de programación desde un nuevo punto de vista: el de los objetos. Debo hacer hincapié en que no se trata de un lenguaje de programación en sí, sino de una forma de plantearse la programación, soportado por muchos lenguajes actualmente.

Se trata de una forma de programar mucho más cercana a como expresamos las cosas en la vida real; descompone los problemas en conjuntos de datos con estructura propia, que llamamos objetos. Su idea principal es llevar al mundo del condigo lo mismo que encontramos en el mundo real. Y en nuestro mundo, cuando miramos alrededor, ¿qué nos encontramos? La respuesta es sencilla: cosas, objetos.

Para entender la programación orientada a objetos debemos entender que es un objeto. En el mundo real, un objeto es cualquier cosa que vemos a nuestro alrededor, un lápiz, una televisión, un coche, etc… Podemos distinguir un objeto de otro porque son de una clase diferente, o incluso diferenciar objetos de una misma clase, como pueden ser dos coches de modelos distintos.
Un objeto puede estar compuesto por diferentes componentes, por ejemplo un coche está compuesto por: motor, radiador, frenos, ruedas, etc... Todo en conjunto forma parte del objeto coche. Internamente cada componente puede ser muy complicado y haber sido construido por distintas empresas, pero a nosotros nos basta con saber cuál es su funcionamiento y como se relaciona con los otros componentes.
Y lo mismo pasa en la programación orientada a objetos, todo el programa está construido en base a diferentes objetos, compuestos por diferentes componentes. Cada uno tiene un rol específico en el programa y todos pueden comunicarse entre sí de formas predefinidas.Me resta decir que todos los lenguajes compatibles con programación orientada o objetos deben cumplir con estos tres requisitos: Herencia, encapsulación, y polimorfismo; hay quién añade también la abstracción, pero ésta en realidad forma parte de la encapsulación.

Permítanme que no entre más en detalles sobre programación orientada a objetos en este tema, ya que redactaré otro artículo íntegramente dedicado a explicar todos los pormenores de esta forma de programar.

Intérpretes y compiladores

 Como ya dijimos anteriormente, un lenguaje de alto nivel no puede ser entendido directamente por una máquina, sino que debe ser traducido a su lenguaje, el lenguaje binario o lenguaje máquina, para que la computadora pueda entenderlo y ejecutarlo. Existen dos tipos de “traductores”: los Intérpretes y Compiladores.

Intérpretes:

El intérprete realiza la traducción del programa fuente (programa escrito en lenguaje de alto nivel) al lenguaje máquina directamente,  ejecutando dicha traducción al momento de ejecutar cada una de las instrucciones. Normalmente no guarda el resultado de dicha traducción. De este modo, el programa fuente siempre conserva su forma original, con la desventaja de que cada vez que es ejecutado debe ser traducido nuevamente. Este proceso puede hacer más lenta la ejecución del programa, por lo que los intérpretes suelen ser menos usados que los compiladores.Podríamos comparar la labor de un intérprete con la que realiza un traductor humano, que va traduciendo lo que escucha  a otro idioma en tiempo real, pero sin escribirlo ni dejar registro alguno.
"Terminator dispone de un programa interprete que traduce lo que le dice John Connor al lenguaje máquina"
Llamamos lenguaje interpretado a todo aquel que está diseñado para ser ejecutado por medio de un intérprete.Algunos de los más famosos pueden ser: PHP, ActionScript, LUA o JavaScript.

Compilador:

El compilador a diferencia del intérprete, no ejecuta el programa directamente, haciendo la traducción en tiempo real, sino que, tras analizar el programa fuente lo traduce a otro lenguaje equivalente, creando lo que llamamos un programa objeto. Para remarcarlo aún más, diré que un programa objeto es la traducción de un programa en lenguaje de alto nivel a un programa en lenguaje máquina, lenguaje que la máquina puede interpretar y ejecutar.
Una vez compilado el programa, el resultado en forma de programa objeto no puede ser directamente ejecutado. Debemos usar un programa conocido como enlazador  o linker, que combina todos los módulos del archivo objeto para formar un archivo ejecutable (un .exe por ejemplo), que ya sí que se considera un programa en sí mismo y no necesita hacer referencia al código fuente original.
Volviendo al símil del traductor humano, podríamos decir que lo que hace un compilador sería equivalente a la labor que haría un humano al coger un libro y traducirlo a otro idioma dejándolo por escrito para la posteridad.
Principales ventajas y desventajas de cada método:

- El compilador presenta la ventaja considerable de la velocidad de ejecución al no tener que traducir el programa fuente cada vez que es ejecutado.
- Usando un intérprete el programa se puede mover de una plataforma a otra más fácilmente, produciendo resultados iguales en (Windows, Linux, Mac, PS3, etc…)
- Se requiere un compilador para cada lenguaje de programación.
- En la actualizad, uno de los entornos más comunes de uso de los intérpretes es Internet, debido a la posibilidad que estos tienen de ejecutarse independientemente de la plataforma. . 

Eso es todo, espero no haberos aburrido con tanta teoría. En el siguiente artículo de programación indagaremos más profundamente en los lenguajes de alto nivel con programación orientada a objetos.

ARTÍCULO - El origen de las máquinas computadoras

Las máquinas existen desde que el hombre es hombre. Nos complementan como extensiones de nuestros propios cuerpos y nos permiten ir más allá de nuestros límites. Por ejemplo: una tenaza es una prolongación de nuestra mano que nos permite coger cosas con mucha más fuerza, una cerbatana es una extensión de nuestra boca y nos permite lanzar dardos a gran velocidad y abatir a un animal, un telescopio es una extensión de nuestro ojo, etc.…
Este tipo de máquinas que acabo de mencionar son las denominadas herramientas, que necesitan de una acción por parte del ser humano para funcionar.

"Las computadoras son una extensión de la mente del ser humano"









Artículo por: Asensio López Fernández 

    Nuestro cerebro al igual que nuestro cuerpo tiene límites, y de ahí nació la necesidad de hacer algo que nos permitiese calcular e incluso recordar. Haremos un pequeño paseo a través del tiempo parándonos tan solo en los hitos más importantes.

Al principio de los tiempos, con las primeras transacciones comerciales, el hombre tuvo la necesidad de calcular cantidades importantes de mercancía o del medio de pago utilizado. Para ello comenzaron usando el método más primitivo que se nos pueda pasar por la cabeza, hacían los cálculos a base de hacer montoncitos de piedras. Pero este método era complicado para mantener los datos y para transportarlos, fue por ello por lo que exprimieron sus primitivos cerebros e inventaron el ábaco. 
"Ábaco"
El ábaco se remonta a las civilizaciones Griega y Romana; consta de un marco rectangular en el que se montan diversas varillas. Dichas varillas contenían pequeñas piedras circulares agujereadas y ensartadas previamente. Las posiciones de las piedras representaban los valores almacenados. Sin embargo este elemento no puede ser considerado una computadora, ya que no dispone de su elemento fundamental: un programa.
Y para que veáis que no voy a ser demasiado pesado, vamos a saltar desde la época greco-romana directamente en vuelo Charter hasta la década de 1640, cuando el señor Blas Pascal inventó la Pascalina. 

Blas Pascal era hijo de un importante recaudador de impuestos en Francia. Debía ayudar a su padre con las cuentas continuamente en vez de estar por ahí de fiesta con sus colegas, así que Blas decidió crear una máquina de calcular que le ayudase a automatizar el trabajo y a asegurar la fiabilidad de los datos. Inspirado en el diseño de un sistema de engranajes diseñado siglos antes por Leonardo Da Vinci, el amigo Blas Pascal creó su máquina calculadora: la Pascalina. 
Los datos en la Pascalina se representaban mediante las posiciones en los engranajes, y se introducían manualmente estableciendo dichas posiciones finales de las ruedas, parecido a como leemos los números en el cuentakilómetros de un vehículo actual. 
"La pascalina"
Tras la Pascalina, muchos científicos se esmeraron en construir sus propias máquinas de calcular, pero como no son tan famosos y no hay ningún lenguaje de programación que lleve su apellido, nos teletransportaremos en el tiempo hasta el siglo diecinueve, cuando Charles Babbage, el llamado “padre de la computación”, creó la primera computadora.
"Charles Babbage"
Charles Babbage fue un profesor matemático de la Universidad de Cambridge. Consciente de que la elaboración de las tablas matemáticas era un proceso tedioso y propenso a errores, decidió crear la que sería la primera computadora de la historia: la máquina analítica. 

Allá por 1823 y con apoyo del gobierno británico se embarcó en la elaboración de un dispositivo mecánico capaz de efectuar sumas repetidas llamado la máquina de diferencias. 
Pero llegó a sus oídos que un fabricante de tejidos francés, apellidado Jacquard, había creado un telar que podría reproducir automáticamente patrones de tejidos leyendo información codificada en patrones de agujeros perforados en tarjetas de papel rígido. Fue entonces cuando decidió abandonar  la máquina de diferencias y dedicarse al proyecto de  la máquina analítica que se podría programar con tarjetas perforadas para efectuar cualquier cálculo con una precisión de veinte dígitos.
La tecnología de la época no estaba preparada para hacer realidad sus ideas. El mundo no estaría listo hasta cien años después, sin embargo el amigo Babage continuó perfeccionando su diseño hasta el día de su muerte en 1972.

Fue Ada Lovelace, hija del poeta inglés Lord Byron, la primera persona que ejecutó un algoritmo para la “máquina analítica” y describió por primera vez un lenguaje de programación de carácter general interpretando las ideas de Babbage. Aunque esto lo veremos en otro artículo dedicado a la historia de los lenguajes de programación.

En tiempos de guerra, la tecnología marca la diferencia


Es una verdadera pena ser conscientes de que cuando más se esfuerza el ser humano es cuando lucha contra si mismo.
Ya entrada la segunda guerra mundial, debido a la necesidad de obtener rápidamente los cálculos de las trayectorias de los proyectiles de artillería, se crearon máquinas calculadoras automáticas de las que cabe destacar la IBM ASCC, también conocida como Harvard Mark 1. Un verdadero monstruo de 17 metros de largo por 2 y medio de alto. Esta máquina no está considerada como computadora electrónica debido a que no era de propósito general y su funcionamiento estaba basado en dispositivos electromecánicos llamados relevadores.
"La Harvard Mark 1"
Ya en 1947 se construyo, en la universidad de Pennsylvania la ENIAC, que fue la primera computadora electrónica. Tenía la capacidad de realizar cinco mil operaciones aritméticas en un segundo.
El proyecto, patrocinado por el departamento de Defensa de los Estados Unidos, culminó dos años después, cuando se integró a ese equipo el ingeniero y matemático húngaro John von Neuman. Las ideas de von Neumann resultaron fundamentales para su posterior desarrollo.
" Hola soy Von Newman y me tapo la calva con el flequillo"
El equipo de la ENIAC con Von Neuman a la cabeza diseñaron la EDVAC. La idea fundamental de von Neumann fue permitir que en la memoria coexistan datos con instrucciones, para que entonces la computadora pueda ser programada en un lenguaje, y no por medio de alambres que eléctricamente interconectaban varias secciones de control, como en la ENIAC.
En realidad EDVAC fue la primera verdadera computadora electrónica digital de la historia, tal como se le concibe en estos tiempos y a partir de ella se empezaron a fabricar arquitecturas más complejas.

John Von Newman redactó una serie de reglas hoy conocidas como "el modelo Von Newman" para la creación de computadoras, que sigue siendo válido hasta nuestros días. De acuerdo con el, una característica importante de este modelo es que tanto los datos como los programas, se almacenan en la memoria antes de ser utilizados. Hay quién le considera el padre de la computación moderna junto con Babbage.
La UNIVAC fue la primera computadora producida comercialmente.


La UNIVAC no fue construida para un propósito militar, sino que fue diseñada para la oficina de Censo en 1951, por los ingenieros que crearon la ENIAC. La computadora no era de bolsillo, pesaba mas de siete toneladas y podía ejecutar unos mil cálculos por segundo, además era capaz de procesar los dígitos en serie.

Y llegó el transistor

No me refiero al que tiene papá para escuchar la radio, sino a ese pequeño dispositivo electrónico semiconductor que cumple las funciones de amplificador, oscilador, conmutador o rectificador.
"Esto es un transistor"
Allá por la década de 1950 las válvulas de vacío fueron suplantadas por los transistores, consiguiendo de este modo elementos lógicos mucho más pequeños, así como los espacios entre ellos, por lo que la fabricación de la máquinas resultaba más barata. Pensad que una válvula de vacío podía tener el tamaño de un cartucho de escopeta aproximadamente, mientras un transistor podía equipararse en volumen con una lenteja. Además el consumo de energía de un transistor era considerablemente menor, unos 10 voltios por los 300 de una válvula de vacío. Los transistores son normalmente de silicio, por lo que tienen una vida útil prácticamente ilimitada.
En definitiva el desarrollo de los transistores propició la aparición de máquinas cada día más perfeccionadas.

Circuitos integrados

A finales de la década de 1960 apareció el circuito integrado, que posibilitó la fabricación de varios transistores en un único sustrato de silicio en el que los cables de interconexión iban soldados. El circuito integrado permitió una posterior reducción del precio, el tamaño y los porcentajes de error. 

El microprocesador se convirtió en una realidad a mediados de la década de 1970, con la introducción del circuito de integración a gran escala y, más tarde, con el circuito de integración a mayor escala , con varios miles de transistores interconectados soldados sobre un único sustrato de silicios

El futuro está cerca

Gracias al uso de microcircuitos con inteligencia, en futuras generaciones las computadoras tendrán la capacidad de aprender, asociar, deducir y tomar decisiones para resolver problemas gracias al uso de microcircuitos con inteligencia. Esta será la generación de la inteligencia artificial.

Realidad o ficción?

En la universidad de Surey, Inglaterra, creen que en el futuro la clave será la LUZ. Según su equipo de investigadores, será posible crear un dispositivo óptico de computación que se aproveche de la velocidad de la luz y de su gran capacidad para transportar información... En la película K-Pax el protagonista viajaba a través de los rayos de luz.

Por otra parte, en el instituto de bioquímica Maxplanck, cerca de Munich, han conseguido hacer que el silicio interactúe con tejidos vivos. La tecnología neuroelectrónica abre una via de comunicaciones entre computadoras y células. El primer "neurochip" ha consistido en fusionar y hacer que trabajen juntos un microchip y las neuronas de un caracol... Podría ser esto una avance en la cura de enfermedades neuronales en humanos?

Segundo Concurso GameMaker: Descarga proyectos y Vota

    Desde el instante de publicación de esta entrada, queda abierta la veda para descargar y probar todos los proyectos participantes en el concurso "GameMaker: por amor al arte"; más abajo tenéis una descripción de los mismos y su enlace de descarga desde rapidshare.
Igualmente quedan abiertas al público, a partir de ahora, las votaciones en el post creado para tal efecto en el foro de Stratos-AD. En él se describe de que modo se deben efectuar las votaciones. Muchas gracias por vuestra participación. IR AL POST DE LAS VOTACIONES.

" No lo dudes, descarga los juegos y diviértete un rato con nuestros engendros de pixels, código y un poco de nuestra alma".

Agradezco su continuo apoyo y asesoramiento a las siguientes comunidades:
Stratos-Ad
ComunidadGM
Comunidad GameMaker Pro (Taringa)
Creadorvj
Zarcort Games





A CONTINUACIÓN LOS JUEGOS PARTICIPANTES (descárgalos, juégalos, disfrútalos, Y VOTA)

El comeaceitunas – by Ikonos (calza un 44 aunque tiene los pies del 42) 
Desde tiempos inmemoriales, al alcanzar la madurez, cada vez que hay luna llena se convierten en coco… en hombres-coco. El simpático protagonista deberá coger todos los diamantes para poder escapar del laberinto. 

Sin güevos, las aventuras de Tito- by Toodaim Astudio (Calza un 42) 
El pobre Tito vuelve a sufrir la ira de su esposa, que le arranca los güevos. Buscará sus genitales perdidos por el cementerio y profanará las tumbas de los familiares más queridos de su esposa para vengarse. 

Battle Turtles – by Aitoper (calza un 43)
En un universo paralelo en el que las tortugas y los lagartos tienen el poder de disparar, las tortugas son atacadas y deben intentar defender sus huevos del voraz enemigo. 

Demon’s Maze - by Rathsodic (Calza un 42, Made in Vietnam) 
Demo es un demonio un poco descuidado, no puede salir de s laberinto porque ha perdido las llaves. Con la ayuda de los poderes del fuego, agua, madera y rocas, deberá llegar hasta las llaves y posteriormente hasta la salida, teniendo cuidado con los otros demonios que se pasean por allí y que estarán encantados de destruirle. 

Mazetas - by Valnar  (Calza un 47 de zapatillas, no usa zapatos)
Nuestra graciosa maceta debe sobrevivir sesenta segundos para ganar. Debe ir esquivando o a los pestilentes zombies que están dando vueltas por el nivel e intentan atraparla, ya que si la tocan le irán quitando vida hasta matarla. 

No Troll – Mr. Kayk (No sé lo que calza)
Este bebe se pirra por las monedas, pero debe andarse con ojo porque el laberinto está plagado de Trolls. Y Ya sabéis su lema: No Troll.

Indiana Yo - JJGames (Calza un 43)
Narra las famosas aventuras de Indiana Yo, el valiente aventurero con sombrero. Dispuesto a jugarse el tipo por un puñado de euros, en este laberinto plagado de toros y bolas asesinas.

A continuación un video que he creado con un poco del GamePlay de todos los proyectos:
-----------------------------------------------------------------------------------------------------------
Como en el concurso anterior, han sido muchas horas de arduo trabajo empezando desde el desconocimiento. Unos han tenido más tiempo otros menos, pero todos hemos aportado nuestro pequeña parte de ilusión y hemos tratado de dejar una pequeña parte de nosotros en nuestras creaciones, porque así, sin duda alguna, nos llevamos una mayor parte.

El plazo de la votación estará abierto hasta el viernes próximo el día de reyes a las 13:00. ¡¡VOTAD!!
EDIT: Las votaciones han finalizado, podéis ver el resultado de las mismas en: ESTA ENTRADA


Segundo Concurso GameMaker: Listado de participantes

    Ya tenemos preparada la lista de participantes de este segundo concurso de "Game Maker: Por amor al arte". El día 25 colocaremos los proyectos de cada uno de los concursantes para que los podáis descargar directamente desde la entrada de proyectos y votaciones. Las votaciones las seguiremos realizando por medio del foro de Stratos, así que no olvidéis registraros para poder votar, hacedlo pronto ya que seguramente tardarán unos días en daros acceso.
En cuanto a la votación vamos a hacer unas pequeñas variaciones respecto al concurso anterior, os mantendremos informados. 

"Suerte!, o mejor aún, haced lo que sabéis de la mejor manera posible."




















LISTADO DE PARTICIPANTES 

Toodaim Astudio - Calza un 42 

Mr. Kayk – No calza 

Rathsodic – Calza un 42 (Made in Vietnam) 

Aitoper – Calza un 43 

JJGames – Calza un 43 

Valnar – Calza un 47 (de zapatillas, no usa zapatos) 

Ikonos – Calza un 44 (aunque tiene los pies del 42)

Ver y Descargar los juegos


Segundo Concurso GameMaker: Por amor al arte

En vista de lo bien que nos lo hemos pasado y de lo mucho que hemos aprendido en el primer concurso de GameMaker organizado por este modesto sitio, y en vista del bocadillaco que me voy a comer por haberlo ganado. Hemos decidido crear el segundo concurso, esta vez abierto al público. Todo aquel que quiera participar solo tiene que dejar un comentario en esta entrada con los siguientes datos:
1- Nombre artístico
2- Talla de zapatos
O mandarme un correo con ambos datos a chencholf@hotmail.com














    El videojuego ha de ser de tipo Maze, tipo Laberinto en castellano. Este tipo de juegos se caracteriza principalmente porque los personajes están "encerrados" dentro del nivel. Los hay de varios tipos, en algunos el objetivo simplemente es llegar al final dentro de un límite de tiempo (el clásico laberinto). En otros el objetivo puede ser el mismo pero esquivando o eliminando enemigos, o bien el objetivo puede ser recolectar algún tipo de objetos para poder activar la puerta de salida del nivel.
A continuación hago una lista con los juegos tipo Maze más famosos:

- El maze por excelencia, Pac-Man:

-Supaplex o boulder dash, una especie de Pacman, mucho más elaborado. Me encanta:
Gauntlet, el juego se desarrolla por diferentes mazmorras llenas de enemigos, laberintos y puertas.

Snake, quién no ha engordado alguna vez a esta graciosa serpiente

Bomberman, todo un clásico de Nintendo


Tank: Battle City. Solo con recordarlo se me pone los pelos del culo como escarpias

Estos era algunos más famosos, pero podéis encontrar una interminable lista de juegos tipo Maze: AQUÍ 

Y ahora las Bases del concurso:

1- El plazo de inscripción estará abierto hasta el día 10 de diciembre. Todo aquel que quiera participar solo tiene que dejar un comentario en esta entrada con los siguientes datos: Nombre artístico y Talla de zapatos.
2- El juego ha de ser del tipo Maze. El que a estas alturas de la entrada me diga que no sabe lo que es un juego tipo Maze ya puede estar yéndose a tomar por saco.
3- El juego debe contar tan solo con un nivel, pero podrá tener tantos menús y pantallas de presentación como el desarrollador quiera.
4- En alguna parte del nivel, en algún comentario, en el menú, o donde sea, debe aparecer la frase "por amor al arte".
5- Para los gráficos solo se puede usar Paint o el editor de Game Maker, y los sonidos, si los hay, deberán ser creados con un micrófono, nada de librerías de sonidos.
6. La fecha límite de entrega del proyecto será la noche de nochebuena a las 22:00. Deberá ser enviado a la dirección de correo: chencholf@hotmail.com , acompañado de una descripción del proyecto a modo de sinopsis.
7- El juego ha de ser creado con la versión gratuita de GameMaker, o sea GameMaker 8.1 Lite. Podéis descargarla desde: AQUÍ
8- Las votaciones se abrirán el día de Navidad por la mañana, y se cerrarán con la última campanada de Nochevieja.
 Estamos planteándonos otro método de votaciones, para otorgar puntos a todos los proyectos y en diferentes áreas: gameplay, historia, sonidos, etc... De cualquier modo, seguiremos contando con el foro del portal Stratos-ad para organizarlas.
9- El concurso comienza: YA!!!

Premios:

1- El hecho de aprender, y el prestigio de ganar. Este concurso es: "Por amor al arte".

Me estoy poniendo Burraco!!!



Primer Concurso GameMaker: Resultado

Finalmente la gente de Stratos-ad ha tomado una decisión, han votado, y el resultado es de 5-4 (sumamos uno a "El día de reyes" ya que faltaba JJGames por votar).

Las conclusiones que se extraen de los comentarios del personal son que: El día de reyes tiene un gameplay más original y propone un reto más complicado para los jugadores, además en su historia nos narra un miedo que todos hemos tenido de pequeños, que Papa Noel, ese gordo egoísta, le robe los regalos a nuestros queridos reyes magos.
Mientras, "Tito el cubito" ha conseguido llegar al corazoncito de las gentes con su acabado gráfico y su mecánica de mover cajas y, por qué no decirlo, porque a muchos de nosotros nos ha pasado lo del mando de la tele...

Sin más dilación, Bambino (digo JJGames), me debes un bocadillo y una Coca Cola, ya que...
el ganador es:


I am the champion my frieeeend.... I am the champion.... no me se más....
Espera, que pongo el enlace de Youtube:


CURSO GRATIS - Creación de juegos para Smartphone con GameSalad

En la entrada de "por qué elegir GameMaker" dimos también algunas buenas razones para elegir este estupendo software llamado GameSalad. Quizás se me olvidó comentar una importante, y es que el hecho de haber comenzando siendo un software para Mac e iOS ha significado un avance importante respecto a otros software con relación al tema del acelerómentro de los dispositivos móviles. La versión de GameMaker Studio sigue siendo un poco primitiva en los aspectos más técnicos de los smartphone ya que nació como un proyecto exclusivamente para PC.
GameSalad es capaz de crear aplicaciones para Android, iOS, Mac , Html5 y Windows 8.

"GameSalad nació como un GameMaker para Mac, pero ahora existe una versión de GameSalad para Windows".






Archivos necesarios para el curso:



    Para seguir el siguiente curso, a parte de ver los vídeos que se grabaron en las reuniones presenciales, es necesario disponer del material gráfico y los documentos pdf del mismo. Podéis descargarlos desde:  AQUÍ