Go to file
Jeffrey Han 83c475cdc1 Java Sound crash fixes for Linux. (issue #1)
- Explicitly supply the AudioFormat when creating a Clip.
- Disable Master Gain if unsupported (e.g. in PulseAudio).
- Do not try to play uninitialized sounds (e.g. LineUnavailableException during creation, seems to happen regularly with PulseAudio).

Other changes:
- Errors replaced with debugs in 'getTrackLength()' if audio fields inaccessible.
- Do not log ThreadDeath exceptions (it's a known issue, and only clutters the log file).

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2014-07-08 00:42:50 -04:00
lib Added a module for unpacking OSZ archives. 2014-07-06 01:58:44 -04:00
native Initial commit. 2014-06-29 22:17:04 -04:00
res Added support for default playfield image and an override option. 2014-07-03 01:05:23 -04:00
src/itdelatrisu/opsu Java Sound crash fixes for Linux. (issue #1) 2014-07-08 00:42:50 -04:00
tools Initial commit. 2014-06-29 22:17:04 -04:00
.gitignore Added initial support for loading user skins. 2014-07-02 01:53:42 -04:00
build.xml Minor follow-up to d9c251e. 2014-07-06 02:27:53 -04:00
CREDITS.md Added support for default playfield image and an override option. 2014-07-03 01:05:23 -04:00
LICENSE Initial commit. 2014-06-29 22:17:04 -04:00
README.md Added a module for unpacking OSZ archives. 2014-07-06 01:58:44 -04:00

opsu!

opsu! is an unofficial open-source client for osu!, a rhythm game based on popular commercial games such as Ouendan and Elite Beat Agents.

opsu! is written in Java using Slick2D and LWJGL, wrappers around the OpenGL and OpenAL libraries.

Getting Started

Java Setup

The Java Runtime Environment (JRE) must be installed in order to run opsu!. The download page can be found here.

Beatmaps

opsu! also requires beatmaps to run, which are available for download on the osu! website and mirror sites such as osu!Mirror or Bloodcat.

If osu! is already installed, this application will attempt to load songs directly from the osu! program folder. Otherwise, place songs in the generated Songs folder or set the BeatmapDirectory value in the generated configuration file to the path of the root song directory.

Note that beatmaps are typically delivered as OSZ files. These can be extracted with any ZIP tool, and opsu! will automatically extract them into the songs folder if placed in the root directory.

First Run

The Music Offset value will likely need to be adjusted when playing for the first time, or whenever hit objects are out of sync with the music. This and other game options can be accessed by clicking the wrench icon in the song menu.

Building

The LWJGL native libraries must be linked and distributed with this application. JarSplice is included in the tools directory to merge the files into a single executable fat jar for distribution.

Credits

This software was created by Jeffrey Han (@itdelatrisu). All game concepts and designs are based on work by osu! developer Dean Herbert. Other credits can be found here.

License

This software is licensed under GNU GPL version 3. You can find the full text of the license here.