Releases: Wieku/danser-go
0.10.2
General
Local offset (-offset
and Time/Offset menu
in launcher) is now inverted to match stable's local offset
Danser
- Fixed some leaderboards failing to load
- Added an option (
Audio.OnlineOffset
) that uses osu! API (if authorized) to download and apply online offset for some beatmaps. - Added https://osu.ppy.sh/home/news/2024-10-28-performance-points-star-rating-updates to the Difficulty Calculator version message
0.10.1
Ironing out some stuff.
General
- Improved Songs folder scanning performance on HDDs on Windows. Depending on file cache state reduction should be 33-50% on first run after restart up to 90% on subsequent danser launches. No guaranties though. Please let me know if there's performance change on Linux as I haven't tested it there, but it should be roughly unchanged.
- Songs scanner now looks for the first .osu file in hierarchy. That means folder collections are now supported. Considering this hierarchy:
Songs
├── collections
│ ├── farm
│ │ ├── OBAMA SCRAMBLE
│ │ │ ├── a.osu
│ │ │ └── b.osu
│ │ └── Brazil
│ │ └── c.osu
│ └── huh
│ └── Save Me
│ └── d.osu
├── 727 Harumachi Clover
│ ├── e.osu
│ └── additional
│ └── f.osu
└── 1751 Some Broken Map
└── subfolder
└── g.osu
Before 0.10.1 danser would only load e.osu
. Now it will load a.osu
, b.osu
, c.osu
, d.osu
, e.osu
and g.osu
Danser
API
- Fixed avatars failing to download on Linux
- Fixed local replays not showing leaderboards and downloading wrong avatars
Mods
- EZ/HR are now compatible with DA, HR will still clamp values to 10 though, EZ will raise difficulty on DA parameters below 0.
HUD
- Slightly improved text clarity on lower resolutions
- Added
Gameplay.SBFont
setting. It allows changing the font for leaderboard names and ranking panel texts. Use Aller Light for osu! stable look. - Added slider ticks and slider end counts to the ranking panel
- Fixed spinner bonuses showing up as 1100 instead of 1000 for stable replays
Knockout
- Added support for DA replays
Skinning
- Added Daycore mod icon to the default skin
Launcher
- EZ/HR and DA mods are now compatible
- Removed Difficulty Adjust from main menu
- Fixed opening Mods menu clamping DA mod settings if replay had extended values
- Added a launcher option to automatically refresh the database on Songs folder change (alternative to popup)
0.10.0
A pretty significant update! I would say, lazer-y!
BIGGEST CHANGE: Lazer support
General
- Switched to osu!api v2. Your apiv1 key will be wiped on the first launch of 0.10.0 version
- Updated the SR/PP algorithms to the recent rework
- Added basic lazer replay support. Only standard mods as well as Classic and Difficulty Adjust are supported. Mod settings are also supported
- Changed Linux target to Ubuntu 20.04 or newer (was latest before)
- Map music and storyboard files are now case-insensitive on Linux
Danser
Recording
- AV1 encoding support for NVIDIA GPUs
- Improved recording performance for longer maps in replay/cursordance w UI modes (55s -> 47s reduction on my machine on a 8 minute map at 900p)
- Fixed QSV initialization error not being captured
PePe
- Improved live pp calculator builder performance (1h marathon map, takes 16s for 2022 calculator, 1.2s for current)
- Added Gameplay.PPVersion setting. 2024 rework is set as a default but you can switch back to 2021 or 2022 versions.
Mods
- Added "LZ" (Lazer), "DA" (Difficulty Adjust), "CL" (Classic) mods.
- DC/NC mods now use relative frequency instead of tempo+pitch, fixes some nightcored maps sounding off
HUD
- Added "Classic" score option (Gameplay -> Use "Classic" score for osu!lazer plays) for Lazer plays
- Added mod icons for Lazer, Classic and Difficulty Adjust mods
- Added an option to hide Lazer mod from mod HUD
- Fixed mod HUD blinking if map starts near the song start
- Changed display of ar/cs/od/hp/speed changes to be more pleasing
- Added support for Country/Friends leaderboards
- Added support for Lazer leaderboards
- User avatars are now cached on disk
Knockout
- Added smoke support in knockout mode.
Skinning
- Slightly improved parsing of skin.ini files (trash values in boolean options are being ignored, skipped reading alpha values in color options as it often contains trash)
Backgrounds/Storyboards/Video
- Fixed map videos with odd width/height being broken
- Background dim/blur is now changeable while danser is running
- Fixed Enabling blur while danser is running making the backgound black
Arguments
- Added -mods2 argument. It's structure is a JSON array with mod object with acronym string and settings map. Example
[{"acronym":"DT","settings":{"adjust_pitch":true,"speed_change":1.22}},{"acronym":"LZ"},{"acronym":"DA","settings":{"approach_rate":9,"circle_size":5.3,"drain_rate":2.5,"overall_difficulty":7.4}}]]
-ar
,-od
,-cs
,-hp
arguments are ignored if -mods2 contains DA mod-speed
argument is ignored if-mods2
contains HT/DC/DT/NC mods- Fixed
-pitch
below 0.25 breaking playback
Performance
- Changed frame scheduling a bit, slightly raised fps on powerful machines (Watch/Play modes only!)
Misc
- F11 now enables the debug screen (
-debug
flag) - Added performance graph (available via SHIFT+F11)
Launcher
- Added support for modifying replay mods
- Fixed selecting files from search results crashing danser
- Added janky drag scrolling for tablet users (probably won't touch that shit again)
- Changed reset button to an icon
- Added "Allow extended values" checkbox to "Adjust difficulty" window
- Added "LZ" (Lazer), "DA" (Difficulty Adjust), "CL" (Classic) mods to mod selection
- Added support for mod configs, even for non-lazer plays
- Unsupported encoders are now hidden from selection
- Winter theme now should end at the end of January instead of February
- Fixed excessive snow being shown in play mode
Happy dansing!
0.9.1
Danser
Scoring
- Fixed combo not resetting when very short sliders are missed (0.9.0 regression)
- Fixed spinners sometimes not clearing or giving too much bonus in replays (#330)
- Fixed spinners sometimes auto-missing with massive RPM in replays (#342, https://reddit.com/r/osugame/comments/15sf7ui/comment/jwdyumm)
- Fixed passive hp drain being too high on some maps (#316, #342)
Misc
- Debug overlay now shows memory info
- Reduced memory hit by debug overlay
- Reduced memory allocation by shaders, should result in less GC cycles.
Launcher
- Fixed strain graph not showing properly for freshly imported maps
0.9.0
General
- Dropped support for Windows 7/8/8.1
- Updated go to 1.21 which brings stability improvements
- Added a
DANSER_FLAGS
=AMDHACK
environment variable to fix cases when launcher only has triangles visible or danser has random missing letters on older AMD GPUs
Danser
Recording
- Fixed color issues/stuttering on 23.7.1 or newer AMD drivers (#337)
UI
- Strain Graph now ends at last object's end, not start
- Strain Graph now better exposes most difficult parts of the map
- Fixed Strain Graph crashing if map has only one object
Objects
- Fixed reverse arrows being broken on old maps (#328)
- Fixed missed kick slider head circles disappearing too late
Settings
Cursor.CursorRipples
is now disabled by default because a lot of people confused them with HitLighting- Paths are not being sanitized anymore which enables use of network locations (#323)
Misc
- LZMA compressed and Base64 encoded settings are now embedded in danser.log for easier issue analysis
- Improved stability of frame limiter, fixes update thread sometimes being stuck at 800-ish ups
-debug
flag now also shows memory information
Launcher
- Launcher logs now also print platform information
- Fixed "Select replay" button crashing the launcher if Replays dir doesn't exist, it now defaults to danser's dir
- Improved wording of Encoder option tooltip (by @AliceUnderwater)
- Fixed task bar progress being stuck on failed replays
- File/Directory that triggered the database refresh request is now being logged
- Added strain graph to Time/Offset menu:
I think I didn't omit anything this time ;)
0.8.4
Happy New Year! 🎉🎉
General
Settings
- Changed default values for OversampleMultiplier and BlendFrames to 16 and 24
Launcher
- Fixed launcher crashing if Songs dir doesn't exist
- Fixed "Browse" button freezing the launcher
0.8.3
Ho Ho Ho! 🎅
A small update this time, but read to the very end ;)
Danser
Recording
- Improved quality (especially hitcircles) at lower resolutions
Gameplay
- Added an option to ignore fails in replays. You can now render your multi replays ;)
Objects
- Fixed some sliders not loading correctly
- Danser is now ignoring sliders with 1B total length (pixel_length * repeats)
Cursordance
- Fixed danser failing at ~60% of the map when Slider Dance is turned on.
Playfield
- Fixed "Bloom to the beat" not being disableable
Storyboards
- Fixed looping sprites disappearing too early
Launcher
Import
- Slightly improved speed of calculating Star Rating of longer maps
- Fixed some maps freezing Star Rating Calculation
Recording
- Fixed danser opening new videos folder each time after finishing 2nd+ video.
And a small surprise in the launcher!
Merry Christmas! 🎅🎄
0.8.2
Finally an update :P
There are some changes in settings file format, read below.
General
- Fixed function keys crashing danser and launcher (#293)
- (Linux) Fixed inability to run danser if working directory is not the same as danser's directory
- Fixed broken video on AMD GPUs with 15.200.* drivers
Danser
Recording
- Fixed AAC audio being encoded at 128kbps no matter the setting
- Removed manual blending weights
- Moved Automatic weights to Motion Blur:
They migrate automatically
Gameplay
- Fixed HT plays having wrong passive HP drain (#288)
- Fixed NaN pp appearing in some cases
- Fixed osu! auto replays auo-failing (OR just use danser UI mode FFS)
- Switched danser auto and play mode to lazer's notelock (kinda, auto-miss is missing yet). Ability to switch between stable/lazer notelock will come in the future
Cursor dance
- Numerous improvements to 2B cursor dancing (example: https://youtu.be/97Gx97iCQ9s)
Objects
- Added support for lazer's multi-type sliders:
- Fixed timing points with decimal time (lazer) being skipped
- Improved performance of sliders with huge amounts of ticks/repeats
- Immensely improved performance of slider path rendering, allowing complex sliders without losing quality. As a result, Quality options have been removed. For nerds: https://img.wieku.me/22/solace.mp4
- Fixed distortions not looking correctly
- Added options to customize distortions
- Fixed objects with negative volume being loud
Storyboards
- Fixed video of https://osu.ppy.sh/s/95981 crashing danser if internal ffmpeg is used
- Fixed some sprites of https://osu.ppy.sh/beatmapsets/1521219 storyboard not being scaled/flipped correctly
Launcher
General
- Fixed some maps freezing Star Rating calculation
- Removed classic knockout
- Danser now detects new maps in osu! Songs directory, restart is no longer required:
- Maps can be imported by dropping OSZ file on launcher's window. osu! may complain about it.
Settings
- Fixed search being reset on reopening
- Added more tooltips
- Added 16:9 presets to Recording Resolution:
And probably something I forgot about.
0.8.1
General
- Switched to 2022-09-30 PP System: https://osu.ppy.sh/home/news/2022-09-30-changes-to-osu-sr-and-pp
- Fixed danser crashing during database refresh while trying to load beatmaps that are broken in a specific way
- On Windows, danser first looks into registry to find osu! installation path (if multiple osu! instances are installed the one that handles files is selected) before defaulting to
%localappdata%
Danser
UI
Gameplay
- Fixed DT ScoreV2 plays having wrong score
0.8.0
IMPORTANT
-
danser switched to GPLv3 license. Thanks to that, from now on, danser will be released with built-in ffmpeg (danser-optimized build that takes ~20MB instead of 100MB+). Now you will be able to render videos (or play background videos) out of the box ;)
-
Renamed danser to danser-cli and danser-launcher to danser. If it's important you can rename cli back, but launcher won't work properly then.
-
Settings from this version are not compatible with 0.7.1 downwards. Please make a backup if you plan to rollback. More info below
General
- Fixed broken rendering on AMD/ATI TeraScale architectures (eg. Radeon HD 5xxx/6xxx). If you updated your graphics drivers and it's still broken, please let me know.
Danser
Record
- Fixed dark colors being green-tinted in recordings (#268)
UI
- Added Infinite results screen in play mode
- Fixed strain graph being funky on %Centre% alignments (#261)
- BREAKING: Switched to per stat color (Color300, Color100 etc) instead of confusing to use list in hit counter. Old values are migrated automatically
Input
- Added support to play with other keys than
A-Z/0-9
- Added an option to change screenshot key (default F2)
Objects
- Make slider tick fade-in be closer to stable's behavior
- Slider's Snake In/Out can be changed in real time
- Fixed Fade/Duration Multipliers affecting slider ticks even if Snake In is disabled
- Added -24ms offset for beatmaps with version lower than 5
- Fixed old maps having wrong number of slider ticks
Gameplay
- Added fail support. Danser now will stop rendering if player fails. Caveat: if
-end
(End time in launcher) option is set before fail, fail can still be heard ifGameplay.ShowResultsScreen
is set to true
Cursor dance
- Fixed danser missing on "hidden" circles (0 length sliders)
- Added an option to offset spinner's centre, shouldn't be used in "Danser with UI" mode.
Background
- Added
MoveStoryboardWithPlayfield
option, ignored ifOsuShift
is set to true - Fixed video having wrong offset on 3079907 map (#278)
- Fixed storyboard of 1985210 map eating ~16GB of RAM. Can reduce performance slightly on other heavy storyboards
- Fixed old storyboards with missing volume info in audio samples crashing danser
- Fixed Parallax Amount affecting scale even if parallax is disabled (#281)
Skinning
- Fixed boolean values not working properly in skin.ini (should now match c language specs)
Misc
- Added better FPS limiter
FPSCap
can be now edited liveFPSCap
lower than zero now meansabs(FPSCap)*monitorRefreshRate
Launcher
- Launcher window now adapts to Windows screen scaling
- Fixed record/screenshot name box allowing forbidden characters (#263)
- Reduced VRAM usage a bit
Replays:
- Select replay button now remembers last used directory
- Fixed replays from other modes not being ignored on "Load latest replay at startup"
- Fixed not properly set "Replays" directory crashing launcher
- Properly announce that replay is from another mode
Knockouts:
- Knockout "Select replays" button saves last used directory between launcher runs
- Added support of dropping multiple replays at launcher window/executable, thus turning on knockout mode
- Added enable/disable all button in knockout manager
- Added shift+select in knockout manager
- Added indicator how many replays are selected
Config manager/editor:
- Added live edit of some settings while danser is running in Watch mode. It can be summoned by clicking "Edit" in the launcher or with ctrl+o in danser itself, will unminimize the launcher and open the config editor. Some not-locked options may still require restart for now
- Added config save/clone confirmation with enter key
- Added a launcher option to enable/disable JSON Paths in config editor (disabled by default, reduces noise)
- Added "(!)" before option's label if that option has a tooltip
- Added tooltips to some options
- Fixed config editor's layout breaking when there are conditionally hidden options
- Added key changer to input options
- Added some user-friendliness to
Custom FPS limit
And probably something I forgot about.