Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Temas - Bakudan

#1
Proyectos / BakuLand :: MapEditor en Js
28 de Septiembre de 2010, 03:00:51 AM


Qué nombre mas ridículo, lo sé. No es propiamente un juego, si no una herramienta que estoy haciendo para ayudarme en el desarrollo de mis juegos, aquí va la historia:

Acerca del Proyecto

Estoy desarrollando dos pequeños juegos en Python; la mayoría de los juegos (o al menos los que yo hago) están basados en el teorema de "Juego Basado en Tiles"; cualquiera que haya programado un juego de este tipo en algún motor o lenguaje (Python, Ruby, BlitzMax, C/C++, Java, etcétera), concordará conmigo en que es una lata tener que editar mapas a través de vectores.

Existen varios editores de mapas (que son implementados a los proyectos mediante parsers, con un formato que ellos dictan), la verdad casi ninguno me convenció (o mas bien, soy muy testarudo como para ahorrarme esa parte del trabajo), así que me dispuse a crear uno yo mismo, el plan era programarlo en lenguaje Python usando las bibliotecas de interface Qt (las cuales estoy empezando a testear), pero últimamente estoy muy enganchado en mi laburo de diseño güeb; estaba totalmente ocioso, así que decidí crear el editor de mapas utilizando HTML/CSS y JavaScript, si, un editor de mapas en la Web (aunque la verdad, mis capacidades con JS son bastante penosa; sirve y aprendo mas con esto).

Objetivo

Mi intención es crear un editor de niveles/mapas lo mas parecido al editor de niveles de GameMaker (un toolkit para creación de juegos) que exporte los mapas en un formato sencillo de array (mas otros datos), para posteriormente programar un parser sencillo para Python (PyGame y Cocos2D), y posiblemente para otros lenguajes.

Planes a Alcanzar
Citar

  • Edicion de Mapas por Tiles.
  • Importar Tilesets Personalizados.
  • Personalización de las medidas de los Tiles (por defecto 32x32).
  • Ajuste de la medida del mapa.
  • Sistema de dibujo por capas (3 capas).
  • Herramientas de dibujo básicas (Lápiz y Rectángulo).
  • Capacidad de Exportar e Importar mapas con un formato único.
  • Parser del formato para PyGame y Cocos2D.
  • El resto serán funciones personalizadas para mis juegos.

Información Técnica
Sobre el Desarrollo:
Está siendo programado usando HTML/CSS y JavaScript razo; posiblemente utilice algún framework como jQuery si me resulta necesario. Cuando tenga algo mas sólido, lo voy a liberar bajo alguna licencia libre (como GPL).

Sobre la Compatibilidad:
Evidentemente por ser Web funcionará para todas las plataformas; sobre los navegadores, estoy optimizandolo únicamente para Firefox, Chrome y Opera; Internet Explorer no lo he probado (porque estoy en Linsux).

Estado Actual

Versión 0.1.0
Programé un prototipo MUUUY básico (no esperen mucho); el codigo está 0% optimizado (así que no se cabreen si les anda endiabladamente lento xD). Les dejo una screenshot:



De momento solo permite agarrar elegir un tile del tileset (en la barra lateral) y dibujarlo en el mapa.

Version 0.1.5
Ahora permite agarrar un tileset completo; en la barra lateral este se muestra con un scroll para visualizar todo el tileset (como en rpgmaker); también se ha completado la "Herramienta de Lápiz" (que es la que está por defecto), esto permite dibujar libremente sin soltar el click.

Versión 0.2.2
Me ha llevado un par de quebrones de cabeza, pero ya ha quedado: se implementó el SISTEMA DE CAPAS (esto ya permite hacer mapas de verdad xD), con tres niveles y una capa de visualización completa; también se ha agregado el sistema básico del formato de mapas (el cual queda a total desconocimiento para ustedes por el momento).

El código está bastante sucio (luego lo pasaré a limpio); puede que el sistema esté un poco lento porque abusa de imagenes y transparencias, por el momento RECOMIENDO USAR GOOGLE CHROME (que es el que me ha resultado con mejor rendimiento); esto se arreglará con Internet Explorer 9, Firefox 4 y el próximo Chrome, ya que implementarán Aceleración Gráfica vía hardware.

Una foto:


Uploaded with ImageShack.us

Y aquí les dejo un enlace para que prueben los pequeños avances:
>> Testear BakuLand 0.2.2

Me gustaría que me dieran opiniones, recomendaciones y echaran algunas observaciones para implementar y reparar. Saludos :D.
#2
Principiantes / Desarrollo con Python, ¿qué me conviene?
10 de Enero de 2010, 06:52:13 AM
Buenas, tenía mucho tiempo sin pasarme por acá : ).

Soy un principiante en los "menesteres" del gamedev; empecé usando GameMaker (un toolkit que llegué a dominar bastante bien). Tras aprender los fundamentos de la programación y coger bastante experiencia usando GameMaker, empecé -después de muchos intentos fallidos- un proyecto medianamente serio.

Desafortunadamente para el proyecto, y afortunadamente para mi salud (y la de mi PC), decidí migrar a GNU/Linux... en este punto, tuve que dejar GameMaker atrás. Después de amar Linux, cambié mi postura: estoy en contra de ese criterio de mandar al diablo GNU/Linux solo por representar un sector "minoritario", :/ por pensamientos como ese, GNU/Linux no crece al ritmo que debería.

Llendo al cuento, me dispuse a usar algún game engine multiplafatorma; venía arrastrando ya bastantes experiencias con BlitzMax, me gustó bastantillo, el lenguaje es simple... pero decidí dejarlo, en primera instancia porque no tengo intención de pagar la costosa licencia y en segunda, porque me he dispuesto a usar solo software libre/opensource.

Un tiempo usé Ruby con Gosu, pero lo dejé por el tema del rendimiento.

Después me enamoré de Python. Aquí me nació un problema de elección.

Primeramente, está la librería PyGame (el SDL para Python). PyGame me gustó bastante, el problema es que por mis experiencias con GameMaker, tiendo a ser abusón respecto al apartado gráfico, y me preocupa un poco el hecho de que PyGame no tenga aceleración por hardware (según sé).

Después encontré PyGlet, me agrada bastante, por su base en OpenGL, buen soporte de audio, y algunos dicen que es la mejor biblioteca para programar juegos en Python. Creo que PyGlet podría ser la mejor opción, pero según sé, es mucho mas enrolloso que PyGame.

En ese punto, luego encontré Cocos2d, un framework basado en PyGlet que luce de fábula, de hecho me había dispuesto a adoptar este, hasta que noté un "pequeño" detallazo, su desarrollo está medio congelado desde el 2008 (se quedaron en la versión 0.3.0), los desarrolladores al parecer, se centraron en su versión para iPhone/Objective-C.

También encontré algo de información sobre PyCap/TuxCap basado en PopCap, ¿alguien lo ha probado?

Aunque el juego que pretendo reescribir no pide mucho (podría realizarlo perfectamente con PyGame), quiero ir adaptándome a alguna biblioteca/framework para realizar proyectos mas exigentes en el futuro.

¿Qué me recomiendan? o inclusive, ¿conocen alguna buena alternativa multiplataforma? (que no sea para C++ y preferentemente opensource).

PD: Una screenshot del juego : ).

Con algo de inspiración del mítico Gish y algunos juegos como Koda.
#3
Principiantes / Elección de Plataforma [de Desarrollo]
16 de Diciembre de 2008, 03:27:21 AM
Buenas... realmente no me paso por Stratos muy a menudo, pero me pareció un buen lugar para conseguir la opinión de gente con experiencia en esto de la programación de videojuegos.

Hace algún tiempecillo que me metí a todo este rollo... inicialmente usaba populares toolkits como GameMaker, pero ahora los aborrezco o_oU; después de aquello, comencé a probar mi suerte con la programación "de verdad" (con los fundamentos básicos de esta sobre el riel, por supuesto)...

Sobre mi experiencia desarrollando juegos, bueno... la mayor parte del tiempo solo he desarrollado juegos rápidos para presentar en eventos locales (clones hipersencillos de Guitar Hero, Pacmans, juegos plataforma inconclusos, etc; ustedes saben). Recientemente me decidí a comenzar un proyecto serio (lo mas probable es que se trate de un ActionRPG de tipo Side-scrolling)...

El punto del tema: Bueno, a través de mis vivencias trasteando con cuanta cosa no se pasara por mi camino, sigo sin decidirme por la plataforma a usar para desarrollar mi juego... hmm... recolecté ciertas características que queria que tuviera:

-Programación para juego en 2D.
-Capaz de trabajar "decentemente" con gráficos (traducido en: transparencias, rotaciones, imagenes con canales alfa, etc).
-Que no sea una libreria para C/C++ (o_o no es por nada, pero no quiero enrrollarme programando algo en C/C++).
-Preferiblemente que sea multiplataforma (mas especificamente para Windows y Linux).

En base a estas "características", recolecté algunos candidatos, pero es que diablos, no me decido:
BlitzMax: Realmente me ha fascinado, especialmente después de ver algunos trabajos como Kukoo Kitchen... quizá la desventaja que le tiro a este, es la "poca elegancia" del lenguaje (que en cierta medida me llega a fastidiar un poco) y lo costoso que es como herramienta.
Ruby + Gosu: Esta sería mi elección directa, de no ser porque Gosu es una libreria que aún esta en desarrollo, y usar algo "beta" como que no va... eso y el hecho de que Ruby como lenguaje no tiene gran rendimiento (aunque es muy eficiente a la hora de programar).
PyGame: A decir verdad, nunca he experimentado mucho con PyGame, ni con Python en lo general... sin embargo, he escuchado muchos buenos comentarios de este... si alguien me pudiera dar su opinión de PyGame, lo agradecería mucho.
Torque2D: Esta me fue una elección muy llamativa... no tengo ni idea de cómo funciona, pero sin duda me resultó muy llamativa... aquí el problema que le tiro es que es -verdaderamente- costosa la herramienta... quizá no pensaria tanto en el precio si lo probara a fondo (como hice con BlitzMax), en fin...
Fénix:: He escuchado grandes comentarios sobre Fénix... para ser honestos, nunca me ha dado por probarlo. Seguro aquí hay quien lo conoce, al igual que con PyGame, me gustaría que me dieran su opinión.

¿Cuál elegirían ustedes? (o si conocen alguna otra alternativa llamativa)... la verdad es que me encuentro bastante indeciso... gracias de antemano.





Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.