Bennu Game Development

Foros en Español => Proyectos => Topic started by: Windgate on March 05, 2009, 08:16:39 PM

Title: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 05, 2009, 08:16:39 PM
Hola amigos, llevo todo el día organizando, diseñando, recopilando sprites y programando este juego de plataformas 2D con Bennu.

Está preparado para Windows y es un pack que incluye todas las últimas DLL, de forma que se puede compilar y ejecutar directamente sin necesidad de tener nada instalado. La idea es que cualquiera pueda utilizarlo, modificarlo, etc. No sólo nosotros los frikis de Bennu!

Lo siento por los de Linux, sinceramente, aún no he probado a portar ninguno de mis juegos a Linux porque un día Ubuntu me destrozó el disco duro y desde entonces lo odio...

El juego está totalmente separado en módulos de código independientes (Es mi costumbre), he intentado ser lo más limpio y organizado que he podido después de mis casi 2 años de experiencia en esto, espero que lo analicen, discutan y critiquen:

http://www.mediafire.com/?yt1dm1rztmd
[/b]

Es una beta, quisiera seguir con ella, díganme opiniones! Gracias a todos!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: SplinterGU on March 05, 2009, 08:30:02 PM
grax
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: blostec on March 05, 2009, 08:49:29 PM
Hola Windgate, acabo de probarlo. Esta muy bien para ser el primer día de desarrollo. Supongo que en nuevas versiones vas a limitar más el salto, cuando saltas se levanta demasiado y durante el salto, si vuelves a pulsar la tecla de saltar, puedes pasarte el rato flotando por el escenario.

Felicidades, sigue adelante con él, promete mucho. Karma++
Saludos!  :)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: SplinterGU on March 05, 2009, 09:24:20 PM
muy bueno...
lo probe y compile en linux... tuve que tocar algunas cosas para que todo funcione...

sugerencias:

1) nombres de carpetas, archivos y extensiones en minusculas (tambien en codigo)
2) paths usando "/" en vez de "\", aunque esto no molesta realmente

veo que el salto es demasiado alto... y la velocidad del personaje (si este sera sonic) estaria bien un poco mas rapida... me refiero a los incrementos de x del mismo...
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: SplinterGU on March 05, 2009, 09:25:12 PM
karma up!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: panreyes on March 05, 2009, 09:46:38 PM
Holas :)
Recomendaciones:
1. No hagas las durezas en base al tamaño del gráfico actual del personaje,sino utiliza unas medidas predefinidas, como el gráfico más grande de todas las animaciones, por ejemplo.
2. Has de solucionar lo de subir y bajar las pendientes.
En vez de subirlo cada frame un poco, tendrías que subirlo de golpe, de un frame a otro.
Y lo ideal sería que también controlases las pendientes, para que las bajara, que no las salte. Sería más de lo mismo.

Y bueno, el resto lo voy bien bien :)
Suerte con el proyecto!
Pd: Veo que te gusta Sonic, te recomendaría ver un juego de plataformas que empecé hace tiempo xD
http://www.pixjuegos.com/?q=node/29
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Prg on March 06, 2009, 03:41:31 AM
me encanta la calidad gráfica, lo único que noté es que algunas veces, al correr el monito desciende más de lo que el mapa debería permitir, para esto es bueno usar un from que eleve al monito no una cantidad fija por tiempo, sino los puntos que hay desde el color hasta los pies del monito, de esta forma este efecto no se presenta.
muy bueno :)
¡¡¡ felicidades !!!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 06, 2009, 08:33:33 AM
El salto ahora mismo lo tengo arreglado para que no salte "varias veces", en cuanto a las durezas, están sólo como prueba, por eso al moverse lateralmente se mete un poco en ellas.

Anoto lo del FROM para evitar que se meta en las durezas, la verdad es que me asaltan varias dudas sobre cómo tratar las durezas, con paredes y suelos no tengo mayor problema, pero lo de las inclinaciones...

Gracias por los apuntes SplinterGU, son malas costumbres que tengo al programar!

En cuanto a los gráficos que uso, para los personajes son unos FPG que encontré por ahí ya recortados, ¿Saben dónde puedo conseguir más FPG? Odio recortar sprites...

Y los escenarios y decoración, necesito scrolls de estética similar, he buscado todas estas cosas en vgmaps.com, en spritedatabase.net y en Google Imágenes, pero necesito más!!!

Me alegro de que os haya gustado, gracias!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 06, 2009, 08:50:03 AM
Ahí va la nueva versión, he añadido un módulo encargado de generar fauna en el escenario, por ahora sólo libélulas que deambulan tontamente, me gusta como está quedando, si alguien quiere proponer alguna midi para la música de los escenarios se lo agradeceré, pero que sean suavecitas, tengo miles de midis pero suenan a chatarra!!!

http://www.mediafire.com/file/qrlnymiduul/JustFantasy!0.3.zip

Por cierto, el Pix Heroes me ha gustado mucho PiXeL! ¿Cómo has hecho esos efectos de transición para hacer que la pantalla se encoja o rote para pasar a fondo negro cuando te matan? ¿Se puede hacer con Bennu? Son muy lol

Por cierto, he corregido el tema de mayúsculas y de / y \ SplinterGU, a ver si ahora funciona sin complicaciones en Linux!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: panreyes on March 06, 2009, 12:37:29 PM
Hala... no sabía que le faltaba el código fuente! :S
El truco está en get_screen();
Conste que lo del "tiempo_bala" está pensado para resoluciones bajas (320x240), ya que hace get_screen cada 0,1 segundos...

Aquí tienes, las transiciones:
Process transicion();
Private
tipo;
inercia;
Begin
graph=get_screen();
x=160;
y=120;
z=-512;
tipo=rand(0,2);
frame;
if(tipo==0)
from size_y=100 to 10 step -5; tiempo_bala(); alpha-=2; frame; end
from size_x=100 to 0 step -5; tiempo_bala(); alpha-=2; frame; end
end
if(tipo==1)
from size_x=100 to 10 step -5; tiempo_bala(); alpha-=2; frame; end
from size_y=100 to 0 step -5; tiempo_bala(); alpha-=2; frame; end
end
if(tipo==2)
x=320;
y=240;
set_center(0,graph,320,240);
from angle=0 to 90000 step 500; inercia+=200; angle+=inercia; alpha-=2; frame; end
end
ready=1;
unload_map(0,graph);
End

Process tiempo_bala();
Begin
if(timer[7]<10) return; end
timer[7]=0;
graph=get_screen();
z=-1;
x=160;
y=120;
from alpha=128 to 0 step -16; frame; end
unload_map(0,graph);
End
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Prg on March 06, 2009, 05:25:30 PM
mira, yo tomo la gravedad de un juego del div, es una función que he adaptado y funciona a la prefección, sólo que yo tenía un medio piso que era uno que al presionar down te permitía bajar. :)

la parte del from es la siguiente

from vgravedad=-16 to 7 step 2;
         if (map_get_pixel(0,wiz_mpa_de_durezas,(father.x mod wiz_ancho_fondo)/2,(father.y/2)+vgravedad+13)==color_piso)
            father.en_suelo=true;
            break;  // sal si se encuentra con el suelo
         end

      end

//en este momento ya se conoce la distancia del piso a los pies, y entonces ya sólo falta colocar los pies exactamente en el piso.
if (vgravedad<8)// si se encuentra con el suelo, y el piso no está en su cabeza
         father.y+=vgravedad;                                    // lo acomoda
         father.velocidad_gravedad=0;      // y se pone la wiz_gravedad a 0 (puedes poner que si wiz gravedad==0 entonces si pueda birncar, esto es, cuando está en el piso)
      end


function wiz_gravedad();
private
   color_piso=3;
   color_techo=4;
   color_mediopiso=2;
   
   vgravedad;// variable para guardar temporalmente la wiz_gravedad
   
begin
   father.en_suelo=false;
   // coge la coordenada y a partir de la wiz_gravedad del wiz_protagonista (padre)
   vgravedad=(father.velocidad_gravedad+=2);   // pero incrementada en 2
   if (vgravedad>16)   // si es mayor de 16
      father.velocidad_gravedad=16;   // haz que sea 16 la wiz_gravedad del wiz_protagonista
      vgravedad=16;   // y tambi,n la variable temporal
   end
   
   if (vgravedad<0)// si la wiz_gravedad es negativa
      while (vgravedad++!=0)  // mientras no sea cero, la incrementa
         // si no se da con el techo
         if (map_get_pixel(0,wiz_mpa_de_durezas,(father.x mod wiz_ancho_fondo)/2,(father.y/2)-13)<>color_techo)
            father.y--; // haz que el wiz_protagonista suba
         else// si no pon la wiz_gravedad a cero
            father.velocidad_gravedad=0;
            break;
         end
      end
   else// si la wiz_gravedad es cero o positiva
      father.y+=vgravedad;// se suma a la coordenada del wiz_protagonista
      // comprueba el rango vertical del movimiento del wiz_protagonista
      
      from vgravedad=-16 to 7 step 2; // acaba el proceso si se toca el suelo
         if (map_get_pixel(0,wiz_mpa_de_durezas,(father.x mod wiz_ancho_fondo)/2,(father.y/2)+vgravedad+13)==color_piso)
            father.en_suelo=true;
            break;  // sal si se encuentra con el suelo
         end
         if (map_get_pixel(0,wiz_mpa_de_durezas,(father.x mod wiz_ancho_fondo)/2,((father.y/2)+vgravedad)+13)==color_mediopiso & father.efecto<>1)
            father.en_suelo=true;
            break;
         end
      end
      
      if (vgravedad<8)// si se encuentra con el suelo
         father.y+=vgravedad;// se actualiza con el m ximo que se pueda mover
         father.velocidad_gravedad=0;// y se pone la wiz_gravedad a 0
      end
   end
   
end
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 06, 2009, 10:46:17 PM
Prg, ese proceso gravedad lo tengo tal cual en mi módulo gravedad.PRG (En la carpeta TAD) y de hecho es la gravedad que siempre uso para mis juegos, probablemente hace tiempo la debí encontrar en alguno de tus juegos y la aproveché  8)

La uso tal cual, aunque le añadí unos cuantos cambios:

father.velocidad_gravedad=16;   // haz que sea 16 la wiz_gravedad del wiz_protagonista

Esto anterior ya no se permite en Bennu, así que la variable velocidad_gravedad se pasa como parámetro a través de un puntero.

Además el mapa de durezas y los RGB de suelo y techo también los pongo como parámetros, y la comprobación de "los pies" la hago con la siguiente modificación en la variable Y:

(father.y+vgravedad+graphic_info(father.file,father.graph,G_HEIGHT)*father.size/200)

Así es válida a la perfección sea cual sea el gráfico y tamaño (graph y size) actual del proceso. Puedes modificar graph y size todo lo que quieras que los pies se mantienen a ras de suelo, funciona de lujo!

Je je je, ya ves, con la gravedad está bien trabajado, el problema que tiene el juego es que todavía no me he puesto a controlar paredes, por eso el muñeco al moverse lateralmente "se mete" en ellas un poco.

A la versión actual le he añadido lluvia y relámpagos, con la función fade(), incluyendo efectos de sonido, está quedando muy bien pero hasta que no ponga lo de las paredes no subo la nueva versión (Probablemente esta noche o mañana, no pienso dormir, estoy viciadísimo programando...).

PiXeL, le echaré un vistazo a las transiciones de scroll en cuanto tenga tiempo, por ahora no es lo prioritario, pero es todo un detallazo!

Gracias a todos nuevamente!!!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 06, 2009, 11:39:22 PM
Aquí dejo una recién comenzada versión 0.5 con bastantes mejoras puntuales, aún NO he puesto las paredes, pero pueden cambiar a la siguiente fase pulsando la tecla S de Scenario!

http://www.mediafire.com/file/mwkzxtoz4uz/JustFantasy!0.5a.zip

Adjunto un par de capturas (Espero haber puesto bien los link...), a ver si nos acostumbramos a ponerlas que incitan más a descargar los proyectos xD

(http://www.fileden.com/files/2008/3/2/1792511/JustFantasyPresentacion.jpg)
(http://www.fileden.com/files/2008/3/2/1792511/JustFantasyCaptura.jpg)

Vuelvo a recalcar que todo el videojuego está separado en módulos, todos los archivos PRG secundarios están en la carpeta TAD así que si alguien quiere meter mano, colaborar o criticar cualquiera de ellos será música para mis oídos lo que tenga que decir o hacer...

Tengo alumnos de programación y usamos Bennu en extraescolares, voy a proponerles cooperar en este proyecto, ¿Alguna sugerencia para alojarlo? ¿FTP, sourceforge? Es la primera vez que pienso semejante cosa...
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Prg on March 07, 2009, 12:19:05 AM
se ve increible en las capturas, ¡wow!

Quotefather.velocidad_gravedad=16;   // haz que sea 16 la wiz_gravedad del wiz_protagonista

Esto anterior ya no se permite en Bennu, así que la variable velocidad_gravedad se pasa como parámetro a través de un puntero.

si funciona, yo lo uso siempre y en las actuales versiones, a menos que las que tengo no sean tan actuales...
velocidad_gravedad debe ser una local
global
....
local
velocidad_gravedad
...


de esa forma no debe darte problemas.

...

??? seguro que no funciona, a mí si...

Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 07, 2009, 12:41:09 AM
Oh, Prg, cierto que funciona si pongo velocidad_gravedad como LOCAL, pero hay un problema, si quieres que la gravedad pueda ser un proceso compartido por enemigos, protagonistas, etc. Me daba problema de que no se puede repetir el nombre de variables LOCAL en procesos distintos, por eso hice que ese valor fuese un puntero, me parece más limpio, ¿Qué te parece?

Ahora mismo estoy atascado y no sé por donde continuar este proyecto, había pensado en hacer uso (Por primerísima vez) de las blendop de Bennu para que las libélulas puedan tomar diferentes colores dando tinte a sus gráficos.

¿Alguien tiene algún código sencillo para teñir gráficos? Nunca jamás he usado las blendop, pero me gusta probar cosas nuevas.

Por cierto, he intentado jugar con las Z del scroll y de las libélulas para que se vean por detrás del scroll principal, pero no ha habido forma... También había pensado en superponer otro scroll con las "partes" que deberían tapar al protagonista (Troncos y cosas así) pero visto lo ocurrido con la Z estoy un poco preocupado...

¿Es posible tener un scroll detrás de los procesos (Es decir, normal) y otro scroll tapando a los procesos? Tenía asumido que sí, pero he hecho unas cuantas pruebas sin éxito  :o

Gracias!!!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Drumpi on March 09, 2009, 01:48:10 PM
De las z del scroll no se, pero sobre los colores de las libélulas, podrías aprovecharte de las ventajas de las multi-paletas y cambiar los colores que necesites con set_colors, segun se, es más rápido y eficiente en memoria que el uso de blendops ¿no?
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: SplinterGU on March 09, 2009, 02:43:07 PM
eso seguro, aunque solo serian mapas de 8 bits...
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: l1nk3rn3l on March 09, 2009, 05:09:47 PM
interesante
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 09, 2009, 07:57:14 PM
No soy amigo de usar paletas, nunca lo he sido desde mi primer contacto con el DIV2... Gracias por vuestra ayuda a todos, de momento basta con que pruebe con las blendop, además no tendré tiempo hasta dentro de unos días, había aprovechado este fin de semana pero creo que hasta las vacaciones de Semana Santa en Abril no tendré otra ocasión otra vez

:'(
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 18, 2009, 06:43:22 PM
He probado las blendop y las libélulas de mi juego toman un color distinto cada vez, ya que tengo una tabla blendop llamada "PRISMA" que toma un color distinto en cada ejecución. Para ello he tenido que usar una semilla aleatoria en función del tiempo, para que rand() no devuelva lo mismo en cada ejecución.

También he estado jugando al World of Goo y he intentado imitar su cursor, me ha quedado bastante bien, aunque tengo que corregir su cola para que no se separe demasiado del gráfico principal del mouse.

En resumen, aquí subo la versión 0.5e de Just Fantasy:

http://www.mediafire.com/file/5zxzwgmhe2d/JustFantasy!0.5e.zip (http://www.mediafire.com/file/5zxzwgmhe2d/JustFantasy!0.5e.zip)

En próximas versiones me gustaría que el juego tuviese por un lado al personaje protagonista y por otro al ratón con su "cola" de procesos, y que tome diferentes aspectos (p.ej. fuego, hielo, rayo...) que tengan diferentes utilidades.

El videojuego ahora mismo se compone de 26 módulos separados de código, y tengo que ponerme a salvar dependencias ya que he abusado un poco de las GLOBAL... Y ahora debo eliminarlas por completo, para que cada uno de esos bellos módulos sea reutilizable 100% por separado, incluído por ejemplo el ratón de World of Goo que os comento, el módulo de blendops o el de meteorología, entre otros...

Espero que os guste, en el fichero mouse.prg podéis modificar los parámetros de longitud de la cola de procesos que sigue al ratón y lograr divertidísimos efectos!!!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Prg on March 18, 2009, 07:28:42 PM
 :) descargando :) ,
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: SplinterGU on March 18, 2009, 10:51:21 PM
gracias...
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: blostec on March 18, 2009, 10:55:40 PM
Bajando, en cuanto lo pruebe te lo comento. Saludos!  :)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: TYCO on March 18, 2009, 11:33:17 PM
Muy "chula" la estela del ratón, algún bug que otro con Sonic (me caí del suelo al inframundo, aunque me dejaba seguir hacia la derecha), parece un RPG al entrar.. dices... Final Fantasy??? jeje, adelante con el.
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 18, 2009, 11:45:40 PM
Eso de caerse al inframundo le ha pasado al 100% de las personas que lo han probado créeme... Te hago caso, mi próximo objetivo será que al salirse del scroll el protagonista muera, o que su vida se ponga a 0 o similar... Aunque tendré que preparar un nuevo módulo PRG para ello supongo... Lo pensaré.

Sigo adelante con el juego sin duda, me gusta, es una de las primeras cosas "bonitas" que hago con Bennu xD
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: SplinterGU on March 21, 2009, 04:30:54 AM
esta quedando muy bien...

hay que solucionar el tema del personaje que cae el 100% de las veces en las profundidades...

luego obtengo esto:

Couldn't load sound/pajaro.wav: MPEG Layer 3 data not supported
Couldn't load sound/gato.wav: MPEG Layer 3 data not supported
Couldn't load sound/vaca.wav: MPEG Layer 3 data not supported
Couldn't load sound/perro.wav: MPEG Layer 3 data not supported

otra cosa, no se si es tu intencion que los fade de los relampagos salgan siempre de cualquier color, pero para hacerlo en tono de blancos-grises, tenes que hacer un fade con todos los componentes (rgb) del mismo valor, o sea, un solo rand.
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 21, 2009, 08:09:41 AM
Hola Splinter!!!

Llevo toda la noche trabajando en él (Y tomando alguna cerveza, dicho sea de paso...). Las caídas del personaje son cosa del escenario, sus precipicios y la inercia del movimiento del protagonista, hay que caminar con cuidado. Cuando añada las condiciones de muerte del personaje quedará más claro, todavía es una beta muy previa a lo que pretende ser si algún día lo termino...

Los problemas de carga de sonido son por WAVs no soportados, actualmente en esta última versión están arreglados, los he sustituido por otros, sin más. (Si no es así avisadme, pero ya no debería haber errores).

Los rayos tienen un RGB aleatorio, lo hice a posta, y uno de los 4 efectos de sonido del rayo no suena debido a otro posible problema con el formato de WAV, lo sustituiré, tampoco queda mal xD

Ahora mismo tengo un problema con el cursor, y es que aunque he mejorado su comportamiento, sus gráficos siguen viéndose muy pixelados. El cursor de World of Goo es un círculo perfecto, y no sé cómo obtener un simple círculo que no se vea pixelado, la parte artística no es lo mío, pero seguro que cualquiera de vosotros tiene alguna sugerencia. Necesito un simple gráfico con forma de círculo en el que sus pixels se noten lo mínimo... Como el maldito cursor de World of Goo, que es bellísimo a la vista...

Aquí la última versión 0.6a con dependencias salvadas entre CONST y TYPE:

http://www.mediafire.com/file/4wbowzmomqv/JustFantasy!0.6a.zip (http://www.mediafire.com/file/4wbowzmomqv/JustFantasy!0.6a.zip)

(Próximamente salvaré las dependencias GLOBAL con lo que consideraré el código de este juego verdadera poesía, tras más de 2 años intentando conseguir algo digno de este calificativo.)

Que conste que no me halago a mí, son halagos para el código, toda la comunidad Bennu que tanto me ha apoyado y todos mis seguidores que siempre me han animado a seguir al pié de cañón programando videojuegos.

Once upon a time i had a dream... It was Just Fantasy...

Agradezco críticas, de todo tipo!!!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: SplinterGU on March 21, 2009, 12:29:40 PM
si usas graficos de 32 bits, vas a poder obtener un circulo no pixelado.

lo del rayo queda mejor con 1 solo rand... yo lo probe y me parece que queda mejor...
una cosa que veo ahora y antes no, es que cuando salta el personaje se transforma en un ovalo... y la animacion (si existe) no se percibe bien...

Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 21, 2009, 08:47:36 PM
La animación de Sonic (Tal como está ahora) se convierte en un óvalo siempre que está saltado o cayendo al vacío. ¿No se aprecia bien? Pretendía imitar el videojuego "original".

Los usuarios son los que dictan los grandes errores de los programas, quizá el sencillísimo salto que tengo programado no sea suficiente, pensaré poner un doble salto o similar para darle un poco más de jugabilidad. Ya he visto que casi todos los que prueban mi juego caen al vacío en el primer precipicio...

En cuanto a los rayos, seguro que con un RGB fijo para los relámpagos queda muy bien pero me hizo ilusión aplicar un poco de aleatoreidad en su color. Corregirlo supondría una mísera línea de código, de momento se queda así con distintos colores, sus valores tienden a colores de rayo cuasi-realistas, nada de rojos ni verdes vaya xD

FPG de 32 bits... Sería mi primera vez, ¿Bastaría con meter un gráfico en forma de círculo suavizado? ¿Utilizo el FPG Edit 2009 programado en Bennu para ello? De verdad os lo digo que eso de los FPG de 32 bits todavía me suena a chino...

Gracias por tu crítica SplinterGU, el juego está subido al repertorio de proyectos, espero que sus módulos de código puedan ser reutilizables en futuros proyectos de otras personas, aunque todavía me falta salvar alguna dependencia debido a las variables GLOBAL en algunos de ellos...

He aprendido una auténtica barbaridad de programación orientada al proceso programando este videojuego. He probado Bennu a fondo y es maravilloso!!!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: SplinterGU on March 21, 2009, 10:21:05 PM
veo raro esa animacion... quizas deberia ver el original...
si, yo no logro pasar el primer precipicio...
los rayos o mejor dicho relampagos, yo los veo rojos, verdes, violetas, y otros colores más...
si, bastaria con eso, pero necesitas los graficos en 32 bits... con todos los alphas adecuados...
la lluvia es fantastica, quizas probaria tambien con algo de animacion y no switcheos aleatoreos de los graficos... solo para ver si se puede quizas animar un poco mejor... quizas incluso incluir algun viento o algo que incline un poco la lluvia, quizas por donde pasa el personaje a gran velocidad... no se, quizas deliro...

el proyecto esta muy bien, sinceramente es muy vistoso, responde a buena velocidad y el codigo bien ordenado, es facil y comodo ubicar cada cosa en el mismo. Muy bien. No se si te di un karma, pero te voy a dar otro.

me alegra que te guste bennu...
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Prg on March 22, 2009, 03:34:41 AM
hola, no he leido las críticas anteriores, así que no se si esto ya te lo habían dicho, pero cuando presionas s no sólo inicias en la zona de mickey (ahhhhh que recuerdos, gracias por permitirve ver de nuevo una zona decorada con este estilo), sino que también se crea un nuevo monito (je je, no recuerdo cómo se llama) y no se mata el anterior, te dejo una captura. te recomiendo que hagas algo así como signal( type nombre_del_proceso)  y así matas a todos los procesos principales sin necesidad de conocer su id , hazlo antes de invocar el siguiente protagonista, así tendrás 1 a la vez.  ;D exelente el avance, saludos :)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 22, 2009, 01:08:41 PM
Lo del monito extra ya lo sabia Prg, es gracioso sacar cientos y manejarlos a todos a la vez xD

Un signal y lo corrijo ya mismito, gracias por la critica.

El cambio de fase se hace con la tecla S por ahora, aunque luego hare una dureza que se encargue de ser la "puerta" que lleva al siguiente escenario. Por cierto, no encuentro escenarios suficientemente bellos... Se agradeceria cualquier aporte de scroll de plataformas con una calidad "aceptable".

Splinter, si te caes en el primer precipicio quiza sea porque los fps estan muy altos y es complejo de controlar, o quiza eres un poco manco controlando al personaje xDDD

Se puede pasar el escenario completo si tienes cuidado (MUCHO) al saltar. Como te dije, deberia poner doble salto, incluso habia pensado darle diferentes funciones al raton y por ejemplo hacer que pueda crear plataformas temporales donde apoyarse (lol), entre otras cosas

Los colores de los rayos Splinter... Creo que debe ser que mi portatil tiene mal el brillo de la pantalla y lo que yo veo medianamente bien vosotros lo veis con el color demasiado acentuado... Corrijo tambien el rango de RGB de los relampagos xD

La lluvia actualmente se compone de 16 procesos cuadrados con un trozo de lluvia cada uno, ya habia pensado en la inclinacion de TODA la lluvia usando angle, pero para que el protagonista interactue con ella siendo cuadrados de 120x100 pixels... Complicado.

Tambien seria posible hacer una lluvia en la que cada gota sea un proceso, pero me parece demasiada carga... Aunque para eso tenemos las CPUs de hoy en dia... Con la nieve asi tendra que ser, lo pensare a fondo...
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Foni on March 22, 2009, 05:46:54 PM
No se porque motivo aun no he conseguido descargar la ultima versión, consegui descargar la 0.3 el primer dia y las posteriores no me ha funcionado ninguna ... :\

¿Algun mirror? otra manera de conseguirlo? Gracias

Un saludo

EDIT: revisando el post de Pixel, acabo de ver la 0.6 para descargar en http://proyectos.bennugd.org/justfantasy/ y ya esta descargando.


EDIT2: Me gusta como va progresando el juego. No obstante hay un par de cosas que no me convencen del todo. El ratón no sabia que era el ratón, y me preguntaba (que hace un circulo negro ahi todo el rato? ) he tenido que leer el changelog para saber que se habia implementado el control de raton y volver a probarlo para saber que ese circulo negro era el raton. Y la otra cosa es el fondo , los colores son demasiado similares al nivel en si, y en este tipo de juegos que se suelen pasar las pantallas "a toda leche" hace falta que sea muy distinguible el fondo de lo que son las plataformas. El salto quiza sea excesivamente rápido. Si saltas continuamente no da la sensacion de que puedas controlar en que plataforma caer. Por lo demas me gusta como evoluciona el proyecto, y tiene detalles muy bonitos. El sonido esta muy logrado y me gusta la atmosfera que crea, quiza lo mas destacable del proyecto sea la ambientacion hasta el momento.

Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 22, 2009, 08:21:34 PM
Muy valorable Foni. Actualizo el link de descarga, desconozco porque da problemas el link de MediaFire... Quiza sea porque pongo el link incluyendo el nombre de fichero y hay un caracter "extraño, la exclamacion ´!´, corrijo el nombre del fichero forever.


http://www.mediafire.com/?jy1mlijzzxt (http://www.mediafire.com/?jy1mlijzzxt)


El raton esta en una fase MUY experimental, pronto habra cartelitos en el juego informando sobre los controles, todos ellos.

Intente hacer que las libelulas "huyesen" del mouse, con collision(type mouse) tenia un error de ejecucion ¿?¿?¿ Y por diferencia de coordenadas he visto que  las coordenadas relativas a pantalla (Del raton) con las coordenadas relativas a scroll (De las libelulas) se llevan mal... ¿Alguien ha hecho la maravillosa funcion que traduzca unas coordenadas a otras? Si no es asi me pondre un dia de estos a hacerlo y propondre que el calculo forme parte de alguna libreria oficial xD

El juego va a toda velocidad por descuido mio. Durante las pruebas del raton subi demasiado el FPS (A 60). Ahora anda a 30 de fps y es considerablemente mas jugable.

El cambio del scroll de fondo lo tengo planteado, sinceramente, no habia tenido en cuenta que confunde la similitud de colorido. Gracias mil por ese aporte.

En cuanto a lo bonito del juego... Ese era el objetivo, hacer algo BELLO!

Voy a jugar con el flags=8 para otros efectos artisticos sobre la escena del juego, lo probe y ese espectro de imagen puede resultar muy estetico. ¿Opiniones?

La musica de presentacion es de Sonata Arctica http://www.mp3raid.com/search/mp3/sonata_arctica.html (http://www.mp3raid.com/search/mp3/sonata_arctica.html) (Ya les pedire permiso si lo vendemos xD).

Son 30 modulos de codigo distintos, la idea de los mismos es que sean reaprovechables por otros programadores, y visto que es un proyecto ambicioso... ¿Alguien se atreve a modificar cualquiera de los modulos de codigo (Naturaleza, audio, mouse, enemigo, protagonista...)?

LA PROGRAMACION ESTA ORIENTADA A PRINCIPIANTES y aseguro que ninguno de los modulos de codigo sobrepasa las 6o lineas de codigo. Bastante manejable, ¿No? Aconsejo echar un vistazo al codigo, ya dije que intento que sea poesia, aunque le quedan mejoras, en ello estoy...
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Foni on March 23, 2009, 12:10:57 AM
Si, he aclarado el fondo un poco,aquí tienes unas capturas de como se veria:


(http://img01.subela.es/sf5ffb_snap1.jpg) (http://www.subela.es)

(http://img01.subela.es/sf9724_snap2.jpg) (http://www.subela.es)

A mi me parece mas jugable, aunque ahora se distingue mejor fondo y forma, el fondo no me acaba de convencer del todo, demasiado recargado para mi gusto, la funcion del fondo no es otra que hacer bonito, sin entorpecer el juego para nada.Acabo de comprobar lo de los cambios y si, la velocidad ahora parece tambien mas jugable, el salto se puede controlar perfectamente para manejarte entre plataformas.


Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Drumpi on March 23, 2009, 12:06:08 PM
Lo del ratón es sencillo: scroll.x0 y scroll.y0 guardan la posición del primer plano de scroll, concretamente la esquina superior izquierda. si quieres saber en qué pixel (respecto al scroll) está el ratón sólo debes hacer:
raton_x=scroll.x0+mouse.x;
raton_y=scroll.y0+mouse.y;
So easy, piece of cake! ;D
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 23, 2009, 02:03:54 PM
Ardo en deseos de probarlo, ya estaba pensando en hacer otros calculos mas complicados. De todos modos no entiendo porque el juego se me queda colgado cuando utilizo un collision (type mouse). En el foro de DIV se hablaba de ello como algo habitual. ¿Alguien ha tenido problemas con ello?

En cuanto al fondo... Me habeis convencido, buscare otro fondo menos sobrecargado y mas facil de distinguir del scroll principal.
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on March 26, 2009, 11:57:17 AM
¡Numerosas mejoras!

Jugando con el flags=8 he añadido un extraño efecto de niebla en la primera fase, ahora toma un tono todavia mas verdoso y extraño...

Ahora cada fase puede llevar asociados distintos efectos meteorologicos, de fauna y de sonido. Esto puede probarse pulsando la tecla S, pasamos de un escenario humedo, lluvioso y lleno de bichos a otro 100% soleado y libre de fauna.

El raton ya interactua con las libelulas, que simplemente huyen en direccion opuesta a el, son practicamente imposibles de tocar.

Corregida la gravedad y modificado el comportamiento del protagonista, que ahora puede correr un poco mas y ojo que resbala mucho, os caereis si no andais con cuidadito xD

Sigo arreglando dependencias, aunque es un trabajo de chinos... Todo el historial de cambios puede leerse en un txt dentro de la carpeta doc.

Por cierto, la niebla son unos procesos con un grafico enorme, y creo que resienten un poco el rendimiento a costa de lograr ese extraño efecto, fijaros bien en el fondo de la primera fase y comprobad como se distorsiona ligeramente. Quiza cambie ese grafico grandisimo por varios procesos con graficos mas pequeños...

http://www.mediafire.com/file/5nnziyknm2z/JustFantasy.0.6c.zip

Como siempre agradezco criticas (En breve cambio el fondo Foni)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on April 01, 2009, 01:00:24 PM
Numerosas mejoras de jugabilidad, y el fondo ya está cambiado xD

http://www.mediafire.com/?tyntij2k2b2 (http://www.mediafire.com/?tyntij2k2b2)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Prg on April 01, 2009, 05:48:50 PM
hola amigo, ¿has pensado en la posibilidad de hacer que corra en el mapa como lo hacía en el juego original (que por momentos su velocidad se olvide de las leyes de la gravedad y camine por paredes y techos)?
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on April 01, 2009, 07:27:21 PM
Sí que lo he pensado...

La solución fácil es que toda curvatura tenga la misma inclinación, y se engaña fácilmente al ojo humano haciendo siempre el mismo giro, sin necesidad de algoritmos complicados.

Para que la curvatura pueda ser variable y la respuesta física sea correcta... Bastante trabajo... Por el momento me preocupa más dejar un juego cerrado y con módulos 100% separados unos de otros. La idea es estupenda Prg, pero necesitaría una semanita de vacaciones para darle vueltas al coco xD

Ahora tengo un problemita, y es que quiero que el tipo de ratón pueda cambiar. Tengo gráficos para un ratón de fuego y otro eléctrico, pero necesito que se almacene la información de transparencias de los gráficos, y por tanto requiero un FPG de 32-bits.

¿Será tan sencillo como añadir las imágenes de la animación con la información de transparencia al FPG usando el FPGedit 2009? Nunca lo he usado y le tengo cierto pánico aún...

Sigo adelante con otras cosas mientras tanto.

Gracias por el aporte Prg, si se te ocurre algún algoritmo sencillo que use father.x y father.y para hacer los loopings del sonic original no dudes en hacérmelo saber, si yo pienso algo desde luego lo introduciré en el juego de lleno xD
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Prg on April 02, 2009, 07:40:49 PM
 :D
hace tiempo te dejé un fpg de 32 bits, aunque actualmente ya hay más opciones, je je je

http://forum.bennugd.org/index.php?action=dlattach;topic=267.0;attach=265 (http://forum.bennugd.org/index.php?action=dlattach;topic=267.0;attach=265)

mira, para el editor fpg, no te asustes, si se te hace difícil te doy un código que cargue todos los gráficos de una carpeta (la carpeta en que se encuentra, y te de un fpg)... 
ahora qu recuerdo hay un editor fpg de 32 bi es muy sencillo,
http://forum.bennugd.org/index.php?topic=398.0 (http://forum.bennugd.org/index.php?topic=398.0)

Quotesi se te ocurre algún algoritmo sencillo que use father.x y father.y para hacer los loopings del sonic original no dudes en hacérmelo saber, si yo pienso algo desde luego lo introduciré en el juego de lleno xD
jo jo jo  :) ;)
imagina, colocar puntos de control al rededor de una curva, no serían necesarios tantos, y sería custion de revisar la velociad de sonic y que se aproxime a los de los extremos de las curvas (podrías valerte de fgetdist y si quieres también de mapas de durezas), ya con eso sólamente sería cuestion de determinar el ángulo que seguiría sonic mediante los puntos (había un ejemplo similar en el div, que se hacía seguir una ruta a un triángulo, la ruta eran puntos , eso permite no sólo seguir la ruta sino también el ángulo), parar seguir la ruta sería getdistx y getdisty, variando la distancia, no se si me explique, bien expresado el algoritmo sería sencillísimo hacer círculos con sonic, ochos, caminar por paredes y hacer figuras increíbles, todo dependería de tu imaginación :)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on April 03, 2009, 10:11:52 AM
Cuando dices puntos de control en las curvas, ¿Te refieres a un gráfico de un proceso con puntos de control? (8 por ejemplo arriba, abajo, izq, dcha y las diagonales).

Sólo he usado los puntos de control de un gráfico para colocar los "pies" de los procesos en el suelo, ¿Qué funciones permiten obtener información de los puntos de control?

Entiendo más o menos lo que quieres decir, sería cuestión de una tarde en la que me enojase lo suficiente como para ponerme hasta que lo consiga, quizá un día de estos que tendré vacaciones de Semana Santa... Había pensado otro tipo de algoritmo que almacenase en cada momento la inercia horizontal y vertical de sonic. Ambas variarían en función de la detección de durezas que haría en cada momento, así podrían hacerse curvas de cualquier curvatura pero en fin... Cuestión de experimentar...

Nueva versión, ahora con mensajes informativos leídos desde fichero, nuevo cursor y posibilidad de cambiarlo con la ruleta del ratón, además los pinchos del escenario ya hacen daño a sonic y... Alguna otra mejora puntual.

http://www.mediafire.com/?djl4mykuqwg (http://www.mediafire.com/?djl4mykuqwg)

Le echo un vistazo a tu FPG ahora mismo Prg.
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Prg on April 03, 2009, 04:56:08 PM
ok, :)

quizá pueda hacer algo para que veas mi idea, aunque la tuya de la inercia parece que dará mejores resultados... bueno, lo que pasa es que la mía te limita a tener que decir cuáles son los puntos de entrada y salida de curva para detectar su distancia... de cualquier forma, espero pronto poder seguir programando en bennu, sólo necesito instalar el sistema operativo que me detecte toda mi ram :) , y el pack (ya quiero probar el nuevo pack que ha sacado link,  :) )

tienes razón, es cuestión de experimentar  ;)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on April 04, 2009, 07:37:24 AM
Tienes el código abierto por si quieres probar algo, no es cuestión de 5 minutos precisamente pero todo será probar...

La mejor solución... Nunca se sabe... Probare lo de la inercia cuando resuelva lo de cambiar de tipo de ratón (Wisp).

Es una de las cosas más complejas que me ha tocado programar en Bennu eso de los looping... Y soy muy maniático con intentar hacer de todo una "librería" independiente y reutilizable, así que si me pongo lo haré seriamente...

Estoy de vacaciones ahora mismo, en cuanto tenga un instante lo valoraré a fondo, es grandísima sugerencia y muy agradecida.

Mi objetivo actual es (Sigue siendo...) librar el código de variables GLOBAL haciéndolas parámetros... Es aburridísimo, pero quiero aplicar auténtica metodología de la programación y que cada uno de mis módulos sea directamente reutilizable por cualquier otro juego...

Sigo agradeciendo críticas y sugerencias de cualquier tipo. Salu2!!!
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on April 07, 2009, 06:08:24 PM
Continúo con el videojuego, esta vez una mejora que me ha tomado unas horas de dedicación. He creado un nuevo archivo .prg encargado de la gestión de las barras de energía del juego (Basada en map_block_copy()), he creado un tipo de dato independiente para cada barra de energía, portable a cualquier juego, espero que alguno lo deguste y le apetezca reutilizarlo.

Es capaz de autodetectar la primera zona transparente de la barra de energía, para realizar el dibujado del relleno en función de él, está probado y reprobado y funciona a las 999 maravillas.

Dejo el link de descarga de esta nueva versión (Aunque debido a la inclusión de la barra de energía y algunas otras cosas he tenido que dejar el interfaz (http://)con un poco de "texto de pruebas").

(http://www.fileden.com/files/2008/9/22/2109820/JustFantasy.png)

Estoy excitado...

http://www.mediafire.com/?2mkjmx5mjyn
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: SplinterGU on April 07, 2009, 10:43:49 PM
esa captura se ve excelente...
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Prg on April 07, 2009, 10:51:58 PM
QuoteContinúo con el videojuego, esta vez una mejora que me ha tomado unas horas de dedicación. He creado un nuevo archivo .prg encargado de la gestión de las barras de energía del juego (Basada en map_block_copy()), he creado un tipo de dato independiente para cada barra de energía, portable a cualquier juego, espero que alguno lo deguste y le apetezca reutilizarlo.

disculpa, podrías explicar un poco más como lo trabajas, lo que pasa es que suena interesante, ya que en estos casos siempre se usan regiones por la facilidad para crear las barras
(define_region)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Drumpi on April 08, 2009, 01:01:52 AM
Juer, con esa captura me has dejado flipao, más si cabe. Muy bien conseguido el efecto de lluvia+niebla. ¿Los escenarios eran tuyos o ripeados?
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on April 08, 2009, 11:59:30 AM
Todos los escenarios y sprites son rippeados, no tengo gusto alguno para el diseño artístico (Ojalá...).

En cuanto al funcionamiento de la barra, no uso region para nada. Cada barra tiene asociado un TYPE con varios campos que indican su gráfico de barra vacía, su gráfico de relleno, la posición x,y donde comienza la parte vacía de la barra...

El fichero "barras.prg" lo tiene todo, es relativamente corto (Menos de 200 líneas) y tiene las funciones necesarias para hacer una barra nueva, autoconfigurarla para detectar su "zona vacía" donde será copiado el gráfico de relleno y finalmente ponerla en pantalla.

Para que la barra se llene o se vacíe hay una función modificar_barra que le pasas una referencia a la barra y un número entero...

El código está comentado, te recomendaría echarle un vistazo e incluírla en algún juego, son 3 llamadas a función y ya tienes ahí la barra funcionando, los gráficos que uso para ella están el "misc.fpg", todos vuestros xD

Gracias por vuestras opiniones, sigo con él, ahora la barra ya se ve por encima de la lluvia, y los pinchos te quitan vida xD
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on April 23, 2009, 06:32:12 AM
Me rectifico, el módulo gestor de barras tenía un pequeño bug, y es que el gráfico de la barra necesitaba ser clonado con map_clone() para poder tener varias barras de energía a la vez.

Como novedad, no uso region, así las barras pueden posicionarse en cualquier lugar, incluso sobre un proceso en movimiento.

Aquí una prueba de funcionamiento de las barras, hasta 17000 barras de energía simultáneas con distintos colores han corrido en mi PC sin problemas, a partir de ese número he tenido algún bloqueo (No me extraña xD)

Prueba de las barras de energía: http://www.mediafire.com/?zy1egtmmhyt (http://www.mediafire.com/?zy1egtmmhyt)

En cuanto a Just Fantasy ya ha integrado correctamente su barra y tiene jugosas novedades de jugabilidad. Si te caes por un precipicio vuelves a aparecer al principio de la fase, si llegas al final de la fase pasas a la siguiente, he añadido unos cartelitos que te dan indicaciones sobre como jugar, ya hay paredes infranqueables...

Y aquí les dejo Just Fantasy 0.9: http://www.mediafire.com/?zmjuz15tjqt (http://www.mediafire.com/?zmjuz15tjqt)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on May 13, 2009, 01:31:37 PM
Dejo el proyecto temporalmente paralizado... Me ha servido para desarrollar más de una veintena de módulos .prg reutilizables, con lo que espero que mi próximo proyecto de videojuego en 2D comience con muy bien pie y con grandes resultados visibles en muy poco tiempo.

Adjunto la última beta, sin muchos cambios, pero incluye un .bat para ejecutar directamente en Windows y un .sh para ejecutar directamente en Linux sin tener nada instalado, ya que incluye toda la maquinaria de Bennu en el pack:

http://www.mediafire.com/?mnny2mzmmmm
(http://www.mediafire.com/?mnny2mzmmmm)

Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: laghengar on May 13, 2009, 02:11:01 PM
Muy bien, espero el próximo proyecto impaciente  :D  8)
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on May 23, 2009, 05:51:05 PM
Noto una diferencia de rendimiento considerable si ejecuto en Windows y en Linux. En Windows me va muchísimo mejor...

También debo añadir que mi tarjeta gráfica debe de ser una criatura muy especial, y los driver para Ubuntu son de esos no oficiales. ¿Tendrá algo que ver?
Title: Re: Videojuego de plataformas: Just Fantasy!
Post by: Windgate on July 13, 2009, 12:31:13 PM
Just Fantasy acaba de dar el salto a los 32 bits.

He añadido unos relámpagos en 32 bits que hacen la labor, lástima que sus gráficos eran pequeños y he tenido que ponerlos con size=300; se pixelan un poco, pero el efecto de transparencia de 32 bits es soberbio para fuego, rayos y cosas similares.

Aquí el link de descarga: http://www.mediafire.com/?5n4ii0zgmmw (http://www.mediafire.com/?5n4ii0zgmmw)
http://www.mediafire.com/?czyjqwjmejy (http://www.mediafire.com/?czyjqwjmejy)

Os recuerdo que está listo para funcionar tanto en XP como en Ubuntu.

Y si alguien tiene por ahí algún gráfico de scroll con un mapa de durezas asociado que esté "bien hecho" me lo puede pasar y lo incluyo como siguientes fases, ya que el juego sólo tiene 2 fases y me cansé de seguir pintando durezas de scroll...