Muchas son las personas que han querido programar algún juego, pero la complejidad de los lenguajes de programación los ha echado para atrás. Ahora eso se acabó, porque hoy os doy a conocer un lenguaje de programación destinado a procesos, creado, sobre todo, para juegos, y este se llama BennuGD.
Como he dicho ya, es un lenguaje muy sencillo de usar, de hecho, yo ya he hecho unos juegos y no es nada complicado. Este lenguaje se abre mediante un intérprete ejecutable, y se compila mediante otro ejecutable, ambos descargables desde la página oficial. Junto con los ejecutables se instalan las librerias necesarias para usar estos. En la página oficial también hay tutoriales, uno largo y otro corto, muy sencillos.
Usa las librerias de SDL, y otras muchas más, creados por los usuarios o por el creador de esta maravilla. Los juegos que se programen en este lenguaje serán normalmente en 2D, aunque hay una extensión que permite usar el Irrlicht 3D Engine.
Cabe destacar que tanto como el interprete, como el compilador, como las librerias son OpenSource y están disponibles para Windows, Linux, Gp2x Wiz, Caano oficialmente, y no oficialmente también está soportado para Wii, MacOS, HaikuOS, Pandora y FreeBSD. También está disponible el SourceCode desde el servidor SVN de BennuGD.
Nota: La página oficial está tanto en inglés como en castellano, pero la wiki del proyecto solo está en inglés, aunque si tienes alguna duda puedes preguntar en el foro oficial o en esta noticia, que gustosos trataremos de ayudarte.
Descargar BennuGD v1.0.0 RC18 (Sólo usuarios registrados)
Descargar BennuGD v1.0.0 RC18 (Sólo usuarios registrados)
Comentarios
que requerimientos pide
cuales son losrequerimientos para este programa?
Una vez que consigues crear un .exe
¿Una vez que consigues crear un .exe que funciona de un juego, se puede cambiar el icono del ejecutable creado?
En teoría...
Con un editor de Exes de esos que hay por ahí... Es decir, que hay programas con esa función.
Ya lo he...
Ya lo he probado con diversos editores que aparecen en los tutoriales, pero una vez guardas el ejecutable con el icono deja de funcionar, incluso si editas el mismo icono que viene de la cigüeña.
Cosas que se me olvidaron detallar
Ante todo disculpas por no contestar dudas, pero es que no he pasado por aquí en mucho tiempo.
Si usas Windows es más cómodo que te descargues el Bennupack, como bien dice Almamu, que te viene con el FPG Edit, el FNT Edit, un generador de explosiones, otro de sprites, un divisor de imagenes, el notepad++ con el resaltado de sintaxis de BennuGD... librerias y módulos adicionales, como el 3D, y más. También te lo puedes descargar por separado, pero se tarda más.
Instalar y usar BennuGD con linux es también muy sencillo, porque lo único que tienes que hacer es extraer el paquete, abrir el ejecutable con SUDO y ya puedes usar BennuGD, por lo menos con Ubuntu, poniendo en la terminal bgdc para compilar o bgdi para abrir el interprete, o incluso ejecutar el moddesc para obtener una descripción del módulo que le indicas.
Lo más dificil de BennuGD en Linux es instalar librerias y módulos adicionales, pero si no me equivoco se encuentran en /usr/lib.
También está disponible un repositorio de descargas APT para Ubuntu 32 Bits (gracias Josebita), el cual se encuentra en la página de descargas de BennuGD.
Como última recomendación es que os registreis en el foro. A esa gente le encanta ver caras nuevas con motivación, y sobre todo, les encanta ayudar. Hay más módulos y librerias creadas por los usuarios en el foro. Y el foro está en dos idiomas: español e inglés. Espero veros por allí.
Nota: El usuario Windgate de la comunidad de BennuGD ha hecho un tutorial de 140 páginas aproximadamente, aunque le faltan apartados, para empezar esta bién. También Osk, de la misma comunidad tiene otro tutorial de 600 páginas aproximadamente, con más funciones y más detalladas. Ambos se encuentran en el BennuPack, en la carpeta Docs.
Dicho esto, feliz código amigos.
Mismo problema que AlmamuPP,
Mismo problema que AlmamuPP, se me cierra el instalador nada más ejecutarlo, uso 7 ¿alguna solución?
A mi me pasa lo mismo, pero
A mi me pasa lo mismo, pero no se hacer nada de lo que dijo almamuPP, no se de donde descargar el paquete con bins y extensiones, y ya busue en la web oficial, me lo podeis explicar paso a paso?
Puedes descargarte este
Puedes descargarte este paquete que lleva varias herramientas y mas: http://colombiandevelopers.googlecode.com/files/BennupackToo...
Es un instalador y instala el compilador, un IDE, editores...
A mi me ha funcionado bien en Windows XP, donde el BennuGD de la web oficial no me funcionaba.
Prueba ejecutandolo como
Prueba ejecutandolo como administrador y si no ve a la página web oficial y bajate el paquete que lleva los bin y las extensiones, añade las carpetas a la variable PATH y prueba a ejecutar uno de los bins que lleva dentro.
Lo de ejecutar como
Lo de ejecutar como admisitrador fue lo primero que probé pero me daba el mismo resultado, luego he hecho lo que me has dicho de descargar el paquete de bin y extensiones pero no sé si me he bajado el correcto. De todas formas he ejecutado
bgdc.exe
obgdi.exe
pero me da el siguiente error:El programa no puede iniciarse porque falta LIBEAY32.dll en el equipo.
. Que conste que no he instalado ninguna variable de sistema porque no sé cuales hay que instalar.Simplemente tienes que
Simplemente tienes que modificar la variable PATH y añadirle las rutas a las carpetas libs, external, modules y bin, luego volver a probar.(recuerda que para separar tienes que usar el ; )
Muchas gracias crack
Ya me funciona correctamente, lo que pasa que ahora no sé como empezar :P ¿Dónde empiezo a escribir código?
Tutos.
Metete en Trinit.es en la sección de tutoriales, está muy bién para empezar.
En la wiki de la pagina
En la wiki de la pagina oficial tienes un tutorial para principiantes con lo basico, formatos, como ejecutar, compilar, etc y luego ya solo te queda investigar un poco :P, yo estoy probando a ver el 2D que tal va con Bennu, si veo que va bien me cambio a este y dejo el Game Maker, xD.
P.D: En la wiki tienes informacion sobre las funciones y variables que llevan los modulos que integra por defecto BennuGD.
Uff
Muchas gracias, en cuanto pueda voy a empezar a indagar sobre el asunto.
Salu2ts!
Yo llevo un rato con el y ya
Yo llevo un rato con el y ya he conseguido que se dibuje por donde pulsas con el raton y que se escriban letras en la pantalla grafica(set_mode), es realmente sencillo, pero aun no me he puesto a trabajar con Sprites y demás, de momento estoy haciendo las pruebas básicas, como hice en DS.
Si quieres usar algun programa con resaltado de syntaxis y que puedas compilar sin tener que escribir ningun comando puedes bajarte el paquete que he dejado mas arriba, lleva todas las herramientas, y ademas tambien lleva IDE y varias cosas mas, solo quiero decir que para las fuentes las debes de pasar a FNT antes con un programa, yo uso el del paquete.
Yo no he conseguido que me
Yo no he conseguido que me cree un ejecutable. ¿Podrías decirme de que método lo haces tú? Yo uso este .bat:
No te hace falta el "cd"
No te hace falta el "cd" simplemente pon la linea de abajo, y quita los "<" y ">". Deberia de crearte un archivo dcb o parecido, luego ejecuta el bgdi HolaMundo.prg y lo ejecuta. Si quieres crear exes tambien es posible, pero ahora mismo no estoy muy puesto en eso, xD.
Nada, no se me crea nada...
No sé que me puede pasar, estoy usando la versión que pusiste más arriba creo que es la misma que tú utilizas. ¿Alguna idea?
Que raro... prueba esto: Abre
Que raro... prueba esto:
Abre el editor que lleva el paquete y pega esto:
Cuando lo pegues guarda el archivo como paint.prg y pulsa F6, debera de compilarlo y mostrarte una pantalla negra, con el +, -, Arriba, Abajo, Izquierda y derecha cambias el color y con el raton pintas.
Si quieres usar el BAT pon un pause al final a ver si te da algun error de compilacion...
Recomendaciones
Almamu, tu código está muy bién, pero te voy a dar unas recomendaciones:
No crees una función para iniciar video, no hace falta, simplemente pones el set_mode y el set_fps en el begin del main, o crear una libreria chorra llamada libgenerica.inc e incluirlo en el código al principio tal que así:
La función 'write', para la que necesitas el mod_text, tiene esta estructura:
(Aquí un nombre de una variable, que nos servirá para identificar el texto) = write ( identificador de un fnt, coordenadas x, coordenadas y, alineación, cadena de texto);
El identificador de un texto se obtiene cuando cargas un FNT mediante la función load_fnt("localización del fnt"), pero hay que ponerle una variable int como identificador, porque si no, se carga el fnt en la memoria pero no puedes acceder a él.
Ejemplo:
int fnt;
fnt=load_fnt("mifnt.fnt");
Coordenadas x y coordenadas y: Pues eso, la localización del texto en pantalla en coordenadas cartesianas.
Alineación: Dice qué punto del texto va a estar en las coordenadas puestas en las dos opciones anteriores, es decir, si pones 0, las coordenadas se pondrán en la esquina superior izda del texto, si pones 1, en la mitad arriba, si pones 2, en la esquina superior dcha, si pones 3, a la izda, si pones 4, al centro justo, si pones 5, a la derecha... Había un cuadro muy bueno en el tutorial de Windgate, porque ahora no lo tengo a mano.
Cadena de texto: Es un texto escrito entre comillas. Si cierras comillas y pones '+ (nombre de variable)' el valor de la variable quedará escrita en pantalla.
Si quieres te enseño a ponerle un cursor a tu Paint y lo dejamos casi terminado ;D
Ya se que no hace falta crear
Ya se que no hace falta crear una funcion, pero suelo tratar de ser organizado y por eso la cree, nada mas. Sobre las fuentes y la funcion write ya las he usado y se manejarlas decentemente, el "mini Paint" este es simplemente una prueba del manejo del raton que hice en su momento, nada mas.
El frameskip a 5 lo he puesto porque, creas o no, hay PC's que estan sobrecargados al momento de ejecutarlo y así me aseguro que si por alguna razon se para el dibujo que deja el raton se haga correctamente y no tenga errores.
Lo que comentas sobre esto:
Entre ellas había un frame, lo que hacia que cuando la distancia de la posicion del raton entre frame y frame era mayor a un pixel(o un pixel)dibujaba una línea recta para evitar que pareciese un aerografo y dar sensacion de que realmente sigue al raton, cuando lo que hace es simplemente dibujar una linea entre la posicion del raton antes del frame y de la posicion despues del frame(esta tecnica la aprendi en uno de mis primeros trabajos para la DS, y ya se puede ver lo util que es, xD). En el codigo que tu dejas(si no lo has probado)pinta un pixel por frame, por lo que no tiene continuidad y el arreglo de la funcion para dibujar lineas, sin un frame; entre if e if no funciona, lo puedes comprobar.
Si, lo he probado...
Aunque en realidad lo que yo hubiese hecho sería otro proceso con un frame(1); que lo ejecuta 100 veces por cada vez que se muestra, aunque he de reconocer que tu metodo es realmente bueno, aunque así ya tienes la forma de hacer un aerógrafo.
En realidad lo que pasa ha sido que he tenido un fallo al entender el código, pero ahora hay que poner los writes antes del frame, te agradezco que me hayas corregido :D
Edito: he probado con el frame 100, pero tampoco es funcional. Gracias a tu código ya sé otra cosa más. Gracias!!
Genial, ya me ha compilado.
Ahora si que voy a poder programar (risa malvada xDD). Muchas gracias por la ayuda, al final he usado el IDE que venía en el pack, que pensaba que no estaba preparado para compilar en Bennu, pensaba que solo era para escribir U.u. Guardando y pulsando F6 se me ha compilado, lo que pasa es que no me ha funcionado tu programa...
Salu2tS!
Que raro... yo lo he
Que raro... yo lo he ejecutado en Windows XP y me funciona, a lo mejor es por los comentarios con // que he metido más tarde, cuando iva a publicar el codigo, bueno, de todas formas a trabajar se ha dicho, ¿no?
xD.
Eso eso, me voy a tener que
Eso eso, me voy a tener que poner las pilas que en un momento has avanzado un montón. Por cierto, buenísimo el tutorial qe viene adjunto en la instalación, os aconsejo a todos que le echéis un vistazo :P
Salu2tS!
Hay algun tutorial en español
Hay algun tutorial en español de estra marabilla?
Muchas gracias por acercarnoslo.
Trinit.es
En trinit.es, en la sección de tutoriales, el usuario Windgate ha escrito documentos pdf divididos en temas, muy fáciles de comprender, con ejemplos en prg con imágenes y todo.
También está la wiki del proyecto, en inglés. Y el tutorial de Osk, un miembro del foro de BennuGD.org.
El tutorial de Osk es más completo, pero el de Windgate es más corto y te enseña lo básico.
Los dos tutoriales están incluidos en español en el BennuPack.
Estoy teniendo problemas para
Estoy teniendo problemas para instalarlo en Windows XP. He probado el instalador automatico, pero cuando lo inicio automaticamente se cierra, tambien he probado bajando el paquete RAR de la Web oficial y instalandolo manualmente, pero cuando inicio el compilador o algun ejecutable de los otros me salta un error con la dll LIBEAY32.dll(concretamente el error es: "No se encuentra el punto de entrada del procedimiento DES_ecb_encrypt en la biblioteca de vínculos dinámicos LIBEAY32.dll."), lo he instalado el Linux y funciona perfectamente, pero me es mas comodo hacerlo todo desde Windows, ¿alguna idea?
P.D: La carpetas bin, modules, libs y externals están añadidas a la variable PATH.
Lo he probado en Windows 7
Lo he probado en Windows 7 32bits y parecen funcionar bien.
Creo que he llegado tarde...
Pero por si alguien le este comentario: Busca BennuPack en el Google, o instalate Ubuntu 32 bits e instalatelo desde el repositorio de Josebita, dispuesto en la página de BennuGD.org, en la sección Descargas.