Bennu Game Development

Foros en Español => Otros DIV-likes => Div GO => Topic started by: AmakaSt on September 07, 2012, 03:28:01 PM

Title: Div Games en Html5 y Canvas
Post by: AmakaSt on September 07, 2012, 03:28:01 PM
Hola a todos,

Hace un tiempo que empecé a probar con html5, javascript y canvas, y haciendo distintas pruebas comencé a realizar una especie de compilador Div Games online que da como resultado un cavas. Ya tiene soporte a procesos, gráficos, textos y alguna cosa más.

Aquí os dejo el enlace por si queréis darle un vistazo:
http://www.amakasoft.com/divgonline/index.php (http://www.amakasoft.com/divgonline/index.php)

Aviso de que esta muy verde todavía, aunque se pueden hacer ya cosas con él, no es ni de lejos la sombra de BennuGD.  :)

Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on September 07, 2012, 03:51:29 PM
la demo esta muy bien...

estaria bueno que lo hagas compatible con los dcb y fpg bennugd.
Title: Re:Div Games en Html5 y Canvas
Post by: KeoH on September 07, 2012, 04:45:56 PM
Tiene buena pinta xD
Title: Re:Div Games en Html5 y Canvas
Post by: JaViS on September 07, 2012, 05:42:09 PM
La verdad es que esta muy interesante. Pero creo que sería realmente impresionante si fuese capaz de interpretar los dcb de Bennu. Eso seria genial
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on September 07, 2012, 08:12:40 PM
Mola!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 08, 2012, 09:04:52 AM
Se basa en Div (no se si esta todavia con copyright comercial) pero aprovechando las posibilidades del canvas de html5. Mi idea es que esto sea open source o similar, todavia no he mirao licencias.

Quote from: SplinterGU on September 07, 2012, 03:51:29 PM
la demo esta muy bien...

estaria bueno que lo hagas compatible con los dcb y fpg bennugd.

Eso ya es muy dificil, no se tanto tampoco.  :D

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on September 08, 2012, 09:06:44 AM
métele la colisión por cajas que tengo ganas de trastearlo  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: Transdiv on September 08, 2012, 09:46:48 PM
Por curiosidad; El compilador esta en PHP y genera JavaScript + HTML5?

Title: Re:Div Games en Html5 y Canvas
Post by: Kloppix on September 09, 2012, 04:07:21 AM
AmakaST, primero que todo bienvenido. Tu proyecto es realmente impresionante, pero no entiendo por que es dificil hacer lo mismo con los .prg de Bennu.

La gente de Colombian Developers estaba portando Bennu a Native Client. No se como estará el proyecto, pero tal vez se puedan ayudar mutuamente.

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 09, 2012, 02:25:09 PM
Quote from: Transdiv on September 08, 2012, 09:46:48 PM
Por curiosidad; El compilador esta en PHP y genera JavaScript + HTML5?

Si, Php es el que convierte el código a Javascript + Html5, y en Javascript he creado funciones que imitan las que tiene Div: rand(min, max); rgb(r,g,b); let_me_alone(); etc...

Quote from: Kloppix on September 09, 2012, 04:07:21 AM
AmakaST, primero que todo bienvenido. Tu proyecto es realmente impresionante, pero no entiendo por que es dificil hacer lo mismo con los .prg de Bennu.

La gente de Colombian Developers estaba portando Bennu a Native Client. No se como estará el proyecto, pero tal vez se puedan ayudar mutuamente.

Native Client es exclusivo para Chrome, no?

En principio quiero hacer algo lo más parecido posible a Div.   :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: josebita on September 09, 2012, 05:16:57 PM
Bueno, muchas felicidades porque la verdad es que es impresionante. Ve comentando los progresos que vayas haciendo :)
Title: Re:Div Games en Html5 y Canvas
Post by: Kloppix on September 12, 2012, 07:15:29 AM
Quote from: AmakaSt on September 09, 2012, 02:25:09 PM
Native Client es exclusivo para Chrome, no?
Lamentablemente. La gente de Colombian Developers intentó el HTML5 diréctamente, pero a diferencia de native client era demasiado lento como para hacer un juego. De todos modos ahora que entiendo lo que haces no se si te sirva.

De verdad espero que continúes tu proyecto  ;)
Title: Re:Div Games en Html5 y Canvas
Post by: gecko on September 12, 2012, 11:48:13 AM
que copado que está!
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on September 12, 2012, 01:43:25 PM
Esta bueno además para hacer banner !! tiene la opción colocar link?
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on September 12, 2012, 04:59:47 PM
lo que note yo al probar, es que al mover las keys, se mueven en el juego, pero tambien escrolea la ventana del browser... estaria bueno que si tenes foco en la ventana no scrolee el browser.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 13, 2012, 01:04:48 AM
esta bueno el proyecto y la velocidad genial tambien..

enhorabuena felicitaciones
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 13, 2012, 09:03:18 AM
Quote from: SplinterGU on September 12, 2012, 04:59:47 PM
lo que note yo al probar, es que al mover las keys, se mueven en el juego, pero tambien escrolea la ventana del browser... estaria bueno que si tenes foco en la ventana no scrolee el browser.

Si, esto tengo que mirar de arreglarlo.

Quote from: emov2k4 on September 12, 2012, 01:43:25 PM
Esta bueno además para hacer banner !! tiene la opción colocar link?

Supongo que poniendo <a href="enlace"><canvas></canvas></a> debería de funcionar a modo de enlace como un banner.
Quote from: l1nk3rn3l on September 13, 2012, 01:04:48 AM

esta bueno el proyecto y la velocidad genial tambien..

enhorabuena felicitaciones

Gracias.  :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 14, 2012, 09:42:25 AM
Esta tarde si tengo tiempo actualizo a la versión 0.08 de DivGO, con muchas novedades.
No hay colisiones aun, pero ya se podrán identificar procesos, algo muy importante para las futuras colisiones.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 14, 2012, 04:51:19 PM
Ya he subido la versión 0.08, como novedades:
- Los textos, primitivas graficas y funciones graficas (put, xput, put_pixel ...) funcionan como en div, o similar
- Ya se pueden declarar variables locales
- Ya se pueden identificar procesos, textos y primitivas graficas
- Ahora ya funciona el puñetero signal, por el momento acepta estas señales: s_kill, s_freeze, s_sleep, s_wakeup
- Funciones matemáticas a medias, algunas todavía no funcionan como en Div

Y hay más, en la sección de novedades de la página esta todo. También he actualizado algunos ejemplos.  ;)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: JaViS on September 14, 2012, 06:32:57 PM
Genialazo! KARMA!
Title: Re:Div Games en Html5 y Canvas
Post by: BlySntK on September 15, 2012, 06:15:22 AM
Caray, qué nivelón... me fascina que las cosas vayan acelerándose a una marcha más bien rápida... a ver si conseguimos llevar a estos lenguajes a un buen alto standing, quizás no tanto como C pero vamos.... que se conozcan bastante. karmoide++ :)
Title: Re:Div Games en Html5 y Canvas
Post by: Transdiv on September 18, 2012, 08:42:01 AM
Seria interesante que lo hicieras de fuentes abiertas de paso para aprender un poco de HTML5  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 21, 2012, 05:01:47 PM
 Subida la versión 0.09 y como novedades:
- Arreglado break en los procesos, ahora ya se pueden eliminar con break; (en for y while ya funcionaba)
- Arregladas funciones matemáticas (ahora todas funcionan como lo hacia div)
- Nuevas funciones: get_distx(); get_disty(); advance(); xadvance(); collision();
- Ahora DivGo funciona en IE9, y compatibilidad con touch para dispositivos táctiles (probado solo en iOS)

Y creo que hay más, en la sección de novedades de la página esta todo. También he actualizado algunos ejemplos.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 21, 2012, 05:18:41 PM
Quote from: Transdiv on September 18, 2012, 08:42:01 AM
Seria interesante que lo hicieras de fuentes abiertas de paso para aprender un poco de HTML5  ;D

Gran parte del código está abierto y sobre todo lo que es para HTML5 (canvas + javascript).  :)
Title: Re:Div Games en Html5 y Canvas
Post by: La momia que fuma on September 24, 2012, 05:01:39 PM
Sencillamente genial, a por ello!
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on September 26, 2012, 10:01:07 PM
Impressive :D


Esto va a dar mucho juego.


¿Cómo prefieres que te reportemos los bugs?


He probado a utilizar From y no se ejecuta el código.


¿Se pueden concatenar strings ya?





program test;
Begin
    from x=1 to 255;
        text_color("#"+x);
        write(0,x,x,0,"Hola");
    end
End
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 27, 2012, 06:42:42 AM
Quote from: PiXeL on September 26, 2012, 10:01:07 PM
Impressive :D


Esto va a dar mucho juego.


¿Cómo prefieres que te reportemos los bugs?


He probado a utilizar From y no se ejecuta el código.


¿Se pueden concatenar strings ya?





program test;
Begin
    from x=1 to 255;
        text_color("#"+x);
        write(0,x,x,0,"Hola");
    end
End


Para la próxima versión (la 0.10) ya se podrá concatenar textos, por el momento tengo preparadas las funciones: char(var); lower(var); strcat(var, var); strdel(var, ini, fin); strlen(var); upper(var);

El from ... to ... step ... end, también para la próxima versión, en la actual tienes el for(); o el while();

Y no será lo único que traiga...  ;D

Los bugs los podéis reportar en este mismo tema del foro.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on September 27, 2012, 12:40:48 PM
Está quedando majo de verdad Amaka.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 28, 2012, 03:16:49 PM
Subida la versión 0.10, las novedades:
- Ya está disponible la sentencia (bucle) From ... to ... step ... end
- Disponibles las funciones de texto: char(); lower(); strcat(); strchr(); strcmp(); strcpy(); strdel(); strlen(); strset(); strstr(); upper()
- Nuevas funciones: fget_dist(); fget_angle(); move_draw(); move_text();
- Mejorado collision(), ahora devuelve la id del objeto colisionado y no se vuelve el programa loco al colisionar muchos procesos a la vez con el mismo nombre.
- Y ahora también el menú de ejemplos de la web es compatible con iOS.

Y creo que ya nada mas por ahora.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on September 28, 2012, 06:43:31 PM
Es posible hacer un juego en local sin usar la web? se puede empaquetar de alguna manera para hacer los juegos portables?
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on September 28, 2012, 06:53:31 PM
He visto que esta línea:
write(0,0,0,0,size);


Escribe "size" en pantalla, cuando realmente quiero pasar el valor de la variable.


Ya sé que existe write_int, pero en ocasiones no quiero que se actualice el número, con el consecuente malgasto de recursos.


------------


También me he fijado que el proceso principal/main no funciona como un proceso cualquiera. Si añado algo de código relacionado con procesos: x,y,z,angle,size,advance, etc... el proceso no hace lo que debería o se cuelga.


-----------


Y ya por fastidiar del todo. ¿Qué tal el mejorar la compatibilidad con los diferentes divlikes?


Estaría bien que set_mode se comiera esto por igual:
set_mode(m640x480);
set_mode(640,480);
set_mode(640,480,16);
set_mode(640,480,32);
set_mode(640,480,32,MODE_FULLSCREEN);


Ignorando, claro está, los bits de color y las posibles variables que viniesen después.


------------------------------------


Y una vez más, un código que lo rompe todo:


program test;
begin
nave();
end


Process nave();
Begin
graph=1;
    loop
    x=mouse.x;
    y=mouse.y;
        if(mouse.left) sombra(x,y,graph); end
        frame;
    end
End


Process sombra(x,y,graph);
Begin
angle=rand(0,360)*1000;
frame;
    //while(size>0)
    //size--;
    //frame;
    //end
End



Enhorabuena por tu trabajo :)
Si estás interesado en hacerlo open source, yo podría ayudarte :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 29, 2012, 02:25:52 PM
Gracias Pixel por el testeo. :)

Lo del program ya era algo que tenía controlado, haciendo pruebas con los ejemplos de Div2 me di cuenta de la cagada, quiero corregirlo para próximas versiones. :P
El set_mode puedo poner que sea compatible con la segunda opción (set_mode(640,480);), el resto como dices habría que ignorarlo, así que no tiene mucho sentido añadirlo, aparte de compatibilidad, pero es algo muy fácil de cambiar.
Y el código que has puesto a mi me funciona bien, ¿qué error te da?

Quote from: Erkosone on September 28, 2012, 06:43:31 PM
Es posible hacer un juego en local sin usar la web? se puede empaquetar de alguna manera para hacer los juegos portables?

En breve añadiré que se pueda descargar la web, para que la podáis tener en local y puedas programar tus juegos, necesitaras instalar Wamp, Xamp o similar para que funcione php.

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on September 29, 2012, 04:08:51 PM
Amaka entonces si que te voy a ir a buscar a tu casa a darte un beso  :o
Recuerda que se donde vives XD..
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on September 29, 2012, 05:49:27 PM
El proceso sombra debería mostrarse una vez y luego desaparecer, pero aparte de eso, cuando lo probé el otro día, al pulsar una sóla vez el botón del ratón luego permanecía como apretado.


Supongo que size no funciona aún, ¿verdad?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 29, 2012, 08:12:54 PM
Es raro, el size funciona bien... me lo reviso de todos modos.   ;)

Y ya está disponible para descargar Div GO desde la web de Amaka Soft, para que podáis ir haciendo pruebas en local y cambiar los gráficos y tal...

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on September 29, 2012, 08:16:54 PM
:OOOO :D


¡Me encanta la licencia asociada! ¿Planeas trabajar con algún servicio de repositorio de software libre? SF.net, Google Code, etc...?


..........


10 segundos después he visto el contenido de los PHP. ¿Planeas hacerlo open source o no? xD
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 30, 2012, 04:17:52 PM
Quote from: PiXeL on September 29, 2012, 08:16:54 PM
:OOOO :D


¡Me encanta la licencia asociada! ¿Planeas trabajar con algún servicio de repositorio de software libre? SF.net, Google Code, etc...?


..........


10 segundos después he visto el contenido de los PHP. ¿Planeas hacerlo open source o no? xD

Si, planeo hacerlo Open Source, pero más adelante, ahora mismo el código del compilador es un poco caótico y puede que lo cambie entero. Es que antes de un compilador Div era algo totalmente distinto para yo probar canvas.

Esta versión es para el que quiera pueda hacer su juego en local.

Y como dices, tal vez use Google Code.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 10, 2012, 07:16:36 AM
Quote from: PiXeL on September 28, 2012, 06:53:31 PM
He visto que esta línea:
write(0,0,0,0,size);


Escribe "size" en pantalla, cuando realmente quiero pasar el valor de la variable.


Ya sé que existe write_int, pero en ocasiones no quiero que se actualice el número, con el consecuente malgasto de recursos.


------------


También me he fijado que el proceso principal/main no funciona como un proceso cualquiera. Si añado algo de código relacionado con procesos: x,y,z,angle,size,advance, etc... el proceso no hace lo que debería o se cuelga.


-----------


Y ya por fastidiar del todo. ¿Qué tal el mejorar la compatibilidad con los diferentes divlikes?


Estaría bien que set_mode se comiera esto por igual:
set_mode(m640x480);
set_mode(640,480);
set_mode(640,480,16);
set_mode(640,480,32);
set_mode(640,480,32,MODE_FULLSCREEN);


Ignorando, claro está, los bits de color y las posibles variables que viniesen después.


------------------------------------


Y una vez más, un código que lo rompe todo:


program test;
begin
   nave();
end


Process nave();
Begin
   graph=1;
    loop
       x=mouse.x;
       y=mouse.y;
        if(mouse.left) sombra(x,y,graph); end
        frame;
    end
End


Process sombra(x,y,graph);
Begin
   angle=rand(0,360)*1000;
   frame;
    //while(size>0)
       //size--;
       //frame;
    //end
End



Enhorabuena por tu trabajo :)
Si estás interesado en hacerlo open source, yo podría ayudarte :)

Para la próxima versión ya está solucionado lo del write, lo del proceso de inicio (program) y mejorado el set_mode y screen_color.

set_mode se podra cambiar en cualquier momento del programa, cambiando el tamaño del canvas y se podra usar de las siguientes formas:
set_mode(m640x480); //compatible divlikes
set_mode(640,480); //compatible divlikes
set_mode(m640x480x2); //nuevo, el tercer valor x2 será un reescalado de imagen al doble de tamaño, x3 triple, etc...
set_mode(640, 480, x2); o set_mode(640, 480, 2); //el tercer valor será un reescalado de imagen

Y habra más novedades: get_id, get_dist, get_angle, load_fpg, load_sound, sound, stop_sound...  ;)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 16, 2012, 06:17:53 PM
Subida la versión 0.12, y la lista de novedades:
- Funciones nuevas: get_angle(); get_dist(); get_id(); define_region(); load_fpg(); load_sound(); sound(); stop_sound(); //la api de sonido de html5 en cada navegador funciona de forma distinta, solo Chrome y Opera lo hacen de forma aceptable
- Cambios en set_mode() y screen_color();
- Nuevas variables locales: size_x, size_y, alpha y resolution
- Mejoras en el lenguaje: ahora program genera un proceso, al declarar variables se puede separa con una coma en la misma línea de código, optimizado el código que convierte de Div a Javascript y alguna cosa más...
- Algunos ejemplos actualizados para probar el Touch y algunas de las funciones nuevas.

Mas info en la web de DivGO y próximamente descarga.  ;)

Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: JaViS on October 16, 2012, 07:28:32 PM
Estoy un poco confundido, es que existen dos proyectos para portar bennu a web?
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on October 16, 2012, 07:42:39 PM
EL EJEMPLO DE DISPAROS ESTA RAPIDOOOOOO..

PODRIAS INCLUIR EL EJEMPLO DE NAVES ESE SENCILLO QUE SE MOVIA DE IZQUIERDA
A DERECHA Y CA I AN NAVES DE ARRIBA Y DISPARABA CON ESPACIO , YA CON ESE EJEMPLO CUALQUIERA SE ARMA
UN JUEGO COMPLETO..


GRACIAS POR ESTE PROYECTO.. !!!!

SE LLAMA TUTOR4.PRG ESTA EN EL BENNUPACK SECCION EJEMPLOS BASICOS



//-------------------------------------------------------------------
// TITULO: Tutorial 1
// AUTOR:  Antonio Marchal
// FECHA:  10/10/97
//-------------------------------------------------------------------

PROGRAM Tutorial_1;

GLOBAL
    puntuacion=0;     // Variable para guardar la puntuaci¢n

BEGIN
    load_fpg("media\tutor1.fpg");  // Se carga el fichero de gr ficos
    load_fnt("media\tutor1.fnt");  // Se carga el tipo de letras

    set_mode(m640x480);               // Pone el modo de video 640 x 480
    set_fps(24,0);                    // N£mero de im genes por segundo
    put_screen(0,63);                 // Pone la pantalla de fondo
    nave(320,240,41);                 // Crea el proceso nave

    teclado();

    write_int(1,320,0,1,OFFSET puntuacion); // Muestra la puntuacion
    FROM x=1 TO 4; asteroide(1); END        // Crea 4 asteroides grandes
    FROM x=1 TO 4; asteroide(21); END       // Crea 4 asteroides peque¤os
END


process teclado();
begin
  loop
    if (key(_esc)) exit(); end;
    frame;
  end;
end;


//-------------------------------------------------------------------
// Maneja la nave protagonista
// Entradas: Coordenadas y c¢digo del gr fico
//-------------------------------------------------------------------

PROCESS nave(x,y,graph)
BEGIN
    LOOP
        // Comprueba si se pulsan las teclas de izquierda o derecha
        // Y modifica el  ngulo si est n pulsadas
        IF (key(_left)) angle=angle+10000; END
        IF (key(_right)) angle=angle-10000; END
        // Si se pulsa la tecla de arriba, la nave avanza
        IF (key(_up)) advance(8); END
        // Si se pulsa la tecla control crea un proceso del tipo disparo
        IF (key(_control)) disparo(x,y,angle); END
        // Corrige las coordenadas, para que la nave no desaparezca
        // de pantalla
        corrige_coordenadas();
        FRAME;  // Hace aparecer el gr fico de la nave en pantalla
    END
END

//-------------------------------------------------------------------
// Proceso disparo
// Crea los disparos de la nave protagonista
// Entradas: Coordenadas y  ngulo del gr fico
//-------------------------------------------------------------------

PROCESS disparo(x,y,angle)
BEGIN
    // Hace un avance inicial y define el gr fico a usar
    advance(24); graph=42;
    // Mientras el gr fico este dentro de pantalla
    WHILE (NOT out_region(id,0))
        // Hace que avance en el angulo que tenga predeterminado
        advance(16);
        FRAME;  // Hace que el gr fico aparezca en pantalla
    END
END

//-------------------------------------------------------------------
// Proceso asteroide
// Maneja todos los asteroides del juegos tanto grandes como peque¤os
// Entradas: Codigo del tipo de asteroide que es su gr fico inicial
//-------------------------------------------------------------------

PROCESS asteroide(codigo)
BEGIN
    LOOP
        // Crea el asteroide en la esquina superior izquierda
        // (Coordenadas: 0,0) y asigna el c¢digo de gr fico
        x=0; y=0; graph=codigo;
        // Elige un angulo al azar
        angle=rand(-180000,180000);
        LOOP
            // Anima el gr fico, sumando uno a su c¢digo
            graph=graph+1;
            // Si sobrepasa el limite de la animaci¢n, la reinicia
            IF (graph==codigo+20) graph=codigo; END
            // Hace avanzar el gr fico en la direccion determinada
            advance(4);
            // Si colisiona con el gr fico del disparo sale
            // del bucle, que de otra manera no tiene final
            IF (collision (TYPE disparo)) BREAK; END
            // Corrige las coordenadas para que no desaparezca de
            // pantalla, haciendole aparecer por el otro lado
            corrige_coordenadas();
            FRAME;      // Hace que el gr fico salga en pantalla
        END
        puntuacion=puntuacion+5;    // Suma 5 puntos a la puntuaci¢n
        // Pone la animaci¢n de la explosion mediante un bucle
        FROM graph=43 TO 62; FRAME; END
    END
END

//-------------------------------------------------------------------
// Proceso corrige_coordenadas
// Corrige las coordenadas del proceso que los llama haciendo
// que dichas coordenadas sean ciclicas en pantalla
//-------------------------------------------------------------------

PROCESS corrige_coordenadas()
BEGIN
    // Si se sale por la izquierda hace que aparezca por la derecha
    // restando para ello el ancho de pantalla
    IF (father.x<-20) father.x=father.x+680; END
    // Si se sale por la derecha hace que aparezca por la izquierda
    IF (father.x>660) father.x=father.x-680; END
    // Si se sale por la arriba hace que aparezca por la abajo
    IF (father.y<-20) father.y=father.y+520; END
    // Si se sale por la abajo hace que aparezca por la arriba
    IF (father.y>500) father.y=father.y-520; END
END

Title: Re:Div Games en Html5 y Canvas
Post by: Transdiv on October 16, 2012, 08:07:46 PM
Quote from: JaViS on October 16, 2012, 07:28:32 PM
Estoy un poco confundido, es que existen dos proyectos para portar bennu a web?

Sips, uno usa HTML5 y el otro Código Nativo pero solo en el navegador Google Chrome.
Title: Re:Div Games en Html5 y Canvas
Post by: Transdiv on October 16, 2012, 08:18:43 PM
Tenias que encriptar el compilador.....  :'(
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 16, 2012, 08:40:55 PM
Quote from: Transdiv on October 16, 2012, 08:18:43 PM
Tenias que encriptar el compilador.....  :'(
En breve estarán los códigos abiertos, será open source.

l1nk3rn3l mirare de crear algunos ejemplos y de portar algún tutor como el que me indicas. Aunque ya viendo ese código así por encima, veo funciones y variables que todavía no soporta DivGO.

Quote from: JaViS on October 16, 2012, 07:28:32 PM
Estoy un poco confundido, es que existen dos proyectos para portar bennu a web?

Sí, hay 2 proyectos. Uno se basa en BennuGD y otro en Div. Pienso que cuantos más lenguajes Div-Like hayan mejor, siempre habrá más en donde elegir y se mantendrá viva y creciente la comunidad. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on October 17, 2012, 01:28:44 PM
Pinta genial! :D Aunque para los hardcore se nos queda un poco corto aún, pero va por buen camino.


Nada más se pueda portaré alguno de mis juegos al completo.
Según veo no se pueden crear Structs aún, ¿no?
¿Permitirás usar load_png?


Este código hace explotar DivGO sobremanera xD




program vilanet;


global
music;
wavs[10];


//MODO DE PANTALLA Y FPS
ancho_pantalla=480;
alto_pantalla=800;
frameskip=2;
_fps=25;

//UI
matabotones;
id_boton_menu;
opcion_menu;


ready;
doble_clic;
dificultad;
distancia;
obstaculos_en_pantalla;
puntos;
fuente;

//DIVGO!!!
os_id=1003;
focus_status=1;

Private
graph_loading;

Local
i;
accion;
begin
//establecemos la pantalla a utilizar y su tamaño
frame;

//inicializamos el modo gráfico, fps y nombre de la ventana
set_mode(480,800);
set_fps(_fps,frameskip);

//ponemos el gráfico de "cargando"...
//graph_loading=load_png("loading.png");
put_screen(0,graph_loading);
frame; //tengo que hacer 2 frames para que lo de arriba funcione :|
frame;
//unload_map(0,graph_loading);

//cargamos los recursos a utilizar durante todo el juego
carga_sonidos();

//cargamos el fpg de gráficos
load_fpg("fpg/vilanet.fpg");

//la fuente
fuente=load_fnt("fpg/1.fnt");

//si no estamos en android, ponemos algo para localizar el cursor
if(os_id!=1003)
mouse.graph=71;
end

//y finalmente el menú
//menu_tactil();

juego();
end


process juego()
Private
retraso=100;
retraso_esquiador;
anterior;
nuevo;
begin
//graph=get_screen();
let_me_alone();
clear_screen();
controlador();
puntos=0;
distancia=0;
obstaculos_en_pantalla=0;
x=ancho_pantalla/2;
y=alto_pantalla/2;
start_scroll(0,0,11,0,0,15);
//scroll[0].camera=camara();
camara();
prota();
ready=0;
write_int(fuente,ancho_pantalla,0,2,&puntos);

//ponemos la canción de fondo del juego
//music=load_song("ogg/2.ogg");
//play_song(music,-1);
music=load_sound("ogg/2.ogg");
sound(music);
ready=1;
loop
distancia++;
puntos+=1+(dificultad/3);
while(alpha>0) alpha-=5; frame; end
dificultad=6+(distancia/100);

// if(rand(0,100)=<dificultad)
if(obstaculos_en_pantalla<5)
if(retraso>50-dificultad*2)
loop
nuevo=rand(1,5);
if(nuevo!=anterior) break; end
end
obstaculo(nuevo,rand(15,19));
anterior=nuevo;
retraso=0;
else
retraso++;
end
end
// end
if(retraso_esquiador>100)
retraso_esquiador=rand(-100,0);
esquiador(rand(1,5));
else
retraso_esquiador++;
end

//botón esc, salir
if(key(_esc))
while(key(_esc)) frame; end
let_me_alone();
//graph=get_screen();
x=ancho_pantalla/2; y=alto_pantalla/2; z=-100;
//menu_tactil();
//from alpha=255 to 0 step -15; frame; end
//unload_map(0,graph);
break;
end
frame;
end
end


Function carga_sonidos();
Begin
from i=1 to 7;
//wavs[i]=load_sound("wav/"+i+".wav");
end
End


Function sonido(num);
Begin
//play_sound(wavs[num],0);
End


//hace una capa de emulación del táctil para pc y gestiona el boton de volver
Process controlador();
Begin
loop
if(mouse.left)
dedo(mouse.x,mouse.y);
end
/*for(i=0; i<10; i++)
if(multi_info(i, "ACTIVE") > 0)
dedo(multi_info(i, "X"),multi_info(i, "Y"));
end
end*/
frame;
end
End


Process dedo(x,y);
Begin
priority=1;
graph=71;
alpha=0;
frame;
End


Process prota();
Private
retraso;
anim;
Begin
//flags=B_VMIRROR;
x=ancho_pantalla/2;
y=alto_pantalla-70;
z=-2;
graph=5;
loop
if(anim<10-(dificultad/5))
anim++;
else
if(graph<10) graph++; else graph=5; end
anim=0;
end
if((os_id==1003 and mouse.left) or os_id!=1003)
if(x<mouse.x)
x+=20;
if(x>mouse.x) x=mouse.x; end
else
if(x>mouse.x)
x-=20;
if(x<mouse.x) x=mouse.x; end
end
end
end
if(x<(ancho_pantalla/10)) x=ancho_pantalla/10; end
if(x>ancho_pantalla-(ancho_pantalla/10)) x=ancho_pantalla-(ancho_pantalla/10); end
if(retraso>100)
// if((os_id==1003 and mouse.left and mouse.y<(alto_pantalla/4)*3) or (os_id!=1003 and mouse.left))
// disparo();
// retraso=0;
// end
else
retraso++;
end
if(accion<0) break; end
frame;
end
if(accion==-1) explosion(); end
if(accion==-2) sonido(5); from size=100 to 0 step -10; frame; end end
gameover();
End


Process disparo();
Begin
x=father.x;
y=father.y;
z=-1;
graph=4;
size=200;
while(y>-100)
if(accion==-1)
from alpha=255 to 0 step -30;
size+=3;
frame;
end
break;
end
y-=20;
angle+=20000;
frame;
end
End


Process obstaculo(pos_x,graph);
Private
id_col;
pos_x; //FAILURE!
Begin
y=-100;
if(graph==18) pos_x=1; end
if(graph==19) pos_x=5; end
if(graph==18 or graph==19)
y=-600;
end
x=((pos_x-1) * (480/5))+(480/10);
z=-1;
size=150;
if(collision(type obstaculo))
//signal(s_kill,id);
end
size=100;
obstaculos_en_pantalla++;
loop
if(id_col=collision(type prota))
if(graph==18 or graph==19)
id_col.accion=-2;
else
id_col.accion=-1;
end
end
if(graph<18)
if(id_col=collision(type disparo))
if(graph==17) //explosion
explosion();
end
id_col.accion=-1;
if(graph==15 or graph==16) sonido(3); end
break;
end
if(y>alto_pantalla+100) break; end
else
//barrancos
if(y>alto_pantalla+600) break; end
end
y+=3+dificultad;
frame;
end
//explosion
from alpha=255 to 0 step -30; y+=3+dificultad; frame; end
obstaculos_en_pantalla--;
End


Process explosion();
Private
anim;
Begin
sonido(4);
x=father.x;
y=father.y;
z=-2;
graph=22;
while(graph<27)
if(anim==4) graph++; anim=0; else anim++; end
size+=10;
alpha-=5;
y+=3+dificultad;
frame;
end

End


Process esquiador(pos_x);
Private
id_col;
pos_x;
Begin
x=((pos_x-1)*(480/5))+(480/10);
y=-100;
z=0;
graph=20;
size=150;
if(collision(type obstaculo))
esquiador(rand(1,5));
//signal(s_kill,id);
end
size=100;
if(collision(type obstaculo))
//signal(s_kill,id);
end
while(y<alto_pantalla+100);
if(graph==20)
if(id_col=collision(type disparo))
id_col.accion=-1;
graph=21;
sonido(2);
end
if(collision(type obstaculo))
graph=21;
sonido(3);
end
if(collision(type prota))
puntos+=1000;
sonido(2);
break;
end
y+=6+dificultad;
else
y+=3+dificultad;
end
frame;
end
End


Process camara();
Begin
loop
scroll.y0-=3+dificultad;
frame;
end
End


Process gameover();
Begin
delete_text(all_text);
write(fuente,ancho_pantalla/2,(alto_pantalla/4)*3,4,puntos);
x=ancho_pantalla/2;
y=(alto_pantalla/2);
graph=705;
z=-10;
while(is_playing_song()) frame; end
let_me_alone();
delete_text(all_text);
juego();
//menu_tactil();
end


Process get_screen();
Begin
End


Process load_song(string basura);
Begin
End


Process is_playing_song();
Begin
End


Process fade_music_off();
Begin
End
Title: Re:Div Games en Html5 y Canvas
Post by: JaViS on October 17, 2012, 01:52:27 PM
Quote from: AmakaSt on October 16, 2012, 08:40:55 PM
Sí, hay 2 proyectos. Uno se basa en BennuGD y otro en Div. Pienso que cuantos más lenguajes Div-Like hayan mejor, siempre habrá más en donde elegir y se mantendrá viva y creciente la comunidad. :)


Muchas gracias por la clarificación!
Title: Re:Div Games en Html5 y Canvas
Post by: Transdiv on October 18, 2012, 02:19:58 AM
Me baje el XAMPP Lite portable y cuando ejecuto el programa de scroll por ejemplo, no se muestra el efecto de scroll con las imagenes 001 y 002 en comparación con la version que se ejecuta desde tu pagina web :

(http://imageshack.us/a/img442/4554/canvasf.jpg)


(http://imageshack.us/photo/my-images/442/canvasf.jpg/)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 18, 2012, 10:31:38 AM
Qué raro lo del scroll... te pasa también en el ejemplo de collision?

Prueba en usar una versión XAMPP más completa que la lite portable o Wamp y que sean de lo mas reciente posible.

Y aquí subiré los códigos de DivGO, en breve:  :)
http://code.google.com/p/divgo/

Sobre la licencia, ¿Cual me recomendáis? Yo puse dual MIT / GPL que es la que usa jQuery y Mootools.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Transdiv on October 18, 2012, 02:36:06 PM
Sips, lo probe en la version completa y lo mismo, pero parece ser que tiene que ver con el código, ya que lo puse en un website e igualito. (Collision tambien falla el fondo). Respecto a las licensias quizas la persona mas adecuada seria Splinter que ya ha estado con ese tema.

Salu2

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 19, 2012, 09:39:15 AM
Ya disponible para descargar la versión 0.12.

http://www.amakasoft.com/herramientas/div-go.html (http://www.amakasoft.com/herramientas/div-go.html)
http://code.google.com/p/divgo/ (http://code.google.com/p/divgo/)
Title: Re:Div Games en Html5 y Canvas
Post by: Transdiv on October 19, 2012, 11:18:45 AM
Ya se soluciono lo de los graficos de fondo, un problema que hay (tambien en la version anterior), es que cuando ejecuta el collision luego de una rato como que el programa se cuelga aunque se siguen escuchando sonidos al fondo. Eso me ocurre con el Firefox en WinXP pero no en Windows 7, El Internet 9 tambien se cuelga luego de un rato y nunca salen los sonidos. Con Chrome no hay ningun problema.

Supongo que esos problemas son parte de la "delicia" de programar multi-browser.

Salu2



(http://imageshack.us/a/img811/4082/collision.jpg)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 23, 2012, 11:47:50 AM
Quote from: PiXeL on October 17, 2012, 01:28:44 PM
Pinta genial! :D Aunque para los hardcore se nos queda un poco corto aún, pero va por buen camino.


Nada más se pueda portaré alguno de mis juegos al completo.
Según veo no se pueden crear Structs aún, ¿no?
¿Permitirás usar load_png?


Este código hace explotar DivGO sobremanera xD




program vilanet;


global
   music;
   wavs[10];


   //MODO DE PANTALLA Y FPS
   ancho_pantalla=480;
   alto_pantalla=800;
   frameskip=2;
   _fps=25;
   
   //UI
   matabotones;
   id_boton_menu;
   opcion_menu;


   ready;
   doble_clic;
   dificultad;
   distancia;
   obstaculos_en_pantalla;
   puntos;
   fuente;
   
   //DIVGO!!!
   os_id=1003;
   focus_status=1;
   
Private
   graph_loading;
   
Local
   i;
   accion;
begin
   //establecemos la pantalla a utilizar y su tamaño
   frame;
   
   //inicializamos el modo gráfico, fps y nombre de la ventana
   set_mode(480,800);
   set_fps(_fps,frameskip);
   
   //ponemos el gráfico de "cargando"...
   //graph_loading=load_png("loading.png");
   put_screen(0,graph_loading);
   frame; //tengo que hacer 2 frames para que lo de arriba funcione :|
   frame;
   //unload_map(0,graph_loading);
   
   //cargamos los recursos a utilizar durante todo el juego
   carga_sonidos();
   
   //cargamos el fpg de gráficos
   load_fpg("fpg/vilanet.fpg");
   
   //la fuente
   fuente=load_fnt("fpg/1.fnt");
   
   //si no estamos en android, ponemos algo para localizar el cursor
   if(os_id!=1003)
      mouse.graph=71;
   end
   
   //y finalmente el menú
   //menu_tactil();
   
   juego();
end


process juego()
Private
   retraso=100;
   retraso_esquiador;
   anterior;
   nuevo;
begin
   //graph=get_screen();
   let_me_alone();
   clear_screen();
   controlador();
   puntos=0;
   distancia=0;
   obstaculos_en_pantalla=0;
   x=ancho_pantalla/2;
   y=alto_pantalla/2;
   start_scroll(0,0,11,0,0,15);
   //scroll[0].camera=camara();
   camara();
   prota();
   ready=0;
   write_int(fuente,ancho_pantalla,0,2,&puntos);
   
   //ponemos la canción de fondo del juego
   //music=load_song("ogg/2.ogg");
   //play_song(music,-1);
   music=load_sound("ogg/2.ogg");
   sound(music);
   ready=1;
   loop
      distancia++;
      puntos+=1+(dificultad/3);
      while(alpha>0) alpha-=5; frame; end   
      dificultad=6+(distancia/100);
     
   //   if(rand(0,100)=<dificultad)
         if(obstaculos_en_pantalla<5)
            if(retraso>50-dificultad*2)
               loop
                  nuevo=rand(1,5);
                  if(nuevo!=anterior) break; end
               end
               obstaculo(nuevo,rand(15,19));
               anterior=nuevo;
               retraso=0;
            else
               retraso++;
            end
         end
   //   end
      if(retraso_esquiador>100)
         retraso_esquiador=rand(-100,0);
         esquiador(rand(1,5));
      else
         retraso_esquiador++;
      end
   
      //botón esc, salir
      if(key(_esc))
         while(key(_esc)) frame; end
         let_me_alone();
         //graph=get_screen();
         x=ancho_pantalla/2; y=alto_pantalla/2; z=-100;
         //menu_tactil();
         //from alpha=255 to 0 step -15; frame; end
         //unload_map(0,graph);
         break;
      end
      frame;
   end
end


Function carga_sonidos();
Begin
   from i=1 to 7;
      //wavs[i]=load_sound("wav/"+i+".wav");
   end
End


Function sonido(num);
Begin
   //play_sound(wavs[num],0);
End


//hace una capa de emulación del táctil para pc y gestiona el boton de volver
Process controlador();
Begin   
   loop
      if(mouse.left)
         dedo(mouse.x,mouse.y);
      end
      /*for(i=0; i<10; i++)
         if(multi_info(i, "ACTIVE") > 0)
            dedo(multi_info(i, "X"),multi_info(i, "Y"));
         end
      end*/
      frame;
   end
End


Process dedo(x,y);
Begin
   priority=1;
   graph=71;
   alpha=0;
   frame;
End


Process prota();
Private
   retraso;
   anim;
Begin
   //flags=B_VMIRROR;
   x=ancho_pantalla/2;
   y=alto_pantalla-70;
   z=-2;
   graph=5;
   loop
      if(anim<10-(dificultad/5))
         anim++;
      else
         if(graph<10) graph++; else graph=5; end
         anim=0;
      end
      if((os_id==1003 and mouse.left) or os_id!=1003)
         if(x<mouse.x)
            x+=20;
            if(x>mouse.x) x=mouse.x; end
         else
            if(x>mouse.x)
               x-=20;
               if(x<mouse.x) x=mouse.x; end
            end
         end
      end
      if(x<(ancho_pantalla/10)) x=ancho_pantalla/10; end
      if(x>ancho_pantalla-(ancho_pantalla/10)) x=ancho_pantalla-(ancho_pantalla/10); end
      if(retraso>100)
//         if((os_id==1003 and mouse.left and mouse.y<(alto_pantalla/4)*3) or (os_id!=1003 and mouse.left))
//            disparo();
//            retraso=0;
//         end
      else
         retraso++;
      end
      if(accion<0) break; end
      frame;
   end
   if(accion==-1) explosion(); end
   if(accion==-2) sonido(5); from size=100 to 0 step -10; frame; end end
   gameover();
End


Process disparo();
Begin
   x=father.x;
   y=father.y;
   z=-1;
   graph=4;
   size=200;
   while(y>-100)
      if(accion==-1)
         from alpha=255 to 0 step -30;
            size+=3;
            frame;
         end
         break;
      end
      y-=20;
      angle+=20000;
      frame;
   end
End


Process obstaculo(pos_x,graph);
Private
   id_col;
   pos_x; //FAILURE!
Begin
   y=-100;
   if(graph==18) pos_x=1; end
   if(graph==19) pos_x=5; end
   if(graph==18 or graph==19)
      y=-600;
   end
   x=((pos_x-1) * (480/5))+(480/10);
   z=-1;
   size=150;
   if(collision(type obstaculo))
      //signal(s_kill,id);
   end
   size=100;
   obstaculos_en_pantalla++;
   loop
      if(id_col=collision(type prota))
         if(graph==18 or graph==19)
            id_col.accion=-2;
         else
            id_col.accion=-1;
         end
      end
      if(graph<18)
         if(id_col=collision(type disparo))
            if(graph==17) //explosion
               explosion();
            end
            id_col.accion=-1;
            if(graph==15 or graph==16) sonido(3); end
            break;
         end
         if(y>alto_pantalla+100) break; end
      else
         //barrancos
         if(y>alto_pantalla+600) break; end
      end
      y+=3+dificultad;
      frame;
   end
   //explosion
   from alpha=255 to 0 step -30; y+=3+dificultad; frame; end
   obstaculos_en_pantalla--;
End


Process explosion();
Private
   anim;
Begin
   sonido(4);
   x=father.x;
   y=father.y;
   z=-2;
   graph=22;
   while(graph<27)
      if(anim==4) graph++; anim=0; else anim++; end
      size+=10;
      alpha-=5;
      y+=3+dificultad;
      frame;
   end
     
End


Process esquiador(pos_x);
Private
   id_col;
   pos_x;
Begin
   x=((pos_x-1)*(480/5))+(480/10);
   y=-100;
   z=0;
   graph=20;
   size=150;
   if(collision(type obstaculo))
      esquiador(rand(1,5));
      //signal(s_kill,id);
   end
   size=100;
   if(collision(type obstaculo))
      //signal(s_kill,id);
   end
   while(y<alto_pantalla+100);
      if(graph==20)
         if(id_col=collision(type disparo))
            id_col.accion=-1;
            graph=21;
            sonido(2);
         end
         if(collision(type obstaculo))
            graph=21;
            sonido(3);
         end
         if(collision(type prota))
            puntos+=1000;
            sonido(2);
            break;
         end
         y+=6+dificultad;
      else
         y+=3+dificultad;
      end
      frame;
   end
End


Process camara();
Begin
   loop
      scroll.y0-=3+dificultad;
      frame;
   end
End


Process gameover();
Begin
   delete_text(all_text);
   write(fuente,ancho_pantalla/2,(alto_pantalla/4)*3,4,puntos);
   x=ancho_pantalla/2;
   y=(alto_pantalla/2);
   graph=705;
   z=-10;
   while(is_playing_song()) frame; end
   let_me_alone();
   delete_text(all_text);
   juego();
   //menu_tactil();
end


Process get_screen();
Begin
End


Process load_song(string basura);
Begin
End


Process is_playing_song();
Begin
End


Process fade_music_off();
Begin
End


En la versión 0.12 no funcionan las tablas asi que wavs[10] no funciona y detiene todo. Esto ya esta arreglado para la próxima versión.

Por el momento lo que tengo ya para la próxima versión:
- declarar tablas: mitabla[12]
- frame ya funciona como div o muy similar
- load_png(), load_svg(), load_jpg(), load_gif(), load_bmp();

Lo que quiero terminar y todavía está pendiente:
- locales: father, brother, son;
- mas funciones: out_region(); get_pixel(); map_get_pixel(); graphic_info();

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on October 23, 2012, 12:28:43 PM
Apunta también la local id! Creo que en algunos de tus ejemplos la utilizas para controlar un texto
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 09, 2012, 05:13:08 PM
Ya disponible nueva versión 0.14, novedades:
  - Nuevas funciones disponibles: out_region(); get_pixel(); map_get_pixel(); graphic_info(); stop_scroll(); collision_box(); load_png(); load_svg(); load_jpg(); load_gif(); load_bmp();
  - Nuevas variables locales: id, father, son
  - Ahora se pueden declarar tablas: mitabla[9]
- Colisiones "pixel perfect" con la función collision(); y se mantiene las colisiones por cajas con collision_box(); //esta última es mas rápida
  - Cambios en el entorno de trabajo de DivGO: lista de procesos y lista de fpgs cargados desde el código.

Y como siempre, puede que me deje alguna cosa, más info en la web de DivGO. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on November 09, 2012, 07:25:15 PM
EXCELENTE.. PROBANDO



Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 12, 2012, 11:51:36 PM
Ya esta disponible para descargar la versión 0.14!  8)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 28, 2012, 07:55:10 PM
En breve subiré la versión 0.16, había un bug que me tenía bloqueado.  :)
Un resumen de lo que habrá en esta próxima versión de Div GO:
Mas optimización, en esta versión corre un mayor numero de procesos y la colisión pixel perfect es también mas rápida.  8)
Funciones: write_in_map(); new_map(); itoa();
En esta versión se arregla lo de juntar el código a los paréntesis: if(key(_left))x++;end
Y otro fallo arreglado... ahora se declaran las variables pasadas en los procesos como privadas, ej: process nombre_proceso(variable_inventada); //variable_inventada será una variable private dentro del proceso nombre_proceso

Y hay mas novedades cuando actualice en breve.  ;)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on November 28, 2012, 10:42:32 PM
PROBANDO
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 29, 2012, 10:51:50 AM
Quote from: l1nk3rn3l on November 28, 2012, 10:42:32 PM
PROBANDO

Todavia no esta subido, para esta tarde o el viernes por la tarde mirare de actualizar Div GO.  :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 30, 2012, 04:42:17 PM
Ya está disponible Div GO 0.16, con algunas novedades mas con respecto a lo que dije el otro día:
- scan_code (en el ejemplo de las key se puede probar)
- variable local fx = (fx_normal, fx_source_in, fx_source_out, fx_source_atop, fx_dest_over, fx_dest_in, fx_dest_out, fx_dest_atop, fx_lighter, fx_darker, fx_copy, fx_xor)
- variable global para cambiar el estilo de los textos text_style = (txt_paint_normal, txt_paint_italic, txt_paint_bold, txt_stroke_normal, txt_stroke_italic, txt_stroke_bold) (en el ejemplo de write se puede probar)
- función is_playing_sound(); que devuelve 0 o 1 dependiendo si el sonido esta reproduciéndose.

Y por el momento eso es todo.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on November 30, 2012, 04:54:18 PM
Mi más sincera enhorabuena :)


De hecho, en breve utilizaré DivGO para crear un simulador online de un programa, este: http://www.pixe.es
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on November 30, 2012, 05:04:52 PM
que son esas fx_*?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 30, 2012, 05:25:04 PM
Quote from: SplinterGU on November 30, 2012, 05:04:52 PM
que son esas fx_*?

Es una variable local como x, y o z, para crear distintos efectos graficos. Algo que ofrece canvas de serie y tenia que aprovecharlo de algun modo y hay algunos muy interesantes, la verdad. :)

Quote from: PiXeL on November 30, 2012, 04:54:18 PM
Mi más sincera enhorabuena :)


De hecho, en breve utilizaré DivGO para crear un simulador online de un programa, este: http://www.pixe.es (http://www.pixe.es)

Espero que DivGO te vaya bien para ese simulador, ya diras que tal. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on November 30, 2012, 09:59:43 PM
si, si, imagino que son variables locales, pero de donde salio eso? es nuevo? existe en algun like div?
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on November 30, 2012, 10:12:11 PM
Por cierto, estaría bien montar un sistema para poder guardar los juegos creados online y compartirlos fácilmente... Ese sería un gran futuro para DivGO :d
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 30, 2012, 10:20:42 PM
Quote from: SplinterGU on November 30, 2012, 09:59:43 PM
si, si, imagino que son variables locales, pero de donde salio eso? es nuevo? existe en algun like div?

Es nuevo o distinto a otros like div. En la documentación voy añadiendo también las cosas nuevas de DivGO aparte, por ejemplo el text_style es nuevo en esta versión o las collision_box. Voy inventando nuevas funciones y variables para aprovechar cosas del propio canvas, o como las collision_box para optimizar las colisiones.

Quote from: PiXeL on November 30, 2012, 10:12:11 PM
Por cierto, estaría bien montar un sistema para poder guardar los juegos creados online y compartirlos fácilmente... Ese sería un gran futuro para DivGO :d

Si, eso es algo que hace tiempo tengo en mente. Usare de base una web que ya tengo creada y solo será adaptarla para que se puedan crear juegos (guardar los proyectos, códigos, sonidos y gráficos) y publicarlos una vez acabado.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on November 30, 2012, 10:34:12 PM
aca tambien hay collision_box pero con el tema del size y angle, no se que tan performantes son.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on December 04, 2012, 05:50:41 PM
He tenido un problema, testeando Write_in_map.


Me parseas el entrecomillado!

QuoteProgram test;
Begin
   set_mode(640,480);
   graph=write_in_map(0,"YEAH BITCH! SCIENCE BITCH!!! :D",4);
    x=320;
    y=240;
    loop
       from size=100 to 110; frame; end
        from size=110 to 100 step -1; frame; end
       frame;
    end
End

[size=78%]Y sale en pantalla esto: yeahbitch!sciencebitch!!!:d[/size]
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 05, 2012, 12:14:20 AM
Quote from: PiXeL on December 04, 2012, 05:50:41 PM
He tenido un problema, testeando Write_in_map.


Me parseas el entrecomillado!

QuoteProgram test;
Begin
   set_mode(640,480);
   graph=write_in_map(0,"YEAH BITCH! SCIENCE BITCH!!! :D ",4);
    x=320;
    y=240;
    loop
       from size=100 to 110; frame; end
        from size=110 to 100 step -1; frame; end
       frame;
    end
End

[size=78%]Y sale en pantalla esto: yeahbitch!sciencebitch!!!:d[/size]

También si haces una llamada a un proceso pasando un texto, ej: nombre_proceso("Hola", 100, 100); //el compilador quita las comillas simples y dice que no reconoce la variable hola.  ;D Es mu cachondo.
Tengo que hacer que todo lo que este entre comillas sea ignorado por el compilador (esto solo funciona con write). Mirare de sacar la 0.17 con arreglos de bugs tontos, que cada versión quiero añadir novedades y voy dejando detrás una bonita lista de bugs.

Gracias por el reporte!

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: DCelso on December 05, 2012, 12:38:39 AM
no entiendio muy bien este proyecto.
Se necesitarían los binarios de bennu para la plataforma en la que corres el navegador no?
es decir, si abro la web con mi navegador de wii, qué pasaría.
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on December 05, 2012, 01:25:12 AM
DCelso, esto no tiene relacion con bennugd, es un like-div independiente... (a menos que me equivoque)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 05, 2012, 02:17:10 PM
DCelso como ha dicho SplinterGU, Div GO no es un port de Bennu es otro like-div aparte. Hay un port de Bennu hecha en Native Client para Chrome.

No se si en Wii funcionara, pero si tengo oido que en xbox360 si que funciona, también funciona en iPhone y Android. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on December 06, 2012, 12:55:33 AM
Interesantes avances .. excelente
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 18, 2012, 03:35:46 PM
Aquí la lista con las novedades para la próxima versión (0.18), estará a punto para esta semana:
- Arreglo de algunos bugs, como el parseo dentro de los textos, esto se notaba con el write_in_map();
- Ya estarán disponibles las regiones, se pueden definir todas las que se quieran y añadir los procesos y scrolls
- Ya se pueden iniciar varios start_scroll y ponerlo en distintas regiones o en la misma, añadiéndolo en la misma se dibujan los scrolls uno detrás de otro simulando mas planos
- Nuevas funciones de sombreado para textos y gráficos: shadow_draw(); shadow_text();

Eso es lo que ya tengo preparado y espero poder añadir o corregir alguna cosa más.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on December 19, 2012, 02:52:32 PM
Mola! :D


Mucho ánimo con ello!


Siendo honesto, el motivo por el cual no he hecho un juego aún con tu herramienta es que no sé vivir sin FROM xD


Y tampoco me ha funcionado este for:

for(x=100;x<600;x++)

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 19, 2012, 09:12:22 PM
Hola PiXel,

Acabo de probar ese for y me ha funcionado bien en la versión 0.16 y el from to step también esta disponible desde la 0.10 o asi...

   
    for(x=100;x<600;x++) //bucles for disponible
        xput(0, 2, x, 60, 0, 20, 0, 0);
        xput(0, 2, x, 170, 0, 20, 0, 0);
    end

    from x=100 to 600 //bucles for disponible
        xput(0, 2, x, 60, 0, 20, 0, 0);
        xput(0, 2, x, 170, 0, 20, 0, 0);
    end



He cambiado en el ejemplo de inicio el bucle que hay por el que me indicas y ha funcionado...  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 22, 2012, 12:44:52 PM
Ya disponible la versión 0.18 de Div GO, en breve también para descargar.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 30, 2013, 11:21:58 PM
Hacía tiempo que no escribía nada sobre Div GO... en breve subire la versión 0.20.

Resumen de lo que ya hay para esta próxima versión:
- Cambios gordos en el compilador: mas optimizado, ahora avisa de mas errores posibles errores.
- Cambios al generar el código en la web, hay más cosas integradas en la librería y queda más limpia la web.  :)
- Nuevas Funciones: date(); time(); gradient_text(); gradient_draw(); set_title(); start_mode7(); stop_mode7();
- Arreglado set_fps, no se podía cambiar la velocidad (solo los saltos) e iba mas rápido de lo normal, ahora se puede cambiar en cualquier momento.
- Añadido mod y su equivalente %

Durante estos días ire añadiendo y arreglando más cosas, antes de subirlo.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 05, 2013, 11:01:11 PM
DivGO 0.20 ya disponible!! ...solo en la web, en breve estará para descargar.  :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 10, 2013, 02:12:19 PM

Pos al final no habrá versión 0.20 para descargar, tiene demasiados problemas de compatibilidad con IE9, Chrome y Safari.   :-[
La versión 0.21 corregirá estos problemas y también solucionara algunos bugs.


Intentare que este lo mas pronto posible.  :)


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on February 10, 2013, 02:37:50 PM
No te preocupes, que por ahora no urge.


El problema es que la mayoría de los que estamos por aquí, estamos acostumbrados a un nivel bastante complejo de DIV por lo que la falta de algunas funciones nos echa bastante para atrás.


Aún así, tengo ganas de hacer algo con él xD
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on February 11, 2013, 03:51:58 PM
veo que fecha y hora están implementados, este saca los datos del computador donde corre, seria bueno sacar esta info del servidor ?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 14, 2013, 10:44:49 PM
Subida la versión 0.21 (esta si tendrá descarga en breve), arregla problemas de compatibilidad de la anterior version y corrige varios bugs, alguno realmente importante. Como novedades: 1 función nueva 'get_browser()' y la variable local 'smooth', esta variable quita el suavizado del grafico del proceso o lo activa. Y también he realizado algunos cambios en el entorno para facilitar el trabajo sin las molestas ventanitas, ahora se pueden ocultar.

Quote from: PiXeL on February 10, 2013, 02:37:50 PM
No te preocupes, que por ahora no urge.


El problema es que la mayoría de los que estamos por aquí, estamos acostumbrados a un nivel bastante complejo de DIV por lo que la falta de algunas funciones nos echa bastante para atrás.


Aún así, tengo ganas de hacer algo con él xD

Hola PiXeL,

Voy dando detalles de los avances, mejor dar señales de vida e ir poniendo los cambios que se van realizando. :)


Quote from: emov2k4 on February 11, 2013, 03:51:58 PM
veo que fecha y hora están implementados, este saca los datos del computador donde corre, seria bueno sacar esta info del servidor ?

Pues solo se puede mostrar la fecha y hora del ordenador que lo ejecuta. Esto ira bien para obtener cuando se conecto el usuario por última vez (para juegos online), y guardar esta información en una bbdd. La versión 0.21 la función get_browser devuelve en que navegador se esta ejecutando, a que resolución, idioma, etc...

Que lo disfrutéis.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on February 15, 2013, 09:27:52 AM
Lo dije por esta frase xD
QuoteIntentare que este lo mas pronto posible.  [/size]



Tranquilo que cuando tu Div online sea bien funcional HARÉ PORTS COMO CHURROS.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 15, 2013, 10:24:58 PM
Ya esta disponible la versión 0.21 para descargar.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 01, 2013, 09:56:01 PM
 Ya está disponible la versión 0.22, tanto online como para descarga.

En esta versión se corrigen muchos bugs.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 17, 2013, 07:28:58 PM
Hola,

Aquí os dejo mi primer proyecto con Div GO, todavía no está terminado, es una beta, y junto con los ejemplos que voy poniendo me sirve para ir probando los avances de Div GO.  :)

The Little Big Apple (http://www.divgo.net/proyectos/the-little-big-apple/index.html)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on April 04, 2013, 01:00:58 AM
Está quedando chulo chulo.
Antes de empezar a meterle mano a tu engine me gustaría ver como anda el tema sonido, tienes pensado meterle mano pronto a esta sección del engine?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 09, 2013, 07:45:01 PM
Esta semana si todo va sobre ruedas habrá versión 0.24 de Div GO, las novedades que tengo actualmente:
- la sentencia switch() ya esta disponible en esta versión
- scroll.ratio, scroll.camera, ctype = (c_screen y c_scroll) ya funcionan
- nuevas funciones: screen_copy(); round(); //esta ultima es para redondear valores decimales
- nuevas variables: scroll.fx, view_full_size_scale, view_full_aspect_ratio //estas dos últimas funcionan con set_mode()... por ej: set_mode(320, 240, view_full_size_scale)
- y solucionado bastantes bugs y conseguida una gran optimización con las colisiones.  :D

Quote from: Erkosone on April 04, 2013, 01:00:58 AM
Está quedando chulo chulo.
Antes de empezar a meterle mano a tu engine me gustaría ver como anda el tema sonido, tienes pensado meterle mano pronto a esta sección del engine?
Div GO actualmente dispone de las funciones de sonido: load_sound(), sound(), stop_sound() y is_playing_sound()... si que tengo que darle un repaso y añadir alguna función mas aun asi he visto que todavía cada navegador acepta formatos diferentes y no acaban de pulir definitivamente la api de sonido de html5 como dios manda, habrá que esperar todavía un poco.  ???

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 13, 2013, 04:41:53 PM
Ya está la versión 0.24 para descargar. :)

Como última novedad para esta versión he añadido las variables locales shear_x y shear_y.

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on May 21, 2013, 10:38:28 PM
Holas :)


ME ENCANTA :)


He encontrado otro pequeño bug, idiota pero pa que conste: No permite utilizar "=>". Sé que está mal escrito, pero DIV me lo perdonaría xD


Pd: Y esto también lo rompe todo xD
Quote

Program a;
Private
   gravedad;
    x_inc;
Begin
   set_mode(800,600);
    graph=write_in_map(0,"DIV LO PETA",4);
    x=400;
    loop
        if(key(_left)) x_inc-=3; elseif(key(_right)) x_inc+=3; end
        if(key(_up) and gravedad>=0) gravedad=-30; end
        y+=gravedad;
        x+=x_inc;
        if(y<500) gravedad++; else gravedad=-gravedad/2; y=500; end
        if(x_inc>0) x_inc--; elseif(x_inc<0) x_inc++; end
        if((x>750 and x_inc>0) or (x<50 and x_inc<0)) x_inc=-x_inc; end
        if(rand(0,10)==0) huele(); end
       angle-=x_inc*600;
       frame;
    end
End


Process huele();
Private
   x_objetivo;
    x_inc;
Begin
   x_objetivo=rand(100,600);
    y=rand(0,600);
   graph=write_in_map(0,"lo peta mogollón",4);
   x=900;
    size=rand(100,150);
    while(x>x_objetivo)
       x+=((x_objetivo-x)/5);
       frame;
    end
    while(x>-100)
       x_inc++;
        x-=x_inc;
       frame;
    end
End
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 22, 2013, 01:24:11 PM
Del código, lo que peta es el primer while que hay dentro de huele()... es como si hiciera un bucle infinito y no llega a salir nunca del mismo.



    /* while(x>x_objetivo)
         x+=((x_objetivo-x)/5);
         frame;
    end */


Al comentarlo se ve el texto rebotando por la pantalla.


Lo del operador '=>' o '=<', no me había dado cuenta que esto así también funcionaba en Div, para la próxima versión también estará disponible.  :)
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on May 22, 2013, 04:38:43 PM
Dale caña Amaka, tiene una pinta excelente!


Por cierto, me encantaría que algún día esto fuera portable con un editor como el Notepad++ para programar los juegos, daría mucha libertad a los desarrolladores ;)
Animo y enhorabuena por el curro que te estás pegando.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on May 22, 2013, 05:20:12 PM



Quote from: AmakaSt on May 22, 2013, 01:24:11 PM
Del código, lo que peta es el primer while que hay dentro de huele()... es como si hiciera un bucle infinito y no llega a salir nunca del mismo.
    /* while(x>x_objetivo)
         x+=((x_objetivo-x)/5);
         frame;
    end */
Al comentarlo se ve el texto rebotando por la pantalla.

Pero el código está bien, ¿no? Es una ecuación que provoca que el proceso se coloque de forma suavizada en una posición concreta
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 22, 2013, 11:36:26 PM
El código while está bien, si. Es el frame; dentro del while lo que falla, en DivGO frame no actúa igual que Div, por lo que el while() acaba siendo un bucle sin retorno que hace que el navegador quede bloqueado y no se llega a dibujar nada en el canvas. Frame se puede poner fuera del bucle o dentro de loop, por el momento... Sigo buscado un modo optimo de conseguir emular el funcionamiento del frame de Div sin que caiga el rendimiento en picado.

Aquí una pequeña modificación en tu código para que funcione, cambiando los 2 while por un único loop:

Program a;
Private
   gravedad;
    x_inc;
Begin
   set_mode(800,600);
    graph=write_in_map(0,"DIV LO PETA",4);
    x=400;
    loop
        if(key(_left)) x_inc-=3; elseif(key(_right)) x_inc+=3; end
        if(key(_up) and gravedad>=0) gravedad=-30; end
        y+=gravedad;
        x+=x_inc;
        if(y<500) gravedad++; else gravedad=-gravedad/2; y=500; end
        if(x_inc>0) x_inc--; elseif(x_inc<0) x_inc++; end
        if((x>750 and x_inc>0) or (x<50 and x_inc<0)) x_inc=-x_inc; end
        if(rand(0,10)==0) huele(); end
       angle-=x_inc*600;
       frame;
    end
End


Process huele();
Private
   x_objetivo;
    x_inc;
    paso = 0;
Begin
   x_objetivo=rand(100,600);
    y=rand(0,600);
   graph=write_in_map(0,"lo peta mogollón",4);
   x=900;
    size=rand(100,150);
     
    loop
   
    if (paso == 0)
        x+=((x_objetivo-x)/5); if (x>x_objetivo) paso = 1; end               
       else
        x_inc++; x-=x_inc; if (x>-100) paso = 0; end
    end
       frame;
    end
End


Y ahora un ejemplo que incluirá la versión 0.26, con algunas de las nuevas funciones que acompañara esta versión. :)

program ejemplo_video;
global
    media, id_peli, punto_pausado, en_reproduccion;
   
begin
    set_mode(m320x240);
    screen_color(#000);

    set_fps(30, 0);
   
    set_title("Div GO : Ejemplo de Manejo de Videos");

    media = load_video("videos/trailer.mp4", 0);
   
    video(media, 255, 0);
    id_peli = video(media, 255, 0);

    //move_video(id, flags, angle, alpha, x, y, ancho, alto)
    move_video(id_peli, 1, 180000, 20, 0, 300, 320, 120);

    text_size  = 50;
    text_color = #fff;
    write(0, 160, 220, 4, "Pulsa Espacio para Pausar y Enter para Continuar");
   
    text_color = #000;
    write_int(0, 5, 5, 0, offset en_reproduccion);
           
    loop
        en_reproduccion = is_playing_video(media); //funciona igual que is_playing_sound()
       
        if (key(_space)) punto_pausado = pause_video(media); end
        if (key(_enter)) continue_video(media, punto_pausado); end
        if (key(_esc)) stop_video(media); end

        frame;
    end
end


En breve pondré las novedades de la 0.26, que hay de muy interesantes. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 23, 2013, 10:41:18 PM
Lista de novedades para la versión 0.26 de DivGO, lo que ya tengo listo:
  - load_ttf(); load_oft(); load_woff(); //carga de fuentes
  - load_video(); video(); move_video(); change_video(); pause_video(); continue_video(); stop_video(); is_playing_video(); y variable: all_sound; //reproducción y manejo de video
  - pause_sound(); continue_sound(); change_sound();
  - mejoras en el funcionamiento de las funciones de sound
  - arreglado varios bugs y mejoras varias en la lib de DivGO

Lo que me falta para completar esta versión:
  - los códigos de bloqueo de start_scroll, que a estas alturas (sobre todo por pereza) todavía no está disponible. :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on May 27, 2013, 12:36:57 PM
Yo aun no me he enterado bien de cómo va esto ¿Se supone que es un compilador de código DIV para ejecutar los juegos a través de HTML5 o algo así? ¿Hasta qué punto será compatible, o se tiene pensado que sea, respecto al viejo DIV?
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on May 27, 2013, 01:25:38 PM
Es un entorno completo Drumpi, tiene editor de código, visor "muy verde" pero visor de fpg y compilador, todo online, tiene varios programas de ejemplo que puedes cargar y compilar/ejecutar online ya.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 01, 2013, 07:09:31 PM
Ya disponible la versión 0.26. Por el momento solo online, se puede probar las funciones de video y sonido, y la carga de fuentes ttf y otf con los nuevos ejemplos.  :)

En breve subo la descarga.

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 02, 2013, 03:26:53 PM
Ya está para descargar.  :)
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on July 09, 2013, 05:09:49 AM
Hola gente, quería comentar que tengo un IDE para trabajar en local ya montado para DivGO.


Caracteristicas:
- 100% portable.
- Sin dependencias externas [incluye servidor web+php].
- Sin instalación.
- Basado en Notepad++.
- Scripts:
- + F6 -> Compilar y Ejecutar.
- + F7 -> Run xampp [first time].
- + CONTROL+F1 -> Despliega una ventana con la documentación de la palabra donde se encuentra el cursor de texto.


Lo tengo ya funcionando, si alguien está interesado en el solo tiene que pedirmelo y se lo paso.
Creo que es bastante cómodo jeje.. simplemente para usarlo se hace esto:


1 - Abrir el Notepad++
2 - F7 para lanzar el servidor xampp "ya configurado y portable sin dependencias".
3 - Disfrutar programando  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on July 10, 2013, 08:37:02 PM
Yo estoy interesado, te envie un mensaje !! no me has contestado !
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on July 11, 2013, 04:07:57 AM
Buenas!
Pues no tengo ese mensaje, que raro, estás seguro que lo enviaste?
Te subo el IDE a mi dropbox y en cuanto esté cuelgo el link para el que lo quiera probar.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on July 11, 2013, 04:51:54 AM
Link al entorno de desarrollo para DivGO  ;)
DESCARGA: https://dl.dropboxusercontent.com/u/65979707/Dev-DivGO.zip (https://dl.dropboxusercontent.com/u/65979707/Dev-DivGO.zip)


Dentro del Zip hay un archivo LEEME.TXT, leedlo para estar al tanto de como usar esto, aunque básicamente es lo mismo que el notepad++ para bennuGD con algún añadido mas, por ejemplo el tema de los scripts ha sido un poco complejo ya que hay que hacer algunas cosas mas que hemos estado ajustando entre Amaka y yo para llegar a un acuerdo sobre como compilar en local desde el IDE sin que toque demasiado los guebos XD.. finalmente llegamos a un sistema sencillo que parte del trabajo la hace el notepad++ y parte el compilador.php y así se logra compilar de forma transparente para el programador que se limitará simplemente a pulsar F6 y ver el resultado en su navegador.


A disfrutarlo.


NOTA: Para los mas curiosos, veréis que hay además de un script llamado correr.bat, un exe que ayuda a la compilación programado en otro lenguaje, incluso el nombre del lenguaje para el resaltado de sintaxis lleva el nombre de otro software, no quería ponerme a editar todo eso por que tiene un rato de curro.. si a alguien no le gusta verlo que le cambie el nombre ;) , lo digo ya antes de que alguien lo vea y comente.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on July 12, 2013, 09:04:39 AM
Lo que le hace falta a DivGO es un entorno de desarrollo online :)


Si esto sirve, podríamos mirar de hacerlo online
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 15, 2013, 10:24:11 PM
Bien, pues ahora ya doy por finalizada la versión 0.28.

Mañana si todo va bien lo subo online y para descarga. Ahora solo me falta actualizar la documentación y listo.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on July 15, 2013, 10:53:40 PM
¿Has mejorado el problema aquél que provoqué poniendo dos bucles en un mismo proceso?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 16, 2013, 09:48:27 PM
Ya disponible la v0.28 (por el momento solo online), las novedades:

funciones:
  - near_angle(), constraint(), sizeof()
  - find_local_storage(), load_local_storage(), save_local_storage(), delete_local_storage(); //guarda datos en local
   - find_session(), load_session(), save_session(), delete_session(); //guarda datos de sesion
variables:
   - timer[9], num_process, s_kill_tree, s_sleep_tree, s_freeze_tree, s_wakeup_tree
bucle: ya disponible repeat ... until()
bugs y mejoras:
   - ahora el codigo escrito en el editor hace autoguardado usando localStorage
   - arreglado problema con declaracion de variables locales
   - arreglado problema con la detencion de errores en el compilador
   - solucionado problema con espacios si hay una funcion dentro de otra, ej: new_map( , , , rgb(255, 128, 0) );
   - arreglado problema con separacion de funcion a operador aritmetico, ej: rand(0,360)*1000; //ahora funciona
   - ya disponible el operador logico xor
   - solucionado problema con fade(r, g, b, velocidad); y añadida velocidad a fade_on(velocidad); fade_off(velocidad);
   - ahora compilador.php, carga archivo prg externo local, para futuros ide (actualmente disponible Notepad++ de Erkosone);

También he actualizado el ejemplo de procesos: http://www.divgo.net/index.php?ejemplo=7 (http://www.divgo.net/index.php?ejemplo=7)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 17, 2013, 08:48:52 PM
Ya está la versión 0.28 disponible para descargar.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on July 18, 2013, 07:04:01 PM
Gracias por el IDE Erkosone , una consulta el ejemplo de video funciona ?? a mi no !
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 18, 2013, 08:00:46 PM
Quote from: emov2k4 on July 18, 2013, 07:04:01 PM
Gracias por el IDE Erkosone , una consulta el ejemplo de video funciona ?? a mi no !

Hola emov2k4,

El ejemplo de video funciona bien, puede que te falle por compatibilidad con el formato. Cada navegador soporta mejor uno u otro formato, yo he probado con Firefox, Chrome y IE10 y funciona bien. Que navegador utilizas?

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on July 19, 2013, 03:22:49 PM
Que raro, tengo Firefox ultima versión y no me funciona.

PD: el IDE de notepad++ nome funciona, al corren xampp este se cierra por un error.

**********************
Configure el IDE con el EASYPHP y me funciona bien, pero no es portable
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on July 20, 2013, 03:20:00 AM
Hola emov2K4, el error quizá sea por que el servidor está configurado para mi equipo, es raro pero puede pasar, solo tienes que entrar en la carpeta del xampp y lanzar el ejecutable que trae para configurarlo, no recuerdo exactamente pero hay un archivo de texto donde explica que ejecutable es, es muy simple de hacer ;)
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on July 30, 2013, 08:48:34 PM
estuve haciendo pruebas y entendiendo mejor como funciona divgo, se que existe "storage" para guardar datos en local, pero quise implementar un json y me funciono super bien, ahora guardo el puntaje en base de datos con php y mysql .
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 02, 2013, 07:30:34 PM
Hola emov2k4,


Las storage son fáciles de usar:


        if (key(_enter)) save_local_storage(&guardar); end
        if (key(_space) and find_local_storage(&guardar)) load_local_storage(&guardar); end
        if (key(_esc) and find_local_storage(&guardar)) delete_local_storage(&guardar); end



Pero estas solo guardan los datos en el navegador, para guardar la información en una base de datos desde un servidor online es como lo has hecho tu.


Estuve mirando de que forma implementar funciones de guardado de datos a una base de datos sin necesidad de salir del código de DivGO, pero necesitas crear un archivo externo en php y crear las consultas a mysql desde ahí. Funcionan pero no queda integrado a DivGO. :P


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on August 02, 2013, 08:42:25 PM
se me ocurre como hacerlo.... como lo explico,

Hace un json con una sola variable de envio, y en div una función divjson(variable,linkphp).
entonces si queremos enviar varios datos solo basta con unir cadena y separarlo despues... ejemplo

datos="nombre-vidas-tiempo-otro-otro";

divjson(datos,"http://www.mipagina.com/datos.php")

y nosotros nos preocupamos de generar el php y separamos la cadena "datos" con un split.

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 11, 2013, 02:44:56 PM
Pues ya tengo 2 funciones para exportar datos e importarlos al juego:

save_external_data("ejemplo.php", &datos); //para exportar los datos a php
datos = load_external_data("ejemplo.php"); //para importar los datos a Div GO


Mirare de incluir un ejemplo (ejemplo.php) para las consultas a mysql.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on August 12, 2013, 05:15:35 PM
Excelente, muchas gracias !
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 05, 2013, 02:55:44 PM
En breve versión 0.30 de Div GO y las novedades:

funciones nuevas:
- xdraw(); move_xdraw(); delete_xdraw(); rgba(); load_image();
- load_external_data(); save_external_data(); //ahora se puede enviar y recoger datos desde archivos externos

variable nueva:
- all_xdrawing

función que cambia:
- load_image() vale para cargar todos los formatos web: png, jpg, bmp, svg, gif. Por lo que se elimina las funciones: load_png(); load_jpg(); ...

mejoras y bugs solucionados:
- solucionado problema con el dibujado de draw() cuando habia un scroll de fondo, hacía de mascara
- arreglado problema con la carga de imágenes (.jpg .gif .svg .bmp)
- ya se pueden llamar funciones desde funciones sin límites.
- solucionado pequeño problema con scroll.camera y ctype;
- mejorada la declaración de tablas, ahora se pueden declarar de la forma que se podía en Div y entremezclar strings en las mismas, ej: mi_tabla[10]; o mi_tabla[] = 1, 'Jose', 2, 'Amaka', 3, '...'; o mi_tabla[10] = 12, 20, 30;
- realizado grandes cambios internos a div go, ahora se consigue mucha velocidad con procesos en ejecución... un 200% o 300% mas rápido.

Con esta versión estoy tardando un poco, he tenido que testear más de lo que pensaba.  :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 09, 2013, 10:59:40 PM
Ya se puede probar online la versión 0.30, en breve lo pondre para descargar.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 11, 2013, 05:06:35 PM
Ya disponible para descargar la versión 0.30.

En la carpeta de ejemplos se incluyen algunos ejemplos más (ejemplo de uso de save_external_data o constraint) que no están en la opción desplegable de ejemplos, hay que cargarlo desde el botón examinar.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 09, 2013, 07:27:50 AM
Dándole los últimos repasos a la versión 0.32 de DivGO, lo nuevo que incluirá:

funciones:
- screen_smooth(); set_icon();
- texture_in_map();
- set_center(); set_point(); get_point(); get_real_point();

sección loading:
- ahora se puede iniciar el juego con un cargador personalizable, se debe poner dentro de program, antes de begin

variables sección loading:
- screen_paint; graph; x; y; size; angle; text; text_position; text_size; text_color; speed;

struct:
- ya se pueden declarar estructuras, pero todavía no acepta una lista de variables después del cierre END

mejoras y bugs solucionados:
- ahora funciona write_int con variables private y local
- arreglado problema con define_region y out_region cuando se pasa el juego a pantalla completa
- mode7 mas rápido y optimo

Y eso es todo por el momento.  8)

Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 15, 2013, 07:03:43 AM
Div GO 0.32 ya online, he añadido para esta versión el juego Super Paf! de ejemplo, adaptado con algunas de las nuevas funciones. Sorprendentemente Super Paf! funciono casi sin cambios de la versión Div.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on October 15, 2013, 04:50:21 PM
CORDIAL SALUDO,

BUENO EXCELENTE HERRAMIENTA PASANOS O COMPARTE LA VERSION 0.32 Y PUBLICAREMOS UN ENTORNO
PARA HTML5 ..  QUE YA TENEMOS COCINADO.. CON ALGUNOS EJEMPLOS PARA EMPEZAR

TODO EN MENOS DE 10MB CON WEBSERVER INCLUIDO..


EXCELENTE TRABAJO QUE TE HAS HECHO..


DIVGO LE HARA COMPETENCIA A CONSTRUCT 2 QUE ESTA QUE ARDE...  Y LLEVA LA DELANTERA
EN HTML5

OBVIAMENTE RESPETAREMOS TU COPYRIGHT EN EL INSTALADOR...



PREGUNTA PARA HACER UUN SISTEMA DE PLUGINS ESTILO CONSTRUCT 2,
PARA ECHARTE UNA MANO ..  COMO ADICIONAMOS FUNCIONES NUEVAS
AL MOTOR??? 
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on October 15, 2013, 08:36:23 PM
lo del loading me parece genial !!!  ;D

consulta, alguna posibilidad de incluir que el codigo solo funcione en un servidor especifico, digo para que no se roben el juego xD
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 15, 2013, 10:37:35 PM
Hola l1nk3rn3l,

Me alegra leer eso, en breve saco la versión 0.32 para descargar, la estoy testeando todavía. Cuando la subo online puedo probar como funciona en los dispositivos móviles.

Cree un sistema en el compilador que lee los prg sin necesidad de pasar por formulario, para que funcionara en el Notepad++ de Erkosone. Desde el entorno solo deberías de crear un archivo con el nombre appRoute.tmp en el mismo directorio donde esta compilador.php. En el appRoute.tmp tiene que estará la ruta del prg que desees compilar sin necesidad de pasar por el formulario, luego se elimina automáticamente appRoute.tmp. Puede que esto te de mas facilidad a la hora de hacer el entorno. :)

No he probado Construct 2, asi que no sé cómo funciona su sistema de plugins. Pero es muy fácil añadirle funciones nuevas a DivGO, solo debes añadir un js con las funciones nuevas que desees después del DivGOv032-min.js, en el proyector.php o el index.php.

proyector.php:
<script type="text/javascript" src="scripts/divGOv032-min.js"></script>
<script type="text/javascript" src="scripts/mis_funciones.js"></script> <!-- en este js todas las funciones nuevas, pero siempre despues de divGOv0XX-min.js -->

Luego al que debes de convencer de que hay funciones nuevas es al compilador.php, y es solo añadir tus funciones a la lista que hay.
compilador.php:
     ...
     array('new_map', 5),
     array('texture_in_map', 8),
                           
     array('write', 5),
     array('write_in_map', 3),
     array('write_int', 5),
                           
     array('get_pixel', 2, 3),
     array('map_get_pixel', 4, 5),
     array('move_text', 3),
     
     ... puedes añadir mas funciones: array('nombre_de_mi_funcion', 2, 5), //el primer valor del array es el nombre de la función, el segundo es el numero de argumentos obligatorios, el tercero es el numero de argumentos opcionales

No se si me he explicado bien. :P

Quote from: emov2k4 on October 15, 2013, 08:36:23 PM
lo del loading me parece genial !!!  ;D

consulta, alguna posibilidad de incluir que el codigo solo funcione en un servidor especifico, digo para que no se roben el juego xD

Con incluir la ruta completa en la carga de archivos (imagen, sonido, fuentes) ya no podrían mover tu juego de tu servidor... por ejemplo:
fichero = load_fpg("http://www.midominio.com/graficos/prota"); //ahora tu juego funciona en el servidor www.midominio.com

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 16, 2013, 07:07:37 PM
Ya disponible la versión 0.32 para descargar.  ;)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on October 17, 2013, 03:01:40 AM
estamos cocinando y ya entendimos el sistema de compilacion usando una ruta  en temporal..
  pero hay preguntas


1. como hacemos para distribuir el motor para crear una funcion exportar a html5 desde el IDE
(me explico..  que archivos debo incluir para correrlo en un dispositivo que soporte html5 y no necesariamente php)  solo .html y .js    para correrlo en dispositivos mobiles


digamos un directorio dentro del proyecto que solo tenga
index.html   y  motor.js   

que luego desde el IDE solo sea adicionar el PRG y los graficos,sonidos e incluirlos en una distribucion...
en el caso de exportar proyecto..



porque la idea de crear un IDE es que un novato pueda usarlo..



Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 17, 2013, 10:58:19 PM
Hola l1nk3rn3l,

Pues son solo dos los archivos necesarios:
DivGOv032-min.js y el index.html que genera proyector.php (adjunto la versión del proyector.php que genera el index.html dentro de la misma carpeta)
Luego las imágenes, sonidos y fuentes que se vayan a usar en el juego.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on October 18, 2013, 06:00:07 AM

ok revisaremos el adjunto


aqui tenemos un demo del sistema de divgo con instalador en solo 10mb




http://www.mediafire.com/download/vq3oe3dzegcn220/setup.zip (http://www.mediafire.com/download/vq3oe3dzegcn220/setup.zip)




desactivar el bloqueador de poppups(ventanas emergentes) en el navegador
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 18, 2013, 11:05:40 AM
Esta muy bien, la verdad!

Esto se lo pone aun mas fácil a los que quieran hacer sus juegos web con DivGO. :)
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on October 18, 2013, 02:38:33 PM
NOS FALTO COMENTAR QUE EL DEMO INCLUYE COSAS OCULTAS

- EL SERVIDOR WEB SE CARGA CUANDO ABRES EL NOTEPAD
- EL SERVIDOR WEB SE CIERRA CUANDO CIERRAS EL NOTEPAD

- SE VINCULA LOS PRG CON DIVGO
- SE CREAN ACCESOS DIRECTOS EN EL MENU INICIO
- SE PUEDE CORRER CON DIFERENTES NAVEGADORES DESDE EL MENU RUN





EN EL PROXIMO DEMO SE INCLUIRIA :

- TOCARIA ANEXAR LA DOCUMENTACION DE LAS FUNCIONES EN TXT PARA EL PROXIMO DEMO(NO TENEMOS ESO NI QUE PARAMETROS USA )
- UN SISTEMA DE EXPORTACION DE PROYECTO USANDO EL INDEX.HTML Y ETC
   A DIFERENTES OS COMO FIREFOXOS Y TIZEN QUE SON LOS QUE MAS PEGAN EN ESTE MOMENTO
   EN HTML5
- ALGUNOS EJEMPLOS NUEVOS


Title: Re:Div Games en Html5 y Canvas
Post by: oska on October 21, 2013, 09:13:34 PM
Mil gracias por el setup;me encanta la idea de ejecutar mis juegos en un navegador.Que siga evolucionando este proyecto,pues promete.
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on October 23, 2013, 03:49:48 PM
Estimado, tengo problemas con el scroll del navegador... las flechas lo mueven..., alguna solución ?? tengo firefox


PD: alguien que se anime a implementar box2dweb http://buildnewgames.com/box2dweb/
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on October 24, 2013, 04:16:40 AM
Quote from: emov2k4 on October 23, 2013, 03:49:48 PM
Estimado, tengo problemas con el scroll del navegador... las flechas lo mueven..., alguna solución ?? tengo firefox


PD: alguien que se anime a implementar box2dweb http://buildnewgames.com/box2dweb/ (http://buildnewgames.com/box2dweb/)

Eso seria buena idea .. pero quien se animara  :P



bueno otra demo salida del horno
http://www.mediafire.com/download/vq3oe3dzegcn220/setup.zip


+ muchas mejoras ,
+ soporte de aplicaciones TIZEN , al exportar ya es compatible con dispositivos TIZEN
+ exportar juegos html5
+ nuevo ejemplo touch
+ y muchas cosas raras nuevas.. q deben mirar

Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on October 24, 2013, 01:26:17 PM
Ayer implemente una función obtener el nombre del jugador, no es mas que la funcion prompt de javascripts, asi evito usar el scan_code y facilito las cosas, funciona bien, el cuadro que pide el nombre se sobrepone a al juego y este se pausa automaticamente (funcion por defecto de divgo) , estuve haciendo pruebas y pude mostrar en nombre en pantalla del juego con write_int, pero encontré un pequeño detalle que hace que no sea 100% perfecto, si estas apretando alguna tecla al momento de mostrar el mensaje esa tecla queda por defecto marcada, me explico... si apreto la tecla izquierda para que mi personaje se mueva y aparece el mensaje que pide el nombre la tecla izquierda queda marcada y después de aceptar el nombre la nave se mueve sola a la izquierda... pueden probar el ejemplo en el siguiente link

http://www.planweb.cl/nave/

se dispara con Z y se mueve con las flechas, al comenzar el juego pide el nombre y al matar una nave lo vuelve a mostrar para que vean que la tecla queda marcada.


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 25, 2013, 08:37:23 AM
Quote from: emov2k4 on October 24, 2013, 01:26:17 PM
Ayer implemente una función obtener el nombre del jugador, no es mas que la funcion prompt de javascripts, asi evito usar el scan_code y facilito las cosas, funciona bien, el cuadro que pide el nombre se sobrepone a al juego y este se pausa automaticamente (funcion por defecto de divgo) , estuve haciendo pruebas y pude mostrar en nombre en pantalla del juego con write_int, pero encontré un pequeño detalle que hace que no sea 100% perfecto, si estas apretando alguna tecla al momento de mostrar el mensaje esa tecla queda por defecto marcada, me explico... si apreto la tecla izquierda para que mi personaje se mueva y aparece el mensaje que pide el nombre la tecla izquierda queda marcada y después de aceptar el nombre la nave se mueve sola a la izquierda... pueden probar el ejemplo en el siguiente link

http://www.planweb.cl/nave/ (http://www.planweb.cl/nave/)

se dispara con Z y se mueve con las flechas, al comenzar el juego pide el nombre y al matar una nave lo vuelve a mostrar para que vean que la tecla queda marcada.


No se puede probar, no funciona el enlace.

Lo del scroll del navegador se debería de solucionar pulsado la pantalla del juego.
También me estuve mirando box2d y chipmunk para implementarlo en un futuro.
http://lib.ivank.net/?p=demos&d=box2D (http://lib.ivank.net/?p=demos&d=box2D)
http://dl.dropboxusercontent.com/u/2494815/demo/Joints.html (http://dl.dropboxusercontent.com/u/2494815/demo/Joints.html)


Quote from: l1nk3rn3l on October 24, 2013, 04:16:40 AM
Eso seria buena idea .. pero quien se animara  :P


bueno otra demo salida del horno
http://www.mediafire.com/download/vq3oe3dzegcn220/setup.zip (http://www.mediafire.com/download/vq3oe3dzegcn220/setup.zip)


+ muchas mejoras ,
+ soporte de aplicaciones TIZEN , al exportar ya es compatible con dispositivos TIZEN
+ exportar juegos html5
+ nuevo ejemplo touch
+ y muchas cosas raras nuevas.. q deben mirar


Gran trabajo! Mirare de hacer que el compilador genere un archivo con los recursos que se van a utilizar en el juego (gráficos, sonidos, videos, fuentes), así cuando exportes el juego estará limpio, solo archivos del juego sin las carpetas por defecto.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on October 25, 2013, 12:59:56 PM
Disculpa AmakaSt , tenia mi servidor con bloqueo internacional, ahora debería funcionar.

http://www.planweb.cl/nave/ (http://www.planweb.cl/nave/)


"Lo del scroll del navegador se debería de solucionar pulsado la pantalla del juego. "  - No funciona !

Saludos
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on October 25, 2013, 02:45:59 PM
lo de la nave puede deberse a un eco .. desde la entrada de texto..
lo mejor seria evitar usar la entrada de texto dentro de un loop
y hacerlo cuando el jugador termine el juego o destruyan la nave..

limpiar el buffer del teclado en javascript es mas dificil que en pc..
ya que tocaria crear una funcion que capture las teclas y entraria en conflicto
con la de divgo ..

o no se si bastaria despues del prompt ..  esto
window.event.cancelBubble = truepero en javascript creo funciona mejor
e.stopPropagation()



o dejar el juego  como esta pero el prompt fuera de un loop y no cambiar nada  :P



Quote from: emov2k4 on October 23, 2013, 03:49:48 PM
Estimado, tengo problemas con el scroll del navegador... las flechas lo mueven..., alguna solución ?? tengo firefox


PD: alguien que se anime a implementar box2dweb http://buildnewgames.com/box2dweb/ (http://buildnewgames.com/box2dweb/)


mientras sale la proxima demo adiciona  este texto al siguiente archivo..

C:\DivGo\mini_server_6\udrive\www\scripts\tizen.js



remplaza el contenido por el siguiente...






//captura la tecla back de TIZEN
document.addEventListener('tizenhwkey', function(e) {

if (e.keyName === 'back') {     
  tizen.application.getCurrentApplication().exit();
}

});



//bloquea el scroll si corre en navegador web
window.onscroll = function () { window.scrollTo(0, 0); };

Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on October 28, 2013, 01:19:16 AM
Quote from: AmakaSt on October 25, 2013, 08:37:23 AM


Gran trabajo! Mirare de hacer que el compilador genere un archivo con los recursos que se van a utilizar en el juego (gráficos, sonidos, videos, fuentes), así cuando exportes el juego estará limpio, solo archivos del juego sin las carpetas por defecto.

Un saludo.


SI SERIA GENIAL QUE GENERARA UN RECURSOS.TXT
Y ADENTRO QUE TENGA EL LISTADO DE LO QUE USA EL JUEGO GENERADO EN INDEX.HTML

GRAFICOS\GRAFICO1.PNG
MUSICAS\MUSICA.OGG
GRAFICOS\GRAFICO2.JPG
FUENTES\FUENTE.TTF


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 29, 2013, 08:50:49 AM
Quote from: l1nk3rn3l on October 28, 2013, 01:19:16 AM
SI SERIA GENIAL QUE GENERARA UN RECURSOS.TXT
Y ADENTRO QUE TENGA EL LISTADO DE LO QUE USA EL JUEGO GENERADO EN INDEX.HTML

GRAFICOS\GRAFICO1.PNG
MUSICAS\MUSICA.OGG
GRAFICOS\GRAFICO2.JPG
FUENTES\FUENTE.TTF

Esto ya lo tengo preparado para la próxima versión de DivGO, automáticamente el compilador genera un archivo appFiles.tmp, con todos los archivos que va a cargar el juego incluyendo DivGOvXXX-min.js e index.html.

Quote from: emov2k4 on October 25, 2013, 12:59:56 PM
Disculpa AmakaSt , tenia mi servidor con bloqueo internacional, ahora debería funcionar.

http://www.planweb.cl/nave/ (http://www.planweb.cl/nave/)


"Lo del scroll del navegador se debería de solucionar pulsado la pantalla del juego. "  - No funciona !

Saludos

Lo del teclado estoy mirando de solucionarlo, he solucionado algo similar que sucedía con el mouse y el touch si sales de la pantalla del juego mientras sigues pulsando.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 17, 2013, 01:19:53 PM
Div GO 0.34 ya online para realizar pruebas y testeo, las novedades:

funciones:
  - subtract_text(); subtract_draw(); subtract_xdraw();
  - path_free(); path_line();
variables:
  - loading.text_x; loading.text_y;
cambios: load_ttf(), load_otf(), load_woff() por load_font();
bugs y mejoras:
  - generador/empaquetador de proyectos
  - salida de archivos para adaptar div go a distintos ide externos
  - loading ahora carga también sonidos, videos y fuentes
  - ahora se pueden declarar arrays de dos dimensiones. ej: mi_variable[10, 5]
  - mejoras en el compilador para detectar nuevos errores de código

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on November 20, 2013, 07:38:09 PM
no hay descarga de la 0.34 ?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 20, 2013, 11:45:53 PM
Quote from: l1nk3rn3l on November 20, 2013, 07:38:09 PM
no hay descarga de la 0.34 ?

Perdon por el retraso, normalmente lo subo antes online para poder testear desde el servidor y no solo en local.

Ya está disponible para descargar la 0.34.  :)

En esta versión el compilador crea un archivo de salida (appFiles.tmp) con los archivos que necesita el juego. :)

También he actualizado el ejemplo draw xdraw (añadiendo las funciones subtract_draw y subtract_text) y el de load_video.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on November 27, 2013, 03:02:39 PM
He probado este código:


Program test;
Begin
set_mode(640,480);
    loop
    if(key(_space)) pelota(rand(0,640)); end
    frame;
    end
End


Process pelota(x);
Private
x_inc;
    gravedad;
Begin
graph=2;
    x_inc=rand(2,8);
    if(rand(0,1)) x_inc=-x_inc; end
while(x>0 and x<640)
    x+=x_inc;
        if(y<460)
        gravedad++;
            y+=gravedad;
        else
        gravedad=-gravedad;
        end
    frame;
    end
End

Y no funciona muy fino... :\
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 02, 2013, 12:14:29 PM
Hola PiXel,

DivGO actualmente funciona de forma distinta a Div, esta hecho así a causa del funcionamiento de frame, no conseguí hacer que funcionara de la misma forma y que fuera optimo (si conseguía que el funcionamiento fuera similar a Div pasaba de correr 600 procesos a 20 o menos y quería evitar esta caída de rendimiento).  :-[

Actualmente en DivGO los procesos tienen dos partes: lo de fuera de loop y lo de dentro de loop ... end. El proceso primero ejecuta y dibuja todo lo que hay fuera del loop (incluso si esta después de este) y luego lo de dentro admitiendo solo 2 frames para el pintado, el de fuera del bucle y el de dentro.

Si haces dentro del loop 2 frames actúa como 1 solo pero sumando el valor de los dos. Por eso que al añadir un frame dentro de while se está incrementando el valor de frame todo el rato por lo que se puede quedar colgado.

La estructura típica de un proceso en DivGO es:

process nombre_proceso();
private
      ...

begin
      ...
      ...
      frame(x); //x = 100 o 200 o 300...; este es el primer frame permitido antes de entrar en el bucle loop, otro incrementara el valor de x

      loop
            ...
            ...
            frame(x); //x = 100 o 200 o 300...; este es el segundo frame permitido, otro dentro del loop incrementara el valor x
      end
end


Para que tu código funcione bien en DivGO sería hacerlo mas o menos así:

Program test;
Begin
    set_mode(640,480);
    loop
        if(key(_space)) pelota(rand(0,640)); end
        frame;
    end
End


Process pelota(x);
Private
    x_inc;
    gravedad;
Begin
    graph=2;
    x_inc=rand(2,8);
    if(rand(0,1)) x_inc=-x_inc; end
    /*while(x>0 and x<640)
        x+=x_inc;
        if(y<460)
            gravedad++;
            y+=gravedad;
        else
            gravedad=-gravedad;
        end
        frame;
    end*/
    loop
        if (x>0 and x<640) x+=x_inc; end

        if(y<460)
            gravedad++;
            y+=gravedad;
        else
            gravedad=-gravedad;
        end

        frame;
    end
End


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 15, 2013, 10:30:33 PM
Div GO 0.36 ya esta online para poder testear, las novedades:

include:
- ya se pueden incluir procesos desde archivos prg externos, debe ir dentro de program y antes de global, private, local o begin

bugs y mejoras:
- ahora los graficos con new_map(), write_in_map() y texture_in_map() soporta colisiones
- manejo de variables locales con la id del proceso, ahora funciona como en div: id_nombre = get_id(type proceso); id_nombre.x = x;
- solucionado problema de parpadeo grafico cuando dos procesos tenían la misma z, ahora se pinta por delante el ultimo proceso que ha sido llamado
- añadida comprobación de archivos desde el compilador, si no existe un archivo mostrara el mensaje de error: no se encontró archivo
- corregido bugs mínimos de la versión anterior
- vuelve a funcionar div go en navegadores móviles de ios: safari y chrome
- vuelve a funcionar div go en navegadores antiguos: ie9, opera 11+

Y por el momento esto es todo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 17, 2013, 09:36:08 PM
Ya disponible la versión 0.36 para descargar.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: MythomizeR on December 17, 2013, 10:30:41 PM
Gracias AmakaSt por el trabajo, que aunque BennuGD me chifla, tu proyecto es interesante también  :)
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on December 17, 2013, 10:42:50 PM
A este paso lo superara xDD
Felicidades, un gran saber hacer, aunque no lo haya probado ya que me resisto a actualizar el navegador xD
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 23, 2014, 02:46:52 PM
En breve subiré la versión 0.38 de DivGO, las novedades:

variables:   
  - estructura local reserved
  - mouse.graph, mouse.file, mouse.angle, mouse.size, mouse.flags, mouse.alpha, mouse.region

funciones:
  - open_socket(), send_socket(), get_socket(), close_socket(); //estas funciones irán cambiando y estarán accesibles para testear

bugs y mejoras:
  - optimización de funciones: move_draw(); move_xdraw(); move_text();
  - mejorado el comportamiento del touch cuando se usa las variables de mouse
  - optimización del código para un mejor funcionamiento general
  - ahora los procesos pueden devolver un valor en vez de su id haciendo uso de la sentencia return
  - ahora el compilador comprueba el numero de parámetros que tiene un proceso y si es correcto en las llamadas
  - en esta versión se genera automáticamente un objeto para el mouse, usando las variables del struct mouse para cambiar sus propiedades
  - div go cambia de licencia, ahora pasa a ser licencia mit únicamente (para poder publicar en la appstore)

También estuve realizando pruebas con PhoneGap y funciona mejor de lo que pensaba. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 25, 2014, 01:21:48 PM
Ya esta online la versión 0.38 para testear. :)
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on January 25, 2014, 03:08:36 PM
gracias ... 



Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 26, 2014, 06:50:49 PM
De nada. ;)

DivGO 0.38 ya disponible para descargar.

Ejemplo de Div2 de uso de la sentencia RETURN (esto ya funciona en esta versión):

PROGRAM mi_juego;
BEGIN
    write_int(0, 200, 200, 4, &x);
    x=max(2, 3)+max(5, 4);
END
PROCESS max(a, b)
BEGIN
    IF (a>b)
        RETURN(a);
    ELSE
        RETURN(b);
    END
END


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: JaViS on January 27, 2014, 03:27:56 PM
Muy bueno!! gracias!
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on January 31, 2014, 04:55:49 AM
Genial, yo trabajo con phonegap, voy a probar que tal !! Saludos
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 31, 2014, 10:42:22 AM
Colgué en Facebook unas capturas de DivGO corriendo con PhoneGap en XCode. https://www.facebook.com/DivGamesOnline/posts/576655925745035  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: JaViS on January 31, 2014, 03:27:29 PM
Genial!


voy a escribir una noticia de esto :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 28, 2014, 08:33:17 AM
Versión 0.40 en breve, las novedades:

  - graphic_explorer(); screen_explorer(); region_explorer(); graphic_builder(); //funciones para manipular los gráficos
  - funcionamiento general de div go mas optimo, ahora corre mas procesos a la vez sin ralentizarse
  - solucionado problema con la sentencia switch cuando era creada dentro del bucle loop
  - Corregido el funcionamiento de la función screen_copy()
  - ahora se puede intercambiar y crear nuevos temas de entorno

He incluido un par de ejemplos nuevos que muestran el uso de las nuevas funciones, ahora se podrá hacer cualquier efecto grafico que se quiera y aplicarlo al graph de un proceso: cambios de color, distorsiones,  efecto blur, pixelizacion, etc...  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 28, 2014, 08:11:55 PM
Div GO versión 0.40 ya online para realizar pruebas. En la lista de ejemplos está incluido Ejemplo graphic...() para probar lo de la manipulación de gráficos.

Y aquí otro de los ejemplos que he incluido en la carpeta de ejemplos:

program ejemplo_region_explorer;
begin
    set_title("Div GO : Ejemplo region_explorer");
   
    /* pruebas con opciones de pantalla */
    set_mode(m480x240);
    screen_color(#26b);

    set_fps(60, 0);

    // definimos las regiones donde mostrar los graficos
    define_region(1, 0, 0, 480, 120);

    // inicia scroll
    start_scroll(0, 0, 1, 2, 1, 0);
       
    flecha(3, 240, 60, 0);
    pantalla(240, 180);
end

process flecha(graph, x, y, angle);
begin
    size = 100;
    region = 1;
    scroll.camera = id;

    loop
        if (key(_up))
            y -= 2;
            angle = 90000;
        end
       
        if (key(_down))
            y += 2;
            angle = -90000;
        end
       
        if (key(_left))
            x -= 2;
            angle = 180000;
        end
       
        if (key(_right))
            x += 2;
            angle = 0;
        end
   
        frame;
    end
end

process pantalla(x, y);
private
    array, i;
   
begin
    size   = 100;
    region = 0;
   
    loop
        array = region_explorer(1);
       
        for (i = 0; i < sizeof(array.data); i += 4)
            array.data[i]     = 0; //r
            array.data[i+2]    = 255; //b
        end
       
        graph = graphic_builder(array);


        frame;
    end
end


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 04, 2014, 10:50:27 PM
Ya disponible la versión 0.40 para descargar.

P.D: He corregido el ejemplo que habia puesto en el anterior post. :P
Title: Re:Div Games en Html5 y Canvas
Post by: La momia que fuma on April 06, 2014, 07:01:37 PM
Bueno...


A ver si podéis ayudar a este pobre gañanazo, porque no me entero de nada xD


Estoy intentando trastear con DivGo en local, pero estoy perdidisimo!


A ver si me consigo explicar, porque no es fácil xD


Primero he probado haciendo lo que viene en el readme de la descarga de DivGo...me he instalado el Wamp (que desconozco totalmente y no se usar xD), y en el directorio www del programa he metido lo del zip de DivGo...primero por si acaso he probado a meterlo en una carpeta.


Entro en localhost y me sale la carpeta de DivGo en "Your Projects", pero si entro me salta error (Internal server error, etc)


"Será que lo he copiado mal" pienso...asi que meto lo de DivGo a saco (sin estar en una carpeta) en la carpeta www de Wamp (guardando aparte el index.php que traía y que tengo que sobreescribir con el de DivGo, por si tengo que echar marcha atras...SPOILER: Tuve que echar marcha atras xD)


Haciendolo así me da el fallo directamente al entrar en localhost :(




Entonces ya probé (con un simple ejemplo "hola mundo") con las utilidades de l1nk3rn3l y Emov EDIT: Erkosone (Que me he liado...le he preguntado hoy a Emov y logicamente no tenía ni idea de que "utilidad" le hablaba jajaja)




Con la de l1nk3rn3l...le doy a cualquiera de las opciones de Run en el navegador que sea y me sale el compilador de DivGo....con el ejemplo de DivGo por defecto...


En cambio, si exporto a HTML5...me exporta el Super Paf :/


Que estoy haciendo mal? Quiza no estoy guardando el código donde debería?


Con el de Erkosone y el Xampp que trae llego a hacer funcionar mi programa...pero hecho de menos las opciones extra del anterior de elegir navegador (aqui lo corre en Firefox, no se donde se cambia) y no tengo ni idea de como se exporta el proyecto...




Help!


Gracias, compañeros




EDITADO: Creo que ya he conseguido arrancar...en lugar de wamp estoy usando easyphp y ya va mejor la cosa...mas que nada, es que nunca he andado con servidores virtuales y no tenia mucha idea de lo que estaba haciendo xDDDD (Mil gracias a Emov por su ayuda!)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 02, 2014, 04:30:15 PM
Versión 0.42 ya disponible para testear online, las novedades:

  variable:
   - max_int, min_int, view_full_amplitude; //nueva variable de ampliación para set_mode()
funciones:
   - sort(array, modo); //ordenar array
   - btoa(); otoa(); htoa(); //convierte cadena en binario, octal y hexadecimal
bugs y mejoras:
   - [ADD] realizado cambios en el sistema de carga grafica, por lo que div go ahora es mas optimo
   - [FIX] ahora funciona bien los juegos en google chrome para móvil
   - [ADD] colisión con mouse, ej: if (collision(type mouse))
   - [FIX] corregido problema con las variables locales
   - [FIX] ahora no genera error el compilador el añadir variables locales o privadas después del bloque loading
   - [FIX] corregido problema con el valor inicial de la variable size
   - [FIX] solucionado problema en la construcción de structs
   - [FIX] solucionado varios bugs menores del compilador


Gracias a La momia que fuma por los reportes. ;)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 04, 2014, 09:34:31 AM
DivGO 0.42 disponible para descargar.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 10, 2014, 02:54:04 PM
DivGO 0.42r2 disponible para descarga, versión que soluciona errores.
Title: Re:Div Games en Html5 y Canvas
Post by: emov2k4 on May 12, 2014, 02:06:27 AM
ohhhh genial ! gracias
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 13, 2014, 09:52:42 PM
Nueva revisión de la 0.42 disponible para descargar. En las otras estaba de broma y esta ya es la buena. ;)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 09, 2014, 09:53:58 PM
En los próximos días subiré la versión 0.44, esta versión de Div GO contara con muchas novedades:

variables:
  - cnumber, c_0, c_1, ..., c_9;
  - all_process;
  - restore_type, no_restore, partial_restore, complete_restore;
  - struct joy, struct pad;
  - b_joy_connect, b_pad_connect, b_name_joy, b_name_pad; //pad y joy devuelven la misma información

struct joy:
  - left, right, up, down, button1, button2, button3, button4

struct pad:
  - left, right, up, down, button0, button1, ..., button9, stick1.left, stick1.right, stick1.up,
  - stick1.down, stick1.button, stick2.left, ..., stick2.button;

funciones:
  - ya se pueden crear bloques function
  - unload_image(), unload_fpg(), unload_font(), unload_sound(), unload_video();

bugs y mejoras:
  - [ADD] cambios en scroll para controlar la camara en distintas ventanas de scrolls asociadas a procesos
  - [ADD] cambios en la funcion signal para que acepte la variable all_process
  - [ADD] ahora el compilador crea un archivo asociado a cada fpg, con esto las carga de fpg es mucho mas rápida
  - [ADD] get_browser() ahora devuelve el nombre del navegador utilizado y la información del gamepad
  - [FIX] solucionado problemas y mejorada la reproducción de audio/video
  - [FIX] si un proceso o una función tiene el valor de un grafico no existente no se dibuja el grafico
  - [FIX] ahora break dentro del loop finaliza el bucle al instante

Y por el momento esto es lo que habra.  8)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 10, 2014, 07:54:51 PM
Disponible online Div GO 0.44, he actualizado algunos ejemplos: ejemplo scroll y ejemplo de procesos que incluye las variables del gamepad (esta variable solo funciona en los navegadores Google Chrome, Firefox y Opera).

Aquí un ejemplo para probar las variables de Gamepad (Yo hago pruebas con un mando de Xbox360):


// Php + Html5 + Canvas + Javascript
// by J. Manuel Habas

program ejemplo_joy_pad;
global
   joystick = 0;
   
begin
    /* pruebas con opciones de pantalla */
    set_mode(m480x200);
    screen_color(#333);

    set_fps(60, 0);
   
    text_size = 80;
    text_color = #fff;
   
    write(0, 240, 20, 4, "Pulsa cualquier boton del Control Pad");
    write(0, 240, 45, 5, "Detectado: ");
    write_int(0, 240, 45, 3, offset joystick);

    write_int(0, 0, 120, 3, offset pad.stick1.up);
    write_int(0, 100, 120, 3, offset pad.stick1.down);
    write_int(0, 200, 120, 3, offset pad.stick1.left);
    write_int(0, 300, 120, 3, offset pad.stick1.right);

    write_int(0, 0, 140, 3, offset pad.stick2.up);
    write_int(0, 100, 140, 3, offset pad.stick2.down);
    write_int(0, 200, 140, 3, offset pad.stick2.left);
    write_int(0, 300, 140, 3, offset pad.stick2.right);

   //gatillos
    write_int(0, 100, 100, 3, offset pad.button8);
    write_int(0, 200, 100, 3, offset pad.button9);

    write_int(0, 0, 160, 3, offset pad.up);      //joy.up
    write_int(0, 20, 160, 3, offset pad.down);   //joy.down
    write_int(0, 40, 160, 3, offset pad.left);   //joy.left
    write_int(0, 60, 160, 3, offset pad.right); //joy.right
   
    write_int(0, 0, 180, 3, offset pad.button0);    //joy.button1
    write_int(0, 20, 180, 3, offset pad.button1);   //joy.button2
    write_int(0, 40, 180, 3, offset pad.button2);   //joy.button3
    write_int(0, 60, 180, 3, offset pad.button3);   //joy.button4
    write_int(0, 80, 180, 3, offset pad.button4);
    write_int(0, 100, 180, 3, offset pad.button5);
    write_int(0, 120, 180, 3, offset pad.button6);
    write_int(0, 140, 180, 3, offset pad.button7);
   
    //button stick
    write_int(0, 160, 180, 3, offset pad.stick1.button);
    write_int(0, 180, 180, 3, offset pad.stick2.button);
   
   loop
      joystick = get_browser(b_pad_connect);
       
      frame;
   end
end


Este ejemplo estará incluido en la carpeta de ejemplos, de la versión para descargar.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: JaViS on June 10, 2014, 08:06:08 PM
Genial!! esto esta muy interesante!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 10, 2014, 08:27:31 PM
Quote from: JaViS on June 10, 2014, 08:06:08 PM
Genial!! esto esta muy interesante!

Me alegra que te parezca interesante.  :)

Estoy intentando hacer una cosa para incluir en el descargable de esta versión, si consigo que funcione será todavía mas interesante.  ;)
Title: Re:Div Games en Html5 y Canvas
Post by: JaViS on June 10, 2014, 08:28:52 PM
Siempre es interesante expandir las plataformas en las que podamos correr nuestros juegos :) Estan haciendo un laburo muy importante! No veo la hora de poder probar mi juego con esto :P
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 14, 2014, 10:32:09 AM
Ya disponible para descargar la versión 0.44.
Al final le he incluido otra función antes de sacar esta versión: set_color(); para colorear el background de la pagina de forma dinámica desde el juego.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 13, 2014, 09:58:38 AM
Ya disponible online para testear la versión 0.50 de Div GO, esta versión trae un cambio interno importante que hace de Div GO un autentico lenguaje Div.  :)

Y aquí la lista de novedades:

funciones:
  - pixelated_in_map(), blur_in_map(), region_pixelated(), region_blur();
  - color_in_map(), region_color(); //en sustitución a las graphic_explorer(), graphic_builder(),...
variables:
  - _c_minus, _c_plus, _c_asterisk, _c_backslash, _caps_lock, _num_lock, _scroll_lock
  - _ins, _home, _pgup, _pgdn, _del, _end, _minus, _plus, _l_brachet, _r_brachet
  - _c_home, _c_up, _c_pgup, _c_left, _c_center, _c_right, _c_end, _c_down, _c_pgdn, _c_ins, _c_del
  - cc_red, cc_green, cc_blue, cc_yellow, cc_cyan, cc_magenta, cc_orange, cc_lime, cc_violet, cc_brown
  - cc_pink, cc_purple, cc_aqua, cc_pistache, cc_turquoise, cc_maroon, cc_silver, cc_gray, cc_white, cc_black
funciones eliminadas:
  - graphic_explorer(), screen_explorer(), region_explorer(), graphic_builder();
bugs y mejoras:
  - [MEGA ADD] realizado cambio interno para que la forma de usar los procesos en div go ahora sea similar a un div-like
  - [ADD] mejorada la lista de procesos en el entorno, ahora muestra información de los procesos: graph, x, y, z...
  - [ADD] añadido soporte completo a las teclas del teclado, con las variables de div / div 2
  - [FIX] arreglado problema de bloqueo con la función signal al usar señales que afectaban al árbol familiar
  - [DEL] eliminadas las funciones de manipulación de gráficos, con el cambio interno de div go su funcionamiento era lento
  - [ADD] actualizado ejemplos con el uso de las nuevas funciones

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 17, 2014, 10:56:09 PM
Ya disponible para descargar la versión 0.50.

En esta versión los procesos, frames, bucles, condiciones... funcionan de forma similar a Div. Probé con los códigos que puso PiXel en este tema para testear y funcionan correctamente.   8)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 31, 2014, 10:36:05 PM
Versión 0.52 ya disponible online, las novedades:

funciones:
  - paint_in_map();
  - map_put(), map_put_pixel(), map_xput(), map_block_copy();

variables:
  - rgb_to_bgr, rgb_to_grb, rgb_to_rbg, rgb_to_brg, rgb_to_gbr

bugs y mejoras:
  - [ADD] mejorada la información de errores del compilador devolviendo el error y el numero de linea correctos
  - [ADD] ahora el compilador marca la linea de codigo que ha dado error, haciendo mas facil su localización
  - [ADD] clonación de procesos con el bloque clone ... end
  - [ADD] ahora las funciones put, xput, put_screen aceptan como parámetro graph las funciones xxxx_in_map() o new_map();
  - [FIX] solucionado varios bugs relacionado con los últimos cambios
  - [ADD] incluido el ejemplo de div 2 Plataformas de Carlos Dominguez adaptado a div go

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 19, 2014, 12:27:15 AM
Versión 0.54 ya disponible online:

funciones:
  - exists(); screen_scanline(); //scanline solo se visualiza cuando se amplía la pantalla x2 o mas

bugs y mejoras:
  - [FIX] collision() y collision_box() con puntos de control y flags distinto de 0
  - [FIX] códigos de bloqueo de scroll
  - [FIX] arreglada función exit(), no mostraba mensaje de salida y ahora detiene la reproducción de audio/video
  - [FIX] corregido problema al generar el archivo fpg.dat desde el compilador
  - [ADD] pausado de juego desde entorno
  - [FIX] solucionado varios bugs relacionado con los cambios de la v0.50

No hay muchas novedades, pero un repaso de bugs siempre sienta bien. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 19, 2014, 11:28:37 AM
Div GO versión 0.54 ya disponible para descargar!  8)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 13, 2014, 12:27:11 PM
Versión 0.56 ya disponible online y las novedades:

funciones:
  - qsort();

variables:
  - m320x200, m320x240, m320x400, m360x240, m360x360, m376x282, m400x300, m640x400, m640x480
  - m800x600, m960x640, m1024x768, m1280x720, m1280x960, m1600x900, m1280x1024, m1920x1080

bugs y mejoras:
  - [ADD] cambios internos en map_get_pixel() y collision() para que funcionen de manera mas rápida y optima
  - [ADD] compilador ahora mas optimizado
  - [ADD] soporte de lista de datos después de end para structs, ej: end = 1, "jose", 1800, 2, "manuel", ...;
  - [ADD] cambios en set_mode(); ahora funciona con variables predefinidas como un div-like
  - [ADD] pulsando en las imágenes del visor fpg, estas se amplia y puedes consultar la información "x", "y", "color"
  - [ADD] nuevos avisos de error en el compilador, ahora informa de mas posibles errores de código
  - [FIX] solucionado varios bugs menores del compilador y del constructor de código

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 15, 2014, 05:40:43 PM
Div GO versión 0.56 ya disponible para descargar.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 17, 2014, 08:08:24 PM
Hola,

Ya está disponible online la versión 0.58 y aquí os dejo la lista de novedades:

funciones:
   - region_wave(), region_zoom(), region_mask()
   - wave_in_map()
   - fade_in(), fade_out()


struct tilt: (solo funcional en dispositivos móviles o que incluyan acelerómetro)
   - x, y, z

bugs y mejoras:
   - [FIX] al ejecutar tu proyecto en chrome desde la ruta file:/// no se inicializaba, lo recomendable es ejecutar el proyecto en http:// porque algunas funcionalidades de javascript pueden dar error
   - [FIX] problema con set_mode al usar variables de resolución junto con valor de ampliación
   - [FIX] pequeña optimización en el dibujado del canvas
   - [ADD] cambios en la inicialización del programa para mejorar el contenido del html del proyecto empaquetado
   - [FIX] solucionado varios bugs
   - [ADD] nuevos menús, guía de usuario, más ejemplos y Tutoriales de Div Games Studio


Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 23, 2014, 10:03:23 PM
Div GO 0.58 ya disponible para descargar en dos versiones: la normal (la que necesitas configurar localhost con Xampp, Wamp, Lamp...) y la versión ejecutable para Windows, mas sencilla y no requiere una configuración previa.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 07, 2014, 07:23:56 PM
Ya disponible online la versión 0.60 (para testear) y aquí las novedades:

variables:
  - math_pi, math_e, math_max, math_min

funciones:
  - isnan(), isfinite(), exp(), log()
  - hsl(), hsla(), explode(), implode()

bugs y mejoras:
  - [FIX] solucionado problema en el funcionamiento del touch en dispositivos Android
  - [FIX] mejorada la declaración de structs ahora el compilador no se lía cuando dos structs distintas tienen variables iguales
  - [FIX] varios bugs en el ide, el compilador y en el engine
  - [ADD] pequeña optimización en el dibujado de procesos y scrolls
  - [ADD] botones para minimizar ventanas de recursos de forma independiente
  - [ADD] visor de fuentes (ttf, otf, woff) y control de audio que se carga desde el código
  - [ADD] ahora la lista de procesos se colorea según el estado de cada proceso
  - [FIX] ha vuelto el botón de pausar proyecto en el listado de procesos

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 10, 2014, 10:48:06 PM
Desde ya, la versión 0.60 disponible para descargar, tanto en versión normal como en ejecutable para windows. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 11, 2014, 09:28:11 AM
Aquí una pequeña demostración del funcionamiento de las variables tilt.x, tilt.y y tilt.z (solo apreciable con dispositivos móviles):  http://www.divgo.net/proyectos/prueba-tilt/

Y este es el código:
program ejemplo_tilt;
global
    id_txt;
       
begin
    /* pruebas con opciones de pantalla */
    set_mode(640, 400);
    screen_color(#ddd);

    set_fps(60, 0);
   
    text_color = #999;
    id_txt = write(0, 320, 90, 4, "Toca la pantalla para disparar");
    write_int(0, 0, 0,  0, &tilt.x);
    write_int(0, 0, 20, 0, &tilt.y);
    write_int(0, 0, 40, 0, &tilt.z);
   
    nave(320, 200);
end

process nave(px, py);
private
    disparado;
    angulo = 90000;
   
begin
    graph = 3;
    size  = 50;
    angle = angulo;
   
    write_int(0, 640, 0,  2, &x);
    write_int(0, 640, 20, 2, &y);
    write_int(0, 640, 40, 2, &angle);
   
    loop       
        x = px + (tilt.x * 2);
        y = py - (tilt.y * 2);
        angle = angulo - ((tilt.x * 1000) + (tilt.y * 1000))*2;

        if (mouse.left and disparado < 1)
            disparo(x, y, angle);
            disparado = 5; delete_text(id_txt);
        end
               
        disparado --; if (disparado < 0) disparado = 0; end
       
        frame;
    end
end

process disparo(x, y, angulo);
begin
    graph = 1;
    size  = 10;
    z      = 10;
    angle = angulo;
    advance(20);
   
    loop
        xadvance(angulo, 10);
        angle += 45000;
       
        if (out_region(id, 0)) break; end
       
        frame;
    end
end


Ahora que cada uno experimente para mejorar este código. ;)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 27, 2015, 07:53:45 PM
Hola,

Durante esta semana subiré la versión 0.62, la primera del año, esta versión de Div GO incluye 3D como gran novedad. Esto implica la pérdida de compatibilidad con navegadores antiguos que no soporten WebGL (IE9). Y como va siendo habitual... aquí os dejo la lista de novedades:

funciones:
  - start_scene3d(), set_fog(), stop_scene3d()
  - object3d(), texture_in_object3d(), move_object3d(), modify_object3d(), delete_object3d()
  - light3d(), move_light3d(), delete_light3d()

variables:
  - c_scene3d, all_object3d, all_light3d

struct scene3d:
  - camera, light, terrain, alpha, visible;

struct camera3d:
  - focus, x, y, z, angle_x, angle_y, angle_z;

bugs y mejoras:
  - [ADD] libreria 3d Three.js para crear escenas, luces y objetos en 3d
  - [FIX] al pulsar en el listado de procesos, ahora te deja en la linea exacta del codigo donde se declara el proceso
  - [ADD] indicador que te muestra si tienes, o no tienes, control del teclado sobre el juego
  - [ADD] ejemplo de uso de las nuevas funciones 3d

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 29, 2015, 09:44:10 PM
Ya esta online la versión 0.62 con 3D. Este es el enlace al ejemplo de scene3D: http://www.divgo.net/index.php?ejemplo=5 (también está en la lista de ejemplos)  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: JaViS on January 30, 2015, 01:20:23 PM
Muy bueno che :) muy linda calidad de renderizado


podrias colgar un screenshot para publicar en las noticias del sitio?


gracias!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 30, 2015, 06:03:23 PM
Quote from: JaViS on January 30, 2015, 01:20:23 PM
Muy bueno che :) muy linda calidad de renderizado


podrias colgar un screenshot para publicar en las noticias del sitio?


gracias!

Gracias JaViS.
Aquí te adjunto una captura a pantalla completa del ejemplo y una captura cogida del Facebook, así puedes elegir la que más te guste. :)

(https://fbcdn-sphotos-f-a.akamaihd.net/hphotos-ak-xpf1/t31.0-8/10945808_769971846413441_3657578122677598940_o.jpg)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on January 31, 2015, 03:03:45 PM
EXCELENTE APORTE  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 31, 2015, 04:18:27 PM
Quote from: l1nk3rn3l on January 31, 2015, 03:03:45 PM
EXCELENTE APORTE  ;D

Gracias. :)

Ya está disponible para descargar, en las 2 versiones: Desktop para Windows y la normal para configurar con localhost.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 17, 2015, 10:35:18 PM
Ya disponible online la versión 0.64, aquí las novedades: :)

funciones:
  - load_object3d()

variables locales:
  - angle_x, angle_y, angle_z

struct scene3d:
  - focus, distance

bugs y mejoras:
  - [FIX] start_scene3d() ahora se puede crear varios scene3d en distintas regiones
  - [CHANGE] el quinto parámetro de la función object3d, pasa de ser el numero de región para ser el grosor de línea cellshading
  - [CHANGE] reescrito el mode7, ahora funciona similar a Div salvo por algún cambio como en el uso de las locales (y, z)
  - [FIX] las light3d al crear los objetos antes de las luces no se le aplicaba la luz
  - [FIX] al añadir textura con texture_in_object3d después de una luz, no se aplicaba la luz sobre dicha textura
  - [ADD] manejo de ángulos para mode7 y scene3d en las funciones advance() y xadvance()
  - [DEL] eliminada la struct camera3d
  - [CHANGE] start_scene3d() con dos parámetros menos, ahora el ancho y alto de las texturas es automático
  - [FIX] solucionado varios bugs del compilador
  - [ADD] carga de objetos 3d en los formatos .obj, .dae y .wrl

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 18, 2015, 11:10:46 AM
Aquí dejo un código de ejemplo, que hace uso de angle_y y angle_z (angle) para manejar las vistas con el ratón y controles como son en los juegos en primera persona.


// Pruebas de compilador online Div GO
// Php + Html5 + Canvas + Javascript + Three.js lib
// by J. Manuel Habas Millán

program ejemplo_3d;
global
    tex, obj1, obj2, luz1, luz2;

private
    uz = 200, ang = 0, fig1, fig2;

begin
    tex = load_fpg("graficos/texturas");
   
    set_mode(640, 400);
    screen_color(#424);

    set_fps(60, 0);
   
    text_color = #ccc;
    text_size  = 50;
   
    write(0, 5, 10, 3, "CURSORES: moverte por el escenario");
    write(0, 5, 30, 3, "MOUSE: mover el punto de vista");

    //inicia scene3d sin esto no funcionaran las funciones object3d() ni light3d()
    start_scene3d(0, tex, 3, 0); //numero, file, graph, ancho, alto, region
   
    //crea objetos en escena
    obj1 = object3d(1, 1, #ff0, 100, 0, -100, 50, 200); //tipo, wireframe, color, alpha, trazado, x, y, z
    obj2 = object3d(2, 1, #000, 100, 1, 100, 50, 200);  //tipo, wireframe, color, alpha, trazado, x, y, z

    //carga y crea modelo 3d en escena
    fig2 = load_object3d("objetos3d/monster.dae", 0, #fff, 0, 0, 0);  //archivo, wireframe, color, x, y, z

    move_object3d(fig2, 0, 0, 200, 90000, 0, 0); //id, x, y, z, angle_x, angle_y, angle_z

    //aplica una textura a objeto
    texture_in_object3d(obj1, tex, 4); //id, file, graph
    texture_in_object3d(obj2, tex, 2); //id, file, graph
    texture_in_object3d(fig2, tex, 3); //id, file, graph

    //modifica el ancho, alto o largo de los objetos
    modify_object3d(fig2, 100, 1000, 1000, 1000);

    //crea luces en escena
    luz1 = light3d(100, rgb(200, 200, 255), 10000, 100, 100, -100); //intensidad, color, distancia, x, y, z
    luz2 = light3d(200, rgb(0, 255, 128), 1000, -100, 200, -100);
   
    jugador(0, 100, 200); //x, y, z
   
    scene3d.light = 0;
    scene3d.alpha = 0;
    scene3d.distance = 10;
   
    loop
        ang += 400;
       
        move_object3d(obj1, -100, 50, uz, 0, ang, 0); //id, x, y, z, angle_x, angle_y, angle_z
        move_light3d(luz2, 200, -100, 200, uz - 100); //id, intensidad, x, y, z
     
        if (key(_z)) delete_object3d(all_object3d); end
        if (key(_y)) object3d(rand(0, 4), rand(0, 1), rgb(rand(0,255), rand(0,255), rand(0,255)), rand(0, 100), 0, rand(-200, 200), rand(0, 250), rand(-200, 200)); end
       
        if (key(_esc)) exit("Amaka Soft 2015", 1); end
       
        frame;
    end
end

process jugador(x, y, z);
private
    reten = 0;
   
begin
    scene3d.camera = id;

    loop
        if (key(_left)) xadvance(angle + 90000, -10); end
        if (key(_right)) xadvance(angle + 90000, 10); end
        if (key(_up)) advance(10); end
        if (key(_down)) advance(-10); end
       
        //angle y angle_z funcionan igual
        angle += (mouse.x - 320) * 10; //¡AAAARGH, BUG LOCALIZADO con angle_z!
        angle_y -= (mouse.y - 200) * 10;

        if (angle_y > 20000) angle_y = 20000; end
        if (angle_y < -20000) angle_y = -20000; end
       
        if (mouse.left and reten == 0) disparo(x, y-20, z, angle); reten = 10; end

        reten--; if (reten < 0) reten = 0; end
       
        frame;
    end
end

process disparo(x, y, z, angle);   
begin
    graph = 2;
    size  = 20;
    ctype = c_scene3d;
   
    loop
        advance(25);
       
        flags++; if (flags > 3) flags = 0; end
        alpha--; if (alpha < 0) break; end
       
        frame;
    end
end


Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on March 18, 2015, 11:35:50 AM
Holas AmakaSt :)


Primero de todo, agradecerte el curro que le estás dando. Nunca está de más nuevos engines DIV-like :)


Por ahora yo lo estoy utilizando para hacer ejemplos rápidos de códigos, y me viene bastante bien, aunque me gustaría pedirte un detalle:
¿Qué te parecería que se pudiera guardar los PRGs online? Es como el código que puse el otro día en Twitter. En vez de dar una URL de PasteBin y otra de DivGO, una URL de DivGO con un parámetro que identifique al PRG guardado en el servidor, o incluso un segundo parámetro para directamente ejecutar ese PRG enviado.


¿Qué te parece?


Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: Yawin on March 18, 2015, 02:19:11 PM
Jo, pues yo no consigo que me vaya. No se qué puedo estar haciendo mal. Estoy ejecutando este código:
program demorl;
private
       i,j,k,l;
begin
    set_mode(640,480);
    set_fps(120,0);
   
    loop
        i++;
        l+=cos(i*1000)*4;
        if(k==0)
            if(j++>100)k=1; end
        else
            if(j--<50)k=0; end
        end

        cubo(l,j,j);
        frame;
    end
end

function cubo(stepe, _wi, _hi);
private
    i,j;
    vertices[5][4];
begin
    clear_screen();
    delete_draw(0);
    stepe*=1000;

    vertices[0][0]=320 + cos(stepe)*2*_wi;          vertices[0][1]=(240-_hi) + sin(stepe)*_wi;
    vertices[1][0]=320 + cos(stepe+1*70000) *2*_wi; vertices[1][1]=(240-_hi) + sin(stepe+1*70000)*_wi;
    vertices[2][0]=320 + cos(stepe+2*70000) *2*_wi; vertices[2][1]=(240-_hi) + sin(stepe+2*70000)*_wi;
    vertices[3][0]=320 + cos(stepe+3*70000)*2*_wi;  vertices[3][1]=(240-_hi) + sin(stepe+3*70000)*_wi;
    vertices[4][0]=320 + cos(stepe+4*70000)*2*_wi;  vertices[4][1]=(240-_hi) + sin(stepe+4*70000)*_wi;

    vertices[0][2]=320 + cos(stepe)*2*_wi;          vertices[0][3]=(240+_hi) + sin(stepe)*_wi;
    vertices[1][2]=320 + cos(stepe+1*70000) *2*_wi; vertices[1][3]=(240+_hi) + sin(stepe+1*70000)*_wi;
    vertices[2][2]=320 + cos(stepe+2*70000) *2*_wi; vertices[2][3]=(240+_hi) + sin(stepe+2*70000)*_wi;
    vertices[3][2]=320 + cos(stepe+3*70000)*2*_wi;  vertices[3][3]=(240+_hi) + sin(stepe+3*70000)*_wi;
    vertices[4][2]=320 + cos(stepe+4*70000)*2*_wi;  vertices[4][3]=(240+_hi) + sin(stepe+4*70000)*_wi;

    for(i=0;i<4;i++)
        draw(0,rgb(255,255,255),0,0,vertices[i][0],vertices[i][1],vertices[i+1][0],vertices[i+1][1]);
        draw(0,rgb(255,255,255),0,0,vertices[i][2],vertices[i][3],vertices[i+1][2],vertices[i+1][3]);
        draw(0,rgb(255,255,255),0,0,vertices[i][0],vertices[i][1],vertices[i][2],vertices[i][3]);
    end
    draw(0,rgb(255,255,255),0,0,vertices[0][0],vertices[0][1],vertices[i][0],vertices[i][1]);
    draw(0,rgb(255,255,255),0,0,vertices[0][2],vertices[0][3],vertices[i][2],vertices[i][3]);
    draw(0,rgb(255,255,255),0,0,vertices[i][0],vertices[i][1],vertices[i][2],vertices[i][3]);
end


Y, mientras que la versión en bennu se ve así https://www.youtube.com/watch?v=t1URE5YD4ag
En DIVgo me deja la ventana en negro.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on March 18, 2015, 02:35:14 PM
Si comentas el cubo peta.
Si comentas la línea con cos() deja de petar.


Por otro lado AmakaSt, warning en Chrome:

'CanvasRenderingContext2D.webkitImageSmoothingEnabled' is deprecated. Please use 'CanvasRenderingContext2D.imageSmoothingEnabled' instead.
divGOv064-min.js:8 DivGO 0.64
Title: Re:Div Games en Html5 y Canvas
Post by: Yawin on March 18, 2015, 02:40:23 PM
Pues qué mal que no haga bien los cosenos. Los efectos gráficos lo usan como aire para respirar.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 18, 2015, 02:44:20 PM
Quote from: PiXeL on March 18, 2015, 11:35:50 AM
Holas AmakaSt :)


Primero de todo, agradecerte el curro que le estás dando. Nunca está de más nuevos engines DIV-like :)


Por ahora yo lo estoy utilizando para hacer ejemplos rápidos de códigos, y me viene bastante bien, aunque me gustaría pedirte un detalle:
¿Qué te parecería que se pudiera guardar los PRGs online? Es como el código que puse el otro día en Twitter. En vez de dar una URL de PasteBin y otra de DivGO, una URL de DivGO con un parámetro que identifique al PRG guardado en el servidor, o incluso un segundo parámetro para directamente ejecutar ese PRG enviado.


¿Qué te parece?


Un saludo

Hola PiXeL,

Me alegra ver que DivGO se usa, aunque sea para insultar de forma sutil y elegante. xD

La verdad es que la idea es muy buena, poder guardar los PRG para volver a recuperarlos o ejecutarlos al insertar un identificador es algo que no lo había meditado aun, me lo apunto para incluir como novedad en próximas versiones. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 18, 2015, 03:06:00 PM
Quote from: Yawin on March 18, 2015, 02:19:11 PM
Jo, pues yo no consigo que me vaya. No se qué puedo estar haciendo mal. Estoy ejecutando este código:
program demorl;
private
       i,j,k,l;
begin
    set_mode(640,480);
    set_fps(120,0);
   
    loop
        i++;
        l+=cos(i*1000)*4;
        if(k==0)
            if(j++>100)k=1; end
        else
            if(j--<50)k=0; end
        end

        cubo(l,j,j);
        frame;
    end
end

function cubo(stepe, _wi, _hi);
private
    i,j;
    vertices[5][4];
begin
    clear_screen();
    delete_draw(0);
    stepe*=1000;

    vertices[0][0]=320 + cos(stepe)*2*_wi;          vertices[0][1]=(240-_hi) + sin(stepe)*_wi;
    vertices[1][0]=320 + cos(stepe+1*70000) *2*_wi; vertices[1][1]=(240-_hi) + sin(stepe+1*70000)*_wi;
    vertices[2][0]=320 + cos(stepe+2*70000) *2*_wi; vertices[2][1]=(240-_hi) + sin(stepe+2*70000)*_wi;
    vertices[3][0]=320 + cos(stepe+3*70000)*2*_wi;  vertices[3][1]=(240-_hi) + sin(stepe+3*70000)*_wi;
    vertices[4][0]=320 + cos(stepe+4*70000)*2*_wi;  vertices[4][1]=(240-_hi) + sin(stepe+4*70000)*_wi;

    vertices[0][2]=320 + cos(stepe)*2*_wi;          vertices[0][3]=(240+_hi) + sin(stepe)*_wi;
    vertices[1][2]=320 + cos(stepe+1*70000) *2*_wi; vertices[1][3]=(240+_hi) + sin(stepe+1*70000)*_wi;
    vertices[2][2]=320 + cos(stepe+2*70000) *2*_wi; vertices[2][3]=(240+_hi) + sin(stepe+2*70000)*_wi;
    vertices[3][2]=320 + cos(stepe+3*70000)*2*_wi;  vertices[3][3]=(240+_hi) + sin(stepe+3*70000)*_wi;
    vertices[4][2]=320 + cos(stepe+4*70000)*2*_wi;  vertices[4][3]=(240+_hi) + sin(stepe+4*70000)*_wi;

    for(i=0;i<4;i++)
        draw(0,rgb(255,255,255),0,0,vertices[i][0],vertices[i][1],vertices[i+1][0],vertices[i+1][1]);
        draw(0,rgb(255,255,255),0,0,vertices[i][2],vertices[i][3],vertices[i+1][2],vertices[i+1][3]);
        draw(0,rgb(255,255,255),0,0,vertices[i][0],vertices[i][1],vertices[i][2],vertices[i][3]);
    end
    draw(0,rgb(255,255,255),0,0,vertices[0][0],vertices[0][1],vertices[i][0],vertices[i][1]);
    draw(0,rgb(255,255,255),0,0,vertices[0][2],vertices[0][3],vertices[i][2],vertices[i][3]);
    draw(0,rgb(255,255,255),0,0,vertices[i][0],vertices[i][1],vertices[i][2],vertices[i][3]);
end


Y, mientras que la versión en bennu se ve así https://www.youtube.com/watch?v=t1URE5YD4ag (https://www.youtube.com/watch?v=t1URE5YD4ag)
En DIVgo me deja la ventana en negro.

Hola Yawin,

Esto es un error del compilador, mirare de solucionarlo para esta versión, por lo que veo la línea que pone la ventana negra es la 10: l += cos(i*1000)*4; //el compilador de forma mágica separa los signos += en esta línea

Quote from: PiXeL on March 18, 2015, 02:35:14 PM
Si comentas el cubo peta.
Si comentas la línea con cos() deja de petar.


Por otro lado AmakaSt, warning en Chrome:

'CanvasRenderingContext2D.webkitImageSmoothingEnabled' is deprecated. Please use 'CanvasRenderingContext2D.imageSmoothingEnabled' instead.
divGOv064-min.js:8 DivGO 0.64

Esto es por temas de compatibilidad, las versiones más antiguas de Chrome no soportaban el estándar imageSmoothingEnabled y hacia uso de webkitImageSmoothingEnabled. Esto es un dilema, o 100% estándar o dejar cosillas que acabaran siendo deprecated.   :-\

Con WebGL ya he sacrificado retrocompatibilidad con los navegadores IE9 e IE10...

Gracias por los reportes. :)
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on March 18, 2015, 03:28:08 PM
Quote from: AmakaSt on March 18, 2015, 03:06:00 PM
Esto es por temas de compatibilidad, las versiones más antiguas de Chrome no soportaban el estándar imageSmoothingEnabled y hacia uso de webkitImageSmoothingEnabled. Esto es un dilema, o 100% estándar o dejar cosillas que acabaran siendo deprecated.   :-\

Con WebGL ya he sacrificado retrocompatibilidad con los navegadores IE9 e IE10...

Gracias por los reportes. :)


Tampoco te preocupes mucho por que figure como deprecated. Probablemente signifique que dentro de un par de años dejará de funcionar.


Y sobre IE9 e IE10, menos aún. Nacieron muertos xD
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 20, 2015, 08:16:47 PM
Versión 0.64 ya esta disponible para descargar. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 23, 2015, 11:44:30 AM
Quote from: Yawin on March 18, 2015, 02:40:23 PM
Pues qué mal que no haga bien los cosenos. Los efectos gráficos lo usan como aire para respirar.

Hola Yawin,

Estaba revisando tu código y ya no se pone la ventana en negro, también debes saber que DivGO lo estoy creando basándome en Div2, así que hay cosas en el código que no son compatibles con Bennu:
- En la línea donde declaras vertices[5][4]; cambiar por vertices[5, 4]; //En Div la cosa iba asi
- Draw no te pintara nada en pantalla, debería de funcionar si pones 1 (línea recta) en el primer parámetro y 15 (opacidad) en el tercer parámetro.
- Donde esta delete_draw(0) por delete_draw(all_drawing), en DivGO la variable all_drawing es distinta a 0.

Así te debería de funcionar el programa sin dar error y sin ralentizaciones por no borrar draw(). Ahora seria ver si los valores de vertices[][] que te da en Bennu son iguales que en DivGO y si lo estas aplicando en el parámetro correcto de la función draw(). :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 24, 2015, 08:07:04 PM
Ejemplo (avance) de pintado de archivos .map de Div con javascript:

http://www.divgo.net/proyectos/divgo-maps/index.php
http://www.divgo.net/proyectos/divgo-maps/index.php?map=MENU.MAP
http://www.divgo.net/proyectos/divgo-maps/index.php?map=BACKGRN3.MAP
http://www.divgo.net/proyectos/divgo-maps/index.php?map=081.map
http://www.divgo.net/proyectos/divgo-maps/index.php?map=Map10.map (este tarda un poco mas en visualizarse es bastante pesado)

Al fin he conseguido interpretar los maps (puntos, paletas e imagen), me tenia to loco!!  8)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 01, 2015, 03:29:59 PM
Ya disponible online la versión 0.66 y las novedades:

variables mouse:
  - right, middle, browser

bugs y mejoras:
  - [ADD] lectura y visualización de archivos .map de div (incluye puntos de control)
  - [ADD] añadido nuevo mensaje de error en el compilador y control de dicho error
  - [ADD] primera versión del editor grafico (funcionalidades básicas)
  - [ADD] mejoras internas del IDE
  - [FIX] los objetos 3d cargados con load_object3d() ahora se incluye en el empaquetado de forma automática
  - [ADD] en el empaquetado se incluyen las imágenes editadas con el editor grafico
  - [ADD] nueva opción para guardar y recuperar código de la nube/servidor de divgo.net

Mirando la lista de novedades parece traer pocas esta versión pero el editor grafico y la lectura de maps equivalen al triple de novedades, ha habido mucho trabajo en ello. :P

Quote from: PiXeL on March 18, 2015, 11:35:50 AM
Holas AmakaSt :)


Primero de todo, agradecerte el curro que le estás dando. Nunca está de más nuevos engines DIV-like :)


Por ahora yo lo estoy utilizando para hacer ejemplos rápidos de códigos, y me viene bastante bien, aunque me gustaría pedirte un detalle:
¿Qué te parecería que se pudiera guardar los PRGs online? Es como el código que puse el otro día en Twitter. En vez de dar una URL de PasteBin y otra de DivGO, una URL de DivGO con un parámetro que identifique al PRG guardado en el servidor, o incluso un segundo parámetro para directamente ejecutar ese PRG enviado.


¿Qué te parece?


Un saludo

PiXeL en esta versión esto ya queda incluido. :)

Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on May 01, 2015, 06:14:55 PM
Guay, tomo nota :)


Igual intento hacer una prueba luego, a ver qué tal el invento xD
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on May 01, 2015, 06:37:46 PM
Ahora es luego ya xD


He roto un poco DivGO otra vez con mis códigos complejillos xD


Por si quieres probarlo:
http://pastebin.com/9Q4y6nZF


Tiene estos errores:
fpg_boomkas; [/size]-- NOT FOUND[/color][/size]22 return load_sound(nombre,0); -- VARIABLE NOT DEFINED!145 break; -- NOT FOUND[/size][/font]
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 01, 2015, 07:20:30 PM
Quote from: PiXeL on May 01, 2015, 06:37:46 PM
Ahora es luego ya xD


He roto un poco DivGO otra vez con mis códigos complejillos xD


Por si quieres probarlo:
http://pastebin.com/9Q4y6nZF (http://pastebin.com/9Q4y6nZF)


Tiene estos errores:
fpg_boomkas; -- NOT FOUND22 return load_sound(nombre,0); -- VARIABLE NOT DEFINED!145 break; -- NOT FOUND

Hola PiXeL,

El error del fpg_boomkas es porque utilizas la variable e intentas carga un fpg, DivGO no carga fpgs, carga carpetas que simulan ser fpg con imágenes png o map con nombres del 000.png al 999.png, por lo que dará error, aunque este error está saliendo en la línea equivocada debería de marcar la linea 11.

Sobre el error en return load_sound(nombre, 0); es porque la variable le habías puesto el tipo String delante, en DivGO no es necesario declarar el tipo de variable, es automático:

Function music_once(nombre); //Function music_once(string nombre);
Begin
        x=load_sound(""+nombre+".ogg",0);
    sound(x,100,100);
End

Y luego hay un error que tampoco está bien marcada la línea, dice que esta en la línea de break; pero se queja de que no se encontró, así que puede ser que sea la carga de un archivo incompatible o que no este en la ruta indicada.

Tengo que ver porque sigue fallando el marcado de errores, pensaba que esto ya lo tenía solucionado.
También tengo que revisar que ha pasado con lo de que compruebe los espacios entre variables: Function music_once(string nombre); //Debería haberse quejado el compilador aquí. :(

Me lo mirare antes de sacar la versión descargable.

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 03, 2015, 02:06:52 PM
Versión 0.66 ya disponible para descargar.

P.D: mouse.browser sirve para ocultar el mouse en la pantalla (canvas) del juego, el valor por defecto es true. Esto se me había olvidado explicarlo. :P
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 31, 2015, 09:45:12 PM
Nueva versión 0.68 ya disponible online, las novedades que incluye:

variables loading:
  - percent, percent_x, percent_y, percent_size, percent_color
  - progress, progress_x, progress_y, progress_size, progress_color

bugs y mejoras:
  - [ADD] ahora se puede restaurar las imágenes editadas desde el editor con la opción de borrar cambios
  - [ADD] pestañas de código, ahora puedes tener abierto 4 códigos sin necesidad de machacar los anteriores
  - [ADD] ahora el botón derecho del ratón desde el editor grafico pinta el segundo color seleccionado
  - [ADD] mejorado en el rendimiento de la lib de divgo
  - [ADD] ahora program también se incluye en la lista de procesos para acceder de forma rápida en el código
  - [FIX] las tablas no se interpretaban bien con write_int() si la posición era el nombre de una variable
  - [FIX] solucionado problema con el guardado de imágenes modificadas con el editor, ahora se guarda en la ruta especifica del proyecto
  - [FIX] salida de más de un bucle con break desde un mismo proceso, no guardaba la posición de salida con bucles for, from y while
  - [FIX] la sentencia return desde hace varias versiones atrás dejo de devolver valores
  - [FIX] problema con la posición de enlace de la lista de procesos y funciones cuando había comentarios /* */ que ignoraba dichas líneas comentadas
  - [FIX] solucionado varios bugs menores

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 20, 2015, 06:44:42 PM
Versión 0.70 de Div GO ya disponible online, las novedades:

funciones:
  - trim(), rtrim(), ltrim()

variables:
  - t_milliseconds, num_text, num_drawing, num_xdrawing, num_video, num_sound, num_object3d, num_light3d

bugs y mejoras:
  - [ADD] los puntos de control se mantienen en los gráficos a los que se les aplica efectos
  - [ADD] ahora también se aplican los puntos de control en los gráficos dentro del mode7 y scene3d
  - [ADD] sentencia continue
  - [ADD] el marcado de errores vuelve a funcionar y ahora se guarda con el código de la pestaña seleccionada
  - [ADD] ahora se mantiene guardado el fpg seleccionado en su respectiva pestaña
  - [FIX] arreglado varios problemas menores del ide
  - [FIX] corrección de salida al usar break combinado con varios if y distintos bucles en un único proceso
  - [FIX] no se podía guardar el prg de la pestaña seleccionada

Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 21, 2015, 07:25:58 PM
Ya disponible para descargar. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 24, 2015, 06:51:34 PM
Ya disponible online Div GO versión 0.72, las novedades:

funciones 2d:
   - collision_circle()
funciones 3d:
   - set_terrain(), collision_objects3d(), object_in_scene3d()
bugs y mejoras:
   - [FIX] ahora la variable local son funciona correctamente
   - [FIX] stop_scene3d(),stop_mode7(), start_mode7() ahora se cierran e inicializan correctamente y evita saturación
   - [ADD] terrenos heightmaps con scene3d y colisiones de objetos 3d
   - [FIX] corregido colisionado con efectos gráficos y rotaciones
   - [ADD] posibilidad de cambiar la posición de una imagen en el fpg
   - [ADD] opción de incluir nuevas imágenes al fpg, arrastrando la imagen desde una carpeta al navegador


En breve ire subiendo ejemplos de las nuevas funciones. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 26, 2015, 08:27:54 PM
Y aquí unos enlaces de ejemplo de uso de las nuevas funciones:
Ejemplo de set_terrain():  http://www.divgo.net/c-d86caa78 (http://www.divgo.net/c-d86caa78)
Ejemplo de collision_objects3d(): http://www.divgo.net/c-487be663 (http://www.divgo.net/c-487be663)

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 28, 2015, 11:28:37 PM
Versión 0.72 de Div GO ya disponible para descargar. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 13, 2015, 10:12:03 AM
Nueva versión 0.74 de DivGO subida online para testeos, aquí la lista de novedades:

bugs y mejoras:
  - [FIX] collision_box() y collision_circle() con uso de puntos de control
  - [FIX] solucionado error con collision() al reducir con size y usar punto de control
  - [ADD] collision_box() y collision_circle() mas optimos
  - [FIX] screen_smooth() ahora vuelve a funcionar
  - [FIX] corregido problema de coordenadas en la rotación de objetos3d con respecto a posición de la cámara
  - [ADD] optimización en la función collision()
  - [ADD] el bloque loading soporta funciones: set_mode(), set_title(), set_icon(), screen_color(), screen_smooth()
  - [DEL] eliminada variable screen_paint del bloque loading
  - [ADD] optimización de código, ahora el archivo js de divgo es más ligero.

Y aquí os dejo 2 nuevos ejemplos, que también están disponibles en la lista de funciones:
http://www.divgo.net/c-23b9db76
http://www.divgo.net/c-94a41a72

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 13, 2015, 07:30:24 PM
Versión 0.74 lista para descargar!  8)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 18, 2015, 08:05:49 PM
Ya disponible para descargar la versión 0.74 rev. 1, esta incluye correcciones.
También he cambiado la configuración en su versión ejecutable para que se le pueda añadir gráficos al fpg arrastrando los archivos. :)
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on August 26, 2015, 12:30:52 AM
excelente trabajo




pregunta este compilador que tan compatible con las funciones bennu es? puedo coger un juego de bennu y correrlo en divgo con
que limitaciones exactamente...  te agradezco es que queremos hacer algo interesante...

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 26, 2015, 07:07:47 AM
Quote from: l1nk3rn3l on August 26, 2015, 12:30:52 AM
pregunta este compilador que tan compatible con las funciones bennu es? puedo coger un juego de bennu y correrlo en divgo con
que limitaciones exactamente...  te agradezco es que queremos hacer algo interesante...

No me he puesto a comprobar que diferencias exactas hay con las funciones de Bennu. Empecé DivGO con que fuera lo más parecido a Div2 en funciones y añadir lo que se me fuera ocurriendo o me fueran sugiriendo. :P
Seguro que en el código tendrás que hacer cambios para poder portar un juego de Bennu a DivGO y viceversa.

Por ejemplo, DivGO no soporta paletas por lo que funciones como map_get_pixel() devuelve un valor rgb() en vez del número del color en la paleta: http://www.divgo.net/c-8df122aa
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on August 26, 2015, 02:16:48 PM
aahh ok...       queriamos comentarte que deseamos hacer un editor con tu entorno
parecido al que hicimos en el pasado con el notepad++ y el divgo
http://www.mediafire.com/download/vq3oe3dzegcn220/setup.zip





pero ya regresamos y vamos a hechar mano del bennu version sdl2 entonces
aprovechamos para meterle mano al tuyo que esta excelente tmbn  y....


crear un ide que tenga  exportacion android_Arm(apk) y Exportacion windows( exe)  del juego
seria algo asi como el divgo-pack ...  :P    por mucho en 2 semanas te lo damos para revision...




para actualizarlo seria el mismo procedimiento que el de antes, remplazando el contenido de la carpeta
divgo con el nuevo....   

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 26, 2015, 10:06:50 PM
Me parece bien! :)

Lo que yo voy actualizando cada dos por tres, para la semana que viene quiero tener lista la 0.76, así que mejor será esperar a que saque esta versión. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 04, 2015, 08:57:37 AM
En breve habrá nueva versión, aquí dejo unas capturas de lo que he conseguido arrancar ya en esta próxima versión:

(https://scontent-mad1-1.xx.fbcdn.net/hphotos-xla1/v/t1.0-9/11990687_878227965587828_5732067970088059434_n.jpg?oh=8df0fa891fb66f4b5855bc554d7081f8&oe=566AF1CF) (https://scontent-mad1-1.xx.fbcdn.net/hphotos-xpa1/v/t1.0-9/s720x720/10454324_878227978921160_3794739319916178513_n.jpg?oh=04f079820839aa9e31e8d2bbf8d08d06&oe=56648BF4)

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on September 04, 2015, 09:05:57 AM
Muy bueno, por cierto habria alguna forma de correr tu engine pero localmente como si fuera un app o sistema similar que no dependa de navegador ?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 04, 2015, 10:40:25 AM
Normalmente saco 2 versiones: una para arrancar con un servidor local (xampp, wamp o similares) y otra ejecutable.
Para la versión ejecutable utilizo phpdesktop: https://code.google.com/p/phpdesktop/wiki/DownloadChrome (https://code.google.com/p/phpdesktop/wiki/DownloadChrome)

También hay otras aplicaciones para poder convertir en ejecutable:
http://nwjs.io/ (http://nwjs.io/)
http://gtk.php.net/ (http://gtk.php.net/)
http://appjs.com/ (http://appjs.com/)
http://phonegap.com/blog/2015/03/02/phonegap-app-desktop-0-1-2/ (http://phonegap.com/blog/2015/03/02/phonegap-app-desktop-0-1-2/)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on September 04, 2015, 10:44:50 AM
gracias miraré esas apps suenan interesante, asi tendriamos una alternativa desktop, es que los navegadores no me convencen, me gusta verlo como app de toda la vida  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 04, 2015, 11:04:26 AM
Y la versión desktop que incluyo en las descargas no te funciona?
Esa la suelo configurar para que funcionen todas las opciones necesarias de php. :P
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on September 04, 2015, 12:08:51 PM
Pues perdona mi ignorancia pero aun no he probado tu aplicación ;) Lo miraré este finde por primera vez que ya va siendo hora. apenas habia seguido su evolución y ejecutado algo en el navegador.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 04, 2015, 01:13:51 PM
cordial saludo


ya esta listo todo el exportador de exe...(windows)
el exportador de android (apk)




tenemos problemas de sonido en android
posiblemente .. la solucion sea usar la api de sonido de cordova.js
http://docs.phonegap.com/en/edge/cordova_media_media.md.html

en android los juegos exportados funcionan OK pero el sonido no funciona......




podrias probar usando el reproductor de medios de cordova? en divgo nativamente incluyendo el cordova.js para reproducir sonidos
[url]http://docs.phonegap.com/en/edge/cordova_media_media.md.html[/url]


un ejemplo de la api de cordova ...





[code]



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
                          "[url=http://www.w3.org/TR/html4/strict.dtd]http://www.w3.org/TR/html4/strict.dtd[/url]">
    <html>
      <head>
        <title>Media Example</title>


        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
        <script type="text/javascript" charset="utf-8">


        // Wait for device API libraries to load
        //
        document.addEventListener("deviceready", onDeviceReady, false);


        // device APIs are available
        //
        function onDeviceReady() {
            playAudio("[url=http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3]http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3[/url]");
        }


        // Audio player
        //
        var my_media = null;
        var mediaTimer = null;


        // Play audio
        //
        function playAudio(src) {
            // Create Media object from src
            my_media = new Media(src, onSuccess, onError);


            // Play audio
            my_media.play();


            // Update my_media position every second
            if (mediaTimer == null) {
                mediaTimer = setInterval(function() {
                    // get my_media position
                    my_media.getCurrentPosition(
                        // success callback
                        function(position) {
                            if (position > -1) {
                                setAudioPosition((position) + " sec");
                            }
                        },
                        // error callback
                        function(e) {
                            console.log("Error getting pos=" + e);
                            setAudioPosition("Error: " + e);
                        }
                    );
                }, 1000);
            }
        }


        // Pause audio
        //
        function pauseAudio() {
            if (my_media) {
                my_media.pause();
            }
        }


        // Stop audio
        //
        function stopAudio() {
            if (my_media) {
                my_media.stop();
            }
            clearInterval(mediaTimer);
            mediaTimer = null;
        }


        // onSuccess Callback
        //
        function onSuccess() {
            console.log("playAudio():Audio Success");
        }


        // onError Callback
        //
        function onError(error) {
            alert('code: '    + error.code    + '\n' +
                  'message: ' + error.message + '\n');
        }


        // Set audio position
        //
        function setAudioPosition(position) {
            document.getElementById('audio_position').innerHTML = position;
        }


        </script>
      </head>
      <body>
        <a href="#" class="btn large" onclick="playAudio('[url=http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');]http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');[/url]">Play Audio</a>
        <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
        <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
        <p id="audio_position"></p>
      </body>
    </html>


[/size][/font]




asi cuando se exporten los proyectos a android funcionaria el sonido tambien...




tienes algun proyecto apk   usado en divgo que funcione el sonido para que lo compartas? ??   


o cual seria la mejor solucion para el sonido android   


ya todo funciona solo es que los juegos no tienen sonido en android para compartir el ide con todo funcionando....   gracias
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 04, 2015, 04:02:26 PM
bueno aqui un proyecto usando cordova que hemos creado


http://www.mediafire.com/download/rrem78tq25vh7ef/audio_funcionando_en_android_usando_cordovajs.rar




que incluye :


index.html para probarlo en firefox en windows


y apk para probarlo en android funciona el audio perfectamente...


lo raro es que el boton pausar sonido arroja un error no sabemos que sera
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 04, 2015, 06:03:46 PM
He mirado el código javascript por encima y veo que se intenta pausar un audio que no existe.


function playStream() {
  try {
   //alert ("ffff");
  var myaudio = new Audio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');

    myaudio.id = 'playerMyAdio';
    myaudio.play();
  } catch (e) {
    alert('no audio support!');
  }
}

function stopStream() {
  try {
   myaudio.pause();
  } catch (e) {
    alert('no audio support!');
  }
}


Al hacer var myaudio dentro de la función playStream() esta es privada de la función, prueba así a ver (luego me lo miro mas a fondo):


var myaudio;

function playStream() {
  try {
   //alert ("ffff");
  myaudio = new Audio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');

    myaudio.id = 'playerMyAdio';
    myaudio.play();
  } catch (e) {
    alert('no audio support!');
  }
}


function stopStream() {
  try {
   myaudio.pause();
  } catch (e) {
    alert('no audio support!');
  }
}


Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 04, 2015, 06:14:49 PM
se me olvidaba que javascript crea variables locales en las funciones era eso porque no funciona el boton pause....


regresando al tema yo creo que usando cordova en divgo se podra usar el sonido en ios y android sin problemas ...
es una sugerencia ..
http://docs.phonegap.com/en/edge/cordova_media_media.md.html (http://docs.phonegap.com/en/edge/cordova_media_media.md.html)


solo nos falta eso  para terminar el editor de divgo que prometimos  (con todo 100%) ..
asi que porfavor usa cordova como reproductor de sonidos/musica/video





nueva version del reproductor usando cordova js
http://www.mediafire.com/download/nhgd2h3ooa9y4dh/reproductor_medios_cordova.rar (http://www.mediafire.com/download/nhgd2h3ooa9y4dh/reproductor_medios_cordova.rar)
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 04, 2015, 09:13:50 PM
agradeceria alguna pista para hacercorrer un juego en un telefono con ubuntu, gracias
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 04, 2015, 09:45:18 PM
requiere que descargues el kit de desarrollo de ubuntu para crear aplicaciones para la tienda ubuntu
https://developer.ubuntu.com/en/start/




o la otra es que copies tu proyecto html5 a la tarjeta de memoria del telefono y lo corras desde el admon de archivos del telefono
supuestamente es un archivo html deberia funcionar haciendo click sobre el index.html desde el telefono creo yoo
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 04, 2015, 11:30:40 PM
aqui una version actualizada para reproducir sonidos y videos en windows y android sin cambiar codigo


http://www.mediafire.com/download/td5365clk0lnj63/media_player_usando_cordovaaa.rar
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 05, 2015, 11:55:42 AM
bien gracias, le echaré un vistazo, aunque ya lo tengo instalado y sin saber ni zorra idea de sdk de ubuntu, la idea seria abrir un .dcb con un bgdi usando unas librerias dentro de la misma carpeta, una cosa tan facil de hacer en la terminal del pc y que no se puede en la terminal del telefono, asi que toca empollar ;)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 05, 2015, 12:30:17 PM
Ya disponible online la versión 0.76, esta es para realizar testeos antes de sacar las descargas, aquí las novedades:

funciones 3d:
   - clear_texture(); color_object3d(); video_in_object3d();

variables:
   - xgraph, stroke_size, stroke_round

bugs y mejoras:
   - [FIX] corregido problema con signal al eliminar varios procesos de distintos tipos con all_process
   - [FIX] corregida la posición de los puntos de control de los archivos map
   - [ADD] palabra reservada dup para duplicar valores incluidos entre paréntesis
   - [CHANGE] cambios en el compilador para que no de error declaración de variables nuevas con variables definidas de las structs
   - [FIX] map_block_copy, map_xput, map_put, map_put_pixel y screen_copy, no manejaba el punto de control de la imagen
   - [FIX] realizado varias correcciones en el compilador

Un saludo.  :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 06, 2015, 11:26:15 AM
Realizada pequeña actualización de la v0.76, he incluido la función draw_stamp(); para poder pegar al fondo los draw.

Con draw_stamp(all_drawing) pegara al fondo todos los draw que haya en el momento, así se puede ir liberando draw sin que estos desaparezcan de pantalla.

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 06, 2015, 12:56:29 PM
Div GO versión 0.76 ya disponible para descargar, tanto versión normal como versión desktop para windows. :)
Title: Re:Div Games en Html5 y Canvas
Post by: everbill on September 06, 2015, 01:39:34 PM
excelente trabajo. Me encanta el trabajo queestas haciendo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 06, 2015, 10:09:25 PM
Gracias everbill. :)
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 07, 2015, 01:38:00 AM
para usar otro reproductor de sonidos .. en que parte del codigo debo cambiar
el loadsound y el play???
parece que el codigo de divgo.js esta ofuscadoooo

http://www.mediafire.com/download/td5365clk0lnj63/media_player_usando_cordovaaa.rar (http://www.mediafire.com/download/td5365clk0lnj63/media_player_usando_cordovaaa.rar)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 07, 2015, 07:14:16 AM
Quote from: l1nk3rn3l on September 07, 2015, 01:38:00 AM
para usar otro reproductor de sonidos .. en que parte del codigo debo cambiar
el loadsound y el play???
parece que el codigo de divgo.js esta ofuscadoooo

http://www.mediafire.com/download/td5365clk0lnj63/media_player_usando_cordovaaa.rar (http://www.mediafire.com/download/td5365clk0lnj63/media_player_usando_cordovaaa.rar)

Se puede añadir al final de divgo.js una nueva función load_sound() y sound() por lo que automáticamente las de divgo acabarían siendo ignoradas.


... zncxiuhoiauh; //código minificado
//esto sería el final del código de divgo.js

var load_sound = function(archivo, repetir){
            if (DivGO.sonido_cargado[archivo] === undefined){
                  DivGO.sonido_cargado[archivo] = new Audio(archivo) || document.createElement('audio');
                  DivGO.sonido_cargado[archivo].src = archivo;
                  DivGO.sonido_cargado[archivo].loop = repetir;
       
                  return DivGO.sonido_cargado[archivo];
            }else{
                  DivGO.sonido_cargado[archivo].loop = repetir;
                   
                  return DivGO.sonido_cargado[archivo];
            }
      },

      sound = function(canal, volumen, frecuencia){
            if (canal.currentTime) canal.currentTime = 0;
       
            if (volumen > 512) volumen = 512;
            if (volumen < 0)   volumen = 0;
       
            if (frecuencia > 512) frecuencia = 512;
            if (frecuencia < 0)      frecuencia = 0;
       
            canal.volume = volumen/512;
            canal.playbackRate = (frecuencia*2)/512;
               
            if (typeof canal === 'object') canal.play();
       
            DivGO.numero_sound.push(new DivGO.CREATEsound(canal));
       
            num_sound++;
       
            return DivGO.numero_sound[DivGO.numero_sound.length-1].id;
      };



El código esta minificado para que la carga de javascript sea menos pesada, desde aquí puedes dejarlo algo más legible: http://jsbeautifier.org/

Por otro lado, estuve probando la lib de cordova y no conseguí que se oyera desde mi móvil... no sé si puede deberse por la versión de android. :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on September 07, 2015, 07:53:20 AM
entonces no es open source ? porque descompilar con esas tools no suelen decompilarlo al 100% y que sean compilable al 100%
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 07, 2015, 08:59:35 AM
Quote from: FreeYourMind on September 07, 2015, 07:53:20 AM
entonces no es open source ? porque descompilar con esas tools no suelen decompilarlo al 100% y que sean compilable al 100%
El código js siempre suele estar abierto, se puede ofuscar o minificar, al minificar lo que se hace es quitar espacios, tabulaciones, comentarios y reducir algunos nombres de variables locales para reducir el peso del archivo js.
Beautifier js lo que hace es devolver los espacios y las tabulaciones, haciendo que vuelva a ser un poco mas legible, esto no es una descompilación. Lo que no devuelve son los comentarios (tampoco es que hayan muchos comentarios en mi código) ni los nombres largos de las variables locales, y seguirá siendo 100% compatible.

En los paquetes de descarga se incluye todo el código aunque una parte la de javascript este minificada, el 80% restante, todo lo que es php, está abierto sin minificar ni ofuscar (empaquetador, compilador, constructor de código).
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on September 07, 2015, 09:06:33 AM
Ok, gracias por la aclaración, por otro lado no pude ponerme a probarlo el finde, a ver si a lo largo de la semana  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 07, 2015, 11:27:42 AM
Añadido ejemplos de las nuevas funciones:

video_in_object3d() : http://www.divgo.net/c-2f3ff101
color_object3d() : http://www.divgo.net/c-f6904765
draw_stamp() :  http://www.divgo.net/c-41047308

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 07, 2015, 01:20:55 PM
cordial saludo..


gracias por la explicacion


probaste el apk que viene incluido en el telefono??? requiere android 4.0 en adelante...   el telefono debe tener conexion a internet para probar el ejemplo....
es que por el momento estoy probando cordova con archivos alojados en la nube


ya que localmente es otra ruta dentro de android .. (por facilitar las cosas y probar ya que android para reproducir
sonidos necesita permisos .. ese trabajo lo hace cordova.js )


por favor confirmame si probaste el apk de cordova con el telefono conectado al wifi o a internet
agradezco su tiempo...



por favor alguien que tambien tenga android pruebe los apk que vienen de ejemplo a ver si funcionan
en sus dispositivos android (conectados a internet por supuesto) requiere android 4.0 en adelante


http://www.mediafire.com/download/td5365clk0lnj63/media_player_usando_cordovaaa.rar (http://www.mediafire.com/download/td5365clk0lnj63/media_player_usando_cordovaaa.rar)


estamos en fase de pruebas antes de liberar la definitiva (ide con exportacion android y windows)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 07, 2015, 02:05:56 PM
Esta vez sí que me ha funcionado bien el audio!  8)

Yo tengo un LG G3 con Android 5.0 Lollipop (por si necesitas saber la versión).
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on September 07, 2015, 04:58:46 PM
yo tambien tengo ese movil  ;D  pero version 32 gigas, 3 gigas ram
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 09, 2015, 07:23:13 PM
he estado trasteando un poco y una pregunta que me surge es...
¿donde se guarda mi juego?
osea, no tengo ninguna cuenta creada de usuario ni nada, no se donde esta mi juego si esta guardado o que, y no se si podria abrirlo, donde se guarda...

aparte, si está terminado el juego, ¿como puedo hacer que tu lo juegues?
osea, debo de tener una url para poder jugarlo en la tablet, por ejemplo...
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 09, 2015, 11:26:45 PM
Quote from: Futublock on September 09, 2015, 07:23:13 PM
he estado trasteando un poco y una pregunta que me surge es...
¿donde se guarda mi juego?
osea, no tengo ninguna cuenta creada de usuario ni nada, no se donde esta mi juego si esta guardado o que, y no se si podria abrirlo, donde se guarda...

aparte, si está terminado el juego, ¿como puedo hacer que tu lo juegues?
osea, debo de tener una url para poder jugarlo en la tablet, por ejemplo...

Hola Futublock,

Automáticamente se guarda en la cache del navegador, en la versión ejecutable lo guarda en una carpeta que se llama webcache que se crea al ejecutar por primera vez DivGO. En la cache (webcache) se guardan todos los cambios que hagas, tanto de código como de imágenes y configuraciones. No hace falta cuenta, no se guarda en la "nube". :)

Cuando tengas avances importantes en tu juego te aconsejo que guardes de vez en cuando un prg pulsando al botón de guardar prg, con esto lo guardas en la ruta que indiques de tu ordenador. También está la opción para guardar en la "nube", en el servidor de divgo.net, esto vale para recuperar de forma privada desde cualquier ordenador insertando el código de recuperación (acuérdate de apuntarlo) o publica compartiendo el enlace.

Y una vez hayas acabado el desarrollo del juego tienes la opción de empaquetar, te dará tu juego con todos los gráficos, sonidos y fuentes que hayas cargado, preparado para subir a un servidor o pagina de juegos online. Y si no tienes un servidor también te lo puedo subir a www.divgo.net para que este en el apartado de juegos desarrollados. En un futuro quiero hacer una sección de registro de cuenta de desarrollador para el que quiera pueda subir sus proyectos empaquetados a divgo.net y poder administrarlos/actualizarlos, pero eso es para más adelante. :P

También tienes la opción de empaquetar tu proyecto y usar herramientas como Intel XDK para poder hacer juegos para móvil, es una herramienta bastante fácil de usar, es importar el juego empaquetado y hacerle algunas configuraciones para la app movil. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 10, 2015, 02:57:20 PM
en un principio, lo unico que me interesa es una url con mi juego donde se pueda jugar en cualquier navegador (o el mas usado) peeeero primero hay que tener un juego, asi que trastearé

gracias y karma++
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 11, 2015, 03:27:37 AM
en un principio compilador.php sabia que archivo compilar leyendo  appRoute.tmp


dentro habia la ruta del prg que habia de compilar ...


desde el editor IDE cargo compilador con alguna variable en particular para saber cual se debe compilar?


algo asi seria actualmente  ?
localhost:8080/compilador.php?file=ejemplo.prg




es que desde el ide le doy localhost/compilador.php   y me carga el index.php




internamente se usa javascript  para leer el archivo compilado


DivGO_IDE.opcionPulsada(this.name)

pero digamos desde un editor externo no puedes volver a usar   appRoute.tmp   para indicarle a compilador.php
cual fuente se desea compilar?
Route.tmp  para decirle que archivo compilar adicionalmente?

cias



Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 11, 2015, 10:05:25 AM
Quote from: l1nk3rn3l on September 11, 2015, 03:27:37 AM
en un principio compilador.php sabia que archivo compilar leyendo  appRoute.tmp


dentro habia la ruta del prg que habia de compilar ...


desde el editor IDE cargo compilador con alguna variable en particular para saber cual se debe compilar?


algo asi seria actualmente  ?
localhost:8080/compilador.php?file=ejemplo.prg




es que desde el ide le doy localhost/compilador.php   y me carga el index.php




internamente se usa javascript  para leer el archivo compilado


DivGO_IDE.opcionPulsada(this.name)

pero digamos desde un editor externo no puedes volver a usar   appRoute.tmp   para indicarle a compilador.php
cual fuente se desea compilar?
Route.tmp  para decirle que archivo compilar adicionalmente?

cias




He tenido que mirarme el código porque no recordaba como estaba hecho esto.

Esto no se ha tocado desde que lo hice, esta como siempre, no hace falta indicarle al compilador el archivo necesario, si creas un archivo appRoute.tmp en la misma ruta donde se encuentra compilador.php y lo ejecutas: localhost:8080/compilador.php

Existiendo appRoute.tmp cogerá el archivo prg desde la ruta que tenga escrita dentro y que exista el prg. Una vez lo compila el archivo appRoute.tmp se elimina automáticamente.

Dentro del appRoute.tmp tiene que ir escrita una ruta, como por ejemplo: "ejemplos/ejemplo_advance.prg"

Cualquier duda me comentas. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 11, 2015, 11:50:22 AM

funciona como dices parece que es otra cosa...

si es asi pero parece que el servidor web local no funciona como antes.. mirare que esta pasando
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 13, 2015, 08:08:30 AM
me estoy peleando con los graficos, le doy a añadir grafico y me aparece en la web el grafico que quiero, pero no se que hacer despues, no pone boton de guardar ni nada...
si le doy a la X resulta que el grafico queda en el fpg con el nº 11, luego en codigo lo selecciono y no aparece, no se por que
No se si eso es un ''fallo'' o es algo que no hago bien
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 13, 2015, 03:55:47 PM
Hola Futublock,

Cuando subes una imagen y cierras con X se guardan los cambios que hayas realizado, por lo que la imagen que has subido queda reflejada en la lista del visor FPG. Pero veo que falla, no da error pero tampoco se dibujan las imágenes subidas al FPG, esto ha tenido que fallar con algún cambio que he hecho en la actual versión.  :-[

Mirare de corregirlo para la próxima.

Un saludo y gracias por el reporte.

Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 13, 2015, 05:06:32 PM
weeeeeeeeee soy un ''bug-finder'' lol...
+ karma porque si, lol
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 14, 2015, 08:10:58 PM
Ya lo tengo solucionado, este era un bug de los gordos. A causa de este bug habían varios errores que no tenia controlado o no los había testeado.
Por ejemplo, si intentas subir un grafico a un fpg distinto al de la carpeta gráficos, por ejemplo el de las texturas u otro, no se añade ningún grafico. SOLUCIONADO
Y una vez había solucionado lo de las texturas al intentar aplicarlas a los objetos 3d, scene3d o mode7, estas no se aplicaban y quedaban en blanco. SOLUCIONADO

Así que para la próxima versión eso ya esta corregido. :)

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 14, 2015, 09:00:13 PM
bien, porque me estaba enganchando ya al divgo
karma++
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 16, 2015, 04:13:02 AM




algo le pasa a este foro algunas cosas
no aparecen

http://tinyurl.com/q7xcdxn
[/size]
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 16, 2015, 04:19:28 AM
me toco en otro post anunciar el editor divgo con exportacion android y windows

http://tinyurl.com/q7xcdxn (http://tinyurl.com/q7xcdxn)
Quote

[/code]http://tinyurl.com/q7xcdxn




[font=verdana][size=2px][url=http://tinyurl.com/q7xcdxn]http://tinyurl.com/q7xcdxn[/url][/size][/font][/size][/font]
[/font]




http://tinyurl.com/q7xcdxn
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 16, 2015, 07:30:29 AM
sorprendido me hallo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 16, 2015, 07:31:08 AM
Muy interesante! :)

Lo he estado probando y he visto que hace algo raro cuando exporto a EXE, una vez hace el proceso de exportación me abre la carpeta de Mis Documentos y no esta el juego exportado. En cambio si que lo crea dentro de la carpeta temporal: temp/exe/


También pasa al exportar a APK.
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 16, 2015, 01:12:53 PM
si es algo temporal... provisional del ide...


pero mas o menos seria eso para los que quieren ver sus creaciones divgo  en android  y windows con un solo click




Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on September 16, 2015, 03:10:51 PM
Una preguntilla l1nk. Todo esto que estáis desarrollando, ¿lo tenéis en algún repositorio de código abierto?

Por saber :)
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 16, 2015, 06:15:31 PM
nueva version del editor divgo mas estable  ...  (por el momento el sonido en android no funciona)




http://bit.ly/1KqpdvI
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 17, 2015, 12:00:29 AM
Quote from: PiXeL on September 16, 2015, 03:10:51 PM
Una preguntilla l1nk. Todo esto que estáis desarrollando, ¿lo tenéis en algún repositorio de código abierto?

Por saber :)




aqui el  editor que estamos trabajando para divgo  con opciones android y windows... 
http://bit.ly/1KhU7mm





bennugd 2 y pixstudio esta en desarrollo en breve subiremos los avances...
https://sourceforge.net/projects/coldev/files/bennugd2_Pixtudio/ (https://sourceforge.net/projects/coldev/files/bennugd2_Pixtudio/)


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 18, 2015, 11:05:01 PM
Versión 0.78 ya disponible online para realizar testeos, las novedades:

funciones 2d:
   - xdraw_stamp(); move_scroll();

variables:
   - rgb_to_invert, rgb_to_grayscale, rgb_to_bw

bugs y mejoras:
   - [CHANGE] cambiado el orden de colocación de variables locales y privadas en la construcción de un proceso
   - [FIX] el programa daba error al intentar hacer cualquier tipo de colisión con mouse
   - [FIX] solucionado problemas en la actualización del scroll cuando había varias regiones con scroll inicializado
   - [FIX] arreglado problema desde el compilador con variable timer[0]=x; si no usaba corchetes timer=x;
   - [FIX] solucionado problema con la carga y visualización de imágenes subidas desde el visor fpg del entorno
   - [FIX] al subir imágenes desde el visor fpg a un fpg distinto del 0 no se guardaba
   - [FIX] las texturas subidas desde el visor fpg, no se aplicaba en los objetos 3d, dejando estos en blanco
   - [CHANGE] set_mode() cambia la forma de interpretar el reescalado de pantalla, ahora con poner set_mode(m320x240,2); reescalara a 640x480
   - [CHANGE] stop_scroll() ahora elimina los procesos que tenga ctype con valor c_scroll y no exista ninguna región con scroll
   - [ADD] incluido el juego de div 2 Castle of Dr. Malvado de Daniel Navarro adaptado a div go

Un saludo.  (http://foro.bennugd.org/Smileys/default/smiley.gif)
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on September 19, 2015, 12:12:20 PM
Hola amaka, le he dado click a crear empaquetado en el juego del doctor malvado y me descargo de tu web un zip, al descomprimirlo y ejecutar el index me salta el explorardor "google crome" para abrir el juego y se queda al 15% de ahi no pasa.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 19, 2015, 01:03:30 PM
Quote from: Erkosone on September 19, 2015, 12:12:20 PM
Hola amaka, le he dado click a crear empaquetado en el juego del doctor malvado y me descargo de tu web un zip, al descomprimirlo y ejecutar el index me salta el explorardor "google crome" para abrir el juego y se queda al 15% de ahi no pasa.

Me lo mirare a ver que puede estar pasando, gracias por el reporte. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 19, 2015, 07:04:42 PM
Vale, esto no es un fallo de DivGO, esto es cosa de Chrome que no permite la carga de archivos en javascript cuando usas el protocolo 'file:///' (por temas de seguridad), con Firefox no hay este problema. Tienes que ponerlo en un servidor local o subirlo a un servidor remoto, con un protocolo 'http://' o 'https://' funciona bien.

Para hacerlo funcionar pulsado únicamente sobre el index.html usa Firefox que no te dará problemas.

Creo que esto ya lo había comentado alguna vez... :P

Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 19, 2015, 07:38:01 PM
Quote from: AmakaSt on September 18, 2015, 11:05:01 PM
Versión 0.78 ya disponible online para realizar testeos, las novedades:
   - [FIX] solucionado problema con la carga y visualización de imágenes subidas desde el visor fpg del entorno
Un saludo.  (http://foro.bennugd.org/Smileys/default/smiley.gif)


No del tó, para borrar una imagen cargada la selecciono y aparece en grande, luego le doy al cubo de basnura que pone ''borrar cambios'' para a continuacion darle a la x y no desaparece lo que es la herramienta de editado de imagen

Yo personalmente veo absurda esa herramienta, ya que preparo y edito los graficos por mi cuenta bajo gimp o inkscape y cuando esté listo del tó es cuando la subo, peeero habrá razones de que esté ahí

De todas formas gracias por que estais haciendo un buen trabajo
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on September 20, 2015, 12:22:31 AM
Ok Amaka, lo ejecutaré entonces desde el propio sitio web y no hay problema ;)
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 20, 2015, 03:31:10 AM
falta la 078 en descargas
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 20, 2015, 09:08:40 AM
Ya está disponible la descarga de la 0.78.

Quote from: l1nk3rn3l on September 20, 2015, 03:31:10 AM
falta la 078 en descargas

Antes de poner la descarga lo suelo probar con varios ejemplos, para ver que todo sigue funcionando sin problemas aparte de lo nuevo que pueda traer. :)


Quote from: Futublock on September 19, 2015, 07:38:01 PM
Quote from: AmakaSt on September 18, 2015, 11:05:01 PM
Versión 0.78 ya disponible online para realizar testeos, las novedades:
   - [FIX] solucionado problema con la carga y visualización de imágenes subidas desde el visor fpg del entorno
Un saludo.  (http://foro.bennugd.org/Smileys/default/smiley.gif)


No del tó, para borrar una imagen cargada la selecciono y aparece en grande, luego le doy al cubo de basnura que pone ''borrar cambios'' para a continuacion darle a la x y no desaparece lo que es la herramienta de editado de imagen

Yo personalmente veo absurda esa herramienta, ya que preparo y edito los graficos por mi cuenta bajo gimp o inkscape y cuando esté listo del tó es cuando la subo, peeero habrá razones de que esté ahí

De todas formas gracias por que estais haciendo un buen trabajo

La herramienta la intento mejorar poco a poco, no llegara nunca a ser como Gimp o inkscape o Photoshop, pero para informarte de los colores en un mapa de durezas, hacerle un pequeño retoque al grafico o en un futuro poner puntos de control, para eso si podria ser útil. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 20, 2015, 09:49:57 AM
si esta bien que tenga un editor grafico ''de emergencia''

bien, ahora tengo otro reto (el que tengo se vá a quedar parao) hacer un juego con graficos de cero en divgo, jijiij

será tactil en plan movil y con un cazamariposas; mu rapidito de facil programacion
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on September 20, 2015, 02:50:51 PM
pruebo localmente el dr malvado lo compilo y ejecuto y se queda en 93% y no carga el juego
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 20, 2015, 03:31:42 PM
Quote from: l1nk3rn3l on September 20, 2015, 02:50:51 PM
pruebo localmente el dr malvado lo compilo y ejecuto y se queda en 93% y no carga el juego

Qué raro. Si sacas la consola del navegador que error te da?

Para sacar la consola del navegador hay que pulsar (Ctrl + Mayus. + i) y seleccionar la pestaña Consola.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 20, 2015, 08:25:31 PM
vale, hecho, parece que rula bien
http://www.divgo.net/c-34f8fcfd (http://www.divgo.net/c-34f8fcfd)

lo he probado en el movil y las imagenes que sen retocadas con el editor propio, hace que no sean las originales

de toas formas estoy mu contento con el resultao, ahora toca ir por el juego en condiciones, una maquinita game and watch
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 20, 2015, 09:39:00 PM
Quote from: Futublock on September 20, 2015, 08:25:31 PM
vale, hecho, parece que rula bien
http://www.divgo.net/c-34f8fcfd (http://www.divgo.net/c-34f8fcfd)

lo he probado en el movil y las imagenes que sen retocadas con el editor propio, hace que no sean las originales

de toas formas estoy mu contento con el resultao, ahora toca ir por el juego en condiciones, una maquinita game and watch

Con la opción de Guardar y obtener ID, solo guardas el código, esto sirve para hacer ejemplos con los recursos de la propia web y poder compartirlo o guardar un código que hayas hecho para luego recuperarlo desde otro ordenador sin necesidad de compartir. No se guardan las imágenes retocadas desde ahí. Yo por ejemplo veo corazones y tréboles corriendo, y la estrella aparece por donde voy pulsado. :)

Para guardar las imágenes, que hayas retocado o guardado a mano en un fpg, es empaquetando el proyecto.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 21, 2015, 07:30:46 AM
bien, entonces ¿como comparto un juego? por ejemplo este que ya está entre comillas terminado, con la intencion de disntribuirlo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 21, 2015, 08:37:36 AM
Quote from: Futublock on September 21, 2015, 07:30:46 AM
bien, entonces ¿como comparto un juego? por ejemplo este que ya está entre comillas terminado, con la intencion de disntribuirlo

Si no tienes un servidor propio, al ser un proyecto creado con Div GO te lo puedo subir en el apartado de Juegos Desarrollados: http://www.divgo.net/secciones/es/juegos.php

En un futuro quiero crear una opción donde pueda la gente registrarse como usuario (y una vez este registrado pueda indicar que es desarrollador) y pueda subir sus proyectos automáticamente, pero esto todavía cae lejos. :P

En tu juego mira que tenga un titulo propio en vez de "Div GO : Ejemplo Scroll y Mode 7". :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 21, 2015, 01:00:01 PM
ok, cuando lo tenga terminado te lo mando por un enlace de descarga y ya tu haces lo que veas conveniente...

¿El porque?sencillamente, hago mis juegos altruistamente sin ansimo de lucro, asi que no me importa que esté alojado en otra pagina, ademas paso de montarme la mia propia, al menos todavia ;)
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on September 22, 2015, 08:21:09 PM
Amaka si te animas a añadir la Box2D tengo algo que te va a venir muy bien jeje.. acabo de terminar mi algoritmo de detección de contornos de gráficos, osea, una función que le pasas como parametro una imagen y te devuelve un array de vectores que forman el contorno del gráfico, esto sirve para crear poligonos automaticamente con cualquier librería de físicas.


Si te animas a añadir la bos2d a tu DivGo te paso la función jeje, es un pasote, hace lo mismo que hacía la que hizo PRG para chipmunk en bennu hace años, te ahorra un trabajo bestial a la hora de diseñar ;)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 23, 2015, 09:21:50 AM
Quote from: Erkosone on September 22, 2015, 08:21:09 PM
Amaka si te animas a añadir la Box2D tengo algo que te va a venir muy bien jeje.. acabo de terminar mi algoritmo de detección de contornos de gráficos, osea, una función que le pasas como parametro una imagen y te devuelve un array de vectores que forman el contorno del gráfico, esto sirve para crear poligonos automaticamente con cualquier librería de físicas.


Si te animas a añadir la bos2d a tu DivGo te paso la función jeje, es un pasote, hace lo mismo que hacía la que hizo PRG para chipmunk en bennu hace años, te ahorra un trabajo bestial a la hora de diseñar ;)

Ok, cuando me ponga con ello ya te pediré que me des unas clases y me pases tu función. :) Sobre la performance, leí que chipmunk tiraba mejor que box2d, qué opinas? Es que no tengo ni idea, no me he puesto con ello y ya que tu lo controlas... :)

Ahora mismo estoy arreglando bugs y cambiando cosas que funcionan distinto en DivGO con respecto a Div, hacer funcionar Dr. Malvado me hace ver que cosas no tiran igual como el caso de los fade(), no se muestra ni uno en el juego. :P

un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on September 23, 2015, 03:35:16 PM
Eso, hazte un tuto...
O mejor, un videotuto, je je
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on September 23, 2015, 05:58:46 PM
Ok sin problema, llegado el momento lo miramos sin problema.
Si, chipmunk está hecha en C y es mas rápida originalmente que Box2D, aunque Box2D trae de serie opciones de cuerpos blandos y chipmunk no.
La verdad es que chipmunk es una pasada, a mi esa librería me encanta la forma en que se hacen las cosas, y se adapta muy bien a un lenguaje Div, aunque Box2D tampoco está nada mal no, aunque al ser nativa orientada a objetos se hace algo menos ardua de trabajar en algunos lenguajes.


La función en concreto de la que hablo que he hecho es una adaptación del algoritmo "Square tracing" con un comparador de trayectorias, voy avanzando por el contorno de una imagen y cuando detecto un cambio de trayectoria mayor a un umbral establecido entiendo que tengo que crear un nuevo vector en ese punto.. y así hasta llegar a dar la vuelta completa al gráfico.


PRG hizo uno que era mejor todavía, en una misma imagen hacia esto mismo y además era capaz de detectar mas de un objeto o figura por imagen, esto es extremadamente util para crear los escenarios, yo estoy estudiando el tema de como hacerlo y mas o menos lo tengo claro, pero ahun no me he puesto a ello, seguramente en breve lo tenga listo tambien y publique un tutorial sobre como hacer estas cosillas que siempre vienen bien tener a mano para muchas cosas ;)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 15, 2015, 10:11:31 PM
Versión 0.80 ya disponible online para testeos. Y aquí nuevamente la lista de novedades:

función:
   - unique();

funciones 2d:
   - write_html(); graphic_explorer(); graphic_builder();

funciones 3d:
   - get_vectors(); change_vectors();

struct [graphic_explorer]:
   - mi_var.data[pixel_rgba], mi_var.width, mi_var.height;

bugs y mejoras:
   - [FIX] corregido el funcionamiento de fade_off() y fade_on(), como lo hacía div original
   - [FIX] fade_in() y fade_out() cuando se combinaba con fade_on() y fade_off()
   - [FIX] write_int colgaba el juego al pasar una variable sin offset o al poner una función en el offset
   - [FIX] error en scrolls cuando no se tenía creado un numero de scrolls inferior o se saltaba algún número
   - [FIX] al empaquetar un proyecto con imágenes nuevas añadidas y maps modificados desde el ide
   - [FIX] al listar los fpgs cargados en el código, si se repetía la carga, aparecía varias veces en la lista
   - [ADD] scrollbar en el editor gráfico cuando la imagen es de mayor tamaño que la ventana del navegador
   - [ADD] soportado en el mode7 y scene3d los efectos a los graph
   - [ADD] incluidas 4 nuevas formas 3d en la función object3d(): icosaedro, tetraedro, dodecaedro y circulo plano
   - [ADD] recuperadas las funciones de manipulación gráfica

Durante los próximos días iré poniendo ejemplos de las funciones nuevas en la lista de funciones de la documentación. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 16, 2015, 07:52:17 AM
Ejemplos de 2 nuevas funciones de la versión 0.80:

unique: http://www.divgo.net/c-5f389649 (http://www.divgo.net/c-5f389649)
write_html: http://www.divgo.net/c-551fb4ad (http://www.divgo.net/c-551fb4ad)
change_vectors: http://www.divgo.net/c-c00a3b23

Otro ejemplo de write_html con estilos:

program ejemplo_write_html;

begin
    set_mode(640, 300);
   
    text_size = 80;
    write_html(0, 4, "Probando etiquetas <b>HTML</b> en Div GO<br>" +
                     "by <i><span style='background:#880; padding:3px; border-radius:4px;'>Amaka Soft</span></i>");
   
    loop
   
        frame;
    end
end
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 18, 2015, 09:45:17 PM
Versión 0.80 ya disponible para descargar. :)

He tardado un poco porque he actualizado la lib 3d Three.js a la última versión y he tenido que realizar algunos cambios en Div GO para que todo continuara funcionando.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 19, 2015, 08:43:48 PM
Aquí otro nuevo ejemplo añadido, uso de las funciones graphic_explorer() y graphic_builder(): http://www.divgo.net/c-c5c16287

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 03, 2015, 10:02:00 PM
En breve estará disponible la versión 0.82. Aquí pongo unas capturas de esta nueva versión. :)

(https://scontent-mad1-1.xx.fbcdn.net/hphotos-xlp1/t31.0-8/906024_902598123150812_2199575727707382415_o.jpg) (https://scontent-mad1-1.xx.fbcdn.net/hphotos-xpf1/t31.0-8/12194876_902598139817477_3071460925653673541_o.jpg) (https://scontent-mad1-1.xx.fbcdn.net/hphotos-xlf1/t31.0-8/12186544_902598133150811_3710739079523410008_o.jpg) (https://scontent-mad1-1.xx.fbcdn.net/hphotos-xtf1/t31.0-8/12185057_902598126484145_4751713567104116372_o.jpg) (https://scontent-mad1-1.xx.fbcdn.net/hphotos-xaf1/t31.0-8/905586_902598136484144_1667789568542240285_o.jpg)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 04, 2015, 10:02:02 PM
Versión 0.82 ya disponible online para testear. Y las novedades:

funciones:
   - get_sound_length(); get_sound_playtime(); get_video_length(); get_video_playtime();

bugs y mejoras:
   - [FIX] out_region() con desplazamiento de scroll, mantenía la posición fija
   - [FIX] arreglado problema con las tonalidades en la función fade()
   - [FIX] corregido problema en la carga de archivos, no se controlaba la existencia de archivos cargados previamente
   - [FIX] en la versión anterior olvidé descomentar una línea que afecto al reescalado de imágenes con set_mode()
   - [FIX] solucionado problema con las clonaciones, ahora la clonación de procesos funciona
   - [CHANGE] cambio en el funcionamiento de get_id(), ahora funciona de manera similar a div2
   - [FIX] en el funcionamiento de los procesos cuando se usan distintos ctype y la local priority
   - [FIX] load_image() para que soporte de forma correcta la carga de archivos map
   - [ADD] opción de borrado de datos (cookies, cache, localstorage) por imágenes editadas, códigos guardados y configuraciones del entorno
   - [ADD] incluido el juego de div 2 Pacoman de Daniel Navarro adaptado a div go

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: Transdiv on November 06, 2015, 09:23:58 AM
Amaka, la función de empaquetado no funciona, no?, o estare haciendo algo mal.

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 06, 2015, 10:16:05 AM
Quote from: Transdiv on November 06, 2015, 09:23:58 AM
Amaka, la función de empaquetado no funciona, no?, o estare haciendo algo mal.

Si, acabo de probarlo y si que falla el empaquetado en la 0.82. :P

Por esta razón no saco la versión descargable a la vez que la que subo en divgo.net, me gusta dar un tiempo preventivo para que podamos todos realizar testeos.

Gracias por el reporte Transdiv. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 06, 2015, 12:49:23 PM
Ahora debería de funcionar.  8)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 07, 2015, 11:50:02 AM
Ya esta disponible para descargar la versión 0.82.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 17, 2015, 03:13:11 PM
Aquí pongo un enlace con las pruebas que he realizado de lectura y dibujado del formato FNT, posiblemente caiga en la 0.84: http://www.divgo.net/proyectos/divgo-fnts/
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 03, 2015, 07:44:23 PM
Nueva versión 0.84 subida online para realizara testeos. Esta versión a sufrido importantes cambios internos por lo que pueden aparecer algunos bugs... Y ahí van las novedades:

funciones:
   - set_shadows(); clear_shadows(); shadow_in_object3d(); out_region_dist(); set_volume();

variables:
   - b_left, b_top, b_pixel_ratio

bugs y mejoras:
   - [MEGA ADD] compatibilidad con los formatos fnt y fpg de div 2 (8 bits de color)
   - [ADD] el visor de fuentes ahora también soporta el formato fnt
   - [ADD] el visor de fpg ahora también visualiza (no edita) archivos fpg compatibles de div 2
   - [FIX] solucionado problema en el compilador cuando se devolvía un valor a varias variables a la vez, ej: a=b=rand(0,2);
   - [FIX] editor de imágenes no adaptaba el recuadro de la imagen al visualizar una imagen grande y luego una más pequeña
   - [ADD] mejoras en el rendimiento del entorno, en visualizadores de recursos y en la lista de procesos y funciones
   - [ADD] incluido los fnt originales en los juegos de div 2 Pacoman y Castle of Dr. Malvado
   - [ADD] incluido el juego de div 2 Steroid de Daniel Navarro adaptado a div go


En breve ire colgando ejemplos de las nuevas funciones. 8)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 04, 2015, 09:32:55 PM
Ejemplo de proyección de sombras: http://www.divgo.net/c-a9c12da8 (http://www.divgo.net/c-a9c12da8)
Ejemplo out_region_dist(): http://www.divgo.net/c-70e76ea5 (http://www.divgo.net/c-70e76ea5)
Ejemplo variables b_left, b_top y b_pixel_ratio con get_browser(): http://www.divgo.net/c-c2b65add (http://www.divgo.net/c-c2b65add)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 05, 2015, 07:21:55 PM
Versión 0.84 ya disponible para descargar. :)
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on December 09, 2015, 06:58:56 AM
Hola Amaka, ya que ahora puedes cargar archivos FPG de DIV.. por que no das un pasito mas allá y lo haces compatible con el formato FPG de BennuGD a 32 bits? creo que este formato es de código abierto y hay buenas herramientas disponibles.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 09, 2015, 10:35:57 AM
Quote from: Erkosone on December 09, 2015, 06:58:56 AM
Hola Amaka, ya que ahora puedes cargar archivos FPG de DIV.. por que no das un pasito mas allá y lo haces compatible con el formato FPG de BennuGD a 32 bits? creo que este formato es de código abierto y hay buenas herramientas disponibles.

Si, ese será el próximo objetivo, hacerlo compatible con los fpg, map y fnt de 32bits. Pero no ha sido fácil... casi me da un derrame cerebral al intentar interpretar los fnt. :P
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on December 09, 2015, 01:59:05 PM
Ya me imagino XD.
Creo que eran una foto con un puntito abajo que separaba los chars no? o algo así, pero claro de decir esto a hacer que funcione jajajajajaja... hay un buen trecho ;)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 09, 2015, 02:31:11 PM
También pensaba que era como un map con un punto para separar cada carácter. Así es como se mostraba en el editor de fuentes de Div 2, pero es distinto, tiene más parecido a un fpg (sin los puntos de control y con un valor de alineación vertical) que a un map, ordenado de 0 a 255 según el código de caracter ascii.  :o
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on December 09, 2015, 04:58:38 PM
Pues lo de los FPG esta muy bien tio, asi puedes dejar los recursos mas valiosos un poco mas resguardados.
Esto le da buenos puntos al lenguaje  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 13, 2015, 08:53:50 PM
Quote from: Erkosone on December 09, 2015, 04:58:38 PM
Pues lo de los FPG esta muy bien tio, asi puedes dejar los recursos mas valiosos un poco mas resguardados.
Esto le da buenos puntos al lenguaje  ;D

Pues en vista de la situación generada, tendrá solo soporte a FPG de Div2 y BennuGD (únicamente), eso sí, no serán editables, como pasa actualmente con los de Div2. En Div GO cuando se edita un archivo MAP pasa automáticamente a convertirse en un PNG una vez se empaqueta el proyecto.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on December 14, 2015, 07:32:44 AM
Guay, el formato de bennuGD y en mi caso con el Fpg Edit 2009 de CodeMaster que modificó Dcelso para que trabajara con 32 bits de bennu me son mas que suficientes para todo lo que necesito.


No se si conoces ese editor de FPG, a mi me parece muy bueno.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 14, 2015, 03:10:40 PM
Estoy usando el FPG Editor 4.0 y el Smart FPG, creo que con estos ya tengo para ir probando. En teoría ya tengo también el FPG 32 (de Bennu), me falta pulir cosillas y añadir los puntos de control.

Lo próximo los FNT 32. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 15, 2015, 11:08:48 AM
Pues ya tengo los FPG y los MAP de 32bits (versión BennuGD) integrado en DivGO, ahora ya solo me falta los FNT, pero antes tengo una duda del formato que he visto con un FPG de 32bits creado con el FPG Editor. Este se cierra con un registro final... Esto es siempre así en un FPG32? Es para saber si debo tenerlo siempre en cuenta o no... :P
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on December 15, 2015, 11:56:53 AM
Ni idea, pero por curiosidad, ¿qué tiene ese registro?

Igual es un invento del propio FPG Editor para guardar alguna información suya propia.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 15, 2015, 12:12:25 PM
Quote from: PiXeL on December 15, 2015, 11:56:53 AM
Ni idea, pero por curiosidad, ¿qué tiene ese registro?

Igual es un invento del propio FPG Editor para guardar alguna información suya propia.

Si, en este caso es información del propio editor más que nada, esto es lo que obtengo:
233, 3, 0, 0, 68, 0, 0, 0, 114, 56, 49, 120, 54, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 80, 71, 32, 69, 100, 105, 116, 111, 114, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0

Que equivale a:
(114, 56, 49, 120, 54, 52) = r81x64
(70, 80, 71, 32, 69, 100, 105, 116, 111, 114) = FPG Editor

Probare también con otros editores a ver si también me devuelve la misma cantidad de espacios o si esto lo crea solo el FPG Editor.
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on December 15, 2015, 12:27:50 PM
será un espacio nombre reservado, posiblemente para comentarios y el escribe el nombre del editor que lo ha editado, tengo que mirar en mi adaptación a ver que hago yo porque los de 32 bits tambien ya los tengo rulando hace tiempo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 15, 2015, 02:39:49 PM
Quote from: FreeYourMind on December 15, 2015, 12:27:50 PM
será un espacio nombre reservado, posiblemente para comentarios y el escribe el nombre del editor que lo ha editado, tengo que mirar en mi adaptación a ver que hago yo porque los de 32 bits tambien ya los tengo rulando hace tiempo

Puede ser, era para tener en cuenta para que no se genere un grafico vacio en el fpg en la lista de gráficos. :P

Title: Re:Div Games en Html5 y Canvas
Post by: darío on December 15, 2015, 07:17:16 PM
Estoy bastante seguro que en los FPG de32bpp de Bennu no hay ningún registro final así que tiene que ser un invento del FPG Editor.

Cuando hice el Smart Fpg Editor hice pruebas en las que comparaba los archivos generado con mi programa (https://bitbucket.org/dacucar/smart-fpg-editor/src/099025ef0eb77f65b08842dffcf086b972bf25d9/src/bennulib/cls/cDefaultFpgEncoder.cls?at=master&fileviewer=file-view-default) y los hackeaba ;) comparaba en un editor hexadecimal.
Ten en cuenta que los FNT son distintos en Fenix y en DIV. En DIV son muy parecidos al formato de de los FPGs. Mi programa puede abrir los FNT de div como FPG, por lo que a lo mejor un poco de código (https://bitbucket.org/dacucar/smart-fpg-editor/src/099025ef0eb77f65b08842dffcf086b972bf25d9/src/bennulib/cls/cDivFontFpgDecoder.cls?at=master&fileviewer=file-view-default) puede serte útil si piensas dar soporte a los mismos.

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 15, 2015, 11:17:54 PM
Hola darío,

Gracias por la información, he intentado probar tu programa Smart FPG, pero me da error y no puedo ejecutarlo: Run-time error '429' (Active X...).

He visto que los FNT que no son de Div tienen más información, ya tengo más o menos los FNT "32", digo más o menos porque me falla el canal alpha que no acaba de ser de 32bits, he usado el Fntmake para probar de crear fuentes de 32bits, por el foro no he encontrado muchos editores de fuentes.

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: darío on December 16, 2015, 06:55:57 AM
Hola AmakaSt,

Apuesto a que mi editor no te funciona por que estás usando la versión "binaria" en cualquier cosa que no sea Windows XP o a que lo estás ejecutando desde el Bennupack.

Si usas el instalador no tendrás problema. Lo he probado en Windows 7 y 8 y funciona sin problemas y el motivo es los componentes COM, que al ser una tecnología "legacy" no funcionan igual en XP que en los "nuevos" Windows, hoy probaré a instalarlo en Windows 10 a ver si sigue funcionando :D. El instalador es la forma más limpia también debido a que desinstalándolo te aseguras que se eliminan esas referencias COM. Y si te preocupa lo que pueda hacer el isntalador "sin tu conocimiento", bueno, está el script del instalador en bitbucket y verás que lo único que hace es copiar archivos y registrar las dlls COM oportunas... La versión binaria la hice porque al parecer en su día había gente a probar mi editor si estaba con un instalador (cuando en realidad es la forma más limpia de que todo se elimine cuando ya no necesitas la aplicación...)

Sobre el FNT de Bennu, mi consejo es que te descarges el código fuente de Bennu, hagas un find in files y encuentres la estructura del formato FNT o la rutina donde se carga :). Smart Fpg Editor no abre esos ficheros en cualquier caso.

Mvh,
Darío
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 22, 2015, 10:25:33 PM
Versión 0.86 ya disponible online, esta incluye compatibilidad con los FPG, FNT y MAP de BennuGD a 32bits de color. Aquí la lista de novedades completa:

variables:
   - rgb_to_16c, rgb_to_128c, rgb_to_256c, rgb_to_gboy

bugs y mejoras:
   - [MEGA ADD] compatibilidad con los formatos map, fnt y fpg de bennugd (32 bits de color)
   - [ADD] el visor de fuentes ahora también soporta el formato fnt de 32bits
   - [ADD] el visor de fpg ahora también visualiza (no edita) archivos fpg compatibles de bennugd
   - [ADD] ahora al cambiar de pestaña se guarda la posición de línea donde te habías quedado en cada pestaña
   - [DEL] la opción de mostrar listado de compilación, dejo de ser útil desde hace muchas versiones
   - [FIX] corregido problema con la proyección de sombras
   - [FIX] solucionado problema al quitar, añadir o seleccionar pestaña
   - [FIX] corrección de varios bugs menores del compilador y del ide

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on December 23, 2015, 06:23:03 AM
Lo de poder leer el formato de bennuGD es genial, esto ahorra un montón de trabajo tio.
Gracias por incluirlo  ;D :D :)


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 23, 2015, 07:53:28 AM
Quote from: Erkosone on December 23, 2015, 06:23:03 AM
Lo de poder leer el formato de bennuGD es genial, esto ahorra un montón de trabajo tio.
Gracias por incluirlo  ;D :D :)



De nada. :)

Entre hoy y mañana subiré las versiones descargables para que ya podáis trabajar en local.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 23, 2015, 11:35:19 PM
Div GO versión 0.86 ya disponible para descargar.  8)
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on December 26, 2015, 07:23:37 PM
Quote from: AmakaSt on December 22, 2015, 10:25:33 PM
Versión 0.86 ya disponible online, esta incluye compatibilidad con los FPG, FNT y MAP de BennuGD a 32bits de color. Aquí la lista de novedades completa:

variables:
   - rgb_to_16c, rgb_to_128c, rgb_to_256c, rgb_to_gboy

bugs y mejoras:
   - [MEGA ADD] compatibilidad con los formatos map, fnt y fpg de bennugd (32 bits de color)
   - [ADD] el visor de fuentes ahora también soporta el formato fnt de 32bits
   - [ADD] el visor de fpg ahora también visualiza (no edita) archivos fpg compatibles de bennugd
   - [ADD] ahora al cambiar de pestaña se guarda la posición de línea donde te habías quedado en cada pestaña
   - [DEL] la opción de mostrar listado de compilación, dejo de ser útil desde hace muchas versiones
   - [FIX] corregido problema con la proyección de sombras
   - [FIX] solucionado problema al quitar, añadir o seleccionar pestaña
   - [FIX] corrección de varios bugs menores del compilador y del ide

Un saludo.


Hola AmakaSt, yo también quiero empezar a trabajar con el formato de archivo FPG de BennuGD de 32 bits, supongo que si nadie ha objetado nada entiendo que no hay problema en usarlo verdad? en el caso de que no exista problema realmente, me gustaría mucho ponerme a desarrollar la librería de funciones para processing necesaria para poder crear/editar/leer estos archivos como tu has hecho en DivGO.


Podrías darme algún consejo/indicación para empezar a trabajar en esto?
Actualmente estoy metido en un proyecto grande y tengo todos los archivos de imagen al descubierto y todos sueltos en una carpeta, y los puntos de control a parte en un archivo de texto con el mismo nombre que cada archivo .png de imagen.


Tienes algun documento "para torpes" sobre como trabajar con esto? te lo pregunto por que creo que eres la persona que mas reciente tiene todo esto.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 27, 2015, 05:13:01 PM
Hola Erkosone,

Lo mejor sería empezar con un MAP, que es solo una imagen con sus colores y sus puntos de control, que con un FPG... pero pides un FPG... :P

Así empecé yo, con este código:


        var a        = new XMLHttpRequest(),
            datos     = [],
            info    = '';
   
        a.open('GET', 'miarchivo.fpg', true);
        a.responseType = 'arraybuffer';
       
        a.onload = function(){
            if (this.readyState == 4 && this.status == 200) {
                datos = new Uint8Array(this.response);
               
                for (var i = 0, l = datos.length; i < l; i++){
                    info += datos[i] + ', ';
                }
               
                document.body.innerHTML = info;
            }
        }
       
        a.send();


Con esto podrás leer y guardar la información que hay en un archivo en un array donde cada elemento del array tendrá un valor del 0 al 255. En este código que te paso lo escribe en el body del html para poder inspeccionarlo.

El resultado que debería darte sería algo así desde el principio: 102, 51, 50, 26, 13, 10, 0, 0, 1, 0, 0, 0, 64, 220, 5, 0, 66, 97, 110, 110, 101, 114, 95, 78, 101, 117, 114, 111, 99, 105, 101, 110, 99, 105, 97, 45, 101, 109, 97, 103, 105, 115, 116, 101, 114, 45, 49, 54, 66, 97, 110, 110, 101, 114, 95, 78, 101, 117, 114, 111, 160, 0, 0, 0, 88, 2, 0, 0, 0, 0, 0, 0, 255, 255, 255,... (y muchísimo mas dependiendo la cantidad de imágenes dentro del archivo)

En el resultado que he escrito arriba, los primeros 8 elementos: '102,51,50,26,13,10,0,0', es una cabecera o identificador del archivo.
Luego le sigue el código del grafico: '1, 0'... continuaría con una descripción y a partir de la posición 60 del array estaría el ancho y alto del grafico con: '160, 0, 0, 0, 88, 2, 0, 0'; el grafico tendría de ancho 160px [160, 0, 0, 0] y de alto 600px [88, 2, 0, 0]. El cálculo del alto en este caso es el valor del primer elemento sumado a 256 por el valor del segundo: 88 + (256 * 2).
Lo siguiente seria los puntos de control que en este no hay: '0, 0, 0, 0' y luego seguiría la información rgba de la imagen.

Luego es repetir esto para la siguiente imagen...

No sé si ha quedado claro, con el código que te he puesto arriba iba comparando la información con un editor FPG para ver las coincidencias... :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on December 27, 2015, 05:59:52 PM
Bueno pues casi que tienes razon, mejor empiezo por un .map a pelo que si no van a salirme muchas dudas, algun consejo para los .map?


Supongo que es bastante similar pero tienes a mano la estructura del archivo .map?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 28, 2015, 11:52:27 AM
Si es bastante similar, el código que te he puesto te vale para ver la información.

Los primeros 8 elementos del MAP (posiciones de 0 a 7), como en el FPG, es una cabecera o identificador del archivo.
Los siguientes 4 son para el ancho y el alto. Posición 8 y 9 para el ancho y las posiciones 10 y 11 para el alto.

En la posición 48 está el número total de puntos de control, que se va recorriendo sumando 4 posiciones (para el ancho y el alto) por cada punto de control.

Y luego ya solo queda los datos rgba de la imagen.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on December 28, 2015, 08:30:36 PM
Gracias por la info tio, estos dias quiero aprobechar y empezar con esto, haber si para este año que entra tengo las tan usadas herramientas de bennuGD funcionando con mis proyectos en java.
Gracias Amaka ;)
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on December 29, 2015, 06:09:10 AM
Empezando con el tema..
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on January 14, 2016, 06:03:14 AM
Buenas Amaka, por casualidad no tendrás información sobre como leer un fpg a 16bits verdad? he intentado dejando toda la estructura de lectura iwal que en 32 bits pero leyendo 3 bytes por pixel.. ya veo que de inicio la información del principioo no me cuadra,  tienes alguna nota apuntada por ahí que me puedas pasar tio?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 14, 2016, 09:17:48 AM
Quote from: Erkosone on January 14, 2016, 06:03:14 AM
Buenas Amaka, por casualidad no tendrás información sobre como leer un fpg a 16bits verdad? he intentado dejando toda la estructura de lectura iwal que en 32 bits pero leyendo 3 bytes por pixel.. ya veo que de inicio la información del principioo no me cuadra,  tienes alguna nota apuntada por ahí que me puedas pasar tio?

Hola Erkosone,

No llegue a probar el fpg de 16bits, empecé con los maps en su momento... pero no llegue a acabarlo. El map 16 es similar en cuanto a espacios de cabecera, ancho y alto, y en los puntos de control. Cambia en el tema de los pixels de color, no son 3 bytes por pixel, componerlo como un rgb(255,255,255) no funciona (esto tiene sentido si fuera de 24), son solo 2 bytes (eso fue lo último que llegue a descubrir para que cuadrara el dibujo en sus dimensiones), a partir de ahí lo deje de lado, no lo vi interesante dedicarle más tiempo teniendo los fpg de 32bits. :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Erkosone on January 15, 2016, 05:27:48 AM
Ok tio, gracias por la info, la verdad es que 16bits lo quería añadir por que tengo muchos proyectos a 16bits y era solo por cargar esos archivos, pero pensandolo bien, realmente no tiene mucho sentido en estos dias que corren andar trasteando con 16 bits.
Vale, pues lo dejo tal cual por ahora, voy a añadir un popup que indique fpg no valido si la cabecera no es un f32 y listo por el momento.
Gracias!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 21, 2016, 03:18:32 PM
Hola Erkosone,

He conseguido pintar los maps de 16bits de Fenix de forma correcta, en vez de 3 bytes para el rgb usa solo 2, lo que he hecho es lo mismo que se hace para sacar el ancho y el alto:


color = (byte[i+1] > 0) ? byte[i] + 256 * byte[i+1] : byte[i];
r = ((color & 0xffff) >> 11) * 8;
g = ((color & 0x07ff) >> 6) * 8;
b = (color & 0x00001f) * 8;


Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 08, 2016, 10:35:53 PM
Versión 0.88 ya disponible online. Aquí la lista con las novedades:

struct touch:
   - is_active, x, y, timer;

funciones:
   - path_find(), set_visible_mouse()

bugs y mejoras:
   - [ADD] compatibilidad con los formatos map, fnt y fpg de fenix (16 bits de color)
   - [ADD] limpieza y optimización de código
   - [ADD] write, write_int y write_in_map, ahora su ancho no está limitado al tamaño del canvas, es dinámico al tamaño del texto
   - [DEL] variable browser del struct mouse, ralentizaba al tener que comprobar constantemente el estado visible del ratón en el canvas
   - [ADD] soporte multitouch con la nueva struct touch
   - [CHANGE] la variable mouse ya no devuelve los valores táctiles, estaba limitada a un solo dedo y no podía combinarse a la vez táctil y ratón
   - [FIX] pequeña optimización en el dibujado y restauración de los efectos gráficos
   - [FIX] los efectos no se aplicaba a los gráficos que no estuvieran en el file 0 (carpeta 'graficos'), ahora se aplica a todos incluido a de archivos fpg
   - [FIX] solucionado problema cuando se forzaba la salida del programa al acabar con el último proceso activo
   - [FIX] corregida la construcción de código, cuando se combinaba varios bucles de distintos tipos y dentro de condiciones, bloqueaba el programa
   - [FIX] el compilador no comprobaba bien las variables de un struct definido por el usuario cuando habian varias en la misma línea

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on February 10, 2016, 01:20:43 AM
 Pregunta tonta ¿Por qué para dividir las componentes de color usas desplazamientos de bits y no para las multiplicaciones? Es más ¿Por qué no hacer menos desplazamientos a la derecha y usar una máscara AND para poner los tres bits menos significativos directamente a cero? ¿O con ese lenguaje da igual?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 10, 2016, 09:13:59 AM
Quote from: Drumpi on February 10, 2016, 01:20:43 AM
Pregunta tonta ¿Por qué para dividir las componentes de color usas desplazamientos de bits y no para las multiplicaciones? Es más ¿Por qué no hacer menos desplazamientos a la derecha y usar una máscara AND para poner los tres bits menos significativos directamente a cero? ¿O con ese lenguaje da igual?

Lo del desplazamientos de bits al dividir y no al multiplicar, no es por nada especial, realmente no lo había pensado, me da igual usar una u otra opción si el rendimiento final no se ve afectado, por ejemplo:

color = (65536 * 256); //16777216
color = (65536 << 8 ); //16777216; en javascript el rendimiento y el resultado es igual en ambos casos

https://jsperf.com/multiplication-int-vs-bit-shifting-left

Lo de AND para poner el bit menos significativo a cero en javascript no creo cambiara mucho tampoco por lo que daría igual. Y esto solo afectaría en la carga de archivos, luego cuando se pinta, durante el juego, no se hacen estos cálculos, ni va a buscar en el fpg o en la carpeta las imágenes, estas quedan guardadas en memoria  para que sea accesible de forma rápida.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 10, 2016, 10:49:40 PM
Y aquí un ejemplo de funcionamiento del multitouch (para probar desde dispositivos táctiles): http://www.divgo.net/c-1b8cabb2

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 11, 2016, 11:19:28 PM
Ya esta disponible para descargar Div GO versión 0.88.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 12, 2016, 08:04:40 AM
Hola,buenas,cuando compilo y doy a run se ejecuta correctamente,pero si doy  a run in proyector directamente me sale una ventana blanca y no se ejecuta nada.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 12, 2016, 10:57:01 AM
Quote from: oskarg on February 12, 2016, 08:04:40 AM
Hola,buenas,cuando compilo y doy a run se ejecuta correctamente,pero si doy  a run in proyector directamente me sale una ventana blanca y no se ejecuta nada.

Buenas,

He vuelto a subir los descargables de la versión 0.88, me había dejado sin enlazar el archivo DivGOv088-min.js en el proyector. :P

Gracias por el reporte oskarg.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 28, 2016, 10:59:27 PM
En breve habrá nueva versión, aquí dejo la lista de funciones que ya tengo preparada para esta próxima versión:

load_song(), song(), stop_song(), is_playing_song(), get_song_line(), get_song_pos(), set_song_pos(), unload_song()

Un saludo. :)

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 29, 2016, 11:28:44 PM
Versión 0.90 ya disponible online, las novedades:

funciones:
   - load_song(), song(), stop_song(), is_playing_song(), get_song_line(), get_song_pos(), set_song_pos(), unload_song()

bugs y mejoras:
   - [ADD] nueva lib webaudio-modplayer para añadir compatibilidad con los tracker: mod, xm y s3m
   - [FIX] corregida la salida de un bucle dentro del bloque clone
   - [FIX] alineación de texto con write_in_map() desde la variable mouse.graph
   - [FIX] solucionado problema de alineación en los textos con estilo stroke (trazado)
   - [FIX] cuando un proceso en mode7 o en scene3d no tenia graph y luego se le añadía un valor a graph el programa se bloqueaba
   - [FIX] ahora vuelve a mostrarse los archivos de audio enlazados por código en el control de audio del ide


Y aquí dejo un ejemplo de uso de las nuevas funciones: http://www.divgo.net/c-7a9ec6da

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 05, 2016, 12:31:31 PM
Div GO versión 0.90 ya esta disponible para descarga: http://www.amakasoft.com/herramientas/div-go.html

Un saludo.  :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 05, 2016, 11:13:20 PM
Gracias por seguir avanzando en este proyecto.
Una curiosidad:
Cuando ejecutas el ejemplo de procesos,donde sale un scroll,si dejas un rato la pantalla inactiva,es decir que navegas por internet o estas con otra aplicacion  y regresas de nuevo a la ventana donde se ejecuta el ejemplo,el scroll sin mas desaparece,aunque puedas hacer disparos.
Y una duda,en phaser cuando haces un scroll,puedes distorsionarlo ,ampliarlo etc.Es complicado implementar tales efectos?¿?.lo pregunto por saciar la duda.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 06, 2016, 11:41:04 AM
Hola oskarg,

Cuanto tiempo y en que navegador te pasa esto? Yo he probado unos 15 o 20 minutos con Firefox, abriendo y navegando en otras pestañas y al volver se sigue viendo el scroll. También puede que si estas navegando mucho rato en otras pestañas, el navegador libera de la cache lo de las primeras pestañas abiertas. Esto seguiré probándolo a ver si consigo localizar la causa.

En DivGO añadí efectos de distorsión, color, mascara y zoom que se puede aplicar a una región y si tiene scroll, afecta también al scroll, aquí te dejo un ejemplo con distorsión: http://www.divgo.net/c-a90ae038

Un saludo. :)

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 06, 2016, 12:14:57 PM
hola ,buenas...
te explico,he dejado 10 minutos el programa en una ventana ,la he abierto y funcionaba ok ,me he esperado otros 10 minutos y el scroll principal el que  tiene alpha 50 no se muestra,supongo que sera por lo que expresas,mas es normal que actue asi?¿?lo he ejecutado en modo proyector.
Gracias por el ejemplo no lo habia visto.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 06, 2016, 08:29:31 PM
Nada, he probado dejando la ventana del navegador mas de una hora (en chrome y firefox) y me funciona bien. He estado navegando por otras paginas y usando steam, y al volver a la ventana me sigue saliendo los dos scrolls. A lo mejor no es cosa del navegador, puede que sea del sistema operativo.

Cuando te vuelva a pasar mira de sacar la consola del navegador, pulsando en el botón derecho del ratón en la pagina y seleccionando Inspeccionar elemento (en firefox) o Inspeccionar (en chrome), luego seleccionas la pestaña de la consola y desde ahí si ha habido algún error te pondrá que error ha sido. Así me lo podrás reportar con más detalles. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 06, 2016, 10:06:17 PM
hola,tengo windows xp  y otra vez ha pasado, desaparece por completo el scroll ?¿? :( pasa con divgo desktop.lo ejecutor en proyector y control+mayusculas+j no funciona la consola ,pero si En divgo online y de momento en este no falla.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 07, 2016, 10:19:55 AM
Hola oskarg,

Esto puede ser algún bug de phpdesktop (chrome 39), yo no he conseguido visualizarlo, a lo mejor va asociado con windows xp. En todo caso cuando saquen una nueva versión estable de phpdesktop, ahora hay una release candidate con chrome 47, lo incluiré con DivGO. :P

Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 05, 2016, 10:33:30 PM
Nueva versión 0.92 ya disponible online, las novedades:

funciones:
   - start_capture_cam(), stop_capture_cam();

bugs y mejoras:
   - [ADD] 4 nuevas formas para draw(): triangulo lineal, triangulo relleno, polígono lineal y polígono relleno
   - [FIX] set_song_pos() ahora se coloca en la línea 0 al cambiar de posición
   - [FIX] corrección en el compilador cuando se cargaba un archivo en una variable array o de un struct
   - [FIX] en las colisiones cuando no se ha cargado bien la ruta del fichero
   - [FIX] corregido problema de las últimas versiones que afectaba al pintar procesos en distintos scrolls
   - [FIX] solucionado problema con los puntos de control en map_put(), map_xput(), map_put_pixel() y map_block_copy()
   - [ADD] soportado efectos gráficos en map_put(), map_xput() y map_block_copy()
   - [FIX] solucionado problema con el dibujado del map_put_pixel()
   - [FIX] ahora las variables locales funcionan con el program inicial, antes solo eran validas en los procesos
   - [ADD] al cargar una ruta nueva con load_fpg() sin compilar te avisa que primero debes compilar para poder visualizar su contenido y te permite crear un fpg nuevo de 0
   - [ADD] cambio de tamaño del área editable de la imagen desde el editor
   - [ADD] ide responsive para dispositivos móviles

En breve añadire ejemplos de las novedades. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 06, 2016, 08:23:38 AM
Ejemplo draw:
http://www.divgo.net/c-d9f8a248

Ejemplo graphic_explorer (editor gráfico):
http://www.divgo.net/c-b293675f

Ejemplo captura con cámara y micro, no va si no hay webcam o micro (funciona bien en firefox y edge, chrome exige ruta https para poder capturar):
http://www.divgo.net/c-0057142c

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 10, 2016, 09:21:01 AM
Versión 0.92 ya disponible para descargar!  8)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 12, 2016, 08:26:54 PM
hola,buenas,alguna novedad cercana para este proyecto?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 13, 2016, 10:29:42 AM
Quote from: oskarg on May 12, 2016, 08:26:54 PM
hola,buenas,alguna novedad cercana para este proyecto?¿?

Hola oskarg,

Entre hoy y mañana saco nueva versión. :)

He perdido mucho tiempo (sin éxito por ahora) mirando la manera para que el propio entorno de Div GO pudiera empaquetar proyectos para Android, sin tener que pasar por otros programas. Yo suelo utilizar Intel XDK que va genial para esto. Que se le va a hacer... ya lo seguiré intentando. :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 14, 2016, 01:02:58 PM
Versión 0.93 ya disponible online, las novedades:

funciones:
   - get_song_channels(), get_channel();

bugs y mejoras:
   - [CHANGE] start_mode7() al iniciarse sin ningún ctype = c_m7 declarado, no se dibujaba el mode7 en pantalla
   - [ADD] cnumber ahora también funciona en mode7 y scene3d
   - [FIX] el orden de un array de dos dimensiones, estaba al revés: mi_array[a, b], primero iba la b y luego la a
   - [FIX] los modos view_full_... de la función set_mode(); no se visualizaba en el proceso de carga del bloque loading
   - [FIX] corrección en la precarga y muestra de recursos desde los visores de fuentes y fpg
   - [FIX] al dibujar textos y primitivas hace degradado de color constantemente aun siendo un color plano por lo que ralentizaba el funcionamiento del programa, llegando en ocasiones a bloquear el navegador
   - [CHANGE] los degradados ahora trabajan distinto, en las primitivas al usar move_draw() se aplica siempre un color plano por lo que antes de frame hay que añadir gradient_draw()
   - [ADD] en el editor gráfico ahora con un zoom alto muestra una cuadricula de los pixeles de la imagen

Ejemplo de las nuevas funciones: http://www.divgo.net/c-61e08f56

Un saludo. :)

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 16, 2016, 12:27:27 PM
Ya esta disponible  la versión 0.93 para descargar!  8)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 17, 2016, 03:47:23 PM
Pequeño ejemplo de mapa de tiles con colisiones y scroll: http://www.divgo.net/c-64376490

Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on May 18, 2016, 12:26:07 AM
Jajaja, que gracioso el ejemplo de tileado. Mola :)
Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on May 18, 2016, 02:50:25 AM
Amaka como siempre excelente trabajo..  el motor html5 muy rápido..

el doctor malvado corre rápido...


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 18, 2016, 09:23:08 AM
Gracias l1nk3rn3l y Drumpi. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 29, 2016, 09:10:18 PM
Versión 0.94 ya disponible online, las novedades:

funciones:
   - get_image_tiles(), floor(), ceil();

variables:
   - shift_status, scan_caps_lock, scan_num_lock, scan_scroll_lock;

bugs y mejoras:
   - [ADD] ahora el compilador avisa y da error si no se cierra una tabla o estructura
   - [ADD] configuración de tamaño de letra en el codigo


En breve iré añadiendo ejemplos de las nuevas funciones.

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 30, 2016, 08:30:45 AM
Aquí un ejemplo de la función get_image_tiles(): http://www.divgo.net/c-bd2fcf35
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on May 31, 2016, 03:13:36 AM
Quote from: AmakaSt on May 30, 2016, 08:30:45 AM
Aquí un ejemplo de la función get_image_tiles(): http://www.divgo.net/c-bd2fcf35

curiosa funcion... un cutter...

interesante el efecto... muy bueno!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 31, 2016, 07:26:05 AM
Quote from: SplinterGU on May 31, 2016, 03:13:36 AM
Quote from: AmakaSt on May 30, 2016, 08:30:45 AM
Aquí un ejemplo de la función get_image_tiles(): http://www.divgo.net/c-bd2fcf35 (http://www.divgo.net/c-bd2fcf35)

curiosa funcion... un cutter...

interesante el efecto... muy bueno!

Si, en otros lenguajes también se hace de forma similar para tener todos los sprites en un solo mapa, por ejemplo el personaje con todos sus movimientos y trocearlo a unas medidas, todos los trozos quedan guardados en memoria y asociados en un array, como en el ejemplo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on May 31, 2016, 12:32:11 PM
Quote from: AmakaSt on May 31, 2016, 07:26:05 AM
Quote from: SplinterGU on May 31, 2016, 03:13:36 AM
Quote from: AmakaSt on May 30, 2016, 08:30:45 AM
Aquí un ejemplo de la función get_image_tiles(): http://www.divgo.net/c-bd2fcf35 (http://www.divgo.net/c-bd2fcf35)

curiosa funcion... un cutter...

interesante el efecto... muy bueno!

Si, en otros lenguajes también se hace de forma similar para tener todos los sprites en un solo mapa, por ejemplo el personaje con todos sus movimientos y trocearlo a unas medidas, todos los trozos quedan guardados en memoria y asociados en un array, como en el ejemplo. :)

en bennugd yo implemente esto hace mucho para los fonts, y tambien creo que expuse la funcion para graficos... en bennugd2 hay algo que va un tanto mas alla y mucho mas optimo en cuanto a recursos, incluso en cuanto a GPU...

me gusto mucho ver el efecto... felicitaciones por el trabajo que estas llevando!
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on May 31, 2016, 01:15:48 PM
De hecho, DIV2 ya incluía una herramienta que soportaba sprites de diferentes tamaños. Era la herramienta para importar/exportar mapas a FPG. Requería que los sprites estuvieran dibujados sobre el color de fondo (aka color 0) y rodeados de un cuadrado de diferente color.

Mola la herramienta :) Aunque ¿qué ventajas tendría frente a usar la herramienta map_block_copy, aparte de la velocidad?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 31, 2016, 03:17:06 PM
Gracias SprinterGU. :)

Quote from: Drumpi on May 31, 2016, 01:15:48 PM
De hecho, DIV2 ya incluía una herramienta que soportaba sprites de diferentes tamaños. Era la herramienta para importar/exportar mapas a FPG. Requería que los sprites estuvieran dibujados sobre el color de fondo (aka color 0) y rodeados de un cuadrado de diferente color.

Mola la herramienta :) Aunque ¿qué ventajas tendría frente a usar la herramienta map_block_copy, aparte de la velocidad?

Realmente... Si te digo la verdad... no recordaba map_block_copy... :P este requería de un grafico en donde pegar los trozos y todos partían de este mismo grafico, con un mismo punto de control y no se asocia a una variable si no al grafico y si quieres cambiar en el proceso el grafico con otro bloque debes volver a llamar a map_block_copy y cambiar la posición x e y... Con get_image_tiles se crean 160 gráficos cortados independientes (en memoria), se le puede poner sus puntos de control, aplicar efectos y van asociados a un array que puedes usar en cualquier momento.

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 31, 2016, 04:57:24 PM
No he explicado bien la función get_image_tiles, acabo de releer lo que he escrito, es lo que tiene escribir con el móvil... No genera 160 gráficos de manera estándar, el número de gráficos varía según el tamaño de la imagen y del corte. En el ejemplo la imagen de Dr. Malvado es de 320×200 y el corte es de 20×20 por lo que genera 160 imágenes troceadas.

Un saludo. :P
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on June 02, 2016, 01:52:35 AM
No, si te he entendido.
Lo que yo me refiero es que con código Bennu puedes crear x*y mapas con new_map, y luego usar map_block_copy para rellenarlos con las diferentes partes del gráfico, igual que la herramienta... salvo que estás usando funciones de la familia PUT, que son lentas, y la velocidad se resiente en el momento de crearlos (y que creo que tienes que clonar el mapa original, por aquello de que origen y destino debían tener el mismo valor de file).

Pero vamos, que muchos novatos te lo van a agradecer eternamente ;)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 02, 2016, 07:37:26 PM
Div GO versión 0.94 ya esta disponible para descargar. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 06, 2016, 10:32:48 PM
Div GO versión 0.96 ya disponible online, las novedades:

funciones:
   - change_notifications(), notification();

variables:
   - b_battery_charge, b_battery_level, b_battery_time;

bugs y mejoras:
   - [ADD] sistema de notificaciones
   - [ADD] aviso de error al reasignar un valor a una constante
   - [ADD] opción para programar con el editor al tamaño completo de la pagina
   - [ADD] opciones de empaquetado: minificar código html, añadir botón de fullscreen
   - [ADD] nuevo parámetro opcional en las funciones region_wave() y wave_in_map(), para separar por un número determinado de pixeles el efecto
   - [CHANGE] cambio interno en el dibujado de scrolls para mejorar ligeramente la performance
   - [CHANGE] ahora load_fpg() devuelve un valor entero según los fpg que han sido cargados en memoria como hacía div 2
   - [CHANGE] la variable local file hace uso de valores enteros, en div go (file=0) es la ruta 'graficos' por lo que el primer load_fpg() corresponderá al (file=1)
   - [CHANGE] cambio interno en el nombre de las funciones de div go para que no se pise con variables y funciones de futuras librerías
   - [FIX] reducción en el tamaño del array de instrucciones, donde se guarda cada fragmento de código
   - [FIX] solucionado un antiguo error en la construcción de código localizado al realizar los últimos cambios


Ejemplos de las nuevas funciones, en breve.

Un saludo. (http://foro.bennugd.org/Smileys/default/smiley.gif)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 07, 2016, 08:04:33 PM
Y aquí dejo ejemplos de las últimas novedades.

Ejemplo de la función notification: http://www.divgo.net/c-b8f67d42 (http://www.divgo.net/c-b8f67d42)
Ejemplo de control de batería con la función get_browser: http://www.divgo.net/c-bdb4d18f (http://www.divgo.net/c-bdb4d18f)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 08, 2016, 08:35:24 PM
Ya disponible para descargar la versión 0.96.  8)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 23, 2016, 10:27:05 AM
Al fin, recién salida del horno... la versión 1.00 de Div GO ya está disponible online, y las novedades:



funciones:
   - link(), move_link(), delete_link(), vibration();
   - enable_notifications(), enable_geolocation();
   - clear_map(), clear_map_put(), clear_map_xput();
   - refresh_scroll();

variables:
   - all_links, b_geo_latitude, b_geo_longitude;

bugs y mejoras:
   - [ADD] opción de crear nuevo gráfico, desde añadir gráfico del visor fpg
   - [CHANGE] cambios internos en funciones gráficas como map_put_pixel(), map_xput(), map_block_copy()... ahora debería funcionar como en div2
   - [FIX] correcciones en el editor gráfico: en la inserción de nuevos gráficos y en el borrado de gráficos editados
   - [FIX] solucionado varios problemas leves relacionados con los cambios internos de la última versión




En breve iré subiendo ejemplos de las nuevas funciones. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 23, 2016, 10:53:13 AM
Ejemplo de la función vibration: http://www.divgo.net/c-496a152a (http://www.divgo.net/c-496a152a) (solo para móviles o que tenga sistema de vibración y este activa)
Ejemplo de la función clear_map_put: http://www.divgo.net/c-2dff40ae
Ejemplo de la función clear_map_xput: http://www.divgo.net/c-f11c03b6
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 26, 2016, 07:47:25 AM
La versión 1.00 ya se encuentra disponible para descargar.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on July 26, 2016, 11:43:27 AM
funca el vibrata a la perfección karma++ porque te tengo que hacer la pelota
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 26, 2016, 12:30:59 PM
jajajaja no es necesario que me hagas la pelota, hombre. :)

En Android la vibración funciona genial, en iOS con Safari no tiene soporte actualmente, pero usando Cordova como APP hibrida debería funcionar también.

Title: Re:Div Games en Html5 y Canvas
Post by: l1nk3rn3l on July 26, 2016, 02:56:36 PM
Muy rapido como siempre excelente trabajo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 26, 2016, 07:52:09 PM
Ejemplo de enlaces: http://www.divgo.net/c-2761263a (http://www.divgo.net/c-2761263a)
Ejemplo de nuevas variables para get_browser: http://www.divgo.net/c-95301242 (con geolocalización)
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on July 26, 2016, 10:08:16 PM
Quote from: AmakaSt on July 23, 2016, 10:27:05 AM
Al fin, recién salida del horno... la versión 1.00 de Div GO ya está disponible online, y las novedades:



funciones:
   - link(), move_link(), delete_link(), vibration();
   - enable_notifications(), enable_geolocation();
   - clear_map(), clear_map_put(), clear_map_xput();
   - refresh_scroll();

variables:
   - all_links, b_geo_latitude, b_geo_longitude;

bugs y mejoras:
   - [ADD] opción de crear nuevo gráfico, desde añadir gráfico del visor fpg
   - [CHANGE] cambios internos en funciones gráficas como map_put_pixel(), map_xput(), map_block_copy()... ahora debería funcionar como en div2
   - [FIX] correcciones en el editor gráfico: en la inserción de nuevos gráficos y en el borrado de gráficos editados
   - [FIX] solucionado varios problemas leves relacionados con los cambios internos de la última versión




En breve iré subiendo ejemplos de las nuevas funciones. :)

Un saludo.

mmm, a la funcion de link, porque mejor no le pasas solo el id del proceso y que la funcion se encargue sola de seguir al proceso mientras este viva, y tome del grafico y de x e y los datos que necesita?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 26, 2016, 11:37:11 PM
Quote from: SplinterGU on July 26, 2016, 10:08:16 PM
Quote from: AmakaSt on July 23, 2016, 10:27:05 AM
Al fin, recién salida del horno... la versión 1.00 de Div GO ya está disponible online, y las novedades:



funciones:
   - link(), move_link(), delete_link(), vibration();
   - enable_notifications(), enable_geolocation();
   - clear_map(), clear_map_put(), clear_map_xput();
   - refresh_scroll();

variables:
   - all_links, b_geo_latitude, b_geo_longitude;

bugs y mejoras:
   - [ADD] opción de crear nuevo gráfico, desde añadir gráfico del visor fpg
   - [CHANGE] cambios internos en funciones gráficas como map_put_pixel(), map_xput(), map_block_copy()... ahora debería funcionar como en div2
   - [FIX] correcciones en el editor gráfico: en la inserción de nuevos gráficos y en el borrado de gráficos editados
   - [FIX] solucionado varios problemas leves relacionados con los cambios internos de la última versión




En breve iré subiendo ejemplos de las nuevas funciones. :)

Un saludo.

mmm, a la funcion de link, porque mejor no le pasas solo el id del proceso y que la funcion se encargue sola de seguir al proceso mientras este viva, y tome del grafico y de x e y los datos que necesita?

Eso no sé si sería muy útil en este caso... En el ejemplo solo uso un único link siguiendo el grafico del proceso pero se pueden crear distintos en un mismo proceso. Si creo 20 enlaces no tiene que depender de 20 procesos... como por ejemplo write o draw, con un solo proceso puedes crear varios enlaces con distintas posiciones x e y, ancho y alto, móviles o fijas. :)

Otro detalle es que la función link es externa al canvas del juego, se posiciona encima creando una capa para permitir tener distintos eventos click limitado a las dimensiones de la pantalla del juego, como si formara parte del mismo.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on July 27, 2016, 01:09:51 AM
nada, era una sugerencia, se ve incomoda la funcion de seguir a un grafico... tener que actualizar las posiciones y demas... al menos quizas agregar una sobrecarga con la funcion con el id del proceso...
pero nada, es una sugerencia.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 27, 2016, 09:07:51 AM
Y te lo agradezco SplinterGU, las sugerencias siempre van bien. :)
A los enlaces todavía le faltan cosas, me he olvidado ponerle que se pueda cambiar el color del borde y ocultarlo, tu sugerencia podría mirar de aplicarla con alguna función en próximas versiones.

Un saludo y gracias.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on August 01, 2016, 10:42:56 PM
Hola amaka,
estoy intentando hacer una aplicacion grafica y buscando con que lenguaje programarlo....
Probando y probando cosas que hay por la red he encontrado este programa que basicamente hace un exe de una aplicacion creada para  internet,node-webkit ,seguro que lo sabras..la cuestion es que al ejecutar la aplicacion por este medio los frames se disparan y adios a las ralentizaciones que sufro ,paso por ejemplo de los 60 procesos a 250 "jugables" del ejemplo procesos de divgo.Es mucha la diferencia.¿Por que no incluir por defecto  poder  empaquetar y ejecutar  con esta aplicacion el juego?...se puede exportar a linux ...windows...etc.
Por cierto,espero que siga avanzando divgo.Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 02, 2016, 11:22:16 AM
Quote from: oskarg on August 01, 2016, 10:42:56 PM
Hola amaka,
estoy intentando hacer una aplicacion grafica y buscando con que lenguaje programarlo....
Probando y probando cosas que hay por la red he encontrado este programa que basicamente hace un exe de una aplicacion creada para  internet,node-webkit ,seguro que lo sabras..la cuestion es que al ejecutar la aplicacion por este medio los frames se disparan y adios a las ralentizaciones que sufro ,paso por ejemplo de los 60 procesos a 250 "jugables" del ejemplo procesos de divgo.Es mucha la diferencia.¿Por que no incluir por defecto  poder  empaquetar y ejecutar  con esta aplicacion el juego?...se puede exportar a linux ...windows...etc.
Por cierto,espero que siga avanzando divgo.Un saludo.

Hola oskarg,

Si que conocía node-webkit y hace un tiempo pensé en incluirlo para que se pudiera elegir al empaquetar el proyecto, por defecto siempre será web no tiene sentido que fuera otra teniendo BennuGD, Gemix, PixStudio o DivDX, pero esto haría que Div GO (IDE) pesara mucho mas y no todos lo acaban usando, lo mismo que incluir cordova para móviles. Por lo que lo deje pasar, mejor que cada uno haga lo que quiera una vez este empaquetado, subirlo directamente a un servidor, hacer una app móvil o una de escritorio. El HTML de la versión empaquetada se puede modificar para incluir Analytics, Adsense, scripts externos, cambiar cosas del HTML...

También me lo estuve mirando para hacer versión desktop para cada sistema de Div GO pero no soporta PHP, solo HTML, CSS y JS. Lo que no sabía era que mejorara tanto la performance, siendo webkit debería irte igual de rápido con chrome u opera.  ???

Seguirá avanzando, ahora esta de relax... pero seguirá. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 13, 2016, 12:53:28 PM
Versión 1.02 ya disponible online, solo trae algunos cambios y correcciones de bugs:



  - [ADD] las funciones move_link() y link() ahora incluyen dos nuevos parámetros para quitar borde y cambiarle el color
   - [FIX] switch case fallaba dentro del loop
   - [FIX] arreglado problema en la interpretación de código cuando se encadenaban distintos bucles con condiciones en su interior
   - [FIX] corrección en el compilador al borrar comentarios, desde la última versión se dejaba alguna excepción
   - [CHANGE] eliminado el efecto sombra del código, hacia que fuera más lento y en algunos navegadores no se mostraba los textos a la primera, y cambiado los tonos para mejor contraste
   - [FIX] solucionado problema al refrescar los gráficos del visor fpg al cambiar de pestañas
   - [FIX] el botón de guardar prg daba error en la última versión




Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 16, 2016, 10:04:01 AM
Versión 1.02 ya disponible para descargar.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 14, 2016, 10:29:21 AM
Versión 1.04 ya disponible online, y las novedades:



funciones:
   - input(), move_input(), delete_input();

variables:
   - all_inputs, num_input, num_link;

bugs y mejoras:
   - [ADD] campos para introducir texto a una variable, hace que en dispositivos móviles se muestre el teclado digital
   - [FIX] solucionado algunos problemas leves en la construcción de código
   - [FIX] al crear un proceso o función con el nombre de los argumentos iguales a las variables globales declaradas las convertía en local
   - [CHANGE] en las struct joy y pad para compatibilidad con firefox
   - [FIX] guarda la posición en la que te encontrabas en el código al compilar y ejecutar
   - [FIX] ahora el guardar datos soporta structs tanto en local_storage, como en variables de sesión y envío de datos externo
   - [CHANGE] la función load_external_data() ahora tiene un parámetro para pasar la variable por offset en vez de devolver un valor




Ejemplo de input: http://www.divgo.net/c-4c831644

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 15, 2016, 09:30:25 AM
Div GO versión 1.04 ya disponible para descargar. 

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 08, 2016, 12:01:57 PM
Versión 1.06 ya disponible para descargar, y las novedades:



bugs y mejoras:
   - [FIX] corregido varios problemas del compilador
   - [FIX] en la función input al devolver por offset el valor de una variable de un struct
   - [FIX] solucionado problema con mouse.graph no mostraba ningún gráfico
   - [FIX] problema en el bloque loading que daba error al utilizarlo
   - [FIX] en el conversor de código al acumular muchas condiciones fuera y dentro de distintos bucles en un mismo proceso
   - [FIX] la función set_terrain() dejó de funcionar en varias versiones
   - [UPDATE] threejs a la versión r81




Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: DCelso on October 08, 2016, 02:22:47 PM
Felicidades,
está quedando muy completo.
Mola.
Sigue así.

(competencia directa a Splinter :D)


Por cierto, ¿va en tablets android?


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 08, 2016, 03:01:04 PM
Quote from: DCelso on October 08, 2016, 02:22:47 PM
Felicidades,
está quedando muy completo.
Mola.
Sigue así.

(competencia directa a Splinter :D )


Por cierto, ¿va en tablets android?

Gracias DCelso. :)

Si que funciona en Android (tanto en tablets como en móviles) y también en dispositivos con iOS.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 05, 2016, 11:16:55 PM
Hola,

Aquí dejo unas capturas de lo nuevo que incluirá la versión 1.08 y que estará disponible en breve.

(https://scontent-mad1-1.xx.fbcdn.net/t31.0-8/15384354_1169127169831238_304111528014001808_o.jpg)
El analizador del programa, ahora se podrá analizar los procesos y alterar el comportamiento de los mismos mientras se está ejecutando.

(https://scontent-mad1-1.xx.fbcdn.net/t31.0-8/15325170_1169127316497890_3057489356404634966_o.jpg)
Textos en 3D a partir de TTF y OTF, usando la lib ThreeJS.

(https://scontent-mad1-1.xx.fbcdn.net/t31.0-8/15288507_1169127253164563_7133451955742326118_o.jpg)
Nueva función: region_chroma(); //funciona tanto para imágenes como para videos

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: darío on December 07, 2016, 07:06:17 PM
Está quedando muy bien. Enhorabuena.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 16, 2016, 09:58:22 PM
Gracias darío! :)

Y ahora sí, ya está disponible la nueva versión 1.08 (solo online para realizar testeos e incluir ejemplos, la descarga en breve) y las novedades:



funciones:
   - region_copy(), region_chroma(), write_object3d();

bugs y mejoras:
   - [ADD] analizador de programa, ahora puedes ver y manipular las variables locales de un proceso mientras se está ejecutando
   - [FIX] los sonidos y videos no se detenían al parar el programa desde el exterior o al cambiar de pestaña
   - [ADD] ahora se genera un pequeño buffer de audio para que se puedan reproducir varios sonidos iguales simultáneamente
   - [FIX] corregidas las structs joy y pad, ahora detecta más de un botón pulsado a la vez
   - [FIX] input() y link() a pantalla completa no se adaptaba bien y desaparecía
   - [FIX] correcciones en la versión responsive para una mejor visualización del entorno desde dispositivos móviles
   - [UPDATE] threejs a la versión r83




Ejemplo de write_object3d(): http://www.divgo.net/c-f2b05e19

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 19, 2016, 10:52:35 AM
Más ejemplos de las nuevas funciones:

Ejemplo de region_chroma(): http://www.divgo.net/c-2e531d01 (http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.divgo.net%2Fc-2e531d01&h=fAQGRYv0c)
Ejemplo de region_copy(): http://www.divgo.net/c-fd5c2559 (http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.divgo.net%2Fc-fd5c2559&h=NAQFv1gmf)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 20, 2016, 01:33:24 PM
Div GO versión 1.08 ya esta disponible para descargar:
http://www.amakasoft.com/herramientas/div-go.html

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 29, 2016, 12:50:40 PM
Hola,amaka,
El proyecto que estas haciendo esta genial,aunque  obsevo que son cuatro gatos que se bajan dicha aplicacion...
Dicho esto,deberias llamar la atencion de dicho engine por los ojos,me explico...
Entras en la pagina de phaser y ves cuatrocientos ejemplos al momento y al momento te haces una idea del potencial y de lo que puedes y no puedes hacer...
Si no recuerdo mal  del nombre,podrias mirarte el playbasic,es un engine algo antiguo,soporta solo 256 colores,eso si, lo digo porque los ejemplos que trae son muy llamativos y trasladarlos al divgo es un abrir y cerrar de ojos.
El punto que limaria es la velocidad a la hora de hacer juegos serios,pues simplemente se requiere de ganas,pues como esta tal cual,hacer cualquier  juego de calidad es factible y me pregunto si en el futuro tienes pensado añadirle algun tipo de aceleracion por hardware.
Nada mas,sigue asi ,pues entre divgo,div3 y bennugd ,hacer juegos 2d es la mar de divertido  y de eso se trata creo ,pasarlo bien,mientras programas.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 11, 2017, 01:36:14 PM
Quote from: oskarg on December 29, 2016, 12:50:40 PM
Hola,amaka,
El proyecto que estas haciendo esta genial,aunque  obsevo que son cuatro gatos que se bajan dicha aplicacion...
Dicho esto,deberias llamar la atencion de dicho engine por los ojos,me explico...
Entras en la pagina de phaser y ves cuatrocientos ejemplos al momento y al momento te haces una idea del potencial y de lo que puedes y no puedes hacer...
Si no recuerdo mal  del nombre,podrias mirarte el playbasic,es un engine algo antiguo,soporta solo 256 colores,eso si, lo digo porque los ejemplos que trae son muy llamativos y trasladarlos al divgo es un abrir y cerrar de ojos.
El punto que limaria es la velocidad a la hora de hacer juegos serios,pues simplemente se requiere de ganas,pues como esta tal cual,hacer cualquier  juego de calidad es factible y me pregunto si en el futuro tienes pensado añadirle algun tipo de aceleracion por hardware.
Nada mas,sigue asi ,pues entre divgo,div3 y bennugd ,hacer juegos 2d es la mar de divertido  y de eso se trata creo ,pasarlo bien,mientras programas.

Hola oskarg,

Sí es verdad que la descarga muy poca gente, hace tiempo que llevo observando que no hay mucho interés por Div GO, tampoco creo que vaya a cambiar mucho haciendo una web de entrada más llamativa. El que quiere hacer un juego hoy día se va a Unity u a otro que no requiera programar mucho, con una gran comunidad, que tenga más manuales y videotutoriales hechos por la comunidad, etc.
Hace poco me estuve mirando Unity y me parecía que de programar había poco, algunos scripts y encima los puedes descargar desde su store de forma gratuita o de pago, dependiendo el script que te haga falta.

Lo de la aceleración por hardware es mediante WebGL, pero el Canvas2D en los navegadores más modernos creo que también usa aceleración por lo que no cambiaria mucho la cosa, aquí tienes una demo muy interesante con 3 benchmark que puedes cambiar a dibujado con WebGL o con Canvas2D: http://tamats.com/projects/canvas2DtoWebGL/demo/ (a mi me va más rápido Canvas2D)

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on January 12, 2017, 09:00:04 PM
Lo que pasa con Unity es que es un motor muy potente, tanto que hay quien puede hacer juegos sin programar :D Hay quien lo hace gastándose dinero en los assets que necesita y prácticamente sólo tiene que juntar piezas.
Pero lo dicho, es un motor muy potente, y por tanto, requiere de cierta potencia en la máquina que lo ejecuta :D

Yo quiero empezar a usarlo haciéndole un favor a Futu con "ya sabes qué proyecto", y mi primer miedo era no poder usarlo en local. El segundo es el obvio cambio en el lenguaje, que siempre implica un periodo de aprendizaje, pero he visto que no es tan grave como pensaba (que ya andaba haciendo cábalas sobre aprender HTML5 y demás ^^U).
Ya cuando empiece veremos qué tan difícil es, porque de momento he echado de menos alguna explicación extra en algunas de las funciones nuevas, pero creo que por el contexto, el uso y alguna búsqueda por internet podré solucionarlo.

Sólo una pregunta: ¿en general se parece más a DIV, Fenix o BennuGD? Futu andaba haciéndolo en Bennu con intención de portar directamente a DivGo, y no sé si eso es posible o hasta qué punto :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 16, 2017, 10:10:52 PM
Bueno,un par de cosas.....
Es cierto que hay infinidad de engines por la red y comprendo que la competencia es feroz,dicho esto ,personalmente me gusta divgo porque es facil de programar y me cuesta hacerme a la idea de tener que  aprender otro lenguaje que no sea tipo c o pascal xd aunque al final me vere obligado para no quedarme estancado .No sabia que Unity tuviera esa caracteristica de importar scripts y no se si es complicado o no de utilizarlo y aunque Div go ,esta en otra dimension,nunca la dejes de lado ,pues resulta util.
la verdad es que los motores que vienen ahora,son como los muñecos "potato" xd,de quita y pon,bastante visual,donde solo debes poner los fondos,los sprites,cambiar sus variables y darle al play xd.
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on January 17, 2017, 12:50:46 AM
Unity es muy fácil de usar, pero difícil de dominar. Lo dicho, juntas un par de assets, le metes el motor de físicas y arreando. Pero luego puedes hacerte tus scripts, puedes usar tus modelos 3D, puedes crear una máquina de estados de animaciones (tan compleja como quieras, incluso para distintas partes del cuerpo), simular la iluminación, crear terrenos modificables en tiempo real... o desechar completamente el motor de físicas y programarte las tuyas :D
La programación en Unity es muy sencilla, porque se parece tremendamente a Java, que es una simplificación de C++ y su POO, e incluyen las subrutinas que son los procesos de DIV (más o menos).

Pero es eso, cuanta más variedad tengamos mejor. No sé DivGo, pero el juego más pequeño que he visto de Unity pesaba 30MB, y en ese espacio meto dos veces el juego más grande que he programado en Bennu :P
Ahora he empezado un curso de PHP, y creo que si lo junto con DivGo puedo hacer cosas bastante chulas en mi nueva página web... cuando me ponga a crearla ^^U
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 17, 2017, 12:44:24 PM
Quote from: Drumpi on January 12, 2017, 09:00:04 PM
Lo que pasa con Unity es que es un motor muy potente, tanto que hay quien puede hacer juegos sin programar :D Hay quien lo hace gastándose dinero en los assets que necesita y prácticamente sólo tiene que juntar piezas.
Pero lo dicho, es un motor muy potente, y por tanto, requiere de cierta potencia en la máquina que lo ejecuta :D

Yo quiero empezar a usarlo haciéndole un favor a Futu con "ya sabes qué proyecto", y mi primer miedo era no poder usarlo en local. El segundo es el obvio cambio en el lenguaje, que siempre implica un periodo de aprendizaje, pero he visto que no es tan grave como pensaba (que ya andaba haciendo cábalas sobre aprender HTML5 y demás ^^U).
Ya cuando empiece veremos qué tan difícil es, porque de momento he echado de menos alguna explicación extra en algunas de las funciones nuevas, pero creo que por el contexto, el uso y alguna búsqueda por internet podré solucionarlo.

Sólo una pregunta: ¿en general se parece más a DIV, Fenix o BennuGD? Futu andaba haciéndolo en Bennu con intención de portar directamente a DivGo, y no sé si eso es posible o hasta qué punto :)

Hola,

Esta claro que Unity es potente y es compatible con casi cualquier plataforma: movil, ordenador y consolas. No recuerdo si para consolas ya requería previo pago.

La programación de Unity es en C# y Javascript, tiene cientos de opciones que acaban volviéndote loco, me recuerda a cuando empecé con Flash.

DivGO se parece más a Div 2, empecé basándome en este e incluyendo cosas nuevas, y también tiene algunas funciones y variables similares de Fenix, BennuGD y Gemix. Por ejemplo, en DivGO no se necesita declarar el tipo de variable como pasa con Javascript, todas pueden ser INT, STRING o FLOAT...

Juntar PHP con DivGO es posible y necesario para crear cuentas de usuario para entrar a una partida y guardar sus progresos en una BBDD, uniendo ambos eso es posible.

Quote from: oskarg on January 16, 2017, 10:10:52 PM
Bueno,un par de cosas.....
Es cierto que hay infinidad de engines por la red y comprendo que la competencia es feroz,dicho esto ,personalmente me gusta divgo porque es facil de programar y me cuesta hacerme a la idea de tener que  aprender otro lenguaje que no sea tipo c o pascal xd aunque al final me vere obligado para no quedarme estancado .No sabia que Unity tuviera esa caracteristica de importar scripts y no se si es complicado o no de utilizarlo y aunque Div go ,esta en otra dimension,nunca la dejes de lado ,pues resulta util.
la verdad es que los motores que vienen ahora,son como los muñecos "potato" xd,de quita y pon,bastante visual,donde solo debes poner los fondos,los sprites,cambiar sus variables y darle al play xd.

Poco a poco intento añadir novedades y hacer correcciones, ya para la próxima tengo un par de funciones nuevas y algunas correcciones, estoy mirando también a ver si puedo incluir en está gravedad y físicas para el 3D. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on January 18, 2017, 02:35:12 AM
Puedo confirmarte que para todas las plataformas de consola hay que pagar, y no son precios al alcance de cualquiera, hay que ir en serio si quieres recuperar la inversión.
Bueno, para Nintendo es gratis, sólo tienes que pagar el equipo de desarrollo, que creo que para WiiU andaba sobre los 3000$... y aun así me parece que era la licencia más barata :S (lo mismo me patinan las cifras, pero creo que por ahí andaba la cosa ^^U).
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 26, 2017, 07:14:48 AM
hola amaka,que tal??algun añadido nuevo a la vista??¿?
Me gustaria saber si hay alguna forma sencilla de añadir nuevas funciones a divgo que trae html5 y si podrias hacer un mini tuto para que lo comprendiera un mortal como yo,gracias y espero ver novedades en este proyecto,pues me resulta util.
otra cuestion ......en un futuro se incluira fisicas?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 28, 2017, 11:50:52 AM
Hola oskarg,

La versión 1.10 la he parado de manera indefinida desde hace un par meses, por un bloqueo mental con las físicas en 3D y por querer realizar otros proyectos. Llevo días pensando en volver con ello, es más te puedo decir lo que incluirá la próxima versión, lo que ya dispondría si lo sacara hoy o mañana:



funciones:
   - * set_gravity(), move_gravity_objects3d();
   - delete_region(), is_defined_region();

variables:
   - mouse.is_active, loading_data, b_screen_width, b_screen_height;

bugs y mejoras:
   - [FIX] al añadir un grafico desde el editor, si no se le hacia ningún cambio este no se guardaba
   - [FIX] al copiar regiones con region_copy() no copiaba los efectos que se incluian en ellas
   - [FIX] corrección en el compilador que afectaba al declarar las tablas de dos dimensiones sin definir valores
   - [FIX] corregida algunas funciones que daban error si no existe el graph
   - [FIX] solucionado error de gráfico en texture_in_map(), path_find(), path_free() y path_line()
   - [ADD] funciones para controlar div go desde javascript: DivGO.start(), DivGO.pause(), DivGO.stop()




Las funciones que incluye * delante no funcionan bien, hay un churro con muchos chivatos que daba error y me harte, y quise darme un descanso de Div GO por una temporadita.

Las físicas tanto para 2D como para 3D las voy intentado añadir, llevo ya varios intentos, pero no consigo que quede bien en conjunto con los procesos.

¿Que funciones de Html5 tienes en mente?, a lo mejor no las he tenido en cuenta y podrían ser útiles para incluir en la próxima versión.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 28, 2017, 09:04:16 PM
Hola amaka,se agradece que aún sigas con el proyecto,pues yo personalmente lo encuentro genial,si algun día logras incluir físicas como phaser la verdad que sería un gran avance .
Una cosa....
el ejemplo input cuando pulso enter no hace nada..
el ejemplo xdraw no me hace nada.......
el ejemplo paint_in_map no me hace nada...
el efecto region y el efecto screencopy estan geniales
duda..
una vez escrito las letras con un color determinado ,hay alguna manera de poder ir cambiando el color de estas?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 29, 2017, 11:25:21 AM
Quote from: oskarg on March 28, 2017, 09:04:16 PM
Hola amaka,se agradece que aún sigas con el proyecto,pues yo personalmente lo encuentro genial,si algun día logras incluir físicas como phaser la verdad que sería un gran avance .
Una cosa....
el ejemplo input cuando pulso enter no hace nada..
el ejemplo xdraw no me hace nada.......
el ejemplo paint_in_map no me hace nada...
el efecto region y el efecto screencopy estan geniales
duda..
una vez escrito las letras con un color determinado ,hay alguna manera de poder ir cambiando el color de estas?

El ejemplo del input debes pulsar enter cuando el foco esta en el canvas, lo mejor hubiera sido añadir un botón para forzar a darle al canvas con el ratón.
El ejemplo de xdraw da error porque el ejemplo está mal hecho, no controla el numero de objetos creados en el segundo bucle. Sí lo hice yo, pero en las primeras versiones de DivGO y desde entonces han habido muchos cambios. Este mismo ejemplo funciona en la version 1.10 que tengo en local, porque en esta versión move_xdraw() controla si existe el objeto.
Y el ejemplo paint_in_map() no funciona por un bug que ya corregí en la versión 1.10, cambios que uno hace para optimizar y como el único que testea es el mismo que el que lo programa... es lo que hay.  :P

Los colores de las letras se pueden cambiar tantas veces como hagas text_color, aquí te dejo un ejemplo: http://www.divgo.net/c-249da8bf

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on April 12, 2017, 11:29:51 AM
Despues de meses y de haberlo dicho decenas de veces, por fin! por fin he dedicado 5 min a probar tu compilador en windows, y tambien el nuevo DIV3.

Te pongo los Problemas detectados en la pruebas, aclaro que lo he probado en mi pepinaco que esta a tope de ram y procesamiento:

1 - Al cargar/compilar varios juegos/ejemplos, se va volviendo cada vez mas lenta la ejecucion.

2 - El Castle of Dr. Malvado, la mayoria de veces no termina de cargar, se queda a veces al 92 o 97%.
La primera vez se cargo bien y el primer plano de scroll no salia (donde el muñeco camina), pero este lo detectaba.

3 - El pacman ha quedao pantalla negra no enseña nada.


Por cierto como esta hecho la app, muestra exactamente la misma ventana que se ejecuta en tu pagina web, me pierdo bastante en las tecnologias que usas la verdad
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on April 12, 2017, 05:22:32 PM
A mi, el Castle me lo carga bien. otra cosa es que sea un paquete y no avance demasiado antes de que me maten, pero ir me va.

Una vez que hayas compilado el código, se te dan varias opciones, como indica la ventana de compilación en la parte de abajo:
- Ejecutar hace que se vea en la ventana de edición de divgo.
- Ejecutar en proyector hace que se ejecute como lo verá el resto del mundo.
- Crear empaquetado te crea un zip con el contenido de lo que tienes que subir a tu servidor. Sólo tienes que usar un servidor FTP (local o web), buscar la carpeta donde lo quieres alojar, y descomprimir, tal cual, el contenido del zip. Luego, desde cualquiera de tus páginas, añade un enlace al index.html, y listo, ya se puede jugar desde internet.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 19, 2017, 10:14:02 AM
Quote from: FreeYourMind on April 12, 2017, 11:29:51 AM
Despues de meses y de haberlo dicho decenas de veces, por fin! por fin he dedicado 5 min a probar tu compilador en windows, y tambien el nuevo DIV3.

Te pongo los Problemas detectados en la pruebas, aclaro que lo he probado en mi pepinaco que esta a tope de ram y procesamiento:

1 - Al cargar/compilar varios juegos/ejemplos, se va volviendo cada vez mas lenta la ejecucion.

2 - El Castle of Dr. Malvado, la mayoria de veces no termina de cargar, se queda a veces al 92 o 97%.
La primera vez se cargo bien y el primer plano de scroll no salia (donde el muñeco camina), pero este lo detectaba.

3 - El pacman ha quedao pantalla negra no enseña nada.


Por cierto como esta hecho la app, muestra exactamente la misma ventana que se ejecuta en tu pagina web, me pierdo bastante en las tecnologias que usas la verdad

Hola FreeYourMind,

Que versión estas usando y que navegador? Así puedo revisar en que puede estar fallándote.

La versión ejecutable utiliza PHPdesktop: https://github.com/cztomczak/phpdesktop
Por lo que es exactamente igual a la versión web pero ejecutada con Chrome e incluye todo lo necesario para interpretar el PHP.

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on April 19, 2017, 10:18:39 AM
no lo he usado en navegador, como dije, lo he usado con la app de escritorio, mi pc es offline donde hago las pruebas
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 19, 2017, 10:38:57 AM
Quote from: FreeYourMind on April 19, 2017, 10:18:39 AM
no lo he usado en navegador, como dije, lo he usado con la app de escritorio, mi pc es offline donde hago las pruebas

Vale, acabo de verlo, sí que falla en la versión desktop, lo raro es que no es siempre. A mí la primera vez me ha cargado bien Dr. Malvado y Pacoman no ha continuado con la carga, y al segundo intento Pacoman ha funcionado y Malvado no ha cargado el primer nivel pero ha ejecutado.  :o

He visto el debug.log que suelta PHPdesktop, el fallo esta en esto y no siempre:
[0419/122437:INFO:grvertexbatch.cpp(32)] Vertices could not be allocated for instanced rendering.
[0419/122437:INFO:grtinstancebatch.h(102)] Could not allocate vertices

Para la próxima versión de DivGO actualizare también PHPdesktop a la última versión que salió recientemente a ver si no tiene estos errores.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on April 19, 2017, 11:27:34 AM
Gracias a ti, estas haciendo un trabajo magnifico
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 26, 2017, 12:37:44 PM
Tras una temporadita de relax, ya está disponible online la nueva versión 1.10 (solo online para realizar testeos), las novedades:  8)



funciones:
   - delete_region(), is_defined_region(), set_description(), set_author();

variables:
   - mouse.is_active, loading_data, b_screen_width, b_screen_height;

bugs y mejoras:
   - [FIX] al añadir un grafico desde el editor, si no se le hacía ningún cambio este no se guardaba
   - [FIX] al copiar regiones con region_copy() no copiaba los efectos que se incluían en ellas
   - [FIX] corrección en el compilador que afectaba al declarar las tablas de dos dimensiones sin definir valores
   - [FIX] corregida algunas funciones que daban error si no existe el graph
   - [FIX] solucionado error de grafico en texture_in_map(), path_find(), path_free() y path_line()
   - [ADD] funciones para controlar div go desde otros scripts: DivGO.start(), DivGO.pause(), DivGO.continue(), DivGO.stop()
   - [ADD] ejemplos en ingles y catalán, separado por subcarpetas (falta traducción al catalán)
   - [UPDATE] threejs a la versión r85 y codemirror a la versión 5.25.2




Ejemplo de las funciones delete_region() e is_defined_region(): http://www.divgo.net/c-964569ae

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 28, 2017, 11:06:56 AM
Hola AMAKA,una cuestion...
Como se crea fpg nuevos?¿?he intentado copiar el fichero fpg.dat en otra carpeta.lo modifico en txt y entonces agrego los graficos 001.png...y en el visualizador los visualiza,pero a la hora de ejecutar el programa,por mas que ponga bien la ruta,siempre me carga los fpg que tiene por defecto div y me veo obligado a utilizar otros fpg ya creados y modificar sus graficos.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 28, 2017, 12:16:36 PM
Quote from: oskarg on April 28, 2017, 11:06:56 AM
Hola AMAKA,una cuestion...
Como se crea fpg nuevos?¿?he intentado copiar el fichero fpg.dat en otra carpeta.lo modifico en txt y entonces agrego los graficos 001.png...y en el visualizador los visualiza,pero a la hora de ejecutar el programa,por mas que ponga bien la ruta,siempre me carga los fpg que tiene por defecto div y me veo obligado a utilizar otros fpg ya creados y modificar sus graficos.

Hola oskarg,

En teoría lo que haces está bien y debería de funcionar, no es necesario crear el fpg.dat (si lo creas tampoco debería dar problemas), esto te lo crea y actualiza el compilador, cada vez que vayas a compilar comprobará los cambios y actualizará la lista de gráficos del fpg.dat. Con solo crear la carpeta e incluir los gráficos del 001.png al 999.png tendría que ser suficiente... eso y hacer el load_fpg() correspondiente desde tu código.
Si creas una carpeta fuera de la carpeta gráficos, por ejemplo: recursos/fpgs/niveles/nivel1/<aquí los gráficos del nivel> En el código debes poner: load_fpg("recursos/fpgs/niveles/nivel1");

Otra cosa distinta es que te pida la carpeta gráficos, esta siempre va asociada a file = 0 y a los gráficos del bloque loading, por lo que mantenla para añadir algún gráfico: del favicon, mouse, loading... algún logo... También puedes dejarla vacía, pero la carpeta debe de estar.

¿Estas utilizando la versión normal o la Desktop?

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 28, 2017, 12:38:09 PM
desktop y si hago con tu metodo tampoco y me dice que no existe el fpg.dat y eso que lo compilo,pero me carga el fpg original
...es decir creo carpeta pelotas....
y digo xd..
load_fpg("graficos/pelotas");          pero me expresa que no existe el fpg.dat y hay ya archivos en su interior. y zass me carga el grafico por defecto del fpg que trae divgo..ya me diras,pues me voy a trabajar .....

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 29, 2017, 11:45:13 AM
Quote from: oskarg on April 28, 2017, 12:38:09 PM
desktop y si hago con tu metodo tampoco y me dice que no existe el fpg.dat y eso que lo compilo,pero me carga el fpg original
...es decir creo carpeta pelotas....
y digo xd..
load_fpg("graficos/pelotas");          pero me expresa que no existe el fpg.dat y hay ya archivos en su interior. y zass me carga el grafico por defecto del fpg que trae divgo..ya me diras,pues me voy a trabajar .....


Qué raro, he estado realizando varias pruebas, una exactamente con la ruta que indicas (adjunto imágenes) y no consigo reproducir el error. He probado en dejarlo sin fpg.dat y el compilador no me da error, me genera el archivo.

Pásame tu código y fpg por privado para ver donde puede estar el problema, si hay un problema y todavía existe podre solucionarlo para la versión 1.10. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 29, 2017, 08:50:13 PM
Hola,Te respondo ahora antes de ir a dormir,ya he contrado el error,era mio,no definia el id del fichero en el proceso y claro me cargaba el que trae por defecto...mañana no puedo ,mas el lunes  paso un programa de div3 a divgo y te comento si veo que no funciona.Un saludo y gracias.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 02, 2017, 08:22:30 PM
Div GO versión 1.10 ya esta disponible para descargar:
http://www.amakasoft.com/herramientas/div-go.html (http://www.amakasoft.com/herramientas/div-go.html)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 02, 2017, 08:56:15 PM
Amaka un par de cosas...
1.en los procesos puedes definir Begin varias veces y no encuentra el error.
2.Si defines mal el write no lo detecta,pero produce que los graficos no se carguen,de ahi el error que tenia.
3.Estaria bien poder definir como rellenas un grafico,en el editor,es decir,valores de r,g,b.
4.Cuando trabajo en pantalla completa,al compilarlo vuelve su estado original,con la pantalla de "puntos",seria idoneo poderlo evitar.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 03, 2017, 09:33:41 AM
Quote from: oskarg on May 02, 2017, 08:56:15 PM
Amaka un par de cosas...
1.en los procesos puedes definir Begin varias veces y no encuentra el error.
2.Si defines mal el write no lo detecta,pero produce que los graficos no se carguen,de ahi el error que tenia.
3.Estaria bien poder definir como rellenas un grafico,en el editor,es decir,valores de r,g,b.
4.Cuando trabajo en pantalla completa,al compilarlo vuelve su estado original,con la pantalla de "puntos",seria idoneo poderlo evitar.

Hola oskarg,

El punto 1 fue corregido en la versión 1.10, cuando digo versión para testear me suelo referir a la última versión que va a salir. ;)
El punto 3 es algo que quiero hacer en cada versión, pero acabo dejando siempre de lado, pensé que nadie usaba el editor que hice para Div GO.
Y sobre lo que comentas en los puntos 2 y 4 no lo acabo de entender del todo, si puedes ser mas especifico o añadir alguna captura, y en el caso de write un código de ejemplo estaría genial.

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 03, 2017, 11:42:49 AM
te comento y lo digo por memoria,pues borre el programa que me daba errores hasta que corregi todos ...
1.no puedes poner & en vez de offset como sucedia en div para write_int o si por error lo utilizas en write,a mas que no te detecta el error y claro,hasta que di con el detalle paso bastante tiempo probando cosas,pues no lo entendia xd.

2.Cuando comentaba un proceso..por ejemplo //inicio() a la hora de compilarlo,si dicho proceso tenia un error me lo indicaba,no deberia ser de ese modo,pues se supone que con las comillas anula que me entre en tal proceso.

3.Cuando ejecutas divgo,se ve la pantallita negra con sus puntos,me resultaria mas practico que no saliera cuando indico escribir codigo en pantalla completa,pues una vez lanzado  en el proyector el programa ,al volver sale la pantalla negra con puntos y por consiguiente tengo que volver a seleccionar otra vez trabajar en pantalla completa.

4.El tamaño y color de letras esta genial muy sencillo de utilizar.
5.El reescalado todo un acierto,en modo no suavizado  me va de perlas hacer programas a baja resolucion y luego cambiar el tamaño sin que se aprecie ralentizacion.

Espero que continues con el proyecto,pues el programa merece la pena.



Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 03, 2017, 03:58:08 PM
Quote from: oskarg on May 03, 2017, 11:42:49 AM
te comento y lo digo por memoria,pues borre el programa que me daba errores hasta que corregi todos ...
1.no puedes poner & en vez de offset como sucedia en div para write_int o si por error lo utilizas en write,a mas que no te detecta el error y claro,hasta que di con el detalle paso bastante tiempo probando cosas,pues no lo entendia xd.

2.Cuando comentaba un proceso..por ejemplo //inicio() a la hora de compilarlo,si dicho proceso tenia un error me lo indicaba,no deberia ser de ese modo,pues se supone que con las comillas anula que me entre en tal proceso.

3.Cuando ejecutas divgo,se ve la pantallita negra con sus puntos,me resultaria mas practico que no saliera cuando indico escribir codigo en pantalla completa,pues una vez lanzado  en el proyector el programa ,al volver sale la pantalla negra con puntos y por consiguiente tengo que volver a seleccionar otra vez trabajar en pantalla completa.

4.El tamaño y color de letras esta genial muy sencillo de utilizar.
5.El reescalado todo un acierto,en modo no suavizado  me va de perlas hacer programas a baja resolucion y luego cambiar el tamaño sin que se aprecie ralentizacion.

Espero que continues con el proyecto,pues el programa merece la pena.


Div GO soporta offset y &, tanto en write_int() como en write(), lo que pasa que con write() te muestra la variable como objeto y no el valor actualizándose por pantalla como hace write_int().

//ambos deberían de funcionar
write_int(0, 0, 0, 0, offset puntos);
write_int(0, 0, 20, 0, &puntos);


El compilador de Div GO analiza todo el código que no sea parte de un comentario, se use o no el proceso, para que no lo analice prueba en comentar el proceso con /* */

Ahora entiendo lo que dices de la pantalla completa, me lo apunto para próximas versiones. Mirare que guarde el estado de pantalla completa si lo has dejado así la ultima vez y si el código es erróneo y vuelves que siga a tamaño completo, pero a la hora de ejecutar el juego compilado se tendrá que poner a tamaño normal para que se muestre el resultado.

Me alegra que lo demás te guste. :)
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on May 04, 2017, 12:35:07 PM
Holas! He ido a hacer una prueba, y me ha aparecido este error:

(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=3940)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 04, 2017, 02:04:09 PM
Hola panreyes,

No es necesario declarar el tipo de variable, ahí te está dando error porque detecta dos variables que no están separadas por , o ;

Global
    texto = ""; //se inicializa la variable como string, pero se puede cambiar un entero a tipo string en cualquier momento del código


Y como pasaba con Div no se debe cerrar las GLOBAL, CONST y PRIVATE con END

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 08, 2017, 02:46:44 PM
Recordáis un juego de Zelda que acompañaba a los ejemplos de Div 2?
Con este juego he corregido un bug en la carga de FPGs de DivGO. :)

Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on May 09, 2017, 03:12:04 PM
jo, que me jode no poder ver la s imagenes, lol
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=3942)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 12, 2017, 11:04:49 AM
He actualizado los descargables de la versión 1.10, el empaquetador vinculaba a la versión 1.08 de Div GO.

A ver si ahora se ve bien las imágenes, incluyo la de otro que también acompañaba Div 2.
(https://scontent.fmad3-2.fna.fbcdn.net/v/t31.0-8/18401890_1327529200657700_3060050762710795804_o.jpg?oh=479638a5bec107887c8c9bf0fd437286&oe=59771CFD)
(https://scontent.fmad3-2.fna.fbcdn.net/v/t31.0-8/18422129_1327529207324366_7523810347631418108_o.jpg?oh=9f14cd3ae7083719332c6b23ce9d04e9&oe=59C2F50E)

Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on May 15, 2017, 10:52:43 AM
no te preocupes no me importa ponerlas

(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=3947)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 16, 2017, 12:19:53 PM
Quote from: oskarg on May 02, 2017, 08:56:15 PM
3.Estaria bien poder definir como rellenas un grafico,en el editor,es decir,valores de r,g,b.
4.Cuando trabajo en pantalla completa,al compilarlo vuelve su estado original,con la pantalla de "puntos",seria idoneo poderlo evitar.

Los puntos 3 y 4, ya los tengo listos para la versión 1.12. Ahora en el editor puedes definir los valores RGB y la codificación a tamaño completo se queda guardada y solo vuelve al tamaño normal si pulsas en el botón. :)

Dejo una captura del editor  donde se puede ver los campos R G B.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 05, 2017, 07:17:07 PM
Hola,

Aquí vuelvo a dejar 2 capturas más:

Arrancando Panic! con Div GO.
(https://scontent.fmad3-1.fna.fbcdn.net/v/t31.0-8/18839797_1349158458494774_4534731425834143808_o.jpg?oh=ac433a32b2b1cda0b2f21554100f06c9&oe=599C6F78)

Y nuevas opciones del IDE: buscar y remplazar, cuando se trabaja con el código a tamaño completo.
(https://scontent.fmad3-1.fna.fbcdn.net/v/t31.0-8/18891471_1349158531828100_3428571886733993935_o.jpg?oh=1de73320828cc7e6079e4f800756c65e&oe=59E34E40)

Estos son los avances de la próxima versión, por el momento. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 10, 2017, 11:33:01 AM
Ya está disponible online la versión 1.12 de Div GO, las novedades: 



bugs y mejoras:
   - [FIX] los archivos fpg (8,16,32) no leía bien los gráficos con código superior a 255
   - [FIX] solucionado un problema con la lectura y escritura de gráficos que ya estaban cargados en memoria
   - [FIX] corregida las coordenadas de las funciones get_dist() y constraint(), para adaptarse al mode7 y al scene3d
   - [FIX] corrección y optimización en el compilador a la hora de buscar errores en el código
   - [ADD] desde el editor gráfico ya se puede definir el color RGB que se quiere seleccionar para dibujar
   - [ADD] ahora se mantiene guardado el tamaño del campo de texto del editor de código
   - [ADD] al poner el editor de código a tamaño completo se ha incluido las opciones de buscar y reemplazar
   - [ADD] nuevo tema: Classic Div 2




Ejemplo de uso de constraint en mode7: https://www.divgo.net/c-4a84707c

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 11, 2017, 04:10:46 PM
Div GO versión 1.12 ya disponible para descargar: http://www.amakasoft.com/herramientas/div-go.html (http://www.amakasoft.com/herramientas/div-go.html)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 11, 2017, 08:15:07 PM
Que es eso de nuevo tema.classic div?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 12, 2017, 09:37:44 AM
Quote from: oskarg on June 11, 2017, 08:15:07 PM
Que es eso de nuevo tema.classic div?¿?

Los temas cambian el diseño del IDE: colores, tipografías, iconos, colocación de las cosas... El tema Classic Div2 es un homenaje al programa en el que está basado Div GO, y he incluido iconos, tipografías y colores como era en Div 2.
Esto se puede elegir en la parte inferior de la pagina, donde pone selección de tema, junto con la selección de idiomas.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 14, 2017, 11:06:21 PM
Ya disponible online la versión 1.14.0 de Div GO, las novedades: 



funciones:
   - say(), change_fpg_color();

constantes:
   - _case_sensitive, _simple_conditions, _initial_fpg;

bugs y mejoras:
   - [FIX] corregido problema del compilador que no detectaba un error de funciones sin valor entre dos comas
   - [ADD] incluido las primeras opciones de compilación por código con compiler_options
   - [ADD] carga de recursos independientes al bloque loading con el uso de @ delante de la función, ej: @load_xxx()
   - [ADD] ahora se añade 'use strict' en el código javascript del juego
   - [CHANGE] cambio en las funciones write para que escriba las id en vez del [object object] de javascript
   - [CHANGE] cambio interno en el refresco de procesos dentro de un scrolls para devolver correctamente la posición de scroll
   - [CHANGE] las variables internas dejan de ser todas var, ahora se incluyen let y const como en la especificación del es6




Ejemplo de uso de change_fpg_color(): https://www.divgo.net/c-ecb253f0
Y otro ejemplo de change_fpg_color(): https://www.divgo.net/c-e9f0ff3d

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 16, 2017, 09:25:12 PM
Guau!!pensaba que ya no se actualizaba este gran engine.Espero que sean mas continuos los progresos/actualizaciones,pues para hacer cosas en 2d con html5 es lo mas sencillo que hay por la red.
Una duda se puede cambiar el grosor de la linea ,de las primitivas graficas?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on November 17, 2017, 04:45:30 AM
buen trabajo!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 17, 2017, 09:07:37 AM
Gracias SplinterGU! :)

Quote from: oskarg on November 16, 2017, 09:25:12 PM
Guau!!pensaba que ya no se actualizaba este gran engine.Espero que sean mas continuos los progresos/actualizaciones,pues para hacer cosas en 2d con html5 es lo mas sencillo que hay por la red.
Una duda se puede cambiar el grosor de la linea ,de las primitivas graficas?¿?


Tampoco hace tanto de la anterior actualización, fue de mediados de Junio. El problema que hay actualmente, a parte de mi falta de tiempo, es la escasez de ideas o falta de feedback para seguir actualizando. A veces se me ocurren cosas que se pueden aplicar o no se puede porque consume demasiado y acaba siendo una malisima idea, o porque es una locura (pasar Div GO entero a webgl) o por otras limitaciones.

Sobre el grosor de la línea de las primitivas se puede cambiar usando stroke_size, aquí un ejemplo: https://www.divgo.net/c-5eed3e39

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 19, 2017, 05:51:45 PM
Ya disponible para descargar la versión 1.14.1 de Div GO, tiene una correción que se puede consultar en la sección de novedades: http://www.amakasoft.com/herramientas/div-go.html (http://www.amakasoft.com/herramientas/div-go.html)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 20, 2017, 09:20:56 AM
Hola se produce este error en mi window xp...
No se encuentra el punto de entrada del procedimiento QueryUnbiasedInterruptTime en la biblioteca de vinculos dinamicos kernel32.dll

Otra cuestion...como se puede añadir mas features al divgo...
Por ejemplo yo quiero añadir la curva bezier..lo tendría que añadir una vez compilador el programa y trastear entonces el resultado lo que da en divgo en html5?¿? hay otra forma mas sencilla de hacerlo?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on November 20, 2017, 12:20:00 PM
click derecho, copiar ruta de enlace y pegar entre las etiquetas img:
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4022)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 20, 2017, 03:06:42 PM
Disculpa,mas no entiendo lo que me expresas futu....click derecho.....podrias indicarme que pasos he de seguir para evitar tal error de una forma mas precisa?¿?xd
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on November 20, 2017, 03:33:06 PM
perdon, es para mostrar las imagenes en este foro, siento si te hecho volver loco :(
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 20, 2017, 08:08:03 PM
Quote from: oskarg on November 20, 2017, 09:20:56 AM
Hola se produce este error en mi window xp...
No se encuentra el punto de entrada del procedimiento QueryUnbiasedInterruptTime en la biblioteca de vinculos dinamicos kernel32.dll

Otra cuestion...como se puede añadir mas features al divgo...
Por ejemplo yo quiero añadir la curva bezier..lo tendría que añadir una vez compilador el programa y trastear entonces el resultado lo que da en divgo en html5?¿? hay otra forma mas sencilla de hacerlo?¿?

Hola oskarg,

Por desgracia la última versión de PHPDesktop, la que se incluye desde hace un par de versiones, dejo de tener soporte para Windows XP. Lo mismo que sucede con Chrome 57 que es lo que incluye PHPDesktop.
Prueba en incluir Div GO 1.14.1 en la carpeta www de la versión desktop 1.08 o anterior a ver si te funciona.
Div GO lo voy actualizando con miras al futuro, no al pasado, cada nueva versión acabará por ser incompatible con versiones antiguas de navegadores y sistemas operativos, lo mismo que los navegadores que se van actualizando y dejan de tener soporte a S.O. antiguos.

Puedes añadir las features que quieras en tu proyecto, una vez empaquetado, puedes incluir cualquier js externo para incluir funcionalidades a tu juego o pagina, en mi caso para Gamma Z incluí scripts para usar las APIs de Facebook. El problema es para pintar dentro del propio canvas del juego, eso va a ser mas difícil, más que nada porque Div GO tiene sus propios frames, fps, controles de refresco de procesos, scrolls y tal...

Dime que necesitas, un planteamiento de como lo incluirías en Div GO (las funciones o variables necesarias y un ejemplo de código), y me lo puedo mirar para incluirlo en la próxima versión. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 20, 2017, 09:47:55 PM
1.Futu.....desde hace siglos no sabia como se hacia para que se visualizara las imagenes en este foro,hasta hoy xd.
2.Lo de avanzar a las nuevas versiones y dejando incompatibilidad ,comprendo y me parece bien que avance ,es cuestion  de que yo comience a renovar  el equipo.
3. bezier.https://pomax.github.io/bezierjs.....Cuando tenga equipo nuevo,ya te sugerire,pues las encuentro utiles.De momento utilizo divgo oline,no me corre prisa.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 22, 2017, 12:24:09 PM
Hola,ya encontrado la forma que funcione en xp....Simplemente utilizando  Xamp.....genial...asi puedo trastear con el.xd
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 22, 2017, 08:55:16 PM
Quote from: oskarg on November 22, 2017, 12:24:09 PM
Hola,ya encontrado la forma que funcione en xp....Simplemente utilizando  Xamp.....genial...asi puedo trastear con el.xd

En los zip descargables suelo incluir un 'readme-ES.txt' con estas instrucciones:


¿Cómo instalo Div GO en mi equipo local?

Lo primero que necesitaras es instalar en tu ordenador WAMP (http://www.wampserver.com/),
XAMPP (http://www.apachefriends.org/es/xampp.html) o similares que incluye Apache y PHP
necesarios para hacer funcionar Div GO en local.

Una vez instalado e iniciado, tienes que añadir el contenido de Div GO en el directorio
que te ha generado: wamp/www/<carpeta de mi proyecto> o xampp/htdocs/<carpeta de mi proyecto>
(en la carpeta del proyecto hay que añadir DivGO).
Y ahora es comprobar si todo ha ido bien escribiendo desde el navegador localhost, te mostrara
la página de inicio de WAMP o XAMPP.

Para acceder a tu proyecto la ruta será: localhost/<carpeta de mi proyecto>


Y es realmente fácil de instalar y usar.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 16, 2017, 07:37:48 PM
Hola,

Hace unos días que estoy mirando de pasar Div GO a WebGL con el engine PixiJS y aquí dejo la primera comparativa de Div GO corriendo con PixiJS (WebGL) y con el original (Canvas2d).

Original (Canvas2d): https://www.divgo.net/proyectos/benchmark/normal/ (https://www.divgo.net/proyectos/benchmark/normal/)
PixiJS (WebGL): https://www.divgo.net/proyectos/benchmark/webgl/ (https://www.divgo.net/proyectos/benchmark/webgl/)

El ejemplo va generando procesos hasta que caen los fps, aquí os pongo el código del ejemplo: https://www.divgo.net/c-e6420ee6 (https://www.divgo.net/c-e6420ee6)

Y mis resultados utilizando Firefox:
Original (Canvas2d): 3845 procesos
PixiJS (WebGL): 6897 procesos

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on December 17, 2017, 02:09:10 AM
Interesante test :)

Me he permitido portar dicho código a PixTudio, BennuGD y Fénix, para ver las diferencias de rendimiento entre los diferentes DivLikes.

Mis resultados: (CPU i7-4790 @ 3.60ghz, GPU Nvidia GTX 960 4GB)
DivGO
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4039)

PixTudio
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4035)

BennuGD
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4037)

Fénix
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4033)

Este es el proyecto por si queréis importarlo al PixTudio Project Manager. Para poder ejecutar el proyecto en BennuGD y Fénix hace falta la última actualización.
https://www.dropbox.com/s/pga8iei1byxhbw9/benchmark-divgo-1.0.pixproject?dl=0
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on December 17, 2017, 03:05:31 AM
por que no incluyes los fuentes que faltan? para los que no tenemos el "PixTudio Project Manager".

por otro lado, la version fenix, esta en 16bits, cierto? seria bueno probar todo en la misma cantidad de colores.
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on December 17, 2017, 03:37:09 AM
panreyes, me podrias pasar unos binarios linux de pixtudio? por privado si lo preferis... gracias!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 17, 2017, 10:05:26 AM
Genial panreyes! Mola ver los distintos resultados en capturas, veo que DivGO te da unos buenos números, no se puede comparar con PixTudio, pero no estan nada mal. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on December 17, 2017, 06:58:55 PM
SplinterGU, los paquetes de PixTudio Project Manager son archivos comprimidos .7z renombrados a .pixproject. Lo digo porque ahí tienes el prg y los gráficos.

Y efectivamente BennuGD está en 32bits, luego lo pruebo en 16 para hacer la comparación justa con Fénix.

Aquí tienes los binarios que tengo yo de PixTudio para Linux, pero no me preguntes hace cuánto fueron compilados o qué dependencias tienen porque no lo recuerdo ahora mismo.
https://www.dropbox.com/s/2s9isadpeb3z0am/pixtudio-linux32.zip?dl=0

AmakaSt, sí PixTudio da unos grandes resultados gracias a la ejecución nativa. De todas formas, DivGO tampoco se quedaría corto ejecutando la mayoría de juegos que podríamos hacer por aquí :) (y con la facilidad de ser ejecutados desde el navegador!).

Te querría preguntar también: si implementases este mismo test directamente en JavaScript, ¿supondría mucha diferencia de rendimiento?
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on December 17, 2017, 10:54:32 PM
gracias!
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on December 17, 2017, 11:13:12 PM
 aca van mis resultados...

caramba, es increible la diferencia que hace una buena placa de video... (aunque tu cpu es mejor tambien)

i7-3630QM

BennuGD

(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4041)

PixTudio (Linux)

(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4043)

BennuGD 2

(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4045)
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on December 17, 2017, 11:17:13 PM
mmm... no entiendo por que no aparecen en pixtudio ni en bennugd el ultimo texto... sin embargo deja de crear procesos y demas...
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on December 18, 2017, 12:00:35 AM
Quote from: SplinterGU on December 17, 2017, 11:17:13 PM
mmm... no entiendo por que no aparecen en pixtudio ni en bennugd el ultimo texto... sin embargo deja de crear procesos y demas...
El texto tarda 20 segundos en salir. Creo que eso fue un cambio mío que no hacía falta xD

De todas formas, aquí mi resultado con BennuGD 16bits
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4047)
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on December 18, 2017, 12:38:57 AM
gracias...
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 26, 2018, 02:38:15 PM
hola amaka,
alguna novedad proxima?¿?cercana.....
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 28, 2018, 07:05:57 PM
Hola oskarg,

Cercana no, todavía me queda bastante para tener la versión WebGL de DivGO. Se tiene que tocar/cambiar casi todo, por ahora funcionan algunas cosas, como el dibujado de procesos (sin regiones, ni colisiones, ni puntos de control), los textos (write, write_int) y las primitivas gráficas. :)

Hay mucho trabajo que hacer aún y muy poco tiempo libre para dedicarle.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 28, 2018, 08:06:01 PM
Quote from: panreyes on December 17, 2017, 06:58:55 PM
Te querría preguntar también: si implementases este mismo test directamente en JavaScript, ¿supondría mucha diferencia de rendimiento?

Hola panreyes,

Me había saltado esta parte de la conversación, perdona. Aquí te paso un enlace: http://pixijs.io/examples/#/basics/basic.js

Cópiale este código que sería parecido al del benchmark:

var app = new PIXI.Application(800, 600, {backgroundColor : 0x1099bb});
document.body.appendChild(app.view);

var process = [];
for (var i = 0; i < 16000; i++){
    var grafico = (Math.random() * (9 - 1) + 1) | 0;
         
    process[i] = PIXI.Sprite.fromImage('https://www.divgo.net/graficos/00'+ grafico +'.png')
    process[i].anchor.set(0.5);
    process[i].x = Math.floor(Math.random() * (820 + 20 + 1) - 20);
    process[i].y = Math.floor(Math.random() * (620 + 20 + 1) - 20);
    process[i].alpha = (Math.random() * (100 - 50 + 1) + 50) * 0.01;
    process[i].rotation += Math.floor(Math.random() * 360);
 
    var size = (Math.random() * (120 - 70 + 1) + 70) * 0.01;
    process[i].scale.set(size, size);
 
    app.stage.addChild(process[i]);
}

var basicText = new PIXI.Text('Probando Texto');
basicText.anchor.set(0.5);
basicText.x = 400;
basicText.y = 30;
app.stage.addChild(basicText);

var fpsText = new PIXI.Text(60);
fpsText.anchor.set(0.5);
fpsText.x = 760;
fpsText.y = 30;
app.stage.addChild(fpsText);

app.ticker.add(function(delta) {
    fpsText.text = app.ticker.FPS | 0;
 
    for (var i = 0; i < 16000; i++){
        process[i].rotation += 0.1 * delta;
        process[i].y += 5; if (process[i].y > 620) process[i].y = -20;
    }
});


Como veras con PixiJS directamente parece que funciona más rápido, pero en ese código no se ordena en cada frame por su posición z, que eso lo hago con DivGO, recorrer un bucle de miles de sprites y cambiar el orden de dibujado, eso ralentiza bastante. Y también que a cada frame recorre las instrucciones de los procesos hasta el siguiente frame, eso suma más ralentización.  :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 16, 2018, 02:19:47 PM
Nueva versión 1.16.0 de Div GO ya disponible online, las novedades:



funciones:
  - atob(), base64_encode(), base64_decode(), is_int();

variables locales:
  - blur, grayscale, sepia, saturate, invert, tone, brightness;

bugs y mejoras:
  - [FIX] corrección en el compilador para descargar proyectos empaquetados
  - [CHANGE] cambios en el funcionamiento fps para mejorar la optimización del bucle principal
  - [CHANGE] renombrado de las funciones isfinite() por is_finite() y isnan() por is_nan()



Ejemplo de las nuevas variables locales: https://www.divgo.net/c-d0f6267a (https://www.divgo.net/c-d0f6267a)
Ejemplo de uso de las funciones base64_encode() y base64_decode(): https://www.divgo.net/c-d0718aa2 (https://www.divgo.net/c-d0718aa2)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 17, 2018, 06:11:38 PM
Muchas gracias por una nueva versión de este genial programa para hacer juegos de forma sencilla.
Por cierto ,una duda tonta,cuando ejecuto los juegos que vienen en la página game developed...se vuelve a compilar el juego  con la nueva versión actualizada ?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 17, 2018, 06:15:16 PM
Otra cuestion en los ejemplos ,por ejemplo de pacoman etc da errores.................
54 s_come_fantasma=load_pcm("pacoman\comefant.pcm",0); -- VARIABLE NOT DEFINED!
55 s_come_fruta=load_pcm("pacoman\comefrut.pcm",0); -- VARIABLE NOT DEFINED!
56 s_come_punto=load_pcm("pacoman\comecoco.pcm",0); -- VARIABLE NOT DEFINED!
57 s_come_puntogr=load_pcm("pacoman\comegcoc.pcm",0); -- VARIABLE NOT DEFINED!
58 s_empieza=load_pcm("pacoman\comienzo.pcm",0); -- VARIABLE NOT DEFINED!
59 s_muerte=load_pcm("pacoman\muerto.pcm",0); -- VARIABLE NOT DEFINED!
60 s_inicio=load_pcm("pacoman\tambor2.pcm",1); -- VARIABLE NOT DEFINED!
63 load("dat\pacoman\pacoman.dat",&puntuacion_max); -- VARIABLE NOT DEFINED!
68 load_pal("pacoman\pacoman.fpg"); -- VARIABLE NOT DEFINED!
69 load_fpg("pacoman\pacoman.fpg"); -- NOT FOUND
70 load_fnt("pacoman\pacoman.fnt"); -- VARIABLE NOT DEFINED!
203 save("dat\pacoman\pacoman.dat",&puntuacion_max,1); -- VARIABLE NOT DEFINED!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 17, 2018, 09:05:12 PM
Hola Oskarg,

Prueba el Pacoman que se incluye en los ejemplos de Div GO, esta adaptado.

Las funciones load_pcm(); load_wav(); o load_fnt() no son soportadas en Div GO, para no crear 20 funciones para la carga de recursos, uno por extensión, lo unifique todo en:
- load_sound(); //para formatos de audio wav, pcm, mp3, ogg, etc.
- load_song(); //para formatos de s3m, mod, xm
- load_video(); //para avi, mp4, mov, etc.
- load_font(); //para fuentes ttf, otf, fnt, etc.
- load_image(); //para imagenes png, jpg, bmp, map, etc.
- load_fpg(); //para fpgs compatibles div2, fenix, bennugd

Así queda más limpio y mejor. Tampoco hay soporte a paletas por ser de 32bits por lo que load_pal() no tiene sentido de ser.
Prueba en usar Pacoman, Dr. Malvado o Steroid que se incluye en los ejemplos de Div GO.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 18, 2018, 02:29:06 PM
Hola de nuevo, no sé si es adecuado hablar ahora de incluir nuevas funciones y que se pudiera publicar los juegos de cada usuario como hace pico8 ,incluir un roadmap  .... para saber si va seguir evolucionando y dando apoyo a este proyecto etc..
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on September 19, 2018, 07:28:27 PM
Hola AmakaSt,he pasado por tu pagina y no esta en descarga,lo podrias poner para ir probandolo,a ver si esta nueva version me va mas rapido porque las otras versiones me van lento.

Si no fuera porque me va lento,ya lo estaria usando,otra cosa es que el editor que trae lo tengo que poner a una resolucion 1024x764 y se me ve muy pequeño en mi monitor y es algo molesto("me refiero a las letras").

No habria alguna forma de usarlo en un editor de codigo externo,para poder poner la letras al tamaño que yo quiera,otra pregunta,se puede exportar los juegos a otro formato que no sea html5,perdon por el desconocimiento,no he usado casi nada tu engine.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 23, 2018, 10:48:38 AM
Disculpad la tardanza en responder y en publicar los descargables, he estado muy liado estos días.

Aun así... Ya está disponible para descargar la versión 1.16.0 de Div GO: http://www.amakasoft.com/herramientas/div-go.html

hokuto40 sobre la resolución del entorno, via web se puede reducir al tamaño de una pantalla movil, en la versión de escritorio, en la versión actual, he puesto de resolución minima 900x720, espero que te valga. :)

oskarg mi idea era crear también una web y un área de usuario que al mismo tiempo se pudiera registrar tu "compañía/equipo" y asociarlo a tu cuenta, y poder publicar tus juegos sin tener que pasar por mí. Actualmente si quieres que publique algo que tengas desarrollado con Div GO me mandas un privado por el foro o por Facebook / Twitter y te lo público en el apartado de juegos desarrollados. Eso sí, juegos desarrollados y empaquetados con Div GO, no juegos que yo tenga que adaptar a Div GO que no tengo apenas tiempo.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on September 23, 2018, 02:52:42 PM
Ok,voy a descargarmelo y pruebo a ver que tal.

Otra preguntita,la documentacion y la lista de funciones,cuando le doy para mirarlas me manda a la pagina web,hay alguna posibilidad para que la pongas en descarga,lo digo para mayor comodidad y tambien porque puede que dentro de poco deje de tener internet y ya ves el problema para acceder a la documentacion.

Esta semana no puedo probarlo porque estoy muy liado pero a partir del dia 1 me pongo con ello.Gracias ;)
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on September 23, 2018, 06:43:11 PM
Vale,te dije que lo probaria dentro de una semana pero como hoy tenia tiempo lo he probado y te comento.

La resolucion me sigue dando problemas,yo tengo mi monitor en 800x600,en esa resolucion se ve las letras bien de tu editor pero poniendolas al maximo de tamaño,el problema es que con esa resolucion se come un trozo de la interfaz y no se ven algunas cosas.

Entonces no me queda mas remedio que ponerlo en 1024x768 y con esa resolucion se ve la letra pequeña,entonces deberias ponerle para que se pueda aumentar mas el tamaño de las letras del editor.

Tambien estan los temas del editor,los tres que trae estan bien pero las letras se ven con colores muy brillantes y a la larga molesta a la vista,entonces te recomiendo que los pongas con colores un poco mas apagados o que le metas un tema como el de obsidian del notepad++,este es el que uso y es perfecto para la vista.

Luego tenemos la documentacion,esto ya te lo he dicho antes,metesela al paquete de descarga para poder tener la documentacion offline,metele todos los idiomas.

Por ultimo y lo mas importante esta la velocidad de ejecucion,cuando compilo y pruebo en ejecutar desde la interfaz me va lento y ya no te digo el ejemplo 3d,me pasa lo mismo cuando creo un paquete de zip y se ejecuta desde el navegador,el 3d me va mas lento.

Sin embargo cuando ejecuto en ejecutar en proyector hay cambia la cosa y me va bastante fluido y con eso si que puedo trabajar,supongo que esa opcion trabaja con direct3d,entonces sugiero que le metas a divgo el poder crear un ejecutable de los proyectos en direct3d o como lo hace el modo proyector.

Con esto si que puedo crear juegos y que me vayan fluidos,si no,no voy a poder trabajar con divgo.Hasta pronto :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 23, 2018, 09:06:13 PM
Hola hokuto40,

La documentación se puede descargar desde el propio navegador con la opción de Guardar como... o sino imprimiéndolo en papel o en pdf. Hay opciones infinitas, no lo incluyo en una carpeta porque esta la información está en BBDD para que sea más fácil a la hora de añadir y manipular la información en la documentación, y de mostrar los resultados.

La resolución mínima de la versión desktop la puedes cambiar desde el archivo settings.json que se encuentra en el directorio del ejecutable:

"minimum_size": [900, 720],

Por ejemplo cambiala por esta:

"minimum_size": [640, 480],

Ahora deberías verlo bien a una resolución de 800x600.

La carpeta tema incluye actualmente 3 temas también a modo de ejemplo para que luego cada usuario puede añadir más temas creando los suyos propios, y si lo comparten con la comunidad yo los podría acabar incluyendo en el paquete oficial de Div GO.

Sobre la velocidad en la ejecución desde el editor siempre es más lento porque está activo el modo debug, para poder analizar los procesos y poder obtener información de los mismos, aparte de que está también en ejecución el editor de texto. Desde el proyector y en la versión que obtienes en el empaquetador el modo debug esta desactivado, por lo que debería irte siempre algo más rápido.

No hay direct3d, Div GO está programado con Javascript con las APIS de Canvas2d de Html5, salvo el 3d que usa una capa WebGL (equivalente al OpenGL). Div GO es un framework web puro, si ejecutas tu proyecto pulsando el index.html directamente se te abrirá en el navegador que tengas por defecto y podrás encontrar problemas y lentitud. Esto sucede porque no ejecutas tu proyecto desde un servidor http, lo estas ejecutado como si fuera un ejecutable de PC, de esta forma los datos se direccionan a file:/// en vez de http:// y cada navegador actúa de forma diferente, incluso analizando constantemente el script que se está ejecutando (eso equivale a lentitud).

Si quieres tener un servidor local, es tan fácil como instalarte Wamp o Xampp, hay más información sobre esto en el readme.txt que se incluye en los descargables.

Espero haber respondido a todas tus dudas.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 24, 2018, 03:06:07 PM
Hola amaka un par de cuestiones...
1.¿tienes intencion de ir actualizando este programa aunque sea poco a poco ?¿?

2.Me gustaria poder sugerir nuevas caracteristicas,pero como expresas que estás full de trabajo no sé si darlas.

3.Este punto es sobre el motor de divgo.Te explico:
Desde siempre me ha extrañado que el juego de plataformas me fuera tan lento en el ordenador  he anulado con // las procesos enemigo()...plataforma() y control() dentro del bucle principal del BEGIN END del juego.
Con esto se carga el fondo,sale el personaje y un enemigo dando bote a velocidad optima.
Lo que pasa es cuando doy al cursor  se RALENTIZA EL JUEGO ,entones he ido al processo paredes y si elimino los  map_get_pixel va fluido.Resumiendo...esta funcion es una de las causas que vaya tan lento.No se podría optimizarla?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 26, 2018, 11:24:42 PM
Hola oskarg,

1. Sí, pensé que con la última versión eso se daba por hecho.

2. Puedes sugerir todas las características que quieras, estoy abierto a sugerencias. Todas las que me van reportando las voy revisando, si lo puedo implementar lo implemento y si no, pues no. :)

3. Esto es algo que me había revisado unas cuantas veces y me lo he vuelto a revisar esta vez, pasa con el juego plataformas, en Dr. Malvado la función map_get_pixel() funciona de forma más fluida, creo que no se debe al map_get_pixel(), sino al bucle que llama x veces a la condición con varios map_get_pixel(), no es optimo. Aun así mirare de hacer cambios a ver si consigo optimizar algo más por mi parte.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on September 30, 2018, 12:17:19 PM
Hola AmakaSt,ya he probado lo que me comentastes y no funciona.

He probado distintos tipos de resolucion y se sigue comiendo un trozo del editor,tambien he instalado el xampp y sigue siendo lento,es cierto que gana en velocidad pero es muy poco.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 07, 2018, 09:02:43 PM
Hola estoy intentado pasar un codigo realizo en div2 a divgo,pero no consigo cargar ni un grafico,adjunto prg porque no veo donde está el error y me mata algo tan simple,XD

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program Game1;
global
    Sound1;
    File1=0;
    Font1=0;
   
begin
set_title("Game1");
set_mode(320, 240);
set_fps(30, 0);
    Carga_Recursos();
    Pinta_Puntuacion();

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end


//___________________________________________________________________________________________-
//____________________________________________________________________________________________

Process Pinta_Puntuacion()
BEGIN
file=File1;//Si no pongo esto,carga el fpg 0 y carga el grafico...y funciona,pero quiero cargar mi fpg que se visualiza como fpg:1
graph=14;
x=320/2;
y=240/2;

loop
frame;
end

END

//___________________________________________________________________________________________-
//____________________________________________________________________________________________


Process Carga_Recursos()
BEGIN
  File1=load_fpg("graficos/Bombardero001");//Cargo los mapas
  Font1 = load_font("fuentes/Bombardero001/gorda2.fnt");
  Sound1=load_sound("sonidos/Bombardero001/Explosion1.wav",0);
END


//___________________________________________________________________________________________-
//____________________________________________________________________________________________




Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 08, 2018, 08:49:10 PM
Hola oskarg,

El código lo veo bien, puede pasar que la ruta fpg no tenga el archivo fpg.dat con el listado de imágenes. En caso de ser un fpg, debes indicar el nombre de archivo.fpg.

En los ejemplos se ven como están las carpetas fpg. Para crear los archivos fpg.dat, se puede crear con el notepad, si editas y creas fpgs desde el entorno cuando empaquetes te devolverá la carpeta con el fpg.dat ya generado.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 08, 2018, 08:58:45 PM
Quote from: hokuto40 on September 30, 2018, 12:17:19 PM
Hola AmakaSt,ya he probado lo que me comentastes y no funciona.

He probado distintos tipos de resolucion y se sigue comiendo un trozo del editor,tambien he instalado el xampp y sigue siendo lento,es cierto que gana en velocidad pero es muy poco.

Hola hokuto40,

No se que te puede estar fallando, sobre la velocidad también es algo raro, tanto el proyector como el empaquetador usan el mismo código y la misma lib sin debug. Usando Xampp tendrías que obtener el mismo resultado.  ???

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 09, 2018, 04:35:11 AM
Hola amaka
Lo tengo como expresas y veo como se visualiza en tu editor  fpg cargado...curiosidades...si pongo un mapa de fondo en el primer proceso ,una vez cargado las imágenes lo realiza,pero si en los demás procesos aunque ponga file=file1 lo ignora .otra es que si creo un listado de PNG datos sin tener  el primer gráfico 001.png no carga las imágenes ..tengo una carpeta con sus 001.png y dat como trae los ejemplos.....
Podría añadir imágenes al fpg0 pero esa no es la solución adecuada
Sobre el rendimiento he encontrado algo curioso.si ejecuto el ejemplo plataformas en Desktop va mega lento,pero cuando lo empaquetas y lo ejecutas me va como una bala , también en xamp directamente va rápido incluso demasiado XD.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 09, 2018, 04:48:33 AM
Cuando venga del trabajo trasteo con el a ver si encuentro una solución o me dices algo,te puedo hacer capturas de pantalla etc..
Otra cuestión tengo un par de Juegos cuando estuviera solventado el problema te los paso y me gustaría que los incluyeras como tutoriales de ejemplos, pues son faciles  pero ilustrativos.
Vi el efecto 3d de las letras está curioso aunque el suelo tiembla ...otra cuestión es que programar en JavaScript es un infierno personalmente,pero con divgo la cosa cambia
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 09, 2018, 05:16:25 PM
Hola Amaka ya he solventado el problema de los graficos....xd
POR QUE NO FUNCIONA ESTE SIMPLE programa,pretendo simplemente crear un nuevo mapa y pegarlo...si los graficos estan en disco funcionan ,si creo el mapa nuevo ,crea el mapa pero la funcion map_put no va... ejemplo

PROGRAM example_map_xput;//version con new_map....
PRIVATE
    x_destination;
    y_destination;
    file1;
    angle1;
    size1;
    flags1;
    mapa1;

BEGIN
set_mode(m320x200);
    file1=load_fpg("graficos/help");
    graph=1;
    x=160;
    y=100;
    mapa1=new_map(40,40,20,20,rgb(255,255,255));//creo un mapa de 40x40 de color blanco....
    file=file1;
    LOOP
        x_destination=rand(0, 319);
        y_destination=rand(0, 199);
        angle1=rand(-pi, pi);
        size1=rand(10, 200);
        flags1=rand(0, 7);

        map_xput(file1, 1, mapa1, x_destination, y_destination, angle1, size1, flags1);//NO LO PEGA SI CREO UN MAPA con new ....POR QUÉ?¿??¿?....

        angle+=2000;
        FRAME;
    END
END

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 09, 2018, 11:23:59 PM
Quote from: oskarg on October 09, 2018, 05:16:25 PM
Hola Amaka ya he solventado el problema de los graficos....xd
POR QUE NO FUNCIONA ESTE SIMPLE programa,pretendo simplemente crear un nuevo mapa y pegarlo...si los graficos estan en disco funcionan ,si creo el mapa nuevo ,crea el mapa pero la funcion map_put no va... ejemplo

PROGRAM example_map_xput;//version con new_map....
PRIVATE
    x_destination;
    y_destination;
    file1;
    angle1;
    size1;
    flags1;
    mapa1;

BEGIN
   set_mode(m320x200);
    file1=load_fpg("graficos/help");
    graph=1;
    x=160;
    y=100;
    mapa1=new_map(40,40,20,20,rgb(255,255,255));//creo un mapa de 40x40 de color blanco....
    file=file1;
    LOOP
        x_destination=rand(0, 319);
        y_destination=rand(0, 199);
        angle1=rand(-pi, pi);
        size1=rand(10, 200);
        flags1=rand(0, 7);

        map_xput(file1, 1, mapa1, x_destination, y_destination, angle1, size1, flags1);//NO LO PEGA SI CREO UN MAPA con new ....POR QUÉ?¿??¿?....

        angle+=2000;
        FRAME;
    END
END


Hola oskarg,

El problema está en el new_map(), fue de las primeras funciones que hice en Div GO para los procesos y con el tiempo no la he vuelto a revisar, actualmente new_map() va asociada con la variable local graph. Por lo que no funciona con map_xput(), me lo apunto para futuras revisiones. :)

QuoteVi el efecto 3d de las letras está curioso aunque el suelo tiembla ...otra cuestión es que programar en JavaScript es un infierno personalmente,pero con divgo la cosa cambia
Sí, dependiendo del navegador y la tarjeta gráfica puede variar la forma de visualizarse. Las 3d van con la librería ThreeJS (WebGL), mirare de volver a actualizar la lib en la próxima versión.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 09, 2018, 11:30:43 PM
QuoteSobre el rendimiento he encontrado algo curioso.si ejecuto el ejemplo plataformas en Desktop va mega lento,pero cuando lo empaquetas y lo ejecutas me va como una bala , también en xamp directamente va rápido incluso demasiado XD.
La versión desktop es también un navegador, creo que la versión 57 de Chrome, por lo que la velocidad puede variar dependiendo del navegador con el que lo compares. Supongo que con versiones más modernas de Chrome y Firefox tendrás mejor rendimiento de javascript. También en ordenadores más modernos apenas se nota la diferencia.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 10, 2018, 06:51:48 PM
Hola Amaka ...podrías incluir esta mejora...
1.Es para hacer manipulaciones rápidas ,como hace bennugd java etc...poder guardar en un array el contenido de  un mapa y de esa manera modificiarlo sin tener que hacer un get o put_ pixel ,pues son funciones lentas..No sé si se puede o mejoraría algo ....
2.Sobre el editor:
El editor gráfico ha quedado muy básico,se tendría que  poder ampliar más alla de los 900.
-.Me gusta que el lenguaje sea estricto,por ejemplo si no pongo ; compila sin error.
-si pongo put_screen(parametro1,parametro2) aunque sean falsos compila sin error.
-Si no hay graficos en el fpg pero los asignas al graph compila sin error.
Lo que me resulta bastante incomodo es que si cargo un prg y luego cargo otro,el primero desaparece ....No debería,pues me sirve tener dos abiertos para copiar y pegar de un lado a otro haciendo pruebas...
-El en futuro estaría genial que se pudiera desglosar el prg en diferentes prgs o paquetes como hace Java.


Ahh!! me he dado cuenta que has arreglado el bug que también tenia div3 de los ids,se agradece....

-Una sugerencia aunque esta es muy ,muy personal,si no la incluyes no pasa nada ,con los trackers ya me apaño para hacer música,pero  soy de aquellos que utilizaban basic con amstrad xd..y Me encantaba la funcion sound canal,nota,duracion,volumen ....sencillota pero resultona y de esa manera no tendría que utilizar los famosos wav.
Un saludo.



Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 14, 2018, 06:55:52 AM
Hola Amaka hoy es mi dia libre  ;D sobre la velocidad de divgo tenías razón ,con una versión más actual o bien utilizando google chrome se palia este problema.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 14, 2018, 07:36:45 PM
Quote from: oskarg on October 14, 2018, 06:55:52 AM
Hola Amaka hoy es mi dia libre sobre la velocidad de divgo tenías razón ,con una versión más actual o bien utilizando google chrome se palia este problema.

Hola oskarg,

Perdona por no haberte respondido antes para poderte ayudar. Cada navegador tiene su propio motor Javascript, aquí una breve explicación:
https://moodle2016-17.ua.es/moodle/pluginfile.php/62199/mod_resource/content/6/navegadores/page_08.htm (https://moodle2016-17.ua.es/moodle/pluginfile.php/62199/mod_resource/content/6/navegadores/page_08.htm)

Sobre los puntos:

1. Ya existen en Div GO unas funciones para poder manipular un graph, busca en la lista de funciones la graphic_explorer() y graphic_builder(), incluye ejemplo.
2. Lo del ';' me lo mirare, debería ser estricto con eso, lo de comprobar si lo que tiene los parámetros es válido para una función como lo del put_screen() haría bastante más lento el funcionamiento del compilador y eso me pareció innecesario, mejor que cada uno controle las obviedades y que el compilador sea más optimo en velocidad. Por ejemplo, si le pasas un string por parámetro a una función que necesita un entero... obviamente fallará. Lo mismo que para graph, no te dará error, si no existe no lo dibujara y el programa continuara sin que el javascript detenga la ejecución de la página. Lo de las pestañas en un futuro quiero mejorarlo y que no tenga un límite tan pequeño como pasa actualmente.

Lo del bug de ids de div3 no tengo ni idea, de hecho Div GO no utiliza código de Div original, por lo que ha habido suerte que no haya topado con el mismo problema. :)

3. Crear una función sound() como el comando sound de Locomotive BASIC lo he contemplado en más de una ocasión, actualmente tengo algo a medias utilizando la API de Web Audio, pero era incompatible en algunos navegadores y lo dejé para más adelante. Yo también empecé a programar con el Basic de un Amstrad CPC464. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 15, 2018, 04:46:07 PM
Hola amaka....
No encuentro ninguna funcion donde pueda cargar un grafico y modificar su tamaño x o y  para luego distorsionarlo y alargarlo y luego pegarlo en otro mapa..
map_xput(file1, 1, 101, x_destination, y_destination, angle1, size1, flags1); este solo cambia de tamaño total deberia haber la posibilidad de cambiar el tamaño x o el tamaño y.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 15, 2018, 06:48:07 PM
Hola amaka
1.hay alguna manera una vez que hago un exit("adios",2) de elegir color de fondo?¿?
2.Existe alguna funcion similar al cls,borrado de pantalla por completo ?¿?
3.Estaria bien que la funcion write admitiera  grosor de letra tipo como esta bla
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 15, 2018, 10:41:39 PM
Quote from: oskarg on October 15, 2018, 04:46:07 PM
Hola amaka....
No encuentro ninguna funcion donde pueda cargar un grafico y modificar su tamaño x o y  para luego distorsionarlo y alargarlo y luego pegarlo en otro mapa..
map_xput(file1, 1, 101, x_destination, y_destination, angle1, size1, flags1); este solo cambia de tamaño total deberia haber la posibilidad de cambiar el tamaño x o el tamaño y.

Hola oskarg,
No he pensado en ello, existe alguna función similar en BennuGD o Gemix? Para ponerlo en común con otro Div-like y hacerlo un poco más compatible.

Quote from: oskarg on October 15, 2018, 06:48:07 PM
Hola amaka
1.hay alguna manera una vez que hago un exit("adios",2) de elegir color de fondo?¿?
2.Existe alguna funcion similar al cls,borrado de pantalla por completo ?¿?
3.Estaria bien que la funcion write admitiera  grosor de letra tipo como esta bla

1. No actualmente.
2. No pero se puede crear un proceso o función cls() que incluya: delete_text(all_text); delete_draw(all_drawing); clear_screen(); y limpie la pantalla.
3. La función write() y write_int(), admite cambio de estilo, color y tamaño: https://www.divgo.net/c-bbad5274

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 17, 2018, 09:40:00 PM
Hola amaka ya he probado lo que me expresas,gracias por la informacion del grosor de las letras va de fábula.(Se puede elegir suavizado de letras AA de la fuente 0 ?¿? )

El domingo te paso el ejemplo que ya lo tengo prácticamente acabado para que lo incluyas como tutorial para que la gente se anime a programar en este gran engine.
Otra cuestion:
1.Amulet lua incluye una funcion de crear sonidos y una forma curiosa de crear sprites desde cero...
2.A poco a poco ire aportando cosas ,tengo bastantes hobbies,pero también me resulta muy divertido programar juegos...
3.Estaría bien que echaras un vistazo phaser3 como inspiración y aportar nuevas caracteristicas,pero manteniendo la filosofia de divgo,sencillez a la hora de programar que es su punto fuerte.
Ahh y gracias por hacer divgo,lo he pasado pipa recreando un juego de basic cuando jugaba siendo un crio con la pantalla de fosforo verde  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on October 18, 2018, 09:13:11 AM
Me interesa ese tutorial oskarg,subelo aqui para poder descargarlo. ;)

Mas que mirar otros framework para introducir cosas nuevas es mejor mirar engines como gamemaker y contruct 2 que son mas sencillos y estan teniendo  mucho exito.

Lo que si le vendria bien a divgo es poder usar el editor de codigo en otra ventana,ahora es muy incomodo programar todo en la misma ventana.Si te fijas en gamemaker,este a la hora de programar en el editor aparece en una ventana aparte y puedes maximizar la ventana y aumentar las letras y asi es muy comodo.

Lo otro que se puede mejorar es lo de siempre,intentar que sea mas rapido la ejecucion de los juegos.

Ahora te voy hacer dos preguntas amakast,tiene divgo una funcion como SIGNAL_SET_BEHAVIOUR(INT process_id, INT signal, INT behaviour),esta funcion la utilizo en gemix para que al proceso principal no le afecta signal(all_process,s_kill) y asi poder crear el sistema de niveles a mi manera.

La otra pregunta es sobre la documentacion,yo copie la pagina de la documentacion como me dijistes,pero los ejemplos que trae cada funcion no se copian,entonces creo que debes de poner en descarga la documentacion como lo tiene love2d,en este hay una version descargable de la documentcion en html.Saludos
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 19, 2018, 10:06:44 PM
Hola Amaka..los fading funcionan correctamente ?¿?
1.pensaba que si ponia fade(200,0,0,5) la pantalla se teñía completamente roja......Como funcionan en divgo  para lograrlo¿?


PROGRAM example_fade;
PRIVATE
file1;
   
BEGIN
set_mode(m320x200);
    file1=load_fpg("graficos/help");
   
    put_screen(file1, 1);
    text_size=50;
    write (0, 0, 0, 0, "Press [SPACE] to see the fade() effects.");
    LOOP
        IF (NOT fading AND key(_space))

            fade( 200 , 0, 0, 5);///NO SE PONE LA PANTALLA COMPLETAMENTE EN ROJO POR QUé?¿?¿?

        END
        FRAME;
    END
END



Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 20, 2018, 11:47:16 PM
QuoteHola Amaka..los fading funcionan correctamente ?¿?
1.pensaba que si ponia fade(200,0,0,5) la pantalla se teñía completamente roja......Como funcionan en divgo  para lograrlo¿?

Hola oskarg,

Tenía un error en el funcionamiento, ahora ya lo tengo revisado y corregido para la próxima versión. ;)
Quote
Ahora te voy hacer dos preguntas amakast,tiene divgo una funcion como SIGNAL_SET_BEHAVIOUR(INT process_id, INT signal, INT behaviour),esta funcion la utilizo en gemix para que al proceso principal no le afecta signal(all_process,s_kill) y asi poder crear el sistema de niveles a mi manera.

La otra pregunta es sobre la documentacion,yo copie la pagina de la documentacion como me dijistes,pero los ejemplos que trae cada funcion no se copian,entonces creo que debes de poner en descarga la documentacion como lo tiene love2d,en este hay una version descargable de la documentcion en html.Saludos
Hola hokuto40,

Actualmente no dispone de una función SIGNAL_SET_BEHAVIOUR()... en DivGO con signal(all_process, s_kill), el funcionamiento es muy similar al let_me_alone(), se eliminan todos los procesos excepto el que ejecuta la función, por lo que puedes congelar todos los procesos, dormirlos y eliminarlos sin que afecte al proceso principal.

Los ejemplos del listado de funciones están en BBDD es como cuando pulsas guardar y obtener id, guardas el código en la "nube" para después recuperarlo o compartirlo a partir de la id devuelta, pulsa a cada ejemplo y guarda el prg devuelto.

QuoteHola amaka ya he probado lo que me expresas,gracias por la informacion del grosor de las letras va de fábula.(Se puede elegir suavizado de letras AA de la fuente 0 ?¿? )

El domingo te paso el ejemplo que ya lo tengo prácticamente acabado para que lo incluyas como tutorial para que la gente se anime a programar en este gran engine.
Otra cuestion:
1.Amulet lua incluye una funcion de crear sonidos y una forma curiosa de crear sprites desde cero...
2.A poco a poco ire aportando cosas ,tengo bastantes hobbies,pero también me resulta muy divertido programar juegos...
3.Estaría bien que echaras un vistazo phaser3 como inspiración y aportar nuevas caracteristicas,pero manteniendo la filosofia de divgo,sencillez a la hora de programar que es su punto fuerte.

Puedes pasarme los ejemplos y juegos que hagas y yo los iré subiendo en la página o en el paquete oficial de descarga, como tú prefieras.
Sobre phaser lo estuve mirando hace un tiempo y sé que utiliza, o utilizaba, pixijs como motor 2d webgl, el que he estado probando para pasar el código de DivGO de canvas2d a webgl, pero hay muchísimo trabajo para hacer la modificación, y cambiar casi todo lo que hay actualmente... Por lo que lo he apartado a un lado.
Quote
Ahh y gracias por hacer divgo,lo he pasado pipa recreando un juego de basic cuando jugaba siendo un crio con la pantalla de fosforo verde  (http://foro.bennugd.org/Smileys/default/grin.gif)

De nada. :)
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on October 21, 2018, 09:41:44 AM
Hola amakast,son demasiados ejemplos,me llevaria una tarde entera para descargarmelos,no seria mejor incluir todos los ejemplos en el paquete de descarga.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 21, 2018, 05:01:35 PM
Hola amaka me he quedado astascado en una tonteria...en div antiguo cuando hacia a=7/3  daba a=2...ahora en divgo me da decimales,como hago divisiones enteras?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 21, 2018, 11:11:24 PM
Quote from: hokuto40 on October 21, 2018, 09:41:44 AM
Hola amakast,son demasiados ejemplos,me llevaria una tarde entera para descargarmelos,no seria mejor incluir todos los ejemplos en el paquete de descarga.
Actualmente en la carpeta de ejemplos hay unos 40 ejemplos, incluyendo juegos y tutoriales. Incluirlos todos haría la descarga más pesada y difícil de mantener a la hora de actualizar los ejemplos si hay algún cambio. Y también me llevaría una tarde entera descargármelos.
Quote from: oskarg on October 21, 2018, 05:01:35 PM
Hola amaka me he quedado astascado en una tonteria...en div antiguo cuando hacia a=7/3  daba a=2...ahora en divgo me da decimales,como hago divisiones enteras?¿?
Existen las funciones round() y ceil() para redondear a entero los decimales, cada función redondea de forma distinta, por ejemplo ceil() redondea hacia arriba.

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 22, 2018, 07:14:53 AM
Sí...ya me di cuenta . .... Tengo un bug rarísimo...me explico está noche con calma lo intento aislarlo y pasarte el trozo de código que no va bien ...eso espero pq he hecho un simple ejemplo y funciona bien.
Tengo una tabla global donde en un proceso en ciertas posiciones la relleno con valores , pues bien si hago write_int(0,10,10,offset tabla( 8 )) escribe bien el contenido ....pero si hago una variable a=8 y escribo write_(0,10,10,offset tabla (a)) da siempre 0 ...los paréntesis son claudatos escribo por móvil...es un error o bug muy raro y de momento no logro identificar que es lo que falla
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 22, 2018, 10:58:05 AM
Ya lo he encontrado a medias....!!! joe.en div2 si pongo el write_int dentro del loop se actualiza las variables,en divgo simplemente no se visualiza se ve un pegote.Entonces como lo hago amaka?¿?

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
   tabla[10];
begin
set_title("My Program Name");
    set_icon("graficos/009.png");

// screen canvas options
set_mode(480, 320);
screen_color(cc_silver);

set_fps(60, 0);

// call a process
Muestra();

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process Muestra();
private
valor;
    i;
BEGIN
    write_int(0,10,10,0,offset valor);
  //  write_int(0,10,40,0,offset tabla[valor]);//Siempre sale 0 COMO LO HAGO PARA QUE VEA Los valores de la tabla?¿?¿?¿?¿?¿?
    for(i=0;i<=9;i++)
          tabla[i]=i;
    end

    loop
      frame;
      valor=valor+1;
      if (valor>=9) valor=0;end
     // write_int(0,10,40,0,offset tabla[valor]);//asi en div2 imprime el valor de la tabla....pero en divgo no funciona..COMO LO HAGO ENTONCES!!!!!!!!!!!!!!!!!
   
    end
   
END   

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 22, 2018, 08:34:11 PM
Quote from: oskarg on October 22, 2018, 10:58:05 AM
Ya lo he encontrado a medias....!!! joe.en div2 si pongo el write_int dentro del loop se actualiza las variables,en divgo simplemente no se visualiza se ve un pegote.Entonces como lo hago amaka?¿?

/*
   Program's Name:   <My Program Name>
   Author's Name:   <My Name>
   Company's Name:   <My Company or Group>
*/

program MyProgramName;
global
   // declared global variables
   tabla[10];
begin
   set_title("My Program Name");
    set_icon("graficos/009.png");

   // screen canvas options
   set_mode(480, 320);
   screen_color(cc_silver);

   set_fps(60, 0);

   // call a process
   Muestra();
   
   loop     
      if (key(_esc)) exit("Text Exit", 1); end

      frame;
   end
end

process Muestra();
private
   valor;
    i;
BEGIN
    write_int(0,10,10,0,offset valor);
  //  write_int(0,10,40,0,offset tabla[valor]);//Siempre sale 0 COMO LO HAGO PARA QUE VEA Los valores de la tabla?¿?¿?¿?¿?¿?
    for(i=0;i<=9;i++)
          tabla[i]=i;
    end
   
    loop
      frame;
      valor=valor+1;
      if (valor>=9) valor=0;end
     // write_int(0,10,40,0,offset tabla[valor]);//asi en div2 imprime el valor de la tabla....pero en divgo no funciona..COMO LO HAGO ENTONCES!!!!!!!!!!!!!!!!!
   
    end
   
END   


Div hace una cosa un tanto rara, en teoría al meter un write_int dentro de un bucle sin hacer un delete_text() generara objetos de texto hasta que el programa pete o llegue al límite de objetos (en caso de Div creo que son 256) pero he probado y veo que si la llamada está en una posición x, y fija, sin variación, parece ser que se va limpiando solo.  ???

En Div GO el pegote que ves son los números pintados uno encima del otro, hasta verse un pegote. Eso se puede controlar con la id de write_int() y delete_text(id).

Aquí el mismo código con una pequeña variación, funcionan igual en Div y en Div GO, en Div GO no hay límite de creación de write_int hasta ralentizas tu navegador hasta llegar a bloquearlo:

/*
   Program's Name:   <My Program Name>
   Author's Name:   <My Name>
   Company's Name:   <My Company or Group>
*/

program MyProgramName;
global
   // declared global variables
   tabla[10];
begin
   set_title("My Program Name");
    set_icon("graficos/009.png");

   // screen canvas options
   set_mode(480, 320);
   screen_color(cc_silver);

   set_fps(60, 0);

   // call a process
   Muestra();
   
   loop     
      if (key(_esc)) exit("Text Exit", 1); end

      frame;
   end
end

process Muestra();
private
   valor;
   i;
BEGIN
    text_size = 50;
    write_int(0,10,10,0,offset valor);
  //  write_int(0,10,40,0,offset tabla[valor]);//Siempre sale 0 COMO LO HAGO PARA QUE VEA Los valores de la tabla?¿?¿?¿?¿?¿?
    for(i=0;i<=9;i++)
          tabla[i]=i;
    end
   
   i = 10;
   
    loop
      frame;
      valor=valor+1;
      if (valor>=9) valor=0; i+=10;end
      write_int(0, i,40 + valor * 10,0,offset tabla[valor]);//asi en div2 imprime el valor de la tabla....pero en divgo no funciona..COMO LO HAGO ENTONCES!!!!!!!!!!!!!!!!!
   
    end
END   

He localizado con tu código también un fallo en Div GO con la creación de write_int() en el primer frame si vas haciendo delete_text() en el bucle, se muestra el texto cortado por la mitad, hasta el siguiente frame, eso para la próxima versión ya estará solucionado. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 22, 2018, 08:43:28 PM
Aquí te dejo como debería ser el código, forma más correcta y controlando el id del write:
/*
   Program's Name:   <My Program Name>
   Author's Name:   <My Name>
   Company's Name:   <My Company or Group>
*/

program MyProgramName;
global
   // declared global variables
   tabla[10];
begin
   set_title("My Program Name");
    set_icon("graficos/009.png");

   // screen canvas options
   set_mode(480, 320);
   screen_color(cc_silver);

   set_fps(60, 0);

   // call a process
   Muestra();
   
   loop     
      if (key(_esc)) exit("Text Exit", 1); end

      frame;
   end
end

process Muestra();
private
   valor;
   i;
   id_txt;
   
BEGIN
    text_size = 50;
    write_int(0,10,10,0,offset valor);
    write_int(0,10,30,0,offset tabla[valor]);//En Div esto tambien muestra 0
   
    for(i=0;i<10;i++)
          tabla[i]=i;
    end
     
    loop
      frame;
      delete_text(id_txt); //controla los ids de los textos para una mejor optimizacion
      valor++;
      if (valor > 9) valor=0;end
      id_txt = write_int(0, 20,30,0,offset tabla[valor]);//asi es la forma correcta
   
    end
END   

En enlace por si lo prefieres recuperar desde tu navegador directamente: https://www.divgo.net/c-68fce0b7

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 22, 2018, 09:01:19 PM
Muchas gracias por el ejemplo....se agradece ,lo habia pensado eso de borrar ,pero no habia caido como hacerlo...deberias ponerlo como tutorial o documentancion base en divgo,pues es bastante ilustrativo.

1.Ya he solventado el problema que tenia ...me falta hacer un par de cosas y termino el tutorial,verás con // comentarios donde no funciona ciertas funciones y las omito ,pues se queda bloqueado divgo cuando lo pongo.....espero que las solventes...

2.Esto es algo para hacerlo más cómodo el editor de texto,aunque me gusta bastante.....cuando pulsara  f10 compilara directamente y también estaria bien que en un futuro se pudiera ocultar el contenido de los procesos y solo saliera su nombre Process ejemplo() Process Nave() etc...

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 28, 2018, 02:33:36 PM
Hola amaka...una duda...hay alguna manera de cambiar el color de un grafico determinado?¿?,como ahora trabaja en 32 bits,no se si puedo simular rotacion de paletas de algún modo.
He visto el ejemplo de un fpg que cambia por completo todos los graficos,pero busco poder cambiar el color determinado de un solo grafico.
Otra cuestion,todavia no entiendo que parametro determina que las letras salgan con suavizado....
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 28, 2018, 06:08:12 PM
Me autorespondo sobre las letras suavizadas ,si utilizas divgo con xamp o bien online ,hace el suavizado ,con desktop las hace dentadas por qué?¿?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 28, 2018, 11:42:28 PM
Quote from: oskarg on October 28, 2018, 02:33:36 PM
Hola amaka...una duda...hay alguna manera de cambiar el color de un grafico determinado?¿?,como ahora trabaja en 32 bits,no se si puedo simular rotacion de paletas de algún modo.
He visto el ejemplo de un fpg que cambia por completo todos los graficos,pero busco poder cambiar el color determinado de un solo grafico.
Otra cuestion,todavia no entiendo que parametro determina que las letras salgan con suavizado....
Hola oskarg,

Actualmente existe un par de funciones para cambiar el color de un graph:
Función color_in_map(): https://www.divgo.net/c-5be06b05 (https://www.divgo.net/c-5be06b05)
Función paint_in_map(): https://www.divgo.net/c-6508c303 (https://www.divgo.net/c-6508c303)

Para la próxima versión habrá una variable local con la que podrás rotar la paleta del gráfico de un proceso.
Quote from: oskarg on October 28, 2018, 06:08:12 PM
Me autorespondo sobre las letras suavizadas ,si utilizas divgo con xamp o bien online ,hace el suavizado ,con desktop las hace dentadas por qué?¿?¿?

La versión desktop es una versión de Chrome que puede que no renderice bien el suavizado de las letras, aunque ahora lo estaba probando y a mi si me está funcionando bien.  ???

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 29, 2018, 04:36:51 PM
Hola amaka...tengo un fondo de un color y quiero ir pegando trozos de un grafico que me haga borrado,transparencias...como lo hago siendo en 32 bits?¿? pues si el grafico es rgb(255,255,255) me pinta los rectangulos en blanco y yo quiero hacer huecos transparentes.....Juego tipico de lemmings...
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 30, 2018, 02:04:45 PM
Quote from: oskarg on October 29, 2018, 04:36:51 PM
Hola amaka...tengo un fondo de un color y quiero ir pegando trozos de un grafico que me haga borrado,transparencias...como lo hago siendo en 32 bits?¿? pues si el grafico es rgb(255,255,255) me pinta los rectangulos en blanco y yo quiero hacer huecos transparentes.....Juego tipico de lemmings...
Hola oskarg,

Aquí te pongo un ejemplo de un editor gráfico usando las funciones graphic_explorer() y graphic_builder():
https://www.divgo.net/c-dabf3f1c

Cambiando el alpha de 255 a 0 borra la imagen.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on October 30, 2018, 03:37:44 PM
cierto, pero en vez de eso usa rgba(tal,tal,tal,0)
no te olvides de la A
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 30, 2018, 04:19:49 PM
El mismo ejemplo pero con el alpha a 0 y el pixel que borra / dibuja más grande:
https://www.divgo.net/c-065c7c04
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 30, 2018, 09:34:08 PM
Gracias por las respuestas...
¿?no podria ser mas sencillo hacerlo en un futuro.....?¿?...me explico hacer  un map_put_pixel(file1,grafico,x,y,color); donde color=rgba(0,0,0,0);Lo encuentro demasiado enrevesado como está planteado.

PROGRAM example_map_put_pixel_borrado;
PRIVATE
    file1;
    coord_x;
    coord_y;
    colour;

BEGIN
set_mode(m320x200);
    file1=load_fpg("graficos/help");
    graph=1;
    x=160;
    y=100;
    size=180;
    file=file1;
    colour=rgb(0,0,0,0);//simplemente indicamos que queremos borrar...
    LOOP
        coord_x=rand(0, 320);
        coord_y=rand(0, 240);
       
        map_put_pixel(file1, 1, coord_x, coord_y, colour);//y asi se borraria,pero claro,no esta de este modo implementado y no funciona.

        FRAME;
    END
END




O crear una nueva serie de funciones donde fueran map_clear_pixel ....etc...
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 30, 2018, 11:10:00 PM
Vale, ahora te he entendido, pensé que querías manipular un gráfico por pixel obteniendo su contenido en un array.

Tengo una mala noticia... ya existía eso desde hace muchas versiones atrás, son las funciones: clear_map(), clear_map_put() y clear_map_xput() y los cambios son acumulativos.

Ejemplo de clear_map_put(): https://www.divgo.net/c-2dff40ae
Ejemplo de clear_map_xput(): https://www.divgo.net/c-f11c03b6

Esta también en el listado de funciones.

Con las funciones graphic_builder() y graphic_explorer() puedes hacer infinidad de cosas, un editor grafico por ejemplo, pero es más jodido... está claro.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 30, 2018, 11:13:13 PM
 ;D
Muchas gracias...mañana con tranquilad lo miro,he de madrugrar para ir a trabajar :P
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 02, 2018, 09:41:35 PM
Perfecto!! ya lo he solventado...otra cuestion...
Entiendo por que se corta el valor de la variable cuando lo imprimo al cambiar el tamaño,lo que no entiendo porqué no variando su centrado ...ya sea del 0 al 8 como expresa tu documentancion...no logre solventar el problema

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program Ejemplo_Texto;
global
// declared global variables
    Valor = 108;

    puntos_id;

begin
set_title("My Program Name");
 
set_mode(320,240);
screen_color(rgb(255,0,0));
Puntos(240, 160);

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process Puntos(x, y);

BEGIN
text_color=rgb(255,255,255);
text_style = 2;
text_size = 40;
loop
delete_text(puntos_id);
text_size=text_size+1;
if (text_size>60) text_size=40;end
puntos_id = write_int(0, 78,64,0,offset Valor);//da igual que valor tenga el centrado que siempre se corta el valor....

frame;
end
END




//me imagino que si pusiera centrado en el centro no deberia cortarse las letras o su contenido.
Deberia poder indicar centrado en el medio y que pudiera escalarlo sin que se truncara..
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 03, 2018, 12:43:59 AM
Te respondo con una cita propia.
Quote from: AmakaSt on October 22, 2018, 08:34:11 PMHe localizado con tu código también un fallo en Div GO con la creación de write_int() en el primer frame si vas haciendo delete_text() en el bucle, se muestra el texto cortado por la mitad, hasta el siguiente frame, eso para la próxima versión ya estará solucionado. :)

Cambia write_int() por write() y verás que eso no pasa, sacaré una versión de correcciones en breve que corrige eso mismo y un bug importante con unload_fpg() desde hace bastante tiempo, que hace que no limpie ningún fpg cargado previamente.  :o

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 03, 2018, 09:28:34 AM
Gracias,me toca ser paciente para ver los Bugs corregidos: writeint , Fade,newmap ,unloafpg  y el ;
Sugerencia: el mapclear estaría bien que se pudiera determinar el grado de opacidad de borrado.
Ahh !!! Y espero esa nueva función que permita cambio de color de un gráfico determinado quiero hacer un efecto de explosión en toda la pantalla como hacían ciertos juegos de atary
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 03, 2018, 09:17:50 PM
Exactamente, habrá correcciones de: write_int(), fade(), new_map(), unload_fpg().

Sobre lo de la nueva variable que comente, ya existe en la versión actual, se me fue de la cabeza  ::) , la local tone: https://www.divgo.net/c-d0f6267a

Aquí otro ejemplo: https://www.divgo.net/c-da067b6c

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 04, 2018, 09:46:45 AM
Hola Amaka,
Lo de la variable tone es todo un acierto y muy potente la idea,pero es muy limitado como esta planteado.......Me varia toda la tonalidad del fpg y no quiero tal cosa....solo quiero variar  en ciertos momentos,ciertos  map_put. cuando se cumple cierta condicion.Pongo un codigo recortado para que se comprenda mejor...

for(i=0;i<anchura_t;i++)
for(j=0;j<altura_t;j++)
                                  if (j==altura_t-1)//Si he dibujado el ultimo grafico que quiero.
                                    tone=tone+5;//Entonces cambiamos la tonalidad...pero lo que hace es cambiar toda la tonalidad de los graficos...y no quiero tal cosa...deberia poder dibujar cada         columna con una tonalidad diferente...
                                 end
                             map_put(File1,300,colore,i*16+16*6,220-j*8);//.
                             frame;//queremos que se vea como se dibuja .

end                       

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 04, 2018, 12:58:27 PM
Hola oskarg,

No varía toda la tonalidad del fpg, solo la del graph que se está utilizando en el proceso, lo mismo que hace las variables alpha, size, angle..., aquí otro ejemplo con distintos procesos usando distinta tonalidad:
https://www.divgo.net/c-68deba7d

Por cierto, el valor de tone va de 1 a 100, si pones -50 equivale a 50 y si pones 150 lo mismo.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 04, 2018, 06:00:01 PM
Hola amaka...gracias por el ejemplo pero te explico...
Este ejemplo que me has mostrado crea tantos procesos como tonalidades diferentes  quiera mostrar...
Lo que yo sugiero es crear un solo proceso donde defina un grafico dentro de este proceso  lo pego en el fondo con map_put,una vez realizado cambio su tonalidad ,lo vuelvo a pegar y asi sucesivamente.....No se si me he explicado bien...
Ahora me has dado una idea, lo pruebo y te digo,creo un proceso,lo pego en el fondo,lo elimino,creo otro proceso cambio su tonalidad,lo pego en el fondo y lo vuelvo a eliminar a ver...ya te digo algo si funciona la idea  XD

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 04, 2018, 07:17:38 PM
Nueva versión 1.16.4 de Div GO ya disponible online, las novedades:



bugs y mejoras:
   - [FIX] renderizado de write_int() cortaba las letras en el primer frame
   - [FIX] unload_fpg() no eliminaba los fpgs cargados previamente
   - [CHANGE] cambios en el funcionamiento de fade(), new_map(), texture_in_map() y write_in_map()
   - [CHANGE] optimización de código y funcionamiento de map_get_pixel()




Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 04, 2018, 08:18:05 PM
Gracias por la actualizacion...te pongo ejemplo simplificado de lo que he pensando pero tampoco funciona,quiero pegar cada proceso con diferente color en el mismo grafico,pero siempre obtengo el mismo color

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
    points = 0;
    hi_score = 0;

begin
set_title("My Program Name");
    set_icon("graficos/009.png");

// screen canvas options
set_mode(480, 320);
screen_color(cc_silver);

set_fps(60, 0);

text_size = 50;
    text_color = cc_black;
write(0, 240, 10, 4, "[SPACE] para quitar tonalidad y [ENTER] para volver a ponerla");

    my_process(120, 100, 0);
my_process(200, 100, 10);
    my_process(280, 100, 20);
    my_process(360, 100, 30);
    my_process(120, 220, 50);
my_process(200, 220, 60);
    my_process(280, 220, 70);
my_process(360, 220, 80);
    fondo2();
   
loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process my_process(x, y, tonalidad);
private
//declared private variables
    energy = 100;
    life = 3;
   
begin
graph = 9;
size  = 80;
z   = 10;
    tone  = tonalidad;
    Fondo(graph);

loop
     break;
     frame;
end
end
Process Fondo(grafico)
private
ax;
ay;


BEGIN
ax=rand(0,320);
ay=rand(0,240);

map_put(0,32,grafico,ax,ay);

END


Process Fondo2 ()
BEGIN
graph=32;//AQUI DEBERIA MOSTRARME EL FONDO CON DIFERENTES TONES....pero no funciona como yo quiero....
x=320/2;
y=240/2;
loop
frame;
end

END



Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on November 06, 2018, 11:34:28 AM
Hola Amakast,he propuesto un debate para ver si se puede solucionar el abandono de los lenguajes div y ver si se puede volver a unir toda la comunidad.

Te apetece participar,tambien para oscarg.Otra cosa,se agradece la nueva actualizacion de divgo. ;)

Te pongo el enlace a la propuesta.
http://forum.bennugd.org/index.php/topic,4735.0.html
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 11, 2018, 09:59:23 AM
Hola Amaka,
terminé el tutorial,me gustaria que me ayudaras en algo...
cuando quieras te paso por privado el ejemplo,los graficos no son definitivos,pues quiero que los rayos del sol tenga movimiento y hacerlo mas dinamico,cambiar las explosiones para hacerlas mas espectaculares,cambiar la jugabilidad ,aunque como ejemplo basico de sobra cumple...

Falta crear una tabla de records y efectos de puntuacion,pero por problemas de write lo descarte....hasta que no pueda bajar la nueva actualizacion de divgo....

Aun no lo publiques o te lo paso mas adelante ,porque quiero añadir  mejoras que has incorporado ,new_map,fade..etc o si quieres,lo publicas y vas mostrando las diferentes betas que vaya elaborando,como lo veas mas conveniente....pero como tutorial,pues lo encuentro practico y quiero ir aportando de menos a mas juegos mas elaborados,para que la gente nueva se anime y no se agobie o se asuste al principio.

Otra cuestion,veras que los edificios se construyen poco a poco y yo quiero que cada edificio tenga diferente color,te puse un ejemplo ,pero no funciona con tone,podria crear procesos y simplificar el concepto,pero pretendo mostrar una forma de programar a base de tablas..please dime como hacer tal cosa,sino me veo obligado a cargar graficos iguales innecesariamente de diferente color para luego pegarlos en un fondo.

Otra cuestion,no dejes de lado el proyecto ,aunque haya un revuelo ahora muy grande sobre que futuro tiene los derivados de div,yo encuentro este engine genial y me permite  aportar juegos antiguos con aire moderno ,mejorando la jugabilidad y la grafica sin tener que pelearme por aprender un lenguaje que desconozco,pues se  basicamente c o pascal y no me considero mal programador por no querer aprender otro lenguaje,simplemente es cuestion de comodidad  ;D

Solo ,bajo mi punto de vista  ,requiere que a poco a poco,sin prisa,pero sin pausa,siga este engine progresando y dandole apoyo,mimos,pues es un enfoque diferente al resto y lo encuentro el mas innovador aunque tenga ciertas flaquezas y puede vivir de sobras entre otros engines.

Debes intentar que la gente se anime ha realizar juegos,permitiendo colgar sus juegos facilmente  y cambiar por completo la pagina de divgo ,hacerla mas visual,tipo phaser,se que requiere mucho esfuerzo,pero bajo mi punto de vista merece la pena.

Otra cuestion diferente..creastes si no mal recuerdo una pagina de juegos emulados,una critica constructiva,La encuentro perfecta,pero personalmente me van lentos los juegos y son escasos y por ello si juego online a retros...lo hago en otra pagina.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on November 11, 2018, 03:21:52 PM
Hola.

Oskarg!,no hay ningun revuelo,lo que pasa es que yo queria crear un debate para dar algunas ideas para mejorar los lenguajes y cada cual a empezado a decir lo que le ha parecido y no he podido dar mis ideas,pero no hay ningun problema, y yo tampoco quiero que amakast deje de actualizar divgo.

Pasemos a otro tema mas interesante,me gustaria darte una idea amakast aunque ya lo he intentado con dos personas pero no les convence,a ver si a ti te parece util.

La forma en la que tiene el lenguaje div de crear los niveles me parece un poco liosa y esto desmotiva a cualquiera que empieza,por eso creo que se deberia de crear algun proceso especial o introducir una clase especial que se encargue de manejar los niveles.

Seria como un contenedor donde meter los objetos/procesos y cuando pases de nivel esta clase/proceso se encargaria de eliminar los objetos automaticamente para que el siguiente nivel estuviera limpio para cargar los recursos del siguiente nivel.

Tambien estaria bien un par de funciones para manejar esto,una funcion para hacer lo de pasar de nivel y otra para reiniciar el nivel,algo como lo que tiene gamemaker y unity.

Creo que esto motivaria a gente a que usara divgo y les resultara mas facil empezar,por que creo que lo de los niveles puede desmotivar a cualquiera que empiece sin saber mucho de programacion.

Dime si seria posible introducir esto o es algo muy complicado o no te parece necesario.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 11, 2018, 04:21:06 PM
Te respondo yo hokuto,es sencillo hacer eso programando...pero mas sencillo seria hacer lo siguiente.Tener un conjunto de herramientas completas que se integraran en el engine,tipo pico8 que es ridiculo su engine y su escasa resolucion grafica y para hacer esto se requiere de mucho tiempo de dedicacion.
Con lo cual si quieres agilizar las cosas,tendras que crear tu propio editor de tiles y editor grafico,te lo expreso por experiencia,pues lo mas dificil no es programar ,sino hacer los sprites ,tiles y fondos....

.....No entiendo donde tienes el problema de pasar el nivel o crear un nuevo escenario,cuando publique el juego mega simple quizas veas que sencillo es cambiar de nivel utilizando la logica,sin apenas utilizar funciones ya predefenidas.

....Vas a ver que son mega simples mis tutoriales ,pero con una buena base,se avanza,a mas que vi,un ejemplo tuyo,muy bueno,no entiendo como no asimilas ese concepto si comprendistes las explicaciones que te dio sobre OOP que es un tema avanzando...pues yo no entendí ni papa XD.

ahh y cuando puedas comprate un ordenador actual,no hace falta que te gastes un dineral,yo tenia un pentium 4,ahora tengo un amd a10 ,es modesto pero increiblemente divgo ya no noto retraso alguno y eso que me costo 150 euros XD ,con lo cual,uno mas potente debe ir de perlas ...pruebalo  y si no te convence lo cambias y te compras otro de segunda mano,merece la pena,segun que propositos tengas con el.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on November 11, 2018, 05:21:47 PM
Hola oskarg.

Reconozco que estoy un poco liado con esto de los niveles,pero no es por pasar de nivel es mas bien por hacer que se pueda reiniciar el nivel en el que ha muerto mi personaje.

El problema es que lo que me recomendo cictec para aprender a crear una estructura de niveles era fijarme como estaba hecho la del doctor malvado y sinceramente te digo que estaba muy mal hecha en ese juego.

Acabe muy liado pero al final la introduci en mis tres juegos pero no me gusta esa forma de hacerlo y yo he creado mi propia forma de hacer esto pero necesito esto.

Signal_set_behaviour() y signal(all_process,s_kill),esto es para que al proceso principal no le afecte la destrucion de procesos y pueda hacerlo a mi manera.

Pero si te soy sincero,mi problema real es la falta de ejemplos sencillos para aprender por mi cuenta,ya lo he dicho muchas veces pero no hay manera de que se me entienda y si yo tuviera ejemplos sencillos para aprender la mayoria de las cosas no estaria tan liado como estoy hoy,ese es el verdadero problema y el porque estoy preguntando cien veces lo mismo.

Estoy deseando ver esos ejemplos tuyos oskarg  ;D,y tampoco vendrian mal algunos que explicasen como crear un editor de tiles y un editor grafico porque no he visto ningun ejemplo de esas cosas en ninguna parte.

Decirte que la programacion orientado a objetos es muy sencilla,yo te recomiendo python para aprender este concepto y puedes utilizar pilasengine para practicar,si es que no sabes usar la programacion orientada a objetos pero si sabes no he dicho nada.

Por cierto eso de 150 euros por un ordenador,dime donde esta eso que mañana mismo voy a comprarlo,pero reconozco ser muy cabezota y como no me gusta tirar el dinero pues soy capaz de llevarme con mi ordenador 100 años mientras no se estropee ,pero tendre que comprar algo este año que entra.

Resumiendo,mi unico problema es la falta de ejemplos sencillos que me expliquen la mayoria de cosas que necesito para aprender por mi cuenta.

Una ultima cosa,ya te digo que la gente que utiliza engines como gamemaker y contruct no van a aceptar nunca esa forma de hacer los niveles,aunque si les explica copmo hacerlo de una forma sencilla pues tal vez se les convenza.Chao :D
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 11, 2018, 07:36:36 PM
Hola oskarg,

Para empezar y antes de nada te digo que no voy a dejar Div GO, sigo desarrollando cosas, por lo pronto correcciones y cambios internos de código. Ahora estoy preparando una nueva versión, la v1.16.7, que si tengo tiempo la pongo online ya. Esta versión arregla funciones como color_in_map(), paint_in_map(), blur_in_map()... Les pasaba lo mismo que a new_map(), con esto se arregla el problema que tienes para cambiar de color los gráficos incrustados en map_put() y map_xput(). Estos cambios también hacen que mejore un poco el rendimiento usando estas funciones. :)

Te incluiré un ejemplo haciendo uso de map_put() con color_in_map().  8)

Una vez tengas esta versión disponible, podrás mejorar ese tutorial y hablamos por privado para echarte una mano, sobre la tabla de records mi juego Gamma Z tiene 2 tablas de records conectadas a una BBDD y las Apis de Facebook (para ver la puntuación de los amigos).

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 11, 2018, 07:55:47 PM
QuotePasemos a otro tema mas interesante,me gustaria darte una idea amakast aunque ya lo he intentado con dos personas pero no les convence,a ver si a ti te parece util.

La forma en la que tiene el lenguaje div de crear los niveles me parece un poco liosa y esto desmotiva a cualquiera que empieza,por eso creo que se deberia de crear algun proceso especial o introducir una clase especial que se encargue de manejar los niveles.

Seria como un contenedor donde meter los objetos/procesos y cuando pases de nivel esta clase/proceso se encargaria de eliminar los objetos automaticamente para que el siguiente nivel estuviera limpio para cargar los recursos del siguiente nivel.

Tambien estaria bien un par de funciones para manejar esto,una funcion para hacer lo de pasar de nivel y otra para reiniciar el nivel,algo como lo que tiene gamemaker y unity.

Creo que esto motivaria a gente a que usara divgo y les resultara mas facil empezar,por que creo que lo de los niveles puede desmotivar a cualquiera que empiece sin saber mucho de programacion.

Dime si seria posible introducir esto o es algo muy complicado o no te parece necesario.
Hola hokuto40,

Lo que comentas se puede hacer de muchas formas y tan fácil como desees, con un proceso o función e incluir todo lo que necesites para limpiar el nivel, luego haces la llamada con carga a otro nivel.

Para limpiar puedes hacer algo parecido a esto, por ejemplo:process clear_stage(stage)
begin
   let_me_alone();  //se eliminan todos los procesos dejando este vivo
   delete_text(all_text);
   stop_scroll(0);
   //aqui puedes añadir tambien los recursos que ya no quieras utilizar en el siguiente nivel: audio, imagenes, fuentes

   if (vida > 0)
      stage ++;
      next_stage(stage);  //haces la carga del siguiente nivel con todos los recursos
   else
      game_over(); //muestra pantalla de game over
   end
end

Quote
El problema es que lo que me recomendo cictec para aprender a crear una estructura de niveles era fijarme como estaba hecho la del doctor malvado y sinceramente te digo que estaba muy mal hecha en ese juego.

Acabe muy liado pero al final la introduci en mis tres juegos pero no me gusta esa forma de hacerlo y yo he creado mi propia forma de hacer esto pero necesito esto.
Hombre decir que el código de Dr. Malvado está mal... es una forma de hacerlo, te puede gustar más o menos, en un lenguaje de programación como DIV se puede hacer de mil maneras. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on November 11, 2018, 09:16:52 PM
Hola amakast y gracias por el ejemplo. ;)

Pero no entiendo muy bien que es lo que hace la funcion next_stage(),porque no se que es lo que lleva adentro y no se si es un proceso o una funcion,pero no quiero volver a cometer los mismos errores y empezar a hacer pesado ahora contigo.

Esperare el ejemplo de oskarg para estudiarlo,pero el problema que tengo no es el de pasar de nivel es el de reiniciar el nivel,porque no se como indicarle al programa en que nivel esta mi personaje para que cuando lo maten reinicie desde ese mismo nivel.

Lo mejor seria hacer un ejemplo que explique unicamente como pasar de un nivel a otro y el poder reiniciar cuando muera el personaje en el nivel en el que se encuentra.
Es basicamente lo que llevo diciendo desde hace mucho tiempo en otro foro,lo mejor es hacer ejemplos cortos y individuales que expliquen solo una cosa,porque si metes muchas cosas en el ejemplo una persona principiante se acaba perdiendo con tanto codigo y pierde las ganas de seguir.

Lo del doctor malvado no me he explicado bien o no me has entendido,yo no he dicho que el codigo del doctor malvado este mal hecho,lo que queria decir es que el codigo de la estructura de niveles es demasiado complicado para que lo entienda una persona que nunca ha hecho eso.Saludos :)

Por cierto,he mirado en la pagina de descarga de divgo y pone que la version actual es la v1.16.0,puede que no hayas subido la nueva actualizacion o que no hayas puesto los numeros correctos.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 11, 2018, 09:38:39 PM
Genial.....ya lo tengo jugable,solo falta añadir cosas como una tabla de records,añadir fades,pero como es muy basico quizas lo descarto,hacer un par de efectos cuando se pasa de fase dando un  bonus y cambiar un poco la mecanica del original,pues la primera vez que lo hice,fue un calco en graficos y jugabilidad al original ,pero jugando ,jugando me di cuenta que era demasiado simplote y desfasado  y tampoco quiero provocar con mi primer tuto una carcajada eterna   ;D.
Otras cuestiones....

1.Cuando hago un let_me_alone ,pregunto desde mi desconocimiento....no deberia resetear todos los cambios que he realizado en los mapas de los procesos que he matado?¿?lo expreso porque no vuelve al grafico original con tal funcion ,desconozco si esto es correcto,pues me veo obligado hacer un clear_map_put de todo el mapa para dejarlo como lo habia cargado desde el inicio.

2.Me va ir de perlas esa nueva beta ....

3.Otra cuestion he visto tus juegos y el juego de los "peces" me  has dejado pasmado,los graficos los haces  vectoriales?¿?

4.Pues te iba a preguntar algo similar, como diablos puedo guardar informacion en un txt,en el disco duro y luego leerlos,porque no veo funciones para ello.

5.Estaria bien que el editor tuviera un save donde no me pregunte si quiero guardarlo....

6.Una sugerencia,cuando tengo mucho codigo,para compilarlo,debo ir hasta abajo de la ultima linea para encontrar el icono de compilar,Deberia estar siempre visible.Cuestion de comodidad ...vale rectifico,no se que hacia que no me salia el icono....


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 11, 2018, 11:04:29 PM
Nueva versión 1.16.7 de Div GO ya disponible online (para testeos, descargable no disponible aún), las novedades:



bugs y mejoras:
   - [DEL] eliminado elemento que se replicaba en cada gráfico cargado por si se le aplicaba un efecto
   - [CHANGE] cambios en funciones: color_in_map(), paint_in_map(), blur_in_map(), pixelated_in_map()
   - [CHANGE] cambiado el funcionamiento de screen_copy()




Ejemplo de map_put() con color_in_map(): https://www.divgo.net/c-b1710c19

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 11, 2018, 11:13:48 PM
Quote4.Pues te iba a preguntar algo similar, como diablos puedo guardar informacion en un txt,en el disco duro y luego leerlos,porque no veo funciones para ello.

5.Estaria bien que el editor tuviera un save donde no me pregunte si quiero guardarlo....

6.Una sugerencia,cuando tengo mucho codigo,para compilarlo,debo ir hasta abajo de la ultima linea para encontrar el icono de compilar,Deberia estar siempre visible.Cuestion de comodidad ...vale rectifico,no se que hacia que no me salia el icono....

4. Se puede enviar datos a php a traves de save_external_data() y recuperar con load_external_data(), con php puede guardar información en un txt y recuperarla sin problemas.

5. El código que programas se guarda automáticamente en tu navegador cada vez que compilas, lo mismo que con los cambios que hagas en imágenes desde el editor. Por seguridad, cada vez que hagas grandes cambios en tu código lo mejor es guardarlo en un prg.

6. Qué raro, no es necesario bajar todo el código para ver la opción de compilar, creo que no te he entendido...  ???

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 12, 2018, 09:52:37 PM
Ahora sí, al fin ya está disponible para descargar la versión 1.16.7 de Div GO: http://www.amakasoft.com/herramientas/div-go.html  (http://www.amakasoft.com/herramientas/div-go.html)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 12, 2018, 10:26:54 PM
Hola Amaka ,
mil gracias ya puedo hacer lo que pretendia,pero no entiendo como le asigno los colores a traves del rgb...es decir
tabla[1]=rgb(255,0,0),rgb(255,55,0); pero no funciona ..¿?¿?como se define de esta manera?¿?

Despues observo que esto tampoco funciona ....por que??¿?

// Div GO : Games Online > Example
// Php + Html5 + Canvas + Javascript
// by J. Manuel Habas

program example_color_in_map;
begin
set_mode(480, 320);
//screen_color(cc_gray);
    screen_color(#0040FF);//FUNCIONA
   

set_fps(60, 0);

arrow(60, 120,#FFFF00); //no funciona...
    arrow(100, 120,rgb(255,0,0)); //no funciona...
    arrow(140, 120,cc_green); //Funciona...
   
   end

process arrow(x, y, c);
begin
graph = color_in_map(0, 3, c);
size  = 50;
angle = 90000;
   
loop
if (key(_left)) angle += 2000; end
if (key(_right)) angle -= 2000; end

if (key(_up)) advance(2); end
if (key(_down)) advance(-1); end

frame;
end
end




Solo funciona cuando utilizo cc_grey...cc_blue ...pero yo quiero tener mas versatilidad ..poniendo rgb o su valor hexadecimal....creo que hay un bug.....
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 12, 2018, 11:31:06 PM
Hola oskarg,

Tanto paint_in_map(), color_in_map() y region_color() funcionan con constantes de color predefinido, en el listado de funciones se explica:

color_in_map(file, graph, variable de color);
    - variable de color: cc_red, cc_green, cc_blue, cc_yellow, ..., cc_gray, cc_white, cc_black

paint_in_map(file, graph, variable de color);
    - variable de color: cc_red, cc_green, cc_blue, cc_yellow, ..., cc_gray, cc_white, cc_black

region_color(región, variable de color);
    - región: número de región definida con define_region();
    - variable de color: cc_red, cc_green, cc_blue, cc_yellow, ..., cc_gray, cc_white, cc_black


Esto se debe a estas funciones se le define los colores con unos patrones, recorriendo cada pixel de la imagen y transformadolos, no es un blend donde cualquier tono es válido. Aún así tienes una buena cantidad de colores predefinidos:
cc_red, cc_green, cc_blue, cc_yellow, cc_cyan, cc_magenta, cc_orange, cc_lime, cc_violet, cc_brown, cc_pink, cc_purple, cc_aqua, cc_pistache, cc_turquoise, cc_maroon, cc_silver, cc_gray, cc_white, cc_black

Y colores especiales también compatibles:
rgb_to_bgr, rgb_to_grb, rgb_to_rbg, rgb_to_brg, rgb_to_gbr, rgb_to_invert, rgb_to_grayscale, rgb_to_bw, rgb_to_16c, rgb_to_128c, rgb_to_256c, rgb_to_gboy

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 13, 2018, 09:14:08 AM
Hola amaka....
Te comento de memoria,pues estoy fuera de casa....
1.La funcion tone ha dejado de funcionar,si puedes solventa el bug,pues resulta muy practica para crear procesos,enemigos ,con diferentes colores...
2.En el listado de funciones pone si no mal recuerdo hexadecimal y rgb,con lo cual ahi mi confunsion.........ya buscare donde esta tal informacion de los colores..pues a priori no lo vi.
3.Esta noche cuando llegue ...miro mas cosas y si veo algo que no me cuadra te comento.

Un saludo y gracias por la actualizacion.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 13, 2018, 10:49:37 PM
Hola Amaka ya tengo el tutorial realizado,cuando puedas me expresas como te lo envio.

Tengo dos versiones,una la de un calco a la de amstrad y otra mas moderna,te paso esta ultima...
Me gustaria que lo incluyeras en la carpeta de  tutoriales,pues pretendo hacer unos cuantos,es corto y creo que de eso se trata,que sea asequible y practico.No lo incluyas como juego ,pues ni de broma esta terminado,falta añadir musica,cambiar graficos,añadir efectos etc....etc...

ah!! sei  me olvidaba....un par de cuestiones el clear_map va de fabula aunque estaria bien que pudiera eligir el grado de opacidad ,alpha ,del borrado para hacer efectos y transiciones suaves.
1.Al final no he utilizado los cambios de color,pues con tone que ahora no va,lograba que los colores no se vieran tan apagados que con estas nuevas funciones.


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 14, 2018, 11:09:40 AM
Hola oskarg,

Te acabo de enviar un mensaje privado.
Ponme un ejemplo en donde no te esté funcionando la variable tone. Salvo que estés utilizando IE10 u 11, que ahí no va fijo.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 18, 2018, 09:56:48 AM
Hola amaka,
Ya he visto tu post,hago unos retoques y te expreso algo ...aunque he estado mirando las funciones de los string ,estaria bien que a poco a poco aquellas que no tenga ejemplo los incluyeras.....

te hago preguntas a tutiplen...

1.He bajado tu aplicacion de crear una aplicacion ejecutable,disculpa por mi ignorancia,pero bajo el paquete,lo copio en la carperta resource/app el juego.zip me expresa que sustituyendo el index.html sin borrar los archivos main  y packege..?¿? a que te refieres?¿?
...debo descomprimir el juego.zip y poner el index.html que incluye por el otro?¿?
...donde esta la casilla para crear el ejecutable..exe?¿?

2.Te muestro algunos errores que no detecta divgo y son la mar de divertidos:


  IF(SOUND_FIN==8 AND ) //NO DETECTA EL ERROR Y SE BLOQUEA AL COMPILARLO:
  write_int(0,10,10,0,offset (x/16));///ERROR....aunque lo entiendo pero deberia ser mas versatil....
  write_int(0,80,11,4,offset Puntos);,//SE QUEDA BLOQUEADO AL QUERER COMPILIAR POR PONER AL FINAL :, Y NO LO DETECTA!!!!
  ahora  soy incapaz de reproducirlo pero hay un error con los parentesis si pongo muchos parametros dentro de una condicion me dice variable no definida...cuando lo reproduzca te pongo   el   ejemplo
         


3.¿ Que version y navegador utilizas para ejecutar divgo?,disculpa por repetir la pregunta..te explico yo utilizo firefox v47..las demas versiones y las actuales que he bajado me dan bastantes problemas no me hace suavizado de letras o no se escucha el sonido y me va mucho mas lento.La primera vez que lo ejecuto en el navegador el juego va rapido,pero luego se va ralentizando cada vez que compilo y lo ejecuto...supongo que es normal..pero se nota y debo iniciar nueva sesion de windows....   
ES problema de mi tarjeta grafica?¿por mi sistema operativo?¿? tengo windows7..

4.Tengo una tabla de records,pero claro como no se como guardar los datos y leerlos desde una web... solo imprimo  valores de una tabla inventada y la puntuacion del consiguiente jugador que juega?¿? hay un ejemplo de como hacerlo?¿?....no pretendo que me hagas ese apartado,si me lo explicas yo lo programo encantado.No es problema de imprimir tablas..Pues tengo el fondo del ranking con sus numeritos....

5.Alguna forma sencilla o ejemplo de introducir por teclado las letras y que los guarde en una tabla() ?¿??.....

6.Como puedo simular que cada vez se oscurece la escena,fondo...lo haria con un simple fade,pero el fade afecta a todo,una pena.... y tengo que cargar otra imagen de fondo ya modificada con photoshop.....SI utilizo tone,pero pongo put_screen(file,grafiico) no modifica su tono....¿es lo mismo en rendimiento tener un fondo con put_screen que un grafico activo que actua de fondo?...
guau!!photoshop hacia siglos que no lo utilizaba y he tenido que utilizar una version antigua,pues la moderna no me enteraba de nada.       

7.Tengo dos bugs en mi programa.....a ver si los corrijo,pues se cuando se produce...mea culpa.

8.La siguiente beta quiero hacerlo aun mucho mas dinamico con scrolls,pero tengo un par de dudas que no se como afrontarlo te explico:
en el juego Dragon Spirit de la nes vas volando por encima de las montañas y se ve que hay un rio en continuo movimiento...este efecto como diablos se hace ?¿?me puedes explicar por encima como lo podria implementar?¿?

8.2..Tengo pensado en el futuro hacer scroll ya sea con este o con otro juego que monte.......que me recomiendas o que me dara mas velocidad......... el tamaño de la imagen de la escena seria 960x240....lo cargo directamente y lo hago ciclico o bien hago hago ciclico un mapa de (320+16)x240 y cada 16 pixeles que avanza le voy pegando tiras de 16*240....pues el juego base es de 320x240...

9.Te comente sobre el icono de save...pues bien como expresas hace un guardado automatico sin tocar nada a veces me ha pasado que me ha guardado el programa que estaba mal programado y he perdido el que compilaba bien,estaria bien que se pudiera omitir esta opcion y añadir la tecla save..
10.Otra cuestion le he puesto musica y efectos al final,pero he notado que poniendo la musiquita de fondo se ralentiza......tantos recursos consume?¿?alguna manera de evitarlo?¿?.

Gracias y disculpa por tantas cuestiones ..........
un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 19, 2018, 08:27:22 AM
Hola oskarg,

1. Sí se debe descomprimir y sustituir el index.html por el que se incluye en el .zip y todas las carpetas de tu proyecto (imágenes, sonidos, scripts) dentro de resources/app. Una vez hecho eso al pulsar sobre electron.exe se iniciara tu juego. Luego ya es cambiar el nombre del ejecutable y el icono.

2. Ok, para revisión. :)

3. Suelo actualizar a las últimas versiones tanto de Firefox, como de Chrome y Vivaldi. En caso de Firefox la v63. Lo del renderizado de letras es raro, parece ser cosa de la tarjeta gráfica, yo hago pruebas en Windows 7 y Windows 10 con esos 3 navegadores.

4. Hay un ejemplo en la carpeta de ejemplos que se llama ejemplo_external_data.prg que va acompañado de guardar_datos_bbdd.php, donde se muestra como envía y recoge datos con php. Luego desde php es hacer que guarde la información en un txt o base de datos sql.

5. Ejemplo input: https://www.divgo.net/c-4c831644 (https://www.divgo.net/c-4c831644)

6. La variable tone es como las variables alpha, size, flags, etc. No cambian el grafico al ponerlo en un put_screen(), con new_map() usando el color rgba() aplicando un alpha bajo debería de funcionarte. Para oscurecer una escena de un scroll, puedes cambiar el alpha de los scroll, por el momento. Más adelante quiero añadir más variables scroll, tengo que mirarlo bien pero tal vez se le podría aplicar una variable como tone.
Aquí te dejo un ejemplo: https://www.divgo.net/c-b4a8be6e (he visto que hay un bug en new_map() con el alpha, este ejemplo te será útil para la próxima versión)

El resto intentaré responderlos esta noche...
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 19, 2018, 03:14:37 PM
Hola ,
publico beta02 de mi juego, falta por implementar y acabar bastantes cosas.....se vera que hay un icono de una calavera,pues bien,habra mas iconos de este tipo que haran ciertas cosas,pero todavia no esta implementado...tampoco las tablas....etc.pero ya es bastante jugable,salvo un bug que tengo localizado.
Pasalo bien ahh y gracias amaka por poder programar mi juego de Amstrad que jugue en mi infancia,con la pantalla de fosforo verde XD:

Leer LEEME_ANTES .txt para saber que cosas faltan por hacer ...
pulsa z para disparar..esc para salir del juego.
AH!! ten buena punteria ,pues si fallas veras que pasa y para evitarlo acierta 3 veces al blanco!!!.

se ve olvidaba alguna manera de encriptar los graficos amaka?¿?lo expreso porque en el futuro si hago algo con nivel,no es cuestion de verlos tan facilmente.

http://www.mediafire.com/file/776by6x9xstjygc/MEGAbeta02.zip/file
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on November 19, 2018, 03:19:10 PM
una buena solución es hacerlo por partes el grafico de pantalla
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 19, 2018, 03:21:29 PM
Bueno habia pensado en el futuro hacer un ejemplo con tiles,pero aun asi,no es cuestion de que alguien vaya a la carpeta y lo vea directamente una solucion seria facil poder añadir una contraseña a la carpeta de graficos  y si no la introduces pues no se se visualiza,pero ni idea como se hace tal cosa o que el propio divgo encriptara los graficos....
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 19, 2018, 06:25:29 PM
Hola amaka,una sugerencia para depurar codigo y ver que pasa...el ANALIZE PROGRAM esta muy bien,pero ocupa toda la pantalla y no visualizo lo que esta pasando ,estaria mucho mejor que se viera la pantalla del juego y abajo el analize program..pues como está montado queda muy limitado.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 19, 2018, 10:13:19 PM
Hola, sigo con los puntos:

8. En Div GO los scrolls son transparentes y puede mostrarse otra región por detrás, puedes probar en incluir una animación para el fondo.

9. Me lo apunto como sugerencia. :)

10. Supongo que dependerá del tamaño o el número de músicas y sonidos que vayas a cargar. Cada nuevo tema que sonara en el juego, internamente es un elemento de audio que se genera y queda oculto en el navegador. El elemento canvas por sí solo no genera ningún sonido, es para gráficos 2d y WebGL, así que cada cosa que se añada al juego puede ralentizar un poco más. Yo no noto mucha ralentización, por ejemplo Dr. Malvado tiene bastantes sonidos y va bastante bien. También dependerá del navegador y del equipo en donde se esté ejecutando.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 19, 2018, 10:29:19 PM
Quote from: oskarg on November 19, 2018, 03:14:37 PM
Hola ,
publico beta02 de mi juego, falta por implementar y acabar bastantes cosas.....se vera que hay un icono de una calavera,pues bien,habra mas iconos de este tipo que haran ciertas cosas,pero todavia no esta implementado...tampoco las tablas....etc.pero ya es bastante jugable,salvo un bug que tengo localizado.
Pasalo bien ahh y gracias amaka por poder programar mi juego de Amstrad que jugue en mi infancia,con la pantalla de fosforo verde XD:

Leer LEEME_ANTES .txt para saber que cosas faltan por hacer ...
pulsa z para disparar..esc para salir del juego.
AH!! ten buena punteria ,pues si fallas veras que pasa y para evitarlo acierta 3 veces al blanco!!!.

se ve olvidaba alguna manera de encriptar los graficos amaka?¿?lo expreso porque en el futuro si hago algo con nivel,no es cuestion de verlos tan facilmente.

http://www.mediafire.com/file/776by6x9xstjygc/MEGAbeta02.zip/file (http://www.mediafire.com/file/776by6x9xstjygc/MEGAbeta02.zip/file)
Toma ya!! Está genial!! Muy chulo!! Yo este juego lo había programado cuando era un crio, lo tenia de código de ejemplo en un manual de Basic de mi CPC464! :D

He visto que has utilizado Electron, he puesto unos ejemplos con los que puedes cambiar el tamaño de la ventana del ejecutable y adaptarlas al juego, también puedes adaptar con set_mode() el tamaño del juego a las dimensiones de la ventana del navegador, con las variables: view_full_size_scale, view_full_aspect_ratio, view_full_amplitude

Quedaría así: set_mode(320, 240, view_full_size_scale);

Existe para electron varios modos de "encriptar", uno de ellos es incluir todo el contenido de tu juego en un archivo .asar (o sea, ya no solo los gráficos, sino todo el contenido):
https://electronjs.org/docs/tutorial/application-packaging

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 20, 2018, 01:35:45 PM
Hola amaka,
Una sugerencia,esto ya lo incluye otros lenguajes para no tener que hacer tropecientos writes .......aunque no se si es factible
implementarlo.

hacer \n o salto de linea en el mismo write(0,100,100,"primera linea"\n"Segunda linea...")....etc

O bien el write_in_map que se copiara realmente en un grafico que hemos definido ,ejemplo

graph=grafico elegido donde copio las letras...
x=del grafico donde lo situo.
y=del grafico donde lo situo
write_in_map(fichero,grafico elegido donde copio las letras,cordenadaxde la posicion de las letras,coordenaday de la posicion delas letras,tipo de centrado,"soy la primera linea");
write_in_map(fichero,grafico elegido donde copio las letras,cordenadaxde la posicion de las letras,coordenadayde la posicion de las letras+20,0,"Soy la segunda linea");
loop
x=rand(0,100);
y=rand(0,100);//coloco el grafico aleatoriamente;
frame;
end

Y de esta forma podria hacer muchos efectos,muy simples con las letras........
UN MOMENTO QUE HE VISTO UN EJEMPLO muy practico de write_in_map Y QUIZAS LO SOLVENTE ....luego te expreso....
VALe ya lo he solventando aunque mi sugerencia sigue en pie,pues solo de esta manera utilizaria un solo proceso con ese nuevo sistema de write_in_map que he puesto de ejemplo,no tropecientos cuantas lineas quisiera hacer..


ahh!!! me alegro que te hayas recordado de tu cpc,yo tenia el de 128k XD.pero los juegos eran los mismos .
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 20, 2018, 02:29:30 PM
Hola oskarg,

Aquí te dejo un pequeño ejemplo para poner un nombre por teclado en vez de por input(): https://www.divgo.net/c-684bfd76 (https://www.divgo.net/c-684bfd76)

Se puede hacer de muchas formas lo de poner nombre en un juego, en el listado de variables hay otro ejemplo que funciona con las key() para detectar que tecla estas pulsado y si coincide con la letra.

Sobre los saltos de línea cree un nuevo write() con soporte a tags html, ejemplo de write_html(): https://www.divgo.net/c-551fb4ad (https://www.divgo.net/c-551fb4ad)
Y otro ejemplo más de write_html(): https://www.divgo.net/c-bb44c52e

En este caso los saltos de línea es "<br>".

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 21, 2018, 09:08:31 PM
Hola amaka....
1.Si utilizo la version de input,del ejemplo,como puedo guardar el string en una variable.no hay forma aunque haga variable=name.
2.Con scan_code no tengo ese problema,pero a menudo no me escribe lo que tecleo...
3.Otra cosa hay alguna manera que no me haga suavizado de las letras cuando yo quiera?¿?.las letras siempre estan en un nivel superior de los graficos?¿?¿?

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 22, 2018, 08:22:07 AM
Hola oskarg,

1. El valor del input se pasa por offset, en el ejemplo la variable nombre es la que guarda el valor del escrito en el input. Cuando has pulsado en el input el foco del teclado queda en el input y debes de volver a pulsar la pantalla para volver a obtener el control de teclado, lo suyo es crear un gráfico de un botón para forzar que el usuario vuelva a pulsar en pantalla.

2. Si no escribe puede que sea por el bloqueo con la variable pulsado que puse, es un ejemplo sencillo y lo hice sin mirar mucho, prueba en cambiarlo o añadir otro tipo de control de pulsado para que no se escriba muchas veces al pulsar una sola vez.  :)

3. Pues se puede usando fuentes fnt o suavizando la pantalla de juego que suaviza toda la pantalla, con screen_smooth(false). Sí, creo recordar que en Div era así, los textos estaban siempre en una capa por encima de screen y de scroll, salvo write_in_map() que aplicado al graph del proceso va con la z del mismo.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 22, 2018, 11:05:59 AM
Otro ejemplo de scan_code con el control de tecla pulsada algo mejor, a ver que tal: https://www.divgo.net/c-67a78636
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 22, 2018, 11:45:39 AM
Muchas gracias Amaka....estoy probando cosas y haciendo mi scan_code personalizado ...cuando lo termine lo paso,pues yo no tengo tanto conocimiento como tu...lo expreso para si lo ves de utilidad añadirlo como ejemplo y lo puedas simplificar,pues soy horrible programando...
Añado ejemplo de concatenar palabras que no tiene la documentancion... ...muy potente para que lo que pretendo hacer......

program ejemplo_strcat;
global
   
texto1="la casa de tio tom";
texto2="es bien grande";
texto3=" ";
        final="";
begin
    texto3=strcat(texto1,texto3);//añado un espacio
    final=strcat(texto3,texto2);//escribo la frase concatenada completa.
   
 
  text_color=rgb(255,255,255);
text_size = 70;
  write(0, 320, 120,  4,  final ); //text with spaces

loop
  frame;
  end
end


Hay cosas como esta  de strcat que no tienen ejemplo,si quieres a poco a poco te voy dando algunos y de ese modo se rellena la documentacion ...aunque hay otras funciones que ni idea de como funcionan y hacer el dichoso ejemplo.
Cuando termine un par de cosas ,espero hoy o mañana,pues tengo fiesta,publico la beta siguiente XD:
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 22, 2018, 02:23:23 PM
Para concatenar palabras en Div GO no es necesaria la función strcat(), directamente escribes: final = texto1 + " " + texto2; y ya lo tendrías. Aquí el ejemplo: https://www.divgo.net/c-7c9bf743
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 25, 2018, 06:57:52 PM
Hola amaka,
te muestro un error que me provoca  divgo
    write_int(0,100,85,4,offset TABLA_R[i+1]);  me expresa que la variable no esta definida...es a raiz de querer sumar +1.No me deja poner parametros
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 28, 2018, 08:57:50 AM
Quote from: oskarg on November 25, 2018, 06:57:52 PM
Hola amaka,
te muestro un error que me provoca  divgo
    write_int(0,100,85,4,offset TABLA_R[i+1]);  me expresa que la variable no esta definida...es a raiz de querer sumar +1.No me deja poner parametros
Hola oskarg,

En Div GO el offset identifica la variable por el nombre, si haces TABLA_R no debería haber problemas, pero al añadir la suma 'i+1' no la reconoce como un nombre de variable, para esto creas una variable auxiliar que guarde el valor de TABLA_R[i+1], por ejemplo: https://www.divgo.net/c-7950aee7

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 30, 2018, 07:55:13 PM
Hola amaka....
1.como haces para saber cuando los fpg se han cargado por completo .en el ejemplo de bug wars sale un porcentaje...... otra cuestion.lo digo porque voy cargando y descargando graficos...alguna manera de saber cuando estan cargados o descargados ?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 01, 2018, 11:20:19 AM
Quote from: oskarg on November 30, 2018, 07:55:13 PM
Hola amaka....
1.como haces para saber cuando los fpg se han cargado por completo .en el ejemplo de bug wars sale un porcentaje...... otra cuestion.lo digo porque voy cargando y descargando graficos...alguna manera de saber cuando estan cargados o descargados ?¿?
Hola oskarg,

Con el bloque loading, desde ahí puedes configurar el cargador de tu juego. Los juegos hechos con DivGO normalmente se inicializan una vez se han cargado todos los recursos, salvo los que indiques con una @ delante, esos los incluirá en la carga inicial. Con el bloque loading puedes mostrar de modo personalizado lo que queda de carga de recursos antes de iniciar el juego.

Para los recursos cargados con @ también existe una variable de validación de carga que funciona de modo similar a fading: loading_data

Si loading_data es igual a true es que se están cargando recursos, una vez cargados loading_data se pone en false. Así puedes personalizar también un cargador saltándote las restricciones del bloque loading.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 03, 2018, 07:52:56 PM
Hola amaka,
en otro dia hago un ejemplo ejecutable reducido del bug que me pasa ,pues no hay manera que me funcionen los unload_fpg...
Me explico:
Cargo  los fpg1 fpg2......Muestro titulo,pulso enter hago un fade  y muestro explicacion...descargo el fpg2 de la explicacion con unload_fpg.........se termina la partida,muestro ranking y ahi aprovecho para cargar otra vez el fpg2......hago un fade y muestro titulo(se supone que ha cargado el fpg2) ,pulso enter.....ahora hago un fade y  ahi se me queda bloqueado haciendo fade sin que presente la pantalla de explicacion....Pasa por haber descargado el unload_fpg y volverlo a cargar..para evitar consumir recursos......
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 03, 2018, 09:59:45 PM
te adjunto ejemplo del unload_fpg por que no va?¿?si lo cargo de nuevo....

PROGRAM example_move_scroll;

GLOBAL
    file1;
    file0;
   
PRIVATE
    counter;

BEGIN
set_mode(m320x200);
    set_fps(100, 0);
    CARGA_FPG();
    TITULO();
   
END   

PROCESS CARGA_FPG()
BEGIN
  file1=load_fpg("graficos/help");
END

PROCESS TITULO()
BEGIN
text_size=42;
write(0,10,100,0,"PULSA ENTER");

    put_screen(file1,1);
   
    WHILE(!key(_enter))
    frame;
    end
    EXPLICACION();

END

PROCESS EXPLICACION()
BEGIN
  file=file1;
  text_size=42;
write(0,10,120,0,"PULSA A descargo fp1");

put_screen(file1,2)
    WHILE(!key(_a))
    frame;
    end
unload_fpg(file1);
RANKING();

END

PROCESS RANKING()
private
i;
BEGIN

write(0,10,140,0,"PULSA B para regresar titulo");

    WHILE(!key(_B))
    frame;
    end
   
   
    file1=load_fpg("graficos/help");
    from i=0 to i=60;
    frame;
    end
   
   
    TITULO();
   

END






SI NO LO DESCARGO VA POR QUE?¿?¿?¿??¿?
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 03, 2018, 11:25:38 PM
otro ejemplo cargo el grafico,lo descargo y lo cargo...en div original funciona.. :(


PROGRAM no_val;

GLOBAL
    file1;
   

BEGIN
file1=load_fpg("graficos/help");
file=file1;
set_mode(m320x200);
    set_fps(100, 0);

put_screen(file1,1);



    repeat
    frame;
    until(key(_enter));
    unload_fpg(file1);
    carga();

END   

PROCESS carga()
BEGIN
     file1=load_fpg("graficos/help");
   file=file1;

  put_screen(file1,2);
  text_size=48;
  write(0,10,100,0,"cargado");
 
loop
  frame;
  end
END

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 04, 2018, 08:59:05 AM
Quote from: oskarg on December 03, 2018, 11:25:38 PM
otro ejemplo cargo el grafico,lo descargo y lo cargo...en div original funciona.. :(


PROGRAM no_val;

GLOBAL
    file1;
   

BEGIN
file1=load_fpg("graficos/help");
file=file1;
set_mode(m320x200);
    set_fps(100, 0);

put_screen(file1,1);



    repeat
    frame;
    until(key(_enter));
    unload_fpg(file1);
    carga();

END   

PROCESS carga()
BEGIN
     file1=load_fpg("graficos/help");
   file=file1;

  put_screen(file1,2);
  text_size=48;
  write(0,10,100,0,"cargado");
 
loop
  frame;
  end
END


Hola oskarg,

No falla unload_fpg(), aquí tu ejemplo funcionando: https://www.divgo.net/c-cb886ff6

En DivGO las cargas son asíncronas a diferencia de la primera carga general, para controlar esto tienes la variable loading_data. Como comente en el anterior mensaje, para que no cargue todos los recursos al principio, en la carga general, puedes incluir un @ delante, por ejemplo: @load_fpg(); @load_sound(); @load_video(). Si vas a descargar y cargar recursos lo mejor es esto. :)

Aquí el ejemplo usando el @ en funciones de carga: https://www.divgo.net/c-a0f14132

Que la carga sea asíncrona hace que el juego siga en ejecución mientras se van cargando recursos en un segundo plano, poner una introducción y cargar el resto de recursos en un segundo plano, por ejemplo. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 04, 2018, 09:21:36 AM
Mil gracias amaka ....ahora miro los ejemplos y te comento.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 04, 2018, 10:04:12 AM
Otra pregunta..aunque parezca tonta...
Da igual la cantidad de colores que tenga el png??lo expreso porque si es optimo de alguna manera  reducir colores, en vez de por ejemplo 3000 tener 400 en un mapa y que esto mejore la velocidad de procesamiento.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 04, 2018, 10:54:24 AM
Otro ejemplo de carga con uso de loading_data y @, donde se aprecia mejor: https://www.divgo.net/c-79c5e9ec

Quote from: oskarg on December 04, 2018, 10:04:12 AM
Otra pregunta..aunque parezca tonta...
Da igual la cantidad de colores que tenga el png??lo expreso porque si es optimo de alguna manera  reducir colores, en vez de por ejemplo 3000 tener 400 en un mapa y que esto mejore la velocidad de procesamiento.

Da igual la cantidad de colores, siempre se van a dibujar a 32bits, aunque la carga sea de 8bits. La diferencia está en el tamaño, es más pequeño un mapa de 8bits que uno de 32 y su carga será más rápida. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 04, 2018, 12:04:39 PM
Genial....he hecho unos pocos cambios....
ahora estoy liado si puedo hacerlo con  scroll ,luego le meto suavizado con un filtro y guala acabado .
Aqui no sale,pero he cambiado tambien los edificios,ahora son cuadraditos brillantes xd  y mas cosas.. XD.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2018, 03:45:34 PM
Hola amaka he estado probando hasta la saciedad lo de unload y load y no me va.... ..te cuento añado ejemplo,si el fichero es png,no  funciona,pero si es del tipo map funciona ...
como creo un fichero del tipo map?¿?



PROGRAM carga_asincrona;

GLOBAL
    file1;
    cargador = "false";
    file2;
   
BEGIN
    set_mode(m320x200);
    set_fps(60, 0);   
   
    write(0,160,100,2, "cargado: ");
  write_int(0,160,100,0, &cargador);
   
while(fading) frame; end

    file1 = @load_fpg("graficos/malvado/nivel1");
   
    while(!loading_data) frame; end
   
    cargador = "true";
put_screen(file1, 100);
write(0,160,140,1, "Pulsa Enter");

    repeat
    frame;
    until(key(_enter));
    unload_fpg(file1);
    delete_text(all_text);
    carga();

END   

PROCESS carga()
BEGIN
     file2=@load_fpg("graficos/paf");
   file=file2;

  text_size=48;
  write(0,100,100,2, "cargado: ");
  write_int(0,100,100,0, &loading_data);
   
loop
if (loading_data) put_screen(file2,2); end//al ser del tipo png no va..
   
  frame;
  end
END


Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2018, 04:43:31 PM
No lo entiendo...te explico....
tengo un proceso que carga el grafico y luego lo descarga.son imagenes png...pues bien la primera vez que hago la partida funciona pero cuando reseteo todo e inicio de nuevo ya no va,pero si en vez de poner mis graficos utilizo..los graficos de la carpeta graficos/help  que son de tipo map funciona correctamente ?¿??¿?¿?¿?
añado trozo de codigo
//____________________________________________________________________________________________________________________________________________________________________________-
PROCESS CARGA_FPG2(opcion)
private
i;
BEGIN
text_size=48;
text_color=rgb(255,255,255);

  write_int(0,160,100,0, &loading_data);
    let_me_alone();
    clear_screen();
   
while(fading) frame; end

    File2 =@load_fpg("graficos/supe2"); //aqui se me queda trabado no salgo nunca....SI EN VEZ DE UTILIZAR Esta carpeta pongo graficos/help  ...funciona ?¿?¿? u otra que tenga //map..Por ejemplo graficos/malvado/nivel1         POR  QUE?¿?¿?
   
    while(!loading_data) frame; end
   ID_PROCESO1=TABLA_EXPLICACION();

   FONDO2(File2,2,1);
 
loop
frame;
end




O bien si pongo en vez de graficos/supe2  la carpeta por defecto graficos  JOE XD:
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2018, 08:26:20 PM
Otra cuestion..he visto en el ejemplo que pones el put_screen,dentro de un loop..si lo pongo divgo hace esta operacion solo una vez?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 06, 2018, 01:00:47 PM
Quote from: oskarg on December 04, 2018, 12:04:39 PM
Genial....he hecho unos pocos cambios....
ahora estoy liado si puedo hacerlo con  scroll ,luego le meto suavizado con un filtro y guala acabado .
Aqui no sale,pero he cambiado tambien los edificios,ahora son cuadraditos brillantes xd  y mas cosas.. XD.

Muy chula la captura del ejemplo.  8)

Quote from: oskarg on December 05, 2018, 08:26:20 PM
Otra cuestion..he visto en el ejemplo que pones el put_screen,dentro de un loop..si lo pongo divgo hace esta operacion solo una vez?

Ahí se me ha ido la cabeza, se pinta todo el rato una vez ha cargado.

Quote from: oskarg on December 05, 2018, 04:43:31 PM
No lo entiendo...te explico....
tengo un proceso que carga el grafico y luego lo descarga.son imagenes png...pues bien la primera vez que hago la partida funciona pero cuando reseteo todo e inicio de nuevo ya no va,pero si en vez de poner mis graficos utilizo..los graficos de la carpeta graficos/help  que son de tipo map funciona correctamente ?¿??¿?¿?¿?
añado trozo de codigo

Revisándome hoy el funcionamiento de las cargas y haciendo una serie de pruebas he visto que da errores, no sabría decir en qué momento exactamente, me ha dado errores cargando tanto png como map, me lo apunto para corregir para la próxima versión.  :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 06, 2018, 04:29:20 PM
Hola amaka...
Si,me estaba volviendo loco ;D ,hay un bug,he estado  mucho tiempo probando maneras y no iba bien las cargas y descargas...o lo cargo todo de golpe o sino luego tengo luego problemas que no entiendo el motivo..Cuando solventes el  bug  ,lo hago cargando las imagenes por partes y gracias por mirarlo .
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 12, 2018, 09:24:23 PM
Hola amaka,
una  cuestion...
Ya tengo el juego muy avanzado ,pero......................
2.Hay alguna manera de atenuar o bajar progresivamente el sonido de la musica?¿?es decir ,hago sound(id,100,255);...pero cuando finaliza la fase o cierta accion quiero que la musica a poco a poco baje ...he cambiado 100 por una variable global,pero aunque cambie su valor y vaya bajando no consigo lo que pretendo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 14, 2018, 08:43:16 AM
Quote from: oskarg on December 12, 2018, 09:24:23 PM
Hola amaka,
una  cuestion...
Ya tengo el juego muy avanzado ,pero......................
2.Hay alguna manera de atenuar o bajar progresivamente el sonido de la musica?¿?es decir ,hago sound(id,100,255);...pero cuando finaliza la fase o cierta accion quiero que la musica a poco a poco baje ...he cambiado 100 por una variable global,pero aunque cambie su valor y vaya bajando no consigo lo que pretendo.
Hola oskarg,

Es como en Div, tienes la función para manipular la frecuencia y el volumen de un sonido: change_sound()
Y para bajar el volumen de todo el juego: set_volume()

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 14, 2018, 10:27:09 AM
Busco una musica para el himno de  victoria ,modifico el change que me has expresado y publico beta 0.3 a ver que os parece....dentro un momento XD
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 14, 2018, 11:01:51 AM
Quote from: oskarg on December 14, 2018, 10:27:09 AM
Busco una musica para el himno de  victoria ,modifico el change que me has expresado y publico beta 0.3 a ver que os parece....dentro un momento XD
Perfecto! :)
Cualquier duda en el menú de ejemplos tienes el ejemplo de sonidos donde se utiliza esta función.

Te copio aquí el código:

program ejemplo_sound;
global
    en_reproduccion, punto_pausado;
    sonido1, sonido2, sonido3, fuente1, fuente2;
    volumen = 512, frecuencia = 256;
   
begin
    sonido1 = load_sound("sonidos/inicia.ogg", 1);
    sonido2 = load_sound("sonidos/disparo.wav", 1);
    sonido3 = load_sound("sonidos/elimina.wav", 0);

    fuente1 = load_font("fuentes/LiquidCrystal-Normal.otf");
    fuente2 = load_font("fuentes/GridExercise-Bold.ttf");

    set_title("Div GO : Ejemplo de Sonido");

    /* pruebas con opciones de pantalla */
    set_mode(480, 240);
    screen_color(#240);

    sound(sonido1, volumen, frecuencia);
    sound(sonido2, 90, 200);
    sound(sonido3, 90, 200);

    set_fps(60, 0);
   
    text_color = #fff;
    text_size  = 50;
    write_int(fuente1, 240, 20, 4, offset en_reproduccion);
    write_int(fuente1, 460, 20, 5, offset volumen);
    write_int(fuente1, 460, 34, 5, offset frecuencia);

    text_color = #ccc;
    write(0, 240, 120, 4, "Pulsa [B] [N] o [M] para PARAR distinto sound");
    write(0, 240, 140, 4, "Pulsa [P] para PAUSAR y [C] para CONTINUAR reproducción");
   
    loop
        en_reproduccion = is_playing_sound(sonido1);
        change_sound(sonido1, volumen, frecuencia);
       
        if (key(_b)) stop_sound(sonido1); end
        if (key(_n)) stop_sound(sonido2); end
        if (key(_m)) stop_sound(all_sound); end
       
        if (key(_up) and volumen < 512) volumen ++; end
         if (key(_down) and volumen > 0) volumen --; end

        if (key(_right) and frecuencia < 512) frecuencia ++; end
         if (key(_left) and frecuencia > 0) frecuencia --; end
       
        if (key(_p)) punto_pausado = pause_sound(sonido1); end
        if (key(_c)) continue_sound(sonido1, punto_pausado); end

        frame;
    end
end
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 16, 2018, 06:06:23 PM
Publico beta 0.3
He cambiado la dificultad,demasiado sencillo XD...
Perdonad...
Si quieres amaka publica la beta y con el tiempo ya ire cambiando infinidad de cosas un saludo.

http://www.mediafire.com/file/hrbty1cnc4xsfcc/MEGAbeta03.zip/file
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 16, 2018, 11:53:25 PM
Hola oskarg,

Esta muy chulo! El apartado gráfico está muy bien, la verdad. :)

Si quieres te lo pongo en la lista de los juegos desarrollados con Div GO, pásame un icono en png a tamaño 48x48 y te lo subo. En un futuro necesitaré iconos más grandes para lo que tengo pensado para esta sección, pero de momento... También te puedo crear un acceso vía ftp para que puedas subir tu mismo los cambios del juego (esto si te parece bien lo hablamos por privado).

Otra cosa, el fondo blanco de la pagina que queda alrededor del juego se puede cambiar a negro u otro color de manera dinámica con Div GO haciendo uso de la función set_color(color), esto no se muestra desde el IDE en modo debug.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 17, 2018, 08:31:02 AM
Ah ...pues cambio el fondo a negro no lo sabía y si quieres el domingo que es mi día libre hago el icono y le añado los fondos  simulando el transcurso del día y ya hablamos ,pues no hay prisa para ser publicado...está en fase beta ..tengo un trabajo horrible  :-\
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 02, 2019, 10:12:09 PM
Hola Amaka ,
feliz año nuevo...
Este mes estoy full de trabajo,pero he corregido aquello que me expresastes,lo del fondo a negro y tambien le he añadido un logotipo al juego llamado bombardero.png 48x48...Cuando tenga tiempo ,voy modificando cosas........
Dentro de dos semanas comienzo a tener un par de dias libres y podre hacer mas juegos con tu engine y de esa manera a ver si la gente se anima a probarlo y aportar sus minijuegos,pues tiene un gran potencial.
Espero que lo hayas pasado bien y los reyes magos nos traiga alguna que otra sorpresa y tambien para divgo ;D.
Un saludo.

http://www.mediafire.com/file/6h6d8ndtdl0f3ed/bombarderobeta03.zip/file
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 03, 2019, 08:31:37 AM
Hola oskarg,

Feliz año! :)
Yo estos días he estado un poco más liberado y le he estado (estoy) dando un poco más de caña a Div GO, quería tenerlo listo para antes de fin de año, pero al final será para esta semana cuando saque versión si todo va bien.
He estado haciendo algunos cambios y pruebas para Div GO, uno de esos cambios es la estructura de scroll, que ahora permitirá más variables por plano: blur, tone, grayscale, invert, saturate... (incluiré ejemplo)

Impresionante tu Bombardero, cuando suba la nueva versión lo añado en la lista de juegos desarrollados. ;)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 05, 2019, 05:39:30 PM
Nueva versión 1.18.0 de Div GO ya disponible online (para realizar testeos), como regalo de Reyes, y las novedades:  8)


funciones:
   - is_fullscreen(), fullscreen_scale();

struct scroll:
  - back: x, y, alpha, blur, grayscale, invert, sepia, tone, saturate, brightness;
   - front: x, y, alpha, blur, grayscale, invert, sepia, tone, saturate, brightness;

bugs y mejoras:
  - [ADD] nuevo sistema de avisos de error para el ide
   - [FIX] ahora al arrastrar en el ide un archivo .map de div original para añadir al fpg no da error
   - [FIX] proceso de carga independiente del bloque loading
   - [DEL] variables struct scroll: x0, y0, alpha0, x1, y1, alpha1, fx
   - [CHANGE] en el manejo de scroll con las nuevas variables, back para el fondo y front para el frontal




En el apartado de juegos desarrollados hay nuevo juego disponible (Mega Bomber de Oskarg): https://www.divgo.net/secciones/es/juegos.php (https://www.divgo.net/secciones/es/juegos.php)

Y los ejemplos en breve...

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 07, 2019, 02:53:40 PM
Ejemplo de uso de nuevas variables y estructura de scroll: https://www.divgo.net/c-afaa27b3 (https://www.divgo.net/c-afaa27b3)
Ejemplo de fullscreen_scale() y is_fullscreen(), se puede probar en el proyector y con la opción fullscreen seleccionada: https://www.divgo.net/c-738cf08a (https://www.divgo.net/c-738cf08a)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 12, 2019, 10:36:42 PM
Ya disponible para descargar la versión 1.18.0 de Div GO: http://www.amakasoft.com/herramientas/div-go.html  (http://www.amakasoft.com/herramientas/div-go.html)

Un saludo.  8)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 20, 2019, 01:17:31 PM
Disponible para descargar la versión 1.18.1 de Div GO, corregido un bug en el empaquetado de gráficos: http://www.amakasoft.com/herramientas/div-go.html  (http://www.amakasoft.com/herramientas/div-go.html)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on January 20, 2019, 07:10:05 PM
Quote from: AmakaSt on January 12, 2019, 10:36:42 PM
Ya disponible para descargar la versión 1.18.0 de Div GO: http://www.amakasoft.com/herramientas/div-go.html  (http://www.amakasoft.com/herramientas/div-go.html)

Un saludo.  8)

probando la nueva, ya que la otra me daba problemas en windrios 7(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4153)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 20, 2019, 09:07:18 PM
Quote from: Futu-block on January 20, 2019, 07:10:05 PM
probando la nueva, ya que la otra me daba problemas en windrios 7
¿Te falla con algún navegador o te está dando problemas la versión Desktop?

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on January 21, 2019, 09:05:07 AM
era la versión desktop
me dice que me falta una libreria, a ver si encuentro la foto
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 21, 2019, 11:32:36 AM
Yo lo suelo probar en Windows 10 y en Windows 7, pero por lo que veo te faltan las librerías de Visual C++. Te pongo el enlace de la versión PHP Desktop que uso para Div GO, tiene los enlaces de las librerías que te pueden hacer falta: https://github.com/cztomczak/phpdesktop/releases/tag/chrome-v57.0-rc
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 10, 2019, 10:00:31 AM
Hola amaka quiero hacer unos tutos y juegos para que se vayan incluyendo en divgo ,pues me siento muy comodo es este engine,pero no me va todavia la funcion @load correctamente....pues nunca me carga los graficos en el navegador.adjunto ejemplo...

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
FILE1;
begin
set_title("JUEGO_NAVES");//Nombre del juego...
set_mode(512,512);
screen_color(rgb(0,0,0));
set_fps(30, 0);
    text_size=80;
    write(0,512/2,512/2,4,"LOADING GAME..");
    INICIO();
loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

PROCESS INICIO()
BEGIN
carga_recursos();
END

Process CARGA_RECURSOS()
BEGIN

  // FILE1=@load_fpg("graficos/nave");//NO FUNCIONA:::NUNCA CARGA EL GRAFICO..
   FILE1=load_fpg("graficos/nave");//de esta manera carga los graficos .....
   
    EMPIEZA_JUEGO();
END

PROCESS EMPIEZA_JUEGO();
BEGIN
delete_text(all_text);
PINTA_FONDO();
END

PROCESS PINTA_FONDO()
BEGIN
     start_scroll(0, FILE1,1, 0, 0, 15);
     scroll.camera=id;
     ctype=c_scroll;

   
    LOOP
        y=y-1;
        FRAME;
    END


END

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 11, 2019, 10:56:10 AM
Quote from: oskarg on February 10, 2019, 10:00:31 AM
Hola amaka quiero hacer unos tutos y juegos para que se vayan incluyendo en divgo ,pues me siento muy comodo es este engine,pero no me va todavia la funcion @load correctamente....pues nunca me carga los graficos en el navegador.adjunto ejemplo...

/*
   Program's Name:   <My Program Name>
   Author's Name:   <My Name>
   Company's Name:   <My Company or Group>
*/

program MyProgramName;
global
FILE1;
begin
   set_title("JUEGO_NAVES");//Nombre del juego...
    set_mode(512,512);
   screen_color(rgb(0,0,0));
   set_fps(30, 0);
    text_size=80;
    write(0,512/2,512/2,4,"LOADING GAME..");
    INICIO();
   loop     
      if (key(_esc)) exit("Text Exit", 1); end

      frame;
   end
end

PROCESS INICIO()
BEGIN
carga_recursos();
END

Process CARGA_RECURSOS()
BEGIN

  // FILE1=@load_fpg("graficos/nave");//NO FUNCIONA:::NUNCA CARGA EL GRAFICO..
   FILE1=load_fpg("graficos/nave");//de esta manera carga los graficos .....
   
    EMPIEZA_JUEGO();
END

PROCESS EMPIEZA_JUEGO();
BEGIN
delete_text(all_text);
PINTA_FONDO();
END

PROCESS PINTA_FONDO()
BEGIN
     start_scroll(0, FILE1,1, 0, 0, 15);
     scroll.camera=id;
     ctype=c_scroll;

   
    LOOP
        y=y-1;
        FRAME;
    END


END


Hola Oskarg,

Las cargas con @ son asincronas junto con la ejecución, se debe de controlar. Por ejemplo, esto puede ir bien para hacer cargas mientras muestras una introducción del juego, puedes controlar tu los momentos de carga.

Aquí el código con la solución.

/*
    Program's Name:    <My Program Name>
    Author's Name:    <My Name>
    Company's Name:    <My Company or Group>
*/

program MyProgramName;
global
FILE1;
begin
    set_title("JUEGO_NAVES");//Nombre del juego...
     set_mode(512,512);
    screen_color(rgb(0,0,0));
    set_fps(30, 0);
    text_size=80;
    write(0,512/2,512/2,4,"LOADING GAME..");
    INICIO();
    loop       
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
end

PROCESS INICIO()
BEGIN
carga_recursos();
END

Process CARGA_RECURSOS()
BEGIN

   FILE1=@load_fpg("graficos/nave");//NO FUNCIONA:::NUNCA CARGA EL GRAFICO..
   //FILE1=load_fpg("graficos/nave");//de esta manera carga los graficos .....
   
    while(!loading_data) frame; end //La ejecucion continuara si no la controlas, se inicia el scroll antes de la posible carga
   
    EMPIEZA_JUEGO();
END

PROCESS EMPIEZA_JUEGO();
BEGIN
delete_text(all_text);
PINTA_FONDO();
END

PROCESS PINTA_FONDO()
BEGIN
     start_scroll(0, FILE1,1, 0, 0, 15);
     scroll.camera=id;
     ctype=c_scroll;

   
    LOOP
        y=y-1;
        FRAME;
    END


END


Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 11, 2019, 01:30:23 PM
Hola Amaka,gracias por ejemplo...no me acordaba ya lo de loading...pero sigue sin cargarme nada,se ve la pantalla negra y no hace nada....
Otra cuestion,podrias modificar el comportamiento de crtl+z ....me ha pasado ya en varias ocasiones que he perdido el codigo por completo borra todo lo escrito y ni idea de como volverlo a recuperar...

Te comento es problema de file=FILE1 cuando intento cargar graficos de forma asincrona...si utilizo graficos por defecto..entonces funciona adjunto ejemplo para que veas que no funciona...me sigue pasando el mismo error de antes,con graficos propios de div va.con graficos creados mios ya no  :P...Si elemino file=FILE1 me carga la estrella...sino no carga mi grafico joe!!!

/*
    Program's Name:    <My Program Name>
    Author's Name:    <My Name>
    Company's Name:    <My Company or Group>
*/

program MyProgramName;
global
FILE1;
begin
    set_title("JUEGO_NAVES");//Nombre del juego...
     set_mode(512,512);
    screen_color(rgb(0,0,0));
    set_fps(30, 0);
    text_size=80;
    write(0,512/2,512/2,4,"LOADING GAME..");
    INICIO();
    loop       
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
end

PROCESS INICIO()
BEGIN
carga_recursos();
END

Process CARGA_RECURSOS()
BEGIN

   FILE1=@load_fpg("graficos/nave");//NO FUNCIONA:::NUNCA CARGA EL GRAFICO..
   //FILE1=load_fpg("graficos/nave");//de esta manera carga los graficos .....
   
    while(!loading_data) frame; end //La ejecucion continuara si no la controlas, se inicia el scroll antes de la posible carga
   
    EMPIEZA_JUEGO();
END

PROCESS EMPIEZA_JUEGO();
BEGIN
file=FILE1;///NO CARGA EL GRAFICO..SI QUITO ESTA LINEA CARGA LA ESTRELLA JOE!!!!
graph=2;
x=100;
y=200;
delete_text(all_text);
loop
frame;
end
END






..Otra cuestion estoy haciendo mini tutoriales,un space invaders,uno de naves,un tetris. .,iguales que phaser...¿?¿?te parece adecuado añadirlo como tutoriales o prefieres que sean originales.?¿?.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 12, 2019, 09:20:22 AM
Quote from: oskarg on February 11, 2019, 01:30:23 PM
Hola Amaka,gracias por ejemplo...no me acordaba ya lo de loading...pero sigue sin cargarme nada,se ve la pantalla negra y no hace nada....
Otra cuestion,podrias modificar el comportamiento de crtl+z ....me ha pasado ya en varias ocasiones que he perdido el codigo por completo borra todo lo escrito y ni idea de como volverlo a recuperar...

Te comento es problema de file=FILE1 cuando intento cargar graficos de forma asincrona...si utilizo graficos por defecto..entonces funciona adjunto ejemplo para que veas que no funciona...me sigue pasando el mismo error de antes,con graficos propios de div va.con graficos creados mios ya no  :P ...Si elemino file=FILE1 me carga la estrella...sino no carga mi grafico joe!!!
Hola oskarg,

Desconocía lo del ctrl+z del editor, eso debe ser cosa del codemirror, mirare de quitarlo para la próxima versión. Cuando te pase eso, cierra la pestaña del navegador y vuelve a abrirlo, recuperaras lo que tengas guardado.

Lo del file=FILE1; no debería ser ningún problema, le estas pasando a file el número del fichero cargado, en ese caso será el 1, por lo que es raro que no te este funcionando bien eso, yo he estado haciendo pruebas y me funciona bien la carga, aquí tu codigo cargando una carpeta de gráficos de fostiator: https://www.divgo.net/c-ce86a273
Le he añadido en esta ocasión un chivato por consola para ver cuantas veces entra dentro del while cuando hace la carga.

Quote from: oskarg on February 11, 2019, 01:30:23 PM
..Otra cuestion estoy haciendo mini tutoriales,un space invaders,uno de naves,un tetris. .,iguales que phaser...¿?¿?te parece adecuado añadirlo como tutoriales o prefieres que sean originales.?¿?.
Los juegos y tutoriales los publico como su autor quiera, asi que si quieres los añado como tutoriales o ejemplos en la página (incluyendo tu código) o como juegos desarrollados (sin incluir dicho código). :)

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 12, 2019, 10:03:03 PM
Hola Amaka por que viven estos procesos si no tienen ni un loop o frame.........

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
    points = 0;
    hi_score = 0;

begin
set_title("VIVE");
   
set_mode(480, 320);
screen_color(cc_silver);

set_fps(60, 0);
VIVE();

END
process VIVE()
   
begin

end

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 12, 2019, 10:09:05 PM
Lo logico,seria que si no tengo un bucle infinito el proceso de forma directa se muriera...creo yo
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 12, 2019, 11:07:12 PM
Otra curiosidad que me tiene intrigado,desconozco si es normal...te explico.. hago un for para crear  procesos for(i=0;i<N_ENEMIGOS;i++)ENEMIGOS();END y guardos sus id en una tabla...lo que pasa que los guarda del ultimo al primero los ides en la tabla..es decir..cuando hago un WHILE( (a=get_id(type ENEMIGO))<>0) TABLA[i]=a;i++);END ....y en la tabla[0] guarda el ultimo enemigo creado, en la tabla[1] guarda el penultimo enemigo creado.no tendria que ser de forma inversa...es decir..en la tabla[0] guardo el primer enemigo creado... en la tabla[1] guardo el segundo enemigo creado......no se si es la forma normal que funciona div...de ahi que no me funcionaba lo que intentaba hacer....pues lo hacia a la inversa XD
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 12, 2019, 11:14:11 PM
MAÑAna cuando regrese del trabajo miro otra vez el codigo,pues flipo XD estoy mega espeso
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 13, 2019, 08:06:50 AM
Quote from: oskarg on February 12, 2019, 10:03:03 PM
Hola Amaka por que viven estos procesos si no tienen ni un loop o frame.........

/*
   Program's Name:   <My Program Name>
   Author's Name:   <My Name>
   Company's Name:   <My Company or Group>
*/

program MyProgramName;
global
   // declared global variables
    points      = 0;
    hi_score   = 0;
   
begin
   set_title("VIVE");
   
   set_mode(480, 320);
   screen_color(cc_silver);

   set_fps(60, 0);
   VIVE();
   
END   
process VIVE()
   
begin

end


Hola oskarg,

En principio me hace lo que dices que debería de hacer, se detiene el programa y no hay ningún proceso vivo. En el listado de procesos te mostrará 0 procesos activos y si entras en el analizador lo mismo, no hay procesos activos.

Si incluyes un frame(5000) al proceso vive, se muestra un instante el fondo gris y se vuelve negro, acabado el frame el programa finaliza.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 13, 2019, 08:13:16 AM
Qué raro...me hace todo lo opuesto...me muestran los procesos como activos y no lo entiendo y sobre la segunda pregunta a qué se debe? lo de guardar del último al primer id por ese orden? Esta noche los guardo a la inversa XD los id y te digo si me funciona...
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 13, 2019, 08:16:00 AM
Quote from: oskarg on February 12, 2019, 11:07:12 PM
Otra curiosidad que me tiene intrigado,desconozco si es normal...te explico.. hago un for para crear  procesos for(i=0;i<N_ENEMIGOS;i++)ENEMIGOS();END y guardos sus id en una tabla...lo que pasa que los guarda del ultimo al primero los ides en la tabla..es decir..cuando hago un WHILE( (a=get_id(type ENEMIGO))<>0) TABLA[i]=a;i++);END ....y en la tabla[0] guarda el ultimo enemigo creado, en la tabla[1] guarda el penultimo enemigo creado.no tendria que ser de forma inversa...es decir..en la tabla[0] guardo el primer enemigo creado... en la tabla[1] guardo el segundo enemigo creado......no se si es la forma normal que funciona div...de ahi que no me funcionaba lo que intentaba hacer....pues lo hacia a la inversa XD
Esto tendre que mirarmelo, ahora no recuerdo como hago el recorrido de procesos para obtener la id.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 13, 2019, 08:21:58 AM
Quote from: oskarg on February 13, 2019, 08:13:16 AM
Qué raro...me hace todo lo opuesto...me muestran los procesos como activos y no lo entiendo y sobre la segunda pregunta a qué se debe? lo de guardar del último al primer id por ese orden?
Con que navegador lo estas probando? Estas usando la última versión de DivGO, la 1.18.1?

Necesito pistas para poder provocar el mismo problema, yo suelo hacer pruebas en 3 ordenadores distintos y los siguientes navegadores: Firefox, Chrome, Vivaldi... y algunas veces pruebo con Edge.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 13, 2019, 08:22:09 AM
Si quieres te paso el código y verás que lo hace a la inversa y claro tengo un cacao a la hora de eliminar un proceso,pues este muere pero me dispara en un proceso que no debería... sabiendo que están a la inversa....pues nada XD los ordeno a la inversa y de ese modo supongo que está noche a la primera funcionará.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 13, 2019, 08:27:30 AM
Hola Amaka..esta noche te digo el navegador que utilizo y sobre el orden de los procesos es así como te expreso .. solo debes crear dos procesos en while e imprimes sus valores..y los guardas en una tabla... Luego en otro proceso expresas que dispare el id de la tabla(0).x y te darás cuenta que dispara el último...la mar de divertido XD
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 13, 2019, 10:14:41 PM
Hola Amaka....
Ya funciona te paso el ejemplo con su prg...un par de cuestiones.
1.Confirmo que los id se muestran en orden inverso.
2.No utilizo tablas pues es un cacao de esta manera hacerlo.
3.Tienes un bug bien curioso a la hora de empaquetar....ejecuto divgo la ultima version con xamp y funciona perfecto...pero cuando lo empaqueto y lo lanzo.......sin utilizar divgo en el chrome Versión 71.0.3578.98 (Build oficial) (64 bits) ,no detecta las colisiones y hace cosas rarisimas los procesos XD....pero utilizando el propio divgo NO...
He probado una vez empaquetado ejecutarlo en firefox legacy 52 y funciona perfecto....menos mal...XD
te doy la direcccion para que lo veas ..es un ejemplo de phaser...si quieres que cambie graficos y haga portada y bla..bla ..bla me lo expresas para que la gente vaya aprendiendo a utilizar tu gran engine y yo encantado de hacer si quieres hacer ejemplos con su prg de juegos clasicos... a ver si de esta manera la gente lo conoce ,pues es realmente bueno.
Un saludo...
sobre la carga asincrona sospecho que sera por el navegador de chrome ..mas tarde lo probare y te dire algo al respecto.
http://www.mediafire.com/file/lonylikgjj3fafk/space_invaders0.zip/file
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 13, 2019, 10:22:50 PM
Quote from: oskarg on February 13, 2019, 08:27:30 AM
Hola Amaka..esta noche te digo el navegador que utilizo y sobre el orden de los procesos es así como te expreso .. solo debes crear dos procesos en while e imprimes sus valores..y los guardas en una tabla... Luego en otro proceso expresas que dispare el id de la tabla(0).x y te darás cuenta que dispara el último...la mar de divertido XD
Vale, ya lo tengo corregido para la próxima versión. Esto esta distinto porque al principio get_id() en Div GO solo devolvía el id del último proceso creado del tipo que indicabas. Por lo que empecé a recorrerlo empezando por el último del mismo tipo hasta devolver 0. :P

Haciendo la comparación con Div DX he visto que en Div GO esto va al revés.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 13, 2019, 10:48:08 PM
Quote from: oskarg on February 13, 2019, 10:14:41 PM
3.Tienes un bug bien curioso a la hora de empaquetar....ejecuto divgo la ultima version con xamp y funciona perfecto...pero cuando lo empaqueto y lo lanzo.......sin utilizar divgo en el chrome Versión 71.0.3578.98 (Build oficial) (64 bits) ,no detecta las colisiones y hace cosas rarisimas los procesos XD....pero utilizando el propio divgo NO...
He probado una vez empaquetado ejecutarlo en firefox legacy 52 y funciona perfecto....menos mal...XD
te doy la direcccion para que lo veas ..es un ejemplo de phaser...si quieres que cambie graficos y haga portada y bla..bla ..bla me lo expresas para que la gente vaya aprendiendo a utilizar tu gran engine y yo encantado de hacer si quieres hacer ejemplos con su prg de juegos clasicos... a ver si de esta manera la gente lo conoce ,pues es realmente bueno.
Visto, se lo que te está pasando y no es un bug raro de Div GO, son temas de seguridad de Chrome. En Chrome ejecutar un html como si fuera un ejecutable con url file:/// los scripts petan (si miras en la consola del navegador veras que hay errores de Javascript), ya sea Div GO o usando cualquier otra librería, esto es así. Por temas de seguridad  las páginas web siempre las tienes que visualizar en http o https para que todo funcione bien en Chrome, crea una carpeta en xampp para probar los juegos, por ejemplos: http://localhost/misjuegos/space_invaders (así funciona bien en Chrome y Firefox)

Aquí un par de enlaces sobre ese tema:
http://www.chrome-allow-file-access-from-file.com/
https://stackoverflow.com/questions/28724751/open-local-filesfile-using-chrome

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 14, 2019, 08:03:32 AM
Hola Amaka,
Gracias por la explicación del navegador y el detalle de los ids para la próxima versión.....y del control+z XD.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 17, 2019, 09:03:37 AM
Hola Amaka
te cuento cosas ya te expresé que no me funciona la carga asincrona....
1.Hoy es mi día libre,tus ejemplos que has mostrado me funcionan,pero el problema viene de la extension.Si es de un  tipo .map lo carga,pero si son graficos sueltos tipo png no me carga nada,esto ya me pasaba en las versiones anteriores ...disculpa ya se me habia olvidado de este detalle y como se cargaban ..solo sale una pantalla de color negro .....Hacia semanas que no tocaba divgo y de ahí mi descuido de expresartelo con anterioridad,pues estaba bien ocupado....salvo que me expreses como puedo convertir de png a map lo solvento las cargas asincronas,sino,es imposible....haz la prueba y veras que lo que expreso es de ese modo..
2.Gracias por comentar sobre los navegadores,el vivaldi me ha gustado bastante...
3.Modifico el tutorial para hacerlo mas completo y lo resubo .
Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 17, 2019, 04:52:56 PM
http://www.mediafire.com/file/379m8xf2w9vuvst/space_invadersbeta02.zip/file

Añadido titulo,un par de sonidos y aumento de dificultad a medida que pasas de fase y corregida la velocidad,en el navegador vivaldi me va mega fluido y he tenido que rebajar ciertas cosas.
Falta la carga asincrona y comportamiento de diferente de los enemigos,pero ahora como esta diseñado es un cacao guardar los ids por tablas...
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 18, 2019, 04:51:16 PM
Quote from: oskarg on February 17, 2019, 09:03:37 AM
te cuento cosas ya te expresé que no me funciona la carga asincrona....
1.Hoy es mi día libre,tus ejemplos que has mostrado me funcionan,pero el problema viene de la extension.Si es de un  tipo .map lo carga,pero si son graficos sueltos tipo png no me carga nada,esto ya me pasaba en las versiones anteriores ...disculpa ya se me habia olvidado de este detalle y como se cargaban ..solo sale una pantalla de color negro .....Hacia semanas que no tocaba divgo y de ahí mi descuido de expresartelo con anterioridad,pues estaba bien ocupado....salvo que me expreses como puedo convertir de png a map lo solvento las cargas asincronas,sino,es imposible....haz la prueba y veras que lo que expreso es de ese modo..
Hola oskarg,

Tienes toda la razón, acabo de ver el problema, probaba la carga asíncrona con los gráficos de malvado, pacoman y fostiator, que tiene muchos archivos y veía que la carga funcionaba y lo daba por bueno, no caí en que todos estos están sus gráficos en formato map, que DivGO los trata distintos que otros formatos. Los formatos map, fpg y fnt, se leen y redibujan a png.

Me apunto este problema para corregir.

Gracias por el reporte! :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 18, 2019, 09:35:27 PM
beta03 del tutorial Space_invaders..
-Incluido efecto de estrellas en la presentacion del titulo...
-Modificado el comportamiento de los enemigos..ahora cuando matas una columna completa de enemigos...los restantes como debe ser llegan hasta al final x=0 o x=800 ,me ha costado un poco....y van bajando.....
....la proxima incluyo creditos.....records..etc ... ya queda mucho mejor que el original....
http://www.mediafire.com/file/jw89qvmv4z7g78n/space_invaderbeta03.zip/file

EL siguiente tuto sera otra vez de naves,pero esta vez...utilizaremos mapas infinitos.,cohetes que siguen a la nave etc.....lo encuentro muy interesante para aprender y explicarlo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 19, 2019, 08:24:37 AM
Ya tengo corregido lo de la carga asíncrona de formatos png, jpg, gif... (para la versión 1.20)   8)

Está muy bien el tutorial de Space Invaders! Tengo que cambiar el área de juegos desarrollados, para que tenga categorías y con posibilidad de descargar código (en caso de ser tutoriales).
Muchas veces pienso en crear un portal de juegos desarrollados con Div GO, pero requiere de tiempo... a ver si este año en vacaciones me pongo. :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 19, 2019, 03:30:51 PM
Hola Amaka,
Perfecto que hayas corregido el problema de las cargas asíncronas.
1.Espero que le sigas dando mimos y añadiendo características o puliendo tu engine,pues con creces es lo más sencillo y versátil a la hora de programar juegos 2d.

2.sobre lo que comentas de crear secciones diferentes me parece una idea acertada..solo hay que mirar pico ,mega limitado en potencial y una resolución que te arruina lucirte gráficamente,pero tiene una gran cantidad de seguidores,como pasa con LOVE lua,una comunidad muy activa y eso que no es tan sencillo de hacer juegos con su sistema.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 24, 2019, 07:39:43 PM
Hola Amaka...
Estoy haciendo un editor de tiles en divgo....
Mi intencion es que sirva para crear los mapas de los juegos en un plis-plas ,pero requiero guardar y cargar mas tarde los valores en una tabla en otra sesion o bien que pueda guardarlo en un mapa por ejemplo png y lo incluya en el fpg directamente  y de esa manera lo podria utilizar como una tabla.....en div existe la funcion  save("carpeta1/mapa.dat") y load("carperta1/mapa.dat") pero en divgo al ser por navegador ni idea .........
Con lo cual,mi sugerencia es ,si no puedo abrir y guardar documentos de la extension que ponga,es que pueda con el lenguaje divgo poder crear un mapa ,le asigno en cada pixel,el color que yo quiero y que lo guarde directamente en el fpg que determine con el numero que yo indique y  de esta manera podria ,luego cargar el grafico ,leerlo como una tabla y solvento el inconveniente.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 25, 2019, 01:25:28 PM
Quote from: oskarg on February 24, 2019, 07:39:43 PM
Hola Amaka...
Estoy haciendo un editor de tiles en divgo....
Mi intencion es que sirva para crear los mapas de los juegos en un plis-plas ,pero requiero guardar y cargar mas tarde los valores en una tabla en otra sesion o bien que pueda guardarlo en un mapa por ejemplo png y lo incluya en el fpg directamente  y de esa manera lo podria utilizar como una tabla.....en div existe la funcion  save("carpeta1/mapa.dat") y load("carperta1/mapa.dat") pero en divgo al ser por navegador ni idea .........
Con lo cual,mi sugerencia es ,si no puedo abrir y guardar documentos de la extension que ponga,es que pueda con el lenguaje divgo poder crear un mapa ,le asigno en cada pixel,el color que yo quiero y que lo guarde directamente en el fpg que determine con el numero que yo indique y  de esta manera podria ,luego cargar el grafico ,leerlo como una tabla y solvento el inconveniente.
Un saludo.

Hola oskarg,

En DivGO puedes guardar o enviar datos de 3 tipos: datos locales, sesión y enviando los valores fuera para que se ocupe un lenguaje de entorno servidor (PHP, ASP, JSP). En entorno servidor es como puedes crear archivos, escribirlos, leerlos y borrarlos.

Aquí te dejo un ejemplo sencillo de como enviar y recuperar datos de puntuación: https://www.divgo.net/c-87f99b8c (https://www.divgo.net/c-87f99b8c)

Y con este código en PHP guardas y recuperas esos datos en un archivo mapa.dat:
<?php    if (isset($_GET['DivGOvar'])) { //obtiene los datos con save_external_data();
        
$file fopen('mapa.dat''w');
        
fwrite($file$_GET['DivGOvar']);
    } else {
        
$file fopen('mapa.dat''r');
        
$contenido fread($filefilesize('mapa.dat'));
        
        echo 
$contenido//esto lo recogera load_external_data();
    
}

    
fclose($file);

Este archivo es el guardar_datos_archivo.php, que esta utilizando las funciones  save_external_data() y load_external_data().

Puedes guardar y recuperar cualquier tipo de información en el .dat. La información en bytes de una imagen la puedes obtener con la función graphic_explorer().

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 25, 2019, 02:10:02 PM
Hola Amaka....
1.Gracias de antemano...pero el ejemplo que has puesto por mas que guarde la puntuacion tocando s y luego la intento cargar pulsando L siempre me da 0.no recupero el valor.......

2.Quiero guardar una tabla[] con x valores.....

3.Respecto lo de php...podrias ser mas preciso...mas extenso en la explicacion,pues me siento perdido....lo tengo que hacer de forma externa?¿?fuera de divgo?¿?.como?¿?

4.No seria mas practico poder crear una nueva funcion y con instrucciones de divgo poder insertar un nuevo mapa directamente al fpg...ejemplo de la nueva funcion...insert_map_fpg(fichero,numero del png donde queremos poner  o posicionar el nuevo png en el fpg).....De esta manera de forma simple puedo utilizar un mapa de un pixel de alto y x de ancho y luego solo debo leer pixel a pixel la posicion...luego seria cuestion rellenar la tabla con este contenido y no seria tan rebuscado.....ES decir previamente creo un new_map de un tamaño cualquiera,luego lo pinto,luego lo inserto al fpg  y de esa manera ya tengo un mapa creado que lo utilizo como informacion..
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 25, 2019, 02:30:29 PM
Quote from: oskarg on February 25, 2019, 02:10:02 PM
Hola Amaka....
1.Gracias de antemano...pero el ejemplo que has puesto por mas que guarde la puntuacion tocando s y luego la intento cargar pulsando L siempre me da 0.no recupero el valor.......

2.Quiero guardar una tabla[] con x valores.....

3.Respecto lo de php...podrias ser mas preciso...mas extenso en la explicacion,pues me siento perdido....lo tengo que hacer de forma externa?¿?fuera de divgo?¿?.como?¿?

4.No seria mas practico poder crear una nueva funcion y con instrucciones de divgo poder insertar un nuevo mapa directamente al fpg...ejemplo de la nueva funcion...insert_map_fpg(fichero,numero del png donde queremos poner  o posicionar el nuevo png en el fpg).....De esta manera de forma simple puedo utilizar un mapa de un pixel de alto y x de ancho y luego solo debo leer pixel a pixel la posicion...luego seria cuestion rellenar la tabla con este contenido y no seria tan rebuscado.....ES decir previamente creo un new_map de un tamaño cualquiera,luego lo pinto,luego lo inserto al fpg  y de esa manera ya tengo un mapa creado que lo utilizo como informacion..
Hola oskarg,

1. No te va a guardar porque te lo he puesto para que puedas probarlo en tu local, en divgo.net no está el archivo guardar_datos_archivo.php. Prueba ese código copiando el código php en tu local.
2. En vez de una variable como puntos, pásale el nombre de la tabla, te guardará todo su contenido.
3. En la carpeta de ejemplos, existe un archivo php (guardar_datos_bbdd.php) para el ejemplo (ejemplo_external_data.prg). Prueba en copiar el código php que te he puesto en la misma carpeta con el nombre guardar_datos_archivo.php o como quieras llamarlo luego desde las funciones save_external_data() y load_external_data().
4. No se puede, para eso requiere un lenguaje en entorno servidor, Javascript por seguridad no puede manipular archivos locales, estarías manipulando archivos del ordenador del usuario desde una página web, desde el navegador, eso sería altamente inseguro.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 25, 2019, 03:30:30 PM
Hola Amaka,
Mil gracias ya se como funciona a la hora de guardar  valores,con variables o por tablas,disculpa sin tu ayuda no hubiera sido capaz de solventarlo......pues ni idea de php.
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 25, 2019, 04:30:57 PM
Me alegra que te haya funcionado. :)

En realidad no es difícil y el código PHP que he puesto es muy sencillo haciendo uso de las funciones fopen, fwrite y fread, y esto creo recordar que también estaba en Div 2.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 06, 2019, 07:33:05 AM
Buenos días Amaka,
Hace tiempo que no veo actividad ,me imagino que estás bien ocupado con tu trabajo ,aún así  "pa cuando" una nueva versión???.
Por mi parte cuando termine lo que estoy haciendo te lo paso para que lo publiques y así ampliamos el abanico de juegos y tutoriales para divgo.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 08, 2019, 07:32:13 AM
Hola oskarg,

Tenía pensado sacar versión a principios de Marzo, pero... Para la próxima versión estoy haciendo muchos cambios y mejoras (optimizando la librería, compilador e IDE), ahora tengo el IDE inestable por cambios en el sistema de pestañas, es con lo que estoy ahora y con esto se corregirá también el problema al pulsar Ctrl+z. :)

Habrá muchas mejoras internas, y con el cambio del sistema de scroll también estoy probando con otra novedad que tengo que testear un poco más.

Aprovechare semana santa para darle las ultimas pinceladas, espero sacar versión para antes de Mayo.
QuotePor mi parte cuando termine lo que estoy haciendo te lo paso para que lo publiques y así ampliamos el abanico de juegos y tutoriales para divgo.
Perfecto! :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 08, 2019, 08:50:49 AM
Hola Amaka,
1.Son buenas noticias ,gracias por  poco a poco ir mejorando tu engine,pues  motiva bastante ver como  va evolucionado y puliendo aspectos.

2.Una cuestion,el put_pixel es muy lento,lo se..me imagino  que es por la mecanica de como se comporta Divgo ...Ni idea yo de javascript ,pero aqui hay un ejemplo de put_pixel y va bastante rapido.............https://stackoverflow.com/questions/4899799/whats-the-best-way-to-set-a-single-pixel-in-an-html5-canvas

3.Una sugerencia echo de menos una forma sencilla de hacer recorridos ,paths....de una nave etc,con curvas..En processing existe  CurvePoint(a,b,c,d,t) https://processing.org/reference/curvePoint_.html o bien tener una funcion que haga una curva bezierPoint....entonces obtengo los puntos ...luego seria cuestion de hacer un interpolado para hacer el recorrido de estos y de esta forma tengo una forma simple de mover las cosas o mejor aun añadir el CreateJS  tweens...aunque  desconozco si esto es factible por causas de rendimiento,ni idea.....aunque tambien puedo tener guardados esos puntos de forma previa y hacer tal recorrido.... :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 09, 2019, 07:36:12 AM
Quote from: oskarg on April 08, 2019, 08:50:49 AM
2.Una cuestion,el put_pixel es muy lento,lo se..me imagino  que es por la mecanica de como se comporta Divgo ...Ni idea yo de javascript ,pero aqui hay un ejemplo de put_pixel y va bastante rapido.............https://stackoverflow.com/questions/4899799/whats-the-best-way-to-set-a-single-pixel-in-an-html5-canvas (https://stackoverflow.com/questions/4899799/whats-the-best-way-to-set-a-single-pixel-in-an-html5-canvas)

3.Una sugerencia echo de menos una forma sencilla de hacer recorridos ,paths....de una nave etc,con curvas..En processing existe  CurvePoint(a,b,c,d,t) https://processing.org/reference/curvePoint_.html (https://processing.org/reference/curvePoint_.html) o bien tener una funcion que haga una curva bezierPoint....entonces obtengo los puntos ...luego seria cuestion de hacer un interpolado para hacer el recorrido de estos y de esta forma tengo una forma simple de mover las cosas o mejor aun añadir el CreateJS  tweens...aunque  desconozco si esto es factible por causas de rendimiento,ni idea.....aunque tambien puedo tener guardados esos puntos de forma previa y hacer tal recorrido.... :P

Esto es lo que tiene basicamente put_pixel() de DivGO:
    var put_pixel = function (x, y, color) {
        var screen = DivGO.contextoScreen;
        if (typeof color === 'number') color = DivGO.functions.rgb(color, color, color);

        screen.fillStyle = color;
        screen.globalAlpha = 1;
        screen.fillRect(x, y, 1, 1);
    }

Hago uso de fillRect(), aquí tienes una comparativa de performance con otras opciones: https://jsperf.com/setting-canvas-pixel/46

Si pruebas en distintos navegadores, fillRect() en Firefox no es la opción más rápida pero tampoco es la peor y en cambien en Chrome es la más rápida. :)

Para el recorrido de una nave se puede ir guardando los puntos en un array o struct con las coordenadas x e y. En este ejemplo se usa puntos de control: https://www.divgo.net/c-df6b4c63

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 09, 2019, 07:22:30 PM
Te ha quedado muy chulo el movimiento amaka.

Pero creo que deberias introducir una funcion interna para esto,por ejemplo:
-advancePoint(x,y,velocidad,tipo)
El parametro tipo seria para que el movimiento sea recto o curvo.

Llevo un tiempo utilizando los lenguajes divlikes y aunque los divlikes son muy chulos y asequibles(sobre todo para crear juegos simples),cuando tratas de añadir cosas un poco mas complejas tienes que crearlo todo desde cero y se complica bastante el tema.

Por eso hecho en falta que tengan una buena coleccion de funciones que te ayuden en la mayoria de cosas que pueden venir en los juegos,de la misma forma que trae contruct 2 o gamemaker.

Esto es algo que no entiendo porque no se hace en ningun divlike,se supone que estos lenguajes estan diseñados para crear juegos pero no traen funciones para ayudarte en esa tarea,lo que si traen son funciones para hacer cositas con los graficos,sonidos,calculos etc...

Pero esto ya lo traen las librerias graficas,por lo que la unica diferencia que le veo con una libreria grafica son los procesos.

No te lo tomes como una critica,esto solo es un pensamiento que tengo y que solo me  gustaria que estos lenguajes fueran una ayuda real para hacer juegos.Yo pienso que estos lenguajes estan mas que finalizados y si se le añadieran esas funciones que llevo comentando hace tiempo en otro foro serian mas atractivos.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 10, 2019, 08:15:19 PM
Quote from: hokuto40 on April 09, 2019, 07:22:30 PM
Te ha quedado muy chulo el movimiento amaka.

Pero creo que deberias introducir una funcion interna para esto,por ejemplo:
-advancePoint(x,y,velocidad,tipo)
El parametro tipo seria para que el movimiento sea recto o curvo.

Llevo un tiempo utilizando los lenguajes divlikes y aunque los divlikes son muy chulos y asequibles(sobre todo para crear juegos simples),cuando tratas de añadir cosas un poco mas complejas tienes que crearlo todo desde cero y se complica bastante el tema.

Por eso hecho en falta que tengan una buena coleccion de funciones que te ayuden en la mayoria de cosas que pueden venir en los juegos,de la misma forma que trae contruct 2 o gamemaker.

Esto es algo que no entiendo porque no se hace en ningun divlike,se supone que estos lenguajes estan diseñados para crear juegos pero no traen funciones para ayudarte en esa tarea,lo que si traen son funciones para hacer cositas con los graficos,sonidos,calculos etc...

Pero esto ya lo traen las librerias graficas,por lo que la unica diferencia que le veo con una libreria grafica son los procesos.

No te lo tomes como una critica,esto solo es un pensamiento que tengo y que solo me  gustaria que estos lenguajes fueran una ayuda real para hacer juegos.Yo pienso que estos lenguajes estan mas que finalizados y si se le añadieran esas funciones que llevo comentando hace tiempo en otro foro serian mas atractivos.
Hola hokuto,

Me apunto tu consejo de función, aunque me suena que ya hay algo muy similar. Siempre son bienvenidas las propuestas, indicando como funcionaria y tal. Como has hecho.
Te recomiendo que crees un post en Div GO proponiendo funciones y que usos tendría, como se aplicaría en el juego, lo que se te vaya ocurriendo. Y yo por mi parte me las iré mirando y si veo que las puedo incluir, estarán disponibles. :)

También me tiro muchos días (o semanas), intentando añadir cosas nuevas, funcionalidades o mejoras que luego por cualquier razón no consigo que acaben de funcionar como quiero y acabo apartándolas para más adelante y puede dar la sensación de dejadez. Ahora mismo me está pasando con las pestañas del IDE, me tienen frito y acabará en un stash para más adelante. :P

Tranquilo, no me lo tomo como una crítica, yo también tengo el culo pelado de probar otras herramientas de desarrollo de juegos y siempre acabo en un Divlike por comodidad, lo último que he estado tocando es Pico8 y Phaser.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 10, 2019, 09:12:59 PM
Hola amakast,esa funcion que te he sugerido se me ha ocurrido en el momento,no lo he pensado mucho la verdad,pero para esto tienes una solucion.

Yo mismo le hice la sugeriencia hace tiempo a erkosone sobre los path y comentandole algunos retoques,hasta que quedo algo muy chulo y super facil de usar.Lo mejor que puedes haces es descargarte la gamelibzero version javascripts de erkosone y copiar la clase de path y adaptarla a divgo.Esto esta ya hecho y funciona perfecto y te aprovechas del trabajo de otro.

Otra cosa,acabas de decir que quieres que te haga sugerencias,sabes que soy muy pesado y un dolor en el culo.Esto es como abrir la caja de pandora,¡estas seguro de lo que acabas de decir!.

Hablando en serio,creo que lo mejor es empezar por la interfaz de divgo antes de darte alguna sugerencia de funciones,yo no he podido programar nada todavia por culpa de la interfaz.Ya sabes que te dije que se come un trozo de la interfaz mi ordenador y no puedo trabajar con comodidad.

Abro otro hilo sobre sugerencias y te comento por alli,lo del path de gamelibzero,si quieres te pongo como es la clase de los path,aunque es mejor que lo veas tu mismo.

Por cierto,pico8 no lo he probado y phaser si.Phaser tiene algunas ayuditas pero cuanto mas profundizas en el mas te das cuenta lo mal que esta planteado,funciones con nombres muy largos,utilizar los puntos para acceder a los metodos(yo.el.tu.tarari() estos estan locos con tantos puntos) y todo esta muy mal planteado,no se lo que la gente le vera a este engine.

Si quieres coger buenas ideas.lo mejor es que pruebes gamemaker y contruct2.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 11, 2019, 07:38:16 AM
Quote from: hokuto40 on April 10, 2019, 09:12:59 PM
Otra cosa,acabas de decir que quieres que te haga sugerencias,sabes que soy muy pesado y un dolor en el culo.Esto es como abrir la caja de pandora,¡estas seguro de lo que acabas de decir!.
Por mi parte nunca he dicho que no se pueda sugerir cosas para DivGO, cuantas más sugerencias mejor. Otra cosa es que pueda aplicarlas. :P
Quote from: hokuto40 on April 10, 2019, 09:12:59 PM
Por cierto,pico8 no lo he probado y phaser si.Phaser tiene algunas ayuditas pero cuanto mas profundizas en el mas te das cuenta lo mal que esta planteado,funciones con nombres muy largos,utilizar los puntos para acceder a los metodos(yo.el.tu.tarari() estos estan locos con tantos puntos) y todo esta muy mal planteado,no se lo que la gente le vera a este engine.

Si quieres coger buenas ideas.lo mejor es que pruebes gamemaker y contruct2.
A mí lo de los puntos no me desagrada, es como funciona Javascript:

document.getElementById("id").parentNode.nodeName;
document.getElementsByTagName("div")[0].getAttribute("class");

Y los hay de más largos. xD


Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 12, 2019, 03:49:57 PM
He probado el ejemplo de colision y no funciona,los que estan mas abajo no me salen por el problema que ya te he comentado con la pantalla.

Me da este error.

28 scroll[0].alpha0 = 20; scroll[0].alpha1 = 10; -- VARIABLE NO DEFINIDA!
29 scroll[1].alpha0 = 80; scroll[1].alpha1 = 40; -- VARIABLE NO DEFINIDA!
45 scroll[0].y0 += 0.5; scroll[0].y1 += 0.25; -- VARIABLE NO DEFINIDA!
46 scroll[1].y0 += 2; scroll[1].y1 += 1; -- VARIABLE NO DEFINIDA!
76 scroll.x0 += 0.5; scroll.x1 += 0.25; -- VARIABLE NO DEFINIDA!
77 scroll[1].x0 += 2; scroll[1].x1 += 1; -- VARIABLE NO DEFINIDA!
82 scroll.x0 -= 0.5; scroll.x1 -= 0.25; -- VARIABLE NO DEFINIDA!
83 scroll[1].x0 -= 2; scroll[1].x1 -= 1; -- VARIABLE NO DEFINIDA!

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 15, 2019, 08:04:19 AM
Lo de las variables de scroll cambió en la versión 1.80 por una nueva estructura más limpia y con más variables, y para añadir más planos en un futuro.

Por lo que ahora: scroll[0].x0 paso a ser scroll[0].front.x y scroll[0].x1 por scroll[0].back.x.

Y así ahora cada plano soporta de manera independiente variables como: tone, blur, grayscale, alpha... Como los procesos.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 15, 2019, 09:38:49 AM
He descargado algun ejemplo de tu pagina,pero solo trae el archivo prg.Como se puede descargar los graficos.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 15, 2019, 01:23:35 PM
Todos los ejemplos de la web funciona con los gráficos de la carpeta "./graficos/".
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 16, 2019, 10:20:19 AM
Se me ha ocurrido que podrias meter un acceso de teclado a los botones y editores que trae divgo,ejemplo:

Podrias poner en f1 y f2 el poder abrir y guardar los prg,con esto ya puedo hacer algo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 22, 2019, 09:27:24 PM
Ya está disponible online (para realizar testeos) la versión 1.20.0 de Div GO, y las novedades: 



funciones:
   - set_half_scroll(), key_on(), key_out();

struct scroll:
   - half: x, y, alpha, blur, grayscale, invert, sepia, tone, saturate, brightness;

bugs y mejoras:
   - [ADD] nuevo plano de scroll entre el front y el back, se activa con set_half_scroll()
   - [ADD] optimización de código en el compilador
   - [ADD] optimizado el funcionamiento del teclado
   - [FIX] carga asíncrona de gráficos de formatos distintos a .map
   - [FIX] corregido qsort que dejo de funcionar en versiones anteriores
   - [FIX] degradado de textos y primitivas
   - [FIX] funcionamiento de get_id()
   - [DEL] sistema antiguo de teclado que recorría y comparaba el evento de la tecla pulsada
   - [CHANGE] nuevo sistema de pestañas, ahora se pueden tener más de 4 pestañas
   - [CHANGE] cambio en los estilos del ide para resoluciones más pequeñas
   - [UPDATE] actualizado codemirror a versión mas reciente




Y los ejemplos en breve...

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 23, 2019, 08:35:28 AM
Ejemplo de set_half_scroll(): https://www.divgo.net/c-5ba39ce4
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 23, 2019, 09:40:01 AM
Hola amakast.

He probado la version web y ahora si que veo todo aunque la lista de ejemplos solo veo hasta el ejemplo de efecto en region,pero esto me da igual,lo importante era la interfaz y ahora si puedo hacer cositas,gracias. ;)

Cuando tengas la version en descarga me pondre a probarlo en profundidad.El ejemplo set_half_scroll() no sale,es otro ejemplo mas antiguo el que sale.

Una preguntita,me comentastes algo sobre divgo 2.0,que tienes pensado hacer para esta version,algun cambio grande o solo pequeñas cositas.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 23, 2019, 01:38:30 PM
Hola hokuto40,

El ejemplo se parece a otro antiguo pero veras que hay un scroll con 3 planos y el del medio esta cambiando la tonalidad de forma constante con un efecto blur.

Sobre la 2.0, todo sobre la marcha, todavía quedan muchas versiones hasta llegar. Por ejemplo, cuando alcanzo Div GO la versión 1.0 tenía muchísimas más cosas de las que yo había imaginado en un principio. Y tampoco creía que iba a continuar después de la 1.0. Aunque sí que me gustaría para la 2.0 un IDE que tuviera ayudas mientras programas o te aconsejara sobre las funciones como hace los IDEs más modernos y que el render fuera completamente en webGL, esto ya sería lo ideal. :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 23, 2019, 03:42:20 PM
Pues algo estoy haciendo mal o no entiendo algo ,porque este es el codigo que veo y no veo donde estas utilizando esa funcion.

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
    points = 0;
    hi_score = 0;

begin
set_title("My Program Name");
    set_icon("graficos/009.png");

// screen canvas options
set_mode(480, 320);
screen_color(cc_silver);

set_fps(60, 0);

// call a process
my_process(240, 160);

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process my_process(x, y);
private
//declared private variables
    energy = 100;
    life = 3;
   
begin
graph = 9;
size  = 100;
z   = 10;

loop

frame;
end
end
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 23, 2019, 07:54:27 PM
Quote from: hokuto40 on April 23, 2019, 03:42:20 PM
Pues algo estoy haciendo mal o no entiendo algo ,porque este es el codigo que veo y no veo donde estas utilizando esa funcion.
Pues sí, tienes razón... Hay un bug! Las nuevas pestañas no cargan los códigos de ejemplo. :P

Sacare versión incluyendo unos pequeños cambios en los estilos que estaba aplicando ya para la próxima versión... Que se le va a hacer.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 23, 2019, 11:01:32 PM
Ya está corregido, al final los cambios de estilos que estoy aplicando los he guardado para la próxima versión.  ::)

Ahora ya puedes probar el ejemplo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 24, 2019, 08:28:47 AM
Quote from: AmakaSt on April 23, 2019, 11:01:32 PM
Ya está corregido, al final los cambios de estilos que estoy aplicando los he guardado para la próxima versión.  ::)

Ahora ya puedes probar el ejemplo.

En google chrome funciona bien pero en firefox se queda cargando y de hay no sale.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 24, 2019, 09:28:15 AM
Firefox (desde hace muy pocas versiones) está bloqueando los rastreadores de Google Analytics y ralentiza / bloquea las cargas. Tendré que mirar de hacer algo con esto, tal vez lo quite de www.divgo.net de forma definitiva.

Y aquí un ejemplo nuevo, funcionamiento de key(), key_on() y key_out(): https://www.divgo.net/c-5e68c540

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on April 24, 2019, 09:59:43 AM
Buenas AmakaSt :)

Antes de que se empiece a usar, creo que sería buena idea cambiar key_on por key_in.

key_on es más como mantener, key_in es como la tecla que acaba de entrar. Y además es más fácil de asociar key_in y key_out, ya que in & out son antónimos
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 24, 2019, 10:08:09 AM
Quote from: panreyes on April 24, 2019, 09:59:43 AM
Buenas AmakaSt :)

Antes de que se empiece a usar, creo que sería buena idea cambiar key_on por key_in.

key_on es más como mantener, key_in es como la tecla que acaba de entrar. Y además es más fácil de asociar key_in y key_out, ya que in & out son antónimos
Buenas panreyes,

Gracias por la explicación, lo cambiaré para esta versión antes de ponerlo para descargar, es una corrección fácil. :)

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on April 25, 2019, 03:21:10 AM
ambos son confusos... no son intuitivos... yo te sugeriria llamarlas key_press_started/key_press_ended o key_pressed/key_released, tambien podria ser key_on y key_off, aunque solo la primera started/ended indican un estado delta o evento, los demas podrian ser confundidos como un estado permanente... o sea, esta presionada? esta liberada? key_press_started da a entender claramente que inicia la pulsacion y key_press_ended que finaliza... tambien podrias hacer que key(tecla) devuelva 0 cuando no esta pulsada, 1 cuando esta pulsada, 2 cuando inicia la pulsacion y 4 cuando finaliza (podrias tambien combinarlo como manejo de bits, con lo que inicio seria 3 y soltarla seria 5)

creo que seria mucho mejor ese comportamiento que agregar funciones... no se, son sugerencias.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 25, 2019, 07:39:52 AM
Quote from: SplinterGU on April 25, 2019, 03:21:10 AM
ambos son confusos... no son intuitivos... yo te sugeriria llamarlas key_press_started/key_press_ended o key_pressed/key_released, tambien podria ser key_on y key_off, aunque solo la primera started/ended indican un estado delta o evento, los demas podrian ser confundidos como un estado permanente... o sea, esta presionada? esta liberada? key_press_started da a entender claramente que inicia la pulsacion y key_press_ended que finaliza... tambien podrias hacer que key(tecla) devuelva 0 cuando no esta pulsada, 1 cuando esta pulsada, 2 cuando inicia la pulsacion y 4 cuando finaliza (podrias tambien combinarlo como manejo de bits, con lo que inicio seria 3 y soltarla seria 5)

creo que seria mucho mejor ese comportamiento que agregar funciones... no se, son sugerencias.
Pensé en key_on() y key_out() por nombrarlos de manera similar a como están los fade() con fade_on() fade_off(). Aun así, sí que es verdad que puede ser algo confuso teniendo un nombre tan corto.

Lo del retorno en key() ni me lo había planteado por que actualmente devuelve true o false, 1 o 0. Pero sí que podría estar bien devolver otro valor según el estado y no afectaría a los juegos y ejemplos que ya hay creados.

Gracias por las sugerencias SplinterGU. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 25, 2019, 01:56:30 PM
Lo mejor es lo que dije al principio,key_pressed() y key_releassed(),creo que esto es lo mas claro.

Hacerlo todo desde el key() me parece que seria algo confuso de primeras.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on April 25, 2019, 02:19:13 PM
No me disgusta la idea de que key devuelva un valor numérico asociado al evento, pero sería problemático con los juegos que ya existan cuando se dejase de pulsar el botón, provocaría una latencia de un frame.

Hasta donde sé, tengo entendido que en Bennu 0 es false y el resto de números, negativos o positivos, es true. ¿Me equivoco?
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on April 25, 2019, 07:07:37 PM
Quote from: panreyes on April 25, 2019, 02:19:13 PM
No me disgusta la idea de que key devuelva un valor numérico asociado al evento, pero sería problemático con los juegos que ya existan cuando se dejase de pulsar el botón, provocaría una latencia de un frame.

Hasta donde sé, tengo entendido que en Bennu 0 es false y el resto de números, negativos o positivos, es true. ¿Me equivoco?

cualquier numero diferente de 0 es true... en una condicion.... con respecto a 1 frame no me parece sea algo critico cuando un juego al menos tiene 24 frames y por lo general todos intentan programar los juegos a 60... podria afirmar con casi un 100% de certeza que 1 frame es despreciable...

tambien puede ser una funcionalidad/modo habilitable con algun comando o una variable o algo... key_on y key_off podria ir bien tambien... pero son variable de estados no son ni eventos ni funciones...

vamos que es todo una sugerencia...
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on April 25, 2019, 07:23:19 PM
la idea del bit es a partir de como funcionaron los primeros controladores de teclado, los scancodes de los XT (IBM PC XT)... donde el bit 7 indica cuando la tecla es soltada... o sea, los controladores solo envian las teclas cuando se pulsan y cuando se suelta, la diferencia es que cuando se suelta el bit 7 esta prendido...
o tambien podria ser una nueva key_stats(tecla), key_status(tecla) o key_extended_info(tecla); y ahi retornar false/true o 0/1 (si se quieren luego poder agregar mas bits) que indique si se pulso o se libero...
ideas nomas...
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 26, 2019, 08:55:40 AM
Hola amakast.

Hay alguna forma de ocultar la pantalla de la izquierda donde salen los procesos,porque el editor se ve muy pequeño y si pongo programar a tamaño completo se ve todavia mas pequeño.
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4205)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 26, 2019, 03:09:22 PM
Hola hokuto40,

En principio ya lo tienes minificado, tendría que reducir el tamaño del listado de procesos para que se te muestre más pequeño. Yo suelo trabajar en resolución 1920x1080 y el listado de procesos se ve bien, incluso a 1280x720 que era en la resolución más pequeña en la que pensaba cuando diseñe el IDE para Desktop, más pequeño que eso son tablets y móviles.

Para la próxima versión mirare de corregirlo un poco para resoluciones más pequeñas. :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 26, 2019, 03:10:35 PM
Ya disponible para descargar la versión 1.20.0 de Div GO: http://www.amakasoft.com/herramientas/div-go.html
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 28, 2019, 07:43:01 PM
Hola amakast.

Me gustaria usar distintos archivos prg para tener el codigo mas ordenado y he intentado hacerlo como con gemix con la palabra include "prg" pero no funciona,dime como puedo hacer esto.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 29, 2019, 07:39:45 AM
Quote from: hokuto40 on April 28, 2019, 07:43:01 PM
Hola amakast.

Me gustaria usar distintos archivos prg para tener el codigo mas ordenado y he intentado hacerlo como con gemix con la palabra include "prg" pero no funciona,dime como puedo hacer esto.
Hola hokuto40,

En principio poniendo include "ruta/archivo.prg"; tendría que funcionar, pero debes ponerlo entre program y begin y el prg que vayas a incluir no debería de tener program, solo procesos y funciones.

Hace tiempo que lo hice y que no lo pruebo, tampoco he hecho ningún cambio en esto.  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 29, 2019, 09:07:47 AM
No me funciona,los prg los tengo en la carpeta www para no tener que poner niguna ruta,tambien tengo una variable global para la carga de graficos que usa cada proceso y no se si puede estar dando problemas.

Creo que es mejor que me pongas un pequeño ejemplo para verlo con mas claridad.

Por cierto,ya tengo el tema de colores,me ha quedado por colorear la pantalla izquierda donde salen los procesos pero no encuentro donde cambiar los colores.

Pero tampoco me molesta por eso te paso el tema para que lo metas para la proxima version,ponle el nombre que quieras.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 30, 2019, 06:29:26 AM
Quote from: hokuto40 on April 29, 2019, 09:07:47 AM
No me funciona,los prg los tengo en la carpeta www para no tener que poner niguna ruta,tambien tengo una variable global para la carga de graficos que usa cada proceso y no se si puede estar dando problemas.

Creo que es mejor que me pongas un pequeño ejemplo para verlo con mas claridad.

Por cierto,ya tengo el tema de colores,me ha quedado por colorear la pantalla izquierda donde salen los procesos pero no encuentro donde cambiar los colores.

Pero tampoco me molesta por eso te paso el tema para que lo metas para la proxima version,ponle el nombre que quieras.
Me lo revisaré, puede que haya dejado de funcionar correctamente después de tantísimas versiones sin darle un repaso, se han hecho muchos cambios desde que lo implemente.

Para cambiar el color del listado de procesos y el buscar y remplazar, tienes que modificarlo en el archivo estilo.css, seria estas clases:.listadoProcesos {
    float:                left;
   
    border:             1px solid #025;
    border-right:         1px solid #037;
    background-color:    #258;
   
    width:                230px;
    height:                380px;
    min-height:         210px;
   
    font-family:        monospace;
    font-size:            1em;
    text-align:            left;

    overflow:             auto;
}

.buscarRemplazar {
    display:            none;
    clear:                 both;
    float:                 left;
   
    background-color:    rgb(0, 68, 119);
   
    width:                 277px;
    height:             47px;
    padding:            2px 2px 0 2px;
   
    border:             1px solid #025;
    border-top:         0;
    border-right:         0;
}

Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 30, 2019, 09:30:29 AM
Hola Amakast y gracias,pero hay solo esta el color de fondo.

Al final buscando encontre el resto y ya tengo el tema de colores,a costado trabajito y dudo que otra persona haga esto,hubiera estado bien alguna opcion en la interfaz grafica para cambiar los colores desde hay pero bueno listo esta.

Te pongo la descarga con el tema definitivo para que lo pongas en la proxima version.

Ahora otra cosa que te quiero comentar.

He probado el tema de colisiones y veo que divgo tambien arrastra el mismo problema de los demas divlike,me explico.

Si tengo un proceso enemigo y otro de disparo,cuando hago la colision desde el enemigo y le digo que se elimine al colisionar con el disparo todo bien.Pero si desde el disparo tambien hago la colision con el enemigo y le digo al disparo que se elimine hay empiezan los fallos.

El disparo se elimina cuando le da la gana y el enemigo hay veces que se elimina y otras no.Entonces no queda mas remedio que hacer la colision solo desde un proceso.Cuando se va a arreglar este tema,si es que se puede.

Aqui tienes la descarga del tema de colores definitivo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 30, 2019, 10:29:29 AM
Quote from: hokuto40 on April 30, 2019, 09:30:29 AM
He probado el tema de colisiones y veo que divgo tambien arrastra el mismo problema de los demas divlike,me explico.

Si tengo un proceso enemigo y otro de disparo,cuando hago la colision desde el enemigo y le digo que se elimine al colisionar con el disparo todo bien.Pero si desde el disparo tambien hago la colision con el enemigo y le digo al disparo que se elimine hay empiezan los fallos.

El disparo se elimina cuando le da la gana y el enemigo hay veces que se elimina y otras no.Entonces no queda mas remedio que hacer la colision solo desde un proceso.Cuando se va a arreglar este tema,si es que se puede.

Hola hokuto40,

Puedes ponerme un código de ejemplo de este problema o de lo que quieres hacer. Porque por lo que entiendo de tu comentario, no es un problema de los divlikes, estas eliminando un proceso desde otro al colisionar y quieres que el que ha sido eliminado colisione a la vez y elimine también al que lo ha eliminado...   ???

collision() te devuelve el id del proceso con el que colisiona, si lo elimina, ya no colisiona. Y según la prioridad colisionara uno antes que el otro.

Un saludo.



Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 30, 2019, 12:32:27 PM
Si que es un problema de los divlike ya que esto lo puede hacer en gamemaker,contruct 2 y cualquier otro engine que he probado.

process enemigo()
begin
       loop
            if(collision(type disparo))
                break;
            end
            frame;
       end
end

process disparo()
begin
       loop
            if(collision(type enemigo))
                break;
            end
            frame;
       end
end


Como ves me gustaria matar al objeto desde su propio codigo pero no se puede si hay colision con los dos objetos.

No tengo ningun problema en hacerlo todo desde un proceso porque es como lo hago pero creo que esto seria mas comodo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on April 30, 2019, 01:23:02 PM
Aquí tienes la solución:
Quote
process enemigo()
begin
       loop
            if(collision(type disparo))
                break;
            end
            frame;
       end
       frame;
end

process disparo()
begin
       loop
            if(collision(type enemigo))
                break;
            end
            frame;
       end
       frame;
end

Pero es una solución horrible, es una eliminación del proceso sin comunicación alguna. Yo te recomendaría algo como ésto:
Quote
Const
   accion_muere=-1;
End

Global
   struct jugadores[4];
      puntos;
   end
End

Local
   accion;
   jugador;
End

process enemigo()
private
   id_colision;
begin
       loop
            if(id_colision=collision(type disparo))
                jugadores[id_colision.jugador].puntos++;
                id_colision.accion=accion_muere;
                break;
            end
            frame;
       end
end

process disparo(jugador)
begin
       loop
            if(accion==accion_muere)
                break;
            end
            frame;
       end
end
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 30, 2019, 07:20:02 PM
Gracias panreyes. :)

Creo que lo mejor sera hacerlo desde el mismo proceso con signal() y me ahorro cosas mas complejas.

Hay algo que llevo tiempo queriendo hacer pero no tengo ni idea de como hacerlo,podrias explicarme tu mismo o amakast como hacer un editor de objetos.

Es decir,me gustaria crear un pequeño ejemplo de juego como el r-type y ir colocando las torretas y otros enemigos a lo largo del nivel y esto tendria que hacerlo desde un editor de objetos.

Alguno de ustedes podria decirme como se hace esto,pero tendria que ser como si se lo explicaras a un niño de 5 años y paso a paso y muuuuuy lentamente,porque soy un poco limitado con la programacion.  :'(
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on May 13, 2019, 09:03:36 AM
Hola amakast.

Te has planteado para el futuro el utilizar phaser 3 para crear las nuevas versiones de divgo,te lo digo porque phaser 3 ya trae una sistema para el manejo de los niveles,tambien trae un sistema para el manejo de animaciones,trae un motor de fisicas y muchas mas cosas de las que te podrias aprovechar para hacer de divgo algo mucho mas completo y actual.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 13, 2019, 03:06:46 PM
Hola hokuto40,

Ya estuve probando de cambiar el motor de DivGO a uno en WebGL, en este caso yo elegí PixiJS, es más rápido que Phaser, aquí te dejo una comparativa de ambos: https://themoonrat.github.io/webgl-benchmark/?library=Pixi&version=v5.0.1&scene=1&objectCount=10000

Aunque dejé de intentarlo por falta de tiempo, requiere de muuuucho tiempo, se debería de cambiar todas las funciones actuales de DivGO. Y si me pego 5 meses con esto y no consigo sacar nada luego la gente se cree que esto está muerto o que su desarrollador pasa de todo.  ???

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on May 14, 2019, 09:32:10 AM
He probado el test y te pongo los resultados,he puesto 1000 objetos para las pruebas.
-phaser 2 = 7 fps
-phaser 3 = 20 fps
-pixi = 60 fps

La diferencia entre pixi y los demas es brutal,creo que tenias que haber metido tambien la libreria que usa divgo para comparar.

Ahora te comento algo que me pasa con divgo,si ejecuto mi aplicacion desde el boton ejecutar desde proyector a veces me sale la pantalla en negro y hay se queda,pero si lo hago con el boton ejecutar no pasa nunca.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 14, 2019, 01:30:14 PM
Yo no he creado esos test, aun así la librería de renderizado 2D de DivGO es propia, en canvas2d de Html5 y es más lento que WebGL (PixiJS y Phaser).

Sobre el bug con el proyector, no consigo que me suceda, ponme el código con el que te suele ocurrir.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on May 14, 2019, 03:19:10 PM
El codigo es mio y es un pequeño ejemplo que hice para ir probando divgo,el fallo solo me ocurre de tarde en tarde,como suelo probar cada vez que meto codigo nuevo pues estoy compilando y ejecutando muchas veces.

Son unas 220 lineas de codigo,a lo mejor es mucho para analizar pero si quieres lo pongo,tu diras.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 14, 2019, 03:54:43 PM
Como tu veas, si te parece mejor pasármelo por privado... Más que nada es para ver si a mí me pasa el mismo problema con tu código y es causa de un bug.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on May 14, 2019, 07:56:13 PM
No hace falta pasarlo por privado,a mi me gusta compartir con todo el mundo.

Te voy a pasar por aqui el ejemplo empaquetado y dentro tendras tambien el archivo prg para que lo mires,si quieres tambien lo puedes poner en divgo como ejemplo o tutorial.
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on May 15, 2019, 07:17:39 AM
depende de lo que compartas, no ?  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on May 15, 2019, 09:49:12 AM
Quote from: FreeYourMind on May 15, 2019, 07:17:39 AM
depende de lo que compartas, no ?  ;D

Jejejejejeje,logicamente.

Oye!,ya que comentas porque no me prestas un millon de euros,tengo la sensacion de que a ti tambien te gusta compartir. ;D
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on May 16, 2019, 07:01:42 AM
solo me gusta compartir el trabajo y las responsabilidades. si tuviera un millon no estaria aqui sentado
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on May 16, 2019, 08:25:47 PM
enga va, yo pongo mi centimo, ya queda menos para el millón ;)
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on May 18, 2019, 09:14:18 AM
Hola amakast.

No se si has probado gdevelop 5,pero esta hecho con javascripts y pixijs.Es open-source y he pensado que podrias mirar su codigo para coger cosas que te puedan interesar y trasladarlas a divgo,sobre todo el tema de comportamientos que es muy util.
https://github.com/4ian/GDevelop
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 03, 2019, 09:31:51 AM
Hola Amaka, estoy haciendo un editor de tiles espartano pero funcional,la próxima semana lo retomo,pues es cuando tengo día libre . Cuando lo tenga avanzado te lo paso con la idea que se integre en divgo para hacer una especie de divgo_pico y dar de esta manera más versatilidad a este gran engine.
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on June 03, 2019, 02:06:08 PM
Suena interesante ese editor de tiles...
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on June 03, 2019, 03:48:56 PM
Quote from: oskarg on June 03, 2019, 09:31:51 AM
Hola Amaka, estoy haciendo un editor de tiles espartano pero funcional,la próxima semana lo retomo,pues es cuando tengo día libre . Cuando lo tenga avanzado te lo paso con la idea que se integre en divgo para hacer una especie de divgo_pico y dar de esta manera más versatilidad a este gran engine.
Un saludo

Coño!!,esto si que es una buena noticia oskarg. :D
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on June 03, 2019, 03:53:59 PM
Una pregunta amakast.

Hay alguna tecla de acceso directo en el teclado para compilar y ejecutar en el proyector ,lo digo porque cada vez que quiero compilar y ejecutar tengo que desplazar la barra hacia abajo y pulsar el boton,con esto seria mas comodo y rapido hacer pruebas.

Y ya que estoy,habra alguna nueva funcionalidad en la proxima actualizacion.Saludos :)
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on June 05, 2019, 12:57:39 PM
Quote from: AmakaSt on October 15, 2018, 10:41:39 PM
Quote from: oskarg on October 15, 2018, 04:46:07 PM
Hola amaka....
No encuentro ninguna funcion donde pueda cargar un grafico y modificar su tamaño x o y  para luego distorsionarlo y alargarlo y luego pegarlo en otro mapa..
map_xput(file1, 1, 101, x_destination, y_destination, angle1, size1, flags1); este solo cambia de tamaño total deberia haber la posibilidad de cambiar el tamaño x o el tamaño y.

Hola oskarg,
No he pensado en ello, existe alguna función similar en BennuGD o Gemix? Para ponerlo en común con otro Div-like y hacerlo un poco más compatible.


No sé si se ha respondido (aun estoy leyendo por aquí :D) pero existe en BennuGD, y creo que en Fenix, MAP_XPUTNP, pero no tengo la documentación a mano. Permite elegir FPG y mapa de origen/destino, posición, ángulo, flags, alpha, sizex, sizey, y no recuerdo si alguna variable local más.
Title: Re:Div Games en Html5 y Canvas
Post by: Goku jr on June 05, 2019, 01:13:39 PM
En bennugd2 ya no XD
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on June 06, 2019, 02:25:04 AM
Quote from: Goku jr on June 05, 2019, 01:13:39 PM
En bennugd2 ya no XD

como que no existe???!!!! no se llama asi, pero si existe!!! y mejor, mas potenciada!!!
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on June 06, 2019, 10:56:11 AM
Quote from: AmakaSt on November 22, 2018, 08:22:07 AM
Hola oskarg,

1. El valor del input se pasa por offset, en el ejemplo la variable nombre es la que guarda el valor del escrito en el input. Cuando has pulsado en el input el foco del teclado queda en el input y debes de volver a pulsar la pantalla para volver a obtener el control de teclado, lo suyo es crear un gráfico de un botón para forzar que el usuario vuelva a pulsar en pantalla.

2. Si no escribe puede que sea por el bloqueo con la variable pulsado que puse, es un ejemplo sencillo y lo hice sin mirar mucho, prueba en cambiarlo o añadir otro tipo de control de pulsado para que no se escriba muchas veces al pulsar una sola vez.  :)

3. Pues se puede usando fuentes fnt o suavizando la pantalla de juego que suaviza toda la pantalla, con screen_smooth(false). Sí, creo recordar que en Div era así, los textos estaban siempre en una capa por encima de screen y de scroll, salvo write_in_map() que aplicado al graph del proceso va con la z del mismo.

Un saludo.


Para escribir texto, en BennuGD siempre he preferido usar la variable "ascii" en lugar de "scan_code", porque te devuelve letras mayúsculas, minúsculas, con tilde, etc...

También existe la variable global "text_z" o algo similar, que establece la Z de los textos que se escriban a partir de ese momento. Funciona igual que "text_color".
Title: Re:Div Games en Html5 y Canvas
Post by: Drumpi on June 06, 2019, 12:59:49 PM
¿Pero aquí quien está hablando de BennuGD2, pedazo de elitistas del Discord? :D

Bueno, por si os sirve de algo, la beta de mi editor de mapas de tiles está disponible para el que lo quiera usar. No recuerdo qué versión es exactamente, pero permite guardar en dos formatos propios, y como mapas de un FPG, donde cada pixel del mapa es el valor de un tile, y cada mapa del FPG una capa.
http://forum.bennugd.org/index.php/topic,4207.0.html

No me preguntéis cómo funciona por dentro, porque me podría tirar dos años para explicar el código... y otro para acordarme de él :D Es un proyecto GRANDE, BESTIAL.
http://forum.bennugd.org/index.php/topic,4207.0.html
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on June 06, 2019, 01:06:56 PM
Quote from: Drumpi on June 06, 2019, 12:59:49 PM
¿Pero aquí quien está hablando de BennuGD2, pedazo de elitistas del Discord? :D

Bueno, por si os sirve de algo, la beta de mi editor de mapas de tiles está disponible para el que lo quiera usar. No recuerdo qué versión es exactamente, pero permite guardar en dos formatos propios, y como mapas de un FPG, donde cada pixel del mapa es el valor de un tile, y cada mapa del FPG una capa.
http://forum.bennugd.org/index.php/topic,4207.0.html

No me preguntéis cómo funciona por dentro, porque me podría tirar dos años para explicar el código... y otro para acordarme de él :D Es un proyecto GRANDE, BESTIAL.
http://forum.bennugd.org/index.php/topic,4207.0.html

elitismo seria si fuera un circulo cerrado y no te invitaramos... pero las puertas estan abiertas a todos y la invitacion para ti pendiente... eres tu el que no quiere mezclarse con la plebe!
Title: Re:Div Games en Html5 y Canvas
Post by: Goku jr on June 06, 2019, 02:37:14 PM
Quote from: SplinterGU on June 06, 2019, 02:25:04 AM
Quote from: Goku jr on June 05, 2019, 01:13:39 PM
En bennugd2 ya no XD

como que no existe???!!!! no se llama asi, pero si existe!!! y mejor, mas potenciada!!!


Jajaja vale vale!
Ero solo por hacer spam!!
Pero bueno ya basta que este hilo es de otro div-like.


Saludos
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 09, 2019, 09:49:41 AM
Hola Amaka...
Estoy empezando a utilizar la ultima version de divgo..con xamp pero nada mas cargarlo...me sale una barra de abajo con  infinidad de program ,los cuales por mas que le de la tecla x para eliminar no lo consigo y es bastante engorroso.

Una cosa ,en este foro como se incluye graficos que sean visibles desde el inicio....?¿

(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4214)
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on June 09, 2019, 03:53:59 PM
OscarG!!,utiliza la version desktop que funciona bien la otra no la he probado.

Si te refieres a la imagen que has puesto a descargar pues pon el raton encima de ese archivo,pulsa el raton derecho y copia la ruta y luego pones esa ruta en el tag "img".

Por cierto hechale un vistazo a este engine,solo es para que pruebes el editor de niveles que trae para que cojas ideas,ademas te deja editar niveles para su modo 7 tipo doom como si fuera para un juego 2d.
https://www.naalaa.com/
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on June 09, 2019, 05:23:40 PM
Quote from: oskarg on June 09, 2019, 09:49:41 AM
Hola Amaka...
Estoy empezando a utilizar la ultima version de divgo..con xamp pero nada mas cargarlo...me sale una barra de abajo con  infinidad de program ,los cuales por mas que le de la tecla x para eliminar no lo consigo y es bastante engorroso.

Una cosa ,en este foro como se incluye graficos que sean visibles desde el inicio....?¿
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4214)


solo quería ver la imagen...

Yo uso Tiled, exporta en .csv y a imagenes .png
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 09, 2019, 07:02:22 PM
Hola futu...como haces para visualizar imagenes directamente en este foro?¿?nunca he sabido hacerlo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 09, 2019, 07:49:07 PM
GUAU!! que sencillo es usar tiled,buscaba la manera de leer el contenido en un txt.gracias por la informacion futu sobre la extensión csv .lo habia utilizado hace mucho tiempo pero no sabia como sacar el contenido de los numeros..
Con este programa facilita enormemente hacer juegos de plataformas.
Por cierto....gracias hokuto he trasteado el programa que me has dicho, tiene una funcion que va de perlas ...creas un path con puntos y lo suaviza dandote los valores para que los guardes en una tabla,realmente practico.
Programas similares  EGSL y playbasic...son faciles de asimilar .
Title: Re:Div Games en Html5 y Canvas
Post by: Futu-block on June 10, 2019, 08:09:59 AM
Quote from: oskarg on June 09, 2019, 07:02:22 PM
Hola futu...como haces para visualizar imagenes directamente en este foro?¿?nunca he sabido hacerlo.

cuando adjuntes la imagen le das a publicar, luego en el archivo adjunto le haces click derecho y copias el enlace de la imagen, a continuación editas el mensaje y metes esa url dentro de las etiquetas de imagen:
[img] url de la imagen [/img]
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 10, 2019, 09:04:11 AM
Ohhh muchas gracias... ;D ya puedo hacer tutoriales visuales en este foro.genial...
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on June 30, 2019, 12:12:43 PM
Hola Amakast.

He realizado una prueba para asegurarme de que no funciona.

He creado una carpeta con su prg y dentro otra carpeta con graficos y los he colocado en el escritorio,pero divgo me dice que no encuentra la carpeta de los graficos.
He probado a colocarla en c:/ y hay tampoco funciona,solo funciona si la meto en la carpeta www de divgo,no se si esto es un fallo de divgo o es que esta programado de esta manera.

Otra cosa,los distintos prg creados y llamados con include"" siguen sin funcionarme,creo que esto es importante que lo arregles para la proxima version.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 01, 2019, 10:38:10 AM
Quote from: hokuto40 on June 30, 2019, 12:12:43 PM
Hola Amakast.

He realizado una prueba para asegurarme de que no funciona.

He creado una carpeta con su prg y dentro otra carpeta con graficos y los he colocado en el escritorio,pero divgo me dice que no encuentra la carpeta de los graficos.
He probado a colocarla en c:/ y hay tampoco funciona,solo funciona si la meto en la carpeta www de divgo,no se si esto es un fallo de divgo o es que esta programado de esta manera.

Otra cosa,los distintos prg creados y llamados con include"" siguen sin funcionarme,creo que esto es importante que lo arregles para la proxima version.
Hola hokuto40,

No es un fallo de DivGO, tus archivos tienes que ponerlos en un servidor local o subirlo a un servidor remoto, con un protocolo 'http://' o 'https://' para que funcione bien. Pero esto pasa con cualquier web que use javascript, php, node, etc... Ej. en tu local debería de quedar así: http://localhost/mi_juego (http://localhost/mi_juego)

Div GO no es una aplicación ejecutable de sistema operativo, es una web o webapp (como quieras llamarlo), y se abre desde el navegador que tengas por defecto, lo mismo que los juegos que produces con él.

Sí que habrá webs básicas que se ejecuten en el navegador pulsando sobre el html, pero habrá cosas que por seguridad quedan bloqueadas, por seguridad, sobretodo los scripts.

Me miro lo del include y te comento.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 01, 2019, 10:41:12 AM
Quote from: oskarg on June 09, 2019, 09:49:41 AM
Hola Amaka...
Estoy empezando a utilizar la ultima version de divgo..con xamp pero nada mas cargarlo...me sale una barra de abajo con  infinidad de program ,los cuales por mas que le de la tecla x para eliminar no lo consigo y es bastante engorroso.

Una cosa ,en este foro como se incluye graficos que sean visibles desde el inicio....?¿

(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4214)
Hola oskarg,

Lo tengo en pendientes para corregir para la próxima versión, es un cambio grande de las pestañas y tenía claro que algún bug iba a aparecer. :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on July 01, 2019, 06:47:29 PM
Quote from: AmakaSt on July 01, 2019, 10:38:10 AM
Hola hokuto40,

No es un fallo de DivGO, tus archivos tienes que ponerlos en un servidor local o subirlo a un servidor remoto, con un protocolo 'http://' o 'https://' para que funcione bien. Pero esto pasa con cualquier web que use javascript, php, node, etc... Ej. en tu local debería de quedar así: http://localhost/mi_juego (http://localhost/mi_juego)

Div GO no es una aplicación ejecutable de sistema operativo, es una web o webapp (como quieras llamarlo), y se abre desde el navegador que tengas por defecto, lo mismo que los juegos que produces con él.

Sí que habrá webs básicas que se ejecuten en el navegador pulsando sobre el html, pero habrá cosas que por seguridad quedan bloqueadas, por seguridad, sobretodo los scripts.

Me miro lo del include y te comento.

Un saludo.

Yo uso la version portable,pero no hay ningun problema,meto la carpeta del juego en la carpeta www de divgo y ya esta.Simplemente queria saber porque pasaba esto.

Te pongo una imagen de un fallo que al principio no me pasaba y ahora si.
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4223)

Ya ves que me tapa el boton de compilar.

Cuando tengas solucionado lo del include avisame,necesito eso para empezar a diseñar algun juego,porque hacerlo desde un solo prg es un poco lioso si el codigo es grande.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 03, 2019, 06:43:48 AM
Quote from: hokuto40 on July 01, 2019, 06:47:29 PM

Yo uso la version portable,pero no hay ningun problema,meto la carpeta del juego en la carpeta www de divgo y ya esta.Simplemente queria saber porque pasaba esto.

Te pongo una imagen de un fallo que al principio no me pasaba y ahora si.
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4223)

Ya ves que me tapa el boton de compilar.

Cuando tengas solucionado lo del include avisame,necesito eso para empezar a diseñar algun juego,porque hacerlo desde un solo prg es un poco lioso si el codigo es grande.

Hola hokuto40,

Ya tengo arreglado para la próxima versión el problema de las pestañas y el include de código, por lo que pude ver dejo de funcionar hace bastantes versiones. El include se tiene que hacer dentro de program y antes de begin, de las siguientes maneras:
program mi_juego;
global
    puntos = 0;
    energia = 100;

include
    "ejemplos/es/menu_juego.prg",
    "ejemplos/es/codigo_include.prg",
    "ejemplos/es/control_niveles.prg";

begin

program mi_juego;
global
    puntos = 0;
    energia = 100;

include "ejemplos/es/menu_juego.prg";
include "ejemplos/es/control_niveles.prg";
include "ejemplos/es/codigo_include.prg";

begin


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on July 03, 2019, 09:54:18 AM
Gracias Amakast. ;)

El segundo metodo del include es el que utilizo yo pero el primero no lo conocia.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on July 05, 2019, 10:12:59 AM
Hola Amakast.

¿Que editor de niveles me recomiendas para el modo 3d de divgo?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 08, 2019, 09:32:44 AM
Quote from: hokuto40 on July 05, 2019, 10:12:59 AM
Hola Amakast.

¿Que editor de niveles me recomiendas para el modo 3d de divgo?
Ni idea, la verdad. No controlo el tema de modelado 3D ni de los editores que pueda haber actualmente. Yo había trasteado con 3D Studio MAX y ya hace mucho tiempo de eso.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on July 09, 2019, 04:21:02 PM
Quote from: AmakaSt on July 08, 2019, 09:32:44 AM
Quote from: hokuto40 on July 05, 2019, 10:12:59 AM
Hola Amakast.

¿Que editor de niveles me recomiendas para el modo 3d de divgo?
Ni idea, la verdad. No controlo el tema de modelado 3D ni de los editores que pueda haber actualmente. Yo había trasteado con 3D Studio MAX y ya hace mucho tiempo de eso.

Un saludo.
Gracias de todas formas.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on August 23, 2019, 09:32:01 AM
Hola Amakast.

Te voy a pasar un video del juego axelay de super nes,donde se ve un efecto de movimiento circular del fondo.

Me gustaria saber si eso se puede hacer con divgo y si se puede me gustaria que me explicaras como.

Por cierto,el ejemplo de mode7 de divgo me carga pero el movimiento no funciona.

Video:
https://www.youtube.com/watch?v=V3F3l-SiN78
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on August 29, 2019, 09:39:31 AM
Hola Amakast,supongo que no me has contestado porque no sabes la respuesta o porque no se puede hacer en divgo.

Pero si que hubiera agradecido que al menos me contestaras diciendome que no se puede hacer, porque si hago una pregunta y nadie me contesta eso me desmotiva bastante y da una imagen de abandono del engine.Saludos
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 02, 2019, 06:59:24 AM
Quote from: hokuto40 on August 29, 2019, 09:39:31 AM
Hola Amakast,supongo que no me has contestado porque no sabes la respuesta o porque no se puede hacer en divgo.

Pero si que hubiera agradecido que al menos me contestaras diciendome que no se puede hacer, porque si hago una pregunta y nadie me contesta eso me desmotiva bastante y da una imagen de abandono del engine.Saludos
Hola hokuto40,

No es por no saber o porque DivGO no pueda, se te da mal sacar conclusiones. He estado fuera pasando mis vacaciones en familia y el foro funciona horrible en mi móvil a la hora de escribir un mensaje, prefiero esperar a estar delante del ordenador.

Sobre el efecto, creo que se puede realizar usando screen_copy(), new_map(), map_block_copy() y varios bucles y contadores. Y este sería válido para DivGO y para otros Divlikes pero hay que currarse el algoritmo.

El ejemplo del mode7, lo he estado mirando y a mí me esta funcionando bien en distintos ordenadores y navegadores, no sé qué puede estar fallándote.

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on September 02, 2019, 09:29:55 AM
Quote from: AmakaSt on September 02, 2019, 06:59:24 AM
Hola hokuto40,

No es por no saber o porque DivGO no pueda, se te da mal sacar conclusiones. He estado fuera pasando mis vacaciones en familia y el foro funciona horrible en mi móvil a la hora de escribir un mensaje, prefiero esperar a estar delante del ordenador.

Sobre el efecto, creo que se puede realizar usando screen_copy(), new_map(), map_block_copy() y varios bucles y contadores. Y este sería válido para DivGO y para otros Divlikes pero hay que currarse el algoritmo.

El ejemplo del mode7, lo he estado mirando y a mí me esta funcionando bien en distintos ordenadores y navegadores, no sé qué puede estar fallándote.

Un saludo.
Ok,error mio. :-X

El ejemplo que no funciona los cursores para moverse, es el ejemplo de la documentacion start_mode7()
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 02, 2019, 01:18:39 PM
Quote from: hokuto40 on September 02, 2019, 09:29:55 AM
El ejemplo que no funciona los cursores para moverse, es el ejemplo de la documentacion start_mode7()
Tienes razón, acabo de probarlo y en DivGO obliga a poner el ctype = c_m7; para que el proceso o programa este dentro del m7. Tengo que revisarlo, en Div2 recuerdo que indicando que la cámara siguiera al proceso su ctype automáticamente obtenía el valor de c_m7. Pero no recuerdo si lo cambie adrede, porque el ejemplo de start_scene3d() está incluido en el código sino le pasa exactamente igual.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 04, 2019, 07:31:29 AM
Hola Amaka,
en noviembre tengo vacas,pero no las que dan leche  ;D me gustaría hacer en ese tiempo libre algunos juegos y también que estuviera solventado el problema de las ventanas, pués me impide utilizar cómodamente la última versión.
Otra cuestión hace siglos que el ejemplo de come cocos no funciona, personalmente no me importa ,pero es un ejemplo para los nuevos usuarios bastante llamativo.
Por último,ya lo he comentado , comprendo que compaginar trabajo con hobby es complicado,pues en mi caso tengo turno partido y estoy todo el dia fuera de casa.. estaría bien que miraras la página de pico8 como los usuarios muestran sus juegos y tiene una gran comunidad y eso que el engine es mega limitado .la gracia es que puedes jugarlos desde pc, móvil,ver su código y aprender de ello y eso que su forma de programar no es muy trivial.No me preguntes el por qué,pero habría que hacer una reflexión del motivo de que ciertos engines tenga tantos seguidores siendo tan difícil de manejar ahhh y de habla hispana somos tropecientos millones e ignorados  :-X
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 04, 2019, 07:54:07 AM
Por cierto me gustaría que se abriera un nuevo post con listado de sugerencias o roadmap en este foro y de esa manera uno sabe si se va incluir o se tiene pensado hacerlo etc
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on September 04, 2019, 01:10:16 PM
Hola OscarG,es buena idea la de un post con listado de sugerencias,pero yo ya hice uno en abril con muchas sugerencias y despues de ese tiempo solo se ha introducido una,pregunte si se iba a introducir alguna mas pero nunca se me contesto por lo que pienso que no se va a introducir ninguna mas.

Sobre pico8 pues supongo que el exito es por la moda que hay hoy en dia sobre lo retro y tambien hay que reconocer que biene con todo integrado,manual,editor de sprite,de codigo,de niveles y muchos videotutoriales que es algo fundamental hoy en dia si quieres que la gente se interese por tu engine,la pagina tambien es bastante atractiva.

Sobre la comunidad hispana,pues la culpa es de la propia comunidad,no se quejan y aceptan que el mundo de la programacion sea en ingles y si alguien pide documentacion en español pues te dicen que aprendas ingles y es lo que hay.Tampoco apoyan ninguna iniciativa en español,hay tienes el lenguaje latino que no lo usa ni perico el de los palotes y peor todavia es lo de pilasengine que viene con todo en español y tampoco tiene mucho apoyo.

Pero esto esta cambiando en el mundo de los engines,gamemaker studio 2 ya esta traducido en español junto con su documentacion,construct3 tambien y gracias a un español que conozco,gdevelop,godot etc..Las librerias y los frameword estan en otro mundo paralelo...
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 04, 2019, 01:13:24 PM
Quote from: oskarg on September 04, 2019, 07:31:29 AM
Hola Amaka,
en noviembre tengo vacas,pero no las que dan leche  ;D me gustaría hacer en ese tiempo libre algunos juegos y también que estuviera solventado el problema de las ventanas, pués me impide utilizar cómodamente la última versión.
Otra cuestión hace siglos que el ejemplo de come cocos no funciona, personalmente no me importa ,pero es un ejemplo para los nuevos usuarios bastante llamativo.
Por último,ya lo he comentado , comprendo que compaginar trabajo con hobby es complicado,pues en mi caso tengo turno partido y estoy todo el dia fuera de casa.. estaría bien que miraras la página de pico8 como los usuarios muestran sus juegos y tiene una gran comunidad y eso que el engine es mega limitado .la gracia es que puedes jugarlos desde pc, móvil,ver su código y aprender de ello y eso que su forma de programar no es muy trivial.No me preguntes el por qué,pero habría que hacer una reflexión del motivo de que ciertos engines tenga tantos seguidores siendo tan difícil de manejar ahhh y de habla hispana somos tropecientos millones e ignorados  :-X
Un saludo
Hola oskarg,

He estado probando Pacoman en distintos ordenadores y me funciona bien, te da algún tipo error desde la consola del navegador?

Lo de pico8 es un misterio, hay desarrolladores que les gusta que les pongan limitaciones para mostrar de lo que son capaces de hacer con poco e intentar sacarle lo máximo a esa limitación. Hay gente que actualmente desarrolla para Game Boy, Commodore64, Megadrive, etc...

La sugerencia del roadmap me parece bien, cuando tenga un rato me pongo a ello.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 04, 2019, 08:38:59 PM
Captura de lo que pasa al compilar....
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4227)

Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on September 04, 2019, 10:01:39 PM
Quote from: hokuto40 on September 04, 2019, 01:10:16 PM
Hola OscarG,es buena idea la de un post con listado de sugerencias,pero yo ya hice uno en abril con muchas sugerencias y despues de ese tiempo solo se ha introducido una,pregunte si se iba a introducir alguna mas pero nunca se me contesto por lo que pienso que no se va a introducir ninguna mas.

Sobre pico8 pues supongo que el exito es por la moda que hay hoy en dia sobre lo retro y tambien hay que reconocer que biene con todo integrado,manual,editor de sprite,de codigo,de niveles y muchos videotutoriales que es algo fundamental hoy en dia si quieres que la gente se interese por tu engine,la pagina tambien es bastante atractiva.

Sobre la comunidad hispana,pues la culpa es de la propia comunidad,no se quejan y aceptan que el mundo de la programacion sea en ingles y si alguien pide documentacion en español pues te dicen que aprendas ingles y es lo que hay.Tampoco apoyan ninguna iniciativa en español,hay tienes el lenguaje latino que no lo usa ni perico el de los palotes y peor todavia es lo de pilasengine que viene con todo en español y tampoco tiene mucho apoyo.

Pero esto esta cambiando en el mundo de los engines,gamemaker studio 2 ya esta traducido en español junto con su documentacion,construct3 tambien y gracias a un español que conozco,gdevelop,godot etc..Las librerias y los frameword estan en otro mundo paralelo...

no conocia pico8, esta muy bueno... y me estoy dando un vicio terrible!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 05, 2019, 06:50:28 AM
Quote from: oskarg on September 04, 2019, 08:38:59 PM
Captura de lo que pasa al compilar....
(http://forum.bennugd.org/index.php?action=dlattach;topic=3207.0;attach=4227)
Hola oskarg,

Esa versión no es el Pacoman que se incluye en el paquete de Div GO, la función load_pcm() y load_wav() son incompatibles en Div GO cambiaron por una que lo engloba: load_sound(); //y es compatible con pcm, wav, mp3, ogg...

Quote from: hokuto40 on September 04, 2019, 01:10:16 PM
Hola OscarG,es buena idea la de un post con listado de sugerencias,pero yo ya hice uno en abril con muchas sugerencias y despues de ese tiempo solo se ha introducido una,pregunte si se iba a introducir alguna mas pero nunca se me contesto por lo que pienso que no se va a introducir ninguna mas.
Suelo mirarme las sugerencias, pero no por ello voy a incluirlas todas, añado las que son más coherentes con el lenguaje y me resulten posibles de añadir. También te puse algún ejemplo de cómo hacer cosas que pedias (cambiar de nivel sin usar switch()) sin necesidad de añadir una nueva funcionalidad.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 05, 2019, 07:04:23 AM
Hola Amaka,  el motivo de los errores hace tiempo que lo sé ,pero sólo me he conectado a internet , puesto divgo  y ejecutar el ejemplo que trae por defecto
Lo expresó pq si soy un nuevo usuario,desconozco el engine y  trasteo con los ejemplos que trae y no compilan ,no dejaría al momento
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 05, 2019, 07:40:23 AM
Has probado en otro navegador?: Chrome, Opera, Edge...
Me da que tienes, de algún modo, cacheado el código de Pacoman en Firefox.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 05, 2019, 09:47:36 PM
Hola amaka,
acabo de probar lo que me expresas,es problema de firefox  :P
gracias por la info,pues hacia siglos que me salia de tal manera.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 21, 2019, 07:36:55 AM
Hola Amaka, qué tal ?
Como evoluciona divgo?? Hace tiempo que no tenemos noticias de este gran engine y me imagino que es porque el trabajo y la familia te absorbe todo tu tiempo libre,aún así espero que se reactive , pués siempre estoy con ilusión de ver nuevas mejoras .
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 23, 2019, 07:30:55 AM
Hola oskarg,

Estos días he estado algo ocupado con la fiesta de cumple de mis hijos que por desarrollos, no he tenido espacio en mi escritorio para trabajar tan siquiera, por lo que estos días ha evolucionado poco.
Llevo tiempo con una versión que está a punto de salir, desde agosto, pero siempre encuentro algo que pulirle, mejorarle o corregirle. Así que hay una versión pendiente, a ver si encuentro hueco para dedicarle el tiempo necesario y al fin poder lanzarla.  :o

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 15, 2019, 08:40:02 AM
Hola Amaka,
Este lunes  comienzo mis vacaciones y me gustaría hacer en mi tiempo libre un proyecto en divgo o bennugd tipo pico8 que facilite hacer cierto tipo de juegos en 2d .
Te escribo porque hace tiempo no  hay noticias de este gran engine aunque también es cierto que estamos sufriendo últimamente una plaga en este sentido,pues observo que los foros relacionados a div están muy parados .
Espero que cuando puedas reactives divgo , una sugerencia : en pico se puede jugar con mi móvil ,sale unos botones y crucecita táctil.seria   increíble poder jugar a mis juegos en un dispositivo móvil y de esa manera darlo a conocer fácilmente.
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 16, 2019, 10:48:13 AM
Hola oskarg,
Si todo va bien este fin de semana y me dejan, podría salir en breve nueva versión, tengo muchas correcciones y novedades.

La sugerencia del pad un táctil me parece bien, no había pensado en incluir algo así en DivGO porque ya existen las variables de touch y pensé que cada uno puede crear el suyo propio, pero algo estándar que sea fácil de colocar en el juego con solo marcar desde el IDE si se quiere un pad táctil para móvil... Podría funcionar. :)
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 16, 2019, 03:37:46 PM
Me alegra saber que sigues puliendo y añadiendo nuevas características al engine,pues saber que te sigues volcando  en él es gratificante y sobretodo  me gusta divgo por seguir la filosofía de div,sin complicar el lenguaje de forma innecesaria.
.
Voy a disfrutar como un enano y más cuando saques una nueva versión.
Un saludo.


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 16, 2019, 08:25:32 PM
Y ya está, al fin, disponible online (para realizar testeos) la versión 1.24.0 de Div GO, y las novedades: 



funciones:
   - start_bezier_curve(), set_bezier_curve(), stop_bezier_curve(), draw_bezier_curve();
   - base64_to_graph(), graph_to_base64(), get_dist_objects3d();

variables globales:
   - rgb_to_8c, rgb_to_32c

variables locales:
   - line_size, line_color, line_blur

bugs y mejoras:
   - [ADD] optimizado efectos blur en funciones blur_in_map() y region_blur()
   - [ADD] botón de búsqueda de archivos locales al incluir una nueva imagen
   - [ADD] optimización en el escalado del canvas de juego, ahora controla si desde el navegador hay cambio y no de modo constante
   - [FIX] corregido problemas con el nuevo sistema de pestañas, no se ordenaba ni se seleccionaba correctamente
   - [FIX] bloque include
   - [FIX] solucionado algunos problemas de tratado de datos del compilador
   - [CHANGE] cambios y mejoras en los estilos del ide




Ejemplos en breve...

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on November 17, 2019, 11:15:57 AM
Quote from: AmakaSt on November 16, 2019, 08:25:32 PM
Y ya está, al fin, disponible online (para realizar testeos) la versión 1.24.0 de Div GO, y las novedades: 



funciones:
   - start_bezier_curve(), set_bezier_curve(), stop_bezier_curve(), draw_bezier_curve();
   - base64_to_graph(), graph_to_base64(), get_dist_objects3d();

variables globales:
   - rgb_to_8c, rgb_to_32c

variables locales:
   - line_size, line_color, line_blur

bugs y mejoras:
   - [ADD] optimizado efectos blur en funciones blur_in_map() y region_blur()
   - [ADD] botón de búsqueda de archivos locales al incluir una nueva imagen
   - [ADD] optimización en el escalado del canvas de juego, ahora controla si desde el navegador hay cambio y no de modo constante
   - [FIX] corregido problemas con el nuevo sistema de pestañas, no se ordenaba ni se seleccionaba correctamente
   - [FIX] bloque include
   - [FIX] solucionado algunos problemas de tratado de datos del compilador
   - [CHANGE] cambios y mejoras en los estilos del ide




Ejemplos en breve...

Un saludo.

Bravo!!. ;)

Me quedo esperando a la version descargable,puedes explicar un poco por encima para que sirven esas funciones y variables que has introducido.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 17, 2019, 02:11:08 PM
Hola Amaka,
Gracias por la actualización ,la estoy trasteando ahora , se agredece.
1.He actualizado el navegador firefox a la última versión,pues la  que tenía se ralentizaba ..Solventado.
2.Me gusta el nuevo cambio del ide,vistoso y práctico..esperando ejemplo de bloque include.....etc
3.Cuando empaqueto el juego pacoman o juego plataformas ,al ejecutarlo,sólo sale la pantalla en negro....?¿?
  Cuando  empaqueto el juego ejemplo_collision; al ejecutarlo ,cuando disparo  a los tréboles se traba o se para unos segundos todos los procesos y luego funciona otra vez,así sucesivamente.
  Esto no sucede en modo ejecutar en modo proyector... ?¿?¿?
4.El editor gráfico ha quedado algo absoleto,no es algo primordial, pero en un futuro podrías incrementar la posibilidad de poder hacer más zoom.....o undos.
5.Observo que no has añadido la posibilidad de poder elegir si se quiere que se grabe o no el código ,cuando de golpe se cierra la página.A veces me ha pasado que por esta característica haya recuperado un código erróneo  y perdido todo lo que he programado.
De momento nada más,sigo trasteando....
Un saludo.


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 17, 2019, 02:29:25 PM
Hola hokuto40 y oskarg,

Primero cuelgo unos ejemplos de las novedades y luego reviso los problemas:

Ejemplo de get_dist_objects3d(): https://www.divgo.net/c-fb803283
Ejemplo de las bezier_curve: https://www.divgo.net/c-2763719b
Ejemplo de variables locales line_xxx: https://www.divgo.net/c-4c93aa36
Juego Dr. Malvado con efectos de color en región (pulsando 1, 2, 3, 4, 5 o 6 durante el juego): https://www.divgo.net/c-27ea84f2

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on November 17, 2019, 08:18:51 PM
Las funciones de bezier_curve se podria usar para darle movimiento a un sprite o solo es para pintar curvas.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 18, 2019, 08:21:31 AM
Quote from: hokuto40 on November 17, 2019, 08:18:51 PM
Las funciones de bezier_curve se podria usar para darle movimiento a un sprite o solo es para pintar curvas.
En principio solo es para pintar pero creo que tal vez se podría dar movimiento con las funciones actuales... no lo he probado.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 18, 2019, 06:03:40 PM
Hola AmakaSt,
Ya he encontrado el problema ,es a raiz de los navegadores,aunque no entiendo por qué en modo  proyecccion no se produce que los procesos de disparo se bloqueen  y no desaparezcan de golpe.
Utilizo ahora Quzilla y con este ya funciona bien.
Un saludo.

PD:Proyeccion XD... esto de estar haciendo dibujos y juegos a la vez es realmente malo para la mente..MODO RUN IN  PROJECTOR...jeje
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on November 18, 2019, 08:25:35 PM
Hola.

Me he fijado que no has metido el tema de colores que te pase. :'(

Por cierto,mirate esta documentacion de pilasengine 2 sobre comportamientos,sobre todo la parte final donde pone comportamientos personalisados.

Estaria genial que pudieras introducir algo parecido en divgo,con esto los usuarios avanzados podrian crear sus propios comportamientos y compartirlos con la comunidad para que los usara cualquiera y tambien es una manera de extender el lenguaje por parte de los usuarios.

http://manual-pilas-engine.surge.sh/comportamientos.html
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 18, 2019, 10:21:07 PM
Quote from: oskarg on November 18, 2019, 06:03:40 PM
Hola AmakaSt,
Ya he encontrado el problema ,es a raiz de los navegadores,aunque no entiendo por qué en modo  proyecccion no se produce que los procesos de disparo se bloqueen  y no desaparezcan de golpe.
Utilizo ahora Quzilla y con este ya funciona bien.
Un saludo.

PD:Proyeccion XD... esto de estar haciendo dibujos y juegos a la vez es realmente malo para la mente..MODO RUN IN  PROJECTOR...jeje
Hola oskarg,

A mí me funciona bien los juegos empaquetados y creo imaginar que te está pasando, estas ejecutando los juegos directamente pulsando al index.html como si fuera un ejecutable y en la barra de navegación inicia la URL por "file:///C:/....". Esto detiene los scripts en los navegadores modernos por temas de seguridad y no debería de funcionar. Para probar si te funciona bien prueba en ponerlo en una URL tipo: http://localhost/mi_juego/index.html (por ejemplo)

Por eso funciona bien en el proyector, siempre se ejecuta los scripts en http:// y no en file:///


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 18, 2019, 10:25:53 PM
Quote from: hokuto40 on November 18, 2019, 08:25:35 PM

Me he fijado que no has metido el tema de colores que te pase. :'(

Perdona, son muchas cosas y se me paso eso. Estuve arreglando el IDE para que te funcionara mejor en resoluciones más pequeñas, por ejemplo el listado de procesos no debería de comer gran parte de la pantalla. Sobre los colores mirare de incluir nuevos estilos en próximas versiones.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 20, 2019, 02:15:14 PM
Hola AmakaSt,
Como funcionan los sin y cos en divgo?¿?
grados=360
si pongo valor=sin(360)  ....por qué valor=-6?¿?
lo que yo busco que es dando valores en grados  me de un rango de valores de -1 ...0 a     1.

Dicho de otro modo si pongo 360 debe dar 0. si pongo 90 debe dar 1.....etc..etc
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 20, 2019, 02:36:09 PM
vale ,más o menos..
sin(0)= 0                                ok
sin(90000)=-1000 /1000=-1 ?¿? MENOS UNO ?¿??¿?¿? deberia ser 1. ESTA MAL!!!?¿?¿
sin(180000)=0/10000=0        ok
sin(270000)= 1000/10000.....1                                    deberia ser -1..... POR QUÉ ESTÁ AL REVES .esto siempre ha sido así en div XD?¿?
sin(360000)=0......................ok

los signos del seno estan intercambiados pero los de coseno NO ?¿?¿¿ esto es normal?¿¿?
-otra cuestion están ya ordenados los id de los procesos?¿?aquello que te comenté hace tiempo ,pues me ponía los id intercambiados y era un cacao poder trabajar con ellos de esa manera,
-otra cosa...se puede decir el centro de las primitivas graficas como ocurre con los procesos,graficos?¿?es decir,que dibuje por ejemplo el circulo,desde el centro,no desde la esquina
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 20, 2019, 04:53:16 PM
Quote from: oskarg on November 20, 2019, 02:36:09 PM
vale ,más o menos..
sin(0)= 0                                ok
sin(90000)=-1000 /1000=-1 ?¿? MENOS UNO ?¿??¿?¿? deberia ser 1. ESTA MAL!!!?¿?¿
sin(180000)=0/10000=0        ok
sin(270000)= 1000/10000.....1                                    deberia ser -1..... POR QUÉ ESTÁ AL REVES .esto siempre ha sido así en div XD?¿?
sin(360000)=0......................ok

los signos del seno estan intercambiados pero los de coseno NO ?¿?¿¿ esto es normal?¿¿?
-otra cuestion están ya ordenados los id de los procesos?¿?aquello que te comenté hace tiempo ,pues me ponía los id intercambiados y era un cacao poder trabajar con ellos de esa manera,
-otra cosa...se puede decir el centro de las primitivas graficas como ocurre con los procesos,graficos?¿?es decir,que dibuje por ejemplo el circulo,desde el centro,no desde la esquina
Hola oskarg,

No recuerdo si la función sin() está al revés de Div, yo comparaba en estos casos que los ejemplos de Div funcionaran de forma similar en Div GO.
Sobre el orden de los ids lo corregí en la versión 1.20, debería de funcionar.
Podría crear una función set_center() o similar para draw(), pero esto ya para próximas versiones.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 20, 2019, 05:13:23 PM
Aquí dejo un ejemplo de pruebas que estaba realizando con efecto de rotación con cosenos (como si tuviera movimiento de profundidad): https://www.divgo.net/c-f4e5bcaa
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 20, 2019, 08:32:48 PM
Hola AmakaSt ,
Gracias por la respuesta,acabo de pasar un tuto de pico8 a divgo...para familiarizarme con el lenguaje......
Mañana lo pulo y lo paso..
Reflexion:
-Estaria bien que con divgo pudiera hacer todo lo que puedo hacer con pico8,es decir las funciones que faltan incluirlas en divgo,pues es una fuente inagotable de recursos y codigo libre ,donde es muy sencillo pasar de ese engine a divgo.De esta manera se podria tener tropecientos juegos,ejemplos realizados en divgo y llamar de ese modo la atencion a posibles nuevos usuarios,pues divgo es infinitamente mejor ,en lenguaje,potencia etc...
-Estaria bien que el editor grafico  incrementaras  la posiblidad de hacer mucho mas zoom,pues como esta ahora es imposible trabajar con imagenes enanas.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 20, 2019, 09:28:07 PM
Hola,otra vez...
El map_put() funciona??no hace nada el ejemplo,e importado el ejemplo desde div original y no hace nada.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 20, 2019, 09:54:29 PM
Quote from: oskarg on November 20, 2019, 09:28:07 PM
Hola,otra vez...
El map_put() funciona??no hace nada el ejemplo,e importado el ejemplo desde div original y no hace nada.
Sí funciona, falta el file=fichero1; no muestra el archivo que va copiando con map_put(), es un fallo del ejemplo. Ya está corregido.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 21, 2019, 08:51:45 AM
Quote from: oskarg on November 20, 2019, 08:32:48 PM
-Estaria bien que con divgo pudiera hacer todo lo que puedo hacer con pico8,es decir las funciones que faltan incluirlas en divgo,pues es una fuente inagotable de recursos y codigo libre ,donde es muy sencillo pasar de ese engine a divgo.De esta manera se podria tener tropecientos juegos,ejemplos realizados en divgo y llamar de ese modo la atencion a posibles nuevos usuarios,pues divgo es infinitamente mejor ,en lenguaje,potencia etc...
-Estaria bien que el editor grafico  incrementaras  la posiblidad de hacer mucho mas zoom,pues como esta ahora es imposible trabajar con imagenes enanas.
Hola oskarg,

Podrías listarme las funciones que faltarían con una explicación de que hace cada una? Así yo ya podría mirar si existen (similar) o faltan y en este caso poder incluirlo. :)

El editor gráfico tengo que cambiarle y añadirle muchas cosas, he pensado incluso de cambiarlo entero por el editor Piskel que esta genial.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 21, 2019, 10:19:44 AM
Vale...como tengo tiempo miro en profundidad las funciones que no estan incluidas en divgo y si consideras oportuno las incluyes ,de esa manera se podria poner de eslogan,no digas pico,di divgopico ;D
Acabo una cosa y cuelgo el ejemplo simple de pico a div...
Lo de piskel me parece genial,buena idea....
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 21, 2019, 12:24:44 PM
ya he acabado el tutorial que he seguido,bueno,intento hacer ahora uno avanzado y te comento si puedo o no,con las funciones que trae divgo.









Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 24, 2019, 03:36:20 PM
Ya está disponible para descargar la versión 1.24.0 de Div GO: http://www.amakasoft.com/herramientas/div-go.html (http://www.amakasoft.com/herramientas/div-go.html)
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on November 24, 2019, 06:48:45 PM
Hola AmakaSt.

Has mirado la documentacion que te pase sobre los comportamientos personalizados de pilasengine 2,me gustaria saber si puedes introducir algo parecido en divgo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 25, 2019, 07:42:55 AM
Hola Amakst;
tengo dudas basicas de programacion en divgo.....me imagino que se basa en c...:
1.¿Como puedo definir e inicializar varias variables a la vez?...private a,b,c=1,2,3; da error... ¿NO se puede lo tengo que hacer de forma separada?
2.¿Como puedo devolver varios valores a la vez?  return a,b,c .........................a,b,c=devuelve(valor_a,valor_b,valor_c)
3.Las tablas me imagino que no son dinamicas...vale..pero no puedo hacer esto?¿? tabla[]={0,1,2,3,4,5,6}; tengo que hacer tabla[0]=0...tabla[1]=1....?¿?
.....
Otra cuestion puedo indicar de algun modo que las primitivas graficas no utilizen suavizado?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 25, 2019, 11:39:31 AM
Hola de nuevo...como puedo hacer que las variables a ,b ,cuando llamo al proceso Calcula sean modificadas??¿?.....creo que se hace con punteros,me puedes echar un mano...gracias....

/*
* punteros.PRG by o
* (c) 2019 o
*/

PROGRAM Modificacion_variables;
BEGIN
juego();
END

////////////////////////////////////////////
Process Juego()
private a,b;

BEGIN
a=1;b=1;
write_int(0,100,100,0,offset a);
write_int(0,200,100,0,offset b);


CALCULA(a,b);
loop
frame;
end
END
////////////////////////////////////////////////

PROCESS CALCULA(a,b)
BEGIN
a=a*10;
b=b*20;
//como no se como devolver dos valores a la vez quiero que en este proceso a y b sean modificados,como si se trataran de variables globales,pero no lo son.
END

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 25, 2019, 01:03:12 PM
Quote from: hokuto40 on November 24, 2019, 06:48:45 PM
Hola AmakaSt.

Has mirado la documentacion que te pase sobre los comportamientos personalizados de pilasengine 2,me gustaria saber si puedes introducir algo parecido en divgo.
Hola hokuto40,

Lo miré pero no me quedo claro que es lo que hacia los comportamientos, si es algo automatizado o se programa y se hacen llamadas a cada comportamiento... Avanzar hasta el final de tal punto, girar o dar media vuelta y tal...

Un saludo.
Quote from: oskarg on November 25, 2019, 07:42:55 AM
Hola Amakst;
tengo dudas basicas de programacion en divgo.....me imagino que se basa en c...:
1.¿Como puedo definir e inicializar varias variables a la vez?...private a,b,c=1,2,3; da error... ¿NO se puede lo tengo que hacer de forma separada?
2.¿Como puedo devolver varios valores a la vez?  return a,b,c .........................a,b,c=devuelve(valor_a,valor_b,valor_c)
3.Las tablas me imagino que no son dinamicas...vale..pero no puedo hacer esto?¿? tabla[]={0,1,2,3,4,5,6}; tengo que hacer tabla[0]=0...tabla[1]=1....?¿?
.....
Otra cuestion puedo indicar de algun modo que las primitivas graficas no utilizen suavizado?¿?

Hola oskarg,

Div GO se basa en Div2, no en C.

1. private a = 1, b = 2, c = 3; //así es como funcionaría
2. return puede devolver 1 valor o resultado, puedes devolver un array con varios valores, un boleano, string o caracter... pero eso es así también en C.
3. tabla[]=0,1,2,3,4,5,6; sin llaves

Lo de las primitivas no lo había pensado, por el momento solo a nivel general con screen_smooth(false);

Tu anterior código devolviendo los valores: https://www.divgo.net/c-467f4542

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 25, 2019, 02:22:50 PM
Muchas gracias por el ejemplo...sin punteros genial,ahora lo modifico el codigo,pues lo hacia de otra forma muy rebuscada ,si me quedo trabado te consulto...Cuando acabe lo que estoy haciendo o ya no pueda porque no puedo hacerlo  te digo todas las conclusiones que he sacado..pues las estoy apuntando en una lista....no quiero decir sugerencias para divgo sin saber a ciencia cierta si puedo o no puedo hacerlo.....

lo de screen_mode(false) lo utilizo ,pero me sigue suavizando las  primitivas graficas,lineas. etc...previamente tengo screen_mode(128,128,4).

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 25, 2019, 10:42:44 PM
Hola de nuevo,discula por ser pesado ;D
hay una forma mas elegante de matar el proceso calcula,necesito calcular cosas dentro de un bucle,pero no creo que sea lo mas acertado de como lo hago,ya que empleo un signal para evitar que el proceso siga vivo,pensaba que sin el frame de dicho proceso al encontrar end moria.

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program bucle;

BEGIN



NAVE();
set_title("My Program Name");
    set_icon("graficos/009.png");

   
        LOOP
if (key(_esc)) exit("Text Exit", 1); end
        FRAME;
    END
END
//______________________________________________________________________________________________
PROCESS NAVE()
private
i,a;
BEGIN
     a=1;
    write_int(0,100,100,0,offset a);
    for(i=0;i<10;i++)
       calcula(a,i);
       signal(TYPE calcula,s_kill);
    end


   
END
//_______________________________________________________________________________________________________________________________________________________________________________________________
//_______________________________________________________________________________________________________________________________________________________________________________________________

PROCESS calcula(a,i)
BEGIN
father.a=a+i;
//no muere el proceso de forma automatica me creo 10 procesos!!
END

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 25, 2019, 11:03:14 PM
Hola oskarg,

No entiendo lo que quieres hacer en ese código.

Se crea el proceso, hace la suma y desaparece, el signal no hace nada, el proceso calcula no tiene un bucle ni un frame() que lo mantenga vivo para poder ser eliminado con signal, muere antes. El bucle for lo crea las 10 veces y muere después de hacer la suma pasándole el valor al padre.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on November 27, 2019, 08:23:33 PM
Quote from: AmakaSt on November 25, 2019, 01:03:12 PM
Hola hokuto40,

Lo miré pero no me quedo claro que es lo que hacia los comportamientos, si es algo automatizado o se programa y se hacen llamadas a cada comportamiento... Avanzar hasta el final de tal punto, girar o dar media vuelta y tal...

Un saludo.

Pilasengine 2 ya trae algunos comportamientos hechos que se llaman y hacen algo automaticamente pero tambien puedes crear los tuyos desde cero,creando una clase que extiende de la clase comportamientos.

Yo me refiero a esto ultimo,tener algo en divgo que me permita crear mis propios comportamientos y luego llamarlos desde un proceso para que haga algo automaticamente,y si tiene la opcion de pasarle parametros para modicar las opciones del comportamientos pues mejor.

Seria bueno para que cada cual cree sus comportamientos y los comparta con la comunidad,y asi tener una variedad de comportamientos que ayuden en el diseño de los juegos.

Esto mismo lo tiene gdevelop,la comunidad esta creando comportamientos y los comparte y asi estan extendiendo el engine sin esperar a que el creador añada mas comportamientos.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 30, 2019, 02:46:55 PM
Hola AmakaST,
Como puedo simular este efecto en divgo:
Tengo una serie de graficos,procesos que dibuja la pantalla,cada frame,se borran y se dibujan de nuevo.necesito hacer un clipping ,indicando un rectangulo ,es decir ,la superficie que indique el rectangulo debe recortar los graficos haciendolos transparentes en esa  area ..........ni idea.
Otra cuestion,no me habia fijado hasta hora ,el gran trabajo de seleccionar tema,modo div clasico..muy bueno,da la sensacion de estar trabajando en div games studio.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 30, 2019, 09:00:09 PM
Estoy haciendo un tutorial increible en divgo..siempre de renacuajo me maravillava este tipo de juegos y nunca sabia como lo lograban....  ;D .estaba bloqueado por un error de una variable...cuando lo tenga avanzado te lo paso amakast para que lo incluyas en divgo ,pues con ejemplos como este atraes palabra a gran cantidad de gente para probar tu engine...a mas que sera de codigo abierto y solo modificando los graficos o ciertas variables ,tablas  puedes tener algo muy profesional y sin apenas saber programar    ;D
A ver cuando lo termino y te doy esa lista de sugerencias y añadidos a divgo para hacer este engine de diez,pues tengo muchas ideas en mente y probando cosas de otros a fondo veo el por que atraen tanto a la gente y que es lo que falta a este para darle un buen impulso.
1.Otra cuestion tengo un amd justito,que ordenador minimo me recomiendas para ejecutar los juegos de forma fluida?¿?me gustaria comprarme uno para hacer juegos serios...

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 01, 2019, 12:01:11 PM
Quote from: hokuto40 on November 27, 2019, 08:23:33 PM
Pilasengine 2 ya trae algunos comportamientos hechos que se llaman y hacen algo automaticamente pero tambien puedes crear los tuyos desde cero,creando una clase que extiende de la clase comportamientos.

Yo me refiero a esto ultimo,tener algo en divgo que me permita crear mis propios comportamientos y luego llamarlos desde un proceso para que haga algo automaticamente,y si tiene la opcion de pasarle parametros para modicar las opciones del comportamientos pues mejor.

Seria bueno para que cada cual cree sus comportamientos y los comparta con la comunidad,y asi tener una variedad de comportamientos que ayuden en el diseño de los juegos.

Esto mismo lo tiene gdevelop,la comunidad esta creando comportamientos y los comparte y asi estan extendiendo el engine sin esperar a que el creador añada mas comportamientos.
Hola hokuto40,

Tendría que mirarme gdevelop que no lo he tocado nunca. Yo lo de los comportamientos lo haría con herencias, tal cual es div, un proceso que se llame mover(desde, hasta), rotar(desde, hasta), etc... y que mueven al proceso padre.

Un saludo.

Quote from: oskarg on November 30, 2019, 02:46:55 PM
Hola AmakaST,
Como puedo simular este efecto en divgo:
Tengo una serie de graficos,procesos que dibuja la pantalla,cada frame,se borran y se dibujan de nuevo.necesito hacer un clipping ,indicando un rectangulo ,es decir ,la superficie que indique el rectangulo debe recortar los graficos haciendolos transparentes en esa  area ..........ni idea.
Otra cuestion,no me habia fijado hasta hora ,el gran trabajo de seleccionar tema,modo div clasico..muy bueno,da la sensacion de estar trabajando en div games studio.
Un saludo.
Hola osrkag,

Tienes la función clear_map() para hacer clipping a un graph indicando el rectángulo y la posición donde quieres borrar, hay ejemplo en el listado de funciones.

Esa era la idea, darle un aire al Div2 original. :)

Sobre el ordenador, creo que cualquiera actual te funcionaría bien Div GO, un procesador i3 o i5 actual con 8gb de ram, estarías sobrado y no pasaría de los 400€. El mío ya tiene 5 años y me costó unos 800€, hoy día no creo que valga más de 400€ y tendría mejor procesador incluso.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on December 01, 2019, 08:09:33 PM
Gdevelop es de codigo abierto,por lo que puedes ver su codigo y ver como esta programado.

Aqui te dejo el enlace por si quieres ojear su codigo.
https://github.com/4ian/GDevelop
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 02, 2019, 10:07:26 AM
hola AmakaSt,
COmo paso una estructura a un proceso. y que esta estructura al pasarlo,puede cambiar su nombre de la estructura?¿?es decir que actuase como un variable normal...

PROGRAM example_draw;
global

struct a1
xx;
yy;
end

struct b1
xx;
yy;
end
BEGIN


       set_mode(340,240);
        inicio(a1);
        inicio(b1);
       
        REPEAT
        FRAME;
        UNTIL (key(_esc));
END
PROCESS inicio(estructura)
BEGIN
a1.xx=10;
b1.yy=50;
//estructura.xx=10 ERROR!!!!!!!!!!!?COMO PUEDO PASAR Una esctructura a un proceso y en este poderle cambiarle el nombre¿
//pues hago multiples llamadas a inicio con multiples estrcturas definidas....
//estructura.b1=34 ERROR!!!
END

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 02, 2019, 10:25:29 AM
lo que quiero es esto,en c simple en divgo COMO ?¿?¿ pasar una estructura como parametro

#include <stdio.h>
#include <math.h>
/* Definición de la estructura */
struct coordenadas
{
    float x;
    float y;
    float z;
};
/* Definición de función que calcula la distancia entre dos puntos */
float distancia(struct coordenadas a, struct coordenadas b)
{
    return sqrtf(pow(a.x - b.x, 2.0) +
                 pow(a.y - b.y, 2.0) +
                 pow(a.z - b.z, 2.0));
}

int main()
{
    /* Declaración e inicialización de dos variables */
    struct coordenadas punto_a = { 3.5e-120, 2.5, 1.5 };
    struct coordenadas punto_b = { 5.3e-120, 3.1, 6.3 };
    float d; /* Almacenar el resultado */

    /* Llamada a la función con las dos estructuras */   
    d = distancia(punto_a, punto_b);
    /* Imprimir el resultado */
    printf("%f\n", d);

    return 0;
}

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 02, 2019, 09:16:38 PM
Hola AmakaSt requiero tu ayuda ,he preguntado en otro foro como se podia pasar una estructura en un proceso y me ha dando este ejemplo el cual funciona en div2...pero en divgo no tengo ni idea como traspolar tal informacion...no se como se hace,¿me puedes escribir el ejemplo en divgo?¿?.


/*
* whatsnew.txt by o
* (c) 2019 o
*/

PROGRAM esctructuras;

global


struct st;
int a,b,c;
end
valor;

begin
proc(&st);
valor=st.a;

write_int(0,100,100,0,offset valor);

loop
frame;
end


end

PROCESS proc(struct pointer st p_st)
BEGIN
p_st.a=10;
p_st.b=20;
p_st.c=30;
end


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 03, 2019, 10:13:38 AM
Hola oskarg,

Acabo de probar y no está soportado por el compilador pasar los struct por parámetros, ni el declararlo en private, por eso da error. Para la próxima versión miraré de incluirlo.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 03, 2019, 10:45:20 AM
Muchas gracias por el detalle,se agradece el gesto AmakaSt........estaba probado mil maneras y no habia forma.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 04, 2019, 06:34:19 PM
hola AmakaSt..
estoy intentando hacer este efecto.tengo un fondo que es un grafico de 128x128,de color azul...aunque debe ser negro,pero lo he puesto de este modo para que se vea que el efecto funciona correctamente.Luuego tengo un cuadrado de 16x16 de color verde.Muevo el cuadrado en cada frame,pero no se borra,con lo cual,hago un map_block_copy y entonces en cada frame hago un random aleatorio y pinto toda la pantalla de colores de un 1pixel,cada vez seran mas oscuros...habia pensado hacerlo con graphic_builder...pues debere leer el contenido y luego modificar,pero no se porque ,cuando hago map_block_copy,alla por donde pasa el cuadrado  verde,no pinta el recorrido que he hecho con el.en cambio con map_put_pixel si va..PORQUE?¿? no se puede utilizar de esta manera graphic-builder...incluyo ejemplo ..asi es mas visual...
// map_put_pixel(0, 48,40,i,rgb(255,255,255));con esto funciona JOE!!.. si la activo esta linea funciona,pinta el fondo ,normal ,pero claro utilizo map_put_pixel......
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 04, 2019, 06:46:38 PM
adjuto codigo correcto,con put_pixel...es lo que quiero ,pero por que no va con graphic_builder?¿?



/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
    points = 0;
    hi_score = 0;
    nave_x;
    nave_y;
    grafico;

begin
set_title("My Program Name");
    set_icon("graficos/009.png");
set_mode(128,128,3);
screen_color(cc_silver);
set_fps(60, 0);

    update();
    pelota();
loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end
//_________________________________________________________________________________________________________________________________________
process update()
begin
nave_x=128/2;
nave_y=128/2;
graph=49;
//z=100;
loop
x=nave_x;
y=nave_y;


if(key(_right) ) nave_x = nave_x+1;end
if(key(_left) )  nave_x =  nave_x-1;end
if(key(_up) )    nave_y =  nave_y-1;end
if(key(_down) )  nave_y =  nave_y+1;end


frame;
end
end
//____________________________________________________________________________________________________________________________________


//_________________________________________________________________________________________________________
process pelota()
private j,i;
begin
graph=48;
x=128/2;
y=128/2;
z=800;
loop

map_block_copy(0, 48, nave_x,nave_y, 49, 0,0,32,32);
 
blaquea_fondo(graph);
frame;
end
end
//__________________________________________________________________________________________________________________________________________--
PROCESS blaquea_fondo(grafito)
private
i,jx,jy;
begin
x=128/2;
y=128/2;
z=100;
for(i=0;i<128;i++)
jx=rand(0,128);
jy=rand(0,128);

map_put_pixel(0, 48,jx,jy,rgb(255,255,255));
end

end
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 04, 2019, 09:42:49 PM

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
    points = 0;
    hi_score = 0;

begin
set_title("My Program Name");
    set_icon("graficos/009.png");

set_mode(320, 240);
screen_color(cc_silver);
set_fps(60, 0);
// call a process
pelota();

loop
       if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process pelota()
private nx,ny,veces;
begin
graph=23;
x=100;y=100;

loop
nx=0;
ny=0;

if(key(_left))   nx=-10;end
if(key(_right))  nx=10;end
if(key(_up))     ny=-10;end
if(key(_down))   ny=10;end
if (nx<>0 or ny<>0) clon(x,y);end
x=x+nx;
y=y+ny;
frame;
end

end
//____________________________________________________________________________________________________________________________________--
//____________________________________________________________________________________________________________________________________--

process clon(xx,yy)
begin
x=xx;
y=yy;
graph=23;
alpha=255;

loop
alpha=alpha-10;
if (alpha<=0 )break;end
frame;
end
end
//____________________________________________________________________________________________________________________________________--
//____________________________________________________________________________________________________________________________________--
//____________________________________________________________________________________________________________________________________--
//____________________________________________________________________________________________________________________________________--
//____________________________________________________________________________________________________________________________________--
//____________________________________________________________________________________________________________________________________--





es lo que pretendo hacer .....pero poniendo pixeles cada vez mas transparentes al grafico......para otro dia...aunque me queda la duda de eso de graphic builder porque no funciona como pretendo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2019, 09:16:48 AM
Si manipulo un grafico con graphics builder,es como un draw_buffer,mas rapido que put_pixel??
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 05, 2019, 09:14:06 PM
Quote from: oskarg on December 05, 2019, 09:16:48 AM
Si manipulo un grafico con graphics builder,es como un draw_buffer,mas rapido que put_pixel??
Había varios ejemplos con graphic_builder() y graphic_explorer(), uno es para explorar la información del graph y poder manipularlo, y el otro para reconstruir el graph modificado. En el listado de funciones hay un ejemplo, y creo que en este hilo hay un ejemplo de editor gráfico hecho con estas dos funciones.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 05, 2019, 09:41:13 PM
Quote from: oskarg on December 05, 2019, 08:56:58 PM
ejemplo simple de particulas.
El fpg.dat y el index.html del ejemplo tiene más gráficos que los que hay en la carpeta y hace que falle la ejecución. Esto hay que tenerlo en cuenta, no cambiar los gráficos que hay en el empaquetado si no fallará.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2019, 10:16:57 PM
ahora lo miro y lo modifico ,gracias....Lo he bajado y ahora va..incluyo codigo fuente aqui...

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program volcan_particulas;
global
N_P=0;// numero de particulas...

  struct particulas[10000]
       xx;
       yy;
       v;
       s;
       a;
  end
 
  struct particulas2[10000]
       xx;
       yy;
       v;
       s;
       a;
  end
 

 
  jota;
  jota2;



begin
set_title("Sistema de particulas");
    set_icon("graficos/009.png");
//    write_int(0,80,100,0,offset jota);
  //  write_int(0,160,100,0,offset jota2);
   
   // screen canvas options
     set_mode(128,128,3);
screen_color(cc_black);
     set_fps(60, 0);
     screen_smooth(false);
     INIT();
     UPDATE();
     
     
loop
   // _DRAW();
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
PROCESS INIT()
BEGIN
  //particulas[0].xx = rand(124,4);
  //particulas[0].yy = 128;
// particulas[0].v  = rand(0,5)+0.5;
  //particulas[0].s  = rand(8,0);
  //particulas[0].a  = 0;

// N_P=1;
END

//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
PROCESS UPDATE()
private i,j,k,npp;
BEGIN

LOOP
   N_P;
   npp=0;
   
   for(j=0;j<=6;j++)
  particulas[N_P].xx = rand(4,124);
  particulas[N_P].yy = 128;
  particulas[N_P].v  = rand(0,5)+0.5;
  particulas[N_P].s  = rand(0,8);
  particulas[N_P].a  = 0;

  N_P++;//////////////////////////////////////////en cada bucle le asigno una particula mas...
   end





  for(j=0;j<=N_P;j++)

    particulas[j].xx =particulas[j].xx + rand(0,2)-1 ;
    particulas[j].yy =particulas[j].yy - particulas[j].v ;
    particulas[j].a  =particulas[j].a  + 1 ;
       
        if (particulas[j].yy<=0 OR  particulas[j].a>=30)
            particulas[j].a=-1;
        end

  jota=j;
  end

/////////////////////////////////////////////////////////////////////////////////////
k=0;

     /*
for(j=0;j<=N_P;j++)//N_P numero de particulas...
 

   if( particulas[j].a<>-1)//si es diferente a 1.copio tabla...
     
     particulas2[k].xx = particulas[j].xx ; 
     particulas2[k].yy = particulas[j].yy ; 
     particulas2[k].v  = particulas[j].v  ;
     particulas2[k].s  = particulas2[j].s ;
     particulas2[k].a  = particulas2[j].a ;
     k++;
     npp++;//indica numero de particulas..
   end
end
*/
npp=0;k=0;
for(j=0;j<=N_P;j++)//N_P numero de particulas...
     particulas2[k].xx = particulas[j].xx ; 
     particulas2[k].yy = particulas[j].yy ; 
     particulas2[k].v  = particulas[j].v  ;
     particulas2[k].s  = particulas[j].s ;
     particulas2[k].a  = particulas[j].a ;
     npp++;
     k++;

end





/////////////////////////////////////////////////////////////////////////////////////




_DRAW();
// DEL();
FRAME;


END

END
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________

PROCESS DEL()//borro los elementos de la structura..
private i,j,npp;
BEGIN

npp=0;
for(i=0;i<=N_P;i++)//N_P numero de particulas...
 
       
   if( particulas[i].a<>-1)//si es diferente a 1.copio tabla...
     
     particulas2[i].xx = particulas[i].xx ; 
     particulas2[i].yy = particulas[i].yy ; 
     particulas2[i].v  = particulas[i].v  ;
     particulas2[i].s  = particulas2[i].s ;
     particulas2[i].a  = particulas2[i].a ;
     j++;
     npp++;//indica numero de particulas..
   end
end


//  N_P=npp;
END
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________
PROCESS _DRAW()
private i;
BEGIN

   for(i=0;i<=N_P;i++)
 
   x=     particulas2[i].xx ; 
   y=     particulas2[i].yy ;
   z=     particulas2[i].a ;
   alpha= particulas2[i].s ;
   

  if(y>0)
   SPRITE(x,y,z,alpha);
   end
   end

END


PROCESS SPRITE(xx,yy,aa,ss)
private spr;
BEGIN
graph=11;

    if (aa>=25)
         spr=11;
         else
         spr=floor(ss)+12;
    end
   
   
graph=spr;   

x=xx;
y=yy;
END
//____________________________________________________________________________________________________________________________________________________________________________________________________________
//____________________________________________________________________________________________________________________________________________________________________________________________________________




Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 05, 2019, 10:37:43 PM
Aquí el ejemplo editor gráfico con graphic_explorer() y graphic_builder(): https://www.divgo.net/c-433de98f
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2019, 10:43:48 PM
Gracias AMAKAST,lo volvere a probar mañana con tranquilidad,pues quiero hacer una serie de efectos con el...me imagino que graphic bulder,es mas rapido que put_pixel ..verdad?¿?ahora hago una prueba o mañana y me respondo automaticamente,creo un mapa de 320x240 y en cada frame modifico todo su array.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2019, 10:49:37 PM
Una sugerencia AmakaSt,se me olvidadaba,como en el graphic builder puedo modificar los pixeles,por que no incluyes esta opcion si expreso 255,255,255,0 me haga el color transparente,es decir,si tiene color que me lo quite.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2019, 11:14:57 PM
Vale ya lo he probado 20 frames,me tengo que comprar el ordenador si o si ;D 320x240 ,modificacion de todos los pixeles...
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 06, 2019, 11:04:21 AM
cosas:
1.BUG molesto de divgo...
me pasa en online y des... a veces cuando tengo un error ,lo compilo,me indica el error,lo modifico,lo vuelvo a compilar y todo aquello que he modificado lo anula y vuelve su estado anterior ,muy gracioso  ;D en xamp,no me ha pasado esto....

2.Me gustaria que en el futuro cambiaras el diseño de tu pagina,pues me gustaria publicar tropecientos ejemplos ,si cada semana hago un par,por ejemplo acabo de pasar ahora mismo uno de un efecto curioso,solohago que copy paste a divgo y algo de modificacion,con mejoras tipo resolucion etc o simplemente cambiando los graficos por cuadrados para que nadie me diga na..tendrias una biblioteca de juegos y ejemplos la mar de grande y si puedo hacer todo lo que hago pico pero sin limitaciones,sin duda tendrias una comunidad descomunal.
A mas que de este modo todo el mundo podria comentar y aportar su ejemplo de forma simple como ocurre en pico8...me  parece una sugerencia que se deberia de tener en cuenta.

3.Pensamiento en alto,tengo que hacer un sistema de fisicas para que los juegos de plataformas los pase al momento,sea otro copy paste.... ;D eso es lo que voy hacer si,un motor de plataformas,me he mirado el ejemplo que trae divgo,pero es lentisimo a ver si lo optimizo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 08, 2019, 07:42:52 PM
Hola AMAKAST,
te muestro un trozo del engine que estoy haciendo,como las structuras no las puedo pasar por parametros,me veo obligado a utilizar tablas simples ,aunque este  proyecto lo tengo parado desde hace mas de una semana ....y ahora estoy  haciendo otro tipo de cosas en divgo
Otra cuestion,no es necesario que incluyas dibujar las primitivas por su centro,estaba espeso y no encontraba la manera de hacer un explosion con el circulo y a medida que pasara el t,se incrementara desde su centro ancho-ancho/2... :D
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 09, 2019, 03:07:48 PM
Quote from: oskarg on December 05, 2019, 10:49:37 PM
Una sugerencia AmakaSt,se me olvidadaba,como en el graphic builder puedo modificar los pixeles,por que no incluyes esta opcion si expreso 255,255,255,0 me haga el color transparente,es decir,si tiene color que me lo quite.

Sí se puede, en el ejemplo que puse hago un múltiplo de 4 por el rgba = r:0; g:1; b:2; a:3.
Quote from: oskarg on December 06, 2019, 11:04:21 AM
cosas:
1.BUG molesto de divgo...
me pasa en online y des... a veces cuando tengo un error ,lo compilo,me indica el error,lo modifico,lo vuelvo a compilar y todo aquello que he modificado lo anula y vuelve su estado anterior ,muy gracioso  ;D en xamp,no me ha pasado esto....

2.Me gustaria que en el futuro cambiaras el diseño de tu pagina,pues me gustaria publicar tropecientos ejemplos ,si cada semana hago un par,por ejemplo acabo de pasar ahora mismo uno de un efecto curioso,solohago que copy paste a divgo y algo de modificacion,con mejoras tipo resolucion etc o simplemente cambiando los graficos por cuadrados para que nadie me diga na..tendrias una biblioteca de juegos y ejemplos la mar de grande y si puedo hacer todo lo que hago pico pero sin limitaciones,sin duda tendrias una comunidad descomunal.
A mas que de este modo todo el mundo podria comentar y aportar su ejemplo de forma simple como ocurre en pico8...me  parece una sugerencia que se deberia de tener en cuenta.

3.Pensamiento en alto,tengo que hacer un sistema de fisicas para que los juegos de plataformas los pase al momento,sea otro copy paste.... ;D eso es lo que voy hacer si,un motor de plataformas,me he mirado el ejemplo que trae divgo,pero es lentisimo a ver si lo optimizo.

No he entendido bien el primer punto, ¿cuándo corriges errores vuelves a tener el proyecto como un principio?
Sobre el segundo punto llevo un tiempo realizando una web (portal de juegos) para subir juegos creados en DivGO y que cada usuario pueda ser desarrollador, que pueda jugar y subir sus proyectos empaquetados... pero queda mucho por hacer.

Muy bueno el engine, vuelve a darme el problema con un graph del empaquetado, no me funcionó de un principio, faltaba el graph 013.png.

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 09, 2019, 05:27:28 PM
Hola AMAKAST,
Ya mirare eso del empaquetado porque no incluye el grafico...tengo este motor parado ,aunque quizas me anime  y lo acabe,falta incluir los desniveles de la carretera y clipping,pero a base de tablas,tambien lo quiero hacer de otra forma,pues utilizo unos 600 procesos en momentos extremos para dibujar la pista completa ....cuando lo tenga completo y pulido lo hago publico y de esa manera  ,simplemente modificando la camara ,las curvas  y los graficos ,cualquier puede tener su juego pseudo 3d race XD...

Sobre el primer punto,si,es decir tengo un codigo el cual por ejemplo tiene un error y el compilador me lo indica,pues bien,modifico la linea o simplemente la borro y cuando lo compilo,me vuelve dar el mismo error con la sorpresa que la linea que he borrado vuelve aparecer en el codigo ?¿?¿?en xamp no me ha pasado.

Lo de portal de juegos me parece genial,aunque no hay prisa por mi parte,estoy liado ahora con un codigo de particulas escrito en lua  haber si lo entiendo y lo paso a divgo.

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 10, 2019, 08:35:57 AM
Hola oskarg,

Ya tengo resuelto el tema de las structs, para la próxima versión se podrá declarar structs privadas y locales y pasar por parámetro, ejemplo de código que ya me funciona:
PROGRAM example_draw;
GLOBAL

    STRUCT a1
        xx = 20;
        yy;
    END

    STRUCT b1
        xx = 550;
        yy = 20;
    END
   
BEGIN
    set_mode(340,240);
   
    inicio(a1);
    inicio(b1);

    REPEAT
        FRAME;
    UNTIL (key(_esc));
END

PROCESS inicio(estructura)
BEGIN
    write_int(0, 0, estructura.yy, 0, offset estructura.xx);
    estructura.xx += 10;
END


Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 10, 2019, 06:52:00 PM
Hola Amakast,
Muy bueno lo de las estructuras,lo has implementado siguiendo la filosofia de div,sin punteros,mas sencillo y practico imposible.

-Una cuestion,estoy haciendo un motor de plataformas,pero cual es mi sorpresa que cuando accedo a la carpeta de graficos del fpg.dat no aparecen ni uno,es como si estuvieran ocultos,abro el fpg.dat con un editor y me sale la ruta correcta los nombres de los graficos,de ahi que a veces cuando bajo ejemplos falte graficos por incluir,estoy utilizando xamp...Acaso los oculta?¿?lo he mirado por el disco duro  y no los encuentro,pero si ejecuto el juego cargan los graficos...misterio sin resolver ;D
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 10, 2019, 07:01:13 PM
No entiendo que hago mal.....he probado una version anterior y lo mismo,creo una carpeta donde se van alojar los graficos, cuando compilo me crea el fpg.dat ,pero aunque le vaya añadiendo graficos  no aparece ni uno en la carpeta...?¿?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 11, 2019, 11:18:46 AM
Quote from: oskarg on December 10, 2019, 07:01:13 PM
No entiendo que hago mal.....he probado una version anterior y lo mismo,creo una carpeta donde se van alojar los graficos, cuando compilo me crea el fpg.dat ,pero aunque le vaya añadiendo graficos  no aparece ni uno en la carpeta...?¿?¿?
Hola oskarg,

Los gráficos que editas y creas desde el editor están guardados en el navegador hasta que empaquetas el proyecto. Si cambias de navegador no veras los gráficos que has creado. El empaquetador se encarga de crear los gráficos a partir de las variables guardadas en el navegador para crear el paquete final del proyecto.

Por cierto se puede modificar el color de la página con DivGO, con la función set_color(); //solo visible en el empaquetado y el proyector

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 12, 2019, 10:20:19 AM
Hola AMAKST,
un fallo tonto que no detecta divgo y he estado bloqueado hasta encontrarlo , consiste en poner lo siguiente:en div2 detecta el fallo .....
return 10;
en vez de:
return (10);

un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 13, 2019, 01:35:37 PM
Quote from: oskarg on December 12, 2019, 10:20:19 AM
Hola AMAKST,
un fallo tonto que no detecta divgo y he estado bloqueado hasta encontrarlo , consiste en poner lo siguiente:en div2 detecta el fallo .....
return 10;
en vez de:
return (10);

un saludo.
Hola oskarg,

Corregido, en DivGO soporta ambas maneras, se me quedo a medias y por eso el compilador no detecta el error.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 15, 2019, 09:42:10 PM
Hola AMAKST,
he realizado lo siguiente:

     pixel=map_get_pixel(file,200,i,j);//cojo el rgb del mapa............
     grafico2=new_map(8,8,0,0,pixel);// y creo un nuevo mapa con este color..

Pues bien,si imprimo pixel,me da los valores correctos,pero si le paso ese string como parametro lo interpreta siempre como 0,0,0.....¿?hay alguna manera de hacerlo sin tener que leer el rgb por separado y luego pasarlos ¿?? es decir no tener que hacer esto:

   r=map_get_pixel(file,200,i,j,"r");//cojo el rgb del mapa............
     g=map_get_pixel(file,200,i,j,"g");//cojo el rgb del mapa............
     b=map_get_pixel(file,200,i,j,"b");//cojo el rgb del mapa............
     grafico2=new_map(8,8,0,0,rgb(r,g,b));// y creo un nuevo mapa con este color..


 
Otra cuestion.....,como borro un grafico ya creado en el  fpg o que lo pueda reemplazar por otro?¿
Se me olvidaba...¿? donde esta la lista de colores tipo cc_blue que puedo poner??
un saludo..
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 16, 2019, 09:04:00 AM
Hola oskarg,
Aquí te dejo un ejemplo de cómo conseguir el r,g,b del mapa sin llamar 3 veces a map_get_pixel(): https://www.divgo.net/c-46e45bf8

El listado de colores esta en la lista de variables, te los copio también por aquí:
cc_red, cc_green, cc_blue, cc_yellow, cc_cyan, cc_magenta, cc_orange, cc_lime, cc_violet, cc_brown, cc_pink,
cc_purple, cc_aqua, cc_pistache, cc_turquoise, cc_maroon, cc_silver, cc_gray, cc_white, cc_black

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 16, 2019, 09:46:53 AM
Gracias ,lo he probado y funciona correctamente,imposible sacarlo sin en este ejemplo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 16, 2019, 10:18:17 AM
Disculpa de nuevo ;D..¿¿cómo elimino un gráfico del fpg?¿?,
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 16, 2019, 12:02:26 PM
Por código no se puede eliminar un gráfico del fpg.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 16, 2019, 12:35:19 PM
ya,mas me refiero una vez que accedo al editor gráfico,donde voy incluyendo los gráficos,cómo elimino cualquiera que ya tiene asignado un número ?¿??¿?no se puede,?¿?no tendría sentido....
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 17, 2019, 03:05:12 PM
Se puede eliminar pulsado el botón de Borrar Cambios, que aparece en la parte superior izquierda, y luego cerrando el editor con el botón de la derecha. En ese momento debería actualizarse el fpg sin el gráfico (debo corregirlo), pulsa F5 y verás que ya no se encuentra el gráfico dentro del fpg. Si es un gráfico existente en la carpeta fpg, no se borra, solo limpia los cambios que le hayas aplicado.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 26, 2019, 10:08:50 PM
Hola AmakaSt,
Cuando empaqueto el programa que estoy haciendo siempre sale la pantalla negra en el navegador aunque lo haga a traves del xamp  y no entiendo el motivo...¿me puedes explicar el motivo?
adjuto archivo....
Un saludo.



Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 27, 2019, 08:34:55 AM
Hola oskarg,

Faltan imágenes en la carpeta manic22 que está esperando Javascript para cargar. Si falta una sola imagen en la carga Javascript da error y no continua, se queda bloqueado. Esto debes controlarlo antes de crear un empaquetado, repasa lo que se va a cargar en los fpg.dat y mira si coincide con los gráficos de la carpeta. Si no coinciden habrá error de carga.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 27, 2019, 09:55:35 PM
Gracias Amakast,ya lo he solventado...
Muestro lo que estoy haciendo,esta muy verde aun,pero funciona y no empleo nada de get_pixeles..solo tablas para detectar colisiones .tal cual como esta ahora se puede recrear todas las fases del juego.

Ahora que tengo el motor base de manic miner,el domingo hago el motor de jet se willy que incluye subir o bajar rampas y plataformas moviles.


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 29, 2019, 07:40:41 PM
Hola oskarg,

Esta muy bien, el control y colisiones parecen extraídos del Manic Miner original. :)

Tengo curiosidad por ver cómo te queda el motor de Jet Set Willy.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 26, 2020, 06:09:44 PM
Hola AmakaSt,
Estoy aun con el engine,no publico aun nada porque lo estoy reescribiendo ,aunque ya tengo todo funcionando,rampas y plataformas moviles y lo mejor de todo es que  ahora si es un calco al original y sin ningun get_pixel o collision_type  ;D
Una vez hecho,publico un ejemplo o bien de jet o de otra cosa que tengo en mente.
2.Luego lo tengo que hacer flexible y con scroll,cuando lo logre ya habra un engine bien completo para pasar juegos de pico a divgo en un plis-plas..
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 02, 2020, 09:07:20 PM
Buenas a todos,

Ya está disponible online (para realizar testeos) la primera versión de este 2020, la versión 1.26.0 de Div GO y las novedades: 


funciones:
   - region_size();

bugs y mejoras:
   - [ADD] nuevo parámetro en screen_scanline() para indicar el tipo y mejorado a la hora de mostrarse en pantalla
   - [ADD] ahora se pueden declarar structs privadas y locales
   - [ADD] posibilidad de obtener struct por parámetro
   - [ADD] incluido el juego de div dx Pitfall de Mike DX adaptado a div go
   - [ADD] nuevo menú de ejemplos con acceso a más juegos y tutoriales
   - [FIX] corregido problemas al abrir un ejemplo no seleccionaba bien la pestaña
   - [FIX] solucionado problema en el editor de código que al pulsar ctrl-z borrara todo el código
   - [FIX] variables de un struct puedan tener nombres similares de procesos, funciones u otras variables declaradas
   - [FIX] problema con cambios en region_blur()
   - [UPDATE] actualizado algunos ejemplos y juegos
   - [UPDATE] codemirror a versión más reciente




Ejemplo de la función region_size() en breve...

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 03, 2020, 04:36:21 PM
Aquí dejo unos ejemplos de las últimas novedades.

Ejemplo de region_size(): https://www.divgo.net/c-43981f9d
Ejemplo de screen_scanline(): https://www.divgo.net/c-f152355f

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on February 05, 2020, 04:18:19 PM
Hola Amakast.

Te has planteado el hacer videotutoriales o tutoriales escritos,lo digo porque aparte de los ejemplos no hay nada para aprender a usar divgo.Algo paso a paso para principiantes.

Algo como enseñar a realizar distintos tipos de juegos,de la forma mas sencilla posible.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 05, 2020, 08:42:41 PM
Los videos tutoriales es una opción, aunque yo veo más acertado tener un sistema donde cada uno pueda ir mostrando sus propios tutoriales con código incluido, también  hecho en falta un juego simple tipo rebotes pero que incluya presión táctil para móvil, pues esto llama bastante la atención .es decir, hacer la página más dinámica de divgo,donde cada uno pueda contribuir a su mojo,pues por lo demás va progresando divgo y se agradece que no haya quedado en el olvido.una vez que acabe el motor de plataformas que va pa largo 😁 se podrá hacer juegos fácilmente.actualmente es el derivado de div mas fiel y que incluye nuevas características, aunque no te niego hokuto que si no tienes un ordenador actual,es lento para ciertos juegos y debes optimizar Bastante para superar tal traba
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 06, 2020, 08:47:31 AM
Quote from: hokuto40 on February 05, 2020, 04:18:19 PM
Hola Amakast.

Te has planteado el hacer videotutoriales o tutoriales escritos,lo digo porque aparte de los ejemplos no hay nada para aprender a usar divgo.Algo paso a paso para principiantes.

Algo como enseñar a realizar distintos tipos de juegos,de la forma mas sencilla posible.
Hola hokuto40,

No creo que yo sea el más indicado para crear videotutoriales, soy bastante impaciente y los haría explicando rápido o no muy aclaratorios, aquí te paso unos enlaces a unos videotutoriales que están disponibles en YouTube creados por Profe NachoG:

https://www.youtube.com/watch?v=fOlkw1Pv2lI
https://www.youtube.com/watch?v=Lmeyq0c-ExQ
https://www.youtube.com/watch?v=8EdU4tVt6fo
https://www.youtube.com/watch?v=baWMhD9GSLg
https://www.youtube.com/watch?v=5S8lvxBSfT4

A decir verdad, es el que más provecho le está sacando a DivGO, tiene hasta una app comercial en Argentina.
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 06, 2020, 10:37:05 AM
Quote from: oskarg on February 05, 2020, 08:42:41 PM
Los videos tutoriales es una opción, aunque yo veo más acertado tener un sistema donde cada uno pueda ir mostrando sus propios tutoriales con código incluido, también  hecho en falta un juego simple tipo rebotes pero que incluya presión táctil para móvil, pues esto llama bastante la atención .es decir, hacer la página más dinámica de divgo,donde cada uno pueda contribuir a su mojo,pues por lo demás va progresando divgo y se agradece que no haya quedado en el olvido.una vez que acabe el motor de plataformas que va pa largo 😁 se podrá hacer juegos fácilmente.actualmente es el derivado de div mas fiel y que incluye nuevas características, aunque no te niego hokuto que si no tienes un ordenador actual,es lento para ciertos juegos y debes optimizar Bastante para superar tal traba
Hola oskarg,

Tengo pendiente una web de juegos desarrollados con DivGO y que cada desarrollador pueda tener su espacio donde subir sus juegos e indicar si quiere incluir código abierto en modo tutorial o solo disponible para jugar (con o sin publicidad), etc. Pero como todo se necesita tiempo para hacerlo posible... :P

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on February 06, 2020, 03:16:39 PM
Quote from: AmakaSt on February 06, 2020, 08:47:31 AM
Hola hokuto40,

No creo que yo sea el más indicado para crear videotutoriales, soy bastante impaciente y los haría explicando rápido o no muy aclaratorios, aquí te paso unos enlaces a unos videotutoriales que están disponibles en YouTube creados por Profe NachoG:

https://www.youtube.com/watch?v=fOlkw1Pv2lI
https://www.youtube.com/watch?v=Lmeyq0c-ExQ
https://www.youtube.com/watch?v=8EdU4tVt6fo
https://www.youtube.com/watch?v=baWMhD9GSLg
https://www.youtube.com/watch?v=5S8lvxBSfT4

A decir verdad, es el que más provecho le está sacando a DivGO, tiene hasta una app comercial en Argentina.
Un saludo

Ya conocia este canal,son tutoriales demasiado basicos pero para el que no sabe nada esta bien,aunque solo son cinco y no hay mas,una pena que lo dejara.

Se me ha ocurrido que podrias hacer ejemplos a modo de tutorial de cosas especificas y con comentarios,podrias hacer ejemplos cortos como los ejemplos que tienes de cada funcion,estos ejemplos son cortitos y bastante claros.

Entonces podrias hacer ejemplos cortos y cada ejemplo esplicaria solo una cosa,estos ejemplos esplicarian cosas que tienen cada juego,por ejempo:

En un ejemplo puedes esplicar como se programa un salto,en otro como se hace una gravedad,en otro como parar un personaje al colisionar con una pared,en otro como hacer que un personaje parpadee,como hacer que dispare etc..

Hacer ejemplos de cosas que suelen llevar juegos de todo tipo,no se si me he explicado bien.Creo que en proximas versiones en vez de añadir nuevas funcionalidades podrias centrarte en hacer este tipo de ejemplos para aprender a usarlo bien.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 08, 2020, 09:42:06 AM
Buenas,

Ya está disponible para descargar la versión 1.26.0 de Div GO: http://www.amakasoft.com/herramientas/div-go.html (http://www.amakasoft.com/herramientas/div-go.html)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 09, 2020, 10:09:33 AM
Hola Amakast,
No habia leido el ultimo post.....bajando la nueva beta y probando cosas a ver que tal,de antemano se agradece las mejoras ,sobretodo el control+z que me borraba todo el codigo y maldecia a un dios ,pero no precisamente al dios thor.... ;D

Dos cosas prefiero yo personalmente que se siga mejorando y añadiendo caracteristicas.Considero que hay ya bastante documentacion,es solo cuestion de mirar el codigo de los ejemplos y la explicacion de las funciones,pues en  casi todas incluyen un ejemplo.
Lo otro hotuko,cuando se pueda contribuir ,yo encantado de poner ejemplos de los que dices pero enteros,siempre he querido hacer juegos simples pero didacticos y completos,donde muestren como se hace.Desde su presentacion ,superacion de fase hasta su tabla de record... y como hace poco descubri que se puede separar el codigo,pues aun mejor...solo es cuestion de modificar ciertas cosas y el esqueleto del juego basicamente suele ser el mismo.
Otra cosa Amakast,no se si tienes pico-8.Yo tengo una version de pico-8 la forma como trata los graficos ,el scroll,etc...lo digo porque no se si has trasteado con el,pero tiene cosas muy interesantes que todos los derivados de div carece y tiene cosas muy buenas .
Por poner un ejemplo basico:
1.Un juego se graba en un imagen png.SI...guardas todo el codigo dentro del png y lo gracioso del caso es que sirve tambien para mostrar la caratula del juego.Esto es mega curioso...y claro solo aquel que tiene pico-8 puede cargan la imagen y ver su codigo y graficos..
2.Los graficos no son sprites separados ,es un gran mapa donde tu indicas que tal porcion de un rectangulo represente un sprite,fondo,enemigo..en cada frame se hace un borrado y entonces le vuelves a indicar que grafico quieres colocar en cierto sitio...es como si trabajara con tiles y de esta manera puedo hacer facilmente como te comente por ejemplo un mar en movimiento que ocupa toda la pantalla.
3.Puedes hacer cualquier cosa 3d,pues permite hacer un motor de relleno de triangulos o rectangulos y que estos se rellenen con un patron
4.El sistema de colisiones ,gracias a que divgo no tengo limitacion de lineas ,puedo implementarlo como actua en pico-8 ,mediante cajas.Solo una reflexion... cuando lo tenga te lo paso el juego de jet-se-willy ,pero el codigo es mega extenso y eso que lo estoy reescribiendo y eso que que cuando lo termine lo quiero reescribirlo otra vez ,para hacerlo mas reducido.Si alguien osa hacer esto,joe que se tome un par de tazas de cafe,pues es muy largo...aunque  una vez hecho,ya tenemos un motor para hacer cualquier plataformas en 2d.
5.No se si es optimo,pero a veces me gustaria que divgo tuviera un sistema de particulas como trae pico-8 o amulet y tambien poder hacer pitidos ,es decir los tipico sound de amstrad,no se si es por añoranza pero me gustaban una barbaridad ,al igual que los border  ;D que hacia parpadeando ;D
Por lo demas gracias Amakast ,pues en mi tiempo libre lo paso bien intentado hacer esos juegos que de renacuajo alucinaba con ellos en mi monitor fosforo verde y decia guau!! que graficos ,que calidad y era " tooo" VERDE ;D



Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 09, 2020, 10:12:48 AM
Se me olvidaba ,el editor grafico,please permite poder hacer mas zoom,se me ha quedado absoleto y no veo nada....
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 10, 2020, 10:17:58 PM
Quote from: hokuto40 on February 06, 2020, 03:16:39 PM
Ya conocia este canal,son tutoriales demasiado basicos pero para el que no sabe nada esta bien,aunque solo son cinco y no hay mas,una pena que lo dejara.

Se me ha ocurrido que podrias hacer ejemplos a modo de tutorial de cosas especificas y con comentarios,podrias hacer ejemplos cortos como los ejemplos que tienes de cada funcion,estos ejemplos son cortitos y bastante claros.

Entonces podrias hacer ejemplos cortos y cada ejemplo esplicaria solo una cosa,estos ejemplos esplicarian cosas que tienen cada juego,por ejempo:

En un ejemplo puedes esplicar como se programa un salto,en otro como se hace una gravedad,en otro como parar un personaje al colisionar con una pared,en otro como hacer que un personaje parpadee,como hacer que dispare etc..

Hacer ejemplos de cosas que suelen llevar juegos de todo tipo,no se si me he explicado bien.Creo que en proximas versiones en vez de añadir nuevas funcionalidades podrias centrarte en hacer este tipo de ejemplos para aprender a usarlo bien.
Quote from: oskarg on February 09, 2020, 10:09:33 AM

5.No se si es optimo,pero a veces me gustaria que divgo tuviera un sistema de particulas como trae pico-8 o amulet y tambien poder hacer pitidos ,es decir los tipico sound de amstrad,no se si es por añoranza pero me gustaban una barbaridad ,al igual que los border  ;D que hacia parpadeando ;D
Hola hokuto40 y oskarg,

Aquí os dejo un par de ejemplos:

Ejemplo sencillo de salto con impulso: https://www.divgo.net/c-954e95b2
Ejemplo distintos tipos de parpadeos (a lo CPC464): https://www.divgo.net/c-46c60132

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on February 11, 2020, 04:17:10 PM
Hola Amakast.

Muchas gracias por los ejemplos,estos son los ejemplos que llevo pidiendo hace siglos y por fin alguien que me escucha("ALELUYA"). ;)

Me molan los dos ejemplos,cuando puedas haz mas ejemplos de estos para todo tipo de juegos y poder aprender mas.

Saludos. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 15, 2020, 12:38:38 PM
Hola hokuto40,

Me alegra que te hayan gustado los ejemplos, aquí dejo otro siguiendo el de los saltos pero esta vez con paredes u obstáculos: https://www.divgo.net/c-0519b6f1 (https://www.divgo.net/c-0519b6f1)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on February 15, 2020, 04:12:40 PM
Quote from: AmakaSt on February 15, 2020, 12:38:38 PM
Hola hokuto40,

Me alegra que te hayan gustado los ejemplos, aquí dejo otro siguiendo el de los saltos pero esta vez con paredes u obstáculos: https://www.divgo.net/c-0519b6f1 (https://www.divgo.net/c-0519b6f1)

Un saludo.

Muy bueno este tambien,me mola este tipo de ejemplos cortos. ;)

De momento los estoy entendiendo bien con un poco de estudio claro,sigue haciendo mas cuando te vaya apeteciendo.

Saludos. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 17, 2020, 11:05:36 AM
Curioso...como informacion
Si te va lento divgo con chrome,fire.......prueba el navegador Avant...la mejora es muy notable,en juegos tipo pacoman,se nota una mejora de fluidez sustancial   y es muy marcada en el juego de plataformas,este ultimo era injugable.
Lo que no entiendo por que en el juego de plataformas,este cambio tan radical y por que hay tanta diferencia segun que navegador utilices como de optimo maneja los procesos o los get_pixeles.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 19, 2020, 04:07:15 PM
Quote from: oskarg on February 17, 2020, 11:05:36 AM
Curioso...como informacion
Si te va lento divgo con chrome,fire.......prueba el navegador Avant...la mejora es muy notable,en juegos tipo pacoman,se nota una mejora de fluidez sustancial   y es muy marcada en el juego de plataformas,este ultimo era injugable.
Lo que no entiendo por que en el juego de plataformas,este cambio tan radical y por que hay tanta diferencia segun que navegador utilices como de optimo maneja los procesos o los get_pixeles.
Esto depende del motor de Javascript que tenga el navegador, cada navegador tiene un motor propio. El más común y de código abierto es el V8 (https://v8.dev/) que lo tienen casi todos los navegadores: Chrome, NodeJs, Opera y ahora Edge también. El de Avant estará mejor optimizado a la hora de trabajar con el renderizado del contexto 2d de canvas.

Aquí dejo otro ejemplo, este es para localizar al jugador opuesto u otro proceso: https://www.divgo.net/c-b2169c26

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on February 19, 2020, 10:21:06 PM
Gracias por el ejemplo amakast. ;)

Aunque me los estoy descargando seria bueno que estos ejemplos que estas creando los incorpores en las proximas actualizaciones de divgo,seria bueno que añadieras una seccion de ejemplos de juegos en divgo,o meterlos en la mismas seccion de ejemplos.
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on February 24, 2020, 03:49:25 AM
activen la acceleracion por hardware en los navegadores... (perdon por no leer todo, pero lei lentitud en los navegadores y respondi...)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 24, 2020, 11:25:15 AM
Sigo con el motor manic....
incluyo un simple ejemplo donde puedes subir por una rampa ,y saltar a una plataforma movil ...la escalera es como la rampa pero debo de quitar las lineas que he añadido para que actue igual que el juego original....
1.Ahora  que tengo ya el motor completo de manic... lo tengo que hacer flexible para otros juegos 2d,esto me obliga a hacer el motor de otra forma aunque se como hacerlo,en manic deja 2 pixeles de distancia cuando tocas tocho,esta tonteria ha complicado en exceso el codigo y cuando estas cayendo si en frente hay suelo lo pisas,para simular que lo has pisado de "puntillas".Supongo que por eso en el juego  original no aparece varios tochos de altura,como una caja,pues para que salte adecuadamente y encaje te las ves.....aqui funciona,pero si cuando el modulo x es == 0 no colisionara con nada el motor se hubiera simplificado bastante.Vamos que se complico el solito el programador.

2.Las plataformas moviles ,colisiones y la rampa no empleo get_pixel ...lo que hago es predefinir unos valores,si estoy en tal coordenada x e y...subo o bajo. etc..La plataforma movil la tengo que hacer aun mas eficiente,tengo en la tabla predefinido su recorrido,pues bien,lo tengo que hacer dinamico como el suelo que desaparece...y las colisiones con los tiles,que no hay en verdad,pues son valores de tablas lo tengo que hacer todavia de otra forma para que pueda incluir un scroll muy sencillo de manejar...Ahora estoy en esta fase que me da  pereza otra vez reescribir el motor.

3.Cuando lo acabe que aun queda... :P y corrija una par de  cosas raras ....entonces si hago un mini juego con fases.

4.Una vez realizado paso a la fase de hacer el motor con scroll...con un ejemplo a ver cuando lo acabo,pues esta tonteria por ejemplo en gdevelop son unas 20 lineas,acciones y aqui se multiplican facilmente por 100  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 24, 2020, 12:47:57 PM
Hola AmakaST,
Estoy mirando cosas de divgo y la funcion de get_point no entiendo como funciona,entiendo su utilidad pero ahora que lo veo,no comprendo como funciona.
  get_point(file1, grafico, point, offset x_point, offset y_point);   
el get_point modifica el x_point y el y_point segun el point...?¿?¿?me lo puedes explicar en cristiano que operacion hace?¿?
o tambien el real point...
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 24, 2020, 05:30:50 PM
Hola oskarg,

Muy chulo te está quedando, es clavado a como se movía en Jet set Willy. :)

Sobre get_point() es como dices, x_point e y_point están obteniendo los valores de la posición x e y de los cpoint y en el get_real_point() es a partir del grafico del proceso que lo llama.

get_point(file, graph, point, offset point_x, offset point_y); //devuelve los offset
get_point(point, offset point_x, offset point_y); //devuelve los offset pero del graph del proceso que lo llama

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 24, 2020, 06:06:49 PM
Hola AmakaSt,
Ahora estoy con el motor generico,me ha servido bastante hacer la base del jet set willy,lo que hacia era buscar colisiones en los 4 lados de una caja y segun que lado chocaba hacia cierta accion, veo que no es necesario,simplemente hay que buscar la colision en la caja y si chocas ,pues retrocedes para no quedarte anclado :P
A ver cuando lo acabo y entonces si,te paso algo decente para que lo incluyas a divgo.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 01, 2020, 04:44:03 PM
Hola AmakaSt,
Estoy con la duda de como hacer el motor de scroll de 320x240  de 16x16 tiles....a ver si me echas un cable..
Metodo
1.Hacer un motor puro de tiles aunque esto creo que no es lo mas adecuado pues  320/16=20 240/16=20  es decir 20x15==  300 tiles por capa.

2.Carga el mapa completo y utilizarlo directamente.Me limita mucho hacer mil efectos...

3.Partiendo de base el de arriba ,utilizar un sistema tipo neogeo,.......cargar en memoria los mapas enteros pero en memoria,es decir en el fpg ya lo tengo dibujado las capas.Entonces Copio del mapa de memoria fpg tiras de 16*256 ,tendria 20 tiras por capa +20 tiras si es mas alto que el mapa base...es decir si no fuera como el juego megaman ...si no fuera lineal ...

4.Crear un mapa base de 320x240 y aqui aplicar el scroll...como trabajo en 32 bits,cada vez que avanzo 16 pixeles copio 16x16 pixeles de tiles si avanzo a la derecha..es decir 240/16=15 pero como tengo que borrar porque trabajo en 32 bits son el doble de operaciones es decir 30...mas un lateral si fuera multidireccional ,es decir ,unas 60 operaciones "pega pastes".por capa...
Rectifico:serian 30 operaciones mas dos borras de ritas de 16*240 . por capa

5.leer aquello que me expresas,pues tu eres el creador de la criatura y no se que es lo mas optimo y eficiente y segun me digas pues lo hago.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 01, 2020, 05:54:22 PM
Vale...de momento utilizo el metodo 4,va bastante rapido.....
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 09, 2020, 11:48:26 AM
Hola amakast,
Cuando llegue a casa te Cuelgo un ejemplo de scroll que no funciona bien,si lo muevo manualmente va,pero si el tamaño del mapa es  a partir de una medida más grande que la resolución de pantalla ,llega un momento que se para,debe ser una tontería, pero  no entiendo  el motivo o la explicación
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 10, 2020, 08:54:06 AM
Quote from: oskarg on March 09, 2020, 11:48:26 AM
Hola amakast,
Cuando llegue a casa te Cuelgo un ejemplo de scroll que no funciona bien,si lo muevo manualmente va,pero si el tamaño del mapa es  a partir de una medida más grande que la resolución de pantalla ,llega un momento que se para,debe ser una tontería, pero  no entiendo  el motivo o la explicación
Hola oskarg,

Portando mi juego Panic! también he encontrado un bug en el scroll con el segundo plano (el del fondo) al iniciar el scroll con la cámara en una posición baja, una vez la cámara se mueve en la posición de más arriba este se ajusta haciendo un parpadeo un tanto feo.

Cuando tengas el ejemplo pásamelo y así corrijo todos los problemas con el scroll. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 17, 2020, 09:27:23 AM
Hola,

Aquí dejo unos ejemplos de efectos que se me han ocurrido usando la función get_image_tiles():

Efecto con tone: https://www.divgo.net/c-6e4c9b4e
Efecto con size_y: https://www.divgo.net/c-05aeab30
Efecto con mouse: https://www.divgo.net/c-6ed785f4

Y aquí dejo un ejemplo de escritura, para que se pueda aplicar en un marcador de record o en donde sea: https://www.divgo.net/c-05275e59

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on March 17, 2020, 04:17:25 PM
Muy chulo los ejemplos. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 04, 2020, 12:21:21 PM
Buenas a todos,

Ya está disponible online (para realizar testeos) una nueva versión de DivGO para pasar esta cuarentena, la versión 1.28.0 y sus novedades: 


funciones:
   - change_text();

bugs y mejoras:
   - [ADD] nuevas opciones en editor gráfico
   - [ADD] aumento de rango size en editor gráfico
   - [FIX] corregida declaración array si se declara con un operador obtiene valor de la operación
   - [FIX] datos de variables reservadas para get_id() y colisiones
   - [FIX] solucionado problema con espacios reservados a condiciones
   - [FIX] screen_mooth() y screen_scaline() ahora funcionan bien dentro de bloque loading
   - [FIX] problemas en el compilador al unir condiciones and y or si tiene un salto de línea
   - [FIX] solucionado problemas con scroll y su inicialización si existía una iniciada antes
   - [FIX] corregido problemas con draw() y xdraw() al definir tamaño de su región
   - [DEL] opción smooth en editor gráfico no tenia sentido, ahora siempre a false




Ejemplo de la función change_text(): https://www.divgo.net/c-d364937d

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 06, 2020, 09:54:07 AM
Buenas,

Otra versión subida, la 1.28.2, que mejora el redimiento de la función map_get_pixel(): https://www.divgo.net/c-b5d6b9bd

Un saludo.  8)
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 08, 2020, 10:47:49 AM
Hola Amakast.

Puedes explicarme como usar estas funciones:

path_find(modo, fichero, gráfico, escala, x, y, OFFSET estructura, sizeof(estructura));
path_free(fichero, gráfico, escala, x, y);
path_line(fichero, gráfico, escala, x, y);


Estas funciones se me resisten,sigo sin saber como usar esto,otra cosa...hace tiempo subistes un ejemplo para que una nave siguiera un recorrido pero sigo sin entender el codigo,puedes explicarmelo.

Te pongo el enlace de tu ejemplo.
https://www.divgo.net/c-df6b4c63

Por cierto,la pagina de divgo hay veces que no funciona y cuando pude entrar y intente entrar en los ejemplos no funciona el enlace.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 10, 2020, 02:25:35 PM
Hola hokuto40,

Estas 3 funciones las he estado probando ahora y no están funcionando correctamente, puede que haya cambiando alguna cosa reciente que ha afectado su funcionamiento. Las pongo en pendiente de corrección para la próxima versión.  ???
PROGRAM ejemplo_get_point;

GLOBAL
    fichero1;
    punto=1;
    x_punto;
    y_punto;

BEGIN
    set_mode(m320x200);
    fichero1=load_fpg("graficos/help");
   
    put_screen(fichero1, 4);
   
    graph=101;
    file=fichero1;
       
    LOOP
        IF (fget_dist(x, y, x_punto, y_punto)<6)
            IF (punto++==50) punto=1; END
        END

        // Cogemos el punto de control
        get_point(fichero1, 4,punto, offset x_punto, offset y_punto);

        angle=fget_angle(x, y, x_punto, y_punto);
        advance(6);
        FRAME;
    END
END


Hay 4 funciones claves que hace que todo funcione así, la primera condición dentro del loop lo que hace es comprobar con fget_dist() la distancia del punto (x_punt, y_punto) y la nave (x, y) y si es menor de 6 pixeles en la siguiente condición incrementa 1 punto y comprueba si es igual de 50 para volver al punto 1.

Luego get_point() devuelve la posición x e y del siguiente punto (en la condición anterior lo ha incrementado o devuelto al primero) y los pasa a la variable x_punto e y_punto.

Y por último fget_angle() devuelve el ángulo que hay entre las variable x e y de la nave y x_punto e y_punto, al devolverlo a la variable angle esta cambiando el ángulo de la nave y luego advance() hace que la nave se mueva en la dirección del ángulo.

Y no hay más...

Sobre que a veces no te funciona la pagina... No te carga la pagina al pulsar en los enlaces o la pagina en si?

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 10, 2020, 07:05:55 PM
¿Pero como va esto?,yo dibujo un recorrido en el mapa y con ese codigo me lo recorre el sprite,¿da igual el recorrido que dibuje?.

¿Hay que crear un fondo y luego otro fondo en negro con el recorrido?,no tengo ni idea de como va esto.

Lo mismo me pasa con la funcion path_find(),no se exactamente que es lo que hay que hacer.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 10, 2020, 10:44:05 PM
Quote from: hokuto40 on April 10, 2020, 07:05:55 PM
¿Pero como va esto?,yo dibujo un recorrido en el mapa y con ese codigo me lo recorre el sprite,¿da igual el recorrido que dibuje?.
¿Hay que crear un fondo y luego otro fondo en negro con el recorrido?,no tengo ni idea de como va esto.

Lo mismo me pasa con la funcion path_find(),no se exactamente que es lo que hay que hacer.
Sí a lo primero pero debes ponerle puntos de control con un editor FPG o de MAPs (solo estos dos formatos tienen los puntos de control). Se pueden añadir también por código a cualquier imagen con la función set_point(fichero, gráfico, número, x, y);

En este ejemplo veras los puntos de control que tiene ese MAP: https://www.divgo.net/c-74c4ef60

La función path_find() si que funcionaba con tonos en blanco y negro.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 11, 2020, 09:38:44 AM
Ahora si que a quedado claro,gracias. ;)

Tengo otra duda.
IF (fget_dist(x, y, x_punto, y_punto)<6)
            IF (punto++==50) punto=1; END
        END

Este codigo seria igual a este.
IF (fget_dist(x, y, x_punto, y_punto)<6)
            punto++;
            IF (punto == 50) punto=1; END
        END


Por cierto cuando arregles estas funciones seria bueno que hicieras algunos ejemplos con ellas, que no hay.
path_find(modo, fichero, gráfico, escala, x, y, OFFSET estructura, sizeof(estructura));
path_free(fichero, gráfico, escala, x, y);
path_line(fichero, gráfico, escala, x, y);
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 11, 2020, 12:27:52 PM
Y ya está disponible para descargar la versión 1.28.2 de Div GO: https://www.amakasoft.com/herramientas/div-go.html

Quote from: hokuto40 on April 11, 2020, 09:38:44 AM
Tengo otra duda.
IF (fget_dist(x, y, x_punto, y_punto)<6)
            IF (punto++==50) punto=1; END
        END

Este codigo seria igual a este.
IF (fget_dist(x, y, x_punto, y_punto)<6)
            punto++;
            IF (punto == 50) punto=1; END
        END

Si. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: hokuto40 on April 11, 2020, 06:05:16 PM
Ultima pregunta.

Te pongo el ejemplo de los puntos.
https://www.divgo.net/c-df6b4c63

¿Y como se hace con set_point()?
No hay ejemplo de set_point() y no se muy bien como hacerlo,tal vez seria bueno que hicieras el mismo ejemplo que te he puesto pero con set_point().
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 23, 2020, 02:53:18 PM
Buenas a todos,

Ya está disponible online (para realizar testeos) la versión 1.30.0 de DivGO y las novedades: 


bugs y mejoras:
   - [FIX] corregida función fullscreen_scale() y manejo manual de los scrolls
   - [FIX] corregido problema al asignar una tabla procedente de otra tabla de dos dimensiones o al operar entre ellas
   - [FIX] solucionado loading de carga archivos formato fpg y fnt
   - [FIX] control de dibujado al llamar a frame, si no hay frame no dibuja el proceso
   - [FIX] corregidas funciones path_find(), path_free() y path_line()
   - [DEL] eliminado onfocus() en canvas tanto en proyector como en proyectos empaquetados




Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 23, 2020, 03:20:26 PM
Quote from: hokuto40 on April 11, 2020, 06:05:16 PM
Ultima pregunta.

Te pongo el ejemplo de los puntos.
https://www.divgo.net/c-df6b4c63 (https://www.divgo.net/c-df6b4c63)

¿Y como se hace con set_point()?
No hay ejemplo de set_point() y no se muy bien como hacerlo,tal vez seria bueno que hicieras el mismo ejemplo que te he puesto pero con set_point().
Hola hokuto40,

He creado los ejemplos tanto para set_point() como para las funciones path_line(), path_free() y path_find().  :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 23, 2020, 07:44:30 PM
Muchas gracias AmakaSt,el domingo por mi parte trasteo a fondo divgo con  la nueva version y si veo algo que falla te comento.
Otra cosa,en el juego de  Zelda siempre me ha dado error ................ FUENTE=LOAD_FONT("fuentes/USER/zelda/ZELDA.fnt"); -- NO SE ENCONTRÓ
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 25, 2020, 12:25:59 PM
Quote from: oskarg on April 23, 2020, 07:44:30 PM
Otra cosa,en el juego de  Zelda siempre me ha dado error ................ FUENTE=LOAD_FONT("fuentes/USER/zelda/ZELDA.fnt"); -- NO SE ENCONTRÓ
Hola oskarg,

Ese error es debido a que no existe ZELDA.fnt, sino ZELDA.FNT. La carga de archivo por url hace distinción entre mayúsculas y minúsculas para localizar el archivo. Para una web o juego web, lo mejor es poner siempre los nombres de los archivos en minúsculas y así te evitas este tipo de problemas, en principio ya está corregido.  ;)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 02, 2020, 10:21:44 PM
Hola a todos,

Ya está disponible para descargar la versión 1.30.0 de Div GO: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)

Y aquí dejo un pequeño ejemplo de juego 3d, con marcador en 3d, colisiones de objetos y sombras: https://www.divgo.net/c-69054bbc

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 03, 2020, 04:03:27 PM
Hola AmakaST,
te adjunto archivo donde se muestran dos bugs
1.En tablas bidimensionales no puedo hacer sumas dentro de los [][] pues se intercambian las x por las y.
2.en map_block copy tampoco puedo hacer operaciones tipo (j-1)*8 porque me expresa que la variable no existe...dentro de un for
AL ver el codigo se entendera adecuadamente donde pone Falla!!!
Adjunto archivo y codigo fuente:

program Plataformas_10x10;
GLOBAL
Coli_box;//colision caja
P_x = 8;//Posicion x
P_y = 8*14;//rectangulo alto
P_ancho=8;
P_alto= 8;//16
zz;
T_fondo[128,128];//para no complicar el algoritmo lo hago en dos dimensiones...quizas lo cambie.....
                //10 pantallas.....de tamaño 128x128 .....
//T_salto[]=-10,-8,-6,-4,-2,-2,-1,-1,0,0,1,1,2,2,4,6,8,10;   
//T_salto[]=-9,-7,-5,-2,-2,-1,-1,0,1,1,2,2,5,7,9;   
T_salto[]  =0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;   /////////15..............
T_salto1[] =-3,-3,-2,-1,0,0,0,0,0,1,2,3,3;   /////13
T_salto2[] =-4,-4,-3,-2,-2,-1,-1,0,0,0,0,0,0,0,0,1,1,2,2,3,4,4;   /////////22..............
T_tipo[]   = 0,1,2,3,4,5,6,7,8,9;
T_coli[]   = 0,0,0,0;
N_colisiones=0;

//T_salto2[] =-10,-8,0,8,10;   /////////19..............

indice_salto=0;
               
Tabla_Fondo[17,17];   
valor_tabla;


T_x  = 8;//posicion rectangulo x
T_y  = 8;//posicion rectangulo y
T_ancho=8;
T_alto =8;

caida=1;
Poder_salto=6;
v_g=2;
saltando;
salto_poder=8;
puedo_saltar=0;
jota1;
jota2;
jota3;
jota4;
jota5;
jota6;
jota7;
jota8;
dista_up;
dista_do;
dista_le;
dista_ri;
coli_up;
coli_do;
coli_le;
coli_ri;
coli_tipo;
mame;
FICHERO1;
Prota_cajax;
Prota_cajay;
Prota_estoy;
Prota_Saltando;
Prota_H;
Prota_V;
escaleras;
piiso;

Box_x;
BOx_y;
BOX_YY;
TOTAL;
LOADING
    set_mode(m320x240);
    set_title("Game´s Evoteka: Cargando...");

  text = 'Cargando datos...';
text_color = rgb(255, 220, 200);
text_size = 40;
  text_x = 240;
text_y = 200;
text_position = 4;

BEGIN
set_title("My Program Name");
    set_mode(128,128,3);
    set_color(rgb(0,0,0));
    screen_color(rgb(20,50,10));
    screen_smooth(false);
screen_color(cc_silver);
set_fps(40, 0);
     text_size=42;
    //write_int(0,0,20,0,offset jota1);
   
     FICHERO1=load_fpg("graficos/motor0001/");
     
      write_int(0,40,10,0,offset jota1);
      write_int(0,40,20,0,offset jota2);
     // write_int(0,40,30,0,offset jota3);
     // write_int(0,40,40,0,offset jota4);
     // write_int(0,40,50,0,offset jota5);
    //  write_int(0,40,60,0,offset jota6);
    //  write_int(0,40,80,0,offset jota7);
    //  write_int(0,60,80,0,offset jota8);
     
   
    Graba_tabla();
   
   // Tile(T_x,T_y);
//Prota(P_x,P_y);
   
loop
IF (key(_esc))
        unload_fpg(Fichero1);
        exit("Text Exit", 1);
        END

frame;
end
end


/*
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██           GRABA  TABLA              ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
*/
PROCESS Graba_tabla()
private
pixel,xx,yy;
BEGIN
FILE=FICHERO1;
set_center(0,14,0,0);
FOR(y=0;y<16;y++)
FOR(x=0;x<16;x++)
    pixel=map_get_pixel(file,14,x,y,"r");
      xx=x+1;
      yy=y+1;
     
    SWITCH(pixel)
          CASE 1  : tabla_fondo[xx][yy]=4;END
          CASE 10 : tabla_fondo[xx][yy]=3;END
          CASE 20 : tabla_fondo[xx][yy]=2;END
          CASE 255: tabla_fondo[xx][yy]=1;END
          DEFAULT   tabla_fondo[xx][yy]=0;END
         
    END     
   
/*  ­­­­­­­­­­­­­­­­­      FALLA    ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­               
       SWITCH(pixel)
          CASE 1  : tabla_fondo[x+1][y+1]=4;END
          CASE 10 : tabla_fondo[x+1][y+1]=3;END
          CASE 20 : tabla_fondo[x+1][y+1]=2;END
          CASE 255: tabla_fondo[x+1][y+1]=1;END
          DEFAULT   tabla_fondo[x+1][y+1]=0;END
         
    END   
    ­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
     ME INVIERTE LAS X POR LAS Y ?¿?.....
*/   
   
   
END
END


PINTA_FONDO();
END

/*
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██      PINTA FONDO TABLA              ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
*/
PROCESS PINTA_FONDO()
private i,j,valor,pixel,xx,yy;
BEGIN
file=FICHERO1;
//graph=800;

x=128/2;
y=128/2;


start_scroll(0,FICHERO1 , 800, 9, 0, 0);
scroll[0].front.alpha = 100; scroll[0].back.alpha = 100;

FOR(i=1;i<17;i++)
FOR(j=1;j<17;j++)
     pixel=tabla_fondo[j][i];
     SWITCH(pixel)
          CASE 0 : valor = 810;END
          CASE 1 : valor = 802;END
          CASE 2 : valor = 702;END
          CASE 3 : valor = 703;END
          CASE 4 : valor = 706;END
         
    END   
    xx=j-1;
    yy=i-1;

   map_block_copy(fichero1, 800, xx*8+4,yy*8+4,valor , 0,0, 8,8);//dibuja un punto en el centro...

/*___________________________        FALLLA    ______________________________________________________________
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
   map_block_copy(fichero1, 800, (j-1)*8+4,(i-1)y*8+4,valor , 0,0, 8,8);//dibuja un punto en el centro...

­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­

*/   
END
END

refresh_scroll(0);

//start_scroll(0, fichero1, 830, 201, 0, 15);


LOOP

scroll[0].back.y  -=0.5;

FRAME;
END

END


Sugerencias Sobre el editor fpg:
1.Deberia haber  alguna forma de poder importar las imagenes directamente al fpg de divgo...por ejemplo si tengo en una carperta con imagenes numeradas 000.png 001.png que leyera esa carpeta o que la pudiera arrastrar y añadir directamente los graficos..
2.Si me equivoco en un grafico en su asignacion dios mio!!lo tengo que repetir todo,tendria que haber alguna forma de eliminar el grafico o copiar encima otro.
3.Cuando cierro el editor fpg y por ejemplo estoy en el grafico 300..cuando lo vuelva abrir su indice deberia mantenerse en el 300 no el primer numero no asignado a un grafico

Un saludo y sigo programando....



Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 04, 2020, 06:48:42 AM
Rectifico , debería cuando abriera el editor de gráficos en el gráfico 301 , siempre y cuando estuviera vacío  y si no es de ese modo ,el siguiente que cumpla tal norma
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 11, 2020, 02:49:05 PM
Hola AmakaSt,
Cómo inicializo una tabla de dos dimensiones  con valores predefinidos?¿?
en tabla normal es asi tabla[]=1,2;
                         en dos dimensiones?¿?
                             T_C[][] = { {6,7},{3, 8}, {1,0}, {9,5} }; no va. me dice variable no definida.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 14, 2020, 02:09:10 PM
Hola Amakast,
Hace días que no te veo por este medio, espero que estés bien de salud y tú familia.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on July 27, 2020, 07:07:15 AM
Hola Amakast,
El otro día  comencé a programar en divgo ,pero me topé con el problema de la inicialización de tablas bidimensionales que no sé cómo se hacen en este lenguaje y también con el bug que expliqué en su momento un poco más abajo que cambia las x por las y si hago una asignación dentro de los corchetes....
Cuando puedas me dices algo de cómo hacerlo
Gracias
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on August 18, 2020, 07:16:26 PM
Hola oskarg,

He estado en "standby" durante un periodo, ningún problema de salud, a veces me saturo y prefiero desconectar, dedicar el tiempo libre a otras cosas... y tener mellizos me consume mucho de ese tiempo.

Sobre las tablas bidimensionales, aquí te dejo un ejemplo de cómo funciona en Div:
program PruebaTabla2D;
global
    tabla[4,2]   = 0,1,2,3,4,
                   5,6,7,8,9,
                   0,1,2,3,4;

begin
    set_mode(m320x240);
    set_fps(60, 0);

    for (x = 0; x < 5; x++)
        for (y = 0; y < 3; y++)
            write_int(0, x * 20, y * 20, 0, &tabla[x,y]);
        end
    end
   
    loop       
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
end


En DivGO falla porque las tablas de dos dimensiones las programé de forma diferente (como funcionaría en otros lenguajes), así es como funciona ahora:
program PruebaTabla2D;
global   
    tabla[4,2]   = 0,1,2,3,4,
                   5,6,7,8,9,
                   0,1,2,3,4;
                   
begin
    set_mode(m320x240);
    set_fps(60, 0);

    for (x = 0; x < 5; x++)
        for (y = 0; y < 3; y++)
            write(0, x * 20, y * 20, 0, tabla[x][y]);
        end
    end
   
    loop       
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
end

En próximas versiones funcionara como en Div, tengo que arreglarlo, está mezclado.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on August 18, 2020, 08:10:53 PM
Hola AmakaSt
Me alegra saber que estás bien,hacía tiempo que no publicabas algo y tampoco queria preguntar al respecto por si era un tema algo incomodo y como no veia respuesta tampoco yo me motivaba para trastear con divgo .

Sobre los mellizos,los crios dan mucho trabajo,pero tambien dan  muchas alegrias y sabiendo que has tenido dos de golpe...ya sabes.si te animas... el siguiente reto es tener trillizos.

Gracias por la explicacion de las tablas ,no sabia como hacer algo tan simple.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on August 21, 2020, 12:22:35 AM
felicitaciones por los mellizos!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 05, 2020, 10:59:04 PM
Quote from: SplinterGU on August 21, 2020, 12:22:35 AM
felicitaciones por los mellizos!

Gracias SplinterGU! :)

Quote from: oskarg on August 18, 2020, 08:10:53 PMHola AmakaSt
Me alegra saber que estás bien,hacía tiempo que no publicabas algo y tampoco queria preguntar al respecto por si era un tema algo incomodo y como no veia respuesta tampoco yo me motivaba para trastear con divgo .

Sobre los mellizos,los crios dan mucho trabajo,pero tambien dan  muchas alegrias y sabiendo que has tenido dos de golpe...ya sabes.si te animas... el siguiente reto es tener trillizos.

Gracias por la explicacion de las tablas ,no sabia como hacer algo tan simple.
Un saludo.
Si ahora dejara embarazada a mi mujer me cortaba las bolas... imagínate si encima fueran trillizos!!  :o :o :o :o

Bien... Y ahora lo refrescante para acabar el verano, después de mucho tiempo... una nueva versión de Div GO!  8)

Y las novedades de esta versión 1.32.0:


funciones:
   - polytone(), pause_song(), continue_song();
bugs y mejoras:
   - [ADD] incluida la Web Audio Api y cambiado todo el sistema de audio de div go
   - [ADD] añadida la nueva Web Api de fuentes FontFace, mejorando las cargas de las mismas
   - [ADD] el botón de compilar código ahora se bloquea en espera de respuesta del compilador
   - [FIX] correcciones y mejora en el funcionamiento de las tablas de dos dimensiones
   - [FIX] solucionado el funcionamiento de las funciones out_region() y out_region_dist()
   - [FIX] corregido varios problemas leves del ide
   - [CHANGE] versión windows pasa a Electron (https://www.electronjs.org/), más actual y con soporte a nuevas apis




Aquí dejo un ejemplo de la nueva función polytone(): https://www.divgo.net/c-08908a0c

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 07, 2020, 04:39:31 PM
Hola a todos,

Ya está disponible para descargar la versión 1.32.0: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)

La versión Windows ha cambiado, ha pasado de PHPDesktop a Electron. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 07, 2020, 04:43:35 PM
Hola AmakaSt,
Gracias por las novedades,
Acabo de probar el comportamiento de las tablas,ahora se asigna correctamente los valores en dos dimensiones ,pefecto.
Sigo trasteando...
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on September 07, 2020, 05:05:01 PM
Hola oskarg,
Recuerda que ahora funcionan como en Div 2: variable[x, y];

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 18, 2020, 12:26:03 PM
Hola AmakaST,he encontrado un bug  bastante curioso
te adjunto ejemplo.Simplemente no permite hacer dos comparaciones una seguida de otra  guau!!!.debo eliminar una de las dos lineas,sino me pone variable no definida.


/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
    points = 0;
    hi_score = 0;

begin
set_title("My Program Name");
    set_icon("graficos/009.png");

// screen canvas options
set_mode(480, 320);
screen_color(cc_silver);

set_fps(60, 0);

     BUG(100,200);

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process BUG(cajax, cajay);
private
xa,ya; 
   
begin
   IF (cajax <= 0 ) xa = cajax; END///de momento lo hacemos de este modo.//si elimino una de estas dos lineas funciona!!!!!!!!!
       IF (cajay <= 0 ) ya = cajay; END///de momento lo hacemos de este modo. //si elimino     una de estas dos lineas funciona.!!!!!!!
       
loop

frame;
end
end





Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 18, 2020, 04:31:50 PM
Hola oskarg,

Acabo de probarlo y el problema se da en los comentarios de después de END. Al pegar los comentarios a END e incluir una barra de más el compilador ignora el comentario pero dejando una pegada a "END/" y deja de reconocer END y da como que la variable no fue definida.

38        IF (cajay <= 0 ) ya = cajay; END/ -- VARIABLE NO DEFINIDA!
44 end [/size] -- ERROR
 
Prueba en separar el comentario de END o poner solo // en vez de ///, para la próxima versión mirare de corregirlo. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 25, 2020, 09:05:06 PM
Hola a todos,
Ya está disponible online (para testeos) una nueva versión de DivGO, la 1.34.0:


bugs y mejoras:
   - [ADD] gamepad virtual para dispositivos con pantalla táctil
   - [ADD] nuevo minimap de código en el ide
   - [FIX] corregido bloqueo de scroll del plano de fondo
   - [FIX] espacio entre caracteres en el formato fnt
   - [FIX] fpg.dat ahora cambia de manera correcta la posición de un gráfico movido o eliminado
   - [FIX] problema con pestañas si tienes proyectos en divgo en distintas carpetas
   - [FIX] comentarios de una línea con más de una barra y apegado a un valor, variable o palabra reservada
   - [CHANGE] los fpg.dat ya no se escriben al compilar, solo al empaquetar proyecto
   - [CHANGE] función load_sound() ahora dispone de 2 nuevos parámetros de repetición
   - [UPDATE] analizador de programa, ahora incluye los datos de filtros del proceso




Aquí os pongo una demostración del gamepad virtual: https://www.divgo.net/proyectos/virtualpad/
Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on October 25, 2020, 10:14:03 PM
Me gustaría probar a portar un pequeño juego a DivGO, pero no sé ni por dónde empezar...

Este sería el juego:
https://www.dropbox.com/s/gu50ulecake7s4c/elduelo-1.0.divpmproject.7z?dl=1

¿Hay alguna forma de subir FPGs enteros directamente?
¿Existe la posibilidad de tener códigos en varios archivos?
¿Se pueden abrir archivos de texto?
Me encantaría un videotutorial de cómo portarías este juego xD

(Si alguien quiere probar el juego en un ejecutable de Windows, que vaya aquí:
https://rawrlab.itch.io/el-duelo)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 25, 2020, 10:37:16 PM
Hola AmakaST,
1.El gamepad está muy bien,¿Cómo veo el código fuente?pues me carga directamente el ejemplo ya compilado.
2.El analizador de programa nunca lo he comprendido cómo funciona exactamente en divgo.No es que lo utilice,pero me gustaría entenderlo,Me explico,por ejemplo compilo el ejemplo de procesos lo ejecuto y ahora toco la pestaña de "analizar".
  1.Ocupa toda la pantalla y como el marco no es transparente  no veo que pasa en el juego.
  2.Si no tengo la tecla pulsada,por ejemplo la de avanza a la derecha,no puedo observar luego en el "analizador" como cambia su valor de x,por más que la pulse y toque al siguiente frame.Con lo cual ,no es " interactivo" y esto hace que lo omita y emplee variables con write para saber que realmente pasa.
Un saludo.

     
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 26, 2020, 02:08:24 AM
Quote from: panreyes on October 25, 2020, 10:14:03 PM
Me gustaría probar a portar un pequeño juego a DivGO, pero no sé ni por dónde empezar...

Este sería el juego:
https://www.dropbox.com/s/gu50ulecake7s4c/elduelo-1.0.divpmproject.7z?dl=1 (https://www.dropbox.com/s/gu50ulecake7s4c/elduelo-1.0.divpmproject.7z?dl=1)

¿Hay alguna forma de subir FPGs enteros directamente?
¿Existe la posibilidad de tener códigos en varios archivos?
¿Se pueden abrir archivos de texto?
Me encantaría un videotutorial de cómo portarías este juego xD

(Si alguien quiere probar el juego en un ejecutable de Windows, que vaya aquí:
https://rawrlab.itch.io/el-duelo (https://rawrlab.itch.io/el-duelo))
Hola panreyes,

Div GO es compatible con los fpg, fnt y map de Div, Fenix y BennuGD, los ejemplos de Steroid, Pitfall, Exploss y Zelda cargan este formato. Sobre los códigos en varios archivos se pueden incluir varios prgs con el bloque include ".prg", ".prg", ".prg"; Este debe estar en el program antes que su begin y los prgs incluidos no deben de tener un program, solo procesos y funciones.
También es posible cargar archivos de texto, al igual que leer datos de BBDD, haciendo uso de load_external_data() y save_external_data(), hay un ejemplo en la carpeta de ejemplos.

Si tengo un rato pruebo en portar tu juego y te lo dejo preparado para que puedas trabajar, y te pueda valer de ejemplo. :)

Quote from: oskarg on October 25, 2020, 10:37:16 PM
Hola AmakaST,
1.El gamepad está muy bien,¿Cómo veo el código fuente?pues me carga directamente el ejemplo ya compilado.
2.El analizador de programa nunca lo he comprendido cómo funciona exactamente en divgo.No es que lo utilice,pero me gustaría entenderlo,Me explico,por ejemplo compilo el ejemplo de procesos lo ejecuto y ahora toco la pestaña de "analizar".
  1.Ocupa toda la pantalla y como el marco no es transparente  no veo que pasa en el juego.
  2.Si no tengo la tecla pulsada,por ejemplo la de avanza a la derecha,no puedo observar luego en el "analizador" como cambia su valor de x,por más que la pulse y toque al siguiente frame.Con lo cual ,no es " interactivo" y esto hace que lo omita y emplee variables con write para saber que realmente pasa.
Un saludo.
     
Hola oskarg,

1. Aquí te pego el código, es como el ejemplo de las colisiones pero he incluido las variables del struct joy, también valen las del struct pad. Luego es activar la opción en el compilador a la hora de empaquetar o proyectar, lo mismo que el botón de fullscreen.
// Pruebas de compilador online Div Games
// Php + Html5 + Canvas + Javascript
// by J. Manuel Habas

program ejemplo_collision;
global
    id_txt1, id_txt2;
    puntos = 0;
    sonido1, sonido2, sonido3;
   
begin
    sonido1 = load_sound("sonidos/inicia.ogg", 0);
    sonido2 = load_sound("sonidos/disparo.wav", 0);
    sonido3 = load_sound("sonidos/elimina.wav", 0);

    set_title("Div GO : Ejemplo de Colisiones");

    /* pruebas con opciones de pantalla */
    set_mode(480, 320);
    screen_color(#025);

    set_fps(60, 0);

    // inicia scroll
    start_scroll(0, 0, 2, 2, 0, 0);
    start_scroll(1, 0, 2, 2, 0, 0);

    scroll[0].front.alpha = 20; scroll[0].back.alpha = 10;
    scroll[1].front.alpha = 80; scroll[1].back.alpha = 40;
   
    text_color = #fff;
    text_size  = 50;
    id_txt1 = write_int(0, 240, 20, 4, offset puntos);
   
    text_color = #ccc;
    id_txt2 = write(0, 240, 90, 4, "Pulsa [B] [N] o [M] para disparar");
   
    shadow_text(id_txt1, #000, 1, 1, 2);
    shadow_text(id_txt2, #000, 1, 1, 2);
   
    nave(240, 290);
    enemigo();
   
    loop
        scroll[0].front.y -= 0.5; scroll[0].back.y -= 0.25;
        scroll[1].front.y -= 2; scroll[1].back.y -= 1;
       
        if (key(_esc)) exit("Amaka Soft 2012", 1); end

        frame;
    end
end

process nave(x, y);
private
    disparado;
   
begin
    graph = 6;
    size  = 50;
   
    loop       
        if (key(_left) and x > 20)
            scroll.front.x += 0.5; scroll.back.x += 0.25;
            scroll[1].front.x += 2; scroll[1].back.x += 1;
            x -= 3;
        end
       
        if (key(_right) and x < 460)
            scroll.front.x -= 0.5; scroll.back.x -= 0.25;
            scroll[1].front.x -= 2; scroll[1].back.x -= 1;
            x += 3;
        end

        if (joy.left and x > 20)
            scroll.front.x += 0.5; scroll.back.x += 0.25;
            scroll[1].front.x += 2; scroll[1].back.x += 1;
            x -= 3;
        end
       
        if (joy.right and x < 460)
            scroll.front.x -= 0.5; scroll.back.x -= 0.25;
            scroll[1].front.x -= 2; scroll[1].back.x -= 1;
            x += 3;
        end

        if ((key(_b) or key(_n) or key(_m) or joy.button1 or joy.button2) and disparado < 1)
            disparo(x, y-20); sound(sonido2, 200, 256);
            disparado = 5;
            delete_text(id_txt2);
        end
           
        disparado --; if (disparado < 0) disparado = 0; end
       
        frame;
    end
end

process disparo(x, y);
begin
    graph = 3;
    angle = 90000;
    size  = 15;
    z      = 10;
   
    loop
        y -= 5; if (y < -10) break; end
       
        frame;
    end
end

process enemigo();
private
    desformacion, anima;
    energia_enemigo = 5;
    id_disp;
   
begin
    graph = 5;
    x       = rand(0, 480)
    y      = -50;
    size  = rand(60, 110);
   
    sound(sonido1, 100, 256);
   
    loop
        if (desformacion == 0)
            shear_x += 4; if (shear_x > 50) desformacion = 1; end
        else
            shear_x -= 4; if (shear_x < -50) desformacion = 0; end
        end

        y+= 5; if (y > 100) y = 100; end
        if (anima == 0)
            x-=2; if (x <0) anima = 1; end
        end
       
        if (anima == 1)
            x+=2; if (x >480) anima = 0; end
        end       
       
        if (anima == 2)
            size -= 5; if (size < 0) puntos += 100; enemigo(); break; end
        end
       
        id_disp = collision(type disparo);
        if (id_disp)
            puntos += 5; energia_enemigo --;
            signal(id_disp, s_kill);
        end
       
        if (energia_enemigo < 0 and anima <> 2) anima = 2; sound(sonido3, 200, 256); energia_enemigo = 0; end
       
        frame;
    end
end


2. Hay que mejorarlo y añadir más cosas aún, pero a mí me ha ido bien para portar Panic!, cambiar el tono y saturación del prota, al pulsar siguiente frame, en el cuadro de imagen del proceso puedo ver el cambio que se hace en las variables con el graph, también se puedes ver donde esta un proceso, si se ha ejecutado o está en el limbo y su estado, pero aun hay que añadir más cosas, para que sea realmente mucho más útil.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on October 26, 2020, 08:31:21 AM
Hola AmakaST,
Una sugerencia
Según el tipo de navegador que utilice las colisiones son lentas,tipo collision()  ..por ejemplo en este ejemplo que me has ofrecido,si el proyectil esta cerca del trebol se ralentiza.Esto depende mucho del navegador por lo que observo,en chrome es bien marcado.
Si pongo collision_box...soluciono el probrema,me imagino que haces una simple interseccion de cajas,perfecto,pues bien, mi sugerencia es que esa caja ,colision_box()pueda definir su tamaño size=100 % o size=20% o mejor aun su alto,ancho,de esta manera  quedaria como colision_box(type proceso,ancho,alto);
se me olvidaba ,donde alto y ancho corresponde proceso del trebol.
sigo trasteando....
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 27, 2020, 08:13:09 PM
Ya se encuentra disponible para descargar la versión 1.34.0: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)

He subido una pequeña actualización de versión a la 1.34.1 que corrige algunos bugs en el compilador, detectado con el juego elduelo de panreyes. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on October 31, 2020, 11:39:03 PM
Nueva versión 1.34.2 que corrige algunos bugs:



bugs y mejoras:
   - [FIX] problemas con variable id del proceso
   - [FIX] fallos de compilación en structs que contienen structs con tablas




Ya disponible para descargar en: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 15, 2020, 10:14:15 AM
Buenos dias,
1.Me gustaria que algun dia  se estudiara poder implementara funciones como trae lua en el manejo de tablas.Poder insertar elementos y borrarlos en este lenguaje es muy sencillo y potente.Aunque ni idea si seria factible en divgo.

Como tengo vacas aprovecho para utilizar divgo y si me quedo bloqueado expongo....

2.Estaria bien que se pudiera añadir los puntos de control desde divgo en el editor de graficos.....creo que no se puede......O bien indicar un enlace del fpg editor ,o incluirlo como  herramienta externa .Lo digo para gente nueva que se inicia con este programa....

3.Me gustaria que las primitivas graficas pudiera no aplicar suavizado y dibujarlas desde su centro ,aunque se puede programar,es mas practico que lo traiga por defecto.

4.Que el tamaño de la caja de colision no este realmente determinado por el tamaño del grafico en si,sino que lo lo pueda establecer,por ejemplo diga ancho=20 pixeles ,alto=2 pixeles y sea dinamico,es decir que lo pueda modificar a mi antojo en cualquier momento.

5.Es una reiteracion esto,pero bueno,a veces cometo el error de añadir un grafico erroneo en el fpg con un numero equivocado,pues bien,ya no hay manera de borrarlo y me saca de mis casillas esto, ;D No entiendo por que no se puede insertar encima otro grafico externo .Como hago simples pruebas no es molesto,pero si inicio un proyecto grande   y sucede ;D es engorroso crear otra carpeta nueva,con otro nombre del fpg... e insertar otra vez las imagenes.

6.Siempre he pensado que seria muy util poder definir un grafico ciclico independientemente del scroll,por ejemplo Tengo un juego con  scroll de 320x240,ahora tengo un grafico de 120x8 ,el cual representa la lava,si lo pudiera hacer ciclico por ejemplo en el eje x directamente ya simularia  una animacion y bien sencilla y potente.Podria tener tropecientos graficos moviendose con sus tamaños diferentes,solo con cargarlos en el fpg su imagen inicial y si lo quisiera hacer mas versatil le iria pegando trozos de otro grafico.............vale.... lo puedo programar,pero no es lo mismo si ya por defecto lo trae,lo encuentro muy practico.

Un saludo




Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on November 15, 2020, 11:44:22 AM
Buenas Amakast :)

Aquí el rompedor de DivGOs xD

from parece algo roto por aquí:
https://www.divgo.net/c-c08fc05a
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on November 15, 2020, 11:52:04 AM
Y aquí no sé por qué al pulsar la R para reiniciar el juego no funciona:
https://www.divgo.net/c-72def422
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 15, 2020, 10:30:32 PM
Hola panreyes,

Me los apunto para revisión, el de from he localizado el problema y es bastante fácil de solucionar. En cambio el de return es un poco más complicado.

Gracias por los reportes. :)
Quote from: oskarg on November 15, 2020, 10:14:15 AM
Buenos dias,
1.Me gustaria que algun dia  se estudiara poder implementara funciones como trae lua en el manejo de tablas.Poder insertar elementos y borrarlos en este lenguaje es muy sencillo y potente.Aunque ni idea si seria factible en divgo.

Como tengo vacas aprovecho para utilizar divgo y si me quedo bloqueado expongo....

2.Estaria bien que se pudiera añadir los puntos de control desde divgo en el editor de graficos.....creo que no se puede......O bien indicar un enlace del fpg editor ,o incluirlo como  herramienta externa .Lo digo para gente nueva que se inicia con este programa....

3.Me gustaria que las primitivas graficas pudiera no aplicar suavizado y dibujarlas desde su centro ,aunque se puede programar,es mas practico que lo traiga por defecto.

4.Que el tamaño de la caja de colision no este realmente determinado por el tamaño del grafico en si,sino que lo lo pueda establecer,por ejemplo diga ancho=20 pixeles ,alto=2 pixeles y sea dinamico,es decir que lo pueda modificar a mi antojo en cualquier momento.

5.Es una reiteracion esto,pero bueno,a veces cometo el error de añadir un grafico erroneo en el fpg con un numero equivocado,pues bien,ya no hay manera de borrarlo y me saca de mis casillas esto, ;D No entiendo por que no se puede insertar encima otro grafico externo .Como hago simples pruebas no es molesto,pero si inicio un proyecto grande   y sucede ;D es engorroso crear otra carpeta nueva,con otro nombre del fpg... e insertar otra vez las imagenes.

6.Siempre he pensado que seria muy util poder definir un grafico ciclico independientemente del scroll,por ejemplo Tengo un juego con  scroll de 320x240,ahora tengo un grafico de 120x8 ,el cual representa la lava,si lo pudiera hacer ciclico por ejemplo en el eje x directamente ya simularia  una animacion y bien sencilla y potente.Podria tener tropecientos graficos moviendose con sus tamaños diferentes,solo con cargarlos en el fpg su imagen inicial y si lo quisiera hacer mas versatil le iria pegando trozos de otro grafico.............vale.... lo puedo programar,pero no es lo mismo si ya por defecto lo trae,lo encuentro muy practico.

Un saludo.
Hola oskarg,

1. No conozco las funciones de lua, si pudieras decirme cuales son y que hacen me lo puedo mirar para incluirlo.
2. No se puede actualmente, las imágenes que se generan en el editor son en formato png y este carece de los puntos de control de Div, en un futuro me gustaría implementarlo como información en el fpg.dat, para que eso fuera posible.
3. Pensé que ya tenía algo implementado para quitarle el suavizado a las primitivas, como en los procesos y la pantalla, me lo apunto para mirármelo. :)
4. Lo tengo apuntado para incluirlo en futuras versiones.
5. En la versión 1.34.0 hice unas correcciones sobre esto, donde pude localizar un problema que me estaba dando al mover un grafico de sitio y mantenía el espacio ocupado. ¿Te sigue fallando en la versión actual?
6. Ya existe una función para hacer esto o muy similar, donde puedes incluso ajustar el tamaño del grafico en el mapa: texture_in_map().

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 16, 2020, 08:47:38 AM
Buenos dias,
Explico por encima la mecanica de las tablas en Lua y si ves algo interesante lo meditas... ....:
1.Para declarar una tabla en lua
tabla = {}         --declar una tabla vacia ...no es necesario indicar el tamaño,pues se puede trabajar con tablas dinamicas...
tabla2 = {}       --creo  otra tabla o array
tabla[1] = "uno" ----- le asigno la cadena uno
tabla[2] = "la casa de tio tom" ----- le asigno la  cadena la cas de tio tom
tabla = {"a","b","c"}   inicio la tabla[1]=a ..tabla[2]=b tabla[3]=c

2.Para borrar todos los elementos de una tabla  y de nuevo quede vacia
tabla = nil       --------------ausencia de valor

3.El indice de las tablas puede ser cualquier cosa,por ejemplo incluso una palabra ,no es necesario que sea un valor numerico.
tabla = {}
tabla[1] = "a" --se asigna el valor a al indice 1
tabla["posicion_x"] = 3 -- se asigna el valor 3 a la llave "posicion_x"
tabla.pos = "vaca" --asigna el valor "vaca" a la llave pos

4.Mas ejemplos de inicio de tablas
tabla = { [1] = "a", [2] = "b", [3]= "c" }
tabla2 = { ["pos1"] = "a", ["pos2"] = "b", ["pos3"]= "c" }
5. Devolver la longitud de la tabla

tabla = {"a", "b", "c"}
print(#tabla)   ----con esta muletilla # sabemos la longitud de la tabla...
6.INSERTAR ELEMENTOS DE LA TABLA
table.insert (tabla, [pos], valor) o bien
table.insert (tabla, , valor)
donde [pos] indicamos en que posicion colocamos en nuevo valor a insertar,por defecto pos es la parte final de la matriz.
ejemplo 1.
tabla.insert(tabla,120) ---inserta en la tabla el valor 120 en la ultima posicion.
otro ejemplo definimos una tabla
tabla = {}
tabla = {"a", "c"}
table.insert(tabla, 2, "b") ---inserto en la posicion 2 de la tabla el valor b...
print(tabla[1], tabla[2], tabla[3]) ----con lo cual esto queda a,b,c

otro ejemplo empleando for.............. definimos una tabla
insertamos en cada frame los valores de x e y en la tabla ---aqui actua como si fuera una estructura de una tabla que tiene en sus campos variable_x y variable_y
  table.insert(tabla, {variable_x=x, variable_y=y    }); 

Ahora los leemos...Aqui simplemente le decimos ..ey leeme todos los valores de la tabla ....es un for especial,se puede hacer de forma tradicional,pero es mas sencillo asi,una vez que sabes la mecanica
for k, v in ipairs(tabla) do
  dibuja_elipse(v.x,v.y)---Aqui vemos como se accede a los elementos de la tabla..v e k son variables que no definimos en ningun sitio donde K dice haz un recorrido de todos los elementos de la
    tabla y  para acceder a los valores de variable_x 
  debemos de hacer v.x .. y para acceder a la variable_y v.y...con lo cual v.x==variable_x v.y=variable_y del primer primer frame k==1.. segundo frame k==2  v.x==x  v.y==y del segundo frame.
end
si queremos saber la longitud de la tabla empleamos el  #  por ejemplo empleando un for normal...
for i = 1, #tabla do  ----------hace un recorrido de la tabla desde el elemento 1 hasta el ultimo elemento de la tabla,donde #representa su tamaño.
   --
   --
   --
end

-----------------------------------------------------------------
mas ejemplos de table.insert
table.insert
Sirve para agregar un valor a una tabla creada

tabla = {}     
table.insert(t, 123)
tabla[2] = 321
print(t[1]) ----123  el tamaño ahora es 1.
print(t[2]) ----321 el tamaño ahora es de 2
tabla{}= nil   .....limpiamos la tabla ,la borramos...

También es posible seleccionar el indice al cual agregar el valor

tabla = {"a", "c"}
table.insert(tabla, 2, "b")

-----------------------------------------------------------------

ELIMINACION DE UN ELEMENTO DE LA TABLA
table.remove
Elimina un elemeto con el indice a eliminar

tabla = {"a", "b", "c"}
table.remove(tabla, 2)  --renuevo el elemento b de la tabla...en lua el primer elemento empieza por tabla[1]...
print(t[1], t[2)]            --imprimimos resultado a,c
print(#tabla)             ---- y su tamaño # si lo consultamos sera 2..
Tambien en lua se puede concatenar elementos y ordenar la tabla en orden ascendente ,pero como nunca lo he empleado  lo omito.


---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Sobre el editor...me explico..
Si creo un grafico en una posicion y luego quiero eliminarla no puedo ,vale..entonces lo que hago es cambiar su tamaño x e y a 1 pixel para evitar que ocupe espacio,lo que quiero es que esta imagen que he creado de un solo pixel lo pueda sustituir por una que tengo  en el disco duro,arrastrandola,pues me interesa que se encuentre en tal posicion,pero el editor me lo impide con el simbolo de prohibido.Consecuencia,tengo que crear un nuevo fpg,con un nuevo nombre y una nueva carpeta..no es lo ideal.
Entonces me digo..pues cambio manualmente el  fpg creado en el disco ,lo intento  modificar abriendolo como si fuera un  txt y luego lo guardo en su extension correspondiente,pero no afecta ,no puedo tampoco eliminar tal grafico manualmente ,con lo cual ,ni flowers .
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 17, 2020, 02:10:03 PM
Hola oskarg,

Muchas de las cosas que pones se pueden hacer también con Div GO sin mucha complicación, aquí te pongo un ejemplo de manejo de tablas: https://www.divgo.net/c-ae035f92

Un saludo. :)

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 17, 2020, 07:35:01 PM
Hola AmakaSt,
Me ha gustado bastante el ejemplo,he aprendido cosas que desconocia de divgo.
Ejemplos  como estos deberias incluirlo en divgo,sencillos pero muy practicos.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 17, 2020, 09:33:52 PM
Hola AmakaSt,
He probado texture_in_map,esta muy bien,pero como está implementado no se puede indicar en que lugar quiero que ese trozo de mapa lo tengo que colocar.
deberia ser de este modo :
texture_in_map(file, graph, width, height,  avance_x, avance_y,size_x,size,y,posicion_x,posicion_y);
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on November 18, 2020, 08:17:15 AM
Quote from: AmakaSt on November 15, 2020, 10:30:32 PM
Hola panreyes,

Me los apunto para revisión, el de from he localizado el problema y es bastante fácil de solucionar. En cambio el de return es un poco más complicado.

Gracias por los reportes. :)

Comunico por aquí que Amakast me dio solución por Discord. El problema del return era que faltaba un frame para evitar que se reiniciase infinitamente el juego 😅
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 18, 2020, 01:27:30 PM
Quote from: oskarg on November 17, 2020, 09:33:52 PM
Hola AmakaSt,
He probado texture_in_map,esta muy bien,pero como está implementado no se puede indicar en que lugar quiero que ese trozo de mapa lo tengo que colocar.
deberia ser de este modo :
texture_in_map(file, graph, width, height,  avance_x, avance_y,size_x,size,y,posicion_x,posicion_y);
Un saludo.
Hola oskarg,

La función texture_in_map() se aplica al graph del proceso, como write_in_map(), por lo que se puede posicionar con x, y, z, rotar, animar, aplicar filtros, cambiar alpha, etc... Aquí te dejo otro ejemplo con texture_in_map(): https://www.divgo.net/c-c036842a

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 01, 2020, 10:57:58 PM
Buenas noches,

Ya está disponible online la versión 1.36.0 de Div GO y las novedades:


funciones:
   - clear();

bugs y mejoras:
   - [ADD] nuevos parámetros opcionales en las funciones collision_box() y collision_circle()
   - [ADD] optimización en sistema de colisiones y nuevo modo debug para collision_box() y collision_circle()
   - [FIX] corregido un leve problema en la función collision()
   - [FIX] funciones draw_stamp() y xdraw_stamp() no estampaba en el background todas las draw() y xdraw() mostradas en el frame
   - [FIX] función texture_in_map() no desplazaba bien la textura dentro del mapa ni se posicionaba en el centro del graph
   - [FIX] solucionado problema con la carga de recursos cuando se hace la llamada dentro de un bloque global o private
   - [CHANGE] posición de pintando de primitivas a +0.5 en el canvas, que quita la línea de suavizado
   - [CHANGE] también en la posición para quitar línea de suavizado en la barra de progreso del bloque loading




Ejemplo de collision_box() con nuevos parámetros opcinales: https://www.divgo.net/c-ae0d0623 (https://www.divgo.net/c-ae0d0623)
Ejemplo de collision_circle() con nuevos parámetros opcionales: https://www.divgo.net/c-1cc72ce1

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 02, 2020, 09:24:38 PM
Hola Amakast,
Gracias por las mejoras y fix solventados.Una cuestion a  simple vista...
Cuando ejecutas el ejemplo de collision_box  en el proyector las cajas no se visualizan,desconozco si debe ser de tal manera.
La funcion clear()  me puedes poner un simple ejemplo...la definicion la comprendo mas o menos.. [devuelve valor de array vacio, limpia de datos el array].un ejemplo simple me aclararia su funcionamiento porque como indicas a que array afecta etc...
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 02, 2020, 11:50:00 PM
Quote from: oskarg on December 02, 2020, 09:24:38 PM
Hola Amakast,
Gracias por las mejoras y fix solventados.Una cuestion a  simple vista...
Cuando ejecutas el ejemplo de collision_box  en el proyector las cajas no se visualizan,desconozco si debe ser de tal manera.
La funcion clear()  me puedes poner un simple ejemplo...la definicion la comprendo mas o menos.. [devuelve valor de array vacio, limpia de datos el array].un ejemplo simple me aclararia su funcionamiento porque como indicas a que array afecta etc...
Un saludo.

Hola oskarg,

Tanto collision_box como collision_circle las líneas solo se visualizan en el ide para poder ver el size mientras desarrollas para poder ajustar los limites, en el proyector y en el empaquetado ya no se ven.
Sobre la función clear(), es como en el ejemplo que puse de manejo de arrays, que declare un array sin_datos[] para vaciar otros arrays, pero esto lo hace es más coherente sin necesidad de declarar un array.

program ejemplos_tablas;
global   
    tabla[]; //funciona las tablas dinamicas
    tabla2[] = "a", "b", "c", "d", 5, 6;
    //sin_datos[]; //no es necesario
   
begin
    set_mode(320, 200, 2);
    screen_smooth(false);
   
    tabla[1] = "uno";
    tabla[2] = "la casa de tio tom";
   
    text_size = 70;
    write(0, 0, 0, 0, tabla[1] + " : " + tabla[0, 1] + ", " + tabla[1, 1] + ", " + tabla[2, 1]);
    write(0, 0, 20, 0, tabla[2] + ", tamaño: " + sizeof(tabla[2]));
    write(0, 0, 40, 0, tabla2[2]);
   
    tabla2[2] = tabla; //se puede insertar una tabla dentro de otra
   
    write(0, 0, 60, 0, tabla2[2]);
    write(0, 0, 80, 0, tabla2);
   
    tabla2 = clear(); //vaciamos la tabla2
   
    write(0, 0, 100, 0, tabla2);
   
    tabla["pos1"] = "hola";
    tabla["pos2"] = "paco";
    tabla["posvale"] = "chanquete ha muerto";
   
    write(0, 0, 120, 0, tabla["pos1"]);
    write(0, 0, 140, 0, tabla["pos1"] + " " + tabla["pos2"]);
    write(0, 0, 160, 0, tabla["posvale"]);
    write(0, 0, 180, 0, tabla);
   
    loop
        frame;
    end
end


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 07, 2020, 06:41:09 PM
Versión 1.36.0 ya disponible para descargar en: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 15, 2020, 07:11:38 PM
Disponible versión 1.36.1 para descargar, que corrige problemas con la carga de fuentes fnt que provocaba bloqueos en la ejecución del programa.
https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 24, 2020, 01:39:51 PM
Y otra versión más para empezar las fiestas, disponible para descargar la versión 1.36.5, las novedades:



bugs y mejoras:
   - [ADD] optimizada carga de recursos para no volver a cargar un mismo recurso previamente cargado
   - [FIX] control de valores undefined provocado por gamepads de pocos botones
   - [FIX] corregido parpadeo de gráficos cuando se vuelve a cargar un recurso que había sido descargado
   - [FIX] control de carga de recursos para evitar carga de url null




Un saludo y felices fiestas.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 17, 2021, 12:14:25 PM
Buenos días AmakaSt,
En la ultima version de divgo me da errores en el compilador que antes no aparecian y por tanto no puedo ejecutarlos en esta version.ejemplo
65 CASE 38: MAPA_PANTALLA
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 17, 2021, 11:01:59 PM
Hola oskarg,

Desde la 1.32 se cambio el funcionamiento de las tablas de dos dimensiones, para que fuera similar a Div 2. Para quitar el error cambia las líneas con:          CASE  38: MAPA_PANTALLA[x][y]=138;END
          CASE 255: MAPA_PANTALLA[x][y]=100;END
          DEFAULT   MAPA_PANTALLA[x][y]=100;END


Por lo siguiente:          CASE  38: MAPA_PANTALLA[x,y]=138;END
          CASE 255: MAPA_PANTALLA[x,y]=100;END
          DEFAULT   MAPA_PANTALLA[x,y]=100;END


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 18, 2021, 09:31:23 AM
Gracias,
los comentarios // siguen dando errores,me ha costado darme cuenta de ello,hasta que los he eliminado y por fin ejecuta correctamente:

SWITCH(tipo)

    CASE 1://up
          inicio_x = vox_x;    // recorro 2 elementos. 8pixeles=2 elementos 16 pixeles=3 elementos..
          final_x  = vox_x+2;  //
          inicio_y = vox_y;    // recorro 1 elemento  8 pixeles=1 elemento tabla 16 pixeles= 1 elemento tabla.
          final_y  = vox_y+1;
    END
   
   
    CASE 2://down
          inicio_x = vox_x;//
          final_x  = vox_x+2;//
          inicio_y = vox_y+1;
          final_y  = vox_y+2;
    END
   
   
   
    CASE 3://left
          inicio_x = vox_x;
          final_x  = vox_x+1;
          inicio_y = vox_y;//
          final_y  = vox_y+2;//
    END
   
   
    CASE 4://right
          inicio_x = vox_x+1;
          final_x  = vox_x+2;
          inicio_y = vox_y;/////-13....14....15
          final_y  = vox_y+2;/////15 entonces sumo 1====2el quince no lo cuenta.....
    END
    DEFAULT:
    x=0;
    END
END   


si quito los comentarios //up...//down etc ya no sale errores raros de esperando[;] CASE 1://up en la version 1.32 funciona.
Otra cuestion si dejo la tecla pulsada,mientras estoy escribiendo,programando el programa,no escribe nada hasta que deje de pulsarla.Esto es normal?¿?lo has programado asi?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 18, 2021, 11:31:41 AM
otra cuestion,si puede ser incluir la funcion Math.min() de javascript...es sencillo implementarlo,pero prefiero que lo tenga por defecto.
Un saludo.. Evito un if..else...
Me he puesto otra vez a programar :P..va por temporadas ;D a ver si acabo una cosa que lo tengo parado hace tiempo y lo pones en divgo como ejemplo ... :P
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 18, 2021, 12:30:01 PM
Otra cosa....
No puedo definir una tabla dinamica de dos dimensiones de esta forma:
tabla[,];
debo de poner su dimension tabla[30,30];
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on January 19, 2021, 05:54:43 PM
Hola oskarg,

Sobre los comentarios, sepáralo de los dos puntos para que te funcione, esto debo revisarlo.

    CASE 1: //up
          inicio_x = vox_x;    // recorro 2 elementos. 8pixeles=2 elementos 16 pixeles=3 elementos..
          final_x  = vox_x+2;  //
          inicio_y = vox_y;    // recorro 1 elemento  8 pixeles=1 elemento tabla 16 pixeles= 1 elemento tabla.
          final_y  = vox_y+1;
    END


Lo de dejar la tecla pulsada en el IDE a mi me funciona, por lo menos en la versión online, si dejo pulsada la tecla durante un rato me sale una ráfaga con la letra que mantengo pulsada.  :)

Sobre las funciones Math.min() y Math.max(), pensé que ya existían en Div GO, me las apunto para incluirlas en la próxima versión.

Todas las tablas son dinámicas en Div GO, al darles las dimensiones la estas inicializando con los espacios definidos con valor 0.
https://www.divgo.net/c-19022cf4 (https://www.divgo.net/c-19022cf4)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 25, 2021, 12:13:42 PM
Hola AmakaSt
En la version offline no funciona correctamente cuando dejo la tecla pulsada.
Un bug que no lo detecta divgo ...si el codigo es pequeño es pasable,pero si es grande como lo que estoy haciendo,me ha costado encontrarlo,pues no lo detecta y luego no ejecuta nada
Quote
  if ( AND  valor==1  )//si derecha o izquierda y toco tocho
               father.p_choca= TRUE;
               END

Un saludo..
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on January 25, 2021, 01:06:47 PM
Un bug molesto del ide...
A veces cuando compilo el codigo y luego presiono en ejecutar en el proyecto y regreso al programa  desaparece lo que he programado/escrito. ?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 07, 2021, 12:41:23 PM
Buenos dias...
Existen etiquetas en divgo ??se podria implementar ??¿?
Me explico....
tengo dos for.... y por motivos x..hago un break,y luego tengo que hacer otro break para salir de los dos for...vale...es una aberracion bla.bla.bla..pero funciona ..Hay una forma de implementarlo de otra forma mejor ???teniendo en cuenta que busco rapidez,cuanto menos ifff mejor.

FOR(j=inicio_y;j<=final_y;j++)
       IF (salida == TRUE) break;end
   FOR(i=inicio_x;i<=final_x;i++)
      tt_x=i*8;
      tt_y=j*8;
       IF(Tabla_fondo[i,j] <> 0  AND  Tabla_fondo[i,j] <>2)
         salida = TRUE;
         obj.ccy = tt_y-T_alto/2;
         father.colision=TRUE;break;
       END

   END
   END


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 07, 2021, 08:30:27 PM
Hola oskarg,
Perdona que haya tardado en responder, desde que inicio el año he tenido el ordenador un poco roto: pantallazos azules, congelación de windows y reinicios automáticos. Pensaba que tendría que comprarme un ordenador nuevo pero por suerte parece que lo he conseguido arreglar.

Sobre el bug de "if ( AND  valor==1  )" ya lo tengo solucionado para la versión 1.38.0.

Quote from: oskarg on January 25, 2021, 01:06:47 PM
Un bug molesto del ide...
A veces cuando compilo el codigo y luego presiono en ejecutar en el proyecto y regreso al programa  desaparece lo que he programado/escrito. ?¿?

Para esto me tendrías que especificar con más detalle que haces exactamente, he estado haciendo distintas pruebas (a lo loco) en el ide y no he conseguido que desaparezca el código escrito. A ver si podemos coincidir en el Discord para poder conversar sobre esos bugs que yo no consigo reproducir. :)

Quote from: oskarg on February 07, 2021, 12:41:23 PM
Buenos dias...
Existen etiquetas en divgo ??se podria implementar ??¿?
Me explico....
tengo dos for.... y por motivos x..hago un break,y luego tengo que hacer otro break para salir de los dos for...vale...es una aberracion bla.bla.bla..pero funciona ..Hay una forma de implementarlo de otra forma mejor ???teniendo en cuenta que busco rapidez,cuanto menos ifff mejor.

FOR(j=inicio_y;j<=final_y;j++)
       IF (salida == TRUE) break;end
   FOR(i=inicio_x;i<=final_x;i++)
      tt_x=i*8;
      tt_y=j*8;
       IF(Tabla_fondo[i,j] <> 0  AND  Tabla_fondo[i,j] <>2)
         salida = TRUE;
         obj.ccy = tt_y-T_alto/2;
         father.colision=TRUE;break;
       END

   END
   END



No hace falta etiqueta, en el for tienes un condicional que puedes ampliar tranquilamente.


FOR(j=inicio_y;j<=final_y and not salida;j++)
   FOR(i=inicio_x;i<=final_x;i++)
      tt_x=i*8;
      tt_y=j*8;
       IF(Tabla_fondo[i,j] <> 0  AND  Tabla_fondo[i,j] <>2)
         salida = TRUE;
         obj.ccy = tt_y-T_alto/2;
         father.colision=TRUE;break;
       END

   END
   END


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 08, 2021, 09:12:39 AM
Hola AmakaSt,
Gracias por el for..
Un bug muy molesto y que estoy bloqueado,bueno no ejecuta la aplicacion y de momento no puedo hacer nada..Tambien me pasa en la version online...Es algo que ha modificado divgo como se solveta?¿?
Al ejecutar divgo me pone continuamente cargando datos... he intentado bajar la version offline ,pero esta version por motivos que desconozco pone Object not found! utilizo xamp...no entiendo,segun que version funciona en xamp y otras pone lo que comento...

Bueno.reseteando el ordenador ya funciona...la version xamp no,por que?¿?
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on February 08, 2021, 09:28:27 AM
Buenas Amakast :)

¿Sería mucho pedir una macro/directiva para permitir utilizar una forma de arrays u otra?
Ayudaría a compatibilizar el código entre otros lenguajes DIV-like :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 08, 2021, 10:04:00 AM
Bug molesto ..desaparece el codigo..ahora lo ves!!..ahora no lo ves!!! ;D magia..magia!! Cuando compilo deberia haber una opcion simplemente de compilacion,sin necesidad de ir a una pantalla nueva..como ocurria en turbo_c  ;D compilo y luego ejecuto y asi no cargo una ventana nueva.con tal que ponga ok ya vale.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 08, 2021, 10:37:14 AM
Como borro o pongo todos los valores a 0 en una estructura de este tipo ??¿?

STRUCT Pantallas[40]
       v[15,15];
END   

Ni idea en divgo.........
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 08, 2021, 01:43:11 PM
Otra cuestion ya comentada..como puedo eliminar el molesto loading data... nunca carga divgo .ni en modo online ,ni offlline.....si utilizo una version antigua funciona  :(
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 08, 2021, 04:37:37 PM
Hola oskarg,

Necesitaría capturas de la consola del navegador para poder ver que te está fallando, puede que esté esperando algún archivo a cargar y que ya no lo tengas disponible o similar.

Sobre como borrar todos los datos de un struct a 0, actualmente así: https://www.divgo.net/c-ca0d14ac    for (size = 0; size < sizeof(pantalla); size++)
        for (x = 0; x < sizeof(pantalla[size].v); x++)
            for (y = 0; y < sizeof(pantalla[size].v[x]); y++)
                pantalla[size].v[x,y] = 0;
            end
        end
    end


Quote from: panreyes on February 08, 2021, 09:28:27 AM
Buenas Amakast :)

¿Sería mucho pedir una macro/directiva para permitir utilizar una forma de arrays u otra?
Ayudaría a compatibilizar el código entre otros lenguajes DIV-like :)
Hola panreyes,

Podría poner como una opción de compilación de compiler_option para activar un tipo de array o dejar los actuales. Si se te ocurre de otra manera con un ejemplo me vale. :)

Tengo pensado, para un futuro próximo, que las opciones de compilación se puedan cambiar desde el ide y que no sea necesario poner en el código los compiler_options, tener ambas opciones.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on February 08, 2021, 05:01:53 PM
Podría ser algo como USE_C_ARRAYS
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 09, 2021, 09:45:36 PM
Hola AmakaSt,
a ver si me solventas mi problema,no me permite cargar  graficos creados con un nuevo fpg...creo la carpeta y luego en el fpg de divgo los voy añadiendo.Todo iba perfecto hasta que sin mas dejo de funcionar y aunque instale divgo en otra carpeta..no va.
Muestro el bug,utilizo windows7
un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 10, 2021, 10:37:31 PM
1.Hola a todos
Como tengo problemas a la hora de cargar pngs en divgo he optado por utilizar el smart fpg editor,El cual funciona  a la primera.Carga el fpg y adios los quebraderos de cabeza que me surgen,a veces cuando compilo,omite graficos en el empaquetador  o no  encuentra la ruta por mas que se la indique correctamente y aparece el signo de cargar de forma eterna.
En un futuro deberia crearse una herramienta externa para crear  fps,cargas el fichero de graficos con esa extension y santa pascuas....Lo expreso porque desconozco si se puede incluir el smart fpg editor para divgo como herramienta externa .
2.Me gustaria saber el motivo de el por que en las versiones mas recientes no me van con xamp .tengo windows7 .Me gustaria utilizar divgo en xamp.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 11, 2021, 12:17:39 PM
Quote from: oskarg on February 09, 2021, 09:45:36 PM
Hola AmakaSt,
a ver si me solventas mi problema,no me permite cargar  graficos creados con un nuevo fpg...creo la carpeta y luego en el fpg de divgo los voy añadiendo.Todo iba perfecto hasta que sin mas dejo de funcionar y aunque instale divgo en otra carpeta..no va.
Muestro el bug,utilizo windows7
un saludo
Hola oskarg,

He localizado uno de los problemas que te está dando, dejo captura con la ejecución y la pantalla en negro, me falta saber porque el editor fpg no te carga los gráficos y te está dando problemas. ¿Has creado la carpeta con fpg.dat (vacio) o sin fpg.dat, la carpeta incluía algún gráfico previo?

¿Te puedes conectar en Discord y a qué hora te va bien? A ver si puedo dar con los problemas que estas teniendo y tenerlo corregido en la próxima versión.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 11, 2021, 09:20:51 PM
Estoy a partir  de las 22 o 22,30...me conecto en el discord a esa hora y si te veo conectado te comento ...He creado otro    fichero=load_fpg("graficos/qt1"); falla,lo curioso que hay numeros que ya estan asignados,es decir,como si hubiera ya añadido graficos....Simplemente creo la carpeta llamandola qt1 ...en el interior no hay nada.  ::bueno,he vuelto a compilar ahora no hay ningun numero asignado ,pero sigue sin funcionar...Luego en la version firefox,directamente no me va nada.me pone loading data eternamente y en la version xamp,simplemente no se ejecuta ;D mejor imposible ;D
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 19, 2021, 06:55:44 PM
Hola a todos,

Ya está disponible online la primera versión de Div GO del 2021, la versión 1.38.0 y las novedades:


funciones:
   - min(), max();
constantes:
   - _use_c_arrays;
bugs y mejoras:
   - [ADD] exportación de imágenes a formato png desde el editor gráfico
   - [ADD] nueva constante para las opciones de compilación: _use_c_arrays
   - [ADD] autogeneración de fpg desde el ide partiendo de la primera imagen cargada y sin necesidad de crear una carpeta y un fpg.dat
   - [FIX] corregida la detección de un operador lógico "and" u "or" en el cierra o apertura de una condición
   - [FIX] solucionado problema de carga de fpg creado desde el ide
   - [CHANGE] optimización de código y cambio de algunas funcionalidades a estándares de es6




Ejemplos en breve...  8)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 19, 2021, 08:04:51 PM
Ejemplo constante _use_c_arrays: https://www.divgo.net/c-163771f7
Ejemplo función min(): https://www.divgo.net/c-a466458f
Ejemplo función max(): https://www.divgo.net/c-a47af7ed
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 21, 2021, 10:37:00 AM
Hola Amakast,
Dudas sobre las tablas......

Pensaba desde mi desconocimiento que si creaba un proceso tal que tuviera definido una mega tabla[2000,2000] no afectaba a la hora de ejecutar el programa hasta que llamara tal proceso.Mi idea inicial era crear diferentes procesos y dividir ese contenido en tablas mas pequeñas es decir tabla1[500,500]-->  proceso1..tabla2[500,500]---> proceso 2....tabla3----> proceso3[500,500] tabla4[500,500]---> proceso4.... Con sus valores ya asignados....

El problema viene que cuando ejectuo divgo,definiendo la megatabla no aparece nada y no me permite mostrar un loading y da la sensacion que falla la conexion. Por otra parte si la defino global,simplemente se cuelga divgo...nunca se ejecuta.

Me gustaria saber al menos si hay alguna forma de poner un loading para indicar al jugador que se esta inicializando el juego y tambien saber cual es el limite maximo aconsejable del tamaño de una tabla y por que si la defino global nunca se ejecuta.adjunto simple ejemplo.

Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
    points = 0;
    hi_score = 0;


LOADING
    set_mode(m320x240);
    set_title("Game´s Evoteka: Cargando...");
   
   
begin


set_title("My Program Name");
    set_icon("graficos/009.png");

// screen canvas options
set_mode(480, 320);
screen_color(cc_silver);

set_fps(60, 0);

// call a process
my_process(240, 160);

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process my_process(x, y);
private
//declared private variables
    energy = 100;
    life = 3;
   
begin
graph = 9;
size  = 100;
z   = 10;

loop

frame;
end
end

PROCESS tablas()
private
    t[1000,1000];
BEGIN

END


Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on February 21, 2021, 11:59:19 AM
Otra cuestion..podrias poner un simple ejemplo de la funcion wave_in_map ?¿?
Gracias..
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on February 25, 2021, 09:56:46 PM
Hola oskarg,

Acabo de actualizar la versión 1.38.0, para corregir el problema de espacios al declarar una tabla grande de 2 dimensiones. Ahora no debería ser un problema. :)

Aquí un ejemplo de wave_in_map: https://www.divgo.net/c-ca5dc786

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 04, 2021, 11:15:45 AM
Hola Amakast,
Me gustaria que solverantas el bug que comente hace un tiempo que inclui un gif ..cuando divgo lo compilo y encuentra un error si tengo la pantalla completa al volver otra vez al ide,desaparece el codigo y me carga otro codigo anterior,esto es muy molesto y continuamente tengo que hacer guardar y cargar.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 04, 2021, 02:05:14 PM
Hola AmakaSt,
Una duda,como puedo coger los valores r,g,b  y guardarlos por  separado en variables sin tener que hacer tres get_pixel..
es decir...
r1=map_get_pixel(file,14,x,y,"r");
g2=map_get_pixel(file,14,x,y,"r");
b3=map_get_pixel(file,14,x,y,"r");

Esto es normal ?¿?..debo hacer tres map_get_pixel?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 04, 2021, 05:47:26 PM
Quote from: oskarg on March 04, 2021, 11:15:45 AM
Hola Amakast,
Me gustaria que solverantas el bug que comente hace un tiempo que inclui un gif ..cuando divgo lo compilo y encuentra un error si tengo la pantalla completa al volver otra vez al ide,desaparece el codigo y me carga otro codigo anterior,esto es muy molesto y continuamente tengo que hacer guardar y cargar.
Un saludo.
Hola oskarg,

Este error te sucede también cuando ejecuta el juego una vez ha compilado? Si cierras el navegador o la aplicación, al volver sigue estando el código o desaparece? Que no sea que no se te esten guardando los datos en la aplicación.

Quote from: oskarg on March 04, 2021, 02:05:14 PM
Hola AmakaSt,
Una duda,como puedo coger los valores r,g,b  y guardarlos por  separado en variables sin tener que hacer tres get_pixel..
es decir...
r1=map_get_pixel(file,14,x,y,"r");
g2=map_get_pixel(file,14,x,y,"r");
b3=map_get_pixel(file,14,x,y,"r");

Esto es normal ?¿?..debo hacer tres map_get_pixel?¿?


Con esto obtienes el valor rgb completo:  _rgb = map_get_pixel(file,14,x,y); //esto devolverá "0,0,0" en caso de negro o "255,0,0" en caso de rojo, etc...
Y con la función explode() lo puedes separar: _rgb = explode(map_get_pixel(fichero1, 8, mouse.x, mouse.y), ","); //_rgb[0] para el valor rojo, _rgb[1] para el verde y _rgb[2] para el azul

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 04, 2021, 10:45:38 PM
Hola...
1.Es cuando compilo,si hay error,no se por que me muestra el codigo anterior..aunque tambien me ha pasado cuando lo ejecuto en pantalla completa.
2.Me podrias poner un ejemplo del  _rgb = explode(map_get_pixel(fichero1, 8, mouse.x, mouse.y), ","); me pone variable no definida _rgb,ni idea de como declararla.Gracias.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 05, 2021, 11:33:23 AM
Hola oskarg,

1. Como no he sacado aún la versión 1.38.0 me estoy mirando este fallo a ver si puedo corregirlo para esta, aunque estoy haciendo locuras para ver si pierdo los cambios del código.
2. Aquí te dejo un ejemplo: https://www.divgo.net/c-7d400682

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 05, 2021, 01:21:11 PM
Te comento,es cuando compilo , debo tener la pantalla minimizada,es decir que el IDE no cubra toda la pantalla y se vea la pantalla previa del juego,es decir omitir pantalla completa , porque si no lo hago de esta forma,si hay un error a la hora de ejecutarlo  sí o sí cuando regreso al IDE de divgo  me carga otro código... entonces para evitarlo reseteo el ordenador y descomprimo divgo en otra carpeta y elimino todo lo que pone en divgo , gráficos, código y así no me molesta sí o sí hasta que vuelve de nuevo ese bug
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 05, 2021, 04:47:48 PM
Quote from: oskarg on March 05, 2021, 01:21:11 PM
Te comento,es cuando compilo , debo tener la pantalla minimizada,es decir que el IDE no cubra toda la pantalla y se vea la pantalla previa del juego,es decir omitir pantalla completa , porque si no lo hago de esta forma,si hay un error a la hora de ejecutarlo  sí o sí cuando regreso al IDE de divgo  me carga otro código... entonces para evitarlo reseteo el ordenador y descomprimo divgo en otra carpeta y elimino todo lo que pone en divgo , gráficos, código y así no me molesta sí o sí hasta que vuelve de nuevo ese bug
Creo haber encontrado una cosa que puede ser el causante del problema, lo raro es que a mí nunca me ha dado problemas.
¿Sobre qué hora te puedo localizar por discord para poder hacer unas pruebas y ver si lo que sospecho es la causa? :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 05, 2021, 09:18:57 PM
Hola AmakaSt,
Yo estoy sobre las diez de la noche,cualquier dia ,no hay prisa..es cuando ya he regresado del trabajo .Si me dices un dia determinado no hay problema.
un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 06, 2021, 12:40:09 PM
Ya disponible para descargar la versión 1.38.0: https://www.amakasoft.com/herramientas/div-go.html
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 07, 2021, 09:38:02 PM
BUG.ADJUNTO PRG..asigno un valor en la tabla ,21 veces y luego al llamarlo desde otro proceso sale 192 veces.

EN VERSION ANTERIOR VA CORRECTAMENTE!!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 07, 2021, 10:36:28 PM
Quote from: oskarg on March 07, 2021, 09:38:02 PM
BUG.ADJUNTO PRG..asigno un valor en la tabla ,21 veces y luego al llamarlo desde otro proceso sale 192 veces.

EN VERSION ANTERIOR VA CORRECTAMENTE!!
No he podido probar el ejemplo del error, me falta el fpg que se carga, al tener @ en el load_fpg() se ignora a la hora de crear el empaquetado.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 07, 2021, 10:49:06 PM
ahora lo adjunto,un momento
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 07, 2021, 10:59:16 PM
adjunto graficos
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 11, 2021, 02:22:53 PM
Ya hay disponible la versión 1.38.2 que corrige un par de bugs: https://www.amakasoft.com/herramientas/div-go.html
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 14, 2021, 09:43:56 AM
Hola AmakaST,
pregunta tonta para aclararme...
tengo esto asi



Process PERSONAJE()
BEGIN.
....
....
calculos();
.....
END
//________________________________________________________________________________-
//________________________________________________________________________________-

Process CALCULOS()
BEGIN
....
....
...
END


La pregunta es ,con la explicacion que me expresastes sobre la cantidad de lineas en un proceso,ahora me quedo con la duda si de esta manera es mas eficiente porque dentro del personaje llamo a calculos y no se si divgo internamente lo considera como una continuacion de lineas del mismo proceso.... ¿?Entonces deberia hacer calculos de forma independiente?¿?es decir que se ejecutara constantemente ,fuera del personaje?¿?

Otra cuestion sobre el ide:
ya he contrado un bug o una limitacion del ide..
Cuando dejaba pulsada una tecla no me escribia  y cuando la soltaba de golpe lo hacia,pues bien,es debido por la cantidad de lineas que tiene el codigo,si  comienzo borrar x lineas ya comienza a ir bien el ide ..
Ahh y cuando escribo es como si hubiera una ralentizacion,motivado tambien por la cantidad de lineas de codigo...

Un saludo y gracias por la correccion de bugs..
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 14, 2021, 10:55:58 AM
error de divgo que no detecta una  variable no  definida dentro de un if else y te da error en otro lugar.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 15, 2021, 10:10:10 PM
Bug   !!! raro,raro ,raro...
La variable tabla guarda un grafico,si pongo tabla=100 funciona pinta el fondo.......si pongo tabla=99 falla...
adjunto prg con graficos...

Y son los mismos graficos!!!
si pongo tabla=301 carga,302 carga..303.ya falla 304 ya falla que cosa mas rara!!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 15, 2021, 11:16:02 PM
Quote from: oskarg on March 15, 2021, 10:10:10 PM
Bug   !!! raro,raro ,raro...
La variable tabla guarda un grafico,si pongo tabla=100 funciona pinta el fondo.......si pongo tabla=99 falla...
adjunto prg con graficos...

Y son los mismos graficos!!!
si pongo tabla=301 carga,302 carga..303.ya falla 304 ya falla que cosa mas rara!!
Hola oskarg,
He probado y no hay ningún bug (he revisado internamente y veo que se cargan los gráficos), el problema está en el código y los gráficos que cargas. El graph 99 y el 100 tienen de valor "r" del rgb distintos (no es el mismo gráfico tiene una pequeña variación de color), uno tiene valor 150 y el otro 151, y no lo tienes controlado eso en el switch(), cambia el case de 151 a 150, veras como se muestra.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 16, 2021, 08:07:59 AM
Hola amakast,
Tienes razón, por algún  motivo que desconozco el editor de gráficos externo me cambio los RGB levemente . Esta noche sigo con lo estoy haciendo y espero encontrar la solución porque no es nada trivial.
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 21, 2021, 08:47:57 PM
Hola AmakaST,
Te comento,funcion no implementada en divgo,pero funciona en div..es decir,poder definir diferentes valores en un unico case del  switch.

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program FALLA_SWITCH ;


begin


calculos();

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process calculos()
begin
   write_int(0,100,100,0,offset x);
x=2;
   
    switch (x)
         case 1..2;
             x=-1;
         END
         case 3;
             x=10;
         END


    END     
   
   
loop

frame;
end
end




Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 22, 2021, 08:44:54 PM
Hola oskarg,

No había contemplado lo de los rangos de valores con .. para las case, me lo apunto para próximas versiones.
Y ya tengo solucionado un problema del IDE que se ralentizaba a medida que habían mas y mas líneas, causado por el minimap. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 22, 2021, 09:13:40 PM
Hola Amakast,

Genial que hayas encontrado el problema de la ralentizacion del IDE,pues es muy acusado cuando haces un programa largo.

Una pregunta...siempre te pregunto basicamente por lo mismo  ;D ¿como obtengo el valor alpha de un pixel?¿? he intentado hacerlo con  explode(map_get_pixel(fichero1, grafico,x,y), ","); pero solo logro obtener el r,g,b por separado...Me seria de mucha utilidad saber como hacerlo.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on March 22, 2021, 10:50:38 PM
Con graphic_explorer() puedes obtener el alpha, te dejo un ejemplo: https://www.divgo.net/c-1c99a67a
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 29, 2021, 01:54:12 PM
Aporto un buscador de caminos con su prg...mientras estaba programando mi motor me di cuenta que necesitaba esta funcion para hacer los personajes algo inteligentes.....efectivo ,sencillo pero muy practico para  que el enemigo te siga o vaya donde la casilla le indiques,esquivando muros....Lo he intenado hacer de forma recursiva,pero no hay manera,se vuelve loco a la hora de sumar valores. ;D .Como funciona...muy simple..sigue las baldosa amarillas de mago de oz..Estaba deszquiciado y de pronto me ha venido la idea ,en vez de hacer un camino que recorra del personaje a la bandera,lo hacemos a la inversa,de la bandera al personaje.Porque?¿?,porque de esta forma de forma directa calcula el camino menos corto y encuentra la solucion en un plis plas,olvidandome de las ramas de los nodos y la madre que .... ;D



Si quieres poner otro mapa en pinta fondo en vez de 6,pones 1.  valor=map_get_pixel(fichero1, 6, x, y, "r");

Esta hecho paso a paso ,algo cutre pero se ve claramente su utilidad y como va.
1.Primero seleccionamos casilla donde colocamos la bandera..boton izquierdo ...boton derecho para confirmar..rellena la tabla de numeros...
2.Selecionamos donde esta el personaje.............................boton izquierdo.....boton derecho para confirmar..dibuja el camino ______

limitacion no se desplaza a traves de diagonales...
Sigo con el motor  y mas adelante implemento a*.... y comento..

Una cuestion que no entiendo porque div o divgo no incluye una funcion para hacer un get_pixel del scroll?¿?,seria en realidad un get_pixel de la pantalla...no se,tiene infinidad de utilidades...y no entiendo por que de esta limitacion...
y otra cuestion si la tabla esta vacia por que me dice que sizeof==0 y si pongo tabla[0]==22323. tambien..sizeof==0 ...entonces no hay forma de diferenciar estos dos estados diferentes


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 14, 2021, 11:02:53 AM
Hola oskarg,

Como alternativa a las funciones existentes path_find(), path_free() o path_line() está muy bien. :)

Con la función map_get_pixel() se puede obtener el get_pixel() del scroll, que es como se controla el mapa de durezas.

Y sobre el sizeof... ¿me podrías poner un ejemplo?

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 20, 2021, 07:10:18 AM
Hola amakast,
Está noche te monto un par de ejemplos...
1. Al crear una struct con 15 parámetros y la estructura la paso a otro proceso, dentro de este hay parámetros que dice... variable no definida ?? Dentro del primer proceso definida la estructura las dectecta correctamente y le puedo asignar o leer su  contenido ejemplo casa.x= 100.  Pero en el otro proceso  el parámetro x de casa lo desconoce pero por ejemplo casa.w si puedo leerlo ...es como si hubiera una limitación a la hora de poner un número determinado de parámetros , variables en la estructura
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 17, 2021, 09:37:52 PM
Hola a todos,

Hace tiempo que no pongo ningún avance de DivGO, para esta próxima versión he hecho muchas correcciones y novedades (tanto de engine como de IDE).

Adjunto unas capturas de la nueva herramienta que incluirá el IDE.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on June 17, 2021, 11:05:48 PM
(emojis de aplausos  ;D)
Muy bueno :) ¿El formato será compatible con Tiled? Yo tengo pendiente montarme una librería (o adaptar la de Javis si la comprendo  ::) para soportar Tiled en un juego con PixTudio)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 18, 2021, 12:55:43 PM
Quote from: panreyes on June 17, 2021, 11:05:48 PM
(emojis de aplausos  ;D )
Muy bueno :) ¿El formato será compatible con Tiled? Yo tengo pendiente montarme una librería (o adaptar la de Javis si la comprendo  ::) para soportar Tiled en un juego con PixTudio)
Pues no había pensado en usar Tiled, podría mirar de hacerlo compatible si no hay problemas con las licencias de formatos o similar. Aunque eso ya seria para futuras versiones, ahora será la primera versión del editor de tiles y poco me falta para finalizarlo (testear a fondo).

En DivGO el mapa de tiles se asocia con el primer plano de scroll y también hay una nueva función para controlar en que tile están las posiciones x e y, así poder controlar que tile toca el proceso. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on June 20, 2021, 01:03:58 PM
Quote from: AmakaSt on June 17, 2021, 09:37:52 PM
Hola a todos,

Hace tiempo que no pongo ningún avance de DivGO, para esta próxima versión he hecho muchas correcciones y novedades (tanto de engine como de IDE).

Adjunto unas capturas de la nueva herramienta que incluirá el IDE.

Un saludo.



felicitaciones por los avances! sigue asi! saludos!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 22, 2021, 02:55:56 PM
Hola a todos,

Ya disponible la versión 1.40.0 (online para testeos), esta versión incluye muchos cambios internos, las novedades:



funciones:
   - new_tilemap(), get_tile(), set_tile();
bugs y mejoras:
   - [ADD] scroll con soporte para mapa de tiles
   - [ADD] editor de mapa de tiles con opciones de exportación, guardado y empaquetado
   - [ADD] opciones de guardar y salir sin guardar en editores
   - [ADD] efecto de niebla con set_fog() se aplica a los procesos dentro del mode7 y scene3d
   - [FIX] corrección en scroll para que no se bloquee si no existe el gráfico
   - [FIX] solucionado problema con bucle from al declarar variable
   - [FIX] varios problemas en el editor gráfico, sobre todo al cambiar de tamaño del gráfico
   - [FIX] arreglado problema en el alpha de draw() y xdraw()
   - [FIX] ajuste de valor devuelto en la función fget_angle()
   - [DEL] eliminado minimap del editor de código por pésimo rendimiento a medida que este crece




Ejemplo de funciones de tilemap: https://www.divgo.net/c-ae6d6410 (https://www.divgo.net/c-ae6d6410)
Otro ejemplo usando mapa de tiles con la función get_tile() para controlar suelo y paredes en un plataformas: https://www.divgo.net/c-3ebdeb8b

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 22, 2021, 08:38:05 PM
Hola Amakast,
esta excelente el aporte,lo mas  innovador y funcional que se ha creado para cualquier derivado de div,en pocas lineas  creas ya una demo de sonic .Me has matado   ;D.
Preguntas asi de sopeton sin haber entrado en detalle en el codigo fuente.
Dudas que tengo:
1.Observo que tienes get_tile y set_tile ..perfecto...entonces mi pregunta es si se puede hacer ciclico el scroll tile,lo he intentado con flag=15.....de esta manera simplemente con valores en una tabla de set_tile podria  leer los valores y poner set_tile y asi crear un mapa horizontal infinito ..
2.Me imagino que asi de sopeton con set_tile puedes simular que los tiles tenga animacion ... :P
3.Un ejemplo de transicion de scroll_tiles estaria bien....es decir tengo un scroll_tile horizontal y de pronto hago un scroll_tile vertical,pero sin que se "apague la pantalla".
Joe AmakaSt,ya no hay excusas para no crear juegos en divgo  ;D

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 23, 2021, 03:07:33 PM
Hola oskarg,

No, el scroll con tilemap no es cíclico, aunque este puede parecer infinito de largo y ancho, todo depende del espacio de arrays que pueda soportar el navegador.

Con set_tile() se puede cambiar los tiles de la posición x e y que se quiera, y podría parecer animado pero requiere algo de trabajo, tengo en mente algunas funciones mas para controlar los mapas de tiles, pero eso ya para próximas versiones. Ahora mismo he actualizado DivGO con un par de correcciones que he visto, entre ellas una que mejora el rendimiento del editor de mapa de tiles, se me ralentizaba un poco con el tileado de Green Hill de Sonic, ahora va algo más fino. :)

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on June 23, 2021, 03:10:57 PM
suena genial lo que leo... hay algun video o algo de ese sonic?
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 23, 2021, 11:18:41 PM
Quote from: SplinterGU on June 23, 2021, 03:10:57 PM
suena genial lo que leo... hay algun video o algo de ese sonic?

Hola SplinterGU, en el segundo ejemplo que he puesto es el que incluye los assets de Sonic y en el visor de FPG puedes seleccionar el FPG con los gráficos de Sonic o los de Green Hill y con este último te cargara en el visor de tiles el tilemap que he creado para el ejemplo. Adjunto capturas.

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on June 24, 2021, 12:30:09 AM
genial! se ve increible... no me pidas mucho aun, me cuesta recuperarme... este virus me mato, cada dia estoy mejor, pero cuesta...

hay algun video?
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 24, 2021, 09:32:44 AM
Hola AmakaSt,
te hago una captura del bug de divgo que es realmente molesto porque me impide trabajar con el..
Siempre me sale cargando datos.. lo que me refiero es que cuando pulsara ejemplos se cargara algun ejemplo y de esa manera entraria en divgo,pero no hay forma.Me sucede en la version desk.como cosas curiosas quizas te sirva de alguna pista,las versiones anteriores no van..pero a partir creo que la 1.30 ya se ejecuta..Con lo cual.es algo de divgo que cambia internamente algo de mi ordenador.Antes iba ,hasta que provoque un bug por los graficos al cargar.
O si hubiera alguna forma de saber que le pasa divgo intentaria solucionarlo,pero no tengo el modo de ver que le hace que no cargue.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 24, 2021, 10:19:22 AM
Vale ya lo he solucionado a mi manera...te cuento a ver si sacas alguna conclusion y de ese modo se evita que en futuras versiones a alguien le pase como a mi y se quede trabado.

He bajado de nuevo la version 138r2windowsdesk la he ejecutado y como es normal no cargaba....sin cerrarla entonces me acorde de algo..he ejecuta la version 134r2 y se ha cargado poniendo version abajo 138..entonces he cerrado las dos aplicaciones y ahora si por defecto se ejectua 138r2..perfecto ya puedo programar  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 24, 2021, 01:57:58 PM
Quote from: oskarg on June 24, 2021, 09:32:44 AM
Hola AmakaSt,
te hago una captura del bug de divgo que es realmente molesto porque me impide trabajar con el..
Siempre me sale cargando datos.. lo que me refiero es que cuando pulsara ejemplos se cargara algun ejemplo y de esa manera entraria en divgo,pero no hay forma.Me sucede en la version desk.como cosas curiosas quizas te sirva de alguna pista,las versiones anteriores no van..pero a partir creo que la 1.30 ya se ejecuta..Con lo cual.es algo de divgo que cambia internamente algo de mi ordenador.Antes iba ,hasta que provoque un bug por los graficos al cargar.
O si hubiera alguna forma de saber que le pasa divgo intentaria solucionarlo,pero no tengo el modo de ver que le hace que no cargue.
Un saludo.
Puede haber sido por hacer algún cambio de nombre en un fpg fuera del IDE, mientras que en este lo tienes seleccionado con el antiguo nombre y lo está esperado para cargarlo, o similar. Esto solo se puede averiguar haciendo lo mismo desde el navegador para poder mirar en la consola a ver de qué se está quejando.

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on June 24, 2021, 06:10:00 PM
Me encanta lo que veo AmakaSt, gran curro :)
Ojalá encuentre un hueco para intentar replicar tu software de tileado en código BennuGD/PixTudio para tener lo mismo en múltiples motores y facilitar la portabilidad :)
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on June 24, 2021, 07:02:57 PM
donde se puede ver el proyecto funcionando? todavia no me entero... el link de la primer pagina no funciona...
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on June 24, 2021, 07:19:37 PM
Quote from: SplinterGU on June 24, 2021, 07:02:57 PM
donde se puede ver el proyecto funcionando? todavia no me entero... el link de la primer pagina no funciona...
http://forum.bennugd.org/index.php/topic,3207.msg75740.html#msg75740
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on June 24, 2021, 07:25:46 PM
gracias!
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 27, 2021, 03:31:13 PM
Ya está disponible para descargar la versión 1.40.0 de Div GO: https://www.amakasoft.com/herramientas/div-go.html

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on June 27, 2021, 10:59:17 PM
Quote from: AmakaSt on June 27, 2021, 03:31:13 PM
Ya está disponible para descargar la versión 1.40.0 de Div GO: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)

Un saludo. :)
me alegra saber que el proyecto avanza! felicitaciones!
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 28, 2021, 12:54:14 PM
Hola Amakast ,
En esta nueva version me da errores a la hora de compilar el codigo..el mismo codigo en version anterior compila..Me pone esperando [program] en FRAME o bien cuando tengo una declaracion T_x=8; etc
ya me diras algo.. no entiendo el motivo,porque el codigo es el mismo
un saludo...

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 28, 2021, 01:00:48 PM
Hola AmakaST,ya he encontado el bug ;D  es por poner  /*.....*/ provoca error en esta version..ejemplo:

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
    points = 0;
    hi_score = 0;

begin
set_title("My Program Name");
    set_icon("graficos/009.png");

// screen canvas options
set_mode(480, 320);
screen_color(cc_silver);

set_fps(60, 0);

// call a process
my_process(240, 160);

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end
/*
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██      PINTA FONDO TABLA              ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
*/
process my_process(x, y);
private
//declared private variables
    energy = 100;
    life = 3;
   
begin
graph = 9;
size  = 100;
z   = 10;

loop

frame;
end
end





da error esperando program...
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 28, 2021, 09:41:24 PM
Quote from: oskarg on June 28, 2021, 01:00:48 PM
Hola AmakaST,ya he encontado el bug ;D  es por poner  /*.....*/ provoca error en esta version..ejemplo:

/*
   Program's Name:   <My Program Name>
   Author's Name:   <My Name>
   Company's Name:   <My Company or Group>
*/

program MyProgramName;
global
   // declared global variables
    points      = 0;
    hi_score   = 0;
   
begin
   set_title("My Program Name");
    set_icon("graficos/009.png");

   // screen canvas options
   set_mode(480, 320);
   screen_color(cc_silver);

   set_fps(60, 0);

   // call a process
   my_process(240, 160);
   
   loop     
      if (key(_esc)) exit("Text Exit", 1); end

      frame;
   end
end
/*
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██      PINTA FONDO TABLA              ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██                                     ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
*/
process my_process(x, y);
private
   //declared private variables
    energy   = 100;
    life   = 3;
   
begin
   graph = 9;
   size  = 100;
   z     = 10;
   
   loop

      frame;
   end
end





da error esperando program...
Que raro, copiado tu código de ejemplo y pegándolo en DivGO a mi me funciona bien. Puede que se deba a otra cosa.  ???

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 30, 2021, 10:12:57 PM
Hola Amakast,
Disculpa por la demora,estoy trabajando y llego tarde a casa..
te cuento me da error..he copiado el codigo tal cual aqui publique y directamente lo he copiado en la ultima version  y me sale lo que pone en la imagen capturada ..ni  idea porque a mi si me sale el error..
si quito /* y lo sustituyo por // ya funciona por que?¿?

Otra cuestion ..queria hacer un mapa nuevo y pegar cosas en el ,pero no funciona...ejemplo basico..no se,quizas estoy espeso a estas horas y no veo lo que hago mal:

PROGRAM ejemplo_map_put_pixel;
PRIVATE
    fichero1;
    coord_x;
    coord_y;
    colorea;

BEGIN
set_mode(m320x200);
    fichero1=load_fpg("graficos/help");
    x=160;
    y=100;
    size=180;
    file=fichero1;
    graph=new_map(320, 240, 0, 0, rgb(255,0,0));
    LOOP
        coord_x=rand(0, 199);
        coord_y=rand(0, 199);
        colorea=rgb(rand(0, 255), rand(0, 255), rand(0, 255));

        // Se ponen puntos en el gráfico número 5 del fichero1
        map_put_pixel(fichero1, graph, coord_x, coord_y, colorea);

        angle+=2000;
        FRAME;
    END
END






un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 04, 2021, 07:26:05 PM
Hola oskarg,

El fallo de los comentarios /* .... */ he visto que pasa solo en la versión desktop y parece que es por los caracteres especiales que hay dentro de tu comentario. Puede ser por la versión de PHP de la desktop y he visto que hice un pequeño cambio para optimizar los regex del compilador y es lo que ha afectado que no acepte bien estos caracteres, sacaré una versión que corrija esto.

Sobre el ejemplo del mapa nuevo, lo he probado y tengo que revisar que sucede, lo incluiré como corrección junto con lo de los comentarios.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 16, 2021, 06:26:32 PM
Buenas,

Disponible online la versión 1.40.5 (para testeos) y las novedades:


funciones:
   - change_tilemap(), change_tile_value();

bugs y mejoras:
   - [FIX] problema con caracteres especiales dentro del comentario
   - [FIX] funciones map_put(), map_put_pixel() y map_xput() con el uso de new_map()
   - [FIX] informe de errores en el compilador, ahora es más preciso
   - [FIX] editor de tilemaps al abrir un mapa restablece la posición scroll del panel




Ejemplo de nuevas funciones de tilemap: https://www.divgo.net/c-3e28ac80 (https://www.divgo.net/c-3e28ac80)
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 19, 2021, 05:15:54 PM
Div GO versión 1.40.5 ya disponible para descargar: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on July 22, 2021, 08:13:07 PM
Hola Amakast,
Dos cosas :
1.hasta hoy no he podido conectarme a internet en casa ,he intentado bajarme la nueva version de divgo pero nunca logro descargar nada :-\ he intentado descargar versiones antiguas y tampoco y he utilizado diferentes versiones de navegadores :o alguna explicacion?¿?
2.He visto el ejemplo que has adjuntado y la nueva funcion change_tilemap() es todo un acierto ,la echaba en falta desde el inicio.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on July 22, 2021, 09:24:36 PM
Quote from: oskarg on July 22, 2021, 08:13:07 PM
Hola Amakast,
Dos cosas :
1.hasta hoy no he podido conectarme a internet en casa ,he intentado bajarme la nueva version de divgo pero nunca logro descargar nada :-\ he intentado descargar versiones antiguas y tampoco y he utilizado diferentes versiones de navegadores :o alguna explicacion?¿?
2.He visto el ejemplo que has adjuntado y la nueva funcion change_tilemap() es todo un acierto ,la echaba en falta desde el inicio.

Un saludo.
Hola oskarg,

Ya esta corregido, hice una eliminación de enlaces externos de la web de Amaka Soft (enlaces rotos que tenía contenidos obscenos) y borre sin querer una cosa necesaria para las descargas desde la web.

Gracias por el aviso. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 18, 2021, 09:47:40 PM
Div GO versión 1.42.0 ya disponible online para testear y las novedades:



funciones:
   - set_vpad();

bugs y mejoras:
   - [ADD] mejorado y optimizado el editor gráfico, ahora más rápido al trabajar con mapas grandes
   - [ADD] dos nuevas opciones de dibujado en el editor gráfico y más rango para size
   - [ADD] añadida la opción de zoom en el editor de mapa de tiles
   - [ADD] nuevas opciones de borrado de mapa de tiles
   - [FIX] corregido efecto blur en scroll para que no se muestren los borde de la región
   - [FIX] error de pestañas de código que bloqueaba la carga inicial del ide
   - [CHANGE] en el sistema de idiomas que lo hace mas optimo para el compilador y el ide




Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 19, 2021, 11:50:38 AM
Hola Amakast,
1.creo que el visualizador de tiles no funciona ,cargo ejemplo de sonic  y no aparece nada en el visualizador.
2.El juego pacoman da error..come_fantasma=load_pcm("pacoman\comefant.pcm",0); -- VARIABLE NOT DEFINED

veo que has arreglado el problema del bug infinito   :D que no me permitia entrar en divgo,siempre aparecia el simbolo de carga .
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 19, 2021, 03:59:24 PM
Quote from: oskarg on November 19, 2021, 11:50:38 AM
Hola Amakast,
1.creo que el visualizador de tiles no funciona ,cargo ejemplo de sonic  y no aparece nada en el visualizador.
2.El juego pacoman da error..come_fantasma=load_pcm("pacoman\comefant.pcm",0); -- VARIABLE NOT DEFINED

veo que has arreglado el problema del bug infinito   :D que no me permitia entrar en divgo,siempre aparecia el simbolo de carga .
Un saludo
Hola oskarg,

1. El tilemap va asociado a un fpg, por lo que tienes que seleccionar el fpg de tiles para ver su tilemap, en los ejemplos de Sonic que he puesto es el fpg 1, te incluyo una captura.
2. Aunque en esta versión he subido la corrección, ese problema estaba en el ejemplo de Pacoman en ingles que es la versión de Div2 sin ningún cambio por lo que los load_pcm(), load_wav() o load_cualquierotroformato(), es distinto en DivGO que lo agrupa en una única función que es load_sound(), lo mismo pasa con las fuentes con load_font() y las imágenes con load_image().

Sobre ese bug infinito no me aparecía nunca hasta probarlo en otro ordenador, al limpiar todas pestañas de código intenta buscar la primera posición de código de la primera pestaña sin que esta exista todavía y acaba petando todo, un bug difícil de localizar a ciegas. :)

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 19, 2021, 08:25:47 PM
Ya está para descargar la versión 1.42.0: https://www.amakasoft.com/herramientas/div-go.html

Ejemplo de set_vpad(): https://www.divgo.net/c-8650e3ad (ejecutar desde el proyector para ver el funcionamiento, desde el IDE no funciona)
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on November 19, 2021, 08:41:23 PM
Quote from: AmakaSt on November 19, 2021, 08:25:47 PM
Ya está para descargar la versión 1.42.0: https://www.amakasoft.com/herramientas/div-go.html

Ejemplo de set_vpad(): https://www.divgo.net/c-8650e3ad (ejecutar desde el proyector para ver el funcionamiento, desde el IDE no funciona)


que es el proyector? no veo nada que diga proyector... si las cosas no se ven claras en pantalla con un boton accesible o algo, a veces poner un video quizas es lo mejor...
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 19, 2021, 09:07:18 PM
Hola...
Una vez que compilas en el movil,te sale  tres iconos abajo del todo de la aplicacion.
El segundo icono que tiene una flecha dentro de un rectangulo o monitor es el proyector.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 19, 2021, 09:10:40 PM
Lo que yo no sé ,es cómo activar el teclado del móvil  cuando ejecuto la aplicación ;D ;D
Ya está...modificando el código directamente para no tener que pulsar una tecla del movil  :P Muy bueno el ejemplo y con los filtros aplicados el resultado es excelente,aunque en mi móvil se resiente si no los quito.
Ahora me doy cuenta que puedo guardar proyectos en la nube  ;D ya me vale  ;D
Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on November 19, 2021, 09:19:32 PM
Quote from: oskarg on November 19, 2021, 09:07:18 PM
Hola...
Una vez que compilas en el movil,te sale  tres iconos abajo del todo de la aplicacion.
El segundo icono que tiene una flecha dentro de un rectangulo o monitor es el proyector.

ah, solo la version en movil, no en PC... esas cosas son necesarias aclararlas... sigo el hilo, pero me pierdo mucho, la verdad...
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 19, 2021, 09:35:54 PM
En el ordenador también sale, compilas  y luego le das a RUN IN PROYECTOR....
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 19, 2021, 11:42:56 PM
Quote from: SplinterGU on November 19, 2021, 09:19:32 PM
ah, solo la version en movil, no en PC... esas cosas son necesarias aclararlas... sigo el hilo, pero me pierdo mucho, la verdad...
Hola SplinterGU,

Esa opción también aparece en el ordenador, al compilar sale también el botón de ejecutar en proyector que es como una vista previa de cómo queda el proyecto final, sin debug y similar a lo que te descarga la opción de crear empaquetado, que es el proyecto final con todos los archivos incluido en el paquete. Hay varias funciones que no se ejecutan al 100% en el IDE (debug), como modos de pantalla completa o de colores de entorno.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 26, 2021, 03:31:02 PM
Buenos días Amakast,

Pregunta sobre struct con tablas...todavia no me aclaro....
Como defino una struct de una tabla vacia?? adjunto ejemplo,funciona asi tal cual,pero quiero que  la struct la pueda definir de este modo:
struct estrellas[]
          x;
          y;
end
me da error ...



/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
STRUCT estrellas[25]
       x;
       y;
       velocidad;
END


     


begin
set_title("My Program Name");
    set_icon("graficos/009.png");
set_mode(128, 128,4);
screen_color(rgb(29,43,83));
set_fps(30, 0);
    write_int(0,10,10,0,offset fps);
    screen_smooth(false);
     INICIA();
     DIBUJA();

   
loop
        if (key(_esc)) exit("Text Exit", 1); end
frame;
end
end
Process INICIA()
private i;
BEGIN

for (i=1;i<=25;i++)
      estrellas[i].x=rand(0,128);
      estrellas[i].y=rand(0,128);
      estrellas[i].velocidad=rand(1,10);
end

END



PROCESS DIBUJA()
private i;
BEGIN

    loop

        for (i=1;i<=25;i++)
        put_pixel(estrellas[i].x,estrellas[i].y,rgb(29,43,83));
        estrellas[i].x-=estrellas[i].velocidad;
        put_pixel(estrellas[i].x,estrellas[i].y,rgb(255,255,255));
   
            if (estrellas[i].x<0 )
               estrellas[i].x =128;
               estrellas[i].y =rand(0,128);
            end
        end


    frame;
    end


END


Title: Re:Div Games en Html5 y Canvas
Post by: SplinterGU on November 26, 2021, 06:32:11 PM
Quote from: AmakaSt on November 19, 2021, 11:42:56 PM
Quote from: SplinterGU on November 19, 2021, 09:19:32 PM
ah, solo la version en movil, no en PC... esas cosas son necesarias aclararlas... sigo el hilo, pero me pierdo mucho, la verdad...
Hola SplinterGU,

Esa opción también aparece en el ordenador, al compilar sale también el botón de ejecutar en proyector que es como una vista previa de cómo queda el proyecto final, sin debug y similar a lo que te descarga la opción de crear empaquetado, que es el proyecto final con todos los archivos incluido en el paquete. Hay varias funciones que no se ejecutan al 100% en el IDE (debug), como modos de pantalla completa o de colores de entorno.

Un saludo.


genial! ahi si lo vi! queda de lujo! gracias por la explicacion!
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 28, 2021, 03:23:09 PM
Buenos dias ,AmakaSt

bug seno y coseno va en sentido contrario,hacia arriba ,en versiones anteriores funcionaba correctamente .adjunto codigo..Deberia ir a la posicion 0,240

Otra cuestion sobre el foro ,cuando hago o intento hacer un copy paste aqui,para adjuntar codigo,me expresa internal server error
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 28, 2021, 09:57:28 PM
Quote from: oskarg on November 28, 2021, 03:23:09 PM
Buenos dias ,AmakaSt

bug seno y coseno va en sentido contrario,hacia arriba ,en versiones anteriores funcionaba correctamente .adjunto codigo..Deberia ir a la posicion 0,240

Otra cuestion sobre el foro ,cuando hago o intento hacer un copy paste aqui,para adjuntar codigo,me expresa internal server error
Hola oskarg,

En la versión 1.40 actualice la función fget_angle() para que devuelva los valores similares a Div2 (DivDX) que sería "lo correcto", antes estaba invertido.

Este es tu ejemplo pero para que lo pruebes en DivDX o Div2 y veras que el resultado ahora es similar que en DivGO, salvo que en DivGO si divides puede devolver decimales. :)
PROGRAM example_fget_angle;
BEGIN
    load_fpg("help/help.fpg");

    set_mode(m320x240);
    set_fps(60, 0);

    // call a process
    my_process(320/2, 240/2);

    loop
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
end

PROCESS  my_process(x, y);
private
posicionx;
posiciony;
angulo;
angulox;
anguloy;
velocidad;



begin
    graph = 100;
    //size  = 20;
    z      = 10;

   
velocidad=10;
posicionx=x;//posicionx del enemigo que lanza la bomba
posiciony=y;//posiciony del enemigo que lanza la bomba

angulo=fget_angle(x,y,0,240);
angulox=cos(angulo); // 1000;
anguloy=sin(angulo); // 1000;

  write_int(0,0,0,0, &angulox);
  write_int(0,0,10,0, &anguloy);

  LOOP
     FRAME;
     posicionx=posicionx+velocidad*angulox;//posicionInicial+velocidad*cos*angulo que forma entre los puntos x///de esta manera recorro una linea recta hasta donde se encuentra la nave
     posiciony=posiciony+velocidad*anguloy;//posicionInicial+velocidad*sin*angulo que forma entre los puntos y
     x=posicionx;
     y=posiciony;

     if(y>320) break;end //si he salidod de la pantalla mato el proceso..

   END
END


Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 28, 2021, 10:42:08 PM
Gracias AmakaSt,
Ok....Ahora mismo estoy mirando como iba en div2...tienes razon,tengo que adaptarme a la nueva manera.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 29, 2021, 02:12:01 PM
Buenos dias AmakSt,
1.En el editor grafico si hago un grafico nuevo ,modifico el tamaño por defecto,para que sea mas pequeño,lo hace,pero al guardar y salir mantiene el tamaño inicial.

2.En el edito grafico estaria bien que se pudiera evitar el suavizado de lineas.

Sugerencia,poder quitar el suavizado al crear circulos cuando utilizo la instruccion draw,he intentado hacerlo con smooth_screen(false) ,pero no tiene efecto.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 29, 2021, 09:01:10 PM
Hola oskarg,

Gracias por la revisión, me apunto el primer punto para corregir, con los últimos cambios del ide se me ha tenido que pasar esto. Sobre el segundo punto y la sugerencia, es algo que he intentado pero siempre queda suavizado los círculos y líneas que no son rectas al dibujarse en el canvas, debo seguir probando cosas a ver si consigo dar con una solución.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 30, 2021, 06:35:00 PM
BUG encontrado en raiz cuadrada



program raizcuadrada;
global
// declared global variables
    points = 0;
    hi_score = 0;
valor       = 0;
begin
set_mode(480, 320);
screen_color(cc_silver);

set_fps(60, 0);
    write_int(0,100,100,0,offset valor);

    raiz(0.9 );
   

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process raiz(t);
private
 
begin
     
valor=sqrt(t);
   
loop

frame;
end
end




da 0 la raiz cuadrada..Ya se que pasa no soporta decimales ,por ejemplo la raiz cuadrada de 2.5 da 1 :-\
Luego tengo que mirar algo del seno,creo que falla tambien,ya te dire... si no encuentro el motivo te paso  el codigo.


Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 01, 2021, 11:19:37 AM
Buenos dias Amkast,

te comento un par de bugs...

1.la raiz cuadrada  no acepta decimales --> raiz(0.6) == 0 ... :-\

2.Te explico..Como tengo problemas a la hora de crear graficos ...empleo la version de divgov120 .Con esta creo una caperta  y hago un copy paste con los graficos enumerados 01.png 02.png en dicho lugar...entonces simplemente  hago un load_fpg("graficos/oscar/t1") compilo y guala!!! los graficos aparecen al momento sin tener que arrastrarlos uno a uno.Ha creado el fpg  ..genial!!entonces lo copio a divgo actual ....

En esta version actual,este metodo no me va!! me sale el icono de carga de graficos constantemente se queda bloqueado..si lo hago manual,a veces va y otras  sale el temido icono de la redonda constantemente intentando cargar el grafico.
Sigo trasteando y te comento ....

Otro bug...
3.el boton de crear empaquetado en la version desktop ha dejado de funcionar,solucion de momento utilizo la version con xamp

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 01, 2021, 09:15:55 PM
Hola oskarg,

1. Sobre la función sqrt() de DivGO la hice hace mucho tiempo pensando en cómo funcionaba Div2, por lo que solo funciona con valores int y como resultado devuelve también int, debo repasar y actualizar las funciones matemáticas.
2. Hice varios cambios en la carga de fpg, en distintas versiones, uno de ellos era que no se necesitara crear una carpeta y llenarla, se puede hacer desde el propio ide. Si lo haces con la carpeta debes incluir el fpg.dat con la lista de gráficos para que sea válido.
3. Tengo que mirar porque no funciona, me lo apunto para revisar.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 01, 2021, 09:43:24 PM
Hola Amakast,te comento...
1.adjunto codigo de funciones tweens para divgo,el r15,r20,r21y 22 estan anulados porque no va la raiz cuadrada con decimales,el r15 el sin no se si va correctamente,porque es asi la formula.

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program tweens;
global
jota0;
begin
set_title("My Program Name");
    set_icon("graficos/009.png");

// screen canvas options
set_mode(640, 480);
screen_color(cc_silver);
    set_fps(60, 0);
   
   
     
     write(0,100,100,0,"PULSA ENTER PARA RESETEAR");
   
     Movimiento2(1,20 );//  Linear_tween
     Movimiento2(2,40 );//  Easy in Quad
     Movimiento2(3,60 );//  Easy out Quad
Movimiento2(4,80 );//  Easy in out Quad
Movimiento2(5,100);//  Easy in cubic
     Movimiento2(6,120);//  Easy out cubit
Movimiento2(7,140);//  Easy in out cubit
Movimiento2(8,160);//  EaseInQuart
Movimiento2(9,180);//  EaseOutQuart
     Movimiento2(10,200);// EaseInOutQuart
     Movimiento2(11,220);// EaseInQuint
     Movimiento2(12,240);// EaseOutQuint
     Movimiento2(13,260);// EaseInOutQuint
     Movimiento2(14,280);// EaseInSine
   //  Movimiento2(15,300);// EaseOutSine
     Movimiento2(16,320);// EaseInOutSine
     Movimiento2(17,340);// EaseInExpo
     Movimiento2(18,360);// EaseOutExpo
     Movimiento2(19,380);// EaseInOutExpo
   //  Movimiento2(20,400);//  EaseInCirc
   //  Movimiento2(21,420);// EaseOutCirc
   //  Movimiento2(22,460);// EaseInOutCirc
     
     
     

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end


PROCESS movimiento2(m,yy)

private
//t;//tiempo;
b;//x0;
f;//xf;
d;//duracion;
c;//delta de xf-x0;
una_vez;
una;
final;
t;
xx
BEGIN
graph=1;
size=25;

y=yy;//y0
b=0;//x0
f=640;//yfinal
c=f-b;//delta xfinal-x0
d=180;//frames..//numero de frames para recorrer la distancia
final=false;


loop

    if (  t<=d  )
     
       if ( m == 1)
          x=R1(t,b,c,d,xx);// 
       end
       if ( m == 2)
          x=R2(t,b,c,d,xx);// 
         
       end
       if ( m == 3)
          x=R3(t,b,c,d,xx);// 
         
       end
       
       if ( m == 4)
          x=R4(t,b,c,d,xx);// 
         
       end
       
       if ( m == 5)
          x=R5(t,b,c,d,xx);// 
         
       end
       if ( m == 6)
          x=R6(t,b,c,d,xx);// 
         
       end
       if ( m == 7)
          x=R7(t,b,c,d,xx);// 
         
       end
       
       if ( m == 8)
          x=R8(t,b,c,d,xx);//
         
       end
       if ( m == 9)
          x=R9(t,b,c,d,xx);//
         
       end
       if ( m == 10)
          x=R10(t,b,c,d,xx);//
         
       end
     
       if ( m == 11)
          x=R11(t,b,c,d,xx);//
         
       end
         if ( m == 12)
          x=R12(t,b,c,d,xx);//
         
       end
         if ( m == 13)
          x=R13(t,b,c,d,xx);//
         
       end
        if ( m == 14)
          x=R14(t,b,c,d,xx);//
         
       end
     
       if ( m == 15)
          x=R15(t,b,c,d,xx);//
         
       end
       if ( m == 16)
          x=R16(t,b,c,d,xx);//
         
       end
     
       if ( m == 17)
          x=R17(t,b,c,d,xx);//
         
       end
       if ( m == 18)
          x=R18(t,b,c,d,xx);//
         
       end
       if ( m == 19)
          x=R19(t,b,c,d,xx);//
         
       end
       if ( m == 20)
          x=R20(t,b,c,d,xx);//
         
       end
       if ( m == 21)
          x=R21(t,b,c,d,xx);//
         
       end
       if ( m == 22)
          x=R22(t,b,c,d,xx);//
         
       end
     
     
     
    end
 
 
  t++;
 
  if (key(_enter)) b=0;f=640;c=f-b;x=0;t=0;end
   
frame;

end

END

//---------------------------------------------------------------------------------------------------------------

//  linear_tween
//---------------------------------------------------------------------------------------------------------------

PROCESS R1(t,b,c,d,xx)
BEGIN
return (c*t/d)+b; 

END


//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------

//Easy in Quad
PROCESS R2(t,b,c,d,xx)
BEGIN
//t*t
//return c*(t/=d)*t + b;

//return c*(t/=d)*t + b;
x=t/d;
return c*(x)*x + b;



END
//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------

//Easy out Quad
PROCESS R3(t,b,c,d)
BEGIN
return -c * (t/=d)*(t-2) + b;
END
//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------

//Easy in out Quad
PROCESS R4(t,b,c,d)
BEGIN
if ((t/=d/2) < 1) return c/2*t*t + b;end
return -c/2 * ((--t)*(t-2) - 1) + b;
END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------

//easy in cubic
PROCESS R5(t,b,c,d)
BEGIN
return c * pow (t/d, 3) + b;

END


//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------

// easy out cubit

PROCESS R6(t,b,c,d)
BEGIN
return c * (pow (t/d-1, 3) + 1) + b;


END


//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------

// easy in out cubit

PROCESS R7(t,b,c,d)
BEGIN

if ((t/=d/2) < 1)return c/2 * pow (t, 3) + b;end
return c/2 * (pow (t-2, 3) + 2) + b;

END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------

//EaseInQuart
PROCESS R8(t,b,c,d)
BEGIN

return c * pow (t/d, 4) + b;

END


//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------

//EaseOutQuart

PROCESS R9(t,b,c,d)
BEGIN

return -c * (pow (t/d-1, 4) - 1) + b;
END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseInOutQuart
PROCESS R10(t,b,c,d)
BEGIN
if ((t/=d/2) < 1)return c/2 * pow (t, 4) + b;end
return -c/2 * (pow (t-2, 4) - 2) + b;
END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseInQuint
PROCESS R11(t,b,c,d)
BEGIN
return c * pow (t/d, 5) + b;
END


//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseOutQuint
PROCESS R12(t,b,c,d)
BEGIN
return c * (pow (t/d-1, 5) + 1) + b;
END
//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseInOutQuint
PROCESS R13(t,b,c,d)
BEGIN
if ((t/=d/2) < 1)return c/2 * pow (t, 5) + b;end
return c/2 * (pow (t-2, 5) + 2) + b;

END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseInSine
PROCESS R14(t,b,c,d)
private
grados;
radianes;
BEGIN

//grados   = 90;
//radianes = 90 * pi  / 180;
//360 grados=2*pi radianes
//radianes=angulo* pi/180;
//radianes a angulo-->180*pi ......

//radianes=t/d*(pi/2);

//grados =radianes*180000/pi;
//return c * (1 - cos(grados)/1000 ) + b;
//QUE CACAO me he hecho con los grados !!
//return c * (1 - cos(t/d * (pi/2))) + b;
return c * (1 - cos(t/d * (pi/2))/1000) + b;

END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseOutSine
PROCESS R15(t,b,c,d)
BEGIN


return c * sin(t/d * (pi/2)/1000) + b; //falla el sin....

END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseInOutSine
PROCESS R16(t,b,c,d)
BEGIN

return c/2 * (1 - cos(pi*t/d)/1000) + b;
END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseInExpo
PROCESS R17(t,b,c,d)
BEGIN
return c * pow(2, 10 * (t/d - 1)) + b;
END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseOutExpo
PROCESS R18(t,b,c,d)
BEGIN


return c * (-pow(2, -10 * t/d) + 1) + b;
END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
//EaseInOutExpo
PROCESS R19(t,b,c,d)
BEGIN

//i=3;
//x=i++ -> x=3 and i=4;
//x=++i -> x=4 and i=4;
if ( (t/=d/2) < 1)return c/2 * pow(2, 10 * (t - 1)) + b;end
return c/2 * (-pow(2, -10 * (--t)) + 2) + b;

END

//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
// EaseInCirc
PROCESS R20(t,b,c,d)
private
e0;
e2;
BEGIN



return  c * (1 - sqrt(1 - (t/=d)*t)) + b;


return c*0.1;
END
//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
// EaseOutCirc
PROCESS R21(t,b,c,d)
BEGIN
return c * sqrt(1 - (t=t/d-1)*t) + b;
END
//---------------------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------------------------------------------
// EaseInOutCirc
PROCESS R22(t,b,c,d)
BEGIN

if ((t/=d/2) < 1)return c/2 * (1 - sqrt(1 - t*t)) + b;end
return c/2 * (sqrt(1 - (t-=2)*t) + 1) + b;


END






2.Lo he probado como dices y me crea los graficos,pero no los visualiza,sale una pantalla en negro cuando lo ejecuto,es decir crear un fpg.dat desde cero,entonces he cogido un fpg ya realizado que trae por defecto divgo y pegado nuevos graficos en la carpeta y ya me funciona..perfecto.
3.Lo de crear empaquetado ni idea porque no va,en localhost me funciona
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2021, 12:10:08 PM
Buenos dias Amakast,
No es un bug,pero falla la precision en decimales al hacer un for..esto sucede desde hace bastante tiempo..





/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
// declared global variables
    points = 0;
    hi_score = 0;

begin
set_title("My Program Name");
    set_icon("graficos/009.png") ;

// screen canvas options
set_mode(480, 320);
screen_color(cc_silver);

set_fps(60, 0);

// call a process
decimales();

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end

process decimales();
private
   
      i;
      tabla[10];

       
begin
graph = 9;
size  = 100;
z   = 10;

     for(i=0;i<=1;i=i+0.1)
   
     
     
     tabla[i]=i;
     
     
     write_int(0,100,10+200*i,  0, offset tabla[i]);
     end
   

   
   
   
loop

frame;
end
end
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 05, 2021, 06:48:41 PM
Buenas oskarg,

Ya he corregido las funciones matemáticas para que soporte decimales, he tenido que hacer cambios también en otras funciones como por ejemplo son get_dist() o fget_dist() que llamaba a estas funciones para que no den problemas con el cambio. Ahora el ejemplo parece funcionar bien, se mueven todos los corazones de forma correcta.

Sobre la precisión de los decimales no es un fallo de DivGO tal cual, es cosa del propio Javascript.

Un saludo

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 05, 2021, 09:42:53 PM
Buenas noches AmakaSt,
Gracias por la mejora..
otra cuestion adjunto un simple programa ,lo que deberia hacer simplemente es trazar una linea en el trebol..con put_pixel funciona,con map_put_pixel no se que hago mal..
1.primero dibujo un pixel en la coordenada 1,120 entonces hago un recorrigo si encuentro ese color ,pinto en x+1...Pues nada no hay manera,no entiendo donde cometo el error.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 05, 2021, 11:40:00 PM
Quote from: oskarg on December 05, 2021, 09:42:53 PM
Buenas noches AmakaSt,
Gracias por la mejora..
otra cuestion adjunto un simple programa ,lo que deberia hacer simplemente es trazar una linea en el trebol..con put_pixel funciona,con map_put_pixel no se que hago mal..
1.primero dibujo un pixel en la coordenada 1,120 entonces hago un recorrigo si encuentro ese color ,pinto en x+1...Pues nada no hay manera,no entiendo donde cometo el error.

Un saludo.

Buenas noches oskarg,

Es por la comprobación del pixel de color rojo == 255 no se da en el graph del trebol, aquí te dejo una corrección del código para que trace la línea al buscar algo en el pixel rojo.

/*
    Program's Name:    <My Program Name>
    Author's Name:    <My Name>
    Company's Name:    <My Company or Group>
*/

program MyProgramName;
global
    // declared global variables
    points        = 0;
    hi_score    = 0;
    jota        = 0;
   
begin
    set_title("My Program Name");
    set_icon("graficos/009.png");

    // screen canvas options
    set_mode(128,128,4);
    screen_color(rgb(0,0,0));
    screen_smooth(false);
   
    write_int(0,10,10,0,offset jota);

    set_fps(60, 0);

    // call a process
    fondo();
   
    loop       
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
end

process fondo()
private
      i,j;
      xx;
      yy;
      velocidad;
      rojo;
      veces;
      nose;
      tabla[128];
      maximo=128;
      tt=0;
begin
    graph = 5;
    size  = 100;
    z      = 10;
   
    x= 120/2;
    y= 120/2;

   
    xx = 1;
    yy =128/2;

   
     
       //map_put_pixel(0,graph,xx,yy ,rgba(255,255,255,255)); 
   

       write_int(0,10,128,6,&j);
   
    LOOP


     for (j=0;j<128;j++)
             
              rojo = map_get_pixel(0,graph,j,yy ,"r"); 
           
           //if (rojo == 255)
           if (rojo > 10)
            jota++;
       
              map_put_pixel(0,graph,j,yy ,rgba(255,255,255,255));  //No me pinta la linea completa?¿?
              //map_put_pixel(0,graph,jota,yy ,rgba(255,255,255,255));  //No me pinta la linea completa?¿?
           end
           frame;
     end
     
    FRAME;
    END
       


END

Un saludo.

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 06, 2021, 10:04:35 AM
Buenos dias Amakast,
te explico:
1.Cargo un mapa negro,entonces le pinto un pixel blanco.
2.Ahora hago un recorrido del mapa y cuando encuentre ese pixel blanco que me pinte otro pixel enl x+1...La primera vez lo hace,la segunda iteracion ya no.
3.el algoritmo que me has mostrado se agradece ,pero es diferente,en tu caso haces si r es diferente a 0 por ejemplo entonces pinta ....sin tener en cuenta que yo he modificado el grafico de origen previamente para que busque el color determinado -->blanco

adjunto ejemplo que funciona correctamente en div3 pero no en divgo por que?¿?¿
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 06, 2021, 10:28:59 AM
Y aquí adjunto el efecto que funciona en div3 y no en divgo,creo que así se entenderá mejor...
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 09, 2021, 10:09:40 PM
Hola oskarg,

Ya he corregido ese problema, estaba en la función map_get_pixel() que guarda la primera vez que llamas los datos de la imagen en cache para que fuera mas rápido accediendo a ellos y los cambios en los mapas no los interpreta. Por eso no se sigue pintando la línea solo detecta el primer pixel blanco incluido.

Sobre la descarga de empaquetados en la versión desktop, a mi me funciona (dejo captura), mira que no sea por temas de permisos de windows.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 27, 2021, 06:01:26 PM
Ya disponible online la ultima versión 1.44.0 de Div GO para testeo y las novedades:



funciones:
   - fix(), regex();   

bugs y mejoras:
   - [ADD] soporte de flags en tiles desde editor de mapas de tiles
   - [ADD] mensajes y control de errores producidos por javascript al carga y que no bloquee la página
   - [FIX] sin suavizado en funciones draw cuando screen_smooth es false
   - [FIX] formas (círculos y líneas) sin suavizado en editor gráfico
   - [FIX] corregido desplazamiento de scroll central o medio
   - [FIX] función map_get_pixel() para que no guarde en cache la imagen
   - [FIX] efecto blur de regiones para que no muestre los bordes de la región
   - [FIX] problema al guardar cambios en tamaño de imagen desde el editor
   - [CHANGE] funciones matemáticas para que devuelva valor decimal




Ejemplo función fix(): https://www.divgo.net/c-32e17f06
Ejemplo funcion regex(): https://www.divgo.net/c-80b04b7e

Un saludo y felices fiestas.  :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 28, 2021, 11:50:26 AM
Ya disponible para descargar la versión 1.44.0 de Div GO: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 28, 2021, 12:22:52 PM
Hola AmakaSt,
felices fiestas...
Dos cosas,he trasteado divgo y me ha salido el mensaje y control de errores con una pantalla de color muy peculiar,buen aporte...
2.Deberias unificar la forma en como se manipulan los pixeles internamente en divgo.Me explico...por ejemplo map_put_pixel vs graphic explorer.La primera opcion es lentisima comparada con la segunda.adjunto los dos ejemplos para que veas con claridad la prueba
un saludo.
metodo 1:lento


/*
* colores.PRG by tt
* (c) 2021 tt
*/

PROGRAM colores;
global
    fichero ;
    colores;
    i;
    j;
    xx;
    yy;
    veces;
    cambia;
BEGIN
   set_mode(m320x240);
   fichero=load_fpg("graficos/help");

   write_int(0,10,10,0,offset cambia);

file =fichero;
x=320/2;
y=240/2;
graph= 1;




  loop
 
colores =rand(0,255);

for (j=0;j<320;j++)
  for (i=0;i<240;i++)
       map_put_pixel(fichero,graph,j,i, rgb(colores,0,colores));
       
 
  end
  end





 
 
  cambia++;
  frame;
  end


end




metodo 2 rapido


// Div GO : Games Online > Example
// Php + Html5 + Canvas + Javascript
// by J. Manuel Habas

program example_graphic_explorer;

global

i, graph1;
    colores;
    veces;

begin
set_mode(320, 240);
    screen_color(#059);
      write_int(0,100,100,0,offset veces);


     x=320/2;
     y=240/2;
    graph1 = graphic_explorer(0, 14);
   
    loop
   
       
        colores =rand(0,255);
     



        for (i = 0; i < sizeof(graph1.data); i+=4)
       
       
                graph1.data[i] = colores ;
                graph1.data[i+1] = 0 ;
                graph1.data[i+2] = colores ;
                graph1.data[i+3] = 255;
         end       
               
     

            graph = graphic_builder(graph1);


             veces++;
       
             frame;
    end
end



Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 28, 2021, 03:27:38 PM
Hola de nuevo,
Como diablos va ahora el seno y el coseno ?¿? ;D no me entero nada. ufff!!!





[/code]



UN bug que me crashea divgo por completo.estoy utilizando xamp ...sera por los comentarios cosa que no deberia....

/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program MyProgramName;
global
valor ;
begin
set_title("My Program Name");
    set_icon("graficos/009.png");

// screen canvas options
set_mode(400, 400);
screen_color(cc_silver);

set_fps(60, 0);
    write_int(0,100,100,0,offset valor);

   tiro ();

loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end





process tiro()
BEGIN


END

/*
process tiro()
private v0,g,x0,y0,angulo,t,pii,toco;

BEGIN
graph = 1;
size  = 50;
x0 = 50;
y0 = 150;
pii= 3.1416;
angulo = 75;
t = 0;
v0 =40;
g= 9.8 ;


x=x0;
y=y0;
valor = cos(90)/1000 ;

loop


if (key(_a))

x = x0 + v0 * cos(angulo * Pi /180) * t/1000;
y = y0 + v0 * sin(angulo * Pi /180) * t/1000 - 0.5 * g * t * t; 
t=t+0.2;
end

frame;
end

END






g = 9.8 m/s2 | H = 30.00 m | α = 1.24 rad

v0 = 9.00 m/s
v0x = v0 · cos(α) = 9.00 · cos(1.24) = 2.92 m/s
v0y = v0 · sin(α) = 9.00 · sin(1.24) = 8.51 m/s

x = vx · t = 2.92 · 1.16 = 3.39 m
y = H + v0y·t - 1/2 · g · t2 = 30.00 + 8.51 . 1.16 - 1/2 · 9.8 · 1.162 = 33.28 m

vx = v0x = 2.92 m/s
vy = v0y - g · t = 8.51-9.8 · 1.16 = -2.86 m/s

*/








Esto me pasa en un codigo bien extenso y me peta completamente en xamp .EN version desktop me sale el icono continuo de cargando completamente y me afecta todas las versiones de divgo.Deberia haber un modo de arrancar divgo sin este problema.




Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on December 28, 2021, 07:54:34 PM
Buenas oskarg,

De los métodos que mencionas, es que son distintos y trabajan de forma diferente. Las funciones graphic_builder() y graphic_explorer() están fuera del bucle grande y map_put_pixel() esta dentro de ese bucle, con graphic_explorer() obtienes los datos de la imagen y haces los cambios en el bucle y a luego recompones la imagen con graphic_builder(), es lo correcto. Con map_put_pixel() hace algo parecido a los otros dos pero sin trabajar con los datos de la imagen por lo que acaba siendo mucho más lento al estar todo integrado y dentro del bucle grande.

Sobre el bug, no consigo reproducirlo, copiando el código que has puesto me aparece un 0 en pantalla y parece funcionar bien y sin bloqueos.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on December 28, 2021, 08:31:32 PM
Gracias AmakaSt por probarlo,
he instalado una version mucho mas reciente de xamp y me funciona ahora correctamente.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on March 31, 2022, 05:27:46 PM
Buenos dias,AmakaSt
Que tal ?
Por mi parte he estado bastante tiempo ausente,tuve un accidente laboral y he estado de baja  sin poder hacer nada,salvo engordar y engordar xd  me he  conectado al foro ,pero no he visto movimiento,todo esta muy parado.
Ahora estoy recopilando codigo del disco,lo tengo algo desorganizado y luego con tranquilidad mirare como se programaba xd estoy algo oxidado y espero hacer algo en mis diez dias de descanso que tengo en el proximo mes.


Espero que estes bien de salud que es lo que realmente importa,un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 16, 2022, 01:58:16 PM
Hola oskarg,

No había leído tu mensaje, pensaba que era mas antiguo. Yo estoy bien, con poco tiempo para desarrollar cosas y desde que empezó a fallar mi ordenador (bloqueos, congelaciones repentinas y pantallazos azules) no he hecho nada en mis ratos libres aparte de jugar a la consola, me he cambiado el equipo recientemente.
De momento DivGO está parado, no se me ocurren cosas que mirarle ni hay un feedback que me aporte lucidez, hasta que no programe algún juego o alguna cosa, poco puedo avanzar. :P

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 22, 2022, 08:18:08 PM
Hola Amakast,
Mañana o pasado mañana como maximo publico un juego  muy conocido para divgo....he estado toda la tarde haciendo la mecanica y al final la he sacado XD .incluiré codigo fuente y graficos originales aunque no sean gran cosa con la intencion que lo incluyas como ejemplo ya que lo encuentro muy ilustrativo .
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 24, 2022, 01:19:14 PM
Quote from: oskarg on April 22, 2022, 08:18:08 PM
un juego  muy conocido para divgo
La verdad que tengo curiosidad por saber que juego es. :)

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 25, 2022, 10:01:39 AM
Hola AmakaSt,
Estoy ahora retocando cosas para que quede presentable y de esa manera merezca incluirse con el programa divgo.
Cuando acabe te comento un par de cosas ,tengo dia libre y lo estoy aprovechando..
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 25, 2022, 02:19:01 PM
Hola amakast
tengo un problema con los graficos..no los lee divgo..
como se crea un fpg nuevo desde cero?¿?
en el prg tengo esto  fichero=load_fpg("graficos/t10");
entonces creo una carpeta y pongo ahi los graficos ..sale el error de:
fichero=load_fpg("graficos/t10"); -- NO VALID FPG.DAT FOUND IN DIRECTORY

si incluyo un fpg.dat de otro sitio y lo edito para cambiar la carpeta correcta tambien falla.
ES un error que me saca de mis casillas ,pues no se como se hace un fpg nuevo en divgo desde hace mucho tiempo.Please help.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 25, 2022, 07:09:38 PM
Hola,Amakast
Ya he solucionado a medias el problema...luego cuando termine te comento los problemas que tengo con divgo..no se basicamente hacer un  fpg nuevo.
Estoy añadiendo fases me queda hacer la transicion entre fase y fase y añadir musica.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 25, 2022, 10:10:45 PM
Quote from: oskarg on April 25, 2022, 02:19:01 PM
Hola amakast
tengo un problema con los graficos..no los lee divgo..
como se crea un fpg nuevo desde cero?¿?
en el prg tengo esto  fichero=load_fpg("graficos/t10");
entonces creo una carpeta y pongo ahi los graficos ..sale el error de:
fichero=load_fpg("graficos/t10"); -- NO VALID FPG.DAT FOUND IN DIRECTORY

si incluyo un fpg.dat de otro sitio y lo edito para cambiar la carpeta correcta tambien falla.
ES un error que me saca de mis casillas ,pues no se como se hace un fpg nuevo en divgo desde hace mucho tiempo.Please help.
Hola oskarg,
Es tal como dices, debería funcionarte sin problemas, por lo menos a mi me esta funcionando así.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 26, 2022, 08:23:34 AM
Ya tengo acabado el juego ...falta musica,pero la primera beta la omito...Dentro un rato lo publico,voy a dar una vuelta...
Respeto a los graficos ...
En la carpeta t10  hay algo ??esta vacia por defecto?¿?..
si no pongo nada me pone no se encontro fpg.dat valido en el directorio pero divgo al regresar borra el prg y me carga el que tiene por defecto una que se llama myprogramName .. y de este bucle ahora no hay manera de salir.

SI utilizo una version antigua este fallo no sale,vuelve a cargar el prg mio,pero en el fgp editor sale la rueda constantemente..un desastre..help!!
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 26, 2022, 10:36:06 AM
Hola Amakast,
Te comento el error porque no puedo hacer el empaquetado y todo se debe a los graficos....
Creo un prg nuevo como el que hago en la captura.....
creo una carpeta llamada k000
lo compilo y sale esto:
no se encontro el fpg valido en el directorio -->normal porque no he creado nada,simplemente dentro de k000 tengo la imagen 000.png
regreso al editor entonces accedo al fpg para añadir graficos y guala me sale esta pantallazo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on April 26, 2022, 06:56:56 PM
Hola oskarg,

Sobre que hora estas en Discord? Quiero saber con exactitud cuál es el problema que te está dando, que no sea problema por un formato de caracteres incompatible en el archivo fpg.dat.  ???

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 26, 2022, 08:40:52 PM
Por la noche,estoy,dime cuando y me conecto..
Te comento estoy intentado hacer el empaquetado pero es imposible XD...he creado un fpg con smart fpg ..asi con esta forma me crea y lee el fpg,el problema viene que cuando le doy a la pestañita de empaquetar lo ignora.


.entonces ....
he probado hacerlo con divgo y xamp...todo va bien ,los ejemplos que trae,pero al intentar compilar mi proyecto aqui sale.. no se puede acceder a este sitio web..bueno.......ni idea ya....la mar de divertido.

Mañana estoy libre..si quieres mañana cuando a ti te vaya bien..
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 27, 2022, 10:13:57 AM
Gracias AmakaSt, despues de muchos años ya se hacer un fpg de cero XD en divgo!! lo he probado esta mañana y funciona correctamente...aleluya!!..
el unico problema que tengo ahora es que no puedo empaquetar ningun juego,ni los que trae por defecto,antes si...alguna explicacion?¿?
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 28, 2022, 02:53:37 PM
Hola Amakast,
te adjunto el ejemplo ,modifcado un par de cosas,habia un par de niveles imposibles de hacer..tiene en total 56 .Incluye codigo y graficos
Es beta 0.1... con lo cual ,sufrira mejoras,aunque prefiero hacer otro juego diferente ahora....
Te adjuto una  prg  con un bug que no encuentro el motivo..se me olvido preguntarte porque divgo aqui omite las colisiones si pongo este codigo en esta posicion del programa,

linea 638 a 644... simplemente hago un recorrido de los procesos...la cuestion es que omite entonces todo lo que hay abajo de estas lineas,no hace cosilion con las cajas y no entiendo el motivo..

     
                id_proceso = get_id(TYPE CAJA);
             WHILE(id_proceso)
                 
                   
                id_proceso = get_id(TYPE CAJA);
                     
               end 


Un saludo,puedes modificar el codigo para que tenga vidas infinitas....
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on April 30, 2022, 11:43:36 AM
Hola AmakaSt,
adjunto un simple ejemplo para calcular el seno
El problema viene que no funciona como div2 ni tampoco  el valor que pongo en una simple calculadora..No entiendo los valores que da:

PROGRAM fallasenos;

GLOBAL
   grados;
   t[];
   i;
   valor;
BEGIN
                   /// tiene que dar estos valores...
    t[1]=sin(0) ;   //       0
    t[2]=sin(30000);//   0.5
    t[3]=sin(45000);//   0.707
    t[4]=sin(60000);//   0.866
    t[5]=sin(90000);//   1
    t[6]=sin(180000);//  0
    t[7]=sin(270000);// -1
    t[8]=sin(360000);/// 0
   
    for (i=0;i<=8;i++)
    write_int(0,0,40*i,0,offset t[i]);
    end
   
   REPEAT
        FRAME;
    UNTIL (key(_esc));
END



Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 01, 2022, 05:18:50 AM


PROGRAM fallasenos;

GLOBAL
   grados;
   t[];
   i;
   valor;
   pii;
BEGIN

pii=3.14159;
//90*pi/180

                   /// tiene que dar estos valores...
    t[0]=sin(0) /1000;   //       0
    t[1]=sin(30000) /1000;//    0.5
    t[2]=sin(45000)/1000;//   0.707
    t[3]=sin(60000)/1000;//   0.866
    t[4]=sin(90000)/1000;//   1
    t[5]=sin(180000)/1000;//  0 ....
    t[6]=sin(270000)/1000;// -1
    t[7]=sin(360000)/1000;/// 0
   
    for (i=0;i<8;i++)
    write_int(0,0,40*i,0,offset t[i]);
    end
   
   REPEAT
        FRAME;
    UNTIL (key(_esc));
END



Me autorespondo.asi funciona lo que pasa que cuando es 0  te da 3.3e-10 que es 0 XD
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 01, 2022, 08:38:57 PM
Hola oskarg,

Antes de nada, muy guapo el Sokoban, lo incluiré junto a los juegos de ejemplo en Div GO. :)

Sobre el bug de la función sin() es por la longitud de decimales y su precisión en Javascript, puedes usar la función fix() para ver el resultado con menos decimales.


PROGRAM fallasenos;

GLOBAL
   grados;
   t[];
   i;
   valor;
BEGIN
    /// tiene que dar estos valores...
    t[0]=fix(sin(0), 5);   //   0
    t[1]=fix(sin(30000), 5);//   0.5
    t[2]=fix(sin(45000), 5);//   0.707
    t[3]=fix(sin(60000), 5);//   0.866
    t[4]=fix(sin(90000), 5);//   1
    t[5]=fix(sin(180000), 5);//  0
    t[6]=fix(sin(270000), 5);// -1
    t[7]=fix(sin(360000), 5);/// 0
   
    for (i=0;i<=7;i++)
    write_int(0,0,40*i,0,offset t[i]);
    end
   
   REPEAT
        FRAME;
    UNTIL (key(_esc));
END


Así el resultado es más parecido al de Div2 (DivDx).

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 03, 2022, 04:20:45 PM
Quote from: oskarg on April 28, 2022, 02:53:37 PM
Te adjuto una  prg  con un bug que no encuentro el motivo..se me olvido preguntarte porque divgo aqui omite las colisiones si pongo este codigo en esta posicion del programa,

linea 638 a 644... simplemente hago un recorrido de los procesos...la cuestion es que omite entonces todo lo que hay abajo de estas lineas,no hace cosilion con las cajas y no entiendo el motivo..

     
                id_proceso = get_id(TYPE CAJA);
             WHILE(id_proceso)
                 
                   
                id_proceso = get_id(TYPE CAJA);
                     
               end 

Hola oskarg,

Esto no es un error de DivGO, en Div2 debería funcionar igual, después del WHILE habría que poner un frame para restaurar el get_id(), por eso el resto de get_id() ya no te están funcionando. Aquí te dejo la descripción del get_id() del manual de Div2 que lo explica:

Quote
Comprueba si hay procesos del tipo especificado activos. En caso afirmativo, esta función devolverá el código identificador de uno de ellos y, en el caso contrario, devolverá un 0.

Si existen varios procesos del tipo que se ha especificado, la función get_id() devolverá el resto de los identificadores en las sucesivas llamadas que se realicen a la misma.
Una vez se hayan devuelto todos los códigos identificadores, la función devolverá 0, hasta que se vuelva a ejecutar una sentencia FRAME, momento a partir del cual esta función devolverá, de nuevo, todos los códigos identificadores de los procesos del tipo indicado.

Para obtener de esta forma todos los códigos identificadores de los procesos no se debe utilizar la sentencia FRAME entre dos llamadas consecutivas a la sentencia get_id(). En el caso de ejecutar una sentencia FRAME, esta función volverá a retornar todos los códigos identificadores de procesos desde el primero.
Algo similar sucede si se ejecuta una llamada a la función especificando un tipo de proceso diferente; si tras esto se vuelven a pedir identificadores del tipo de proceso anterior, esta función también los volverá a retornar todos desde el primero.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 23, 2022, 01:35:34 PM
Buenas,

Ya hay disponible online para testear la versión 1.46.0 de Div GO y las novedades:


funciones:
   - break_back_scroll();

bugs y mejoras:
   - [ADD] función para crear múltiples planos de scroll en el plano de fondo
   - [ADD] opción en editor gráfico para exportar a formatos map y png
   - [ADD] incluido el juego Sokoban de OskarG en la lista de ejemplos
   - [FIX] corregido funcionamiento interno para que map_get_pixel() no ralentice
   - [FIX] problema con la lectura de fpg.dat si había algún espacio de mas
   - [CHANGE] estructura de ejemplos para mostrar más y organizado por temas
   - [CHANGE] nueva versión de electron, ahora compatible con los editores de gráficos y de tiles





Ejemplo de la función break_back_scroll(): https://www.divgo.net/c-e4457cc9

Un saludo.  :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 23, 2022, 02:42:56 PM
Buenos dias Amakast,
1. El ejemplo de multiples planos de scroll con el motor de tiles esta genial...aqui te has pasado con creces..Lo tengo que estudiar y hacer un juego con este metodo.Voy hacer seguro un docena de juegos XD con este sistema
2. Se agradece la mejora de map_get_pixel,suelo utilizar mucho este tipo de funciones.
3. Has solucionado el bug del visualizador fpg,cuando hacias un zoom a una imagen grande y no la representaba correctamente.genial.

Espero seguir haciendo mas juegos y que la gente se anime a probar este gran programa porque es realmente bueno y lo mejor de todo ,el mas sencillo que hay por la red,teniendo control en todo momento de todo.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on May 24, 2022, 06:51:01 PM
Quote from: oskarg on May 23, 2022, 02:42:56 PM
Buenos dias Amakast,
1. El ejemplo de multiples planos de scroll con el motor de tiles esta genial...aqui te has pasado con creces..Lo tengo que estudiar y hacer un juego con este metodo.Voy hacer seguro un docena de juegos XD con este sistema
2. Se agradece la mejora de map_get_pixel,suelo utilizar mucho este tipo de funciones.
3. Has solucionado el bug del visualizador fpg,cuando hacias un zoom a una imagen grande y no la representaba correctamente.genial.

Espero seguir haciendo mas juegos y que la gente se anime a probar este gran programa porque es realmente bueno y lo mejor de todo ,el mas sencillo que hay por la red,teniendo control en todo momento de todo.
Hola oskarg,

Se pueden crear efectos realmente chulos con esto, vi claro lo que faltaba en los scrolls de Div al probar el SGDK. :)
Lo del bug del zoom era por electron, era antiguo y no era compatible con unas variables soportadas en navegadores más actuales.

Y para terminar, ya se puede descargar la versión 1.46.0: https://www.amakasoft.com/herramientas/div-go.html

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on May 26, 2022, 10:28:18 PM
Hola AmakaSt
adjunto dos ejemplos que hacen lo mismo, uno da  2 frames y el otro 25 frames.la diferencia es muy grande.En la version 1.65 el de 2 frames me da entre 4 y 6.Me imagino el motivo y por eso se deberia de incluir una variable de como quiere uno que se comporte map_put..La forma con graphics_builder es mucho mas eficaz..internamente habria que mirar que esta pasando,pues son muchos frames.
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 02, 2022, 04:49:24 PM
Hola oskarg,

Son muchísimos ciclos cambiando la imagen antes de frame, habían versiones previas (no se cual es la 1.65, con DivGO todavía no lo he alcanzado) que no cambiaba el dato de imagen y al hacer map_get_pixel() no detectaba el cambio de color en el pixel, al aplicar esto se perdió optimización. He probado en hacer cambios al map_put_pixel() y parece que he ganado algunos fps, he pasado de 10 a 15 fps, sigue siendo lento pero es una mejora.

Cree graphic_builder() y graphic_explorer() como una alternativa a cómo trabaja map_put_pixel(), creo que ya lo explique en otro comentario. La función map_put_pixel() hace lo que las otras dos dentro del bucle, por eso tiene peor rendimiento.

Y aún se puede mejorar más el rendimiento de la función graphic_builder() que has compartido sacando esta función del bucle for():


// Ejemplo de compilador online Div GO
// Php + Html5 + Canvas + Javascript
// by J. Manuel Habas

program ejemplo_graphic_explorer;

global

    txt, i, count, grafico1, grafico2;
    velocidad = 1, random;
    fichero;

begin
    set_mode(320, 200);
    set_fps(60, 0);
    screen_color(#059);
    fichero=load_fpg("graficos/help");

    write_int(0,100,100,0,offset fps);


    grafico1 = graphic_explorer(fichero, 2);
   
    x = 320/2;
    y = 200/2;
   
    loop
        grafico2  = graphic_explorer(fichero, 1);

        velocidad = grafico2.width - 1;
        random = rand(0, 255);
       
        for (i = 0; i < sizeof(grafico2.data); i+=4)
            grafico1.data[i]   =  random;
            grafico1.data[i+1] =  random;
            grafico1.data[i+2] =  random;
            grafico1.data[i+3] =  255;
        end
       
        graph = graphic_builder(grafico1); //fuera del bucle mejor
       
       frame;   
    end
end


Así ya me va a 60 fps. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 03, 2022, 12:08:01 PM
perfecto !!
Ya he implementado un map_put con este sistema y paso de 25 frames a 60 ...un cambio muy drastico.Tengo que mirar como crear unas rutinas...gracias



Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 13, 2022, 02:32:49 PM
Hola AmaKaSt,
Un bug del ide,En esta versión de divgo el deslizador para aumentar el tamaño de texto ha desaparecido sin más,estaba dibujado previamente en una posicion erronea,simplemente he compilado y ha desaparecido .
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 13, 2022, 02:33:41 PM
size code..
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 17, 2022, 04:20:52 PM
Hola,
¿ como se inicia una tabla en divgo..estoy espeso ,no lo veo...?
Simplemente quiero hacer una struct de arrays.. muestro ejemplo que se entiende lo que pretendo pero falla.



/*
Program's Name: <My Program Name>
Author's Name: <My Name>
Company's Name: <My Company or Group>
*/

program Tablass;
global

struct tabla[6]
       i[2];
end       
                 

     


begin



set_title("tablas");
    //set_icon("graficos/009.png");

// screen canvas options
set_mode(128,128,3);
screen_color(cc_silver);

set_fps(60, 0);
    Inicia_tabla();



loop
if (key(_esc)) exit("Text Exit", 1); end

frame;
end
end



PROCESS Inicia_tabla()
BEGIN
tabla[1].i[] = 1,2,3;   


//write_int(0,100,100,0, tabla[1].i[0]);--daria 1
//write_int(0,100,100,0, tabla[1].i[1]);--daria 2
//write_int(0,100,100,0, tabla[1].i[2]);--daria 3

LOOP
FRAME;
END


END



Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 18, 2022, 09:55:35 AM
Hola oskarg,

Aquí te dejo de la manera que funciona:
/*
    Program's Name:    <My Program Name>
    Author's Name:    <My Name>
    Company's Name:    <My Company or Group>
*/

program Tablass;
global

struct tabla[6]
    i[2];
    //i[] = 1,2,3;
end       


begin



set_title("tablas");
    //set_icon("graficos/009.png");

    // screen canvas options
    set_mode(128,128,3);
    screen_color(cc_silver);

    set_fps(60, 0);
    Inicia_tabla();



    loop       
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
end



PROCESS Inicia_tabla()
BEGIN
//tabla[1].i[] = 1,2,3; //esta forma de declarar es valido dentro de global
tabla[1].i[0] = 1;   
tabla[1].i[1] = 2; 
tabla[1].i[2] = 3; 

//write_int() con offset
write_int(0,20,0,0, offset tabla[1].i[0]);
write_int(0,20,20,0, offset tabla[1].i[1]);
write_int(0,20,40,0, offset tabla[1].i[2]);

//write sin offset
write(0,100,0,0, tabla[1].i[0]);
write(0,100,20,0, tabla[1].i[1]);
write(0,100,40,0, tabla[1].i[2]);

LOOP
    tabla[1].i[0] ++;
    tabla[1].i[1] += 2;
    tabla[1].i[2] += 4;

    FRAME;
END


END


Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 18, 2022, 12:26:45 PM
Gracias Amakast,
Estoy haciendo un juego y requiero manipular tablas, cuando lo acabe te lo paso .
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 20, 2022, 01:46:36 PM
Hola AmakaSt,
Como estás haciendo un editor de fuentes te hago esta sugerencia.

1.En ocasiones se requiere no aplicar suavidado en las letras,"es decir que se imprima tal cual como lo has concebido" como el caso de sokoban.Lo intenté  hacer cargando un fuente supuestamente dentada ,pero siempre  quedaba  borroso e ilegible   y de ahi que empleara graficos como si fueran letras .
Se puede en divgo programar un proceso que  escriba  letras ,no es complicado ,una vez hecho ya  puedo utilizarlo como plantilla , pero es algo a priori engorroso.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: panreyes on June 20, 2022, 04:27:39 PM
Buenas :) Sólo vengo a decir que me alegro mucho de que DivGO siga en marcha :) 💪🏼
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 20, 2022, 06:52:20 PM
Quote from: oskarg on June 20, 2022, 01:46:36 PM
Hola AmakaSt,
Como estás haciendo un editor de fuentes te hago esta sugerencia.

1.En ocasiones se requiere no aplicar suavidado en las letras,"es decir que se imprima tal cual como lo has concebido" como el caso de sokoban.Lo intenté  hacer cargando un fuente supuestamente dentada ,pero siempre  quedaba  borroso e ilegible   y de ahi que empleara graficos como si fueran letras .
Se puede en divgo programar un proceso que  escriba  letras ,no es complicado ,una vez hecho ya  puedo utilizarlo como plantilla , pero es algo a priori engorroso.

Un saludo.
Hola oskarg,

En principio le tengo quitado el suavizado al editor, como en el editor de gráficos, pero las fuentes formato ttf son vectoriales y siempre se acaba suavizando algo.

Quote from: panreyes on June 20, 2022, 04:27:39 PM
Buenas :) Sólo vengo a decir que me alegro mucho de que DivGO siga en marcha :)
Gracias panreyes, en ello ando liado. :)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 21, 2022, 10:42:11 AM
bug encontrado en tablas.
Cuando tenga terminado el juego te monto un ejemplo..
Te explico tengo esto:


struct posicion
x[3]
end

T_base[10,10];

...
....
hace cosas raras si lo pongo de esta manera tengo que crear una variable auxiliar e entonces va .

private
e;

valor = T_BASE[posicion.x[0],0] ; DA MAL EL RESULTADO...

if  (valor == 1 ) ......end
//me da siempre 1...

//EN CAMBIO SI HAGO ESTO:


e=posicion.x[0];

//  y le asigando e el contenido de posicion.x[0] y lo meto dentro de la tabla da bien el resultado.

valor = T_BASE[e,0] ; DA BIEN EL RESULTADO.
if  (valor == 1) ...end

Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 21, 2022, 02:49:55 PM
Buenos días AmaKaSt,
Pregunta tonta ...
Supongo que no se puede hacer esto..pero pregunto...


Tengo un proceso llamado A que gestiona el fondo con un graph=1.
Tengo otro proceso Llamado B.
Mi pregunta es ,puedo desde B hacer un map_put del graph=1 del proceso A   ?

Lo digo para no hacerlo todo dentro del proceso A.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 21, 2022, 02:55:13 PM
Seria como una especie de father,pero en vez de valores ,de graficos...
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 21, 2022, 09:57:43 PM
Hola oskarg,

¿Y no te valdría pasando el valor del graph y el file de dicho proceso al otro por parámetro? O crear una función que pueda recibir esos valores por parámetro, siempre se puede usar las variables father.graph o son.graph.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 22, 2022, 02:26:19 PM
Qué tonto!! No me acordaba 😄  Dentro de 5 días lo pruebo,es cuando tengo día libre y  te comento . gracias.ahh y te monto un ejemplo de poniendo el v struct tabla dentro de otra tabla no va, debo guardarlo en una variable..como puse arriba en el ejemplo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 23, 2022, 05:06:00 PM
Hola a todos,

Ya está disponible otra nueva versión de Div GO, las novedades:



bugs y mejoras:
   - [ADD] nuevo editor de fuentes fnt con opciones de cambio de color, degradado, bordes y líneas
   - [ADD] opción para crear y editar fuentes desde visor de fuentes
   - [ADD] opción para exportar fuentes formato fnt compatible con bennugd
   - [ADD] debido al tamaño de las fuentes generadas al guardar, estas se guardan en local usando la api indexeddb
   - [CHANGE] la función break_back_scroll() ahora retorna el valor de traslado por planos
   - [CHANGE] funcionamiento interno de la función map_put_pixel() para pequeña mejora de rendimiento





Y aquí dejo el ejemplo de la función break_back_scroll() actualizado con traslado manual de planos: https://www.divgo.net/c-8fa91506

Un saludo y feliz verbena. :)
Title: Re:Div Games en Html5 y Canvas
Post by: FreeYourMind on June 23, 2022, 09:21:45 PM
gracias
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 24, 2022, 02:40:10 PM
Buenos días,
En JavaScript proporciona métodos para eliminar elementos de una tabla, valores. Me gustaría que se planteará la posibilidad de añadirlo ya  que lo encuentro muy útil.
Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 26, 2022, 01:05:25 PM
Hola AmaKaSt,
Buenos días,tengo un par de dias libres y estoy haciendo un proyecto y me ha sorprendido la bajada desorbitada que tengo en fps con map_put..
Solo logro 1 frame
en la version 1.65 logro 60 fps.
El grafico 17 tiene de tamaño 320x240
el grafico 18 tiene de tamaño 8 x8 pixeles.

Me gustaria que se implementara una variable de como se quiere comportar estas funciones o que fuera global,pues la diferencia es abismal  o que se mirara como mejorarlo.

PROGRAM example_map_put;

PRIVATE
    x_destination;
    y_destination;
    file1;
    i;
BEGIN
set_mode(m320x200);
    set_fps(60,0);
    write_int(0,100,100,0,offset fps);
    file1=load_fpg("graficos/help");
    graph=17;
    x=160;
    y=100;
   // for(i=0;i<1000;i++)
     //   pinta(); 
   // end
   
    LOOP
        x_destination=rand(0, 320);
        y_destination=rand(0, 200);
          for (i=0;i<4000;i++)
        map_put(0, 17, 18, x_destination, y_destination);

     //   angle+=1000;
        end
        FRAME;
    END
END
//__________________________________________________________________________________________________________________
//__________________________________________________________________________________________________________________
//__________________________________________________________________________________________________________________

PROCESS pinta()
BEGIN

graph= 19;
y=rand (0,240);
x=rand (0,240);

angle=rand(10000,360000);
loop
frame;

angle=angle+10000;
end
END


Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 26, 2022, 03:33:41 PM
Hola oskarg,

Ya me lo habías comentado antes pero todavía no se cual es la versión 1.65, ni lo que tiene. Div GO aún no ha alcanzado esa versión, estoy intentando quitar errores de la 1.48.

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on June 27, 2022, 11:41:32 PM
1.36.5 casi acierto
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on June 28, 2022, 12:39:59 PM
Buenas,

Div GO versión 1.48.2 ya está disponible para descargar: https://www.amakasoft.com/herramientas/div-go.html



bugs y mejoras:
   - [FIX] solucionado fallo al cargar fuentes locales formato fnt causado por el nuevo editor de fuentes
   - [FIX] problema en el compilador al convertir tablas de dos dimensiones cuando hay una variable con corchetes dentro
   - [CHANGE] nuevo parámetro opcional de guardado de imagen para las funciones: map_put(), map_put_pixel(), map_xput() y map_block_copy()




Ejemplo de cambio del estado de guardado de mapa en funciones map_xxx(), parámetro opcional (por defecto: true): https://www.divgo.net/c-59ead822

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on September 16, 2022, 02:51:29 PM
Buenos días Amakast,
Qué tal? Por mi parte el próximo mes tengo vacaciones y espero hacer un juego que lo inicié, pero lo dejé a medias por falta de motivación y porque tenía un error de concepto y preferia reescribirlo de cero.A veces es lo que falta,ganas ,pues con divgo actualmente se puede hacer grandes cosas, pero como el foro está bien parado, no interactúas con demás gente, estas menguan.Seguro que me compro un monitor 2k o 4k,para dibujar a lo bestia, o una tableta gráfica con pantalla...ya veré...hace un par de años me compré un ordenador por menos de 300 euros y el         cambio en divgo fue increíble,el doble de procesos.un i7 de 6 generación.Espero que estés bien.
Un saludo
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 19, 2022, 10:14:46 AM
Hola a todos,

Ya disponible la versión 1.50.0 de Div GO (solo online para testear) y las novedades:



funciones:
   - start_socket(), set_socket(), stop_socket();
   - push(), unshift(), pop(), shift(), splice();   

bugs y mejoras:
   - [ADD] nuevas funciones para modificar arrays
   - [ADD] cambio de nombre de las funciones socket
   - [ADD] nuevo tema oscuro Night
   - [FIX] funciones socket, antes no funcionaba correctamente y bloqueaba el programa
   - [FIX] empaquetado de fuentes formato fnt creadas desde el editor de Div GO




Ejemplo de función splice(): https://www.divgo.net/c-eb1e1a48 (https://www.divgo.net/c-eb1e1a48)
Ejemplo de funciones push(), shift(), pop(), unshift(): https://www.divgo.net/c-9bdce921 (https://www.divgo.net/c-9bdce921)

Un saludo.
Title: Re:Div Games en Html5 y Canvas
Post by: oskarg on November 19, 2022, 03:43:34 PM
Ohh !!! que alegría han venido los reyes magos antes de tiempo!!  las funciones de eliminar y añadir elementos a una tabla son realmente útiles,es algo que envidiaba del lenguaje lua. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 20, 2022, 10:04:19 AM
Hola oskarg,

Tenía preparada la versión desde hace un par de semanas, pero uno de los ejemplos no los podía reproducir en mi servidor a no ser que pague más para poder tener esa opción. Tener acceso a una terminal y no poder instalar lo que quieras... :(

He creado el ejemplo con unas pequeñas instrucciones para levantar un servidor websocket en local y aquí el ejemplo de cómo hacer un sencillo juego multijugador online: https://www.divgo.net/c-9b5b45f9

Añado también esta URL que explica como levantar un servidor local de manera muy detallada: https://programadorwebvalencia.com/cursos/javascript/websockets/

Un saludo. :)
Title: Re:Div Games en Html5 y Canvas
Post by: AmakaSt on November 22, 2022, 09:58:40 PM
Buenas,

Ya está para descargar la versión 1.50.0 de Div GO: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)

Un saludo.  8)
Title: Re: Div Games en Html5 y Canvas
Post by: oskarg on March 05, 2023, 09:23:31 AM
Buenos días AmakaSt,
Estoy haciendo un juego y pretendo utilizar las nuevas funciones que has incluido,pero no se si es posible,sino se puede no pasa nada lo hago como lo estoy haciendo ahora,explicado abajo.
Me explico con un simple ejemplo:

program MyProgramName;
global
    game_over=    false;
 

   
  struct enemigo[10]
      x ;
      y ;
  end 



BEGIN
    set_title("Juego ejemplo");
    set_icon("graficos/009.png");

    // screen canvas options
    set_mode(320, 240,4);
    screen_color(cc_silver);
    set_fps(60, 0);
   
   
    loop       
        if (key(_esc)) exit("Text Exit", 1); end

        frame;
    end
END







Cosas que observo
1 enemigo[10] tengo que definir un valor en este caso 10..no me permite divgo hacerlo de manera dinamica.
2.Si defino como una struct..tampoco me permite eliminar un enemigo o añadir otro..o bien es que no se como hacerlo con estructuras.....con lo cual...lo que haga es esto: definir una simple tabla...


enemigo[0] = 2;
enemigo[1] = 0; //x
enemigo[2] = 0;//y
enemigo[3] = 0; //x segundo enemigo..
enemigo[4] = 0;//y  segundo enemigo..

 

Entonces si puedo añadir y quitar elementos de la tabla..solo que es algo mas engorroso,enemigo
Un saludo..

Title: Re: Div Games en Html5 y Canvas
Post by: AmakaSt on March 08, 2023, 07:44:25 PM
Hola oskarg,

Puedes hacer esto para declarar valores en la struct:
  struct enemigo[10];
      x;
      y;
  end = 50, 100, //x, y,
  100, 50,
        160, 120,
        200, 200,
        300, 100,
        280, 30,
        30, 200,
        200, 30,
        50, 100,
        160, 10,
        10, 160;

Si no pones nada a x e y por defecto es 0, si pones esto:
  struct enemigo[10];
      x = 160;
      y = 120;
  end

Todos los valores x e y del struct serán 160 para "x" y 120 para "y".

Un saludo.
Title: Re: Div Games en Html5 y Canvas
Post by: oskarg on March 08, 2023, 09:57:20 PM
Gracias por la forma de cómo se declaran las variables en una estructura, pero hay alguna manera de cambiar el tamaño de la estructura..es decir, eliminar enemigo(10) y que pase el struct a tamaño 9.
Un saludo.
Title: Re: Div Games en Html5 y Canvas
Post by: AmakaSt on March 08, 2023, 10:25:16 PM
Sí la hay, para eliminar uno por detrás:
enemigo = pop(enemigo);
Para eliminarlo por delante:
enemigo = shift(enemigo);
Y para indicar cual quieres eliminar, usando:
enemigo = splice(enemigo, 2, 1);
Un saludo.
Title: Re: Div Games en Html5 y Canvas
Post by: oskarg on March 09, 2023, 03:38:52 PM
Buenas...
Y como se añade un elemento.. ?¿? da error.. ejemplo..compila bien,pero luego se bloquea.

// Ejemplo Div GO (Div Games Online)
// by Jose Manuel Habas

program ejemplo_push_shift_pop_unshift;
global   
    struct  enemigo[0]
               x;
               y;
    end           
   
begin
set_mode(480, 240);
   
   
     enemigo = push(enemigo,1); //da error..
   

loop
frame;
end
end

¿Como puedo añadir el valor directamente es decir enemigo[1].x= 20 ..enemigo[1].y=40?¿?
Title: Re: Div Games en Html5 y Canvas
Post by: oskarg on March 09, 2023, 05:00:47 PM
Otra cosa a que es debido este mensaje ?¿?fallonose.png
Title: Re: Div Games en Html5 y Canvas
Post by: AmakaSt on March 10, 2023, 11:00:47 PM
Hola oskarg,

No se puede crear un elemento o espacio a struct con push(), porque el segundo parámetro es solo para un valor al final, valido solo para un array y no se indica a que quieres pasar ese valor de 1, si a x o a y. Tampoco había pensado en lo de crear structs dinámicamente, me lo apunto para futuras versiones.

Sobre el error, lo devuelve el propio javascript, suele ser por algo que no le ha gustado y que el compilador lo ha dado por bueno, si puedes pasarme el código en el que te salta ese error para que me lo pueda mirar, te puedo decir a que se puede deber.

Un saludo.
Title: Re: Div Games en Html5 y Canvas
Post by: oskarg on March 11, 2023, 05:21:11 AM
Lo describí por casualidad,simplemente declaras una variable global con el nombre top=12; entonces compila bien , pero luego sale tal mensaje.
2. Estoy haciendo un par de cosas cuando lo acabe te lo muestro, ya te contaré mejor cuando esté acabado , tengo un pequeño problema, pero creo que he encontrado la solución haciendo como expresé tablas de una dimensión
.
3. Respecto lo hablado,es cierto que hay muy poca actividad y esto desanima a cualquier y compaginar este hobby con el trabajo etc es a veces complicado, aún así nunca lo dejes muerto,tiene grandes mejoras respecto al div original y es lo más sencillo, potente y versátil que hay.
Un saludo
Title: Re: Div Games en Html5 y Canvas
Post by: AmakaSt on April 23, 2023, 09:08:26 PM
Hola,

Ya disponible la nueva versión 1.52.0 de Div GO, las novedades:


variables:
  - _pause, _apostrophe, _backslash, _c_enter, _alt_gr;
  - _l_control, _r_control, _l_shift, _r_shift, _contextmenu, _os, _l_os, _r_os;


bugs y mejoras:
  - [ADD] nuevo sistema de teclado, anterior estaba obsoleto, y constantes de teclas cambiadas y añadidas
  - [FIX] varias correcciones en el compilador para detectar errores
  - [FIX] corrección en generador de programa con los bucles "for" y "from" dentro de bloques "switch"
  - [FIX] solucionado varios problemas en primitivas draw() y mejora de rendimiento
  - [FIX] corregido algunos problemas de bloqueo en el ide al cargar formatos de fuente fnt
  - [FIX] problema en funciones modplay para pausar y continuar la reproducción
  - [CHANGE] variables globales y constantes encapsuladas dentro de divgo para evitar problemas con las propias de javascript



Un saludo. :)
Title: Re: Div Games en Html5 y Canvas
Post by: AmakaSt on April 29, 2023, 08:10:24 AM
Ya está para descargar la versión 1.52.0 de Div GO: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html)

Un saludo.
Title: Re: Div Games en Html5 y Canvas
Post by: AmakaSt on May 14, 2023, 07:30:49 PM
Hola,

Disponible versión 1.52.4 de Div GO para descargar, las novedades:

bugs y mejoras:
  - [ADD] botones de servicios más accesible en el ide: restart y pause/play
  - [FIX] compatibilidad de variables mouse (x, y) en navegador firefox
  - [FIX] declaración de variables privadas desde los parámetros de un proceso que fueron declaradas previamente como globales
  - [FIX] solucionado problema en analizador de programa al refrescar siguiente frame



Un saludo. :)
Title: Re: Div Games en Html5 y Canvas
Post by: AmakaSt on August 25, 2023, 08:57:14 PM
Buenas,

Nueva versión 1.54.0 de Div GO ya disponible online para testear, las novedades:

bugs y mejoras:
  - [ADD] más juegos de ejemplo y tutoriales en el menú: Oh Mummy! de MikeDX, Galax y Puzzle
  - [FIX] generador de programa con bucle "repeat ... until" si existe otro "repeat ... until" dentro del bucle
  - [FIX] variables encapsuladas como stroke_size en write_in_map() o mouse en funciones de colisión
  - [FIX] reinicio de variables al reiniciar aplicación desde botón de servicio del ide
  - [FIX] algunos problemas de estilo en el ide
  - [CHANGE] funcionamiento interno de set_mode()



Un saludo. :)
Title: Re: Div Games en Html5 y Canvas
Post by: AmakaSt on August 27, 2023, 12:42:36 PM
Div GO versión 1.54.0 ya está disponible para descargar: https://www.amakasoft.com/herramientas/div-go.html (https://www.amakasoft.com/herramientas/div-go.html?fbclid=IwAR05XnkQ_luXJ3_y-aYZq0F5rUM_wHqEic29qMjgOYxdHbmaujjPBpI_nEw)