4.4 KiB
Herramientas de StepMania DDR
Este repositorio contiene dos herramientas útiles para trabajar con fichreos de StepMania DDR (Dance Dance Revolution):
📋 Tabla de Contenidos
🔨 StepMania Simplifier
¿Qué hace?
stepmania_simplifier.py es una herramienta con interfaz gráfica (GUI) que permite simplificar ficheros sm de StepMania existentes. Es perfecta para:
- Crear versiones más fáciles de un gráfico base
- Reducir la dificultad eliminando patrones complejos
- Generar nuevas dificultades automáticamente a partir de una existente
Características
La herramienta permite:
-
Eliminar notas rápidas: Manteniendo o no además un porcentaje de ellas.
-
Eliminar saltos: Opción para eliminar notas simultáneas (jumps)
-
Simplificar patrones: Convertiendo holds largos en notas normales
-
Crear nueva dificultad: La dificultad simplificada se guarda como una nueva dificultad con un nombre personalizado
Dependencias
- Tkinter, incluida en Python en casi todos los casos.
Cómo usar
-
Abre la aplicación:
-
Selecciona un archivo
.sm(click en "Examinar") -
El programa analizará automáticamente el archivo y mostrará las dificultades disponibles
-
Elige la dificultad base desde el dropdown "Chart Base"
-
Configura las opciones de simplificación según tus necesidades
-
Define el nombre para la nueva dificultad
-
Click en "Generar Versión Simplificada"
-
El archivo se guardará con la nueva dificultad añadida
🎵 StepMania SM Generator
¿Qué hace?
stepmania_sm_generator.py es un generador automático de ficheros de StepMania a partir de archivos de audio. Analiza la música y genera automáticamente los steps (pasos) con dificultades variables.
Características
- Detección automática de BPM (tempo)
- Detección de beats y downbeats
- Detección de onsets (cambios musicales)
- Análisis espectral para posicionamiento inteligente de flechas
- Generación de múltiples niveles de dificultad (Beginner → Challenge)
- Conversión automática de audio a MP3 y videos a MP4 sin audio
Dependencias
Requeridas:
pip install librosa numpy soundfile
⚠️ Dependencia Opcional madmom, recomendada:
La detección de BPM es MUCHO más precisa con madmom. Sin madmom, el programa usa librosa que puede equivocarse con géneros sincopados (reggaeton, trap, etc.)
Para Python > 3.9, instala desde el repositorio de GitHub:
pip install git+https://github.com/CPJKU/madmom.git
Para Python 3.8 o anterior:
pip install madmom
Sistema:
- ffmpeg: Necesario para decodificar audio y video
- Ubuntu/Debian:
sudo apt install ffmpeg - macOS:
brew install ffmpeg - Windows: Descarga desde https://ffmpeg.org/download.html
- Ubuntu/Debian:
Cómo usar
-
Selecciona un archivo de audio (MP3, WAV, OGG, FLAC, etc.)
-
Selecciona un archivo de vídeo (Opcional)
-
El programa:
- Analiza automáticamente el audio
- Detecta el BPM y beats
- Genera los steps para múltiples dificultades
- Convierte archivos de video si es necesario
- Genera el archivo
.smfinal
🎯 Notas Importantes sobre BPM
El BPM correcto es fundamental para la calidad del gráfico generado. Si el programa no lo reconoce correctamente:
¿Por qué es importante el BPM?
- Un BPM incorrecto hace que los beats no sincronicen con la música
- Los steps quedarán desalineados
- El gráfico será injugable
¿Qué hacer si el BPM es incorrecto?
-
Verificar el BPM manualmente usando herramientas web:
- BPM Detector Online
- Spotify - Ver detalles de la canción
- Tunebat - Detecta BPM de canciones
-
Editar el BPM manualmente: Añádelo en la GUI en el apartado de forzar BPM
🐛 Solución de Problemas
"ffmpeg not found"
- Linux:
sudo apt install ffmpeg - macOS:
brew install ffmpeg - Windows: Descarga e instala desde https://ffmpeg.org/
BPM detectado incorrectamente
- Asegúrate de tener madmom instalado
- Verifica manualmente el BPM usando herramientas web
- Edita el BPM en la GUI antes de hacer el proceso.
📝 Licencia
Estas herramientas fueron creadas para trabajar con ficheros de StepMania DDR (.sm).