Echo v1.4: road to season two

Started by Drumpi, June 12, 2016, 11:30:54 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

SplinterGU

muy buena la transparencia de las nubes, si haces el grafico con alpha, te deberia funcionar sin el flag adictivo... simplemente usando el alpha del grafico...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

Lo he probado, pero no, el reborde oscuro tirando a negro se queda transparente y oscurece esas zonas, queda fatal. Mañana a ver si te puedo hacer una captura para que veas como queda.
La otra opción sería hacer la niebla en 2 colores, pero dado que aun así el rendimiento en Wiz es penoso, lo dejo como "virguería gráfica" para la versión de PC:P

Nota mental: añadir a la lista de cosas para la v1.4 filtros 2x, 3x y 4x para PC usando scale_resolution.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

SplinterGU

Quote from: Drumpi on July 27, 2016, 12:23:25 AM
Lo he probado, pero no, el reborde oscuro tirando a negro se queda transparente y oscurece esas zonas, queda fatal. Mañana a ver si te puedo hacer una captura para que veas como queda.
La otra opción sería hacer la niebla en 2 colores, pero dado que aun así el rendimiento en Wiz es penoso, lo dejo como "virguería gráfica" para la versión de PC:P

Nota mental: añadir a la lista de cosas para la v1.4 filtros 2x, 3x y 4x para PC usando scale_resolution.

imagino que eso te pasa porque usas negro de fondo...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

Obviamente. Y dada la escala cromática que uso en el nivel, elegir cualquier color haría que se notase y se vería igual o peor.
Y por eso uso el negro, para poder usar luego el flag aditivo.

¿Nadie para betatesting? ^^U
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Drumpi

Bueno, pues en teoría mañana es el gran día... el primero de ellos.
No perdamos de vista que el hilo se llama "Echo v1.4: road to season two", y mañana lo que lanzo es la v1.3.2, que básicamente es un retoque estético de la v1.3.
Y sí, el "season two" que se añadió en la portada para el concurso del Hamster, ha desaparecido hasta nuevo aviso :D

Mientras que la v1.4 y final va a tener (al menos) 4 niveles completos, con bugfix gordos, etc, etc. En esta va a haber retoques más o menos mínimos por la parte visible.
De momento puedo adelantaros que sí, los escenarios ya tienen fondos, opcionales, pero los tienen. Incluso algunos de ellos hasta tienen foregrounds que no se van a poder usar en Wiz. Luego, los jefes de nivel... o jefes a secas, porque están esparcidos por todo el juego, por fin van a dar a conocer sus nombres, para que los maldigais a gusto. Y ese indicador para coger objetos, por fin.
Pero lo que no se ve es todo ese código reordenado. Yoquesecuantas mil líneas que han pasado de 14 ficheros de código a ¿112? Linux se debe estar liando ¿tantos? :S

Lo importante es que me he quitado algunas de las espinas que tenía clavadas desde hace tiempo. Aun me quedan unas cuantas como esos tiles de suelos que se rompen, el indicador de oxígeno, mejorar el redimiento o cambiar el sistema de salvado, que se quedan para la vuelta de vacaciones, junto con el final del nivel 4 y el inicio del nivel 2.

Los ficheros están subidos a GameJolt desde ayer, tras localizar tres bugs graves (todos relacionados con no haber copiado FPGs a la carpeta de Fede), pero no se van a activar hasta que me asegure de que no hay ningún bug extra suelto. Ya he estado juegando al juego entero una vez, sacando snapshots, e incluso improvisando algún gráfico de presentación porque no tengo los programas con los que hice algunos de los originales y GJ se empeña en que deben tener un tamaño 4 veces superior a los que tiene el juego en sí.
Un colega también se ha presentado voluntario para probarlo, y voy a reunirme con él esta tarde para hablar de ello.

En fin, stay tunned. Mañana me toca anunciar la salida oficial aquí, en GP32spain y en Facebook, mientras preparo las maletas para olvidarme durante un mes del wifi, los teclados y de los BEGIN-END que me llevan machacando 11 meses más de 8 horas diarias sin fines de semana que valgan :D

PD: ¡¡¡PIXEL!!! Responde a los privis.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Futu-block

Te acompaño en el sentimiento y mándame las ansiadas betas, je je

Drumpi

Hola de nuevo desde este pequeño diario de desarrollo.

No, no he vuelto a retomar el proyecto, al menos no de forma oficial (se retomará, pero ahora mismo estoy decidiendo qué camino tomar).
Pero sí que le he estado echando un vistacillo para meter el nuevo motor de scroll tileado, ese que pintaba sobre un gráfico que se ponía en un scroll de Bennu, y que se suponía que me iba a ahorrar todos esos procesos tiles que me ralentizaban tanto la Wiz. He hecho una prueba preliminar, incluyendo el scroll de una forma un poco tosca (tosca porque me aparecen tiles que no deben por todas partes, al no usar tiles de 16x16 en todos los sitios) y ha sido frustrante.

Al principio parecía que había ganado algo de suavidad, casi imperceptible, pero a poco que me iba adentrando en el juego, la pantalla se volvía más caótica (no pasa nada, estaba previsto) y todo iba cada vez más lento. Ahora no estoy seguro de si iba mejor antes con el scroll por procesos o ahora con un scroll más :S

He intentado mirar a través del profiler qué era lo que más recursos me estaba comiendo, pero parece que eso ya no existe. Parece que hay una relación directa entre el número de enemigos y cómo se ralentiza el juego, y hay algo que no me cuadra, porque creo recordar que hice que los enemigos que se alejasen de pantalla, desaparecieran y volvieran al mapa visible como datos. No sé qué es lo que hace que el juego vaya tan lento, porque incluso con el doble de procesos de cuando tenía el scroll por procesos parecía que se movía a la misma velocidad.

¿Puede ser que la detección de durezas sea un agujero negro de recursos? No debería porque a pesar de lo largo que es el código, se lee sólo una décima parte del mismo gracias a las sentencias SWITCH ¿Será la detección de colisiones? Tenía restringido el uso de collision a cuando el prota estaba cerca del enemigo, pero no sé si puedo reducirlo más sin que haya problemas, o sustituirlo por collision_box sin que haya quejas de que las colisiones no son muy reales. ¿Debería hacer un collision_box y despues, en caso afirmativo, un collision? ¿No se perdería aun más rendimiento?

Puedo reducir algunos cálculos si hago que se consulte una vez dos datos de la variable global info_prota.tilex, y se guarden en una variable privada (dichas variables se consultan en 160 lineas del proceso, pero en realidad son menos de 25 veces por frame), pero no creo que eso tenga mucho impacto en la velocidad.

Es que no me cuadra que cada 16 pixels que se avance haya un pequeño parón, el nuevo motor debería haber eliminado eso, porque teóricamente era lo que más recursos consumía, y ahora resulta que no, y ahora no sé si volver al motor anterior y probar otra cosa, o dejar este nuevo y arreglar los FPGs y los mapas para que funcionen correctamente con él (que es un trabajo que me llevaría como una semana o poco más dependiendo de la cantidad de problemas que de el testeo).

Si alguien tiene respuestas, serán bien recibidas. Especialmente sobre el profiler.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

DCelso

#52
Mi opinión es que los juegos tienen un principio y un fin. No mola ver una y otra vez el mismo juego con ligeros toques de imagen (independientemente de drásticos retoques de errores.) Al final creo que aburre.
Mi consejo es que des por cerrado ya el juego. Y se quede tal cual está para siempre. Los fallos de un juego son los que hacen únicos al juego.

¿Que hubiera pasado del mortal kombat II si hubieran quitado el fallo de agacharte y saltar para atrás cuando llega el enemigo? un mortal kombat IIb con eso arreglado a lo mejor hasta se hubiera aceptado. pero y si hubieran segido con el IIc todo igual quitando el fallo de saokan de saltarle una y otra vez con patada y no dejar que deje de cubrise?

En fin, mirando para el caso contrario, que le pasa al street figther II, que si II plus, que si II ', que si II '2 alfa plus ..., ahora salto y salto y salto y me salgo por arriba y aparezco por abajo, ahora hecho mil bolas, ahora me mezclo entre mis bolas que no me dan....

En fin, en mi opinión deberías cerrar ya echo 1 y empezar con echo 2, mismos personajes, nuevas fases no repetidas nuevas armas y opciones nuevos enemigos, que lleve la esencia de echo, pero ya en otro nivel.

Si te das cuenta todas las compañias hacen eso y es lo que vende y engancha, lo unico que perdura son los persojanes nada mas y a veces ni eso ( FF :) ).
Diablo - Diablo II - Diablo III
Herores of migth and magic I - Herores of migth and magic II -Herores of migth and magic III - Herores of migth and magic IV
bueno por poner unos ejemplos. :D

Quizas la alternativa de repetir mismo juego con mejoras gráficas y nuevas fases podría guardarse para pasados unos años hacer un remake. :D caso del remake de abu simbel profanation para PC

Con esto no quiero decir que no prosigas, los resultados molan, a la vista está, es solo mi opinión personal.
Lo veo como mucho tiempo invertido en lo mismo que al final no será tan agradecido como se espera. Lo poco nuevo que aporta el juego no va a merecer la pena al gran trabajo realizado en ello.
Monstruos Diabólicos

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

Drumpi

Es probable, pero un juego con solo dos niveles me parece poca cosa :D
No es que el juego sea corto, que no lo es, sino que tenía planeado tres niveles en lugar de dos, y ya tengo empezado el cuarto sin haber tocado el segundo ^^U

Ya digo que no sería mala idea cerrar el Echo con los dos primeros niveles y empezar una segunda parte con otros dos niveles pero hay varias razones para hacerlo así:
- La jugabilidad de los dos nuevos niveles está entre lo ligeramente diferente y lo radicalmente distinto, y más que una segunda parte parecería un spin-off. El cuarto nivel tenía pensado que fuera un laberinto de puertas porque hice un juego hace años que molaba así, pero dado el feedback negativo que han tenido estos tipos de nivel a lo largo de los años (Crítico de la nostalgia: Bebe's Kids), creo que voy a optar más por un desarrollo tipo sandbox con minimisiones. Eso nos lleva al segundo punto.
- El objetivo del Echo siempre ha sido, en realidad, crear un motor para realizar el juego que tendría que haber sido: una aventura de plataformas, disparos y exploración, a medio camino entre Super Metroid y Cave Story. Poco a poco le he ido añadiendo cosas, lo he aprovechado en otros proyectos (he ido mejorando mi forma de programar) y lo del cuarto nivel me va a ayudar a preparar la parte de diálogos y cutscenes.
- Quiero aprovecharlo para subirlo una vez completo a GameJolt, y cobrar por él lo que la gente quiera pagar (aunque sea cero). Y si la cosa pinta bién, usarlo como muestra para crear un kickstarter para hacer esa aventura que digo: "Doggy!!!". En realidad, poca gente fuera del círculo de GP32spain, GP32x.com, Fenix y BennuGD conocen el juego, y si voy a expandir su difusión, quiero que esté lo más completo que pueda.

Pero no es algo que me obsesione. Ya lo dije en otro hilo, estoy dispuesto a seguir con otro proyecto si me llama la atención, ya sea en Bennu, PixTudio, Unity, Android o HTML5. Sólo me he puesto con el Echo porque lo tenía aparcado desde hace tres o cuatro años, y he usado parte de su código en varios juegos, y quería reaprovechar lo que añadí en esos otros proyectos aquí, pero estaba tan mal organizado que he tenido que hacer limpieza.
Ten en cuenta que la primera versión se desarrolló en tres meses (y uno fue para corregir y portar las detecciones de tiles de durezas), y contando los últimos 4 meses en plan tranquilo, no le habré dedicado más de un año neto.

Quiero intentar corregir los fallos que comento en el anterior mensaje porque es un problema gordo en Wiz, peor que las ralentizaciones en Sonic 2006, y a partir de ahí ya todo va rodado: terminar los pocos tiles que me faltan del nivel 4, desarrollar los del nivel 2, crear las nuevas físicas que necesito para el nivel 2, hacer unos pocos enemigos nuevos, aprender un poco de IA, y liarme a diseñar niveles, que es lo mío (y no descarto hacer modificaciones a los que ya estaban hechos, a ver si hago el nivel 3 un poco más interesante).

Por cierto, que el ejemplo que pones de SF2, Capcom estuvo vendiendo el mismo juego año tras año con ciertas mejoras, y poca gente se quejaba (al menos en mis círculos), y hoy día es lo que se hace con los paquetes de actualizaciones, DLCs, ediciones GotY... La diferencia es que yo no cobro, no tengo tanto feedback, ni tengo un equipo para añadir todo el contenido extra a lo largo de un único año :D :D :D
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Drumpi

Le he cogido ganas al código, sólo un poco, porque quería corregir de una vez esos pequeños fallos de control que tiene el juego.
Para empezar, ese bug que hace que, a veces, al tocar el techo, perdiese toda la velocidad lateral. Lo he aislado y he impedido que eso suceda, pero ahora, si golpeas diagonalmente la esquina de un techo, hay un pequeño "teletransporte"... pero también es cierto que el control mejora muchísimo en los saltos, y que ha corregido el problema de entrar en espacios donde el suelo y el techo sólo tenían un tile de altura: ahora es 10 veces más fácil entrar.
Sigo buscando el "teletransporte" que te pega a las paredes en las caidas, o por qué Echo rebota al tocar el suelo tras un salto o una caida. Vale que esto último es más realista pero me está dando problemas con los saltos, y eso es malo para el jugador.

Hoy me he puesto a hacer un poquillo de limpieza en el código del prota. Sí, quedan cosas por limpiar, aunque más que limpieza es una corrección de un error de novato. Lo que he hecho ha sido cambiar varios valores numéricos por constantes, concretamente los valores que indican cuánto se puede "pegar" echo a las paredes y al techo, dado que Echo no mide 16x16 pixels. Esto tiene más que ver con el nivel 2, en el que me estoy planteando seriamente sustituir los tiles de 16x16 por otros de 24x24 ¿Por qué? Porque necesito que los sprites sean un poco más grandes; se podría usar 16x16, pero creo que quedaría mejor si puedo tener algunos pixels extra... Es que no quiero desvelar de qué se trata.

Lo que ya no tengo más remedio que desvelar es lo que quiero hacer en el nivel 4, porque mi cerebro simétrico no me deja decidir (de nuevo). Tengo dos opciones:
- Que el nivel sea un laberinto de puertas, como pensé originalmente. Sé que no es una mecánica muy popular, que es muy frustrante avanzar a la derecha para que una puerta te mande a la izquierda, el no saber hacia dónde ir, por dónde estás, si avanzas o retrocedes... Y sin embargo, en los 90 diseñé "Super Mario Door", un juego basado en "Super Mario World" con esta mecánica y era bastante divertido en mi opinión.
- Que el nivel sea un sandbox de plataformas. La idea sería plagar el nivel de mini misiones, con gente con la que hablar para que te den tareas, indicaciones, te abran caminos, etc, todas destinadas a que obtengas la llave final para enfrentarte al jefe del nivel (bueno, y alguna misión extra para conseguir objetos o armas nuevas). También cambiaría la mecánica global del juego sin perder la esencia de plataformas, exploración y combate, y me permitiría desarrollar el sistema de diálogos y eventos controlados por la máquina para "Doggy!!!" (que es un juego de aventuras, plagado de este tipo de escenas).

Bueno, aquí sí que necesito vuestra opinión. ¿Que os atrae más?
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Futu-block

Ami lo que echa del hecho un poco para atrás es un poco lo laberíntico del juego; echo de menos que haya tres o cuatro pantallas de inicio que sean facilongas y con eso irse calentando

DCelso

Yo me apunto a idea 2 también.
Y quiero probar ya el juego, deja alguna descarga ya >:(
Monstruos Diabólicos

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

Drumpi

Pero Futu ¿Llegaste a superar la parte de las columnas o te quedaste ahí? porque hasta esa parte casi todo es muy "straight forward" y nada complicado (a menos que dejes enemigos vivos que vayan detrás de ti).
Se me está pasando por la cabeza hacer un quinto nivel basado en el espacio, que no sé si sería lineal como Freddy Hardest o con minimisiones tipo Alien 3 de SNES, pero primero voy a centrarme en los dos que faltan que no son moco de pavo.

DCelso: pero si la descarga ya existe. La puse antes de irme de vacaciones en Gamejolt, y la semana pasada lo resubí a openhandhelds para Wiz y Caanoo:
http://gamejolt.com/games/the-amazing-adventures-of-echo/170481
Más detalles en el mensaje 49 y en http://forum.bennugd.org/index.php?topic=4308.0

A los demás, sigo esperando vuestros votos.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

DCelso

Monstruos Diabólicos

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

Futu-block

¿que coño es un game jolt y como se puntua? :D