[DEV] Bennu como scripting embebido (Ejemplo)

Started by SplinterGU, August 10, 2008, 12:34:22 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

TRaFuGa

mmmm una preguntita, esto de usar Bennu como lenguaje scripting embebido, es para que luego la compilación sea un exe normal (en windows) y no tenga que usarse un runtime?? por que si es así, entiendo que esto estará pensado para ser más portable todavía (toda plataforma que soporte programacion con c+sdl podria tener un juego creado con bennu...).
Lo mismo he desvariado un poco y no me he he enterado de nada xD ::)
Texto que se mueve....

Windgate

Yo la idea la veo más orientada a que se puede hacer uso de las "peculiaridades y ventajas" de Bennu usándolo como script en otro lenguaje.

Por ejemplo, la librería graphics.h de C es una basura, pero embebiendo Bennu (Exahustivamente) se podría acceder al buffer de pantalla (file=0 y graph=-1) y mostrarlo pixel a pixel desde C.

Supongo que sería lento, pero permitiría cosas como poder meter un juego Bennu en una página web en plan flash...

Al menos esa es la idea que tengo en mente con esto del script.
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

splinter_work

Quote from: TRaFuGa on October 23, 2009, 12:37:34 PM
mmmm una preguntita, esto de usar Bennu como lenguaje scripting embebido, es para que luego la compilación sea un exe normal (en windows) y no tenga que usarse un runtime?? por que si es así, entiendo que esto estará pensado para ser más portable todavía (toda plataforma que soporte programacion con c+sdl podria tener un juego creado con bennu...).
Lo mismo he desvariado un poco y no me he he enterado de nada xD ::)

no, no es para eso... deberias leer los primeros posts explica de que va...

DCelso

#48
pero ¿viste el avatar que hice?
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

TRaFuGa

Quote from: splinter_work on October 23, 2009, 02:08:06 PM
Quote from: TRaFuGa on October 23, 2009, 12:37:34 PM
mmmm una preguntita, esto de usar Bennu como lenguaje scripting embebido, es para que luego la compilación sea un exe normal (en windows) y no tenga que usarse un runtime?? por que si es así, entiendo que esto estará pensado para ser más portable todavía (toda plataforma que soporte programacion con c+sdl podria tener un juego creado con bennu...).
Lo mismo he desvariado un poco y no me he he enterado de nada xD ::)

no, no es para eso... deberias leer los primeros posts explica de que va...
Sigo sin enterarme mucho xD lo que puedo entender con esto, es para ahorrar (o mejorar) trozos de código en nuestro juego (creanos nuestros procesos en Bennu y llamarlos desde C tipo librerias o funciones externas ¿?¿?¿?), o la posibilidad de que un usuario final del juego, pueda modificar funcionalidades del juego sin tocar nada más que las librerias bennu externas?
En cualquier caso, a la hora de compilar el programa en C se generará un EXE, y deberá de contener los DCB compilados previamente??
Texto que se mueve....

DCelso

Mas o menos.
Una de las utilidaes es esa, crear el motor de tu programa en C y crear un .exe que ya no modificarás mas, y la lógica de ese exe abrirá uno/o varios dcbs para utilizar funciones escritas en código bennu.
Con esto consigues independizar cierta parte de la funcionalidad final del programa de la compilación del ejecutable completo, y así poder cambiar la lógica de, digamos por ejemplo el movimiento de un enemigo, simplemente reprogramando las funciones bennu y volvendo a dejar el dcb resultado en el lugar del que lo usará el exe que hiciste en c.
Creo que actualmente solo puedes embeber la parte lógica de una función, es decir, no puedes usar control de dispositivos como teclado raton o pantalla.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

Patonsky1

#51
Quote from: DCelso on October 23, 2009, 03:19:09 PM
pero vistes el avatar que hice?

Lo viste, lo viste xDDD




He hecho pruebas para trabajar con bennu en modo consola y funciona de maravilla, pero lo que me interesa es poder iniciar el modo gráfico...

Me sale el siguiente error cargando un código Bennu con modo gráfico:

Y después retorna el siguiente valor:


¿Qué podría ser?

DCelso

¿Has probado a hacer lo mismo sin codeblocks?
Puede que no controle bien el "handle" de la ventana de bennugd.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

Patonsky1

Probé y nada.

Recuerdo que pasaba algo parecido cuando de noob asocié los archivos dcb al intérprete y los abria con doble click.

El resultado era exactamente el mismo, solo que no veia el valor de retorno.

DCelso

Por eso lo decía, puede ser problema de rutas relativas.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

Patonsky1


DCelso

Ni idea, necesitaría reproducir el problema en mi equipo, pero de primeras dirían que no se puede depurar un dcb embebido en c.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

SplinterGU

#57
no podes usar esta funcionalidad de esta forma, no es para hacer modo grafico desde fenix... ya que para eso necesitas llamar al motor completo y a todos los hooks...

la cosa es simple y basica... veamos...

no se puede comparar un juego hecho en bennu y uno hecho en C... en C vuela... entonces la mejora seria hacer algo mixto... donde aprovechar la velocidad del C y la flexibilidad y la simpleza de la programacion en bennu... entonces todo lo pesado se pasa a C y las partes donde se necesita modificar comportamientos especificos o donde se necesita poder meter mano facilmente para poder probar y ajustar se pone en scripting (BENNU!)...

esto me suena a deja vu...

sinceramente, es muy simple, pero para entenderlo deberian primero investigar otros productos de este estilo... y ver como se usa el scripting en juegos, por ejemplo, "vampire the mascarade"
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Windgate

lol

Veo que este hilo va a llevarnos tiempo... Por ahora Patonsky y yo estuvimos hablando de tener un juego COMPLETO embebido con Bennu, y desde C acceder al buffer de pantalla y mostrar los pixeles.

Las ventajas de esa idea es que seria posible tener una aplicacion C (Con Bennu por debajo) en una web y asi poder jugar a juegos Bennu desde la web... Un sueño.
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es

Patonsky1

[...] y los sueños, sueños son.

La idea es un plugin cross-brownser que pueda ejecutar bennu...

A ver el thread de Bennu embebido en C, pensé en que si se lograba iniciar el modo gráfico desde éste, se podría intentar integrar en un plugin con NPAPI.

¿Se puede iniciar de alguna manera desde aqui o habría que tirar del codigo fuente (:-\)?