Un ejemplo de las secuencias de comandos en un archivo .osb.
Esta guía describe las líneas de código de las secuencias de comandos que se colocan en el archivo .osb o .osu, en [Events]
. Los comandos en el archivo .osb para el beatmap aparecerán en todas las dificultades, mientras que los que aparecen en el archivo .osu solo aparecerán en esa dificultad determinada.
Para los objetos en osu! y el beatmapping, véase: Objetos
Un objeto de un storyboard es una instancia de un sprite o una animación en un storyboard. Los storyboards también pueden tener sonido; consulta la guía de audio para obtener más detalles.
Los formatos aceptados para los objetos son PNG y JPEG. JPEG tiene pérdidas, lo que significa que el tamaño del archivo es menor, pero no guarda con precisión cada píxel. Tampoco es compatible con la transparencia. Por lo tanto, es bueno para fondos y para imágenes cuadradas o fotorrealistas. PNG no tiene pérdidas, lo que significa que retiene información píxel por píxel, pero tiene un tamaño de archivo mayor que JPEG. Admite transparencias, por lo que suele ser el mejor para objetos/texto en primer plano.
Las animaciones se realizan en el propio motor, por lo que no debe usarse el sistema de capas PNG ni las funciones de animación. En su lugar, guarda cada fotograma como un archivo separado y nombra los archivos con un número decimal antes de la extensión (por ejemplo, «sample0.png», «sample1.png» para una animación de 2 cuadros «sample.png»).
Tamaño de la pantalla del editor. El verde es el tamaño de la pantalla y el rojo es el área de juego
La pantalla del editor es de 640 x 480 píxeles y el área de juego general es de 510 x 385 píxeles.
Las coordenadas se especifican con valores positivos para X
que van hacia la derecha, valores positivos para Y
que van hacia abajo y el origen (0,0) se coloca en la esquina superior izquierda de la pantalla. Es posible especificar coordenadas para que estén fuera de estos límites (por ejemplo, para que un objeto entre desde fuera de la pantalla).
Coordenadas del editor:
Pantalla | x | y |
---|---|---|
Editor | 0-640 | 0-480 |
Área de juego | 60-570 | 55-440 |
Todos los sprites del storyboard se colocan debajo de la skin y los objetos. Por lo tanto, incluso la capa «más alta» (primer plano) en el storyboard siempre estará detrás de la barra de HP, los círculos/sliders/spinners, el cursor, etc.
Estas son las cuatro capas de un storyboard, en orden creciente de prioridad:
Ten en cuenta que las capas «Fail» y «Pass» nunca aparecen en la pantalla simultáneamente, a diferencia de lo que ocurre en la pestaña de diseño.
De forma predeterminada, el fondo de vista previa (el fondo visible en el selector de canciones) especificado para el beatmap se coloca debajo de todas las demás capas. Sin embargo, si se hace referencia a ese mismo archivo como un objeto en el storyboard, desaparecerá inmediatamente después de que se cargue el beatmap. Es común tener el fondo de vista previa del beatmap como el primer objeto especificado (en términos de tiempo y de sprites) y usar el comando «fade out» (iluminar) para «presentar» el fondo a la audiencia.
La idea detrás de usar un storyboard en lugar de un archivo de vídeo es la capacidad de cambiar elementos dinámicamente para adaptarlos a las circunstancias del juego. osu! solo muestra una de las capas Fail/Pass a la vez, dependiendo del rendimiento del jugador. Estos estados se les llaman «estado Fail» y «estado Pass».
Los estados antes del primer tiempo de juego (por ejemplo, antes del primer círculo/slider/spinner, no necesariamente antes de que comience el MP3/OGG):
Los estados durante el tiempo de juego («tiempo de drenaje», cuando se espera que el jugador haga clic en los objetos para evitar que se vacíe su barra de HP):
Estados durante el tiempo de descanso (entre segmentos de tiempo de juego):
Los estados después del último tiempo de juego, si el beatmap tuvo al menos un descanso:
Los estados después del último tiempo de juego, si el beatmap no tuvo descansos:
Usa CTRL+C para copiar la marca de tiempo.
.mp3
/.ogg
), incluidos los valores negativos para indicar una introducción.Skip
. Al hacer clic en él o al presionar Barra espaciadora
saltará al tiempo 0. El juego vuelve al comportamiento normal de salto previo al mapa (por ejemplo, presionar Skip
nuevamente para ir directamente a la cuenta regresiva, a diferencia de Elite Beat Agents, donde reiniciar el beatmap lleva al jugador hasta el inicio, no hasta el tiempo 0).Skip
o presione Barra espaciadora
.
Ctrl
+ C
para copiar el tiempo actual al portapapeles.Se pueden agregar comentarios de estilo C de una sola línea, pero ten en cuenta que pueden eliminarse si el beatmap se guarda en el editor del juego. De forma predeterminada, hay algunos que sugieren la separación de comandos en cuatro capas.
// Este es un comentario.
A diferencia de C/C++/C#/Java, los comentarios no se pueden colocar en una línea después de un comando válido. Los comentarios en bloque tampoco están disponibles.