Div Games en Html5 y Canvas

Started by AmakaSt, September 07, 2012, 03:28:01 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

l1nk3rn3l

#240
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

AmakaSt

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

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.

FreeYourMind

entonces no es open source ? porque descompilar con esas tools no suelen decompilarlo al 100% y que sean compilable al 100%

AmakaSt

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).

FreeYourMind

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

AmakaSt

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. :)

l1nk3rn3l

#246
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


estamos en fase de pruebas antes de liberar la definitiva (ide con exportacion android y windows)

AmakaSt

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).

FreeYourMind

yo tambien tengo ese movil  ;D  pero version 32 gigas, 3 gigas ram

Futu-block

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...

AmakaSt

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.

Futu-block

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++

l1nk3rn3l

#252
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




AmakaSt

#253
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.

l1nk3rn3l


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