Skip to content

Dancing visualizer of osu! standard maps and custom osu! client written in Go. Also a generator for osu! videos.

License

Notifications You must be signed in to change notification settings

datenshicommunity/danser-go

 
 

Repository files navigation

danser-go

GitHub release CodeFactor Discord server

danser-go is a CLI visualisation tool for osu!standard maps.

As danser is in development phase, some things may break. If that happens please fill an issue with as much detail as possible.

WARNING: Because of MacOS' poor OpenGL support, danser-go won't run on that platform. Please use dual-booted Windows/Linux instead.

Examples

Running Danser

You can download the newest Windows/Linux 64-bit binaries from releases.

After unpacking it to your desired directory, you need to run it using a command-line application/terminal:

Windows cmd:
danser <arguments>
Linux / Unix / git bash / Powershell:
./danser <arguments>

If you try to run Danser without any arguments there's a surprise waiting for you ;)

Run arguments

  • -artist="NOMA" or -a="NOMA"
  • -title="Brain Power" or -t="Brain Power"
  • -difficulty="Overdrive" or -d="Overdrive"
  • -creator="Skystar" or -c="Skystar"
  • -md5=hash - overrides all map selection arguments and attempts to find .osu file matching the specified MD5 hash
  • -id=433005 - overrides all map selection arguments and attempts to find .osu file with matching BeatmapID (not BeatmapSetID!)
  • -cursors=2 - number of cursors used in mirror collage
  • -tag=2 - number of cursors in TAG mode
  • -speed=1.5 - music speed. Value of 1.5 is equal to osu!'s DoubleTime mod
  • -pitch=1.5 - music pitch. Value of 1.5 is equal to osu!'s Nightcore pitch. To recreate osu!'s Nightcore mod, use with speed 1.5
  • -settings=name - settings filename - for example settings-name.json instead of settings.json
  • -debug - shows additional info when running Danser, overrides Graphics.DrawFPS setting
  • -play - play through the map in osu!standard mode
  • -skip - skips map's intro like in osu!
  • -start=20.5 - start the map at a given time (in seconds)
  • -end=30.5 - end the map at the given time (in seconds)
  • -knockout - knockout mode
  • -record - Records danser's output to a video file. Needs a globally accessible ffmpeg installation.
  • -out=abcd - overrides -record flag, records to a given filename instead of auto-generating it. Extension of the file is set in settings. When the -ss flag is used, this sets the output filename as well.
  • -replay="path_to_replay.osr" or -r="path_to_replay.osr" - plays a given replay file. Be sure to replace \ with \\ or /. Overrides all map selection arguments
  • -mods=HDHR - displays the map with given mods. This argument is ignored when -replay is used
  • -skin - overrides Skin.CurrentSkin in settings
  • -cs, -ar, -od, -hp - overrides maps' difficulty settings (values outside of osu!'s normal limits accepted)
  • -nodbcheck - skips updating the database with new, changed or deleted maps
  • -noupdatecheck - skips checking GitHub for a newer version of danser
  • -ss=20.5 - creates a screenshot at the given time in .png format
  • -quickstart - skips intro (-skip flag), sets LeadInTime and LeadInHold to 0.

Since danser 0.4.0b artist, creator, difficulty names and titles don't have to exactly match the .osu file.

Examples which should give the same result:

<executable> -d="Overdrive" -tag=2 //Assuming that there is only ONE map with "Overdrive" as its difficulty name

<executable> -t="Brain Power" -d="Overdrive" -tag=2

<executable> -t "Brain Power" -d Overdrive -tag 2

<executable> -t="ain pow" -difficulty="rdrive" -tag=2

<executable> -md5=59f3708114c73b2334ad18f31ef49046 -tag=2

Settings and knockout usage are detailed in the wiki.

Building the project

You need to clone it or download as a .zip (and unpack it to desired directory)

Prerequisites

Building and running the project

First, enter the cloned/downloaded repository.

When you're running it for the first time or if you made any changes type:

go build

This will automatically download and build needed dependencies.

Afterwards type:

./danser-go <arguments>

Credits

Software created by Sebastian Krajewski (@Wieku) and contributors

Full credits can be found here.

About

Dancing visualizer of osu! standard maps and custom osu! client written in Go. Also a generator for osu! videos.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 98.7%
  • Other 1.3%