PDA

Ver la versión completa : Proyecto: remake de "Osu! Tatakae! Ouedan!" para GP2X



miq01
28/01/2006, 01:45
Hola. Estoy empezando a programar un remake (en versión muy libre, eso sí, más que nada porque aquí no tenemos lápiz para señalar) de "Osu! Tatakae! Ouedan!" de NintendoDS para GP2X. Algo parecido al StepMania, vaya.

Supongo que más de uno se preguntará por qué no hacer un port de algo ya existente en lugar de programarlo de cero. La respuesta es que me apetece, que me divierte más programarlo yo que portar algo (además de que mis dotes portando son más bien nulas por ahora).

La idea es que suene una canción y que el jugador tenga que ir pulsando ciertos botones siguiendo el ritmo o la melodía de esa canción. Qué botones pulsar vendrá indicado por unos botones virtuales que apareceran en pantalla y que indicarán el momento justo de la pulsación. Si se pulsa en ese momento, con un margen de error, suma puntos (cuanto más cerca del momento exacto, más puntos) y "energía". En caso contrario, resta "energía". En caso de esa "energía" llegue a cero, se acaba la partida.

Primero de todo, necesito un nombre. Por ahora tiene el título provisional y no definitivo de "Step2X" que me parece muy poco original además de que aquí no hay steps (pasos) sino pulsaciones de botones. Le he dado este porque no tenía ganas de pensar. Así que se admiten sugerencias.

Segundo, me gustaría que fuera abierto en el sentido de que quien quiera pueda añadir su canción y jugar con ella. Para ello tendría que crear un fichero de texto con un formato determinado de manera que el programa sea capaz de leerlo y mostrar los botones siguiendo la secuencia especificada. El formato podría ser el siguiente:

Por cada evento (cada pulsación de botón):
- Qué botón: L, R, A, B, X, Y
- Instante en el que se debe pulsar (absoluto, en milisegundos)
- Instante en el que se debe empezar a mostrar (relativo al parámetro anterior)
- Posición X e Y en pantalla
- Color del botón: por ahora rojo, azul y verde

Yo no he probado el StepMania y no sé cómo se pueden asignar eventos en ese programa. Lo digo porque lo que propongo tiene el problema de tener que contar cuántos milisegundos han de pasar hasta que se tenga que pulsar cierto botón, y no es que sea difícil porque con cualquier editor de audio se puede hacer, pero es un poco laborioso.¿Se os ocurre una alternativa más fácil?

Para más adelante os pediré ayuda con los gráficos. Aunque si alguien se ofrece a hacer fondos para las canciones (porque un sólo color de fondo es muy aburrido), encantado.

Bueno, espero todo tipo de ideas, ¿vale?

Edito: Por cierto, olvidaba preguntar dónde encontrar música (formatos OGG, MP3, WAV, ...) libre. En cuanto lo tenga más avanzado preguntaré a los de 8bitpeoples (http://www.8bitpeoples.com/) si puedo usar las suyas...

Wild[Kyo]
28/01/2006, 02:03
Ouendan! Juegazo de NDS. :D

Ánimo con el proyecto... :)

miq01
28/01/2006, 02:34
']Ouendan! Juegazo de NDS. :D
En NDS hay unos cuantos juegazos, pero si me he de quedar con un par o tres, uno sería éste (los otros... Mario Kart y Mario DS seguramente).

yatan
28/01/2006, 02:38
Lo de conseguir canciones mp3,... kizas en la seccion de songs de la web del stepmania son libres, no lo se. pero alli hay muchas y como estan destinadas para este tipo de juegos pues seria un buen comienzo.


No vaya a ser k vengan los de la sgae.... [candado]

akram
28/01/2006, 02:41
T recomiendo k la hagas con mp3s de esta pagina http://www.ocremix.org/ y los pasas a ogg o al formato k necesites, seria un punto XDD , mu wena idea y espero k t vaya bien y a ver si sale algo xulo XDDD.

Puck2099
28/01/2006, 04:00
Yo no he probado el StepMania y no sé cómo se pueden asignar eventos en ese programa. Lo digo porque lo que propongo tiene el problema de tener que contar cuántos milisegundos han de pasar hasta que se tenga que pulsar cierto botón, y no es que sea difícil porque con cualquier editor de audio se puede hacer, pero es un poco laborioso.¿Se os ocurre una alternativa más fácil?

No entiendo qué es lo que quieres hacer, ¿contar los milisegundos para generar el evento o que el propio programa genere una "lista de eventos" dependiendo del ritmo de la música?

Saludos

bulbastre
28/01/2006, 04:22
Las cacniones del DDR hechas por konami no están sujetas a derechos, o eso he oído, que me extraña.

Puck2099
28/01/2006, 04:24
Las cacniones del DDR hechas por konami no están sujetas a derechos, o eso he oído, que me extraña.

Si están hechas por Konami estarán sujetas a derechos...

bulbastre
28/01/2006, 04:25
- Qué botón: L, R, A, B, X, Y
- Instante en el que se debe pulsar (absoluto, en milisegundos)
- Instante en el que se debe empezar a mostrar (relativo al parámetro anterior)
- Posición X e Y en pantalla
- Color del botón: por ahora rojo, azul y verde



Pues eso, tú sólo le dices el momento en que ha que pulsar el botón, pero le dices que hay que enseñarlo 1 segundo antes, no hace falta más.

bulbastre
28/01/2006, 04:26
Si están hechas por Konami estarán sujetas a derechos...
No, si eso pensé yo... Pero lo mismo los de konami las liberan.

pakoito
28/01/2006, 04:29
Y hacer algo con esto Y ADEMÁS algo? Mirad la idea Tendrils, el juego de pyton. Probadlo, en serio y por favor...

http://members.cox.net/swt2/Tendrils/

Raydenito
28/01/2006, 04:31
''Supongo que más de uno se preguntará por qué no hacer un port de algo ya existente en lugar de programarlo de cero. La respuesta es que me apetece...'' Hay esta, con dos cojones [wei4]

En cualquier caso, cualquier proyecto es bienvenido a la GP2x. Tienes todo mi apoyo (moral [wei5] ) para el mismo.

Un saludo....

BuD
28/01/2006, 04:46
Yo no he probado el StepMania y no sé cómo se pueden asignar eventos en ese programa. Lo digo porque lo que propongo tiene el problema de tener que contar cuántos milisegundos han de pasar hasta que se tenga que pulsar cierto botón, y no es que sea difícil porque con cualquier editor de audio se puede hacer, pero es un poco laborioso.¿Se os ocurre una alternativa más fácil?
Yo no entender, aunq suponer que querer decir tu.
Si sabes algo de musica, hay algo llamado ritmo. La cancion en si tendra un ritmo normalmente expresado en BPM (negras por minuto), y a partir de este ritmo puedes crear como una especie de pentagrama que en vez de decir una nota, te dira el boton que quieres pulsar y el tiempo que quieres que pase para la apretar la siguiente direccion (por ejemplo, una negra, blanca, corchera, semicorchera). Luego puedes implementar cambios de ritmos, etc.
Creo que no era esta tu pregunta... :confused:

LukStarkiller
28/01/2006, 05:11
Puck haz que reaccione a unas pocas frecuencias graves (que suelen ser las que marcan el ritmo) y a alguna aguda y asi cada uno podrá poner los MP3 que quiera (o vaya si es otro formato, facild e recomprimir tambien mas de lo mismo)

No te se decir como hacer lo de las frecuencias, pero lo mismo que se hace una grafica en reproductores de musicas (creo que el que publicaron hace poco tenia el grafico, no recuerdo la foto ni lo he provado, miralo), puedes hacer que el juego haga una accion u otra de la misma manera. Es solo una idea espero que te ayude ^^

Borochi
28/01/2006, 06:01
Me parece genial la idea si me mandas ordenes te hago caso ^_^

Ya que es un juego que me encanta ^_^

Por desgracia se que es imposible dar la misma sensacion pero si se parece o se semeja o creamos otra genial ^_^

Tu dime canciones y yo te creo todos los fondos que pueda XD

Luego creare los mios de canciones mas conocidas ^^*

miq01
28/01/2006, 07:02
No entiendo qué es lo que quieres hacer, ¿contar los milisegundos para generar el evento o que el propio programa genere una "lista de eventos" dependiendo del ritmo de la música?
Contar los milisegundos "a mano". El programa no hará ningún análisis del sonido. Por ejemplo, si quiero que se pulse un botón A en el segundo 2 (porque por decir algo suena una nota de la melodía) y el botón B en el segundo 5 (porque suena otra nota), en el fichero de eventos debería estar especificado así (muy por encima):
A 2000 ...
B 5000 ...


Pues eso, tú sólo le dices el momento en que ha que pulsar el botón, pero le dices que hay que enseñarlo 1 segundo antes, no hace falta más.
Sí. Lo que pasa es que creo que en el de NDS hay botones que aparecen durante menos tiempo que otros (cuando la canción se acelera, por ejemplo), y por eso había pensado añadirlo. Puedo hacer que sea un parámetro opcional.


Y hacer algo con esto Y ADEMÁS algo? Mirad la idea Tendrils, el juego de pyton. Probadlo, en serio y por favor...

http://members.cox.net/swt2/Tendrils/
¿Alguien me explica de qué va este juego? ¿"a role-playing game with rhythmic combat"? ¿Se supone que es un juego de rol normal y corriente, y que en los combates gana el que "baila" mejor? Si es así, qué curioso...


Yo no entender, aunq suponer que querer decir tu.
Si sabes algo de musica, hay algo llamado ritmo. La cancion en si tendra un ritmo normalmente expresado en BPM (negras por minuto), y a partir de este ritmo puedes crear como una especie de pentagrama que en vez de decir una nota, te dira el boton que quieres pulsar y el tiempo que quieres que pase para la apretar la siguiente direccion (por ejemplo, una negra, blanca, corchera, semicorchera). Luego puedes implementar cambios de ritmos, etc.
Creo que no era esta tu pregunta... :confused:
Efectivamente, no era ésta mi pregunta. :) Sí se algo de música, y la idea no es que la pulsación de botones se genere en tiempo real (sea a partir de los BPM, analizando el sonido, o si fueran ficheros MIDI, detectando ciertos eventos) sino que venga predefinida en un fichero. Más que nada que si lo hiciera a partir de los BPMs sería muy monótona la pulsación. Supongo que los que hayáis jugado al Ouedan sabéis a lo que me refiero (y los que no habéis jugado, no sabéis lo que os perdéis... :)).


Puck haz que reaccione a unas pocas frecuencias graves (que suelen ser las que marcan el ritmo) y a alguna aguda y asi cada uno podrá poner los MP3 que quiera (o vaya si es otro formato, facild e recomprimir tambien mas de lo mismo)

No te se decir como hacer lo de las frecuencias, pero lo mismo que se hace una grafica en reproductores de musicas (creo que el que publicaron hace poco tenia el grafico, no recuerdo la foto ni lo he provado, miralo), puedes hacer que el juego haga una accion u otra de la misma manera. Es solo una idea espero que te ayude ^^
Hola LukStarkiller. No soy Puck sino Miq. :) Supongo que con lo que he respondido a BuD ya ves que no es lo que busco. Tú te refieres a lo que hacen los plugins visuales del WinAmp, ¿no? Pero no, no es eso lo que quiero.


Lo de conseguir canciones mp3,... kizas en la seccion de songs de la web del stepmania son libres, no lo se. pero alli hay muchas y como estan destinadas para este tipo de juegos pues seria un buen comienzo.


No vaya a ser k vengan los de la sgae.... [candado]

T recomiendo k la hagas con mp3s de esta pagina http://www.ocremix.org/ y los pasas a ogg o al formato k necesites, seria un punto XDD , mu wena idea y espero k t vaya bien y a ver si sale algo xulo XDDD.
Gracias a los dos. La verdad es que me mola la idea de usar canciones de videojuegos clásicos. Cuando pueda miraré qué tal están, que alguna vez escuché alguno de esos remixes y eran... un poco cutres. Igual escogí mal.

Puck2099
28/01/2006, 07:13
Contar los milisegundos "a mano". El programa no hará ningún análisis del sonido. Por ejemplo, si quiero que se pulse un botón A en el segundo 2 (porque por decir algo suena una nota de la melodía) y el botón B en el segundo 5 (porque suena otra nota), en el fichero de eventos debería estar especificado así (muy por encima):
A 2000 ...
B 5000 ...


Eso lo puedes hacer con SDL_GetTicks() que te devuelve los milisegundos desde el inicio de la consola o programa, no estoy seguro.

Saludos

miq01
28/01/2006, 07:17
Eso lo puedes hacer con SDL_GetTicks() que te devuelve los milisegundos desde el inicio de la consola o programa, no estoy seguro.

Saludos
Sí, tenía pensado hacerlo con SDL_GetTicks(). Lo que pedía no era cómo hacerlo desde el código, sino si se os ocurría otra manera de definir los eventos de pulsación de botón más simple a la que yo he pensado (la de meterlos en un fichero), como lo que han propuesto de detectar BPMs o analizar el sonido, pero ya digo que no es lo que quiero, así que supongo que al final lo dejaré como lo tenía previsto.

Por cierto, ¿qué os parece usar L, R, A, B, X e Y? Primero había pensado también usar de alguna manera el joystick, pero creo que va a j0der más que otra cosa al ser tan sensible.

namikata
28/01/2006, 07:45
mi recomendacion es que no leas esto

yo pongo mi idea que es un poco rebuscada pero aqui queda, me tiro a la piscina y luego si quereis me llamais loco [wei5] :

lo que propongo es que en los archivos de las canciones tengan varios registros, cada registro puede tener:

- un tiempo en milisegundos asociado a una tecla determinada ej: L-2000
- un indicador de la velocidad de la cancion en bpm ej: beat-100
- los dos anteriores ej: beat-150|X-500

utilizando la informacion del beat puedes saber la velocidad a la que mover las notas y cada boton no llevaria los milisegundos desde el principio de la cancion sino desde la anterior pulsacion, asi te evitas trabajar con numeros demasiado grandes

en cuanto a la parte dificil, carga de la cancion, creacion de las flechas, movimiento y tal, supongo que podrias utilizar unas cuantas listas, se cargan al principio de la cancion y para posicionarlas solo tendrias que buscar la primera que se encuentre dentro del rango necesario para que aparezca en la pantalla (los milisegundos que hacen falta para pulsar la tecla con el modificador de la velocidad de bpm mas el tiempo en milisegundos que pasa desde que aparece en pantalla hasta que se pulsa es un buen limite) de esa forma si no encuentras una puedes dejar de buscar en la lista, y mientras las encuentres se eliminan de la lista y pasan a lista de las procesadas

el resto seria cuestion de decidir bpm basico y su velocidad en pantalla para sacar los milisegundos necesarios desde que aparece hasta que se pulsa

en fin, me encantaria jugar a este juego en la gp2x asi que si necesitas cualquier cosa tu pide [wei4]

tomo
28/01/2006, 07:53
Hola miq01, creo ke sería más facil usar xml + tinyXML (por ejemplo) y usar valores absolutos para el tiempo usando unsigned int, ke tiene un valor máximo de 4294967295, suficiente para albergar una cancion de 71582,783 minutos :P

La forma de generarlo de la forma más amena ke se me ha ocurrido (pensé en todo esto porke tambien me interesé en hacer algo parecido) es ke el usuario en cuestión entre a cierto "modo grabación", la música elegida empiece a sonar y el usuario pulse los botones de la forma más artística y precisa posible. Mientras, el programa va guardando los instantes y creando 6 vectores de unsigned ints (uno por cada botón). Al final, se guarda un xml con toda la información, listo para compartir en este foro.

Conozco dos páginas con música Creative Commons. Uno (http://www.jamendo.com/es/?domain=es). Dos (http://www.musicalibre.es).

Venga miq01, a por el siguiente! Tiene ke viciar más ke el Tile Match, eh?

fan_cassidy
28/01/2006, 07:56
Yo creo que el juego ganaria en dinamismo si solo se usasen los botones, y para mi gusto quitaria el L y el R, pero solo es una opinion. El asunto es encontrar el modo inteligente para que se usen pocos botones y se simplifique la respuesta del jugador, pero no pierda en jugabilidad. Vamos, algo asi como lo que acostumbra a hacer Nintendo (Vale, que pesa la comparacion, pero creo q me habeis entendido, que es lo que queria).
Lo que no se si habeis dicho (el post me lo leí ayer y ya no me acuerdo, no me lo voy a repasar ahora entero, ya me disculpareis) es que podria ser una gran idea el que incluyeses un editor o una guia para que cada usuario crease sus propios mp3 o ogg para el juego.
Asi, se podria crear una sección en la pagina con los ficheros de todos los jugadores (Es decir, que cada uno aportase alguno segun le apeteciese y los subiese para que otros pudiesen descargarse los que quisiesen), y el juego ganaria en variedad, en implicacion y en originalidad. Me parece una buena idea, pero luego tendrias que implementar el codigo de forma que cargase las canciones al iniciar, sabiendo que estan en una determinada carpeta. Tampoco es descabellado no?
Me parece una grandisima idea el juego, es justamente un juego de portatil: Rapido, divertido, original y para hechar unas partiditas en ese huequito libre. Llevalo a cabo, por Crom!

TheCass

fan_cassidy
28/01/2006, 08:04
Vaya, algo parecido han dicho antes que yo...3 minutos antes! Eso es que debia de ser una GRAN idea!! Jajaja!
Oye, que ademas se me ha ocurrido que las imagenes de fondo tambien se podian asignar a cada canción. Si tu o nosotros (Todos los interesados) hiciesemos un pack de canciones para empezar, podriamos asignarle a cada una un numero de images que se hirian cambiando segun se acertase. Así, las imagenes serian las acordes con la cancion.
Y lo mejor, esque asi tambien podrias meter en el editor un modo para agregar imagenes a las pistas nuevas, de forma que cada usuario hiciese su cancion, con su dificultad, sus imagenes... todo a su gusto, muy artistico! Seguro que atraeria a mogollon de gente! (como puedes ver ya hay uno aqui que babea con este juego, imagina ademas poder tomar parte en el aunque no sepas programar... bufff!).
Se que lo que digo es dificil, mas que dificil, seguramente mas laborioso que lo que tenias pensado e un principio, pero bueno, si te sirve de algo me sentire orgulloso de haber aportado algo.
Y para lo que quieras referente a las imagenes de fondo y todo eso, cuenta conmigo, no tengo mucha idea pero interes pongo y gustar me gusta!

TheCass

CoMiKe
28/01/2006, 08:04
Buenos, pues yo doy un par de ideas más para el proyecto:

- En cuanto al nombre, que te parece Beat2X? Por lo de BeatMania de las recreativas, ya sabes...

- Estaría curioso que soportase música en formato mod, xm, s3m, it, etc.

- Y puestos a que soporte mod's, os recomiendo a todos que escucheis los grandísimos mods de Awesome (buscad en ModArchive (http://www.modarchive.org) el texto AWS). No dejeis de escuchar Hispania, aunque las demás también son muy buenas.

- A lo mejor incluso podrías contactar con Victor Vergara (aka. Awesome) para que te diese permiso para utilizar sus canciones una vez que el proyecto avance: http://www.awezoom.com/skale/contact.htm

EDIT: Respecto a los botones, creo que también se deben usar el L y R, además de los otros 4. Esto le daría más dinamismo al juego (es muy dificil apretar dos o tres de los botones a la vez, en cambio, con L, R y un botón de los de la derecha podrías hacer combos de hasta 3 botones facilmente).

Por cierto, echate una partidita al StepMania antes de empezar, seguro que te da un par de ideas.

PD: Joe, después de escribir lo de "grandísimos mods" me ha parecido que mi mensaje podría ser casi considerado como SPAM :D. Nada más lejos de mi intención, escuchad Hispania y lo entendereis...

miq01
28/01/2006, 08:49
mi recomendacion es que no leas esto
Gracias por la recomendación, pero al final lo he leído... :)


yo pongo mi idea que es un poco rebuscada pero aqui queda, me tiro a la piscina y luego si quereis me llamais loco [wei5]
¡Loco! Me lo has puesto a huevo... :) Lo que pasa es que no quiero depender de los BPMs, ya que entonces una canción muy rápida (200 BPMs por ejemplo) requeriría muchas más pulsaciones por segundo, y no ha de ser necesariamente así. Respecto a lo de almacenar números demasiado grandes, uso Uint32 de SDL y ahora no recuerdo el rango exacto, pero es más que suficiente puesto que da para muchísimo, mucho más de lo que necesito (Una canción de 5 minutos, por poner un caso extremo, tiene 300000 milisegundos, y un número de esa magnitud se lo traga sin problemas).


en cuanto a la parte dificil, carga de la cancion, creacion de las flechas, movimiento y tal, ...
En eso mismo estaba ahora. Estoy creando una lista con todas las pulsaciones y lo que va a hacer el programa es detectar cuales ha de mostrar en un momento determinado. A ver qué tal funciona.


Hola miq01, creo ke sería más facil usar xml + tinyXML (por ejemplo) y usar valores absolutos para el tiempo usando unsigned int, ke tiene un valor máximo de 4294967295, suficiente para albergar una cancion de 71582,783 minutos :P
Hola Tomo. Había pensado usar XML (no sé qué es tinyXML) para el fichero de pulsaciones pero en principio lo había descartado porque acaban siendo ficheros demasiado largos (por los tags). Independientemente del uso de unsigned ints, ¿por qué otros motivos lo recomiendas? ¿Es fácil de parsear? ¿Hay funciones para eso? Es que tal como lo he pensado yo, hay un evento por línea, y mediante C es sencillo de leer. De hecho, lo tengo medio implementado de algún otro proyecto (Tilematch, sin ir más lejos).


La forma de generarlo de la forma más amena ke se me ha ocurrido (pensé en todo esto porke tambien me interesé en hacer algo parecido) es ke el usuario en cuestión entre a cierto "modo grabación", la música elegida empiece a sonar y el usuario pulse los botones de la forma más artística y precisa posible. Mientras, el programa va guardando los instantes y creando 6 vectores de unsigned ints (uno por cada botón). Al final, se guarda un xml con toda la información, listo para compartir en este foro.
Buenísima la idea. Pero bueno, como no es trivial de implementar (aunque creo que tampoco es muy difícil tal como me lo estoy imaginando) lo dejo para cuando tenga el juego funcionando.


Conozco dos páginas con música Creative Commons. Uno (http://www.jamendo.com/es/?domain=es). Dos (http://www.musicalibre.es).
¡Genial! Además, por lo que veo hay música de todos los estilos...


Venga miq01, a por el siguiente! Tiene ke viciar más ke el Tile Match, eh?
A ver qué sale...


Yo creo que el juego ganaria en dinamismo si solo se usasen los botones, y para mi gusto quitaria el L y el R, pero solo es una opinion. El asunto es encontrar el modo inteligente para que se usen pocos botones y se simplifique la respuesta del jugador, pero no pierda en jugabilidad. Vamos, algo asi como lo que acostumbra a hacer Nintendo (Vale, que pesa la comparacion, pero creo q me habeis entendido, que es lo que queria).
Entiendo lo que quieres decir. Lo de L y R era para darle más variedad. Probaré con ellos, y si veo que lo complica los quito.


Me parece una buena idea, pero luego tendrias que implementar el codigo de forma que cargase las canciones al iniciar, sabiendo que estan en una determinada carpeta. Tampoco es descabellado no?
Bueno, lo de seleccionar la canción de una lista de ficheros no es tan difícil. También lo tengo medio implementado en otro proyecto.


Oye, que ademas se me ha ocurrido que las imagenes de fondo tambien se podian asignar a cada canción. Si tu o nosotros (Todos los interesados) hiciesemos un pack de canciones para empezar, podriamos asignarle a cada una un numero de images que se hirian cambiando segun se acertase. Así, las imagenes serian las acordes con la cancion.
Exacto. Yo había pensado que hubiera una imágen de fondo por canción, y a ser posible, que la imagen tuviera alguna relación con ella.


Y para lo que quieras referente a las imagenes de fondo y todo eso, cuenta conmigo, no tengo mucha idea pero interes pongo y gustar me gusta!
Pues nada, si queréis hacer una lista de canciones (en especial las de los enlaces de Creative Commons) con imágenes asociadas, por mí perfecto. Eso sí, para empezar, con tres o cuatro de momento hay suficiente, que como quien dice acabo de empezar y pasará algún tiempo hasta poder ver algo funcionando.


- En cuanto al nombre, que te parece Beat2X? Por lo de BeatMania de las recreativas, ya sabes...
Beat2X mola mucho más que el mío. A ver si a alguien se le ocurre algo más, y si no dejo ése.


- Estaría curioso que soportase música en formato mod, xm, s3m, it, etc.
Esto queda un poco lejos, sobre todo porque no sé usar las librerías capaces de leerlas y de momento, y para empezar, con OGG tengo suficiente. Igual en un futuro...


Respecto a los botones, creo que también se deben usar el L y R, además de los otros 4. Esto le daría más dinamismo al juego (es muy dificil apretar dos o tres de los botones a la vez, en cambio, con L, R y un botón de los de la derecha podrías hacer combos de hasta 3 botones facilmente).
Hum... No había pensado en la posibilidad de pulsar varios botones a la vez... Aunque tal como tengo planteado el programa no debería suponer ninguna dificultad. Yo me he basado en el juego de DS, que funciona con el lápiz y evidentemente sólo se puede pulsar en una zona de la pantalla en un momento determinado. Pero al ir con botones... la cosa cambia. Bueno, empezaré con lo más simple y según como lo vea decidiré si añado varias pulsaciones simultáneas.


Por cierto, echate una partidita al StepMania antes de empezar, seguro que te da un par de ideas.
Lo haré, que de momento sólo tengo como referente el de DS. Gracias.

Edito: Vaya, qué largo ha quedado este mensaje. Todo por no responder 4 veces seguidas...

fan_cassidy
28/01/2006, 09:06
Ey!

Te estamos diciendo demasiadas cosas de una vez? jejeje!
Lo de las imagenes tenia pensado no una, sino varias, y si haciertas en la pulsación pues... change image!
Se podrian añadir las que se quisiesen en cada cancion (por eso decia lo de un editor, para facilitar a la gente la creacion de los archivos) y asi pues se te alegra la vista. (Jajajaja! Aber quien es el primero que mete a Carmen Elektra, Tia Carrere, Cameron Diaz... Bwahahah!)
Y nose, el editor podria crear al final un archivo con todo, que es el que podria usar tu programa. Mas o menos:

tipo "RyuForFourPianos.algo" es
- Cancion: mp3, ogg;
- Beat: el tipo de archivo que sea, txt...
- Images: Un vector dinamico con las diferentes imagenes, circular, que el ultimo enlace con el primero y las vaya rotando, por aqui tenemos una Tipo de datos asi implementado, en la uni, me parece que seria util.
end record;

Argh! se nota que estoy estudiando para el examen de tipos de datos abstractos eh!! XD

Por cierto, que tal vas? has empezado?


TheCass

namikata
28/01/2006, 09:10
Ey!

Te estamos diciendo demasiadas cosas de una vez? jejeje!
Lo de las imagenes tenia pensado no una, sino varias, y si haciertas en la pulsación pues... change image!
Se podrian ...

eso me suena a "samba de amigo" ue el fondo era animado en 3D y si la barra subia cambiada de fondo a algunos mas animados y vistosos y si lo hacias mal cambiaba a tristes y apagados, era divertido jugar con las maracas [wei4] y desde luego era original, percisamente por eso, tenias que ver las posturitas que nos gastabamos algunos jugando, que pena no tener un video...

miq01
28/01/2006, 09:17
Te estamos diciendo demasiadas cosas de una vez? jejeje!
Pues sí, pero por eso pedía opinión así que me parece perfecto. Al final voy a acabar implementando el 1% del total (si llega), pero bueno... :)


Lo de las imagenes tenia pensado no una, sino varias, y si haciertas en la pulsación pues... change image!
Lo mismo que decía antes: igual en un futuro sí, pero de momento voy a lo básico.



- Images: Un vector dinamico con las diferentes imagenes, circular, que el ultimo enlace con el primero y las vaya rotando, por aqui tenemos una Tipo de datos asi implementado, en la uni, me parece que seria util.
end record;

Argh! se nota que estoy estudiando para el examen de tipos de datos abstractos eh!! XD
Ya decía yo... Vector circular... Sólo te faltaba mencionar las listas doblemente enlazadas con elemento fantasma... ¡Pero si esto sólo se utiliza en la carrera! :) No, sí que se usa pero parece que a mí no me ha llegado aún el momento, y eso que hace ya unos cuantos años que acabé.


Por cierto, que tal vas? has empezado?
¿El qué? ¿El juego? Sí, sí, está empezado, pero de momento sólo hay el esqueleto (y eso es decir mucho).

fan_cassidy
28/01/2006, 09:28
Vamos a ver, por ejemplo:

Con la cancion (Vale, es un poko asi, pero es la primera que he pillado) "Goldeneye 007 facility (Hacker) OC Remix" de Overclocked Remix, una vez hecho el beat:

1era Imagen:

[img] http://twojb007.tripod.com/images/James%20Bond%20007.jpg

Una vez que aciertes, con cada acierto pasa a:

- http://www.ritilan.com/archives/images/2005/09/Bond.gif
- http://www.hacking.kgb.pl/alien.JPG
- http://www.swisscowboy.ch/Internet/wallpapers/Filme/james%20bond1.jpg
- http://img.photobucket.com/albums/v215/Molondro/gordowei.gif

(Como se ponen las imgenes directamente?!)
Asi tenia pensado, nose.

Pues ala, esto y ya me callo que... jajaja!
Eso sera! Vector circular... esque lo doy en Euskera y viene siendo "ilarak"XD. Te creo que solo se use en la carrera, pero ya ves, lo tengo que estudiar y lo tenia delante y he dicho: Caspita! Si algo de aqui va a ha servir para algo y todo. La carrera casi que para el interes que me suscita lo que hay que estudiar poco creo que vaya a utilizar nunca, porque no le hago ni caso, pero bueno, algo había que estudiar...
Y bueno, si el esqueleto esta, eso SI es decir mucho. Venga, cuatro dias y terminao, que ya tienes lo mas jodido hecho! Animo! ;P


Namikata ---> A mi el invento ese de "Samba de hamigo" ya me suena ya... donde he visto yo eso?
AH! DreamcasT!


TheCass

tomo
28/01/2006, 09:38
Lo de usar XML te lo decía sólo porke es lo ke se ha convertido en estándar para compartir información de este tipo. Además te evitas parsear texto y si en el futuro necesitas hacer cambios estructurales, el uso de etiketas te salvará la vida.
TinyXML es una de tantas bibliotecas para parsear XML, libre y sencilla. Su uso es en plan "dame el valor del siguiente elemento llamado 'cosa'".
Vamos, ke como buen informático, soy un vago, y todo lo ke me ahorre tiempo y disgustos es bienvenido ^.^

EDIT:
(Como se ponen las imgenes directamente?!)Con la etiqueta [ img ]

namikata
28/01/2006, 09:46
tinyxml es una implementacion de un dom xml?

miq01
28/01/2006, 09:48
Lo de usar XML te lo decía sólo porke es lo ke se ha convertido en estándar para compartir información de este tipo. Además te evitas parsear texto y si en el futuro necesitas hacer cambios estructurales, el uso de etiketas te salvará la vida.
TinyXML es una de tantas bibliotecas para parsear XML, libre y sencilla. Su uso es en plan "dame el valor del siguiente elemento llamado 'cosa'".
Vamos, ke como buen informático, soy un vago, y todo lo ke me ahorre tiempo y disgustos es bienvenido ^.^
Vale. Acabo de mirar por encima la documentación y parece muy sencillo. Una pregunta tonta: ¿cómo puedo generar un archivo XML sin hacerlo a pelo con un editor de texto? Me gustaría alguna aplicación a la que pudiera indicarle cuáles son los tags que quiero usar, y a partir de ahí introducir los valores. Me refiero a no tener que crear a mano un archivo parecido a esto:

<SONG="lo que sea">
<BUTTON>L</BUTTON>
<TIME>1000</TIME>
<POSX>160</POSX>
<POSY>120</POSY>
.
.
.
</SONG>

namikata
28/01/2006, 10:11
lo que pides es un interprete de metamodelos, hay algunos de pago, no conozco ninguno libre. Los metamodelos se hacen en xml data o xml schema. es uno de los proyectos mas o menos interesantes que dan vueltas por las empresas de investigacion y desarrollo.

si de verdad crees que le vas a sacar provecho, en eso te puedo echar una mano, siempre que uses windows, o te tire bien el wine xD

el funcionamiento estandar (cada empresa lo implementa al final a su gusto) es el siguiente, tu creas primero el metamodelo (a pelo o en el propio interprete si este lo permite) generalmente un xml data pero puede ser un xml schema, de esto puedo ocuparme yo, si sabes lo que quieres lleva mmmm unos 30 segundo en hacerlo xD es muy facil, despues lo unico que hay que hacer es abrir el programa, cargar el metamodelo que quieres (puedes tener un monton de ellos) y el interprete te genera una interfaz dinamica para que introduzcas los datos segun el metamodelo indicado ( va desde: aqui viene un texto hasta aqui viene un texto que es la edad entre un rango x e y pero solo si en el desplegable de arriba a elegido la opcion 3 y hoy es sabado 29 de febrero), al guardar el documento, se le aplica una plantilla (xml stylesheet) y te genera un archivo a tu gusto

todo esto se resume en: abrir programa, nuevo metamodelo, quiero un grupo que se repite n veces, dentro quiero un texto, le voy a llamar boton, un numero llamado milisegundos, guardar metamodelo

abres el metamodelo con el programa y te aparece una ventana con un cuadro de texto que pone titulo y otro que pone milisegundos, lo llenas y le dices "mas", y ala, otros dos cuadros de texto, cuando te canses, das guardar, donde, que nombre, fin. ya tienes tu archivo xml listo

se puede simplificar mas, y ni que decir tiene que se puede complicar muchisimo mas, generando metametamodelos para que te cree una interfaz con la que generar metamodelos etc y asi hasta volverte loco

solo tendria que rebuscar un poco por los cds pero se lo puedo mandar a mi hermano, luego un par de clicks y listo, si te interesa de verdad tu pide xD

tomo
28/01/2006, 10:21
Sí, TinyXML te crea un DOM, ke en teoría puedes volver a guardar luego en un XML, pero nunca lo he intentado. Debe ser una funcionalidad muy útil xD

miq01
28/01/2006, 10:27
Muchas gracias Namikata. Efectivamente, eso es lo que pido. Lo que me echa para atrás es que no conozcas ningún intérprete libre. Si alguien conoce alguno, usaré XML, pero en caso contrario creo que tiraré de texto sin tags. De hecho, ahora mismo he acabado el parser y funciona, pero es verdad lo que decía Tomo de que si en algún momento quiero cambiar el formato, con XML me ahorraría dolores de cabeza.

namikata
28/01/2006, 10:30
para trabajar con xml un xml es de lo mas comodo, cargas un xml, compruebas si esta bien formado, si es valido, lees sus datos los modificas, realizas un par de transformaciones y lo vuelves a guardar, todo de forma sencilla con un par de objetos. lo malo es el rendimiento, hay otra aproximacion, que se suele utilizar cuando solo vas a leer xml que es sar (creo que es asi ahora no estoy seguro) que lee el xml de forma secuencial y te genera eventos cada vez que encuentra un nodo, es mucho mas rapido pero no permite el manejo de nodos en estructura de arbol como el dom

ains, que me emociono, esto es mucho offtopic ya no xD

ehem,

que, miq01, en lo que nosotros hablamos, has terminado ya el juego o no?, no estaras durmiendo? :rolleyes:

miq01
28/01/2006, 10:39
para trabajar con xml un xml es de lo mas comodo, cargas un xml, compruebas si esta bien formado, si es valido, lees sus datos los modificas, realizas un par de transformaciones y lo vuelves a guardar, todo de forma sencilla con un par de objetos. lo malo es el rendimiento, hay otra aproximacion, que se suele utilizar cuando solo vas a leer xml que es sar (creo que es asi ahora no estoy seguro) que lee el xml de forma secuencial y te genera eventos cada vez que encuentra un nodo, es mucho mas rapido pero no permite el manejo de nodos en estructura de arbol como el dom

ains, que me emociono, esto es mucho offtopic ya no xD
:D Por lo del rendimiento, no sería problema. Tal como lo he implementado, leo el fichero (XML, texto plano, o lo que sea) antes de que empiece a sonar la canción, y relleno un vector con esos datos, así que luego se accede a memoria directamente.


ehem,

que, miq01, en lo que nosotros hablamos, has terminado ya el juego o no?, no estaras durmiendo? :rolleyes:
Jeje... Todavía no está acabado, pero le queda muy poco. :) No, que con lo perro que soy esto me va a llevar un tiempo. Y como ves aún no duermo. La idea era irme a las 4 y mira. Siempre me pasa lo mismo cuando programo. Pero ahora sí, en cinco minutos me voy, que mañana tengo calçotada y me toca "madrugar" (entrecomillado porque me he de levantar a las 12).

namikata
28/01/2006, 10:53
yo usaria xml solo si cumples al menos uno de los siguientes puntos:

- sabes xml, controlas mucho y es muy comodo/rapido para ti
- tienes codigo para proceso de xml y quieres reutilizar
- quieres que tus canciones sean "exportables" o otros programas que usan xml o ficheros de texto plano

sino, no le veo el beneficio, y viendo que antes habias dicho que tenias casi teminado el codigo para procesar los archivos pues la verdad es que usar xml seria algo anecdotico, y oye, que nadie quita que en el futuro no se pueda implementar, lo basico de xml se aprende en 30 minutos (si te lo explican bien) y no exagero...

en cuanto a un interprete libre, pues va a ser que no, si que conozco uno, funciona bastante bien, aunque no implementa todo lo que implementan algunos privados por falta de recursos xD, todavia tiene fallos pero la pega es que por motivos legales no puede salir a la luz hasta el 15 de noviembre y la verdad no se si merece la pena el trabajo

miq01
29/01/2006, 00:07
yo usaria xml solo si cumples al menos uno de los siguientes puntos:

- sabes xml, controlas mucho y es muy comodo/rapido para ti
- tienes codigo para proceso de xml y quieres reutilizar
- quieres que tus canciones sean "exportables" o otros programas que usan xml o ficheros de texto plano
Pues no cumplo ninguna de las tres condiciones... :) Además, como dije ayer, si tuviera el programa para editar ficheros, aún, pero sino... Bueno, al menos de momento lo dejo en texto plano que ya lo parsea bien.

tetsu69
29/01/2006, 03:11
Yo no se que tiene de Ouendan.

Llámalo stepmania (quiza lo mejor sería portarlo), llamalo beatmania, pop n music, etc..pero no lo llames ouendan por que..lo weno que tenia el aouendan era la tactil ***** xD


Por lo demas, un juego estilo bemani seria la *****...pero casi que seria mejor un port del stepmania

fan_cassidy
29/01/2006, 09:07
Que tal va el juego?! Has hecho algo?! Como va?! Que piensa poner al final!? Ya ves, aqui todo ansiao... XDDD

namikata
29/01/2006, 10:16
Que tal va el juego?! Has hecho algo?! Como va?! Que piensa poner al final!? Ya ves, aqui todo ansiao... XDDD

deberias dormi mas :D

yo?
yo ... mmm... soy un bot del foro :D

fan_cassidy
29/01/2006, 10:19
Ya, pero soy insomne y se me han acabado las capsulas de valeriana... y mañana me tendria que levantar temprano a estudiar, pero va a ser que no... Mierda estadistika...

namikata
29/01/2006, 10:20
Ya, pero soy insomne y se me han acabado las capsulas de valeriana... y mañana me tendria que levantar temprano a estudiar, pero va a ser que no... Mierda estadistika...

jo, no poder dormir, que ****** mas gorda, te acompaño en el sentimiento

fan_cassidy
29/01/2006, 10:23
Viene siendo, gracias, ya me siento mas acompañado! XD. Tambien me suele funcionar hecharme un mai o dos, pero como son examenes la sociedad no me deja y... con razon digo que esta es la peor epoca del año! XD.
Y tu que andas? A chopar, a chopar... Y miq1! Levantate y programa! XDDDD

namikata
29/01/2006, 10:33
estaba programando un par de cosillas con xmlen pygame y como no hay casi informacino o a mi me ha costado encontrarla, con un poco de ayuda estaba escribiendo un post de "asistencia al novato" para que no tengan que pasar por lo mismo que yo

estaba pensando en seguir programando algo, pero casi que ahora que he terminado xml no me apetece empezar con algo nuevo asi que lo dejare para mañana siempre puedo echar unos vicios a algun juego :D

fan_cassidy
29/01/2006, 10:43
Weno, weno... que perro, a mi me da apuro ponerme a viciar porque entonces si que no duermo... argh...
Oye, iwal se puede abrir un tema nuevo en le foro en plan "noches de unsomnio", y si te quedas despierto pues posteas lo que te de hasta qye te mueras de la rayada y poner lo que sea y despues hacer un ebook para la gp2x (Exclusivo, ojoXD) para que la gente sepa lo que es y comprarse un pez volador que juegue con la rana gustavo al arkanoid y...

Demasiado teletecho...

Buenas noches! Me voy a leer algo!

namikata
29/01/2006, 10:50
agur, por cierto buena idea lo del post, se verian cosas muy raras... buenas noches xD

miq01
29/01/2006, 19:43
Paciencia que va para largo... De momento es ya capaz de pintar los botones adecuados en el instante adecuado (según se le indica en el fichero). Ahora he de encontrar un algoritmo que dibuje circunferencias más o menos óptimo. Creo que en un tutorial de SDL vi uno, pero no recuerdo dónde. Esas circunferencias representarán la cuenta atrás de la pulsación del botón.

gade
29/01/2006, 19:47
Buenas, no es por salir del tema pero...

Por el principio del post de hablaba de una posibilidad de ir generando las pulsaciones en base a analizar la cancion, bueno algo asin... Bueno me interesa muchisimo el tema para mi futuro juego, si alguien es tan amable de ofrecerme algo de info, algunos links a textos o sources, o alguna biblioteca para poder interactuar el juego con el audio.

Gracias :brindis:

miq01
29/01/2006, 20:00
Buenas, no es por salir del tema pero...

Por el principio del post de hablaba de una posibilidad de ir generando las pulsaciones en base a analizar la cancion, bueno algo asin... Bueno me interesa muchisimo el tema para mi futuro juego, si alguien es tan amable de ofrecerme algo de info, algunos links a textos o sources, o alguna biblioteca para poder interactuar el juego con el audio.

Gracias :brindis:
OldPlay analiza el sonido porque pinta (http://www.gp32spain.com/archivos/screen095_9LX_thumb.png) las típicas barras de frecuencias (¿son frecuencias?). Si está disponioble el código fuente, le podrías echar un vistazo.

kekoponte
29/01/2006, 20:05
Sobre la música:
tenemos una net-label formada desde hace bastante tiempo, se llama La Trastienda (http://www.trastienda.org) ahí puedes encontrar música libre a patadas, o bien, si me muestras el estilo del juego, puedo hacer algo en concreto.

miq01
29/01/2006, 20:09
Sobre la música:
tenemos una net-label formada desde hace bastante tiempo, se llama La Trastienda (http://www.trastienda.org) ahí puedes encontrar música libre a patadas, o bien, si me muestras el estilo del juego, puedo hacer algo en concreto.
Ostras, al final hay mucho donde elegir. Muchas gracias. ¿Hay todo tipo de música?