Skip to content

Skin Sprite Name ​

While you can use any arbitrary string for skin sprite name, there are standardized skin sprite names that every skin is required to implement.

This requirement allows skins to be usable across different engines, and engines to be playable with other skins.

Standardized Names ​

NameResizing
#NOTE_HEAD_NEUTRAL
#NOTE_HEAD_RED
#NOTE_HEAD_GREEN
#NOTE_HEAD_BLUE
#NOTE_HEAD_YELLOW
#NOTE_HEAD_PURPLE
#NOTE_HEAD_CYAN
#NOTE_TICK_NEUTRAL
#NOTE_TICK_RED
#NOTE_TICK_GREEN
#NOTE_TICK_BLUE
#NOTE_TICK_YELLOW
#NOTE_TICK_PURPLE
#NOTE_TICK_CYAN
#NOTE_TAIL_NEUTRAL
#NOTE_TAIL_RED
#NOTE_TAIL_GREEN
#NOTE_TAIL_BLUE
#NOTE_TAIL_YELLOW
#NOTE_TAIL_PURPLE
#NOTE_TAIL_CYAN
#NOTE_CONNECTION_NEUTRALVertical
#NOTE_CONNECTION_REDVertical
#NOTE_CONNECTION_GREENVertical
#NOTE_CONNECTION_BLUEVertical
#NOTE_CONNECTION_YELLOWVertical
#NOTE_CONNECTION_PURPLEVertical
#NOTE_CONNECTION_CYANVertical
#NOTE_CONNECTION_NEUTRAL_SEAMLESSVertical
#NOTE_CONNECTION_RED_SEAMLESSVertical
#NOTE_CONNECTION_GREEN_SEAMLESSVertical
#NOTE_CONNECTION_BLUE_SEAMLESSVertical
#NOTE_CONNECTION_YELLOW_SEAMLESSVertical
#NOTE_CONNECTION_PURPLE_SEAMLESSVertical
#NOTE_CONNECTION_CYAN_SEAMLESSVertical
#SIMULTANEOUS_CONNECTION_NEUTRALHorizontal
#SIMULTANEOUS_CONNECTION_REDHorizontal
#SIMULTANEOUS_CONNECTION_GREENHorizontal
#SIMULTANEOUS_CONNECTION_BLUEHorizontal
#SIMULTANEOUS_CONNECTION_YELLOWHorizontal
#SIMULTANEOUS_CONNECTION_PURPLEHorizontal
#SIMULTANEOUS_CONNECTION_CYANHorizontal
#SIMULTANEOUS_CONNECTION_NEUTRAL_SEAMLESSHorizontal
#SIMULTANEOUS_CONNECTION_RED_SEAMLESSHorizontal
#SIMULTANEOUS_CONNECTION_GREEN_SEAMLESSHorizontal
#SIMULTANEOUS_CONNECTION_BLUE_SEAMLESSHorizontal
#SIMULTANEOUS_CONNECTION_YELLOW_SEAMLESSHorizontal
#SIMULTANEOUS_CONNECTION_PURPLE_SEAMLESSHorizontal
#SIMULTANEOUS_CONNECTION_CYAN_SEAMLESSHorizontal
#DIRECTIONAL_MARKER_NEUTRAL
#DIRECTIONAL_MARKER_RED
#DIRECTIONAL_MARKER_GREEN
#DIRECTIONAL_MARKER_BLUE
#DIRECTIONAL_MARKER_YELLOW
#DIRECTIONAL_MARKER_PURPLE
#DIRECTIONAL_MARKER_CYAN
#SIMULTANEOUS_MARKER_NEUTRAL
#SIMULTANEOUS_MARKER_RED
#SIMULTANEOUS_MARKER_GREEN
#SIMULTANEOUS_MARKER_BLUE
#SIMULTANEOUS_MARKER_YELLOW
#SIMULTANEOUS_MARKER_PURPLE
#SIMULTANEOUS_MARKER_CYAN
#STAGE_MIDDLEBoth
#STAGE_LEFT_BORDERVertical
#STAGE_RIGHT_BORDERVertical
#STAGE_TOP_BORDERHorizontal
#STAGE_BOTTOM_BORDERHorizontal
#STAGE_LEFT_BORDER_SEAMLESSVertical
#STAGE_RIGHT_BORDER_SEAMLESSVertical
#STAGE_TOP_BORDER_SEAMLESSHorizontal
#STAGE_BOTTOM_BORDER_SEAMLESSHorizontal
#STAGE_TOP_LEFT_CORNER
#STAGE_TOP_RIGHT_CORNER
#STAGE_BOTTOM_LEFT_CORNER
#STAGE_BOTTOM_RIGHT_CORNER
#LANEVertical
#LANE_SEAMLESSVertical
#LANE_ALTERNATIVEVertical
#LANE_ALTERNATIVE_SEAMLESSVertical
#JUDGMENT_LINEHorizontal
#NOTE_SLOT
#STAGE_COVERBoth
#GRID_NEUTRALBoth
#GRID_REDBoth
#GRID_GREENBoth
#GRID_BLUEBoth
#GRID_YELLOWBoth
#GRID_PURPLEBoth
#GRID_CYANBoth

Resizing ​

For skin sprites with specified resizing, they are expected to remain presentable when stretch to arbitrary size in resizing directions.

Seamless ​

Engines may use the seamless variants of skin sprites to create more complex graphics by joining multiple segments together, thus seamless variants are expected to remain presentable when used in such a manner.