Tutorial Music Tracker: tu primera melodía chiptune en JARU IDE
El Music Tracker de JARU IDE te deja componer la música de tu juego sin salir del entorno, igual que el código o los sprites. Este tutorial recorre el camino completo con capturas: partir de una plantilla, escribir notas en la rejilla, retocar un instrumento, escuchar el resultado y dejarlo listo para que tu programa lo reproduzca.
Lo que vas a construir
Una melodía corta con cuatro canales de tono y un canal de ruido, guardada dentro de tu proyecto y compilada a un recurso que la VM de JARU puede cargar. Suena así:
No es una grabación de altavoces: son las muestras exactas que genera el motor de sonido de JARU.
Lo que necesitas
- JARU IDE instalado (guía de instalación).
- Un proyecto abierto. Si todavía no tienes ninguno, la página de Proyectos explica cómo crearlo.
No hace falta saber solfeo ni tener teclado MIDI: se escribe con las teclas del ordenador.
Paso 1: Abrir el Music Tracker
En la pestaña Home de la cinta, pulsa Music.

Se abre el Music Editor, vacío si el proyecto todavía no tiene canciones.
Paso 2: Crear la canción a partir de una plantilla
Pulsa New en la barra del editor.

El IDE te ofrece cuatro puntos de partida: una canción vacía, un ritmo básico de 4/4, un riff de melodía chiptune y un tema de combate. Elige Chiptune lead y pulsa OK.

Empezar por una plantilla ahorra el trabajo más ingrato: ya trae los instrumentos definidos, el tempo puesto y una estructura que suena desde el primer momento. Partir de Empty es perfectamente válido, pero entonces tendrás que crear los instrumentos a mano antes de oír nada.
Ponle nombre al fichero. En este tutorial se llama Melody.
El IDE crea Melody.jms dentro de la carpeta Music de tu proyecto y lo añade al explorador.
Paso 3: Reconocer las cinco zonas
El editor se divide en cinco áreas y merece la pena identificarlas antes de tocar nada.

- Ajustes de canción. Tempo en milisegundos, volumen general, cuántos ticks dura cada fila y si la canción se repite en bucle.
- Rejilla de patrones. El corazón del tracker: una fila por paso de tiempo y un bloque de columnas por canal.
- Teclado virtual. Muestra qué tecla del ordenador corresponde a cada nota.
- Instrumentos. La tabla de sonidos que pueden usar las notas.
- Barra de estado. Dónde está el cursor, qué nota hay debajo, el tempo y los vúmetros de cada canal.
Justo debajo de los ajustes tienes la lista de atajos, que conviene tener a mano: F5 reproduce, F8 para, F9 valida, Ctrl+S guarda, Ins añade una fila y Shift+Supr la borra.
Paso 4: Leer la rejilla
La música se lee de arriba abajo. Cada fila es un instante y cada canal ocupa cuatro columnas.

- Número de fila. El paso de tiempo. Con
Row ticksa 6 y el tempo a 72 ms, cada fila dura 432 ms. - Note. La nota, como
C-4(do de la cuarta octava).OFFcorta la que estuviera sonando. - Inst. Qué instrumento de la tabla la toca.
- Vol. Volumen de esa nota concreta.
- Dur. Cuánto dura, si quieres que se aparte de lo normal.
- Cmd. Comandos de la canción. Fíjate en el
TEMPO 72de la primera fila y en elENDde la última, que marca el final.
Hay cuatro canales de tono y uno de ruido, para percusión. Las casillas M y S de cada cabecera silencian ese canal o lo dejan sonar en solitario, que es la forma rápida de aislar una línea mientras la editas.
Paso 5: Escribir notas
Para escribir con el teclado hay que activar antes el modo de grabación: pulsa REC. La barra de estado lo confirma.

Ahora haz un solo clic en una casilla vacía de la columna Note y pulsa una letra. El teclado virtual del paso 3 lleva serigrafiado el mapa: la fila Z X C V B N M toca do re mi fa sol la si en la octava base, la fila Q W E R T Y U hace lo mismo una octava más arriba, y las teclas negras están en S D G H J y 2 3 5 6 7.
Cada nota que escribes baja el cursor a la fila siguiente, así que puedes encadenar una melodía sin tocar el ratón.
En el ejemplo se han añadido dos notas al canal del bajo, en las filas 002 y 006, para que alterne entre dos octavas:

Si haces clic en una casilla que ya estaba seleccionada, se abre el editor de texto de la celda y la letra entra tal cual, como carácter. La casilla se queda con un valor inválido, subrayado en rojo:

Se arregla seleccionando la casilla y pulsando Supr, que la vacía. Un clic selecciona; dos abren el editor.
En la barra de estado conviven dos números distintos: Input oct es la octava en la que escribes, y Piano view es la que está mostrando el teclado virtual. El selector Piano de la barra de herramientas solo mueve la vista; no cambia lo que se escribe. Si una nota entra una octava más arriba de lo que esperabas, mira Input oct, no el teclado.
Paso 6: Validar
Pulsa F9 en cualquier momento para comprobar la canción. Si algo está mal, el IDE dice cuántas casillas fallan y las deja subrayadas en rojo para que las encuentres.
Cuando está todo correcto no aparece ningún diálogo: la barra de estado indica que la canción es válida y cuánto ocupa compilada.
Ese tamaño es el del recurso final. Una melodía completa cabe en unos cientos de bytes, que es justo la gracia de un tracker frente a un MP3.
Paso 7: Retocar un instrumento
Selecciona una fila de la tabla Instruments y pulsa Edit.

- Preset. Punto de partida a partir de los instrumentos General MIDI.
- Nombre, tipo y onda.
tonepara notas ynoisepara percusión; la onda puede ser cuadrada, triangular, diente de sierra, pulso o senoidal. - Oscilador. El volumen del instrumento y el
duty, que cambia el color del pulso. - Envolvente. El ataque, decaimiento, sostenido y release en milisegundos, con la gráfica al lado.
- LFOs. Vibrato, PWM y trémolo. El de vibrato se ajusta arrastrando sobre la banda: arriba y abajo cambia la profundidad, izquierda y derecha la velocidad.
- Previsualización. Un teclado para probar el instrumento ahí mismo, junto a los botones Test y Stop.
Un cambio pequeño que se nota mucho: dale release al instrumento Pulse. Escribe 120 en Rel ms y la nota dejará de cortarse en seco al soltarla.
Pulsa OK para volver a la canción.
Paso 8: Escuchar la canción
Pulsa F5. La fila que está sonando se resalta en verde y los vúmetros de la barra de estado se mueven canal por canal.

- El botón de reproducción, equivalente a
F5.F6pausa yF8para. - Los vúmetros y el indicador de reproducción, con la frecuencia de muestreo a la que está sonando.
Si quieres repetir solo un trozo mientras lo ajustas, selecciona esas filas y pulsa Ctrl+F5.
Paso 9: Guardar y compilar
Guarda con Ctrl+S. El asterisco del nombre de la pestaña desaparece cuando no quedan cambios pendientes.
Al compilar el proyecto, el IDE convierte tu Music/Melody.jms en Build/Flash/Music/Melody.jmu. El .jms es el fichero editable, con el que seguirás trabajando; el .jmu es el binario compacto que carga la VM. Nunca tienes que generarlo a mano.
Paso 10: Reproducirla desde el juego
Con el recurso compilado, sonar es cuestión de unas pocas líneas:
use Sound
Sound.init()
Sound.setMusicVolume(185)
if (Sound.loadMusic("Music/Melody.jmu")) then
Sound.playMusic(true)
end
El true de playMusic activa el bucle. Para pararla, Sound.stopMusic().
Ajusta el volumen con Sound.setMusicVolume y no subiendo el volumen de cada nota en la rejilla. Así mantienes el equilibrio entre canales y puedes bajar la música entera cuando suene un efecto de sonido.
Desafío extra
Con la canción ya sonando, prueba a hacerla tuya:
- Cambia las notas del canal de la melodía y deja el bajo como está.
- Silencia canales con M para oír cada línea por separado.
- Baja el
Tempo (ms)a 60 y súbelo a 90 para ver cuánto cambia el carácter. - Añade percusión en el canal de ruido con el instrumento
Snare. - Duplica un instrumento con Dup y cámbiale la onda de
pulseasaw. - Prueba las otras tres plantillas para ver cómo están montadas por dentro.
Resumen
En este tutorial has creado una canción desde una plantilla, has aprendido a leer la rejilla de patrones, a escribir notas con el modo REC y el teclado del ordenador, a validar la canción con F9, a retocar la envolvente de un instrumento y a reproducirla desde tu programa con Sound.loadMusic y Sound.playMusic.
Para profundizar, tienes la referencia completa del Music Tracker —formato .jms, tabla de comandos e importación MIDI— y la del módulo Sound.