Go to file
Jeffrey Han ec90d6fd03 Beatmap downloader improvements and fixes.
Updates:
- Added some buttons to downloads menu: clear inactive downloads, import beatmaps, reset search, and show/hide unranked maps.
- Small changes to OsuParser, OszUnpacker, and OsuGroupList (mostly adding return values) to allow parsing only newly unpacked beatmaps.
- Added alpha fade hover effect to MenuButton, as an alternative to expanding (used for 3-part menu buttons).
- Added text rendering fields to MenuButton (also for the 3-part menu buttons).
- Added sound effects to downloads menu.

Fixes:
- Check downloads for illegal filename characters, and remove them if necessary.
- The number of results and downloads shown now supports all resolutions.
- Confirmation dialog no longer appears when restarting the application (since downloads are static).
- Do not set a focus node immediately if the theme song will be played.
- Always play the theme song if no songs are loaded (even if disabled in settings).

Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
2015-02-02 00:15:16 -05:00
res Implemented an internal beatmap downloader (using Bloodcat). 2015-02-01 02:10:17 -05:00
src/itdelatrisu/opsu Beatmap downloader improvements and fixes. 2015-02-02 00:15:16 -05:00
tools Automated the fat jar creation process. 2015-01-12 21:05:58 -05:00
.gitignore Save game scores to an SQLite database. [Incomplete!] 2015-01-28 03:47:24 -05:00
CREDITS.md Implemented skinnable theme songs. 2014-12-20 18:17:04 -05:00
LICENSE Initial commit. 2014-06-29 22:17:04 -04:00
pom.xml Implemented an internal beatmap downloader (using Bloodcat). 2015-02-01 02:10:17 -05:00
README.md Implemented an internal beatmap downloader (using Bloodcat). 2015-02-01 02:10:17 -05: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

Precompiled binaries for opsu! can be found on the releases page, with the latest builds at the top.

Java Setup

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

Beatmaps

opsu! requires beatmaps to run, which are available for download on the osu! website and mirror sites such as osu!Mirror or Bloodcat. Beatmaps can also be downloaded directly through opsu! in the downloads menu.

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 SongPacks 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

opsu! is distributed as a Maven project.

  • To run the project, execute the Maven goal compile exec:exec.
  • To create a single executable JAR file, execute the Maven goal install -Djar. This will link the LWJGL native libraries using a modified version of JarSplice, which is included in the tools directory in both its original and modified forms. The resulting file will be located in target/opsu-${version}-runnable.jar.

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.