OSHU(1)

NAME
oshu - Fast port of the osu! rhythm game

SYNOPSIS
oshu [OPTION]... BEATMAP.osu

DESCRIPTION

Play a .osu beatmap file. Most linked files are automatically found from the data inside the beatmap file.

On startup, oshu moves to the real directory of the beatmap, where it expects to find the audio file. This lets you symlink your .osu files without bothering with the related audio and picture files. In more technical terms, symbolic terms are dereferenced.

.osz files are not supported, but since they're just fancy ZIP files, you just have to unzip them into a sub-directory. Be careful though, it won't create the sub-directory by itself if you naively unzip it.

-v, --verbose
    Increase the verbosity. This will print more informational messages, which may contain useful information for understanding errors when fixing issues. Mention it twice and you'll get debugging messages. Thrice at your own risks.

-h, --help
    Show a brief help message and exit.

--version
    Output version information and exit.

--autoplay
    Perform a perfect run on the beatmap without any user interaction.

--pause
    Start the game in a paused state. Might be useful when you're starting the game from a terminal as you won't be holding your mouse when the game starts.

CONTROLS

The game is controlled from the keyboard and mouse. The keys are based on osu!'s default settings, and rely on the physical position on a QWERTY keyboard. If you use a different keyboard layout, the keys are going to be at the same position, even if the letters are different.

  Standard mode

Here are the official keys for the osu!standard mode:

Z, X, mouse click
    Hit an object.

  Common keys

The following keys are common to all modes:

Escape
    Toggle pause.

Page up
    Rewind the song by 10 seconds, and leave a 1-second break.

Page down
    Forward the song by 20 seconds.

  Pause

When the game is paused, your local keyboard layout is used. These keys also apply to the score screen at the end.

Q   Quit the game.

SKINS

The default sound effects played when hit objects are hit are defined by the skin in osu! terminology. A skin directory contains a collection of .wav files, like normal-hitnormal.wav, or soft-hitwhistle.wav.

All the sample files are optional. If a beatmap refers to a missing sample, nothing is played.

The skins are located at @OSHU_SKINS_DIRECTORY@. The default skin is @OSHU_DEFAULT_SKIN@. These values are configured at build time, but you may alter the skins directory and the default symlink inside it to change these settings.

On invocation, a non-default skin may be selected with the OSHU_SKIN environment variable. If it contains a skin name, like minimal, it is searched for inside the skins directory. You may also specify an absolute path. When OSHU_SKIN is incorrect or refers to an unknown skin, oshu! falls back to the default skin. You can use the --verbose flag to debug it.

CONFIGURATION

oshu! currently doesn't read a configuration file, but reads the environment. You may configure oshu! from your .bashrc, or by creating a wrapper script exporting your variables.

Here's the list of supported environment variables:

OSHU_WINDOW_SIZE
    This variable specifies the default window size when the game start. Its value must conform to the format 960x720, where 960 is the width in pixels, and 720 the height in pixels. When omitted or invalid, the game starts with a fallback default size of 960x720.

OSHU_QUALITY
    This variables controls the visual effects and other rendering quality settings. It may take one of low, medium, and high. The default is high.

OSHU_SKIN
    Refer to the SKINS section above.

AUTHOR
Written by Frédéric Mangano-Tarumi <fmang+oshu at mg0 fr>.

BUGS
Report bugs at <https://github.com/fmang/oshu/issues>.